@charset "UTF-8";
*,
::before,
::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html, body {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  font-weight: 400;
  font-family: YakuHanJP_Narrow, "Zen Kaku Gothic New", sans-serif;
  color: rgb(35, 89, 137);
  font-size: 16px;
}

html {
  scroll-margin-top: 100px;
  scroll-behavior: smooth;
}
@media (max-width: 1240px) {
  html {
    height: 60px;
  }
}

h1, h2, h3, h4, h5, h6 {
  font-weight: 400;
  font-size: 1rem;
}

h1, h2, h3, h4, h5, h6, p {
  margin: 0;
  padding: 0;
}

.select-wrap {
  position: relative;
}
.select-wrap::after {
  position: absolute;
  top: 50%;
  right: 10px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  z-index: 2;
  width: 15px;
  height: 10px;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  pointer-events: none;
}

input[type=submit],
button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border: none;
  outline: none;
  border: 1px solid rgb(190, 190, 190);
  padding: 10px;
  border-radius: 5px;
}

section {
  padding: 100px 0;
}
section.section-bottom {
  padding-bottom: 0;
}
section.page {
  padding: 160px 0;
}
@media (max-width: 767px) {
  section.page {
    padding: 80px 0;
  }
}

.contents-wrapper {
  width: calc(100% - 100px);
  max-width: 1240px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .contents-wrapper {
    width: calc(100% - 40px);
  }
}
.contents-wrapper.big {
  max-width: 1500px;
  width: 100%;
}
.contents-wrapper.padding-right {
  padding-right: 130px;
}
@media (max-width: 1550px) {
  .contents-wrapper.padding-right {
    padding-right: calc((100vw - 1240px) / 2);
  }
}
@media (max-width: 1340px) {
  .contents-wrapper.padding-right {
    padding-right: 50px;
  }
}
@media (max-width: 767px) {
  .contents-wrapper.padding-right {
    padding-right: 20px;
  }
}

.ipad-block {
  display: none;
}
@media (max-width: 1023px) {
  .ipad-block {
    display: block;
  }
}

@media (max-width: 1023px) {
  .ipad-none {
    display: none;
  }
}

