body {
  --recruit-primary-gradient: linear-gradient(#3a6fd8 0%, #002774 100%);
  --recruit-secondary-gradient: linear-gradient(#1fa8aa 0%, #167e9f 100%);
  background-color: var(--color-white);
}

.btn-recruit-primary {
  display: flex;
  justify-content: center;
  position: relative;
  padding: 13px 70px;
  width: 100%;
  max-width: 336px;
  border-radius: 54px;
  text-decoration: none;
  font-size: clamp(1.8rem, 1.1161961367rem + 0.8915304606vw, 2.4rem);
}
@media (max-width: 767.98px) {
  .btn-recruit-primary {
    padding: 12px 16px;
    max-width: 240px;
  }
}
.btn-recruit-primary .icon-chevron {
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 0;
  margin: auto;
}
.btn-recruit-primary:is(.size-sm) {
  padding: 8px 10px;
  width: 170px;
  max-width: 100%;
  font-size: var(--text-sm);
}
@media (min-width: 768px) {
  .btn-recruit-primary:is(.size-sm) .icon-chevron {
    right: 16px;
    width: 24px;
    height: 24px;
  }
}
.btn-recruit-primary:is(.size-lg) {
  padding: 20px;
  width: 100%;
  max-width: 472px;
}
@media (min-width: 768px) {
  .btn-recruit-primary:is(.size-lg) {
    padding: 28px 20px;
  }
  .btn-recruit-primary:is(.size-lg) .icon-chevron {
    right: 28px;
    width: 56px;
    height: 56px;
    font-size: var(--text-3xs);
  }
}

.site-recruit-footer {
  overflow: hidden;
}
.site-recruit-footer .site-footer-logo {
  display: flex;
  flex-direction: column;
  gap: clamp(1.8rem, 0.2044576523rem + 2.0802377415vw, 3.2rem);
  align-items: center;
}
@media (min-width: 1024px) {
  .site-recruit-footer .site-footer-logo {
    flex-direction: initial;
    margin-right: 94px;
  }
}

#drawer-menu .drawer-menu-list li:first-child a {
  border-top: 1px solid var(--color-gray-300);
}

.drawer-menu-btn-wrapper {
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  padding: 20px;
}
@media (max-width: 767.98px) {
  .drawer-menu-btn-wrapper {
    gap: 12px;
  }
}

.site-footer-logo-recruit {
  color: var(--color-primary-lighter2);
  font-family: var(--font-alphanumeric);
  font-size: var(--text-2xl);
  line-height: var(--leading-none);
}

.site-recruit-footer-cta {
  padding-bottom: clamp(4rem, -3.5218424963rem + 9.8068350669vw, 10.6rem);
  background: url(../img/recruit/cta_bg.png) no-repeat center center/cover;
}

.site-recruit-footer-cta-txt {
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  white-space: nowrap;
  color: rgb(var(--color-white-rgb)/0.19);
  font-family: var(--font-alphanumeric);
  font-size: clamp(12rem, 6.4156017831rem + 7.2808320951vw, 16.9rem);
  line-height: var(--leading-none);
  pointer-events: none;
}
@media (max-width: 767.98px) {
  .site-recruit-footer-cta-txt {
    font-size: clamp(4rem, 0.1734693878rem + 10.2040816327vw, 8rem);
  }
}

.site-recruit-footer-cta-title {
  margin-block: 8px 30px;
  text-align: center;
  letter-spacing: var(--tracking-wider);
  color: var(--color-white);
  font-size: clamp(4.8rem, 1.8368499257rem + 3.8632986627vw, 7.4rem);
  font-weight: var(--font-bold);
  line-height: var(--leading-none);
}
@media (max-width: 767.98px) {
  .site-recruit-footer-cta-title {
    margin-block: 12px 20px;
    font-size: var(--text-2xl);
  }
}

.site-recruit-footer-cta-entry {
  position: relative;
  text-align: center;
  letter-spacing: var(--tracking-wider);
  color: var(--color-white);
  font-family: var(--font-alphanumeric);
  font-size: clamp(1.8rem, 0.8882615156rem + 1.1887072808vw, 2.6rem);
  line-height: var(--leading-none);
}
.site-recruit-footer-cta-entry::after {
  display: block;
  content: "";
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 1px;
  background-color: #e3e3e3;
  margin-inline: calc(50% - 50cqw);
}
@media (max-width: 767.98px) {
  .site-recruit-footer-cta-entry::after:is(.disable-mobile) {
    margin-inline: 0;
  }
}

.site-recruit-footer-btn-wrapper {
  gap: 20px;
  margin-top: 40px;
}
@media (max-width: 767.98px) {
  .site-recruit-footer-btn-wrapper {
    flex-direction: column;
  }
}

.site-recruit-header {
  position: fixed;
  right: 0;
  left: 0;
  background-color: rgb(var(--color-white-rgb)/0.7);
}
.site-recruit-header .site-header-secondary {
  align-items: center;
}

.site-recruit-header-btn-wrapper {
  flex-wrap: wrap;
  gap: 6px;
}
@media (max-width: 1439.98px) {
  .site-recruit-header-btn-wrapper {
    justify-content: flex-end;
  }
  .site-recruit-header-btn-wrapper .btn-recruit-primary:is(.size-sm) {
    padding-block: 0;
  }
}

.site-header-drawer-btn {
  margin-left: 26px;
}

.drawer-btn-hamburger {
  width: 26px;
  height: 20px;
}
.drawer-btn-hamburger .drawer-btn-hamburger-border {
  background-color: var(--color-primary-lighter2);
}

.section-fv-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  height: 750px;
}
@media (max-width: 767.98px) {
  .section-fv-inner {
    grid-template-columns: 1fr;
    height: 480px;
  }
}
.section-fv-inner .section-fv-left {
  background: url(../img/recruit/fv_img_01.jpg) no-repeat center center/cover;
}
@media (max-width: 767.98px) {
  .section-fv-inner .section-fv-left {
    display: none;
  }
}
.section-fv-inner .section-fv-right {
  display: flex;
  justify-content: center;
  padding-top: calc(var(--header-height) + 64px);
  background: url(../img/recruit/fv_img_02.png) no-repeat center center/cover;
}
.section-fv-inner .section-fv-text {
  display: flex;
  flex-direction: column;
  gap: 20px;
  color: var(--color-white);
  writing-mode: vertical-rl;
}
.section-fv-inner .section-fv-title {
  font-size: clamp(3.2rem, -0.1050520059rem + 4.309063893vw, 6.1rem);
  line-height: var(--leading-sm);
}
.section-fv-inner .section-fv-en {
  position: relative;
  letter-spacing: var(--tracking-wider);
  font-family: var(--font-alphanumeric);
  font-size: clamp(1.8rem, 0.8882615156rem + 1.1887072808vw, 2.6rem);
}
.section-fv-inner .section-fv-en::after {
  display: block;
  content: "";
  position: absolute;
  top: -64px;
  bottom: 0;
  left: 0;
  width: 1px;
  height: calc(100% + 64px);
  background-color: var(--color-white);
}

