*,
*::before,
*::after {
  box-sizing: border-box;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
figure {
  margin: 0;
  padding: 0;
}

ul,
ol {
  list-style: none;
}

body {
  min-height: 100vh;
  line-height: 1.5;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-family: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  background-color: #F4F7FD;
}

img,
picture {
  max-width: 100%;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

.wrapper {
  width: min(100%, 410px);
  min-width: 375px;
  margin: 0 auto;
  overflow-x: hidden;
}

main.wrapper {
  background: #fff;
}

:root {
  --primary-color: #0A5E96;
  --secondary-color: #6c757d;
  --success-color: #28a745;
  --danger-color: #dc3545;
  --warning-color: #ffc107;
  --info-color: #17a2b8;
  --light-color: #f8f9fa;
  --dark-color: #343a40;
}

.header {
  background-color: var(--primary-color);
  color: #fff;
  text-align: center;
  padding: 8px 0;
  font-size: 13px;
  font-weight: bold;
}

.arch-text {
  height: 91.39px;
  position: relative;
  width: 335px;
  margin: auto;
  top: 25px;

  &::after {
    content: "";
    background-image: url(/img/company/arch-dot.png);
    display: block;
    clear: both;
    width: 275px;
    height: 50px;
    background-size: contain;
    background-position: center;
    position: absolute;
    top: 41px;
    left: 29px;
    background-repeat: no-repeat;

  }

}

.arch-text__div,
.arch-text__div2,
.arch-text__div3,
.arch-text__div4,
.arch-text__div5,
.arch-text__div6,
.arch-text__div7,
.arch-text__div8,
.arch-text__div9,
.arch-text__div10 {
  text-align: left;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 24.9px;
  position: absolute;
  width: 27.1px;
  height: 39.41px;
  transform-origin: 0 0;
}

.arch-text__div,
.arch-text__div2,
.arch-text__div3,
.arch-text__div4,
.arch-text__div7,
.arch-text__div10 {
  color: #0c7bc5;
  font-weight: 700;
}

.arch-text__div5,
.arch-text__div6,
.arch-text__div8,
.arch-text__div9 {
  color: #22469f;
  font-weight: 900;
}

.arch-text__div {
  left: 0;
  top: 59.66px;
  transform: rotate(-36.389deg) scale(1, 1);
}

.arch-text__div2 {
  left: 30.34px;
  top: 38.19px;
  transform: rotate(-28.303deg) scale(1, 1);
}

.arch-text__div3 {
  left: 63.39px;
  top: 21.2px;
  transform: rotate(-20.216deg) scale(1, 1);
}

.arch-text__div4 {
  left: 98.51px;
  top: 9.02px;
  transform: rotate(-12.13deg) scale(1, 1);
}

.arch-text__div5 {
  left: 134.99px;
  top: 1.91px;
  transform: rotate(-4.043deg) scale(1, 1);
}

.arch-text__div6 {
  left: 172.11px;
  top: 0;
  transform: rotate(4.043deg) scale(1, 1);
}

.arch-text__div7 {
  left: 209.13px;
  top: 3.33px;
  transform: rotate(12.13deg) scale(1, 1);
}

.arch-text__div8 {
  left: 245.31px;
  top: 11.83px;
  transform: rotate(20.216deg) scale(1, 1);
}

.arch-text__div9 {
  left: 279.93px;
  top: 25.34px;
  transform: rotate(28.303deg) scale(1, 1);
}

.arch-text__div10 {
  left: 312.32px;
  top: 43.59px;
  transform: rotate(36.389deg) scale(1, 1);
}

.fv {
    overflow: visible;
  height: 630px;
  position: relative;
  z-index: 1;
  background-image: url(/img/company/fvbg.png);
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;

  &::after {
    content: "";
    display: block;
    clear: both;
    width: 100%;
    background: linear-gradient(180deg,
        rgba(255, 255, 255, 0) 0%,
        rgba(10, 114, 183, 1) 100%);
    height: 290px;
    position: absolute;
    bottom: 0;
    z-index: -1;

  }
}

.fv-sub-copy {
  width: 160px;
  position: relative;
  margin: 4px auto 0;
}

.fv-sub-copy__div {
  color: #0a5e96;
  text-align: center;
  font-family: "Shippori Mincho B1", serif;
  font-size: 17.6px;
  line-height: 103.3%;
  font-weight: 700;
}

.fv-sub-copy__div2 {
  background: linear-gradient(92.98deg,
      rgba(40, 139, 205, 1) 0%,
      rgba(6, 75, 121, 1) 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  margin-top: 5px;
}

.div-2-span {
  font-family: "Shippori Mincho B1", serif;
  font-size: 42px;
  line-height: 103.3%;
  font-weight: 600;
}

.div-2-span2 {
  font-family: "Shippori Mincho B1", serif;
  font-size: 29.9px;
  line-height: 103.3%;
  font-weight: 600;
}

.relative {
  position: relative;
}

img.fv-main__fv-img-right {
  position: absolute;
  width: 80px;
  right: 5px;
  bottom: -30px;
}

img.fv-main__fv-img-left {
  position: absolute;
  width: 80px;
  left: 5px;
  top: -30px;
}

.fv-main {
  background: linear-gradient(180deg,
      rgba(12, 123, 197, 1) 0%,
      rgba(4, 98, 161, 1) 100%);
  padding: 11px 4px 11px 4px;
  display: flex;
  flex-direction: column;
  gap: 7px;
  align-items: center;
  justify-content: center;
  width: 263px;
  height: 166px;
  position: relative;
  box-shadow: 4px 4px 10px 0px rgba(1, 57, 94, 0.3);
  margin: 12px auto 40px;
  z-index: 1;

  /* &:after {
    content: "";
    background-image: url(/img/company/fv-img-right.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 30px;
    right: -160px;
    width: 100%;
    height: 100%;
    z-index: 0;
  } */
}

.fv-main__fv-main-ttl {
  flex-shrink: 0;
  width: 253px;
  height: 62px;
  position: static;
}

.fv-main__div,
.fv-main__div2,
.fv-main__div3 {
  color: #d3f4ff;
  text-align: center;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 15px;
  letter-spacing: 0.2em;
  font-weight: 700;
  position: absolute;
  left: 50%;
  translate: -50%;
  width: 253px;
  height: 24px;
}

.fv-main__div {
  top: 13.5px;
}

.fv-main__div2 {
  top: 32.5px;
}

.fv-main__div3 {
  top: 51.5px;
}

.fv-main__fv-line {
  margin-top: -1px;
  border-style: solid;
  border-color: #d3f4ff;
  border-width: 1px 0 0 0;
  flex-shrink: 0;
  width: 222px;
  height: 0px;
  position: relative;
}

.fv-main__fv-copy {
  text-align: center;
  font-family: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
  font-size: 38.1px;
  font-weight: 500;
  position: relative;
  width: 248px;
  height: 63px;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.25);

  h1 {
    font-size: 38px;
    font-weight: 500;
  }
}

.fv-copy-span {
  color: #ffff8d;
}

.fv-copy-span2 {
  color: #ffffff;
}

.fv-budge {
  background: #ffff8d;
  border-radius: 34px;
  padding: 17px 3px 17px 3px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: center;
  width: 68px;
  height: 68px;
  position: relative;
  position: absolute;
  left: 20px;
  top: -10px;

}

.fv-budge__fv-budge-text {
  color: #0a5e96;
  text-align: center;
  font-family: "Zen Kaku Gothic Antique", sans-serif;
  font-size: 12px;
  font-weight: 700;
  position: relative;
}



.cta-innerbox {
  background-image: url(/img/company/cta-bg-grad.png);
  background-repeat: no-repeat;
  background-size: contain;
  border-radius: 10px;
  display: flex;
  flex-direction: row;
  gap: 13px;
  align-items: flex-start;
  justify-content: flex-end;
  position: relative;
  width: 360px;
  margin: auto;

}

.cta-innerbox__cta-l {
  display: flex;
  flex-direction: column;
  gap: 7px;
  align-items: center;
  justify-content: flex-end;
  flex-shrink: 0;
  width: 79px;
  height: 76px;
  position: relative;
  top: -8px;

}

.cta-innerbox__cta-side-box {
  flex-shrink: 0;
  width: 79px;
  height: 48.2px;
  position: relative;

  top: 10px;
  left: -3px;
}

.cta-innerbox__cta-side-line {
  background: #ffff8d;
  width: 74.73px;
  height: 3.2px;
  position: absolute;
  left: 2.14px;
  top: 55px;
}

.cta-innerbox__cta-side-text {
  color: #0c7bc5;
  text-align: center;
  position: absolute;
  left: 0px;
  top: 15.5px;
  width: 85px;
}

.cta-side-text-span {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16.3px;
  line-height: 143.3%;
  letter-spacing: 0.03em;
  font-weight: 900;
}

.cta-side-text-span2 {
    font-size: 9.9px;
  line-height: 143.3%;
  letter-spacing: 0.03em;
  font-weight: 700;
}

.cta-side-text-span3 {
    font-size: 15.3px;
  line-height: 143.3%;
  letter-spacing: 0.03em;
  font-weight: 700;
}

.cta-innerbox__cta-side-dot {
  width: 52.5px;
  height: 3.08px;
  position: static;
}

.cta-innerbox__ellipse-5 {
  background: #ffc300;
  border-radius: 50%;
  width: 3.04px;
  height: 3.04px;
  position: absolute;
  left: 8.54px;
  top: 12.3px;
}

.cta-innerbox__ellipse-6 {
  background: #ffc300;
  border-radius: 50%;
  width: 3.04px;
  height: 3.04px;
  position: absolute;
  left: 24px;
  top: 12.34px;
}

.cta-innerbox__ellipse-7 {
  background: #ffc300;
  border-radius: 50%;
  width: 3.04px;
  height: 3.04px;
  position: absolute;
  left: 40px;
  top: 12.34px;
}

.cta-innerbox__ellipse-8 {
  background: #ffc300;
  border-radius: 50%;
  width: 3.04px;
  height: 3.04px;
  position: absolute;
  left: 58px;
  top: 12.34px;
}

.cta-innerbox__cta-side-fukidashi {
  flex-shrink: 0;
  width: 78px;
  height: 8.5px;
  position: relative;
  overflow: visible;
  top: 27px;
}

.cta-innerbox__cta-r {
  background: #ffc300;
  border-radius: 0px 10px 10px 0px;
  padding: 12px 9px 12px 9px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  align-items: flex-start;
  justify-content: flex-start;
  flex-shrink: 0;
  width: 253px;
  height: 223px;
  position: relative;
}

.cta-innerbox__cta-r-item {
  background: #ffffff;
  border-radius: 8px;
  border-style: solid;
  border-color: transparent;
  border-width: 1px;
  padding: 18px 10px 18px 10px;
  display: flex;
  flex-direction: row;
  gap: 20px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 233.92px;
  height: 60px;
  position: relative;
  box-shadow: 1px 2px 3px 2px rgba(0, 0, 0, 0.07);
}

.cta-innerbox__kjb-logo-01-a-1 {
  flex-shrink: 0;
  width: 44.3px;
  height: 22.93px;
  position: relative;
  object-fit: cover;
  aspect-ratio: 44.3/22.93;
}

.cta-innerbox__div {
  color: #515151;
  text-align: center;
    font-size: 18.1px;
  line-height: 103.3%;
  font-weight: 700;
  position: relative;
  width: 109.43px;
}

.cta-innerbox__polygon-3 {
  border-radius: 0px;
  flex-shrink: 0;
  width: 13px;
  height: 13.05px;
  position: relative;
  overflow: visible;
}

.cta-innerbox__cta-r-item2 {
  background: #ffffff;
  border-radius: 8px;
  padding: 18px 10px 18px 10px;
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 233.92px;
  height: 60px;
  position: relative;
  box-shadow: 1px 2px 3px 2px rgba(0, 0, 0, 0.07);
}

.cta-innerbox__hjb-logo-01-a {
  flex-shrink: 0;
  width: 50.9px;
  height: 23.14px;
  position: relative;
  object-fit: cover;
  aspect-ratio: 50.9/23.14;
}

.cta-innerbox__div2 {
  color: #515151;
  text-align: center;
    font-size: 18.1px;
  line-height: 103.3%;
  font-weight: 700;
  position: relative;
  width: 127.5px;
}

.cta-innerbox__polygon-2 {
  border-radius: 0px;
  flex-shrink: 0;
  width: 13px;
  height: 13.05px;
  position: relative;
  overflow: visible;
}

.cta-innerbox__cta-r-item3 {
  background: #ffffff;
  border-radius: 8px;
  border-style: solid;
  border-color: transparent;
  border-width: 1px;
  padding: 18px 10px 18px 10px;
  display: flex;
  flex-direction: row;
  gap: 19px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 233.92px;
  height: 60px;
  position: relative;
  box-shadow: 1px 2px 3px 2px rgba(0, 0, 0, 0.07);
}

.cta-innerbox__logo-cejb-1 {
  flex-shrink: 0;
  width: 46.09px;
  height: 23.05px;
  position: relative;
  object-fit: cover;
  aspect-ratio: 46.09/23.05;
}

.cta-innerbox__polygon-1 {
  border-radius: 0px;
  flex-shrink: 0;
  width: 13px;
  height: 13.05px;
  position: relative;
  overflow: visible;
}

img.cta-innerbox__cta-man {
  position: absolute;
  left: -3px;
  bottom: 0;
}

.point-heading {
  background: linear-gradient(92.98deg,
      rgba(40, 139, 205, 1) 0%,
      rgba(6, 75, 121, 1) 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  position: relative;
}

.point-heading-span {
  font-family: "Shippori Mincho B1", serif;
  font-size: 48.7px;
  line-height: 103.3%;
  font-weight: 600;
}

.point-heading-span2 {
  font-family: "Shippori Mincho B1", serif;
  font-size: 32.4px;
  line-height: 103.3%;
  font-weight: 600;
}

.point-heading-span3 {
  font-family: "Shippori Mincho B1", serif;
  font-size: 48.7px;
  line-height: 103.3%;
  font-weight: 600;
}

section.point {
  padding-top: 70px;
  background-image: url(/img/company/point-bg.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: contain;
  position: relative;
  z-index: 1;
}

.point-reason-body {
  background: #ffffff;
  border-radius: 5px;
  border-style: solid;
  border-color: #7ec5e8;
  border-width: 2px;
  padding: 40px 26px 24px;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: flex-end;
  justify-content: center;
  width: 356px;
  margin: auto;
  position: relative;
}

.point-reason-body__div {
  color: #000000;
  text-align: left;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  line-height: 27px;
  font-weight: 400;
  position: relative;
  width: 303px;
}

.div-span2 {
    font-weight: 700;
}

.point-reason-heading {
  background: #d3eef6;
  padding: 8px 16px;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  width: 324px;
  position: relative;
  margin: auto;
  top: 20px;
  z-index: 1;
}

.point-reason-heading__div {
  color: #0462a1;
  text-align: center;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 16px;
  font-weight: 700;
  position: relative;
}

.text-underline {
  background-image: linear-gradient(transparent 70%, #FFEE00 0%);
}

.point-box {
  background: var(--box-grad2,
      linear-gradient(212.11deg,
        rgba(240, 251, 252, 1) 0%,
        rgba(223, 245, 255, 1) 78.36538553237915%));
  padding: 0px 29px 40px;
  display: flex;
  flex-direction: column;
  gap: 21px;
  align-items: flex-start;
  justify-content: flex-end;
  height: auto;
  position: relative;
  width: 370px;

  margin-top: 150px;
}

.point-box__point-box-header {
  flex-shrink: 0;
  width: 145.04px;
  height: 142.43px;
  position: relative;
}

.point-box__point {
  background: var(--head-grad,
      linear-gradient(90deg,
        rgba(126, 197, 232, 1) 0%,
        rgba(12, 123, 197, 1) 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: justified;
  font-family: "Oswald", sans-serif;
  font-size: 27.9px;
  line-height: 28.12px;
  font-weight: 700;
  position: absolute;
  left: 0;
  top: 109px;
}

.point-box___01 {
  background: var(--head-grad, linear-gradient(90deg, rgba(126, 197, 232, 1) 0%, rgba(12, 123, 197, 1) 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: justified;
  font-family: "Oswald", sans-serif;
  font-size: 56.9px;
  line-height: 55.44px;
  font-weight: 700;
  position: absolute;
  left: 78px;
  top: 83.57px;
}

.point-box__point-box-heading {
  color: #004d80;
  text-align: left;
    font-size: 20px;
  line-height: 29px;
  font-weight: 700;
  position: relative;
}

.point-box__point-box-text {
  text-align: left;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  line-height: 27px;
  font-weight: 400;
  position: relative;
  width: 300px;
}

.point-box-text-span {
  color: #2f2f2f;
  font-family: "Noto Sans JP", sans-serif;
}

.point-box-text-span2 {
  color: #2f2f2f;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
}

.point-box-text-span3 {
  color: #0a5e96;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
  text-decoration: underline;
}

img.point-box__point-box-img {
  position: absolute;
  left: 0;
  top: -80px;
  width: 311px;
  height: auto;
}

.point-box-right {
  display: flex;
  justify-content: flex-end;

  img.point-box__point-box-img {
    left: auto;
    right: 0;
  }
}

.job {
  background-color: #F4F7FD;
  padding-top: 65px;
  position: relative;
  z-index: 0;
  padding-bottom: 8px;
  margin-top: 20px;

  background-image: url(/img/company/point-bg.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: contain;
  overflow: visible;

  &:before {
    content: "";
    width: 100%;
    height: 100px;
    background-color: #F4F7FD;
    position: absolute;
    top: -100px;

  }

  .job-heading {
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 28.2px;
    line-height: 43px;
    font-weight: 900;
    position: relative;
    margin-bottom: 24px;
  }

  .job-heading-span {
    color: #004d80;
  }

  .job-heading-span2 {
    background: var(--head-grad,
        linear-gradient(90deg,
          rgba(126, 197, 232, 1) 0%,
          rgba(12, 123, 197, 1) 100%));
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
  }

  .job-slider {
    position: relative;
    max-width: 960px;
    margin: 0 auto;
    overflow: visible;
    margin-bottom: 24px;
  }

  .job-kjb {
    margin: 0 auto;
  }

  .job-kjb .swiper-wrapper {
    align-items: stretch;
  }

  .job-kjb .swiper-slide {
    display: flex;
    justify-content: center;
    box-sizing: border-box;
  }

  .job-slider__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 48px;
    height: 48px;
    border-radius: 50%;
    border: none;
    background: inherit;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background-size: 30px;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("/img/company/arrow.png");
    filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.15));
    z-index: 2;
  }

  .job-slider__prev {
    left: 0;
    transform: translateY(-50%) scaleX(-1);
  }

  .job-slider__next {
    right: 0;
  }

  .job-card {
    background: #ffffff;
    width: 100%;
    max-width: 360px;
    margin: auto;
    border-radius: 8px;
    border-style: solid;
    border-color: #d2dbec;
    border-width: 1px;
    padding: 18px 14px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    justify-content: center;
    position: relative;
    box-shadow: var(--job-shadow-box-shadow,
        4px 4px 10px 0px rgba(3, 65, 106, 0.1));
  }

  .job-card__job-header {
    display: flex;
    flex-direction: row;
    gap: 16px;
    align-items: flex-start;
    justify-content: flex-start;
    flex-shrink: 0;
    width: 319px;
    position: relative;
  }

  .job-card__job-imgage {
    flex-shrink: 0;
    width: 90px;
    height: 119px;
    position: relative;
    object-fit: cover;
    border-radius: 6px;
  }

  .job-card__job-r {
    display: flex;
    flex-direction: column;
    gap: 6px;
    align-items: flex-start;
    justify-content: flex-start;
    flex-shrink: 0;
    width: 203px;
    position: relative;
  }

  .job-card__job-tag {
    display: flex;
    flex-direction: row;
    gap: 17px;
    align-items: center;
    justify-content: flex-start;
    flex-shrink: 0;
    width: 166px;
    position: relative;
  }

  .job-card__group-118 {
    flex-shrink: 0;
    width: 99px;
    height: 20px;
    position: static;
  }

  .job-card__rectangle-47 {
    background: #7ec5e8;
    border-radius: 40px;
    width: 99px;
    height: 20px;
    position: absolute;
    left: 0px;
    top: 0px;
  }

  .job-card__div {
    color: #ffffff;
    text-align: center;
        font-size: 12px;
    line-height: 103.3%;
    font-weight: 700;
    position: absolute;
    left: 8px;
    top: 4px;
    width: 84px;
    height: 11.43px;
  }

  .job-card__group-27 {
    flex-shrink: 0;
    width: 50px;
    height: 20px;
    position: static;
  }

  .job-card__rectangle-472 {
    background: #02aedc;
    width: 50px;
    height: 20px;
    position: absolute;
    left: 116px;
    top: 0px;
  }

  .job-card__div2 {
    color: #ffffff;
    text-align: center;
        font-size: 12px;
    line-height: 103.3%;
    font-weight: 700;
    position: absolute;
    left: 116px;
    top: 4px;
    width: 50px;
    height: 11px;
  }

  .job-card__job-fee {
    display: flex;
    flex-direction: row;
    gap: 8px;
    align-items: center;
    justify-content: flex-start;
    align-self: stretch;
    flex-shrink: 0;
    position: relative;
  }

  .job-card___22-25 {
    color: #5f5f5f;
    text-align: left;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    line-height: 103.3%;
    font-weight: 400;
    position: relative;
  }

  .job-card__job-detail {
    /* 親要素は通常のブロック表示 */
    line-height: 1.5;
    font-size: 14px;
  }

  .job-card__div3 {
    /* inlineにすることで改行を防ぐ */
    display: inline;
    font-weight: bold;
    /* 業務内容の後に少しスペースを空ける */
    margin-right: 0.5em;
    /* 前回のアンダーラインを適用する場合 */
  }

  .job-card__div4 {
    /* inlineにすることで前の要素のすぐ後ろに配置 */
    display: inline;
    color: #5f5f5f;
  }

  .job-card__job-body {
    padding: 9px 15px 9px 15px;
    display: flex;
    flex-direction: row;
    gap: 8px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 319px;
    min-height: 65px;
    position: relative;
  }

  .job-card__job-label {
    background: #ffffff;
    border-radius: 5px;
    border-style: solid;
    border-color: #7ec5e8;
    border-width: 5px 0px 0px 0px;
    padding: 5px 0px;
    display: flex;
    flex-direction: row;
    gap: 10px;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 90px;
    min-height: 47px;
    position: relative;
    box-shadow: 2px 2px 4px 0px rgba(0, 0, 0, 0.06);
  }

  .job-card___125 {
    color: #515151;
    text-align: center;
        font-size: 13px;
    line-height: 123%;
    font-weight: 700;
    position: relative;
  }

  .job-card__job-cta {
    background: #ff8e31;
    border-radius: 6px;
    border-style: solid;
    border-color: #d56b14;
    border-width: 0px 0px 3px 0px;
    padding: 7px 12px 7px 12px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
    justify-content: flex-start;
    flex-shrink: 0;
    width: 319px;
    height: 50px;
    position: relative;
  }

  .job-card__job-cta-text {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
    flex-shrink: 0;
    width: 289.18px;
    position: relative;
    text-shadow: 1px 1px 2px #00000059;

  }

  .job-card__div5 {
    color: #ffffff;
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14.9px;
    line-height: 35px;
    font-weight: 900;
    position: relative;
    width: 269.92px;
  }

  .job-card__polygon-4 {
    flex-shrink: 0;
    width: 13px;
    height: 13.92px;
    position: relative;
    overflow: visible;
  }

  .job-card__empty {
    text-align: center;
    color: #5f5f5f;
    margin: 16px 0;
  }

}

.reason-header {
  display: flex;
  flex-direction: column;
  gap: 21px;
  align-items: center;
  justify-content: flex-start;
  width: 303px;
  position: relative;
  margin: auto;
}

.reason-header__reason-subheader {
  background: #d3eef6;
  padding: 7px 0;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  width: 176px;
  height: 41px;
  position: relative;
}

.reason-header__div {
  color: #0462a1;
  text-align: center;
  position: relative;
}

.reason-header__div-span {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 20px;
  font-weight: 700;
}

.reason-header__div-span2 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 16px;
  font-weight: 700;
}

.reason-header__reason-heading {
  background: linear-gradient(92.98deg,
      rgba(40, 139, 205, 1) 0%,
      rgba(6, 75, 121, 1) 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  font-family: "Shippori Mincho B1", serif;
  font-size: 46.3px;
  line-height: 103.3%;
  font-weight: 600;
  position: relative;
  align-self: stretch;
}

.reason-header__reason-text {
  flex-shrink: 0;
  width: 303px;
  height: 61px;
  position: static;
  display: flex;
}

.reason-header__subtract {
  width: 11px;
  height: 61px;
}

.reason-header__subtract2 {
  width: 11px;
  height: 61px;
}

.reason-header__reason-contents {
  color: #005995;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  line-height: 27px;
  font-weight: 400;
  width: 297px;
}

.reason-contents-span {
    font-weight: 700;
}

.reason-contents-span2 {
  font-family: "Noto Sans JP", sans-serif;
}

.reason-card {
  display: flex;
  flex-direction: column;
  gap: 0px;
  align-items: flex-start;
  justify-content: flex-start;
  position: relative;
  max-width: 340px;
  margin: 40px auto;

}

.absolute {
  position: absolute;
}

.reason-card__reason-card-header {
  background: linear-gradient(90deg,
      rgba(12, 123, 197, 1) 0%,
      rgba(126, 197, 232, 1) 100%);
  border-radius: 0px 10px 0px 0px;
  padding: 17px 22px 17px 22px;
  display: flex;
  flex-direction: column;
  gap: 0;
  align-items: flex-start;
  justify-content: flex-start;
  align-self: stretch;
  flex-shrink: 0;
  height: 102px;
  position: relative;
}

.reason-card__reason-card-header-text {
  color: #ffffff;
  text-align: left;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 19px;
  line-height: 143.3%;
  font-weight: 900;
  position: relative;
  align-self: stretch;
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.25);
}

.reason-card__reason-card-header-line {
  background: #ffff8d;
  flex-shrink: 0;
  width: 151px;
  height: 3px;
  position: relative;
  left: 0px;
}

.reason-card__reason-card-body {
  background: #ffffff;
  padding: 21px 24px 21px 24px;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  align-self: stretch;
  flex-shrink: 0;
  position: relative;
  box-shadow: var(--job-shadow-box-shadow,
      4px 4px 10px 0px rgba(3, 65, 106, 0.1));
}

.reason-card__reason-card-body-text {
  color: #000000;
  text-align: left;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  line-height: 27px;
  font-weight: 400;
  position: relative;
  width: 294px;
}

.reason-card-body-text-span {
    font-weight: 700;
}

.reason-card-body-text-span2 {
  font-family: "Noto Sans JP", sans-serif;
}

img.reason-card-img1.absolute {
  width: 122px;
  right: 0;
  bottom: -3px;
}

.reason-card-2 {
  .reason-card__reason-card-header-text {
    text-align: right;
  }

  img.reason-card-img1.absolute {
    width: 125px;
    left: -20px;
    bottom: 6px;
  }

  .reason-card__reason-card-header-line {
    width: 207px;
    right: -90px;
    left: auto;
  }

}

img.reason-card-img3.absolute {
  width: 120px;
  right: -17px;
  bottom: -26px;
}

.reason-card-3 {
  .reason-card__reason-card-header-line {
    width: 111px;
    left: 94px;
  }
}

.reason {
  background-image: url(/img/company/reason-bg.png);
  background-size: cover;
  background-position: center -40px;
  padding: 60px 0 20px;
}

.voice-heading {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 29.5px;
  line-height: 41px;
  font-weight: 900;
  position: relative;
}

.voice-heading-span {
  color: #004d80;
}

.voice-heading-span2 {
  background: var(--head-grad,
      linear-gradient(90deg,
        rgba(126, 197, 232, 1) 0%,
        rgba(12, 123, 197, 1) 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

section.voice {
  padding: 40px 0;

  background-image: url(/img/company/point-bg.png);
  background-position: top;
  background-repeat: no-repeat;
  background-size: contain;


  .voice-slider {
    position: relative;
    max-width: 360px;
    margin: 20px auto 0;
    overflow: hidden;
  }

  .voice-slider .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height;
  }

  .voice-slider .swiper-slide {
    display: flex;
    justify-content: center;
    padding: 16px 10px;
    box-sizing: border-box;
    height: auto;
  }

  .voice-slider__arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 44px;
    height: 44px;
    border-radius: 50%;
    border: none;
    background: inherit;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    background-size: 28px;
    background-repeat: no-repeat;
    background-position: center;
    background-image: url("/img/company/voice-nav.png");
    filter: drop-shadow(0 2px 2px rgba(0, 0, 0, 0.15));
    z-index: 2;
  }

  .voice-slider__prev {
    left: -6px;
    transform: translateY(-50%) scaleX(-1);
  }

  .voice-slider__next {
    right: -6px;
  }

  .voice-card {
    background: #ffffff;
    border-radius: 8px;
    border-style: solid;
    border-color: #c1c1c1;
    border-width: 1px;
    padding: 24px 21px 24px 21px;
    display: flex;
    flex-direction: row;
    gap: 19px;
    align-items: flex-start;
    justify-content: flex-start;
    position: relative;
    width: 340px;
  }

  .voice-card__voice-l {
    display: flex;
    flex-direction: column;
    gap: 12px;
    align-items: center;
    justify-content: flex-start;
    flex-shrink: 0;
    width: 60px;
    position: relative;
  }

  .voice-card__voice-img {
    flex-shrink: 0;
    width: 60px;
    height: 61px;
    position: static;
  }

  .voice-card__voice-att {
    display: flex;
    flex-direction: column;
    gap: 4px;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    position: relative;
  }

  .voice-card__voice-att-1 {
    color: #737373;
    text-align: center;
        font-size: 14px;
    font-weight: 700;
    position: relative;
    align-self: stretch;
  }

  .voice-card__voice-att-2 {
    color: #737373;
    text-align: center;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 14px;
    font-weight: 500;
    position: relative;
    align-self: stretch;
  }

  .voice-card__voice-r {
    display: flex;
    flex-direction: column;
    gap: 14px;
    align-items: flex-start;
    justify-content: flex-start;
    flex-shrink: 0;
    width: 211px;
    position: relative;
  }

  .voice-card__voice-tag {
    background: #7ec5e8;
    border-radius: 40px;
    padding: 4px 7px 4px 7px;
    display: flex;
    flex-direction: row;
    gap: 10px;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 99px;
    height: 20px;
    position: relative;
  }

  .voice-card__div {
    color: #ffffff;
    text-align: center;
        font-size: 12px;
    line-height: 103.3%;
    font-weight: 700;
    position: relative;
  }

  .voice-card__voice-text {
    color: #737373;
    text-align: left;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 13px;
    line-height: 150%;
    font-weight: 500;
    position: relative;
    align-self: stretch;
  }

  .voice-card__mask-group {
    border: 1px solid #DDDDDD;
    border-radius: 50%;
  }

  .voice-card__empty {
    text-align: center;
    color: #737373;
    font-size: 13px;
    padding: 12px 0;
  }

}

.step {
  background-color: #E7F8FD;
  background-image: url(/img/company/step-bg.png), url(/img/company/step-bg-grad.png);
  background-repeat: no-repeat, no-repeat;
  background-size: cover, cover;
  background-position: center, bottom;

  padding: 80px 0 24px;
}

.step-heading {
  text-align: center;
  position: relative;
}

.step-heading-span {
  color: #004d80;
    font-size: 26.5px;
  line-height: 40.5px;
  font-weight: 700;
}

.step-heading-span2 {
  background: var(--head-grad,
      linear-gradient(90deg,
        rgba(126, 197, 232, 1) 0%,
        rgba(12, 123, 197, 1) 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: "Oswald", sans-serif;
  font-size: 50.5px;
  line-height: 40.5px;
  letter-spacing: 0.1em;
  font-weight: 700;
}

.step-heading-span3 {
  background: var(--head-grad,
      linear-gradient(90deg,
        rgba(126, 197, 232, 1) 0%,
        rgba(12, 123, 197, 1) 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-family: "Oswald", sans-serif;
  font-size: 36.5px;
  line-height: 40.5px;
  font-weight: 700;
}

.step-item {
  background: #ffffff;
  border-radius: 6px;
  border-style: solid;
  border-color: var(--step-line, #0c7bc5);
  border-width: 2px;
  padding: 12px 0;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  width: 320px;
  height: 59px;
  position: relative;
  margin: 16px auto;

  &::after {
    content: "";
    position: absolute;
    bottom: -11px;
    left: calc(50% - 10px);
    width: 20px;
    height: 20px;
    background-image: url(/img/company/step-nav.png);
    background-repeat: no-repeat;
    background-size: contain;
  }

  &.step-item--last {
    &::after {
      display: none;
    }
  }
}


.step-body {
  padding: 24px 0;
}


.step-item___1 {
  color: #383838;
  text-align: center;
    font-size: 18px;
  line-height: 35px;
  font-weight: 700;
  position: relative;
}

.footer-service {
  display: flex;
  flex-direction: column;
  gap: 15px;
  align-items: center;
  justify-content: flex-start;
  position: relative;
  padding: 32px 0;
}

.footer-service__footer-heading {
  color: #0c7bc5;
  text-align: center;
    font-size: 16px;
  line-height: 35px;
  font-weight: 700;
  position: relative;
  align-self: stretch;
}

.footer-service__footer-logo {
  align-self: stretch;
  flex-shrink: 0;
  height: 44px;
  position: static;
  gap: 16px;
  margin: auto;
  display: flex;
}

.footer-service__kjb-logo-01-a-2 {
  width: 82.6px;
  height: 42.76px;
  object-fit: cover;
  aspect-ratio: 82.6/42.76;
}

.footer-service__hjb-logo-01-a {
  width: 90px;
  height: 41px;
  object-fit: cover;
  aspect-ratio: 90/41;
}

.footer-service__logo-cejb-1 {
  width: 88px;
  height: 44px;
  object-fit: cover;
  aspect-ratio: 2/1;
}

.fix-cta-box {
  background: #ffc70f;
  padding: 8px 14px 8px 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: center;
  justify-content: flex-end;
  height: 103px;
  position: fixed;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, 16px);
  width: min(100%, 410px);
  z-index: 50;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

.fix-cta-box.is-visible {
  opacity: 1;
  transform: translate(-50%, 0);
  pointer-events: auto;
}

.fix-cta-box__fix-cta-wrap {
  display: flex;
  flex-direction: row;
  gap: 5px;
  align-items: center;
  justify-content: flex-start;
  flex-shrink: 0;
  position: relative;
}

.fix-cta-box__fix-cta-item {
  background: #ffffff;
  border-radius: 6px;
  border-style: solid;
  border-color: #cc9d00;
  border-width: 0px 0px 4px 0px;
  padding: 10px 4px 10px 4px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  align-items: center;
  justify-content: flex-start;
  flex-shrink: 0;
  width: 117px;
  height: 65px;
  position: relative;
}

.fix-cta-box__kjb-logo-01-a-2 {
  flex-shrink: 0;
  width: 43px;
  height: 22px;
  position: relative;
  object-fit: cover;
  aspect-ratio: 43/22;
}

.fix-cta-box__div {
  color: #515151;
  text-align: center;
    font-size: 13.1px;
  line-height: 103.3%;
  font-weight: 700;
  position: relative;
  width: 109.43px;
}

.fix-cta-box__fix-cta-item2 {
  background: #ffffff;
  border-radius: 6px;
  border-style: solid;
  border-color: #cc9d00;
  border-width: 0px 0px 4px 0px;
  padding: 11px 3px 11px 3px;
  display: flex;
  flex-direction: column;
  gap: 9px;
  align-items: center;
  justify-content: flex-start;
  flex-shrink: 0;
  width: 117px;
  height: 65px;
  position: relative;
}

.fix-cta-box__hjb-logo-01-a {
  flex-shrink: 0;
  width: 44px;
  height: 20px;
  position: relative;
  object-fit: cover;
  aspect-ratio: 44/20;
}

.fix-cta-box__fix-cta-item3 {
  background: #ffffff;
  border-radius: 6px;
  border-style: solid;
  border-color: #cc9d00;
  border-width: 0px 0px 4px 0px;
  padding: 11px 4px 11px 4px;
  display: flex;
  flex-direction: column;
  gap: 7px;
  align-items: center;
  justify-content: flex-start;
  flex-shrink: 0;
  width: 117px;
  height: 65px;
  position: relative;
}

.fix-cta-box__logo-cejb-1 {
  flex-shrink: 0;
  width: 44px;
  height: 22px;
  position: relative;
  object-fit: cover;
  aspect-ratio: 2/1;
}


.fix-cta-heading {
  background: #ffffff;
  border-radius: 40px;
  border-style: solid;
  border-color: #cc9d00;
  border-width: 3px;
  padding: 5px 0;
  display: flex;
  flex-direction: row;
  gap: 10px;
  align-items: center;
  justify-content: center;
  width: 199px;
  height: 31px;
  position: relative;
}

.fix-cta-heading__fix-cta-heading-text {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 13.7px;
  line-height: 143.3%;
  letter-spacing: 0.04em;
  font-weight: 400;
  position: relative;
}

.fix-cta-heading-text-span {
  color: #5b5b5b;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
}

.fix-cta-heading-text-span2 {
  color: #5b5b5b;
    font-weight: 700;
}

.fix-cta-heading-text-span3 {
  color: #d56b14;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 900;
}

.include-footer {
  background-color: #fff;
}

.footer-banner-box {
  display: none;
}

.l-discription {
  width: 100%;
  color: #737373;
  margin: 0;
}

@media (min-width: 800px) {

  .l-footer {
    width: 100%;
  }

  .l-footer-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    max-width: 100%;
    width: 100%;
    text-align: center;
    color: #fff;
    border-top: 1px solid #68c6f2;
    border-bottom: 1px solid #68c6f2;
    background: -moz-linear-gradient(center top, #9fdaf5 5%, #7ecff4 100%);
    background: -ms-linear-gradient(top, #9fdaf5 5%, #7ecff4 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#9fdaf5', endColorstr='#7ecff4');
    background: -webkit-gradient(linear, left top, left bottom, color-stop(5%, #9fdaf5), color-stop(100%, #7ecff4));
    background-color: #9fdaf5;
    text-shadow: 1px 1px 0px #65c0e8;
    -webkit-box-shadow: 0 1px 6px #ccc;
    -moz-box-shadow: 0 1px 6px #ccc;
    box-shadow: 0 1px 6px #ccc;
  }

  .l-footer-nav a,
  .l-footer-nav a:visited,
  .l-footer-nav a:hover,
  .l-footer-nav a:active {
    color: #fff;

    text-align: center;
    padding: 8px;
    box-shadow: inset 1px 1px 0px 0px #b9e6fa;
  }

  .footer-nav-text,
  .footer-nav-text-sm {
    font-weight: 700;
  }

  a.goTop-btn {
    width: 100%;
    max-width: 100%;
    text-align: center;
    font-size: 14px;
    padding-bottom: 8px;
    font-weight: 700;
    color: #aaa;
  }

}

.page-top {
  display: none!important;
}