@media screen and (min-width: 768px) {
  .sp {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .pc {
    display: none;
  }
}
.main-contents {
  text-align: left;
  word-wrap: break-word;
  line-height: 200%;
}
.main-contents p:not(:last-child) {
  margin-bottom: 15px;
}
.main-contents img:not(.emoji) {
  width: 50% !important;
  height: auto !important;
  -o-object-fit: cover;
     object-fit: cover;
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .main-contents img:not(.emoji) {
    width: 100% !important;
  }
}

.left-float {
  float: left;
}

.right-float {
  float: right;
}

.clear {
  clear: both;
}

img, iframe {
  display: block;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

a {
  text-decoration: none;
  transition: 0.5s;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -ms-transition: 0.5s;
  -o-transition: 0.5s;
}

a:hover {
  transition: 0.5s;
  -webkit-transition: 0.5s;
  -moz-transition: 0.5s;
  -ms-transition: 0.5s;
  -o-transition: 0.5s;
}

.text-center {
  text-align: center;
}

.text-left {
  text-align: left;
}

.text-right {
  text-align: right;
}

.color-black {
  color: rgb(0, 0, 0);
}

.color-white {
  color: rgb(255, 255, 255);
}

table {
  width: 100%;
  margin: 0 auto;
  border-collapse: collapse;
  border-spacing: 0;
}

.block-item {
  display: block;
}

.inlineblock-item {
  display: inline-block;
}

.inline-item {
  display: inline;
}

ul, ol {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.right-flex {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

.white-space {
  white-space: nowrap;
}

figure {
  margin: 0;
  padding: 0;
}

.fv-title {
  position: relative;
  z-index: 2;
  font-size: 48px;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  color: rgb(35, 89, 137);
  line-height: 1.6;
}
@media (max-width: 767px) {
  .fv-title {
    font-size: 24px;
  }
}

.title-font24 {
  display: block;
  font-size: 24px;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .title-font24 {
    font-size: 16px;
  }
}

.title-font32 {
  font-size: 32px;
  line-height: 1.6;
  letter-spacing: 0.05em;
  font-weight: 500;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .title-font32 {
    font-size: 24px;
    letter-spacing: 0;
  }
}
.title-font32.mincho {
  font-weight: 400;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
}
.title-font32.blue {
  color: rgb(35, 89, 137);
}

.title-font48 {
  margin-bottom: 20px;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  font-size: 48px;
  line-height: 1.6;
  letter-spacing: 0;
}
@media (max-width: 1225px) {
  .title-font48 {
    font-size: 40px;
  }
}
@media (max-width: 1030px) {
  .title-font48 {
    font-size: 37px;
  }
}
@media (max-width: 767px) {
  .title-font48 {
    font-size: 24px;
  }
}

.en-image-title {
  margin-bottom: 18px;
}
@media (max-width: 767px) {
  .en-image-title {
    margin-bottom: 22px;
  }
}
.en-image-title img {
  height: 69px;
  width: auto;
  max-width: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  margin: 0 0 18px;
}
@media (max-width: 767px) {
  .en-image-title img {
    height: 44px;
    margin-bottom: 11px;
  }
}
@media (max-width: 767px) {
  .en-image-title .sp-tow-item img {
    height: 95px;
  }
}
.en-image-title .ja {
  font-size: 24px;
  margin-left: 5px;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
}
@media (max-width: 767px) {
  .en-image-title .ja {
    font-size: 16px;
    margin-left: 0;
  }
}
.en-image-title .ja.blue {
  color: rgb(35, 89, 137);
}
.en-image-title.center {
  text-align: center;
}
.en-image-title.center img {
  margin-inline: auto;
}

.mv-title {
  margin-bottom: 5px;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .mv-title {
    margin-bottom: 4px;
  }
}
.mv-title .small {
  margin-bottom: 8px;
  display: block;
  font-size: 20px;
}
@media (max-width: 767px) {
  .mv-title .small {
    font-size: 16px;
    margin-bottom: 4px;
  }
}
.mv-title .big {
  font-size: 48px;
}
@media (max-width: 767px) {
  .mv-title .big {
    font-size: 32px;
    letter-spacing: 0.05em;
  }
}

.bg-grade-title {
  margin-bottom: 33px;
  font-size: 24px;
  line-height: 1.6;
  color: rgb(255, 255, 255);
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  padding: 0 10px 1px;
  background: -webkit-gradient(linear, left top, right top, color-stop(1.44%, rgb(0, 89, 145)), to(rgb(0, 147, 160)));
  background: linear-gradient(90deg, rgb(0, 89, 145) 1.44%, rgb(0, 147, 160) 100%);
}
@media (max-width: 767px) {
  .bg-grade-title {
    margin-bottom: 20px;
    font-size: 20px;
    padding: 3px 10px 4px;
  }
}

.border-title {
  font-size: 80px;
  text-transform: uppercase;
  color: transparent;
  -webkit-text-stroke: 1px rgb(119, 173, 195); /* ベンダープレフィックス */
  text-stroke: 1px rgb(119, 173, 195);
  font-family: YakuHanMP, "Zen Old Mincho", serif;
}

.top-btn {
  text-transform: uppercase;
  letter-spacing: 0.03em;
  background-color: rgb(49, 114, 180);
  border: 1px solid rgb(255, 255, 255);
  color: rgb(255, 255, 255);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 250px;
  padding: 19px 25px;
  margin-top: 37px;
}
.top-btn::after {
  content: "";
  display: block;
  width: 16px;
  aspect-ratio: 16/6;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-image: url("../../images/arrow.svg");
          mask-image: url("../../images/arrow.svg");
  background-color: rgb(255, 255, 255);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.top-btn:hover {
  background-color: rgb(255, 255, 255);
  color: rgb(49, 114, 180);
  border-color: rgb(49, 114, 180);
}
.top-btn:hover::after {
  background-color: rgb(49, 114, 180);
}
.top-btn.center {
  margin-inline: auto;
}

.header-menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: 50px;
  width: calc(100% - 30px - 225px);
}
@media (max-width: 1375px) {
  .header-menu {
    gap: 30px;
  }
}
@media (max-width: 1240px) {
  .header-menu {
    display: none;
  }
}
.header-menu .menu-box {
  position: relative;
  height: 100px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header-menu .menu-box.is-active a {
  color: rgb(0, 147, 160);
}
.header-menu .menu-normal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 35px;
}
@media (max-width: 1375px) {
  .header-menu .menu-normal {
    gap: 15px;
  }
}
.header-menu .main-menu {
  color: rgb(35, 89, 137);
  font-size: 14px;
}
.header-menu .menu-recruit {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 20px;
}
.header-menu .menu-recruit::before {
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  display: block;
  width: 100%;
  height: 40px;
  background: -webkit-gradient(linear, left top, right top, color-stop(20.19%, rgb(47, 109, 171)), to(rgb(63, 166, 132)));
  background: linear-gradient(90deg, rgb(47, 109, 171) 20.19%, rgb(63, 166, 132) 100%);
}
.header-menu .menu-recruit .hovertrigger.is-active a {
  color: rgb(255, 255, 255);
  opacity: 0.6;
}
.header-menu .menu-recruit .hovertrigger:not(:last-child) {
  margin-right: 35px;
}
@media (max-width: 1375px) {
  .header-menu .menu-recruit .hovertrigger:not(:last-child) {
    margin-right: 20px;
  }
}
.header-menu .menu-recruit .main-menu {
  color: rgb(255, 255, 255);
}
.header-menu .recruit-menu-text {
  font-family: YakuHanJP_Narrow, "Roboto", sans-serif;
  text-transform: uppercase;
  color: rgb(83, 169, 218);
  font-size: 12px;
  margin-right: 30px;
}
@media (max-width: 1375px) {
  .header-menu .recruit-menu-text {
    margin-right: 15px;
  }
}

@media (max-width: 1240px) {
  .header-sub-menu {
    display: none;
  }
}
.header-sub-menu .sub-menu-box {
  position: absolute;
  top: 100%;
  left: 50%;
  -webkit-transform: translate(-50%, -20px);
          transform: translate(-50%, -20px);
  width: 100vw;
  height: 100px;
  background-color: rgb(235, 243, 246);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease, -webkit-transform 0.3s ease;
  pointer-events: none;
}
.header-sub-menu .sub-menu-box.is-active {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  pointer-events: auto;
}
.header-sub-menu .sub-menu-box .contents-wrapper {
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 30px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.header-sub-menu .sub-menu-wrapper a:not(:last-child) {
  margin-right: 26px;
}

.sub-menu-box a {
  color: rgb(35, 89, 137);
}
.sub-menu-box.recruit {
  background: -webkit-gradient(linear, left top, right top, color-stop(20.19%, rgb(47, 109, 171)), to(rgb(63, 166, 132)));
  background: linear-gradient(90deg, rgb(47, 109, 171) 20.19%, rgb(63, 166, 132) 100%);
}
.sub-menu-box.recruit a {
  color: rgb(255, 255, 255);
}
.sub-menu-box .sub-menu-wrapper {
  font-size: 14px;
  letter-spacing: 0.03em;
}
.sub-menu-box .sub-menu-wrapper a:hover {
  color: rgb(0, 147, 160);
}

.main-menu-link {
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  font-size: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.main-menu-link:hover {
  color: rgb(0, 147, 160);
}
.main-menu-link:hover::before {
  -webkit-transform: translateX(3px);
          transform: translateX(3px);
}
.main-menu-link::before {
  content: "";
  display: block;
  width: 20px;
  padding: 5px;
  aspect-ratio: 1/1;
  background-color: rgb(0, 147, 160);
  border-radius: 50%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 61%;
  background-image: url("../../images/arrow.svg");
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.global-menu,
.sp-navigation {
  display: none;
}
@media (max-width: 1240px) {
  .global-menu,
  .sp-navigation {
    display: block;
  }
}

/* ハンバーガーボタン */
.hamburger {
  position: relative;
  z-index: 1002;
  width: 30px;
  height: 20px;
  background: none;
  border: none;
  cursor: pointer;
}

.hamburger span {
  display: block;
  width: 30px;
  height: 2px;
  background: rgb(0, 147, 160);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.hamburger span:not(:last-child) {
  margin-bottom: 8px;
}

/* 開いた時のバツ */
.hamburger.is-active span {
  width: 35px;
}

.hamburger.is-active span:nth-child(1) {
  -webkit-transform: translateY(8px) rotate(45deg);
          transform: translateY(8px) rotate(45deg);
}

.hamburger.is-active span:nth-child(2) {
  opacity: 0;
}

.hamburger.is-active span:nth-child(3) {
  -webkit-transform: translateY(-12px) rotate(-45deg);
          transform: translateY(-12px) rotate(-45deg);
}

/* メニュー本体 */
.global-menu {
  position: fixed;
  top: 60px;
  left: 0;
  width: 100%;
  max-height: calc(100% - 60px);
  overflow: scroll;
  background: rgb(235, 243, 246);
  -webkit-transform: translateY(calc(-100% - 60px));
          transform: translateY(calc(-100% - 60px));
  -webkit-transition: -webkit-transform 0.3s ease;
  transition: -webkit-transform 0.3s ease;
  transition: transform 0.3s ease;
  transition: transform 0.3s ease, -webkit-transform 0.3s ease;
  z-index: 1001;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.global-menu .main-wrapper {
  padding: 28px 0 22px;
}
.global-menu .sub-menu-box:not(:last-child) {
  margin-bottom: 20px;
}
@media (max-width: 1240px) {
  .global-menu .sub-menu-box.policy {
    padding: 26px 0;
  }
  .global-menu .sub-menu-box.policy a {
    font-size: 14px;
  }
}
.global-menu .main-menu-link {
  margin-bottom: 6px;
}
.global-menu .sub-menu-wrapper {
  width: calc(100% - 60px);
  margin: auto;
  display: -ms-grid;
  display: grid;
  gap: 10px 15px;
  -ms-grid-columns: 1fr 15px 1fr 15px 1fr 15px 1fr;
  grid-template-columns: repeat(4, 1fr);
}
@media (max-width: 767px) {
  .global-menu .sub-menu-wrapper {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}
.global-menu .sub-menu-wrapper a {
  padding-bottom: 5px;
  border-bottom: 1px solid rgba(119, 173, 195, 0.5);
}
.global-menu .recruit-wrapper {
  padding: 28px 0 50px;
  background: -webkit-gradient(linear, left top, right top, color-stop(20.19%, rgb(47, 109, 171)), to(rgb(63, 166, 132)));
  background: linear-gradient(90deg, rgb(47, 109, 171) 20.19%, rgb(63, 166, 132) 100%);
}
.global-menu .recruit-wrapper .sub-menu-wrapper {
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 1023px) {
  .global-menu .recruit-wrapper .sub-menu-wrapper {
    -ms-grid-columns: (1fr)[2];
    grid-template-columns: repeat(2, 1fr);
  }
}

.global-menu.is-open {
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

/* overlay */
.menu-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  z-index: 1000;
}

.menu-overlay.is-show {
  opacity: 1;
  visibility: visible;
}

.hidden-wrapper {
  overflow: hidden;
}

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0 40px;
  z-index: 10000000;
  background-color: rgb(255, 255, 255);
}
@media (max-width: 1240px) {
  .site-header {
    padding: 0 20px;
  }
}
@media (max-width: 1240px) {
  .site-header .contents-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 30px;
  }
}

.header-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 30px;
}
@media (max-width: 1240px) {
  .header-wrapper {
    height: 60px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.header-logo {
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
.header-logo a {
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  color: rgb(35, 89, 137);
  letter-spacing: 0.05em;
}
.header-logo .small {
  font-size: 14px;
  vertical-align: middle;
  margin-right: 6px;
}
@media (max-width: 767px) {
  .header-logo .small {
    font-size: 10px;
    margin-right: 3px;
  }
}
.header-logo .big {
  vertical-align: middle;
  font-size: 30px;
}
@media (max-width: 767px) {
  .header-logo .big {
    font-size: 21px;
  }
}

footer {
  overflow: hidden;
  padding: 0 30px 25px;
  position: relative;
  height: 470px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(0, 89, 145)), to(rgb(0, 147, 160)));
  background: linear-gradient(180deg, rgb(0, 89, 145) 0%, rgb(0, 147, 160) 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-direction: column;
      flex-direction: column;
  font-size: 12px;
  letter-spacing: 0.03em;
  line-height: 1.6;
}
@media (max-width: 1023px) {
  footer {
    height: 330px;
  }
}
@media (max-width: 767px) {
  footer {
    padding: 0 20px 22px;
    height: 420px;
  }
}
footer.blue-bg::before {
  background-color: rgb(49, 114, 180);
}
footer::before {
  position: absolute;
  top: -1px;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 362px;
  background-color: rgb(255, 255, 255);
  z-index: 2;
  clip-path: polygon(0 0, 100% 0, 100% 82px, 67.5% 100%, 0 38px);
}
@media (max-width: 1023px) {
  footer::before {
    height: 172px;
  }
}
@media (max-width: 767px) {
  footer::before {
    height: 143px;
    clip-path: polygon(0 0, 100% 0, 100% 49px, 81% 100%, 0 61px);
  }
}
footer .about-radar {
  position: absolute;
  top: 97px;
  left: 0;
  -webkit-transform: translateX(-21%);
          transform: translateX(-21%);
  width: 50%;
  max-width: 645px;
}
@media (max-width: 767px) {
  footer .about-radar {
    top: 68px;
    -webkit-transform: translateX(-35%);
            transform: translateX(-35%);
    width: 450px;
  }
}

.breadcrumb-list {
  position: relative;
  z-index: 3;
  line-height: 1.6;
  font-size: 12px;
  letter-spacing: 0.03em;
}
.breadcrumb-list a svg {
  margin-right: 8px;
}
.breadcrumb-list a::after {
  content: "";
  margin: 0 5px;
  display: inline-block;
  width: 5px;
  aspect-ratio: 5/10;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url("../../images/breadcrumb-arrow.svg");
}
.breadcrumb-list a, .breadcrumb-list span {
  color: rgb(66, 169, 178);
}

.copy-right {
  position: relative;
  z-index: 2;
  margin-top: auto;
  text-align: right;
  color: rgb(255, 255, 255);
}
@media (max-width: 767px) {
  .copy-right {
    padding-right: 10px;
  }
  .copy-right span {
    display: block;
  }
}

.footer-policy-link {
  display: inline-block;
  color: rgb(255, 255, 255);
  margin-right: 30px;
}
@media (max-width: 767px) {
  .footer-policy-link {
    margin-right: 0;
  }
}

.line-height200 {
  line-height: 2;
  letter-spacing: 0.03em;
}

.fade-in {
  opacity: 0;
  -webkit-transform: translateY(50px);
          transform: translateY(50px);
  -webkit-transition: opacity 1.5s ease, -webkit-transform 1.5s ease;
  transition: opacity 1.5s ease, -webkit-transform 1.5s ease;
  transition: opacity 1.5s ease, transform 1.5s ease;
  transition: opacity 1.5s ease, transform 1.5s ease, -webkit-transform 1.5s ease;
}

.fade-in.is-show {
  opacity: 1;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.fv-section {
  overflow: hidden;
  height: 580px;
  padding-top: 132px;
}
@media (max-width: 767px) {
  .fv-section {
    position: relative;
    height: 480px;
    padding-top: 88px;
  }
}
.fv-section .contents-wrapper {
  position: relative;
}
@media (max-width: 767px) {
  .fv-section .contents-wrapper {
    position: static;
    width: calc(100% - 60px);
  }
}

.fv-image {
  position: absolute;
  top: 0;
  right: 0;
  width: 152%;
  -webkit-transform: translate(36.4%, -26.2%);
          transform: translate(36.4%, -26.2%);
}
@media (max-width: 1023px) {
  .fv-image {
    -webkit-transform: translate(26.4%, -6.2%);
            transform: translate(26.4%, -6.2%);
  }
}
@media (max-width: 767px) {
  .fv-image {
    width: 100%;
    -webkit-transform: translateY(30px);
            transform: translateY(30px);
    top: auto;
    bottom: 0;
  }
}
.fv-image .fv-dot {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-transition-delay: 0.8s;
          transition-delay: 0.8s;
}

.top-news-section {
  padding: 20px 0 22px;
  background-color: rgb(235, 243, 246);
}
@media (max-width: 767px) {
  .top-news-section {
    padding-bottom: 30px;
  }
}
.top-news-section .contents-wrapper {
  max-width: 1152px;
}

.news-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 3px 50px;
}

.news-list {
  width: calc(100% - 105px - 50px);
}
@media (max-width: 767px) {
  .news-list {
    width: 100%;
  }
}
.news-list li:not(:first-child) a {
  padding-top: 10px;
}
.news-list li:not(:last-child) a {
  border-bottom: 1px solid rgb(255, 255, 255);
  padding-bottom: 10px;
}
.news-list a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 20px;
  letter-spacing: 0.03em;
  color: rgb(35, 89, 137);
}
@media (max-width: 1023px) {
  .news-list a {
    gap: 5px 0;
  }
}
@media (max-width: 767px) {
  .news-list a {
    font-size: 12px;
  }
}
.news-list .time {
  width: 106px;
}
.news-list .news-title {
  width: calc(100% - 106px - 20px);
}
@media (max-width: 1023px) {
  .news-list .news-title {
    width: calc(100% - 106px);
  }
}
@media (max-width: 767px) {
  .news-list .news-title {
    width: 100%;
    font-size: 12px;
  }
}
.news-list .news-title span {
  display: block;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 767px) {
  .news-list .news-title span {
    white-space: wrap;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-line-clamp: 2;
  }
}

.top-about-section {
  padding: 71px 0;
  background-color: rgb(49, 114, 180);
  color: rgb(255, 255, 255);
}
@media (max-width: 767px) {
  .top-about-section {
    padding: 80px 0;
  }
}
@media (max-width: 1023px) {
  .top-about-section .contents-wrapper.padding-right {
    padding-right: 0;
  }
}

.top-about-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px 30px;
}
.top-about-wrapper .image-box {
  position: relative;
  width: 53%;
  max-width: 675px;
}
@media (max-width: 1340px) {
  .top-about-wrapper .image-box {
    width: 48%;
  }
}
@media (max-width: 1023px) {
  .top-about-wrapper .image-box {
    width: 100%;
  }
}
.top-about-wrapper .about-radar {
  position: absolute;
  top: 20px;
  right: 55px;
  width: 95%;
  z-index: 2;
}
@media (max-width: 767px) {
  .top-about-wrapper .about-radar {
    width: 100%;
    top: 10px;
    right: 16px;
  }
}
.top-about-wrapper .one {
  margin-bottom: 220px;
  width: 50%;
  max-width: 268px;
  -webkit-transform: translateX(-10%);
          transform: translateX(-10%);
}
@media (max-width: 767px) {
  .top-about-wrapper .one {
    -webkit-transform: translateX(-5%);
            transform: translateX(-5%);
    width: 41%;
    margin-bottom: 124px;
  }
}
.top-about-wrapper .two {
  position: absolute;
  top: 46%;
  left: 0;
  width: 32%;
  max-width: 205px;
  margin-left: 0;
}
.top-about-wrapper .three {
  width: 56%;
  margin-right: 0;
}
@media (max-width: 767px) {
  .top-about-wrapper .three {
    width: 54%;
  }
}
.top-about-wrapper .text-box {
  width: calc(47% - 30px);
  max-width: 576px;
}
@media (max-width: 1340px) {
  .top-about-wrapper .text-box {
    width: calc(52% - 30px);
  }
}
@media (max-width: 1023px) {
  .top-about-wrapper .text-box {
    width: calc(100% - 100px);
    margin: auto;
  }
}
@media (max-width: 767px) {
  .top-about-wrapper .text-box {
    width: calc(100% - 40px);
  }
}
.top-about-wrapper .line-height200 {
  width: 97%;
}
@media (max-width: 1096px) {
  .top-about-wrapper .line-height200 {
    width: 100%;
  }
}

.top-business-section {
  padding: 115px 0;
}
@media (max-width: 767px) {
  .top-business-section {
    padding: 79px 0;
  }
}

.top-business-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
}
@media (max-width: 767px) {
  .top-business-wrapper {
    gap: 0;
  }
}
.top-business-wrapper .text-box {
  position: relative;
  z-index: 2;
  max-width: calc(100% - 120px - 30px);
}
@media (max-width: 767px) {
  .top-business-wrapper .text-box {
    max-width: 100%;
    display: contents;
  }
}
.top-business-wrapper .text-inner {
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .top-business-wrapper .top-btn {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 100%;
  }
}

.business-circle-box {
  position: relative;
  width: 120px;
  margin: auto;
  -webkit-transform: translateX(-40%);
          transform: translateX(-40%);
}
@media (max-width: 1023px) {
  .business-circle-box {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
@media (max-width: 767px) {
  .business-circle-box {
    margin-top: 30px;
    position: static;
    width: 100%;
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 6px 1fr 6px 1fr 6px 1fr 6px 1fr;
    grid-template-columns: repeat(5, 1fr);
    gap: 6px;
  }
}
.business-circle-box .business-bg {
  position: absolute;
  bottom: -95px;
  left: 50%;
  width: 610%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
  pointer-events: none;
}
@media (max-width: 767px) {
  .business-circle-box .business-bg {
    width: 570px;
    left: auto;
    right: 0;
    bottom: -40px;
    -webkit-transform: translateX(63%);
            transform: translateX(63%);
  }
}
.business-circle-box .circle-inner {
  aspect-ratio: 1/1;
  border-radius: 50%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-image: url("../../images/business-circle-bg.png");
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: rgb(255, 255, 255);
  font-size: 18px;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
}
@media (max-width: 767px) {
  .business-circle-box .circle-inner {
    font-size: 9px;
  }
}
.business-circle-box .circle-inner:not(:last-child) {
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .business-circle-box .circle-inner:not(:last-child) {
    margin-bottom: 0;
  }
}

.top-our-factory-section {
  padding: 160px 0;
  position: relative;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  color: rgb(255, 255, 255);
  text-align: center;
  background-image: url("../../images/our-factory-bg.jpg");
}
@media (max-width: 767px) {
  .top-our-factory-section {
    padding: 80px 0;
  }
}
.top-our-factory-section::before {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-color: rgba(27, 94, 162, 0.8);
}
.top-our-factory-section .contents-wrapper {
  position: relative;
  z-index: 1;
}
.top-our-factory-section .top-btn {
  margin-top: 47px;
}
@media (max-width: 767px) {
  .top-our-factory-section .top-btn {
    margin-top: 42px;
  }
}

.top-our-factory-text {
  letter-spacing: 0.03em;
  margin-bottom: 43px;
}

.top-our-factory-wrapper {
  max-width: 1190px;
  margin: auto;
  gap: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.top-factory-inner {
  padding: 13px 10px 30px;
  border: 1px solid rgb(119, 173, 195);
}
@media (max-width: 767px) {
  .top-factory-inner {
    padding: 13px 18px 30px;
  }
}
.top-factory-inner.kusatsu {
  width: calc(50% - 30px);
  max-width: 565px;
}
@media (max-width: 1023px) {
  .top-factory-inner.kusatsu {
    width: 100%;
    max-width: 100%;
  }
}
.top-factory-inner.takashima {
  width: calc(50% + 20px);
  max-width: 575px;
}
@media (max-width: 1023px) {
  .top-factory-inner.takashima {
    width: 100%;
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .top-factory-inner .title-font32 {
    margin-bottom: 10px;
  }
}
.top-factory-inner p {
  letter-spacing: 0.03em;
}

.factory-list {
  margin-top: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 5px;
}
@media (max-width: 767px) {
  .factory-list {
    margin-top: 20px;
  }
}
.factory-list li {
  padding: 4px 10px;
  line-height: 1.6;
  letter-spacing: 0.03em;
  color: rgb(35, 89, 137);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: rgb(255, 255, 255);
}
@media (max-width: 1099px) {
  .factory-list li {
    font-size: 13px;
  }
}
@media (max-width: 1023px) {
  .factory-list li {
    width: calc((100% - 10px) / 3);
    padding: 4px 3px;
  }
}
@media (max-width: 767px) {
  .factory-list li {
    padding: 6px 1px;
    line-height: 1.3;
  }
}

.top-recruit-section {
  padding-top: 146px;
  color: rgb(255, 255, 255);
}
@media (max-width: 767px) {
  .top-recruit-section {
    padding-top: 145px;
  }
}
.top-recruit-section .contents-wrapper {
  position: relative;
}
.top-recruit-section .top-recruit-item {
  position: absolute;
  top: -110px;
  right: -45px;
  width: 40%;
  max-width: 522px;
}
@media (max-width: 767px) {
  .top-recruit-section .top-recruit-item {
    right: -83px;
    top: -165px;
    width: 80%;
  }
}
.top-recruit-section .recruit-en-image {
  width: 85%;
  margin: 0 0 132px 5px;
  max-width: 924px;
}
@media (max-width: 767px) {
  .top-recruit-section .recruit-en-image {
    margin-bottom: 263px;
  }
}
.top-recruit-section .bg-wrapper {
  background-color: rgb(0, 147, 160);
}
.top-recruit-section .bg-wrapper.grade {
  position: relative;
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(0, 89, 145)), to(rgb(0, 147, 160)));
  background: linear-gradient(180deg, rgb(0, 89, 145) 0%, rgb(0, 147, 160) 100%);
}
@media (max-width: 767px) {
  .top-recruit-section .bg-wrapper.grade {
    padding-top: 50px;
  }
}
.top-recruit-section .bg-wrapper.grade::before {
  position: absolute;
  top: -1px;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 323px;
  background-color: rgb(255, 255, 255);
  clip-path: polygon(0 0, 100% 0, 100% 50px, 68% 100%);
}
@media (max-width: 767px) {
  .top-recruit-section .bg-wrapper.grade::before {
    height: 88px;
    clip-path: polygon(0 0, 100% 0px, 100% 13px, 67% 100%);
  }
}

.top-recruit-wrapper {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.top-recruit-wrapper .title-font24 {
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .top-recruit-wrapper .title-font24 {
    margin-bottom: 20px;
  }
}
.top-recruit-wrapper .recruit-title {
  margin-bottom: 20px;
}
.top-recruit-wrapper .text-box {
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .top-recruit-wrapper .top-btn {
    margin-top: 32px;
  }
}
.top-recruit-wrapper.top {
  padding-bottom: 138px;
}
@media (max-width: 767px) {
  .top-recruit-wrapper.top {
    padding-bottom: 38px;
  }
}
.top-recruit-wrapper.top .image-box {
  position: absolute;
  right: 0;
  top: calc(50% - 150px);
  z-index: 1;
  -webkit-transform: translate(13%, -39%);
          transform: translate(13%, -39%);
  width: 60%;
}
@media (max-width: 1023px) {
  .top-recruit-wrapper.top .image-box {
    width: 85%;
    -webkit-transform: translate(33%, -39%);
            transform: translate(33%, -39%);
  }
}
@media (max-width: 767px) {
  .top-recruit-wrapper.top .image-box {
    top: auto;
    bottom: 60%;
    width: 126%;
    -webkit-transform: translate(27%, 0);
            transform: translate(27%, 0);
  }
}
.top-recruit-wrapper.top .text-box {
  padding-left: 39px;
}
@media (max-width: 1225px) {
  .top-recruit-wrapper.top .text-box {
    padding-left: 0;
  }
}
.top-recruit-wrapper.bottom {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.top-recruit-wrapper.bottom .image-box {
  position: absolute;
  left: 0;
  top: 50%;
  z-index: 1;
  -webkit-transform: translate(-25%, -48%);
          transform: translate(-25%, -48%);
  width: 50%;
}
@media (max-width: 1023px) {
  .top-recruit-wrapper.bottom .image-box {
    left: auto;
    right: 0;
    top: 0;
    -webkit-transform: translate(25%, -28%);
            transform: translate(25%, -28%);
    width: 80%;
  }
}
@media (max-width: 767px) {
  .top-recruit-wrapper.bottom .image-box {
    width: calc(100% + 40px);
    position: static;
    -webkit-transform: translate(-20px, 0);
            transform: translate(-20px, 0);
  }
  .top-recruit-wrapper.bottom .image-box img {
    width: calc(100% + 40px);
  }
}
@media (max-width: 767px) {
  .top-recruit-wrapper.bottom .text-box {
    margin-top: -35px;
  }
}
.top-recruit-wrapper.bottom .other-br {
  display: none;
}
@media (max-width: 1193px) {
  .top-recruit-wrapper.bottom .other-br {
    display: block;
  }
}
@media (max-width: 1023px) {
  .top-recruit-wrapper.bottom .other-br {
    display: none;
  }
}

.top-people-section {
  position: relative;
  padding-top: 200px;
  background: linear-gradient(to bottom, rgb(0, 147, 160) 349px, rgb(255, 255, 255) 349px);
}
@media (max-width: 767px) {
  .top-people-section {
    padding-top: 145px;
    background: linear-gradient(to bottom, rgb(0, 147, 160) 149px, rgb(255, 255, 255) 149px);
  }
}
.top-people-section::before {
  position: absolute;
  top: 25px;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 325px;
  background-color: rgb(255, 255, 255);
  clip-path: polygon(32.5% 0, 100% 100%, 0 100%, 0 calc(100% - 46px));
}
@media (max-width: 767px) {
  .top-people-section::before {
    clip-path: polygon(32.5% 0, 100% 100%, 0 100%, 0 calc(100% - 12px));
    height: 85px;
    top: 65px;
  }
}
.top-people-section .contents-wrapper {
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .top-people-section .contents-wrapper {
    width: calc(100% - 38px);
  }
}
.top-people-section .recruit-title {
  margin-bottom: 20px;
  text-align: center;
}
@media (max-width: 767px) {
  .top-people-section .recruit-title {
    margin-bottom: 0px;
  }
}
@media (max-width: 767px) {
  .top-people-section .title-font24 {
    margin-bottom: 20px;
  }
}
.top-people-section .top-btn {
  margin-top: 32px;
}
@media (max-width: 767px) {
  .top-people-section .top-btn {
    margin-top: -4px;
  }
}

.people-scroll-text-wrapper {
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .people-scroll-text-wrapper {
    margin-top: -13px;
  }
}

@media (max-width: 767px) {
  .people-scroll-text-inner {
    -webkit-transform: scale(0.6);
            transform: scale(0.6);
  }
}

.people-scroll-text-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-animation: infinity-scroll-left 180s linear infinite;
          animation: infinity-scroll-left 180s linear infinite;
}
.people-scroll-text-track.center {
  -webkit-animation-duration: 100s;
          animation-duration: 100s;
}

.people-scroll-text-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.people-scroll-text-list li {
  margin-right: 70px;
}
.people-scroll-text-list:not(.bottom) {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .people-scroll-text-list:not(.bottom) {
    margin-bottom: 13px;
  }
}

.scroll-item {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}

@-webkit-keyframes infinity-scroll-left {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}

@keyframes infinity-scroll-left {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.top-system-section {
  padding-top: 120px;
  padding-bottom: 0;
}
@media (max-width: 1300px) {
  .top-system-section {
    padding-bottom: 55px;
  }
}
@media (max-width: 767px) {
  .top-system-section {
    padding-top: 40px;
  }
}
@media (max-width: 767px) {
  .top-system-section .top-btn {
    margin-top: 20px;
  }
}

.top-system-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 15px;
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
}
@media (max-width: 1327px) {
  .top-system-wrapper {
    gap: 0;
  }
}
@media (max-width: 767px) {
  .top-system-wrapper {
    gap: 10px;
  }
}
.top-system-wrapper .image-box {
  width: 44%;
}
@media (max-width: 1327px) {
  .top-system-wrapper .image-box {
    width: 40%;
  }
}
@media (max-width: 1033px) {
  .top-system-wrapper .image-box {
    width: 38%;
  }
}
@media (max-width: 1023px) {
  .top-system-wrapper .image-box {
    width: 50%;
  }
}
@media (max-width: 767px) {
  .top-system-wrapper .image-box {
    width: auto;
    -webkit-transform: translateX(21%);
            transform: translateX(21%);
  }
  .top-system-wrapper .image-box img {
    width: 430px;
  }
}
.top-system-wrapper .recruit-title {
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .top-system-wrapper .recruit-title {
    margin-bottom: 7px;
  }
}
.top-system-wrapper .title-font24 {
  margin-bottom: 13px;
}
.top-system-wrapper .text-box {
  padding-top: 33px;
  width: calc(56% - 15px);
}
@media (max-width: 1327px) {
  .top-system-wrapper .text-box {
    width: 60%;
  }
}
@media (max-width: 1033px) {
  .top-system-wrapper .text-box {
    width: 62%;
  }
}
@media (max-width: 1023px) {
  .top-system-wrapper .text-box {
    width: 100%;
    margin-top: -100px;
  }
}
@media (max-width: 767px) {
  .top-system-wrapper .text-box {
    margin-top: 0;
  }
}

.mv-main-section {
  padding-top: 157px;
  position: relative;
  overflow: hidden;
  height: 540px;
}
@media (max-width: 1240px) {
  .mv-main-section {
    padding-top: 117px;
  }
}
@media (max-width: 767px) {
  .mv-main-section {
    height: 570px;
    padding-top: 256px;
  }
}
.mv-main-section .contents-wrapper {
  position: relative;
}
.mv-main-section .about-radar {
  position: absolute;
  top: -38px;
  right: 20px;
  width: 55%;
  max-width: 655px;
}
@media (max-width: 767px) {
  .mv-main-section .about-radar {
    top: -188px;
    right: 0;
    -webkit-transform: translateX(31%) scale(-1, 1);
            transform: translateX(31%) scale(-1, 1);
    width: 88%;
  }
}
.mv-main-section .business-item {
  position: absolute;
  top: -57px;
  right: 0;
  width: 65%;
  max-width: 682px;
}
@media (max-width: 767px) {
  .mv-main-section .business-item {
    width: 105%;
    -webkit-transform: translate(31.5%, -37%);
            transform: translate(31.5%, -37%);
  }
}
.mv-main-section .top-recruit-item {
  position: absolute;
  word-wrap: 60%;
  max-width: 522px;
  top: 35px;
  right: 0;
  -webkit-transform: translateX(14%) rotate(23deg);
          transform: translateX(14%) rotate(23deg);
}
@media (max-width: 767px) {
  .mv-main-section .top-recruit-item {
    max-width: 321px;
    top: 0;
    -webkit-transform: translate(23%, -71%) rotate(23deg);
            transform: translate(23%, -71%) rotate(23deg);
  }
}

.mv-text {
  margin-bottom: 28px;
  font-size: 32px;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  letter-spacing: 0.05em;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .mv-text {
    margin-bottom: 32px;
    font-size: 20px;
    letter-spacing: 0.01em;
  }
}

.mv-page-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 30px;
}
@media (max-width: 1023px) {
  .mv-page-link {
    gap: 10px 15px;
  }
}
.mv-page-link li {
  width: 160px;
}
@media (max-width: 1023px) {
  .mv-page-link li {
    width: 150px;
  }
}
@media (max-width: 767px) {
  .mv-page-link li {
    width: calc((100% - 15px) / 2);
  }
}
.mv-page-link a {
  padding-right: 10px;
  padding-bottom: 12px;
  width: 100%;
  color: rgb(35, 89, 137);
  border-bottom: 1px solid rgb(35, 89, 137);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.mv-page-link a::after {
  content: "";
  display: block;
  width: 10px;
  aspect-ratio: 2/1;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  background-image: url("../../images/page-arrow.svg");
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.mv-page-link a:hover::after {
  -webkit-transform: translateY(3px);
          transform: translateY(3px);
}

.page-our-factory-section {
  background-color: rgb(49, 114, 180);
  color: rgb(255, 255, 255);
}
.page-our-factory-section.page {
  padding-bottom: 138px;
}
@media (max-width: 767px) {
  .page-our-factory-section.page {
    padding-bottom: 77px;
  }
}
.page-our-factory-section .contents-wrapper {
  position: relative;
  z-index: 2;
}
.page-our-factory-section .our-factory-bg-item {
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: translate(18%, -7%);
          transform: translate(18%, -7%);
  max-width: 960px;
}
.page-our-factory-section .en-image-title {
  margin-bottom: 59px;
}
@media (max-width: 767px) {
  .page-our-factory-section .en-image-title {
    margin-bottom: 38px;
  }
}

@media (max-width: 767px) {
  .our-factory-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    flex-direction: column;
  }
}
.our-factory-box:not(:last-child) {
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .our-factory-box:not(:last-child) {
    margin-bottom: 37px;
  }
}

.factory-name-box {
  margin-bottom: 13px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 20px;
}
@media (max-width: 767px) {
  .factory-name-box {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-bottom: 15px;
  }
}
.factory-name-box .title-font24 {
  width: 100%;
}
@media (max-width: 767px) {
  .factory-name-box .factory-list {
    margin-top: 15px;
  }
}
.factory-name-box .factory-list li {
  padding: 2px 10px;
}
@media (max-width: 767px) {
  .factory-name-box .factory-list li {
    padding: 7px 5px;
    text-align: center;
  }
}
.factory-name-box .factory-name {
  margin-bottom: 0;
}

.factory-image {
  margin-bottom: 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 10px 20px;
}
@media (max-width: 767px) {
  .factory-image {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-bottom: 18px;
  }
}
.factory-image img {
  max-width: 380px;
  width: calc((100% - 20px) / 2);
  margin: 0;
}
@media (max-width: 767px) {
  .factory-image img {
    width: 100%;
  }
}

.factory-message {
  line-height: 1.6;
  letter-spacing: 0.03em;
  max-width: 780px;
}
@media (max-width: 767px) {
  .factory-message {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.page-about-message-section {
  color: rgb(255, 255, 255);
  background-color: rgb(49, 114, 180);
}
@media (max-width: 767px) {
  .page-about-message-section {
    position: relative;
  }
}
.page-about-message-section.page {
  padding-bottom: 152px;
}
@media (max-width: 767px) {
  .page-about-message-section.page {
    padding-bottom: 70px;
  }
}
.page-about-message-section .contents-wrapper {
  position: relative;
}

.about-message-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 30px;
}
@media (max-width: 1325px) {
  .about-message-wrapper {
    gap: 0 10px;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
@media (max-width: 1023px) {
  .about-message-wrapper {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.about-message-wrapper .en-image-title {
  margin-bottom: 48px;
}
@media (max-width: 767px) {
  .about-message-wrapper .en-image-title {
    margin-bottom: 25px;
  }
}
.about-message-wrapper .line-height200:not(:last-child) {
  margin-bottom: 32px;
}
.about-message-wrapper.one {
  margin-bottom: 110px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
@media (max-width: 767px) {
  .about-message-wrapper.one {
    gap: 152px;
    margin-bottom: 17px;
  }
}
.about-message-wrapper.one .image-box {
  width: 30%;
  max-width: 350px;
}
@media (max-width: 1325px) {
  .about-message-wrapper.one .image-box {
    width: 25%;
  }
}
@media (max-width: 1023px) {
  .about-message-wrapper.one .image-box {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: 200px;
  }
}
@media (max-width: 767px) {
  .about-message-wrapper.one .image-box {
    width: 60%;
    margin-left: auto;
    -webkit-transform: translateX(20px);
            transform: translateX(20px);
  }
}
.about-message-wrapper.one .text-box {
  width: calc(70% - 30px);
  max-width: 819px;
}
@media (max-width: 1325px) {
  .about-message-wrapper.one .text-box {
    width: calc(75% - 10px);
  }
}
@media (max-width: 1023px) {
  .about-message-wrapper.one .text-box {
    display: contents;
  }
}
@media (max-width: 767px) {
  .about-message-wrapper.one .text-box {
    display: block;
    width: 100%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media (max-width: 1023px) {
  .about-message-wrapper.one .line-height200 {
    width: calc(100% - 210px);
  }
}
@media (max-width: 767px) {
  .about-message-wrapper.one .line-height200 {
    width: 100%;
  }
}
.about-message-wrapper.two {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 1023px) {
  .about-message-wrapper.two {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 30px;
  }
}
.about-message-wrapper.two .image-box {
  position: relative;
  width: 50%;
  max-width: 610px;
  padding-top: 20px;
}
@media (max-width: 1023px) {
  .about-message-wrapper.two .image-box {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .about-message-wrapper.two .image-box {
    padding-top: 0;
    position: absolute;
    top: 100px;
    left: -20px;
    width: 89%;
  }
}
.about-message-wrapper.two .text-box {
  max-width: 550px;
  width: calc(50% - 30px);
}
@media (max-width: 1023px) {
  .about-message-wrapper.two .text-box {
    width: 100%;
    max-width: 100%;
  }
}
.about-message-wrapper .top-image {
  position: relative;
  z-index: 2;
  width: 50%;
  max-width: 300px;
  margin-bottom: 44px;
  margin-left: 0;
}
@media (max-width: 767px) {
  .about-message-wrapper .top-image {
    margin-bottom: 27px;
  }
}
.about-message-wrapper .bottom-image {
  width: 80%;
  max-width: 398px;
  margin-right: 0;
}
@media (max-width: 767px) {
  .about-message-wrapper .bottom-image {
    width: 65%;
  }
}
.about-message-wrapper .message-item {
  position: absolute;
  top: -29px;
  width: 96.5%;
  right: 0;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
@media (max-width: 767px) {
  .about-message-wrapper .message-item {
    top: -20px;
  }
}

.page-about-basicpolicy-section.page {
  padding-bottom: 163px;
}
@media (max-width: 767px) {
  .page-about-basicpolicy-section.page {
    padding-bottom: 80px;
  }
}
.page-about-basicpolicy-section .en-image-title {
  margin-bottom: 70px;
}
@media (max-width: 767px) {
  .page-about-basicpolicy-section .en-image-title {
    margin-bottom: 36px;
  }
}

.about-basicpolicy-list {
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .about-basicpolicy-list {
    margin-bottom: 44px;
  }
}
.about-basicpolicy-list li {
  padding: 23px 35px;
  background-color: rgb(235, 243, 246);
  min-height: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 8px 33px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 767px) {
  .about-basicpolicy-list li {
    padding: 23px 20px;
  }
}
.about-basicpolicy-list li:not(:last-child) {
  margin-bottom: 10px;
}
.about-basicpolicy-list .title-font24 {
  width: 200px;
}
@media (max-width: 1245px) {
  .about-basicpolicy-list .title-font24 {
    width: 170px;
  }
}
@media (max-width: 767px) {
  .about-basicpolicy-list .title-font24 {
    width: 100%;
    text-align: center;
    font-size: 20px;
  }
}
.about-basicpolicy-list .list-contents {
  width: calc(100% - 200px - 33px);
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media (max-width: 1245px) {
  .about-basicpolicy-list .list-contents {
    width: calc(100% - 170px - 33px);
  }
}
@media (max-width: 767px) {
  .about-basicpolicy-list .list-contents {
    width: 100%;
  }
}

.about-basicpolicy-box {
  padding: 25px 35px;
  border: 1px solid rgb(119, 173, 195);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 30px;
}
@media (max-width: 767px) {
  .about-basicpolicy-box {
    padding: 19px 20px 30px;
  }
}
.about-basicpolicy-box .text-box {
  width: calc(100% - 250px - 30px);
}
@media (max-width: 1023px) {
  .about-basicpolicy-box .text-box {
    display: contents;
  }
}
.about-basicpolicy-box .title-font24 {
  margin-bottom: 13px;
}
@media (max-width: 1023px) {
  .about-basicpolicy-box .title-font24 {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .about-basicpolicy-box .title-font24 {
    font-size: 20px;
  }
}
.about-basicpolicy-box .text-inner {
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media (max-width: 1023px) {
  .about-basicpolicy-box .text-inner {
    width: calc(100% - 250px - 30px);
  }
}
@media (max-width: 767px) {
  .about-basicpolicy-box .text-inner {
    width: 100%;
    margin-bottom: 17px;
  }
}
.about-basicpolicy-box p:not(:last-child) {
  margin-bottom: 15px;
}
.about-basicpolicy-box .bold {
  display: block;
  font-weight: 700;
}
.about-basicpolicy-box .image-box {
  width: 250px;
}
@media (max-width: 767px) {
  .about-basicpolicy-box .image-box {
    width: 100%;
  }
}

.page-about-history-section {
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(0, 89, 145)), to(rgb(0, 147, 160)));
  background: linear-gradient(180deg, rgb(0, 89, 145) 0%, rgb(0, 147, 160) 100%);
  color: rgb(255, 255, 255);
}
@media (max-width: 767px) {
  .page-about-history-section.page {
    padding: 78px 0 75px;
    background: linear-gradient(deg, rgb(0, 89, 145) 0%, rgb(0, 147, 160) 100%);
  }
}
.page-about-history-section .contents-wrapper {
  position: relative;
}
.page-about-history-section .history-text {
  position: relative;
  z-index: 2;
  padding-left: 60px;
}
@media (max-width: 767px) {
  .page-about-history-section .history-text {
    padding-left: 0;
  }
}
.page-about-history-section .en-image-title {
  margin-bottom: 64px;
}
@media (max-width: 767px) {
  .page-about-history-section .en-image-title {
    margin-bottom: 26px;
  }
}
.page-about-history-section .history-item {
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translate(21%, -50%);
          transform: translate(21%, -50%);
  width: 85%;
  max-width: 730px;
}
@media (max-width: 767px) {
  .page-about-history-section .history-item {
    width: 107%;
    top: 0;
    -webkit-transform: translate(33%, -82px);
            transform: translate(33%, -82px);
  }
}

.history-list {
  letter-spacing: 0.03em;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .history-list {
    line-height: 1.3;
  }
}
.history-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 0 9px;
}
.history-list li:not(:last-child) {
  margin-bottom: 5px;
}
@media (max-width: 767px) {
  .history-list li:not(:last-child) {
    margin-bottom: 16px;
  }
}
.history-list .year {
  width: 170px;
}
@media (max-width: 767px) {
  .history-list .year {
    width: 100%;
  }
}

.page-about-access-section .en-image-title {
  margin-bottom: 70px;
}
@media (max-width: 767px) {
  .page-about-access-section .en-image-title {
    margin-bottom: 33px;
  }
}

.about-access-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 35px 30px;
}
.about-access-wrapper .access-box {
  width: calc((100% - 60px) / 3);
  max-width: 380px;
}
@media (max-width: 1023px) {
  .about-access-wrapper .access-box {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 7px 30px;
    max-width: 100%;
  }
}
.about-access-wrapper .google-map {
  margin-bottom: 10px;
  height: 253px;
}
@media (max-width: 1023px) {
  .about-access-wrapper .google-map {
    margin-bottom: 0;
    width: 50%;
  }
}
@media (max-width: 767px) {
  .about-access-wrapper .google-map {
    width: 100%;
    height: 223px;
  }
}
@media (max-width: 1023px) {
  .about-access-wrapper .text-box {
    width: calc(50% - 30px);
  }
}
@media (max-width: 767px) {
  .about-access-wrapper .text-box {
    width: 100%;
  }
}
.about-access-wrapper .title-font24 {
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .about-access-wrapper .title-font24 {
    font-size: 24px;
    margin-bottom: 4px;
  }
}
.about-access-wrapper p {
  line-height: 1.6;
  letter-spacing: 0.03em;
}

.page-business-our-services-section {
  background-color: rgb(49, 114, 180);
  color: rgb(255, 255, 255);
}
@media (max-width: 767px) {
  .page-business-our-services-section.page {
    padding-bottom: 103px;
  }
}
.page-business-our-services-section .contents-wrapper {
  position: relative;
}
.page-business-our-services-section .our-services-bg-image {
  position: absolute;
  top: 10px;
  right: 0;
  -webkit-transform: translateX(42%);
          transform: translateX(42%);
  width: 171%;
}
.page-business-our-services-section .en-image-title {
  margin-bottom: 70px;
}
@media (max-width: 767px) {
  .page-business-our-services-section .en-image-title {
    margin-bottom: 36px;
  }
}

.business-our-services-box:not(:last-child) {
  margin-bottom: 64px;
}
@media (max-width: 767px) {
  .business-our-services-box:not(:last-child) {
    margin-bottom: 28px;
  }
}
.business-our-services-box .inner-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 20px 35px;
}
@media (max-width: 767px) {
  .business-our-services-box .inner-box {
    gap: 12px;
  }
}
@media (max-width: 1073px) {
  .business-our-services-box .inner-box.production .text-box {
    display: contents;
  }
}
@media (max-width: 1073px) {
  .business-our-services-box .inner-box.production .side-text {
    width: calc(68% - 35px);
  }
}
@media (max-width: 1023px) {
  .business-our-services-box .inner-box.production .side-text {
    width: 100%;
  }
}
.business-our-services-box .image-box {
  width: 32%;
}
@media (max-width: 1023px) {
  .business-our-services-box .image-box {
    width: 100%;
  }
}
.business-our-services-box .text-box {
  width: calc(68% - 35px);
}
@media (max-width: 1023px) {
  .business-our-services-box .text-box {
    width: 100%;
  }
}
.business-our-services-box .title-font32 {
  margin-bottom: 8px;
}
@media (max-width: 767px) {
  .business-our-services-box .title-font32 {
    margin-bottom: 3px;
    letter-spacing: -0.01em;
  }
}

.business-production-box {
  margin-top: 21px;
  display: -ms-grid;
  display: grid;
  gap: 10px 15px;
  -ms-grid-columns: 1fr 15px 1fr;
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 1073px) {
  .business-production-box {
    margin-top: 0;
  }
}
@media (max-width: 767px) {
  .business-production-box {
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
  }
}

.white-box {
  background-color: rgb(255, 255, 255);
  color: rgb(35, 89, 137);
  padding: 20px 31px 25px;
  letter-spacing: 0.03em;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .white-box {
    padding: 12px 20px 13px;
  }
}
.white-box .title-font24 {
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .white-box .title-font24 {
    font-size: 20px;
  }
}

.page-business-quality-assurance-section.page {
  padding-bottom: 223px;
}
@media (max-width: 1023px) {
  .page-business-quality-assurance-section.page {
    padding-bottom: 100px;
  }
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section.page {
    padding-bottom: 6px;
  }
}
.page-business-quality-assurance-section .contents-wrapper {
  position: relative;
  z-index: 2;
}
.page-business-quality-assurance-section .top-recruit-item {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translate(-32%, -63%);
          transform: translate(-32%, -63%);
  width: 70%;
  max-width: 588px;
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section .top-recruit-item {
    width: 100%;
    -webkit-transform: translate(-44%, -56%);
            transform: translate(-44%, -56%);
  }
}
.page-business-quality-assurance-section .business-last-item {
  position: absolute;
  bottom: -218px;
  right: 0;
  -webkit-transform: translateX(16.5%);
          transform: translateX(16.5%);
  width: 80%;
  max-width: 758px;
}
@media (max-width: 1023px) {
  .page-business-quality-assurance-section .business-last-item {
    bottom: -90px;
  }
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section .business-last-item {
    position: static;
    width: 110%;
    right: auto;
    left: 0;
    margin-top: 37px;
    -webkit-transform: translate(0);
            transform: translate(0);
  }
}
.page-business-quality-assurance-section .en-image-title {
  margin-bottom: 73px;
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section .en-image-title {
    margin-bottom: 35px;
  }
}
.page-business-quality-assurance-section .en-image-title img {
  margin-bottom: 6px;
  height: 79px;
}
@media (max-width: 1023px) {
  .page-business-quality-assurance-section .en-image-title img {
    height: 150px;
  }
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section .en-image-title img {
    height: 95px;
    margin-bottom: 12px;
  }
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section .bg-grade-title {
    margin-bottom: 10px;
  }
}
.page-business-quality-assurance-section .business-our-services-box {
  margin-bottom: 38px;
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section .business-our-services-box {
    margin-bottom: 30px;
  }
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section .business-our-services-box .text-box {
    display: contents;
  }
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section .business-our-services-box .image-box {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section .business-our-services-box .title-font32 {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.page-business-quality-assurance-section .white-box.quality {
  margin-top: 25px;
  background-color: rgb(235, 243, 246);
}
@media (max-width: 767px) {
  .page-business-quality-assurance-section .white-box.quality {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    margin-top: 11px;
    padding-block: 20px 26px;
  }
}

.quality-list {
  margin-bottom: 50px;
  counter-reset: number 0;
}
@media (max-width: 767px) {
  .quality-list {
    padding-left: 10px;
    margin-bottom: 30px;
  }
}
.quality-list li {
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  padding: 0 20px;
  counter-increment: number 1;
  line-height: 1.6;
  font-size: 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 21px;
}
@media (max-width: 1057px) {
  .quality-list li {
    font-size: 23px;
    gap: 10px;
  }
}
@media (max-width: 1023px) {
  .quality-list li {
    padding-inline: 0;
  }
}
@media (max-width: 767px) {
  .quality-list li {
    font-size: 20px;
  }
}
.quality-list li:not(:last-child) {
  margin-bottom: 20px;
  padding-bottom: 21px;
  border-bottom: 1px solid rgb(119, 173, 195);
}
@media (max-width: 767px) {
  .quality-list li:not(:last-child) {
    margin-bottom: 14px;
    padding-bottom: 13px;
  }
}
.quality-list li span {
  width: calc(100% - 53px - 21px);
}
@media (max-width: 1057px) {
  .quality-list li span {
    width: calc(100% - 48px - 10px);
  }
}
@media (max-width: 767px) {
  .quality-list li span {
    width: calc(100% - 33px - 10px);
  }
}
.quality-list li::before {
  font-size: 32px;
  letter-spacing: 0.05em;
  content: counter(number, decimal-leading-zero) ".";
}
@media (max-width: 1057px) {
  .quality-list li::before {
    font-size: 28px;
  }
}
@media (max-width: 767px) {
  .quality-list li::before {
    font-size: 20px;
  }
}

@media (max-width: 767px) {
  .business-our-services-box.quality {
    margin-bottom: 30px;
  }
}
.business-our-services-box.quality .bg-grade-title {
  margin-bottom: 20px;
}
.business-our-services-box.quality .title-font24 {
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .business-our-services-box.quality .title-font24 {
    font-size: 20px;
  }
}
.business-our-services-box.quality .quality-none {
  line-height: 1.6;
  letter-spacing: 0.03em;
}

.quality-last-message {
  margin-top: 124px;
}
@media (max-width: 1023px) {
  .quality-last-message {
    margin-top: 60px;
  }
}
@media (max-width: 767px) {
  .quality-last-message {
    margin-top: 0px;
  }
}

.page-our-equipment-section.page {
  padding-top: 150px;
}
@media (max-width: 767px) {
  .page-our-equipment-section.page {
    padding-top: 80px;
  }
}
.page-our-equipment-section .en-image-title {
  margin-bottom: 70px;
}
@media (max-width: 767px) {
  .page-our-equipment-section .en-image-title {
    margin-bottom: 35px;
  }
}
.page-our-equipment-section .en-image-title img {
  margin-bottom: 9px;
  height: 79px;
}
@media (max-width: 1023px) {
  .page-our-equipment-section .en-image-title img {
    height: 150px;
  }
}
@media (max-width: 767px) {
  .page-our-equipment-section .en-image-title img {
    height: 102px;
    margin-bottom: 7px;
  }
}

.page-our-equipment-section .equipment-wrapper {
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media (max-width: 767px) {
  .page-our-equipment-section .equipment-wrapper {
    font-size: 14px;
    letter-spacing: 0;
    line-height: 1.2;
  }
}
.page-our-equipment-section .equipment-wrapper:not(:last-child) {
  margin-bottom: 65px;
}
@media (max-width: 767px) {
  .page-our-equipment-section .equipment-wrapper:not(:last-child) {
    margin-bottom: 37px;
  }
}
.page-our-equipment-section .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr th, .page-our-equipment-section .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr td {
  border-color: rgb(119, 173, 195);
  text-align: center;
}
@media (max-width: 1023px) {
  .page-our-equipment-section .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr th, .page-our-equipment-section .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr td {
    text-align: left;
  }
}
@media (max-width: 767px) {
  .page-our-equipment-section .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr th, .page-our-equipment-section .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr td {
    padding: 10px 5px;
  }
}
.page-our-equipment-section .wp-block-flexible-table-block-table.wp-block-flexible-table-block-table > table tr th {
  font-weight: 400;
  background-color: rgb(235, 243, 246);
}

.mv-main-section.recruit {
  position: relative;
  height: 650px;
  padding-top: 196px;
  padding-bottom: 87px;
  background-color: rgb(1, 90, 145);
}
@media (max-width: 1240px) {
  .mv-main-section.recruit {
    padding-top: 156px;
  }
}
@media (max-width: 767px) {
  .mv-main-section.recruit {
    height: 520px;
    padding-top: 250px;
  }
}
.mv-main-section.recruit::before {
  position: absolute;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  clip-path: polygon(0 0, 100% 0, 100% 385px, 84.5% 100%, 0 330px);
}
@media (max-width: 767px) {
  .mv-main-section.recruit::before {
    clip-path: polygon(0 0, 100% 0, 100% 82%, 80.5% 100%, 0 84.5%);
  }
}
.mv-main-section.recruit.about::before {
  background-image: url("../../images/recruit-mv/about.jpg");
}
@media (max-width: 1023px) {
  .mv-main-section.recruit.about::before {
    background-position: 80%;
  }
}
@media (max-width: 767px) {
  .mv-main-section.recruit.about::before {
    background-image: url("../../images/recruit-mv/about-sp.jpg");
    background-position: center top;
  }
}
@media (max-width: 767px) {
  .mv-main-section.recruit.about .business-circle-bg {
    bottom: auto;
    top: -150px;
    right: auto;
    left: 0;
    -webkit-transform: translateX(-38px);
            transform: translateX(-38px);
  }
}
.mv-main-section.recruit.works::before {
  background-position: right top;
  background-image: url("../../images/recruit-mv/works.jpg");
}
@media (max-width: 767px) {
  .mv-main-section.recruit.works::before {
    background-position: 83% top;
  }
}
@media (max-width: 767px) {
  .mv-main-section.recruit.works .business-circle-bg {
    bottom: -88px;
    right: 24%;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}
.mv-main-section.recruit.people::before {
  background-image: url("../../images/recruit-mv/people.jpg");
}
@media (max-width: 767px) {
  .mv-main-section.recruit.people::before {
    background-image: url("../../images/recruit-mv/people-sp.jpg");
  }
}
.mv-main-section.recruit.system::before {
  background-image: url("../../images/recruit-mv/system.jpg");
}
@media (max-width: 767px) {
  .mv-main-section.recruit.system::before {
    background-image: url("../../images/recruit-mv/system-sp.jpg");
  }
}
.mv-main-section.recruit .contents-wrapper {
  position: relative;
  height: 100%;
}
.mv-main-section.recruit .business-circle-bg {
  position: absolute;
  right: 0;
  -webkit-transform: translateX(35px);
          transform: translateX(35px);
  bottom: 0;
  width: 200px;
}
@media (max-width: 767px) {
  .mv-main-section.recruit .business-circle-bg {
    width: 100px;
  }
}
.mv-main-section.recruit .top-recruit-item {
  top: -54px;
  right: -42px;
  max-width: 713px;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
@media (max-width: 767px) {
  .mv-main-section.recruit .top-recruit-item {
    width: 176%;
    top: -187px;
    right: -63px;
  }
}
.mv-main-section.recruit .mv-recruit-inner {
  position: relative;
  z-index: 2;
}
.mv-main-section.recruit .mv-title {
  margin-bottom: 23px;
}
.mv-main-section.recruit .mv-page-link {
  gap: 33px;
}
@media (max-width: 767px) {
  .mv-main-section.recruit .mv-page-link {
    gap: 10px 15px;
  }
}
.mv-main-section.recruit .mv-page-link li {
  width: auto;
  min-width: 160px;
}
@media (max-width: 767px) {
  .mv-main-section.recruit .mv-page-link li {
    min-width: 100px;
    width: calc((100% - 15px) / 2);
  }
}
.mv-main-section.recruit .mv-page-link a {
  gap: 10px;
}
@media (max-width: 767px) {
  .mv-main-section.recruit .mv-page-link a {
    gap: 3px;
  }
}
@media (max-width: 767px) {
  .mv-main-section.recruit .mv-page-link span {
    width: calc(100% - 10px - 3px);
  }
}

.recruit-mv-next {
  padding-top: 40px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(1, 90, 145)), color-stop(30%, rgb(0, 89, 145)), color-stop(65%, rgb(0, 147, 160)), to(rgb(0, 147, 160)));
  background: linear-gradient(to bottom, rgb(1, 90, 145) 0%, rgb(0, 89, 145) 30%, rgb(0, 147, 160) 65%, rgb(0, 147, 160) 100%);
  color: rgb(255, 255, 255);
}

.recruit-about-section {
  padding-bottom: 170px;
}
@media (max-width: 767px) {
  .recruit-about-section {
    padding-bottom: 162px;
  }
}
.recruit-about-section .en-image-title {
  margin-bottom: 70px;
}
@media (max-width: 767px) {
  .recruit-about-section .en-image-title {
    margin-bottom: 34px;
  }
}

.recruit-about-wrapper {
  margin-bottom: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 20px;
}
@media (max-width: 767px) {
  .recruit-about-wrapper {
    margin-bottom: 45px;
  }
}

.recruit-about-box {
  max-width: 380px;
  width: calc((100% - 40px) / 3);
  background-color: rgb(255, 255, 255);
  color: rgb(35, 89, 137);
}
@media (max-width: 1023px) {
  .recruit-about-box {
    width: 100%;
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
@media (max-width: 1023px) {
  .recruit-about-box img {
    width: 45%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
@media (max-width: 767px) {
  .recruit-about-box img {
    width: 100%;
  }
}
.recruit-about-box .text-box {
  padding: 15px 30px 25px;
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media (max-width: 1030px) {
  .recruit-about-box .text-box {
    padding: 15px 20px;
  }
}
@media (max-width: 1023px) {
  .recruit-about-box .text-box {
    width: 55%;
    min-height: 250px;
  }
}
@media (max-width: 767px) {
  .recruit-about-box .text-box {
    width: 100%;
    min-height: auto;
    padding: 18px 30px 26px;
  }
}
.recruit-about-box .title-font32 {
  margin-bottom: 6px;
  text-align: center;
}

.recruit-number-section {
  padding-top: 130px;
  background-color: rgb(49, 114, 180);
  color: rgb(255, 255, 255);
}
@media (max-width: 767px) {
  .recruit-number-section {
    padding-top: 150px;
  }
}
.recruit-number-section .title-font48 {
  position: relative;
  z-index: 3;
  margin-bottom: 60px;
  text-align: center;
}
@media (max-width: 767px) {
  .recruit-number-section .title-font48 {
    margin-bottom: 29px;
  }
}
.recruit-number-section .contents-wrapper {
  position: relative;
  z-index: 2;
}
.recruit-number-section .recruit-about-item {
  position: absolute;
  top: -130px;
  left: 0;
  width: 43%;
  max-width: 493px;
  -webkit-transform: translate(-43px, -39%);
          transform: translate(-43px, -39%);
}
@media (max-width: 767px) {
  .recruit-number-section .recruit-about-item {
    max-width: 400px;
    width: 120%;
    top: -150px;
    -webkit-transform: translate(-57px, -53%);
            transform: translate(-57px, -53%);
  }
}

.recruit-number-wrapper {
  position: relative;
  z-index: 2;
}
@media (max-width: 1023px) {
  .recruit-number-wrapper {
    max-width: 500px;
    margin: auto;
  }
}
.recruit-number-wrapper::before, .recruit-number-wrapper::after {
  position: absolute;
  content: "";
  aspect-ratio: 1/1;
  display: block;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  z-index: -1;
  background-image: url("../../images/business-circle-bg.png");
}
.recruit-number-wrapper::before {
  top: 0;
  right: 0;
  -webkit-transform: translate(50%, -60%);
          transform: translate(50%, -60%);
  width: 160px;
}
@media (max-width: 767px) {
  .recruit-number-wrapper::before {
    width: 80px;
    -webkit-transform: translate(50%, -46%);
            transform: translate(50%, -46%);
  }
}
.recruit-number-wrapper::after {
  width: 255px;
  bottom: 58px;
  left: 0;
  -webkit-transform: translateX(-54%);
          transform: translateX(-54%);
}
@media (max-width: 767px) {
  .recruit-number-wrapper::after {
    width: 150px;
    bottom: 0;
    -webkit-transform: translate(-29%, 25%);
            transform: translate(-29%, 25%);
  }
}
.recruit-number-wrapper .business-circle-bg {
  position: absolute;
  left: -50px;
  width: 160px;
}

.recruit-number-box {
  padding: 0px 35px 35px;
  background-color: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(30px);
  font-family: YakuHanMP, "Zen Old Mincho", serif;
}
@media (max-width: 767px) {
  .recruit-number-box {
    padding: 13px 19px 26px;
  }
}
.recruit-number-box:not(:last-child) {
  margin-bottom: 35px;
}
@media (max-width: 767px) {
  .recruit-number-box:not(:last-child) {
    margin-bottom: 15px;
  }
}
.recruit-number-box.people {
  padding: 29px 35px 35px;
}
@media (max-width: 767px) {
  .recruit-number-box.people {
    padding: 15px 19px 35px;
  }
}
.recruit-number-box.people .border-title {
  margin-bottom: 0;
}
.recruit-number-box.people .number-item-wrapper {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 767px) {
  .recruit-number-box.people .number-item-wrapper {
    gap: 22px;
  }
}
.recruit-number-box .border-title {
  margin-bottom: 30px;
}
@media (max-width: 1089px) {
  .recruit-number-box .border-title {
    font-size: 75px;
  }
}
@media (max-width: 1023px) {
  .recruit-number-box .border-title {
    font-size: 60px;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .recruit-number-box .border-title {
    font-size: 40px;
    margin-bottom: 20px;
  }
}
.recruit-number-box .number-item-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 15px;
}
@media (max-width: 1023px) {
  .recruit-number-box .number-item-wrapper {
    position: relative;
    gap: 60px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media (max-width: 767px) {
  .recruit-number-box .number-item-wrapper {
    gap: 55px;
  }
}
.recruit-number-box .number-item {
  max-width: 350px;
  width: calc((100% - 30px) / 3);
  font-size: 28px;
  font-weight: 500;
  line-height: 0.95;
}
@media (max-width: 1220px) {
  .recruit-number-box .number-item {
    font-size: 24px;
  }
}
@media (max-width: 1089px) {
  .recruit-number-box .number-item {
    font-size: 23px;
  }
}
@media (max-width: 1023px) {
  .recruit-number-box .number-item {
    width: 100%;
  }
}
.recruit-number-box .number-item.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
.recruit-number-box .number-item img {
  margin: 0;
}
.recruit-number-box .number-item.absolute {
  position: relative;
}
.recruit-number-box .number-item.absolute img {
  position: absolute;
  right: 0;
}
.recruit-number-box .font-normal {
  font-size: 37px;
}
@media (max-width: 1220px) {
  .recruit-number-box .font-normal {
    font-size: 32px;
  }
}
@media (max-width: 1089px) {
  .recruit-number-box .font-normal {
    font-size: 28px;
  }
}
@media (max-width: 767px) {
  .recruit-number-box .font-normal {
    font-size: 31px;
  }
}
.recruit-number-box .font-big {
  font-size: 89px;
}
@media (max-width: 1140px) {
  .recruit-number-box .font-big {
    font-size: 79px;
  }
}
@media (max-width: 1089px) {
  .recruit-number-box .font-big {
    font-size: 75px;
  }
}
.recruit-number-box .company1 img {
  width: 32%;
}
.recruit-number-box .company2 .font-big {
  letter-spacing: -4.487px;
  margin-right: 9px;
}
.recruit-number-box .company2 img {
  bottom: 1.5em;
  width: 45%;
}
.recruit-number-box .company3 {
  position: relative;
}
@media (max-width: 767px) {
  .recruit-number-box .company3 {
    margin-top: 23px;
  }
}
.recruit-number-box .company3 img {
  position: relative;
  z-index: 2;
  width: 31%;
}
.recruit-number-box .company3 .text {
  position: relative;
}
.recruit-number-box .company3 .float-text {
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: translateY(calc(-100% - 10px));
          transform: translateY(calc(-100% - 10px));
}
.recruit-number-box .company3 .after-text {
  display: block;
  margin-top: 4px;
  letter-spacing: 0;
}
.recruit-number-box .company3 .circle {
  position: absolute;
  right: 15%;
  top: -34px;
  width: 86px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  color: rgb(255, 255, 255);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: -webkit-gradient(linear, left top, left bottom, from(#DAA44D), to(#EE7410));
  background: linear-gradient(180deg, #DAA44D 0%, #EE7410 100%);
}
@media (max-width: 767px) {
  .recruit-number-box .company3 .circle {
    top: -30px;
    width: 72px;
    font-size: 21px;
  }
}
@media (max-width: 767px) {
  .recruit-number-box .work1.absolute {
    margin-top: 27px;
  }
}
.recruit-number-box .work1.absolute img {
  top: -33px;
  right: 2px;
  width: 27%;
}
@media (max-width: 767px) {
  .recruit-number-box .work1.absolute img {
    top: -26px;
  }
}
.recruit-number-box .work2 img {
  width: 37%;
  bottom: 13px;
}
@media (max-width: 767px) {
  .recruit-number-box .work2 img {
    bottom: 4px;
  }
}
.recruit-number-box .work2 .font-big {
  letter-spacing: -4.487px;
}
.recruit-number-box .work3 .font-big {
  letter-spacing: -4.487px;
}
.recruit-number-box .work3 img {
  -webkit-transform: translateY(-31%);
          transform: translateY(-31%);
  width: 30%;
  margin-right: 10px;
  -ms-flex-item-align: start;
      align-self: flex-start;
}
.recruit-number-box .number-people-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 30px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 64%;
}
@media (max-width: 1140px) {
  .recruit-number-box .number-people-contents {
    width: 60%;
  }
}
@media (max-width: 1023px) {
  .recruit-number-box .number-people-contents {
    width: 100%;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
  }
}
@media (max-width: 767px) {
  .recruit-number-box .number-people-contents {
    gap: 20px;
  }
}
.recruit-number-box .number-people-contents .number-item {
  width: auto;
}
.recruit-number-box .number-people-contents img {
  margin: 0;
  width: 123px;
}
@media (max-width: 1140px) {
  .recruit-number-box .number-people-contents img {
    width: 90px;
  }
}
@media (max-width: 1023px) {
  .recruit-number-box .number-people-contents img {
    position: absolute;
    top: 0;
    width: 140px;
    right: 0;
  }
}
@media (max-width: 767px) {
  .recruit-number-box .number-people-contents img {
    width: 104px;
    top: 70px;
    right: 7px;
  }
}
.recruit-number-box .number-people-contents .font-big {
  letter-spacing: -4.487px;
}
.recruit-number-box .number-people-contents .number-item:last-child {
  margin-inline: 11px;
}
@media (max-width: 1023px) {
  .recruit-number-box .number-people-contents .number-item:last-child {
    margin: 0;
  }
}

.recruit-what-section {
  padding-bottom: 175px;
}
@media (max-width: 767px) {
  .recruit-what-section {
    padding-bottom: 78px;
  }
}
.recruit-what-section .en-image-title {
  margin-bottom: 44px;
}
@media (max-width: 767px) {
  .recruit-what-section .en-image-title {
    margin-bottom: 24px;
  }
}

.recruit-what-wrapper {
  margin-bottom: 68px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 20px;
}
@media (max-width: 1023px) {
  .recruit-what-wrapper {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media (max-width: 767px) {
  .recruit-what-wrapper {
    gap: 1px;
    margin-bottom: 42px;
  }
}
.recruit-what-wrapper .title-font48 {
  margin-bottom: 23px;
}
@media (max-width: 767px) {
  .recruit-what-wrapper .title-font48 {
    margin-bottom: 21px;
  }
}
.recruit-what-wrapper .text-box {
  width: 52%;
  max-width: 650px;
}
@media (max-width: 1023px) {
  .recruit-what-wrapper .text-box {
    width: 100%;
  }
}
.recruit-what-wrapper .text-box p:not(:last-child) {
  margin-bottom: 2em;
}
@media (max-width: 767px) {
  .recruit-what-wrapper .text-box p:not(:last-child) {
    margin-bottom: 1.8em;
  }
}
.recruit-what-wrapper .bold-text {
  display: block;
  font-weight: 700;
  font-size: 20px;
}
.recruit-what-wrapper .image-box {
  padding-top: 30px;
  width: calc(48% - 20px);
  max-width: 550px;
}
@media (max-width: 1023px) {
  .recruit-what-wrapper .image-box {
    width: 100%;
  }
}

.recruit-what-flow-list {
  display: -ms-grid;
  display: grid;
  gap: 26px;
  -ms-grid-columns: 1fr 26px 1fr 26px 1fr 26px 1fr 26px 1fr 26px 1fr;
  grid-template-columns: repeat(6, 1fr);
}
@media (max-width: 1023px) {
  .recruit-what-flow-list {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 767px) {
  .recruit-what-flow-list {
    gap: 25px;
    -ms-grid-columns: 100%;
    grid-template-columns: 100%;
  }
}
.recruit-what-flow-list li {
  background-color: rgb(255, 255, 255);
  color: rgb(35, 89, 137);
}
@media (max-width: 767px) {
  .recruit-what-flow-list li {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 120px 1fr;
    grid-template-columns: 120px 1fr;
  }
}
.recruit-what-flow-list li:not(:last-child) {
  position: relative;
}
.recruit-what-flow-list li:not(:last-child)::after {
  position: absolute;
  right: -13px;
  top: 50%;
  -webkit-transform: translate(50%, -50%);
          transform: translate(50%, -50%);
  content: "";
  display: block;
  width: 15px;
  aspect-ratio: 15/40;
  background-color: rgb(49, 114, 180);
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
@media (max-width: 767px) {
  .recruit-what-flow-list li:not(:last-child)::after {
    right: 50%;
    top: auto;
    bottom: -13px;
    -webkit-transform: translate(50%, 50%);
            transform: translate(50%, 50%);
    width: 40px;
    aspect-ratio: 40/15;
    clip-path: polygon(0 0, 100% 0, 50% 100%);
  }
}
.recruit-what-flow-list .text-box {
  text-align: center;
  padding: 5px;
  line-height: 1.6;
  font-size: 20px;
  min-height: 69px;
  -ms-flex-line-pack: center;
      align-content: center;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
}
@media (max-width: 767px) {
  .recruit-what-flow-list .text-box {
    text-align: left;
    padding-inline: 16px;
    min-height: 82px;
  }
}

.recruit-what-bg-section {
  padding: 80px 0;
}
@media (max-width: 767px) {
  .recruit-what-bg-section {
    padding: 69px 0 80px;
  }
}

.recruit-what-bg-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 30px;
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
}
@media (max-width: 1023px) {
  .recruit-what-bg-wrapper {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.recruit-what-bg-wrapper .text-box {
  width: calc(55% - 30px);
  max-width: 600px;
  text-align: left;
}
@media (max-width: 1023px) {
  .recruit-what-bg-wrapper .text-box {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .recruit-what-bg-wrapper .text-box span {
    display: block;
  }
  .recruit-what-bg-wrapper .text-box span:not(:last-child) {
    margin-bottom: 2rem;
  }
}
.recruit-what-bg-wrapper .title-font32 {
  margin-bottom: 22px;
}
@media (max-width: 767px) {
  .recruit-what-bg-wrapper .title-font32 {
    margin-bottom: 19px;
  }
}
.recruit-what-bg-wrapper .image-box {
  width: 45%;
  max-width: 500px;
}
@media (max-width: 1023px) {
  .recruit-what-bg-wrapper .image-box {
    width: 100%;
  }
}
.recruit-what-bg-wrapper .image-box img {
  width: 68%;
  margin: 0;
}
.recruit-what-bg-wrapper .image-box img:last-child {
  margin-top: -30px;
  margin-left: auto;
}
@media (max-width: 767px) {
  .recruit-what-bg-wrapper .image-box img:last-child {
    margin-top: -20px;
  }
}

.recruit-feature-section.page {
  padding: 165px 0;
}
@media (max-width: 767px) {
  .recruit-feature-section.page {
    padding: 80px 0 87px;
  }
}
.recruit-feature-section .en-image-title {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .recruit-feature-section .en-image-title {
    margin-bottom: 20px;
  }
}

.recruit-feature-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 20px;
  max-width: calc(100% - 44px);
  margin: auto;
}
@media (max-width: 1023px) {
  .recruit-feature-wrapper {
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .recruit-feature-wrapper {
    gap: 31px;
  }
}
.recruit-feature-wrapper .text-box {
  width: 55%;
  max-width: 610px;
}
@media (max-width: 1023px) {
  .recruit-feature-wrapper .text-box {
    width: 100%;
  }
}
.recruit-feature-wrapper .image-box {
  width: calc(45% - 20px);
  max-width: 512px;
}
@media (max-width: 1023px) {
  .recruit-feature-wrapper .image-box {
    width: 100%;
    margin: auto;
  }
}

.recruit-ceo-section {
  padding-bottom: 225px;
}
@media (max-width: 767px) {
  .recruit-ceo-section {
    padding-bottom: 190px;
  }
}
.recruit-ceo-section .en-image-title {
  margin-bottom: 50px;
}
@media (max-width: 767px) {
  .recruit-ceo-section .en-image-title {
    margin-bottom: 12px;
  }
}

.recruit-ceo-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 30px;
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
}
.recruit-ceo-wrapper .image-box {
  width: 40%;
  margin: 20px auto 0;
  max-width: 380px;
}
@media (max-width: 1140px) {
  .recruit-ceo-wrapper .image-box {
    width: calc(40% - 30px);
  }
}
@media (max-width: 1023px) {
  .recruit-ceo-wrapper .image-box {
    width: 100%;
  }
}
.recruit-ceo-wrapper .text-box {
  width: calc(60% - 30px);
  max-width: 720px;
}
@media (max-width: 1140px) {
  .recruit-ceo-wrapper .text-box {
    width: 60%;
  }
}
@media (max-width: 1023px) {
  .recruit-ceo-wrapper .text-box {
    width: 100%;
    max-width: 100%;
  }
}
.recruit-ceo-wrapper .text-inner:not(:last-child) {
  margin-bottom: 16px;
}
.recruit-ceo-wrapper .text-inner p:not(:last-child) {
  margin-bottom: 31px;
}
.recruit-ceo-wrapper .title-font48 {
  margin-bottom: 18px;
}
.recruit-ceo-wrapper .name {
  font-size: 24px;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
  margin-top: 22px;
}
@media (max-width: 767px) {
  .recruit-ceo-wrapper .name {
    margin-top: 20px;
    font-size: 20px;
  }
}

.from-recruit-wrapper {
  margin-top: 65px;
  position: relative;
}
@media (max-width: 767px) {
  .from-recruit-wrapper {
    margin-top: 225px;
  }
}
.from-recruit-wrapper .top-recruit-image {
  position: absolute;
  top: 0;
  right: 0;
  -webkit-transform: translate(9%, -59%);
          transform: translate(9%, -59%);
  width: 75%;
  max-width: 744px;
}
@media (max-width: 1023px) {
  .from-recruit-wrapper .top-recruit-image {
    -webkit-transform: translate(19%, -59%);
            transform: translate(19%, -59%);
  }
}
@media (max-width: 767px) {
  .from-recruit-wrapper .top-recruit-image {
    width: 127%;
    -webkit-transform: translate(28%, -55%);
            transform: translate(28%, -55%);
  }
}

.from-recruit-box {
  padding: 42px 74px;
  background: rgba(255, 255, 255, 0.05);
  backdrop-filter: blur(15px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 30px 50px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 767px) {
  .from-recruit-box {
    padding: 20px;
    gap: 20px;
  }
}
.from-recruit-box .en-image-title {
  max-width: 412px;
  margin-bottom: 0;
}
.from-recruit-box .en-image-title img {
  margin-bottom: 25px;
  height: auto;
  width: 100%;
}
@media (max-width: 767px) {
  .from-recruit-box .en-image-title img {
    margin-bottom: 10px;
  }
}
.from-recruit-box .text-box {
  width: calc(100% - 412px - 50px);
}
@media (max-width: 1140px) {
  .from-recruit-box .text-box {
    width: 100%;
  }
}
.from-recruit-box .text-box p:not(:last-child) {
  margin-bottom: 31px;
}

.recruit-survey-section {
  background-color: rgb(49, 114, 180);
  color: rgb(255, 255, 255);
  padding: 132px 0 170px;
}
@media (max-width: 767px) {
  .recruit-survey-section {
    padding-top: 67px;
    padding-bottom: 50px;
  }
}
.recruit-survey-section .title-font48 {
  margin-bottom: 30px;
  text-align: center;
}
@media (max-width: 767px) {
  .recruit-survey-section .title-font48 {
    margin-bottom: 13px;
  }
}

.recruit-survey-wrapper:not(:last-child) {
  margin-bottom: 20px;
}
.recruit-survey-wrapper .border-title.main {
  margin-bottom: 27px;
}
@media (max-width: 1023px) {
  .recruit-survey-wrapper .border-title.main {
    font-size: 65px;
  }
}
@media (max-width: 767px) {
  .recruit-survey-wrapper .border-title.main {
    font-size: 40px;
    margin-bottom: 12px;
    line-height: 1.1;
  }
}

.survey-box-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 50px;
}
@media (max-width: 1255px) {
  .survey-box-wrapper {
    gap: 30px;
  }
}
@media (max-width: 767px) {
  .survey-box-wrapper {
    gap: 16px;
  }
}
@media (max-width: 1023px) {
  .survey-box-wrapper .inner-box {
    display: contents;
  }
}
.survey-box-wrapper .inner-box.left {
  width: calc((100% - 100px) / 3);
}
@media (max-width: 1255px) {
  .survey-box-wrapper .inner-box.left {
    width: calc((100% - 60px) / 3);
  }
}
.survey-box-wrapper .inner-box.left .recruit-survey-box:not(:last-child) {
  margin-bottom: 50px;
}
@media (max-width: 1255px) {
  .survey-box-wrapper .inner-box.left .recruit-survey-box:not(:last-child) {
    margin-bottom: 30px;
  }
}
@media (max-width: 1023px) {
  .survey-box-wrapper .inner-box.left .recruit-survey-box:not(:last-child) {
    margin-bottom: 0;
  }
}
.survey-box-wrapper .inner-box.right {
  width: calc((100% - 100px) / 3 * 2 + 50px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 20px 50px;
}
@media (max-width: 1255px) {
  .survey-box-wrapper .inner-box.right {
    gap: 20px 30px;
    width: calc((100% - 60px) / 3 * 2 + 30px);
  }
}
@media (max-width: 1023px) {
  .survey-box-wrapper .inner-box.right {
    display: contents;
  }
}
.survey-box-wrapper .inner-box.right > .recruit-survey-box {
  width: calc((100% - 50px) / 2);
}
@media (max-width: 1255px) {
  .survey-box-wrapper .inner-box.right > .recruit-survey-box {
    width: calc((100% - 30px) / 2);
  }
}
@media (max-width: 767px) {
  .survey-box-wrapper .inner-box.right > .recruit-survey-box {
    width: 100%;
  }
}
.survey-box-wrapper .right-inner {
  width: calc((100% - 50px) / 2);
}
@media (max-width: 1255px) {
  .survey-box-wrapper .right-inner {
    width: calc((100% - 30px) / 2);
  }
}
@media (max-width: 1023px) {
  .survey-box-wrapper .right-inner {
    display: contents;
  }
}
.survey-box-wrapper .right-inner .recruit-survey-box:not(:last-child) {
  margin-bottom: 50px;
}
@media (max-width: 1255px) {
  .survey-box-wrapper .right-inner .recruit-survey-box:not(:last-child) {
    margin-bottom: 30px;
  }
}
@media (max-width: 1023px) {
  .survey-box-wrapper .right-inner .recruit-survey-box:not(:last-child) {
    margin-bottom: 0;
  }
}
.survey-box-wrapper .border-title {
  width: 100%;
  text-transform: none;
}
@media (max-width: 1325px) {
  .survey-box-wrapper .border-title {
    font-size: 70px;
  }
}
@media (max-width: 1192px) {
  .survey-box-wrapper .border-title {
    font-size: 60px;
  }
}
@media (max-width: 1023px) {
  .survey-box-wrapper .border-title {
    font-size: 65px;
  }
}
@media (max-width: 767px) {
  .survey-box-wrapper .border-title {
    font-size: 40px;
    line-height: 1.1;
  }
}
@media (max-width: 1023px) {
  .survey-box-wrapper .one {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .survey-box-wrapper .two {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .survey-box-wrapper .three {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
  .survey-box-wrapper .four {
    -webkit-box-ordinal-group: 5;
        -ms-flex-order: 4;
            order: 4;
  }
  .survey-box-wrapper .five {
    -webkit-box-ordinal-group: 6;
        -ms-flex-order: 5;
            order: 5;
  }
  .survey-box-wrapper .six {
    -webkit-box-ordinal-group: 7;
        -ms-flex-order: 6;
            order: 6;
  }
  .survey-box-wrapper .seven {
    -webkit-box-ordinal-group: 8;
        -ms-flex-order: 7;
            order: 7;
  }
  .survey-box-wrapper .eight {
    -webkit-box-ordinal-group: 9;
        -ms-flex-order: 8;
            order: 8;
  }
  .survey-box-wrapper .nine {
    -webkit-box-ordinal-group: 10;
        -ms-flex-order: 9;
            order: 9;
  }
  .survey-box-wrapper .ten {
    -webkit-box-ordinal-group: 11;
        -ms-flex-order: 10;
            order: 10;
  }
}

.recruit-survey-box {
  -ms-flex-item-align: start;
      align-self: flex-start;
  padding: 30px 35px 33px;
  color: rgb(35, 89, 137);
  background-color: rgb(255, 255, 255);
}
@media (max-width: 1192px) {
  .recruit-survey-box {
    padding: 30px 20px 33px;
  }
}
@media (max-width: 1023px) {
  .recruit-survey-box {
    width: calc((100% - 30px) / 2);
  }
}
@media (max-width: 767px) {
  .recruit-survey-box {
    width: 100%;
    padding: 30px 30px 34px;
  }
}
.recruit-survey-box::before {
  content: "";
  display: block;
  width: 80px;
  aspect-ratio: 1/1;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  margin: 0 auto 15px;
}
.recruit-survey-box.boy::before {
  background-image: url("../../images/boy-icon.svg");
}
.recruit-survey-box.girl::before {
  background-image: url("../../images/girl-icon.svg");
}
.recruit-survey-box .survey-title {
  padding-inline: 5px;
  margin-bottom: 15px;
  position: relative;
  min-height: 78px;
  -ms-flex-line-pack: center;
      align-content: center;
  text-align: center;
}
@media (max-width: 1192px) {
  .recruit-survey-box .survey-title {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .recruit-survey-box .survey-title {
    min-height: 100%;
    margin-bottom: 22px;
  }
}
.recruit-survey-box .survey-title::before {
  position: absolute;
  top: -8px;
  left: -5px;
  content: "「";
}
.recruit-survey-box .survey-title::after {
  position: absolute;
  right: -5px;
  bottom: -8px;
  content: "」";
}
.recruit-survey-box p {
  line-height: 1.6;
  letter-spacing: 0.03em;
}
.recruit-survey-box .bold-text {
  font-weight: 700;
}

.recruit-work-environment-section {
  padding-bottom: 80px;
}
@media (max-width: 767px) {
  .recruit-work-environment-section {
    padding-bottom: 77px;
  }
}
.recruit-work-environment-section .contents-wrapper {
  position: relative;
  z-index: 2;
}
.recruit-work-environment-section .en-image-title {
  margin-bottom: 48px;
}
@media (max-width: 767px) {
  .recruit-work-environment-section .en-image-title {
    margin-bottom: 8px;
  }
}
@media (max-width: 1023px) {
  .recruit-work-environment-section .en-image-title img {
    height: 200px;
  }
}
@media (max-width: 767px) {
  .recruit-work-environment-section .en-image-title img {
    height: 150px;
  }
}
.recruit-work-environment-section .work-environment-item {
  position: absolute;
  width: 50%;
  max-width: 635px;
  bottom: 0;
  left: 0px;
  -webkit-transform: translateY(56%);
          transform: translateY(56%);
}

.recruit-work-environment-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-direction: row-reverse;
      flex-direction: row-reverse;
}
.recruit-work-environment-wrapper .image-box {
  padding-top: 30px;
  width: 43%;
  -webkit-transform: translateX(25px);
          transform: translateX(25px);
}
@media (max-width: 767px) {
  .recruit-work-environment-wrapper .image-box {
    width: 100%;
    margin-top: 0;
  }
  .recruit-work-environment-wrapper .image-box img {
    -webkit-transform: translateX(-25px);
            transform: translateX(-25px);
    width: 143%;
  }
}
.recruit-work-environment-wrapper .text-box {
  max-width: 650px;
  line-height: 1.6;
  letter-spacing: 0.03em;
  width: 57%;
}
@media (max-width: 767px) {
  .recruit-work-environment-wrapper .text-box {
    width: 100%;
    margin-top: 32px;
  }
}
.recruit-work-environment-wrapper p:not(:last-child) {
  margin-bottom: 28px;
}

.recruit-benefits-programs-section {
  padding: 160px 0 90px;
}
@media (max-width: 767px) {
  .recruit-benefits-programs-section {
    padding: 80px 0 90px;
  }
}
.recruit-benefits-programs-section .en-image-title {
  margin-bottom: 68px;
}
@media (max-width: 767px) {
  .recruit-benefits-programs-section .en-image-title {
    margin-bottom: 36px;
  }
}
@media (max-width: 1023px) {
  .recruit-benefits-programs-section .en-image-title img {
    height: 200px;
  }
}
@media (max-width: 767px) {
  .recruit-benefits-programs-section .en-image-title img {
    height: 150px;
  }
}
.recruit-benefits-programs-section .bg-grade-title {
  margin-bottom: 6px;
}
@media (max-width: 767px) {
  .recruit-benefits-programs-section .bg-grade-title {
    margin-bottom: 0px;
  }
}

.recruit-benefits-box:not(:last-child) {
  margin-bottom: 63px;
}
@media (max-width: 767px) {
  .recruit-benefits-box:not(:last-child) {
    margin-bottom: 38px;
  }
}

.benefits-contents-list {
  line-height: 1.6;
  left: 0.03em;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 0 30px;
}
.benefits-contents-list li {
  width: calc((100% - 30px) / 2);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  gap: 10px;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  padding: 14px 0;
  border-bottom: 1px solid rgb(119, 173, 195);
}
@media (max-width: 767px) {
  .benefits-contents-list li {
    width: 100%;
    padding: 14px 0;
  }
}
.benefits-contents-list li.full {
  width: 100%;
}
.benefits-contents-list li::before {
  content: "";
  display: block;
  width: 15px;
  margin-top: 5px;
  aspect-ratio: 1/1;
  background-color: rgb(0, 147, 160);
}
.benefits-contents-list li span {
  width: calc(100% - 10px - 15px);
}

.privacy-policy-wrapper {
  padding-bottom: 50px;
  color: rgb(255, 255, 255);
}
@media (max-width: 767px) {
  .privacy-policy-wrapper {
    padding-bottom: 5px;
  }
}
.privacy-policy-wrapper .bg-grade-title {
  margin-bottom: 5px;
}
@media (max-width: 767px) {
  .privacy-policy-wrapper .bg-grade-title {
    margin-bottom: 11px;
  }
}
@media (max-width: 767px) {
  .privacy-policy-wrapper .line-height200 {
    line-height: 1.6;
  }
}

.contact-section {
  background-color: rgb(49, 114, 180);
  padding-top: 130px;
}
@media (max-width: 767px) {
  .contact-section {
    padding-top: 63px;
    padding-bottom: 80px;
  }
}
.contact-section .title-font48 {
  color: rgb(255, 255, 255);
  margin-bottom: 60px;
}
@media (max-width: 767px) {
  .contact-section .title-font48 {
    margin-bottom: 30px;
    font-size: 32px;
    letter-spacing: 0.05em;
  }
}

.contact-tel-wrapper {
  margin-bottom: 30px;
  color: rgb(255, 255, 255);
}
@media (max-width: 767px) {
  .contact-tel-wrapper {
    margin-bottom: 35px;
  }
}
.contact-tel-wrapper .bg-grade-title {
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .contact-tel-wrapper .bg-grade-title {
    margin-bottom: 15px;
    padding: 2px 10px 2px;
  }
}
.contact-tel-wrapper .contact-page-tel-link a {
  color: rgb(255, 255, 255);
  font-size: 24px;
  font-family: YakuHanMP, "Zen Old Mincho", serif;
}
.contact-tel-wrapper .tel-time {
  letter-spacing: 0.03%;
}

.contact-form-wrapper .bg-grade-title {
  margin-bottom: 15px;
}
.contact-form-wrapper .form-text {
  margin-bottom: 15px;
  color: rgb(255, 255, 255);
  line-height: 1.6;
  letter-spacing: 0.03em;
}
.contact-form-wrapper .form-wrapper {
  background-color: rgb(255, 255, 255);
  padding: 50px;
}
@media (max-width: 767px) {
  .contact-form-wrapper .form-wrapper {
    padding: 30px 20px;
  }
}
.contact-form-wrapper .smf-item__col.smf-item__col--label {
  background-color: transparent;
  border: none;
  padding: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5px;
}
.contact-form-wrapper .smf-item__col.smf-item__col--label::before {
  content: "";
  display: block;
  width: 15px;
  aspect-ratio: 1/1;
  background-color: rgb(0, 147, 160);
  margin-right: 10px;
}

.smf-form--business .smf-item {
  border: none;
}

.wp-block-snow-monkey-forms-item.smf-item {
  border-bottom: 1px solid rgb(119, 173, 195);
  padding-bottom: 19px;
}
.wp-block-snow-monkey-forms-item.smf-item:not(:last-child) {
  margin-bottom: 19px;
}
.wp-block-snow-monkey-forms-item.smf-item.must .smf-item__col.smf-item__col--label::after {
  content: "必須";
  font-size: 12px;
  vertical-align: middle;
  color: rgb(255, 255, 255);
  padding: 0 10px;
  background-color: rgb(255, 0, 0);
  margin-left: 5px;
}

.smf-item__col.smf-item__col--label {
  width: 260px;
  max-width: 100%;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
@media (max-width: 1023px) {
  .smf-item__col.smf-item__col--label {
    width: 210px;
  }
}
@media (max-width: 1023px) {
  .smf-item__col.smf-item__col--label {
    margin-bottom: 7px;
  }
}

.smf-item__col.smf-item__col--controls {
  padding: 0;
  width: calc(100% - 260px);
}
@media (max-width: 1023px) {
  .smf-item__col.smf-item__col--controls {
    width: calc(100% - 210px);
  }
}
@media (max-width: 767px) {
  .smf-item__col.smf-item__col--controls {
    width: 100%;
  }
}
.smf-item__col.smf-item__col--controls input,
.smf-item__col.smf-item__col--controls textarea {
  display: block;
  width: calc(100% - 80px);
  padding: 16px 20px;
  letter-spacing: 0.03em;
  border-radius: 4px;
  background-color: rgb(235, 243, 246);
  border-color: rgb(235, 243, 246);
  outline: rgb(235, 243, 246);
  font-family: YakuHanJP_Narrow, "Zen Kaku Gothic New", sans-serif;
  line-height: 1.6;
}
@media (max-width: 1023px) {
  .smf-item__col.smf-item__col--controls input,
  .smf-item__col.smf-item__col--controls textarea {
    padding: 12px 20px;
    width: 100%;
  }
}
.smf-item__col.smf-item__col--controls input::-webkit-input-placeholder, .smf-item__col.smf-item__col--controls textarea::-webkit-input-placeholder {
  color: rgb(178, 194, 204);
}
.smf-item__col.smf-item__col--controls input::-moz-placeholder, .smf-item__col.smf-item__col--controls textarea::-moz-placeholder {
  color: rgb(178, 194, 204);
}
.smf-item__col.smf-item__col--controls input:-ms-input-placeholder, .smf-item__col.smf-item__col--controls textarea:-ms-input-placeholder {
  color: rgb(178, 194, 204);
}
.smf-item__col.smf-item__col--controls input::-ms-input-placeholder, .smf-item__col.smf-item__col--controls textarea::-ms-input-placeholder {
  color: rgb(178, 194, 204);
}
.smf-item__col.smf-item__col--controls input::placeholder,
.smf-item__col.smf-item__col--controls textarea::placeholder {
  color: rgb(178, 194, 204);
}
.smf-item__col.smf-item__col--controls textarea {
  height: 165px;
}

.smf-form--business + .smf-action {
  margin: 0 0 50px;
  padding-top: 4px;
  padding-bottom: 50px;
}
@media (max-width: 767px) {
  .smf-form--business + .smf-action {
    padding-bottom: 30px;
    margin-bottom: 0;
  }
}

.smf-action {
  background-color: rgb(255, 255, 255);
}
.smf-action .smf-button-control__control {
  position: relative;
  gap: 30px;
  width: 250px;
  margin: 0 auto;
  background-image: none;
  border: 1px solid rgb(49, 114, 180);
  cursor: pointer;
  outline: none;
  padding: 17px 25px 17px 20px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-color: rgb(49, 114, 180);
  color: rgb(255, 255, 255);
  font-size: 20px;
  font-family: YakuHanJP_Narrow, "Zen Kaku Gothic New", sans-serif;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
@media (max-width: 767px) {
  .smf-action .smf-button-control__control {
    width: calc(100% - 40px);
  }
}
.smf-action .smf-button-control__control::after {
  position: absolute;
  top: 50%;
  right: 20px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  content: "";
  display: block;
  width: 25px;
  aspect-ratio: 16/5;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: rgb(255, 255, 255);
  -webkit-mask-image: url("../../images/arrow.svg");
          mask-image: url("../../images/arrow.svg");
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.smf-action .smf-button-control__control[data-action=back] {
  background-color: rgb(255, 255, 255);
  color: rgb(35, 89, 137);
}
.smf-action .smf-button-control__control[data-action=back]::after {
  right: auto;
  left: 20px;
  -webkit-transform: translateY(-50%) scale(-1, 1);
          transform: translateY(-50%) scale(-1, 1);
  background-color: rgb(35, 89, 137);
}
.smf-action .smf-button-control__control[data-action=back]:hover {
  background-color: rgb(49, 114, 180);
  color: rgb(255, 255, 255);
}
.smf-action .smf-button-control__control[data-action=back]:hover::after {
  background-color: rgb(255, 255, 255);
}
.smf-action .smf-button-control__control[data-action=complete]::after {
  display: none;
}
.smf-action .smf-button-control__control[data-action=complete]:hover {
  background-color: rgb(255, 255, 255);
  color: rgb(49, 114, 180);
}
.smf-action .smf-button-control__control:hover {
  background-color: rgb(255, 255, 255);
  color: rgb(49, 114, 180);
}
.smf-action .smf-button-control__control:hover::after {
  background-color: rgb(49, 114, 180);
}

[data-screen=confirm] .smf-item__col.smf-item__col--label::after,
[data-screen=confirm] .form-text,
[data-screen=confirm] .wp-block-group.contact-tel-wrapper {
  display: none;
}
[data-screen=confirm] .bg-grade-title {
  position: relative;
  color: transparent;
}
[data-screen=confirm] .bg-grade-title::before {
  position: absolute;
  content: "フォーム内容確認";
  color: rgb(255, 255, 255);
}
@media (max-width: 767px) {
  [data-screen=confirm] .wp-block-snow-monkey-forms-item.smf-item {
    padding-bottom: 14px;
  }
  [data-screen=confirm] .wp-block-snow-monkey-forms-item.smf-item:not(:last-child) {
    margin-bottom: 16px;
  }
  [data-screen=confirm] .smf-action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding-bottom: 0;
  }
  [data-screen=confirm] .smf-action .smf-button-control + .smf-button-control {
    margin-left: 0;
  }
  [data-screen=confirm] .smf-button-control:nth-child(2) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin-top: -17px;
  }
}

.thanks-box {
  background-color: rgb(255, 255, 255);
  text-align: center;
  padding: 37px 30px 0;
}
@media (max-width: 767px) {
  .thanks-box {
    padding: 22px 20px 0;
  }
}
.thanks-box .title-font32 {
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .thanks-box .title-font32 {
    margin-bottom: 5px;
    font-size: 20px;
  }
}
.thanks-box .title-font32 + p {
  line-height: 1.6;
  letter-spacing: 0.03em;
}
@media (max-width: 1023px) {
  .thanks-box .title-font32 + p {
    text-align: left;
  }
}
@media (max-width: 767px) {
  .thanks-box .title-font32 + p br {
    display: none;
  }
}
.thanks-box .thanks-link a {
  position: relative;
  display: block;
  gap: 30px;
  width: 250px;
  margin: 42px auto 0;
  background-image: none;
  border: 1px solid rgb(49, 114, 180);
  cursor: pointer;
  outline: none;
  padding: 17px 20px 17px 25px;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-family: YakuHanJP_Narrow, "Zen Kaku Gothic New", sans-serif;
  background-color: rgb(255, 255, 255);
  color: rgb(35, 89, 137);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
@media (max-width: 767px) {
  .thanks-box .thanks-link a {
    width: 100%;
    margin-top: 24px;
    margin-inline: 0;
  }
}
.thanks-box .thanks-link a::after {
  position: absolute;
  top: 50%;
  content: "";
  display: block;
  width: 25px;
  aspect-ratio: 16/5;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-size: contain;
          mask-size: contain;
  background-color: rgb(255, 255, 255);
  -webkit-mask-image: url("../../images/arrow.svg");
          mask-image: url("../../images/arrow.svg");
  left: 20px;
  -webkit-transform: translateY(-50%) scale(-1, 1);
          transform: translateY(-50%) scale(-1, 1);
  background-color: rgb(35, 89, 137);
  -webkit-transition: 0.5s;
  transition: 0.5s;
}
.thanks-box .thanks-link a:hover {
  background-color: rgb(49, 114, 180);
  color: rgb(255, 255, 255);
}
.thanks-box .thanks-link a:hover::after {
  background-color: rgb(255, 255, 255);
}

[data-screen=systemerror] {
  color: rgb(255, 255, 255);
}
[data-screen=systemerror] .smf-action {
  background-color: transparent;
}

input,
textarea,
select {
  font-size: 16px !important;
}

.single-section {
  padding: 86px 0;
}
@media (max-width: 767px) {
  .single-section {
    padding: 27px 0 90px;
  }
}
.single-section .post-time {
  display: block;
  margin-bottom: 10px;
  line-height: 1.6;
  left: 0.03em;
}
.single-section .post-title {
  margin-bottom: 25px;
  padding-bottom: 19px;
  border-bottom: 1px solid rgb(119, 173, 195);
}
.single-section .main-contents {
  line-height: 1.6;
  letter-spacing: 0.03em;
}
.single-section .main-contents:not(:last-child) {
  margin-bottom: 45px;
}
.single-section .single-image {
  max-width: 650px;
  margin: 0 auto;
}
/*# sourceMappingURL=main.css.map */