#entry-banner {
  position: fixed;
  z-index: 999;
  right: 20px;
  bottom: 20px;
}
#entry-banner .close-btn {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background-color: var(--color-white);
}
#entry-banner .close-btn:hover {
  opacity: 0.7;
  cursor: pointer;
}
#entry-banner .close-btn span {
  display: block;
  position: absolute;
  inset: 0;
  margin: auto;
  width: 8px;
  height: 8px;
  rotate: 45deg;
}
#entry-banner .close-btn span::before, #entry-banner .close-btn span::after {
  display: block;
  content: "";
  position: absolute;
  inset: 0;
  margin: auto;
  width: 100%;
  height: 2px;
  background-color: var(--color-recruit-primary);
}
#entry-banner .close-btn span::after {
  rotate: 90deg;
}

.section-news {
  padding-block: 12px;
  color: var(--color-white);
  background-color: var(--color-primary);
}
.section-news .news-nav {
  display: flex;
  gap: 8px;
  align-items: center;
  position: relative;
  z-index: 2;
  margin-left: 16px;
}
@media (max-width: 767.98px) {
  .section-news .news-nav {
    margin-left: 8px;
  }
}
.section-news .news-nav .news-button-prev,
.section-news .news-nav .news-button-next {
  font-size: var(--text-3xs);
  line-height: var(--leading-none);
}
.section-news .news-swiper {
  flex: 1;
}
.section-news .news-list-item-date {
  color: var(--color-white);
}
.section-news .news-list-item-date span {
  text-box: trim-end cap alphabetic;
}
.section-news .news-item {
  display: flex;
  gap: 16px;
  align-items: center;
}
@media (max-width: 767.98px) {
  .section-news .news-item {
    gap: 8px;
  }
}
.section-news .news-item .entry-title {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  line-height: var(--leading-none);
}

.section-news-inner {
  display: flex;
  align-items: center;
}

.section-news-title {
  display: flex;
  align-items: center;
  font-family: var(--font-alphanumeric);
  font-size: clamp(1.8rem, 1.2301634473rem + 0.7429420505vw, 2.3rem);
  line-height: var(--leading-none);
}
.section-news-title::after {
  display: block;
  content: "";
  width: 1px;
  height: 26px;
  margin-inline: 16px;
  background-color: var(--color-white);
}
@media (max-width: 767.98px) {
  .section-news-title::after {
    margin-inline: 8px;
  }
}

body.page-recruit .section-intro {
  overflow: hidden;
  padding-bottom: clamp(6.4rem, -2.0335809807rem + 10.9955423477vw, 13.8rem);
}
body.page-recruit .section-intro-inner {
  position: relative;
}
body.page-recruit .section-intro-inner-images {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  position: absolute;
  inset: 0;
}
body.page-recruit .section-intro-inner-images .section-intro-inner-image {
  background: url(../img/recruit/intro_img_01.png) no-repeat center center/cover;
}
body.page-recruit .section-intro-inner-images .section-intro-inner-image:nth-child(2) {
  background-image: url(../img/recruit/intro_img_02.png);
}
body.page-recruit .section-intro-inner-images::before {
  display: block;
  content: "";
  opacity: 0.9;
  position: absolute;
  z-index: 2;
  inset: 0;
  background: linear-gradient(#3467cb 0%, #70a0f2 100%);
}
body.page-recruit .section-intro-content {
  position: relative;
  z-index: 3;
  padding-block: clamp(6.4rem, 0.0178306092rem + 8.3209509658vw, 12rem) clamp(28rem, 19.4524517088rem + 11.1441307578vw, 35.5rem);
}
@media (max-width: 767.98px) {
  body.page-recruit .section-intro-content {
    padding-bottom: calc(80px + 10%);
  }
}
body.page-recruit .section-intro-title {
  text-align: center;
  letter-spacing: var(--tracking-wider);
  color: var(--color-white);
  font-size: clamp(4rem, -0.558692422rem + 5.9435364042vw, 8rem);
  line-height: 1.35;
}
body.page-recruit .section-intro-en {
  position: relative;
  margin-top: 16px;
  text-align: center;
  letter-spacing: var(--tracking-wider);
  color: var(--color-white);
  font-family: var(--font-alphanumeric);
  font-size: clamp(1.8rem, 0.8882615156rem + 1.1887072808vw, 2.6rem);
  line-height: var(--leading-none);
}
body.page-recruit .section-intro-en::before {
  display: block;
  content: "";
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 1px;
  background-color: #e3e3e3;
  margin-inline: calc(50% - 50cqw);
}
@media (max-width: 767.98px) {
  body.page-recruit .section-intro-en::before:is(.disable-mobile) {
    margin-inline: 0;
  }
}
body.page-recruit .section-intro-text {
  margin-top: clamp(3.2rem, 1.1485884101rem + 2.6745913819vw, 5rem);
  text-align: center;
  color: var(--color-white);
  font-size: clamp(1.8rem, 0.8882615156rem + 1.1887072808vw, 2.6rem);
  line-height: 2.3076923077;
}
body.page-recruit .section-intro-list {
  display: grid;
  grid-template-columns: repeat(3, max-content);
  gap: 30px;
  justify-content: center;
  position: relative;
  z-index: 2;
  margin-top: -235px;
  list-style-type: none;
}
@media (max-width: 767.98px) {
  body.page-recruit .section-intro-list {
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    padding-inline: var(--container-padding);
    margin-top: -15%;
  }
}
@media (max-width: 559.98px) {
  body.page-recruit .section-intro-list {
    gap: 10px;
  }
}

.section-recruit-title-ja {
  display: inline-block;
  letter-spacing: var(--tracking-wider);
  color: var(--color-recruit-primary);
  font-size: clamp(4rem, -1.0145616642rem + 6.5378900446vw, 8.4rem);
  line-height: var(--leading-sm);
  background: linear-gradient(90deg, #3a6fd8 0%, #002774 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.section-recruit-title-en {
  position: relative;
  margin-top: 16px;
  letter-spacing: var(--tracking-wider);
  color: var(--color-recruit-primary);
  font-family: var(--font-alphanumeric);
  font-size: clamp(1.8rem, 0.8882615156rem + 1.1887072808vw, 2.6rem);
  line-height: var(--leading-none);
}
.section-recruit-title-en::after {
  display: block;
  content: "";
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 1px;
  background-color: #c0d0eb;
  margin-inline: calc(50% - 50cqw);
}
@media (max-width: 767.98px) {
  .section-recruit-title-en::after:is(.disable-mobile) {
    margin-inline: 0;
  }
}

.section-our-jobs {
  overflow: hidden;
}

.section-our-jobs-catch {
  text-align: left;
  font-size: clamp(2rem, 0.4044576523rem + 2.0802377415vw, 3.4rem);
  font-weight: var(--font-bold);
  line-height: var(--leading-sm);
  margin-block: clamp(2rem, -1.4190193165rem + 4.4576523031vw, 5rem) clamp(4rem, -0.558692422rem + 5.9435364042vw, 8rem);
}

.section-our-jobs-list {
  display: grid;
  gap: clamp(4rem, -1.2424962853rem + 6.8350668648vw, 8.6rem);
}

.section-our-jobs-list-item {
  --image-width: clamp(40rem, 5.8098068351rem + 44.5765230312vw, 70rem);
  display: grid;
  gap: clamp(2.4rem, -3.2983655275rem + 7.4294205052vw, 7.4rem);
}
@media (min-width: 768px) {
  .section-our-jobs-list-item:nth-child(odd) {
    margin-left: calc(50% - 50cqw);
    grid-template-areas: "secondary primary";
    grid-template-columns: var(--image-width) 1fr;
  }
}
@media (min-width: 768px) and (max-width: 767.98px) {
  .section-our-jobs-list-item:nth-child(odd):is(.disable-mobile) {
    margin-inline: 0;
  }
}
@media (min-width: 768px) {
  .section-our-jobs-list-item:nth-child(even) {
    margin-right: calc(50% - 50cqw);
    grid-template-areas: "primary secondary";
    grid-template-columns: 1fr var(--image-width);
  }
}
@media (min-width: 768px) and (max-width: 767.98px) {
  .section-our-jobs-list-item:nth-child(even):is(.disable-mobile) {
    margin-inline: 0;
  }
}

@media (min-width: 768px) {
  .section-our-jobs-list-item-primary {
    grid-area: primary;
  }
}

@media (min-width: 768px) {
  .section-our-jobs-list-item-secondary {
    grid-area: secondary;
  }
}

.section-our-jobs-list-item-title {
  position: relative;
  margin-bottom: clamp(1.6rem, -1.1352154532rem + 3.5661218425vw, 4rem);
  padding-bottom: 15px;
  color: var(--color-recruit-primary);
  font-size: clamp(3.2rem, 1.6044576523rem + 2.0802377415vw, 4.6rem);
  line-height: var(--leading-none);
}
.section-our-jobs-list-item-title::after {
  display: block;
  content: "";
  position: absolute;
  z-index: -1;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 1px;
  background-color: #e3e3e3;
  margin-inline: calc(50% - 50cqw);
}
@media (max-width: 767.98px) {
  .section-our-jobs-list-item-title::after:is(.disable-mobile) {
    margin-inline: 0;
  }
}

.section-our-jobs-list-item-text {
  font-size: clamp(1.6rem, 1.1441307578rem + 0.5943536404vw, 2rem);
  line-height: 1.7;
}

.section-our-jobs-list-item-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: flex-start;
  margin-top: clamp(1.6rem, 0.0044576523rem + 2.0802377415vw, 3rem);
  list-style: none;
}
.section-our-jobs-list-item-tags li {
  padding: 12px 17px;
  border: 1px solid var(--color-recruit-primary);
  border-radius: 30px;
  letter-spacing: var(--tracking-widest);
  color: var(--color-recruit-primary);
  font-size: var(--text-sm);
  font-weight: var(--font-bold);
  line-height: var(--leading-none);
}
@media (max-width: 767.98px) {
  .section-our-jobs-list-item-tags li {
    padding: 8px 12px;
    font-size: var(--text-xs);
  }
}

.interview-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: clamp(4rem, 1.2647845468rem + 3.5661218425vw, 6.4rem) 20px;
}
@media (max-width: 767.98px) {
  .interview-list {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 559.98px) {
  .interview-list {
    grid-template-columns: repeat(1, 1fr);
  }
}

.interview-list-item-link {
  text-decoration: none;
  color: currentColor;
}

.interview-list-item-content {
  display: flex;
  gap: 20px;
  align-items: center;
  margin-top: 20px;
}
@media (max-width: 767.98px) {
  .interview-list-item-content {
    gap: 12px;
    margin-top: 12px;
  }
}

.interview-list-item-meta {
  font-weight: var(--font-bold);
  line-height: var(--leading-lg);
}
@media (max-width: 767.98px) {
  .interview-list-item-meta {
    font-size: var(--text-sm);
  }
}

.interview-list-item-title {
  white-space: nowrap;
  letter-spacing: var(--tracking-wider);
  font-family: var(--font-alphanumeric);
  font-size: 6.8rem;
  line-height: var(--leading-none);
  text-box: trim-both cap alphabetic;
}
@media (max-width: 767.98px) {
  .interview-list-item-title {
    font-size: 5.6rem;
  }
}

.interview-list-item-image {
  aspect-ratio: 370/448;
}
.interview-list-item-image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.js-interview-slider {
  --swiper-scrollbar-size: 2px;
  position: relative;
  padding-bottom: 56px;
}
.js-interview-slider .swiper-navigation {
  position: absolute;
  z-index: 99;
  inset: 0;
  pointer-events: none;
}
.js-interview-slider .swiper-navigation .swiper-button {
  top: 196px;
  bottom: auto;
  margin-top: auto;
  width: auto;
  height: auto;
  pointer-events: initial;
}
@media (max-width: 767.98px) {
  .js-interview-slider .swiper-navigation .swiper-button {
    top: 120px;
  }
}
.js-interview-slider .swiper-navigation .swiper-button .icon-chevron {
  width: 56px;
  height: 56px;
}
.js-interview-slider .swiper-navigation .swiper-button::after {
  display: none;
}
.js-interview-slider .swiper-navigation .swiper-button-prev {
  left: 0;
  transform: translateX(-50%) rotate(180deg);
}
@media (max-width: 767.98px) {
  .js-interview-slider .swiper-navigation .swiper-button-prev {
    left: 10px;
  }
}
.js-interview-slider .swiper-navigation .swiper-button-next {
  right: -130px;
  transform: translateX(50%);
}
@media (max-width: 1439.98px) {
  .js-interview-slider .swiper-navigation .swiper-button-next {
    right: 0;
  }
}
@media (max-width: 767.98px) {
  .js-interview-slider .swiper-navigation .swiper-button-next {
    right: 10px;
  }
}
.js-interview-slider .interview-list-item {
  width: 370px;
}
@media (max-width: 767.98px) {
  .js-interview-slider .interview-list-item {
    width: 240px;
  }
}

.section-interview {
  overflow: hidden;
  margin-top: clamp(-8rem, -3.2133729569rem - 6.2407132244vw, -12.2rem);
  background: linear-gradient(0deg, #5485d9 0%, #fff 100%);
  padding-block: clamp(15rem, -5.9699851412rem + 27.3402674591vw, 33.4rem) clamp(8rem, 1.161961367rem + 8.9153046062vw, 14rem);
}
.section-interview .section-recruit-title {
  margin-bottom: clamp(3.6rem, 2.0044576523rem + 2.0802377415vw, 5rem);
}
.section-interview .section-recruit-title-en::after {
  background-color: var(--color-white);
}
.section-interview .swiper-scrollbar {
  background-color: #e3e3e3;
}
.section-interview .swiper-scrollbar-drag {
  background-color: var(--color-primary-lighter2);
}
.section-interview .interview-list-item {
  color: var(--color-white);
}
.section-interview .text-link-wrapper {
  margin-top: 32px;
}

.section-environment {
  padding-block: 40px;
  overflow: hidden;
}
.section-environment .section-recruit-title-en::after {
  width: 200vw;
}

.section-environment-inner {
  position: relative;
  padding-block: clamp(15rem, 5.882615156rem + 11.8870728083vw, 23rem) clamp(10rem, -0.2570579495rem + 13.3729569094vw, 19rem);
}
@media (max-width: 767.98px) {
  .section-environment-inner {
    padding-block: 40px;
    display: flex;
    flex-direction: column;
  }
}

.section-environment-images {
  display: grid;
  overflow: hidden;
  grid-template-columns: repeat(2, 1fr);
  gap: 15px;
  position: absolute;
  z-index: 2;
  top: 0;
  right: -162px;
  bottom: 0;
}
@media (max-width: 1439.98px) {
  .section-environment-images {
    right: 0;
  }
}
@media (max-width: 1023.98px) {
  .section-environment-images {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 767.98px) {
  .section-environment-images {
    gap: 8px;
    position: static;
    margin-bottom: clamp(3.2rem, 1.3765230312rem + 2.3774145617vw, 4.8rem);
  }
}

.section-environment-auto-images {
  display: grid;
  gap: 15px;
  list-style: none;
  animation: auto-scroll 40s linear infinite;
}
.section-environment-auto-images:nth-child(2) {
  animation-direction: reverse;
}
@media (max-width: 1023.98px) {
  .section-environment-auto-images:nth-child(2) {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .section-environment-auto-images:nth-child(2) {
    display: grid;
  }
}
@media (max-width: 767.98px) {
  .section-environment-auto-images {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 8px;
    animation: initial;
  }
}
@media (max-width: 1439.98px) {
  .section-environment-auto-images li {
    width: 240px;
  }
}
@media (max-width: 767.98px) {
  .section-environment-auto-images li {
    width: auto;
  }
  .section-environment-auto-images li:nth-child(n+4) {
    display: none;
  }
}

@keyframes auto-scroll {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(-50%);
  }
}
.section-environment-content {
  padding-right: clamp(30rem, 0.3684992571rem + 38.632986627vw, 56rem);
}
@media (max-width: 767.98px) {
  .section-environment-content {
    display: contents;
  }
}

.section-environment-text {
  margin-block: clamp(2.4rem, -0.5631500743rem + 3.8632986627vw, 5rem);
}

.section-internship .section-recruit-title {
  padding-top: clamp(4.8rem, 2.9765230312rem + 2.3774145617vw, 6.4rem);
  text-align: center;
  background-color: var(--color-white);
  padding-inline: var(--container-padding);
}
@media (max-width: 559.98px) {
  .section-internship .section-recruit-title .section-recruit-title-ja {
    font-size: var(--text-4xl);
  }
}

.section-internship-image {
  display: flex;
  align-items: flex-end;
  width: 100%;
  height: 580px;
  background: url(../img/recruit/internship_img_01.png) no-repeat center center/cover;
  background-position: top left;
  background-size: 150%;
}
@media (max-width: 767.98px) {
  .section-internship-image {
    height: 240px;
  }
}

.section-internship-inner {
  position: relative;
}

.section-internship-content {
  padding-bottom: clamp(6.4rem, -2.2615156018rem + 11.2927191679vw, 14rem);
  text-align: center;
  background-color: var(--color-white);
  padding-inline: var(--container-padding);
}
@media (max-width: 767.98px) {
  .section-internship-content {
    padding-inline: 0;
  }
}

.section-internship-catch {
  margin-block: clamp(3.2rem, 1.1485884101rem + 2.6745913819vw, 5rem) 16px;
  font-size: clamp(2.4rem, 1.2603268945rem + 1.485884101vw, 3.4rem);
  font-weight: var(--font-bold);
  line-height: var(--leading-md);
}

.section-internship-text {
  margin-bottom: clamp(3.2rem, 1.1485884101rem + 2.6745913819vw, 5rem);
}

.section-under-fv {
  background-image: url(../img/recruit/recruit_under_fv.png);
}

.section-under-fv-title-ja span {
  background-color: var(--color-recruit-primary);
}

.grid-table ul {
  list-style: none;
}

.p-recruit-list {
  list-style: none;
  line-height: var(--leading-lg);
}
.p-recruit-list li {
  position: relative;
  padding-left: 14px;
}
.p-recruit-list li::before {
  display: block;
  content: "";
  position: absolute;
  top: 0.75em;
  left: 0;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--color-recruit-primary);
}

.section-recruit-under-title {
  position: relative;
  margin-bottom: clamp(1.6rem, -1.1352154532rem + 3.5661218425vw, 4rem);
  padding-bottom: 15px;
  color: var(--color-recruit-primary);
  font-size: clamp(3.2rem, 1.6044576523rem + 2.0802377415vw, 4.6rem);
  line-height: var(--leading-none);
}
.section-recruit-under-title::after {
  display: block;
  content: "";
  position: absolute;
  z-index: -1;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100vw;
  height: 1px;
  background-color: #e3e3e3;
  margin-inline: calc(50% - 50cqw);
}
@media (max-width: 767.98px) {
  .section-recruit-under-title::after:is(.disable-mobile) {
    margin-inline: 0;
  }
}

.section-recruit-under-subtitle {
  margin-bottom: clamp(2rem, -0.279346211rem + 2.9717682021vw, 4rem);
  padding-left: 16px;
  border-left: 5px solid var(--color-recruit-primary);
  font-size: clamp(2rem, 1.5441307578rem + 0.5943536404vw, 2.4rem);
}

.section-requirements {
  display: grid;
  gap: clamp(4.8rem, 2.9765230312rem + 2.3774145617vw, 6.4rem);
}

.section-requirements-list {
  display: grid;
  gap: 30px;
}

.section-requirements-list-item-title {
  margin-bottom: 16px;
  padding-bottom: 8px;
  border-bottom: 1px solid #e3e3e3;
  font-size: clamp(1.8rem, 1.5720653789rem + 0.2971768202vw, 2rem);
  font-weight: var(--font-bold);
}

.section-entry-flow {
  --gap: clamp(4rem, 1.720653789rem + 2.9717682021vw, 6rem);
  display: grid;
  margin-top: calc(var(--gap) / 2 * -1);
}

.section-entry-flow-item {
  position: relative;
}
.section-entry-flow-item:last-child .section-entry-flow-item-head::after {
  display: none;
}
@media (max-width: 767.98px) {
  .section-entry-flow-item:last-child .section-entry-flow-item-body {
    border-bottom: none;
  }
}

.section-entry-flow-item-inner {
  display: grid;
  grid-template-columns: max-content 1fr;
  gap: clamp(2rem, -0.279346211rem + 2.9717682021vw, 4rem);
  align-items: center;
}
@media (max-width: 767.98px) {
  .section-entry-flow-item-inner:has(.section-entry-flow-item-text) {
    align-items: flex-start;
  }
}

@media (max-width: 767.98px) {
  .section-entry-flow-item-head {
    padding-block: var(--gap);
  }
}
.section-entry-flow-item-head::after {
  --width: 16px;
  --height: 12px;
  display: block;
  content: "";
  clip-path: polygon(50% var(--height), 0% 0%, var(--width) 0%);
  position: absolute;
  bottom: -6px;
  left: 42px;
  margin: 0 auto;
  width: var(--width);
  height: var(--height);
  background: var(--color-recruit-secondary);
}
@media (max-width: 767.98px) {
  .section-entry-flow-item-head::after {
    left: 32px;
  }
}

.section-entry-flow-item-step {
  display: flex;
  flex-direction: column;
  gap: 16px;
  justify-content: center;
  align-items: center;
  width: 100px;
  height: 100px;
  color: var(--color-white);
  font-family: var(--font-alphanumeric);
  font-size: clamp(1.8rem, 1.5720653789rem + 0.2971768202vw, 2rem);
  line-height: var(--leading-none);
  background-color: var(--color-recruit-secondary);
}
@media (max-width: 767.98px) {
  .section-entry-flow-item-step {
    width: 80px;
    height: 80px;
  }
}
.section-entry-flow-item-step .section-entry-flow-item-step-num {
  letter-spacing: var(--tracking-wider);
  font-size: clamp(2.4rem, 1.4882615156rem + 1.1887072808vw, 3.2rem);
}

.section-entry-flow-item-body {
  padding-block: var(--gap);
  border-bottom: 1px solid #e3e3e3;
}

.section-entry-flow-item-title {
  font-size: clamp(2rem, 1.0882615156rem + 1.1887072808vw, 2.8rem);
  line-height: var(--leading-md);
}

.section-entry-flow-item-text {
  margin-top: 8px;
  line-height: var(--leading-lg);
}

body.page-mid-career .section-recruit-under-subtitle {
  margin-bottom: 24px;
}
body.page-mid-career .section-requirements-list {
  gap: 48px;
}
body.page-mid-career .section-requirements-list-item-title {
  margin-bottom: 40px;
}

.grid-table-head {
  color: var(--color-recruit-primary);
}

body.page-environment .section-under-env-image-01 {
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  body.page-environment .section-under-env-image-01 {
    float: right;
    margin: 0;
    margin-left: 10px;
    width: 400px;
  }
}
body.page-environment h3.text-xl {
  margin-block: 16px 10px;
}
body.page-environment .section-under-env-bottom {
  clear: both;
  margin-bottom: clamp(4.8rem, 2.9765230312rem + 2.3774145617vw, 6.4rem);
}
body.page-environment .section-under-env-bottom:last-child {
  margin-bottom: 0;
}
@media (max-width: 767.98px) {
  body.page-environment .section-under-env-bottom {
    margin-top: 48px;
  }
  body.page-environment .section-under-env-bottom:last-child {
    margin-top: 0;
  }
}
body.page-environment .section-under-env-bottom-list {
  display: grid;
  gap: 40px;
  list-style: none;
}
body.page-environment .section-under-env-bottom-list .section-under-env-bottom-list {
  gap: 16px;
}
body.page-environment .section-under-env-bottom-list .section-under-env-bottom-list .section-under-env-bottom-item-title {
  margin-bottom: 8px;
  padding-bottom: 0;
  border-bottom: none;
  font-size: initial;
}
body.page-environment .section-under-env-bottom-text {
  margin-bottom: 40px;
}
body.page-environment .section-under-env-bottom-item-title {
  margin-bottom: 16px;
  padding-bottom: 8px;
  border-bottom: 1px solid #e3e3e3;
  font-size: clamp(1.8rem, 1.5720653789rem + 0.2971768202vw, 2rem);
  font-weight: var(--font-bold);
}
body.page-environment .section-under-env-bottom-item-text {
  margin-bottom: 16px;
}

.article-interview-header {
  display: grid;
  grid-template-columns: 1fr clamp(48rem, 26.3462109955rem + 28.2317979198vw, 67rem);
  gap: 20px;
}
@media (max-width: 767.98px) {
  .article-interview-header {
    grid-template-columns: 1fr;
    gap: 0;
  }
}
@media (max-width: 767.98px) {
  .article-interview-header .article-interview-header-content {
    display: contents;
  }
}
.article-interview-header .p-interview-catch {
  padding: clamp(4.8rem, 1.6089153046rem + 4.1604754829vw, 7.6rem) 0 clamp(2.8rem, -0.6190193165rem + 4.4576523031vw, 5.8rem);
}
@media (max-width: 767.98px) {
  .article-interview-header .p-interview-catch {
    padding-block: 0;
    order: -99;
  }
}
.article-interview-header .p-interview-marker {
  display: inline-block;
  margin-bottom: 10px;
  padding: 4px 8px;
  white-space: nowrap;
  letter-spacing: var(--tracking-wider);
  color: #fff;
  font-size: clamp(2rem, 0.8603268945rem + 1.485884101vw, 3rem);
  line-height: var(--leading-sm);
  background-color: var(--color-recruit-primary);
}
@media (max-width: 767.98px) {
  .article-interview-header .p-interview-marker {
    white-space: initial;
  }
}
.article-interview-header .p-interview-marker:last-child {
  margin-bottom: 0;
}
.article-interview-header .p-interview-year {
  position: relative;
  margin-bottom: 10px;
  padding-bottom: 16px;
  font-size: clamp(1.6rem, 1.1441307578rem + 0.5943536404vw, 2rem);
  line-height: var(--leading-md);
}
@media (max-width: 767.98px) {
  .article-interview-header .p-interview-year {
    margin-block: 20px;
  }
}
.article-interview-header .p-interview-year::before {
  display: block;
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 22px;
  height: 3px;
  background-color: var(--color-recruit-primary);
}
.article-interview-header .article-interview-title {
  margin-block: 0 8px;
  font-size: clamp(2.4rem, 1.0323922734rem + 1.7830609212vw, 3.6rem);
  line-height: var(--leading-md);
}
@media (max-width: 767.98px) {
  .article-interview-header .article-interview-title {
    margin-bottom: 16px;
  }
}
@media (max-width: 767.98px) {
  .article-interview-header .article-interview-header-image {
    order: -98;
    position: relative;
    z-index: -1;
    margin-top: -18px;
  }
}

.p-interview-body {
  display: grid;
  gap: clamp(3.2rem, 1.3765230312rem + 2.3774145617vw, 4.8rem);
  margin-top: clamp(4.8rem, 2.9765230312rem + 2.3774145617vw, 6.4rem);
}

body.single-interview .section-recruit-title {
  margin-bottom: clamp(3.6rem, 2.0044576523rem + 2.0802377415vw, 5rem);
}
body.single-interview .swiper-scrollbar-drag {
  background-color: var(--color-recruit-primary);
}

.section-recruit-under-tel a {
  display: flex;
  gap: 16px;
  align-items: center;
  text-decoration: none;
  color: currentColor;
  color: var(--color-recruit-secondary);
  font-size: clamp(3.6rem, 2.2323922734rem + 1.7830609212vw, 4.8rem);
  line-height: var(--leading-none);
}

.section-recruit-contact-sections {
  display: grid;
  gap: clamp(4.8rem, 2.9765230312rem + 2.3774145617vw, 6.4rem);
}

.section-recruit-contact-to {
  margin-top: 24px;
  line-height: var(--leading-md);
}

.form-wrapper {
  --submit-button-background-color: var(--color-recruit-secondary);
  --checkbox-radio-checked-color: var(--color-recruit-secondary);
}

.wpcf7-form-control.wpcf7-acceptance a {
  color: currentColor;
}

.wpcf7-form-control.wpcf7-acceptance {
  margin-block: clamp(2.4rem, -0.5631500743rem + 3.8632986627vw, 5rem);
}

.section-business-nav-btn {
  color: var(--color-primary);
}
.section-business-nav-btn:hover, .section-business-nav-btn.is-active {
  color: var(--color-white);
  background-color: var(--color-primary);
}
.section-business-nav-btn .icon-chevron {
  color: var(--color-white);
  background-color: var(--color-primary);
}
