@charset "UTF-8";
.page-wrap {
  padding-inline: 1.25rem;
  max-width: 65rem;
  margin-inline: auto;
}

.page-wrap-n {
  padding-inline: 1.25rem;
  margin-inline: auto;
}

a {
  display: inline-block;
  opacity: 1;
  cursor: pointer;
  transition: opacity 0.3s ease;
  outline: none;
}

button,
label {
  opacity: 1;
  cursor: pointer;
  transition: opacity 0.3s ease;
  outline: none;
}

input,
.entry__job-option,
.your-type,
textarea {
  opacity: 1;
  transition: opacity 0.3s ease;
}

a:focus-visible,
button:focus-visible,
label:focus-visible,
input:focus-visible,
.entry__job-option:focus-visible,
.your-typ:focus-visible,
textarea:focus-visible {
  outline: 0.0625rem solid #333333;
  outline-offset: 2px;
  opacity: 0.7;
}
a:focus-visible.splide__hover,
button:focus-visible.splide__hover,
label:focus-visible.splide__hover,
input:focus-visible.splide__hover,
.entry__job-option:focus-visible.splide__hover,
.your-typ:focus-visible.splide__hover,
textarea:focus-visible.splide__hover {
  opacity: 0.9;
}

@media (hover: hover) and (pointer: fine) {
  a:hover,
  button:hover,
  .entry__job-option:hover,
  label:hover {
    opacity: 0.7;
  }
  a:hover.splide__hover,
  button:hover.splide__hover,
  .entry__job-option:hover.splide__hover,
  label:hover.splide__hover {
    opacity: 0.9;
  }
}
.grecaptcha-badge {
  width: 4.375rem !important;
  left: unset !important;
  right: 0.9375rem !important;
  z-index: 9999 !important;
}
.grecaptcha-badge:hover {
  width: 16rem !important;
  left: unset !important;
  right: 0.9375rem !important;
}

li.job-opening {
  width: 12.25rem;
  height: 3.4375rem;
}
@media screen and (max-width: 1279px) {
  li.job-opening {
    width: 100%;
    height: auto;
    min-height: 4.6875rem;
    max-width: 20.875rem;
    aspect-ratio: 334/75;
  }
}
li.job-opening > a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.6875rem;
  border-radius: 0.625rem;
  background: linear-gradient(168.73deg, #1a8f55 0%, #149099 100%);
  position: relative;
}
@media screen and (max-width: 1279px) {
  li.job-opening > a {
    border-radius: 0.25rem;
  }
}
li.job-opening > a > span:first-of-type {
  display: inline-block;
  width: 1.5rem;
  height: 1.375rem;
  background: url("../img/job-opening.svg") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 1.5rem 1.375rem;
}
li.job-opening > a > span:last-of-type {
  color: #fffcf5;
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  white-space: nowrap;
}

li.go-entry {
  width: 12.25rem;
  height: 3.4375rem;
}
@media screen and (max-width: 1279px) {
  li.go-entry {
    width: 100%;
    height: auto;
    min-height: 4.6875rem;
    max-width: 20.875rem;
    aspect-ratio: 334/75;
  }
}
li.go-entry > a {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.375rem;
  border-radius: 0.625rem;
  background: linear-gradient(168.73deg, #2991c6 0%, #3a5ca5 100%);
  position: relative;
}
@media screen and (max-width: 1279px) {
  li.go-entry > a {
    border-radius: 0.25rem;
  }
}
li.go-entry > a > span:first-of-type {
  display: inline-block;
  width: 1.141875rem;
  height: 1.375rem;
  background: url("../img/go-entry.svg") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 1.125rem 1.375rem;
}
li.go-entry > a > span:last-of-type {
  color: #fffcf5;
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  white-space: nowrap;
  text-transform: uppercase;
}

li.common-link {
  width: 32.5%;
  min-width: 15rem;
  height: auto;
  aspect-ratio: 325/116.67;
  border-radius: 0.520625rem;
}
li.common-link.other {
  min-width: 17.5rem;
  position: relative;
}
li.common-link.other::before {
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 0.520625rem;
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), var(--card-img) center/cover no-repeat;
  z-index: 0;
}
@media screen and (max-width: 767px) {
  li.common-link {
    width: 100%;
    aspect-ratio: 325/100;
    border-radius: 0.375rem;
    min-width: 12.5rem;
    max-width: 20.3125rem;
  }
}
li.common-link > a {
  display: grid;
  grid-auto-flow: row;
  gap: 0;
  place-content: center;
  place-items: center;
  width: 100%;
  height: 100%;
  color: #ffffff;
}
li.common-link > a > span:first-of-type {
  font: 700 0.75rem/2 "Josefin Sans", sans-serif;
  letter-spacing: 0.2em;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
}
li.common-link > a > span:last-of-type {
  font: 700 0.9375rem/1.3 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
  white-space: nowrap;
}
li.common-link.other a {
  position: relative;
  z-index: 1;
}

.common-link.second {
  position: relative;
  display: grid;
  grid-auto-flow: row;
  gap: 0;
  place-content: center;
  place-items: center;
  width: 100%;
  max-width: 20.3125rem;
  min-width: 15rem;
  height: auto;
  aspect-ratio: 325/116.67;
  border-radius: 0.520625rem;
  z-index: 1;
  cursor: pointer;
}
@media screen and (max-width: 767px) {
  .common-link.second {
    aspect-ratio: 335/117;
    max-width: 20.9375rem;
  }
}
.common-link.second::before {
  content: "";
  width: 100%;
  height: 100%;
  border-radius: 0.520625rem;
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), var(--card-img) center/cover no-repeat;
  z-index: 0;
}
.common-link.second > span:first-of-type {
  color: #ffffff;
  font: 700 0.75rem/2 "Josefin Sans", sans-serif;
  letter-spacing: 0.2em;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
  position: relative;
  z-index: 0;
}
.common-link.second > span:last-of-type {
  color: #ffffff;
  font: 700 0.9375rem/1.3 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
  white-space: nowrap;
  position: relative;
  z-index: 1;
}

div.common-link.second {
  max-width: 37.5rem;
  max-height: 13.096875rem;
  min-width: 15rem;
  aspect-ratio: 600/209.55;
  cursor: auto;
  gap: 10%;
}
@media screen and (max-width: 767px) {
  div.common-link.second {
    aspect-ratio: 335/117;
    max-width: 20.9375rem;
    min-width: 100%;
    gap: 0;
  }
}

button.common-more {
  display: none;
  width: 20.9375rem;
  height: 4.4375rem;
  margin: 1.875rem auto 0 auto;
  border-radius: 0.625rem;
  background-color: #4b505e;
  color: #ffffff;
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  text-align: center;
}
button.common-more::before {
  content: "＋";
  display: inline-block;
  margin-right: 0.5rem;
  transition: all 0.2s ease-in-out;
}
button.common-more.change::before {
  content: "－";
}
@media screen and (max-width: 767px) {
  button.common-more {
    display: block;
  }
}
@media screen and (max-width: 366px) {
  button.common-more {
    width: 100%;
    margin: 1.875rem 0 0 0;
  }
}

a.entry-recruit {
  width: 15.625rem;
  height: 3.4375rem;
  padding-inline: 2.71875rem;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  border-radius: 0.625rem;
  background: linear-gradient(168.73deg, #2991c6 0%, #3a5ca5 100%);
  text-align: right;
  color: #fffcf5;
  font: 700 0.875rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  position: relative;
}
a.entry-recruit::before {
  content: "";
  position: absolute;
  display: block;
  top: 1.125rem;
  left: 2.71875rem;
  width: 1.125rem;
  height: 1.125rem;
  background: url("../img/entry.svg") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 1.125rem 1.125rem;
}

h2.sub-title {
  width: fit-content;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
}
@media screen and (max-width: 767px) {
  h2.sub-title {
    gap: 0.25rem;
  }
}
h2.sub-title > span:first-of-type {
  font: 500 0.75rem/2 "Josefin Sans", sans-serif;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: #979797;
}
h2.sub-title > span:last-of-type {
  font: 700 2.5rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  color: #333333;
}
@media screen and (max-width: 767px) {
  h2.sub-title > span:last-of-type {
    font: 700 1.875rem/1 "Noto Sans JP", sans-serif;
  }
}
@media screen and (max-width: 767px) {
  h2.sub-title > span:last-of-type.inter {
    font: 700 1.4375rem/1 "Noto Sans JP", sans-serif;
    word-break: keep-all;
  }
}
h2.sub-title > span:last-of-type.archive {
  font: 700 3rem/1.5 "Noto Sans JP", sans-serif;
  word-break: keep-all;
}
@media screen and (max-width: 1279px) {
  h2.sub-title > span:last-of-type.archive {
    font: 700 2.5rem/1.5 "Noto Sans JP", sans-serif;
  }
}
@media screen and (max-width: 767px) {
  h2.sub-title > span:last-of-type.archive {
    font: 700 1.875rem/1.5 "Noto Sans JP", sans-serif;
  }
}
h2.sub-title.white > span:first-of-type {
  color: #fffcf5;
}
h2.sub-title.white > span:last-of-type {
  color: #fffcf5;
}
h2.sub-title.reward-white {
  gap: 1.6875rem;
}
@media screen and (max-width: 767px) {
  h2.sub-title.reward-white {
    gap: 0.5625rem;
  }
}
h2.sub-title.reward-white > span {
  color: #f5f0e5;
}
h2.sub-title.reward-white > span:first-of-type {
  font: 500 0.875rem/2 "Josefin Sans", sans-serif;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  h2.sub-title.reward-white > span:first-of-type {
    font: 500 0.75rem/2 "Noto Sans JP", sans-serif;
  }
}
h2.sub-title.reward-white > span:last-of-type {
  font: 700 2.6875rem/1.5 "Noto Sans JP", sans-serif;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 767px) {
  h2.sub-title.reward-white > span:last-of-type {
    font: 700 1.875rem/1.5 "Noto Sans JP", sans-serif;
    letter-spacing: 0.1em;
  }
}
h2.sub-title.action-white {
  gap: 0.9375rem;
}
@media screen and (max-width: 767px) {
  h2.sub-title.action-white {
    gap: 0.5625rem;
  }
}
h2.sub-title.action-white > span {
  color: #f5f0e5;
}
h2.sub-title.action-white > span:first-of-type {
  font: 500 1.375rem/1.4 "Noto Sans JP", sans-serif;
  letter-spacing: 0.2em;
  text-transform: uppercase;
}
@media screen and (max-width: 767px) {
  h2.sub-title.action-white > span:first-of-type {
    font: 500 0.75rem/2 "Noto Sans JP", sans-serif;
  }
}
h2.sub-title.action-white > span:last-of-type {
  font: 700 2.6875rem/1.3 "Noto Sans JP", sans-serif;
  letter-spacing: 0.2em;
}
@media screen and (max-width: 767px) {
  h2.sub-title.action-white > span:last-of-type {
    font: 700 1.875rem/1.5 "Noto Sans JP", sans-serif;
    letter-spacing: 0.1em;
  }
}
h2.sub-title.mvv > span:first-of-type {
  color: #8a8a8a;
  letter-spacing: 0.5em;
}
h2.sub-title.mvv.last span:first-of-type {
  color: #979797;
  letter-spacing: 0.2em;
}
h2.sub-title.mvv > span:last-of-type {
  font: 700 2.625rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.2em;
  color: #333333;
}
@media screen and (max-width: 767px) {
  h2.sub-title.mvv > span:last-of-type {
    font: 700 1.5rem/2.1875rem "Noto Sans JP", sans-serif;
    word-break: keep-all;
  }
}

h1.lower {
  font: 700 3.125rem/60px "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  color: #333333;
}
@media screen and (max-width: 767px) {
  h1.lower {
    font: 700 2rem/38px "Noto Sans JP", sans-serif;
  }
}

.people::before,
.company::before,
.interview::before,
.recruit::before,
.single-recruit::before,
.entry::before,
.thanks::before,
.privacy::before {
  display: block;
  width: auto;
  color: #f5f0e5;
  font: 400 7rem/2 "Josefin Sans", sans-serif;
  letter-spacing: 0.2em;
  white-space: nowrap;
  position: absolute;
  top: 10.5625rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .people::before,
  .company::before,
  .interview::before,
  .recruit::before,
  .single-recruit::before,
  .entry::before,
  .thanks::before,
  .privacy::before {
    font: 400 2.625rem/2 "Josefin Sans", sans-serif;
    top: 10.1875rem;
  }
}

.interview::before,
.entry::before,
.thanks::before {
  top: 11.1875rem;
}

.people::before {
  content: "KNOW PEOPLE KNOW PEOPLE";
}

.company::before {
  content: "KNOW COMPANY KNOW COMPANY";
}

.interview::before {
  content: "INTERVIEW INTERVIEW INTERVIEW";
}

.recruit::before,
.single-recruit::before,
.privacy::before {
  content: "RECRUIT RECRUIT RECRUIT ";
}

.entry::before,
.thanks::before {
  content: "ENTRY ENTRY ENTRY ENTRY";
}

.company__center--action::before,
.people__bottom::before {
  display: block;
  width: auto;
  color: #26272b;
  font: 400 7rem/2 "Josefin Sans", sans-serif;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  white-space: nowrap;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .company__center--action::before,
  .people__bottom::before {
    display: none;
  }
}

.company__center--action::before {
  content: "Business In Action Business In Action";
  top: 0rem;
}

.people__bottom::before {
  content: "Work My Way Work My Way";
  top: 6.3125rem;
}

.company__bottom::before {
  content: "Vision & Values Vision & Values";
  display: block;
  width: auto;
  color: #f5f0e5;
  font: 400 7rem/2 "Josefin Sans", sans-serif;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  white-space: nowrap;
  position: absolute;
  top: 5.3125rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: -1;
}
@media screen and (max-width: 767px) {
  .company__bottom::before {
    top: 8.0625rem;
    font: 400 3.25rem/2 "Josefin Sans", sans-serif;
    letter-spacing: 0.2em;
  }
}

.splide {
  width: 100%;
  height: auto;
  margin-bottom: 6.8125rem;
}
@media screen and (max-width: 767px) {
  .splide {
    margin-bottom: 6.0625rem;
  }
}
.splide__track, .splide__list {
  width: 100%;
  height: auto;
}
.splide__slide {
  width: 23.4375%;
  height: auto;
  aspect-ratio: 300/397;
  border-radius: 0.625rem;
}
@media screen and (max-width: 767px) {
  .splide__slide {
    aspect-ratio: 222.17/294;
    border-radius: 0.46875rem;
  }
}
.splide__slide > a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
}
.splide__slide > a > div {
  width: 100%;
  height: 100%;
}
.splide__slide > a > div::after {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  border-radius: 0.625rem;
  position: absolute;
  inset: 0;
  background: linear-gradient(360deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%) center bottom/100% 57.68% no-repeat;
}
@media screen and (max-width: 767px) {
  .splide__slide > a > div::after {
    border-radius: 0.46875rem;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%) center bottom/100% 77.89% no-repeat;
  }
}
.splide__slide > a > div > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0.625rem;
}
@media screen and (max-width: 767px) {
  .splide__slide > a > div > img {
    border-radius: 0.46875rem;
  }
}
.splide__slide > a > p {
  width: 100%;
  display: flex;
  justify-content: space-between;
  padding-inline: 1.25rem;
  margin-bottom: 1rem;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media screen and (max-width: 767px) {
  .splide__slide > a > p {
    margin-bottom: 0.75rem;
  }
}
@media screen and (max-width: 366px) {
  .splide__slide > a > p {
    padding-inline: 0.625rem;
  }
}
.splide__slide > a > p > span {
  color: #fffcf5;
  font: 700 0.875rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .splide__slide > a > p > span {
    font: 500 0.75rem/2 "Noto Sans JP", sans-serif;
  }
}
.splide.fv {
  width: 100%;
  height: 100vh;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .splide.fv {
    margin-bottom: 0;
  }
}
.splide.fv .splide__track {
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .splide.fv .splide__track {
    width: 100%;
  }
}
.splide.fv .splide__track.is-edge::before {
  content: "";
  display: block;
  width: 35.25rem;
  height: 100%;
  position: absolute;
  top: 0;
  left: -293px;
  z-index: 1;
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  background-color: rgba(255, 255, 255, 0.1);
}
@media screen and (max-width: 767px) {
  .splide.fv .splide__track.is-edge::before {
    display: none;
  }
}
.splide.fv .splide__track::before {
  content: "";
  display: block;
  width: 35.25rem;
  height: 100%;
  position: absolute;
  top: 0;
  left: -257px;
  z-index: 1;
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  background-color: rgba(255, 255, 255, 0.1);
}
@media screen and (max-width: 767px) {
  .splide.fv .splide__track::before {
    display: none;
  }
}
.splide.fv .splide__track::after {
  content: "";
  display: block;
  width: 133.4375rem;
  height: 100%;
  position: absolute;
  top: 0;
  left: 732px;
  z-index: 2;
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  background-color: rgba(255, 255, 255, 0.1);
}
@media screen and (max-width: 767px) {
  .splide.fv .splide__track::after {
    display: none;
  }
}
.splide.fv .splide__slide {
  display: block;
  width: 26.6875rem;
  height: 100vh;
  border-radius: 0;
}
@media screen and (max-width: 767px) {
  .splide.fv .splide__slide {
    width: 100%;
  }
}
.splide.fv .splide__slide > img {
  width: 100%;
  height: 100%;
  aspect-ratio: 427/752;
  object-fit: cover;
  object-position: center;
  border-radius: 0;
}
@media screen and (max-width: 767px) {
  .splide.fv .splide__slide > img {
    object-position: center top;
  }
}
.splide.people__slider {
  margin-bottom: 0;
}

.splide.splide.interview__slider {
  margin-bottom: 0;
}
.splide.splide.interview__slider .splide__slide {
  width: 23.4375%;
  aspect-ratio: 300/449;
}
@media screen and (max-width: 767px) {
  .splide.splide.interview__slider .splide__slide {
    aspect-ratio: 222.17/328;
  }
}
.splide.splide.interview__slider > .splide__track .splide__list .splide__slide a {
  width: 100%;
  aspect-ratio: 300/449;
  display: flex;
  flex-direction: column;
  gap: 5%;
}
@media screen and (max-width: 767px) {
  .splide.splide.interview__slider > .splide__track .splide__list .splide__slide a {
    aspect-ratio: 222.17/328;
    gap: 3%;
  }
}
.splide.splide.interview__slider > .splide__track .splide__list .splide__slide a > div {
  width: 100%;
  height: 100%;
}
.splide.splide.interview__slider > .splide__track .splide__list .splide__slide a > div::after {
  display: none;
}
.splide.splide.interview__slider > .splide__track .splide__list .splide__slide a > div > img {
  display: block;
  width: 100%;
  height: 100%;
  aspect-ratio: 300/397;
  object-fit: cover;
  border-radius: 0.625rem;
}
@media screen and (max-width: 767px) {
  .splide.splide.interview__slider > .splide__track .splide__list .splide__slide a > div > img {
    aspect-ratio: 222.17/294;
    border-radius: 0.46875rem;
  }
}
.splide.splide.interview__slider > .splide__track .splide__list .splide__slide a > p {
  position: static;
  margin-bottom: 0;
  padding-inline: 0;
}
.splide.splide.interview__slider > .splide__track .splide__list .splide__slide a > p > span {
  color: #333333;
  white-space: nowrap;
}

.faq {
  width: 81.25%;
  margin-inline: auto;
  padding-inline: 1.25rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 1279px) {
  .faq {
    width: 100%;
    margin-inline: 0;
    flex-direction: column;
    justify-content: flex-start;
    gap: 2.9375rem;
  }
}
.faq > h2 {
  width: fit-content;
  min-width: 17.375rem;
}
@media screen and (max-width: 767px) {
  .faq > h2 {
    min-width: unset;
  }
}
.faq > div {
  width: 62%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (max-width: 1279px) {
  .faq > div {
    width: 100%;
  }
}
.faq > div > details {
  width: 100%;
  border-top: 0.0625rem solid #dddddd;
}
.faq > div > details:last-of-type {
  border-bottom: 0.0625rem solid #dddddd;
}
.faq > div > details > summary {
  padding-block: 2rem;
  cursor: pointer;
  color: #333333;
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  list-style: none;
}
.faq > div > details > summary::-webkit-details-marker {
  display: none;
}
@media screen and (max-width: 767px) {
  .faq > div > details > summary {
    cursor: pointer;
    padding-block: 1.5625rem;
    font: 700 1rem/1.5 "Noto Sans JP", sans-serif;
  }
}
.faq > div > details > div {
  width: 100%;
}
.faq > div > details > div > p {
  color: #333333;
  font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
.faq > div > details > div > p:last-of-type {
  padding-block: 0 2rem;
}
@media screen and (max-width: 767px) {
  .faq > div > details > div > p:last-of-type {
    padding-block: 0 1.5625rem;
  }
}

.breadcrumb {
  width: 100%;
  height: auto;
}
.breadcrumb > ul {
  display: flex;
}
@media screen and (max-width: 1279px) {
  .breadcrumb > ul {
    flex-wrap: wrap;
  }
}
.breadcrumb > ul > li {
  width: fit-content;
  height: 100%;
  display: flex;
  align-items: center;
  color: #333333;
  font: 700 0.875rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  white-space: nowrap;
}
@media screen and (max-width: 1279px) {
  .breadcrumb > ul > li {
    white-space: unset;
  }
}
.breadcrumb > ul > li::before {
  display: none;
}
.breadcrumb > ul > li[aria-current=page]::before {
  display: inline-block;
  content: "";
  width: 0.75rem;
  height: 0.75rem;
  border-radius: 50vh;
  aspect-ratio: 1/1;
  background-color: #2991c6;
  margin-right: 0.375rem;
}
.breadcrumb > ul > li:not(:last-of-type)::after {
  content: "";
  display: inline-block;
  width: 3.75rem;
  height: 0.125rem;
  background-color: #d9d9d9;
  margin-inline: 0.8125rem;
}
@media screen and (max-width: 767px) {
  .breadcrumb > ul > li:not(:last-of-type)::after {
    margin-inline: 0.625rem;
  }
}
.breadcrumb > ul > li:last-of-type[aria-current=page] {
  align-items: flex-start;
}
.breadcrumb > ul > li:last-of-type[aria-current=page]::before {
  margin: 0.53125rem 0.375rem 0 0;
}
.breadcrumb > ul > li > a {
  display: block;
  width: fit-content;
  height: 100%;
}

.header {
  width: 100%;
  height: 4.8125rem;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  position: fixed;
  z-index: 999;
}
@media screen and (max-width: 767px) {
  .header {
    height: 3.875rem;
  }
}
.header__inner {
  width: 95.31%;
  height: 3.4375rem;
  margin-inline: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  /* 下層ページ限定 */
}
@media screen and (max-width: 767px) {
  .header__inner {
    width: 100%;
    height: auto;
    align-items: flex-end;
  }
}
.header__inner > h1 {
  width: fit-content;
  height: 2.90375rem;
}
@media screen and (max-width: 767px) {
  .header__inner > h1 {
    width: 11.875rem;
    height: 2.4525rem;
  }
}
.header__inner > h1 > a {
  display: flex;
  align-items: center;
  gap: 1.375rem;
  width: 100%;
  height: 100%;
}
.header__inner > h1 > a > picture img {
  width: 13.875rem;
  aspect-ratio: 222/46.46;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .header__inner > h1 > a > picture img {
    width: 11.875rem;
    aspect-ratio: 190/39.24;
  }
}
.header__inner > h1 > a > span {
  display: block;
  color: #ffffff;
  font: 500 1rem/1 "Josefin Sans", sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding-top: 0.25rem;
}
@media screen and (max-width: 1279px) {
  .header__inner > h1 > a > span {
    display: none;
  }
}
.header__inner > h1 > a > span > span {
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
.header__inner > a.lower-logo {
  display: flex;
  align-items: center;
  gap: 1.375rem;
  width: fit-content;
  height: 2.90375rem;
}
@media screen and (max-width: 767px) {
  .header__inner > a.lower-logo {
    width: 11.875rem;
    height: 2.4525rem;
  }
}
.header__inner > a.lower-logo > img {
  display: block;
  width: 13.875rem;
  aspect-ratio: 222/46.46;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .header__inner > a.lower-logo > img {
    width: 11.875rem;
    aspect-ratio: 190/39.24;
  }
}
.header__inner > a.lower-logo > span {
  color: #848484;
  display: block;
  font: 500 1rem/1 "Josefin Sans", sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding-top: 0.25rem;
}
@media screen and (max-width: 1279px) {
  .header__inner > a.lower-logo > span {
    display: none;
  }
}
.header__inner > a.lower-logo > span > span {
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
.header__inner--right {
  display: none;
}
@media screen and (max-width: 1279px) {
  .header__inner--right {
    display: block;
    width: 2.1875rem;
    height: 2rem;
    position: relative;
  }
  .header__inner--right > span:not(:last-of-type) {
    display: block;
    width: 1.875rem;
    height: 0.0625rem;
    border-radius: 50vh;
    background-color: #333333;
    position: absolute;
    left: 0.15625rem;
  }
  .header__inner--right > span:not(:last-of-type):first-of-type {
    top: 0;
  }
  .header__inner--right > span:not(:last-of-type):nth-of-type(2) {
    top: 0.5625rem;
  }
  .header__inner--right > span:last-of-type {
    display: block;
    width: 100%;
    height: 0.625rem;
    position: absolute;
    bottom: 0;
  }
  .header__inner--right > span:last-of-type::before {
    content: "Menu";
    color: #333333;
    font: 600 0.625rem/1 "Josefin Sans", sans-serif;
    letter-spacing: 0.1em;
    text-align: center;
    text-transform: uppercase;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
  }
  .header__inner--right.active {
    width: 2.4375rem;
    height: 2.5575rem;
  }
  .header__inner--right.active > span:first-of-type {
    left: 0.25rem;
    top: 0.75rem;
    transform: rotate(-45deg);
  }
  .header__inner--right.active > span:nth-of-type(2) {
    left: 0.25rem;
    top: 0.75rem;
    transform: rotate(45deg);
  }
  .header__inner--right.active > span:last-of-type::before {
    content: "Close";
  }
}
.header__nav {
  width: fit-content;
  position: absolute;
  top: 1.375rem;
  right: 3.125rem;
  /* 下層ページ限定 */
}
@media screen and (max-width: 1279px) {
  .header__nav {
    position: fixed;
    width: 100%;
    height: 100dvh;
    background-color: #fffcf5;
    padding: 9rem 1.25rem 3.125rem;
    inset: 0;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.3s ease, visibility 0.3s;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
  }
  .header__nav::before {
    content: "";
    display: block;
    width: 100%;
    height: 100dvh;
    min-height: 64.8125rem;
    position: absolute;
    inset: 0;
    z-index: -1;
    background: url("../img/nav-sp-bg.svg") 46vw 58vh/29.3875rem 24.825rem no-repeat;
    content-visibility: auto;
    contain-intrinsic-size: 29.3875rem 24.825rem;
  }
}
@media screen and (max-width: 1279px) and (max-width: 767px) {
  .header__nav::before {
    background: url("../img/nav-sp-bg.svg") 15vw 33.125rem/29.3875rem 24.825rem no-repeat;
  }
}
.header__nav.active {
  display: block;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.header__nav > ul {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 1279px) {
  .header__nav > ul {
    max-width: 50rem;
    flex-direction: column;
    margin-inline: auto;
  }
}
.header__nav > ul > li:first-of-type {
  margin-right: 1.875rem;
}
@media screen and (max-width: 1279px) {
  .header__nav > ul > li:first-of-type {
    margin: 0 0 2.5rem 0;
    width: 100%;
  }
}
.header__nav > ul > li:nth-of-type(2) {
  margin-right: 4.891875rem;
}
@media screen and (max-width: 1279px) {
  .header__nav > ul > li:nth-of-type(2) {
    width: 100%;
    margin: 0 0 2.5rem 0;
  }
}
.header__nav > ul > li:nth-of-type(3) {
  margin-right: 1.875rem;
}
@media screen and (max-width: 1279px) {
  .header__nav > ul > li:nth-of-type(3) {
    margin: 0 0 1.875rem 0;
  }
}
@media screen and (max-width: 1279px) {
  .header__nav > ul > li:nth-of-type(4) {
    margin: 0 0 1.875rem 0;
  }
}
@media screen and (max-width: 1279px) {
  .header__nav > ul > li:first-of-type, .header__nav > ul > li:nth-of-type(2) {
    display: flex;
    flex-direction: column;
    gap: 1.1875rem;
  }
}
.header__nav > ul > li:first-of-type > a, .header__nav > ul > li:nth-of-type(2) > a {
  display: block;
  width: 100%;
  height: 100%;
  color: #ffffff;
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1279px) {
  .header__nav > ul > li:first-of-type > a, .header__nav > ul > li:nth-of-type(2) > a {
    color: #333333;
    font: 700 1.25rem/1.8125rem "Noto Sans JP", sans-serif;
    position: relative;
  }
}
.header__nav > ul > li:first-of-type > a::after, .header__nav > ul > li:nth-of-type(2) > a::after {
  display: none;
}
@media screen and (max-width: 1279px) {
  .header__nav > ul > li:first-of-type > a::after, .header__nav > ul > li:nth-of-type(2) > a::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0.6875rem;
    display: inline-block;
    width: 0.41625rem;
    aspect-ratio: 6.66/11.84;
    background: url("../img/angle-right.svg") center/cover no-repeat;
    content-visibility: auto;
    contain-intrinsic-size: 0.41625rem 0.74rem;
  }
}
@media screen and (max-width: 1279px) {
  .header__nav > ul > li:first-of-type > ul, .header__nav > ul > li:nth-of-type(2) > ul {
    width: 100%;
    border-top: 0.0625rem solid #dddddd;
    padding-top: 2.0625rem;
    display: flex;
    flex-direction: column;
    gap: 1.20875rem;
  }
}
.header__nav > ul > li:first-of-type > ul > li a, .header__nav > ul > li:nth-of-type(2) > ul > li a {
  display: block;
  width: fit-content;
  height: 100%;
  padding-inline: 0 2.54125rem;
  color: #8b8888;
  font: 700 1rem/1.4375rem "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
  white-space: nowrap;
  position: relative;
}
@media screen and (max-width: 366px) {
  .header__nav > ul > li:first-of-type > ul > li a, .header__nav > ul > li:nth-of-type(2) > ul > li a {
    padding-inline: 0 1.75rem;
  }
}
.header__nav > ul > li:first-of-type > ul > li a::after, .header__nav > ul > li:nth-of-type(2) > ul > li a::after {
  display: none;
}
@media screen and (max-width: 1279px) {
  .header__nav > ul > li:first-of-type > ul > li a::after, .header__nav > ul > li:nth-of-type(2) > ul > li a::after {
    content: "";
    position: absolute;
    right: 0;
    top: 0.40625rem;
    display: inline-block;
    width: 0.41625rem;
    aspect-ratio: 6.66/11.84;
    background: url("../img/angle-right.svg") center/cover no-repeat;
    content-visibility: auto;
    contain-intrinsic-size: 0.41625rem 0.74rem;
  }
}
@media screen and (max-width: 1279px) {
  .header__nav > ul > li:last-of-type {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.875rem;
  }
}
.header__nav > ul > li:last-of-type > a:first-of-type {
  display: block;
  width: 100%;
  max-width: 20.875rem;
  height: 5.6875rem;
  aspect-ratio: 334/91;
  border-radius: 0.25rem;
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
  text-align: center;
  white-space: nowrap;
  color: #fffcf5;
  padding: 2.8rem clamp(0.75rem, -0.548rem + 6.49vw, 2.563rem) 1.675rem;
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url("../img/link-corporate.webp") center/contain no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 20.875rem 5.6875rem;
  position: relative;
}
@media screen and (max-width: 366px) {
  .header__nav > ul > li:last-of-type > a:first-of-type {
    background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url("../img/link-corporate.webp") center/cover no-repeat;
  }
}
.header__nav > ul > li:last-of-type > a:first-of-type::before {
  content: "Corporate";
  position: absolute;
  top: 30.86%;
  left: 50%;
  transform: translateX(-50%);
  color: #fffcf5;
  font: 700 0.625rem/1.3 "Josefin Sans", sans-serif;
  letter-spacing: 0.2em;
  text-align: center;
  text-transform: uppercase;
}
.header__nav > ul > li:last-of-type > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.1875rem;
}
.header__nav > ul > li:last-of-type > div > span {
  color: #333333;
  font: 600 0.75rem/1 "Josefin Sans", sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
  text-transform: uppercase;
}
.header__nav > ul > li:last-of-type > div > ul {
  display: flex;
  align-items: center;
  gap: 1.59375rem;
}
.header__nav > ul > li:last-of-type > div > ul > li:nth-of-type(2) img {
  margin-bottom: 0.0625rem;
}
.header__nav > ul > li:last-of-type > div > ul > li > a {
  display: block;
  width: 100%;
  height: 100%;
}
.header__nav > ul > li:last-of-type > div > ul > li > a > img {
  object-fit: cover;
  object-position: center center;
}
.header__nav > ul > li:last-of-type > a:last-of-type {
  font: 500 0.875rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
  text-decoration: underline;
  text-align: center;
}
.header__nav--sp {
  display: none;
}
@media screen and (max-width: 1279px) {
  .header__nav--sp {
    display: block;
  }
}
.header__nav.page-lower > ul li:first-of-type a, .header__nav.page-lower > ul li:nth-of-type(2) a {
  color: #333333;
}

.top-fv {
  display: block;
  width: 100%;
  min-height: 100vh;
  min-height: 100dvh;
  position: relative;
}
.top-fv__text {
  width: 100%;
  aspect-ratio: 1280/332;
  background: linear-gradient(360deg, rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 100%);
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .top-fv__text {
    aspect-ratio: 375/312;
    padding-inline: 1.25rem;
  }
}
.top-fv__text > p {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: flex-end;
  gap: 1.4375rem;
}
@media screen and (max-width: 1279px) {
  .top-fv__text > p {
    gap: 1.797%;
  }
}
@media screen and (max-width: 767px) {
  .top-fv__text > p {
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 0;
  }
}
.top-fv__text > p > span:first-of-type {
  color: #fffcf5;
  font: 600 14.475625rem/1 "Josefin Sans", sans-serif;
  letter-spacing: -0.05em;
  text-transform: uppercase;
  margin: 0 0 -0.875rem 2.42%;
}
@media screen and (max-width: 1279px) {
  .top-fv__text > p > span:first-of-type {
    font-size: clamp(7.3rem, -3.485rem + 22.47vw, 14.476rem);
    margin: 0 0 calc(-7px + 21 * (1279px - 100vw) / 511) 2.42%;
  }
}
@media screen and (max-width: 767px) {
  .top-fv__text > p > span:first-of-type {
    margin: 0 0 -0.1875rem -0.3125rem;
    font: 600 7.3rem/1 "Josefin Sans", sans-serif;
  }
}
.top-fv__text > p > span:first-of-type > span {
  font: 600 12.063125rem/1 "Josefin Sans", sans-serif;
  letter-spacing: 0;
  text-transform: uppercase;
}
@media screen and (max-width: 1279px) {
  .top-fv__text > p > span:first-of-type > span {
    font-size: clamp(6.084rem, -2.959rem + 18.84vw, 12.101rem);
  }
}
@media screen and (max-width: 767px) {
  .top-fv__text > p > span:first-of-type > span {
    font: 600 6.08375rem/1 "Josefin Sans", sans-serif;
  }
}
.top-fv__text > p > span:last-of-type {
  color: #fffcf5;
  font: 400 5rem/1.1 "Zen Kaku Gothic New", sans-serif;
  letter-spacing: 0.0893em;
  margin-bottom: 2.5625rem;
  white-space: nowrap;
  opacity: 1;
}
@media screen and (max-width: 1279px) {
  .top-fv__text > p > span:last-of-type {
    font-size: clamp(2.759rem, -0.608rem + 7.02vw, 5rem);
  }
}
@media screen and (max-width: 767px) {
  .top-fv__text > p > span:last-of-type {
    font: 400 clamp(2.25rem, 1.886rem + 1.82vw, 2.759rem)/1.1 "Zen Kaku Gothic New", sans-serif;
    margin-bottom: 3.5625rem;
    letter-spacing: 0.09em;
  }
}

.copy {
  width: fit-content;
  position: fixed;
  top: 18.8125rem;
  right: 2.1875rem;
  z-index: 99;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .copy {
    display: none;
  }
}
.copy > small {
  color: #ffffff;
  font: 600 0.75rem/1 "Josefin Sans", sans-serif;
  letter-spacing: 0.1em;
}

.poem {
  width: 100%;
  background-color: #fffcf5;
  display: flex;
  flex-direction: column;
  gap: 2.75rem;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 767px) {
  .poem {
    gap: 3.125rem;
  }
}
.poem::before {
  content: "";
  width: 58.53%;
  max-width: 46.828125rem;
  aspect-ratio: 749.25/647.03;
  position: absolute;
  top: 7.875rem;
  left: 57.34%;
  background: url("../img/top-poem-bg.svg") center/contain no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 46.828125rem 40.439375rem;
}
@media screen and (max-width: 767px) {
  .poem::before {
    width: 29.8925rem;
    top: 27.5%;
    left: unset;
    right: -9.33rem;
  }
}
@media screen and (max-width: 366px) {
  .poem::before {
    width: 127%;
    top: 24%;
    left: 12.26%;
    right: unset;
  }
}
.poem__inner {
  width: 81.25%;
  height: auto;
  margin-inline: auto;
  padding-block: 7.875rem 0;
  position: relative;
}
@media screen and (max-width: 1279px) {
  .poem__inner {
    min-width: 46.625rem;
  }
}
@media screen and (max-width: 767px) {
  .poem__inner {
    min-width: unset;
    width: 100%;
    margin-inline: 0;
    padding-block: 5rem 0;
  }
}
.poem__inner > p {
  width: 100%;
  height: auto;
  max-width: 46.625rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .poem__inner > p {
    max-width: 34.625rem;
  }
}
.poem__inner > p > span {
  position: relative;
  color: #b2b2b2;
  font: 500 1.875rem/2 "Zen Kaku Gothic New", sans-serif;
  letter-spacing: 0.05em;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .poem__inner > p > span {
    white-space: unset;
    font: 500 1.0625rem/2 "Zen Kaku Gothic New", sans-serif;
  }
}
.poem__inner > p > span:nth-of-type(3), .poem__inner > p > span:nth-of-type(6), .poem__inner > p > span:nth-of-type(11), .poem__inner > p > span:nth-of-type(14) {
  margin-bottom: 8.35%;
}
@media screen and (max-width: 767px) {
  .poem__inner > p > span:nth-of-type(3), .poem__inner > p > span:nth-of-type(7), .poem__inner > p > span:nth-of-type(11), .poem__inner > p > span:nth-of-type(14) {
    margin-bottom: 10%;
  }
}
@media screen and (max-width: 366px) {
  .poem__inner > p > span {
    font: 500 0.875rem/2 "Zen Kaku Gothic New", sans-serif;
  }
}
.poem__inner > p > span::after {
  content: attr(data-text);
  display: inline-block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  color: #1a1a1a;
  font: 500 1.875rem/2 "Zen Kaku Gothic New", sans-serif;
  letter-spacing: 0.05em;
  white-space: nowrap;
  clip-path: inset(0 0 var(--clipY, 100%) 0);
}
@media screen and (max-width: 767px) {
  .poem__inner > p > span::after {
    white-space: unset;
    font: 500 1.0625rem/2 "Zen Kaku Gothic New", sans-serif;
  }
}
.poem__inner > p > span::after:nth-of-type(6), .poem__inner > p > span::after:nth-of-type(11), .poem__inner > p > span::after:nth-of-type(14) {
  margin-bottom: 8.35%;
}
@media screen and (max-width: 767px) {
  .poem__inner > p > span::after:nth-of-type(6), .poem__inner > p > span::after:nth-of-type(11), .poem__inner > p > span::after:nth-of-type(14) {
    margin-bottom: 0;
  }
}
.poem__inner > p > span::after:nth-of-type(7), .poem__inner > p > span::after:nth-of-type(11), .poem__inner > p > span::after:nth-of-type(14) {
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .poem__inner > p > span::after:nth-of-type(7), .poem__inner > p > span::after:nth-of-type(11), .poem__inner > p > span::after:nth-of-type(14) {
    margin-bottom: 10%;
  }
}
.poem__inner > p > span::after:nth-of-type(3) {
  margin-bottom: 8.35%;
}
@media screen and (max-width: 767px) {
  .poem__inner > p > span::after:nth-of-type(3) {
    margin-bottom: 10%;
  }
}
@media screen and (max-width: 366px) {
  .poem__inner > p > span::after {
    font: 500 0.875rem/2 "Zen Kaku Gothic New", sans-serif;
  }
}
.poem__inner--pc, .poem__inner--pc::after {
  display: block;
}
@media screen and (max-width: 767px) {
  .poem__inner--pc, .poem__inner--pc::after {
    display: none;
  }
}
.poem__inner--sp, .poem__inner--sp::after {
  display: none;
}
@media screen and (max-width: 767px) {
  .poem__inner--sp, .poem__inner--sp::after {
    display: block;
  }
}
.poem__bottom {
  width: 100%;
  height: auto;
  aspect-ratio: 1280/730;
  padding-top: 0.3125rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .poem__bottom {
    padding-top: 0;
    aspect-ratio: 375/544;
  }
}
.poem__bottom::after {
  content: "";
  width: 100%;
  height: 75.34%;
  position: absolute;
  top: -0.3125rem;
  left: 0;
  right: 0;
  background: linear-gradient(180deg, #fffcf5 0%, rgba(255, 252, 245, 0) 100%);
}
@media screen and (max-width: 767px) {
  .poem__bottom::after {
    height: 100%;
  }
}
.poem__bottom > picture img {
  width: 100%;
  height: 100%;
  aspect-ratio: 1280/730;
  object-fit: cover;
}
@media screen and (max-width: 767px) {
  .poem__bottom > picture img {
    aspect-ratio: 375/544;
  }
}

.top-people {
  width: 100%;
  height: auto;
  background-color: #fffcf5;
  border-radius: 3.125rem 3.125rem 0 0;
  position: relative;
  top: -6.25rem;
  margin-bottom: -6.25rem;
}
@media screen and (max-width: 767px) {
  .top-people {
    border-radius: 1.25rem 1.25rem 0 0;
    top: -3.125rem;
    margin-bottom: -3.125rem;
  }
}
.top-people__text {
  width: 81.25%;
  margin-inline: auto;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  padding-block: 5.625rem 3.75rem;
}
@media screen and (max-width: 767px) {
  .top-people__text {
    width: 100%;
    flex-direction: column;
    justify-content: flex-start;
    gap: 1.4375rem;
    padding-block: 2.375rem 2.8125rem;
  }
}
.top-people__text > h2 {
  min-width: 11rem;
}
.top-people__text > div {
  width: 71%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media screen and (max-width: 1279px) {
  .top-people__text > div {
    width: 68%;
  }
}
@media screen and (max-width: 767px) {
  .top-people__text > div {
    width: 100%;
  }
}
.top-people__text > div > p {
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .top-people__text > div > p {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.top-people__link {
  width: 100%;
  margin-inline: auto;
  display: flex;
  justify-content: center;
  gap: 1.25%;
  margin-bottom: 5.664375rem;
}
@media screen and (max-width: 767px) {
  .top-people__link {
    width: 97.0149%;
    flex-direction: column;
    align-items: center;
    gap: 0.625rem;
    margin-bottom: 3.625rem;
  }
}
.top-people__link > li:first-of-type {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url("../img/society1.webp") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 40.625rem 14.5625rem;
}
.top-people__link > li:nth-of-type(2) {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url("../img/governance1.webp") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 40.625rem 14.5625rem;
}
.top-people__link > li:last-of-type {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url("../img/governance2.webp") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 40.625rem 14.5625rem;
}
.top-people__img {
  width: 90.625%;
  margin: 0 auto 0 0;
}
@media screen and (max-width: 767px) {
  .top-people__img {
    width: 100%;
  }
}
.top-people__img > picture img {
  padding-inline: 0 1.25rem;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.top-company {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.75rem;
  padding-block: 6.25rem;
  background-color: #fffcf5;
}
@media screen and (max-width: 767px) {
  .top-company {
    gap: 2.5rem;
    padding-block: 3.875rem 4.6875rem;
  }
}
.top-company__text {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .top-company__text {
    width: 100%;
    flex-direction: column;
    justify-content: flex-start;
    gap: 1.4375rem;
  }
}
.top-company__text > h2 {
  min-width: 13.75rem;
}
.top-company__text > div {
  width: 71%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media screen and (max-width: 1279px) {
  .top-company__text > div {
    width: 60%;
  }
}
@media screen and (max-width: 767px) {
  .top-company__text > div {
    width: 100%;
  }
}
.top-company__text > div > p {
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .top-company__text > div > p {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.top-company__link {
  width: 100%;
  margin-inline: auto;
  display: flex;
  justify-content: center;
  gap: 1.25%;
}
@media screen and (max-width: 767px) {
  .top-company__link {
    width: 97.0149%;
    flex-direction: column;
    align-items: center;
    gap: 0.625rem;
  }
}
.top-company__link > li:first-of-type {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url("../img/society2.webp") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 40.625rem 14.5625rem;
}
.top-company__link > li:nth-of-type(2) {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url("../img/governance3.webp") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 40.625rem 14.5625rem;
}
.top-company__link > li:last-of-type {
  background: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url("../img/mvv.webp") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 40.625rem 14.5625rem;
}

.people {
  width: 100%;
  padding-block: 10.5625rem 7.0625rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .people {
    padding-block: 8.9375rem 5rem;
  }
}
.people__top {
  width: 81.25%;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  margin-bottom: 7.4375rem;
}
@media screen and (max-width: 767px) {
  .people__top {
    width: 100%;
    margin-bottom: 6.625rem;
  }
}
.people__top > h1 {
  margin-bottom: 1.5625rem;
}
.people__top > nav.breadcrumb {
  margin-bottom: 4.125rem;
}
@media screen and (max-width: 767px) {
  .people__top > nav.breadcrumb {
    margin-bottom: 1.4375rem;
  }
}
.people__top--text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.people__top--text > p {
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .people__top--text > p {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
  .people__top--text > p:first-of-type > br {
    display: none;
  }
}
.people__center {
  width: 100%;
  background-color: #1b1d22;
  padding-block: 7.625rem 0;
}
@media screen and (max-width: 767px) {
  .people__center {
    padding-block: 3.625rem 0;
  }
}
.people__center--figures {
  width: 81.25%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-inline: auto;
}
@media screen and (max-width: 1279px) {
  .people__center--figures {
    align-items: flex-start;
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures {
    width: 100%;
  }
}
.people__center--figures > div {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 3.4375rem;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > div {
    flex-direction: column;
    justify-content: flex-start;
    gap: 1.5rem;
    margin-bottom: 2.1875rem;
  }
}
.people__center--figures > div > h2 {
  width: 40.5%;
  min-width: 25.3125rem;
  word-break: keep-all;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > div > h2 {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > div > h2 {
    min-width: unset;
  }
}
.people__center--figures > div > div {
  width: 53.7%;
  margin-top: 3.4375rem;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > div > div {
    width: 100%;
    margin-top: 0;
  }
}
.people__center--figures > div > div > p {
  color: #f5f0e5;
  font: 500 0.9375rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .people__center--figures > div > div > p {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.people__center--figures > ul {
  width: 100%;
  columns: 2;
  column-gap: 4%;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > ul {
    column-gap: 2%;
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul {
    columns: unset;
    column-gap: unset;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 2.1875rem;
  }
  .people__center--figures > ul.show li {
    display: flex;
  }
}
.people__center--figures > ul > li {
  width: 100%;
  height: min-content;
  padding-block: 3.125rem;
  border-radius: 1.25rem;
  background-color: #2e3138;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 0.8125rem;
  margin-bottom: 2.5rem;
  color: #f5f0e5;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > ul > li {
    margin-bottom: clamp(0.73rem, -0.049rem + 1.62vw, 1.248rem);
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li {
    width: 100%;
    max-width: 30rem;
    margin-inline: auto;
    gap: 0.8125rem;
    margin-bottom: 0;
    padding-block: 2.1875rem;
    border-radius: 0.875rem;
    display: none;
  }
  .people__center--figures > ul > li:first-of-type, .people__center--figures > ul > li:nth-of-type(2), .people__center--figures > ul > li:nth-of-type(3), .people__center--figures > ul > li:nth-of-type(6), .people__center--figures > ul > li:nth-of-type(7) {
    display: flex;
  }
  .people__center--figures > ul > li:first-of-type {
    order: 1;
  }
  .people__center--figures > ul > li:nth-of-type(2) {
    order: 3;
  }
  .people__center--figures > ul > li:nth-of-type(3) {
    order: 5;
  }
  .people__center--figures > ul > li:nth-of-type(4) {
    order: 7;
  }
  .people__center--figures > ul > li:nth-of-type(5) {
    order: 9;
  }
  .people__center--figures > ul > li:nth-of-type(6) {
    order: 2;
  }
  .people__center--figures > ul > li:nth-of-type(7) {
    order: 4;
  }
  .people__center--figures > ul > li:nth-of-type(8) {
    order: 6;
  }
  .people__center--figures > ul > li:last-of-type {
    order: 8;
  }
}
.people__center--figures > ul > li > p:first-of-type {
  font: 700 2.75rem/4rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  text-align: center;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > ul > li > p:first-of-type {
    font-size: clamp(1.875rem, 0.56rem + 2.74vw, 2.75rem);
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li > p:first-of-type {
    font: 700 1.875rem/2.6875rem "Noto Sans JP", sans-serif;
  }
}
.people__center--figures > ul > li:first-of-type p:last-of-type, .people__center--figures > ul > li:nth-of-type(3) p:last-of-type, .people__center--figures > ul > li:nth-of-type(4) p:last-of-type, .people__center--figures > ul > li:nth-of-type(5) p:last-of-type, .people__center--figures > ul > li:nth-of-type(6) p:nth-of-type(2), .people__center--figures > ul > li:last-of-type p:last-of-type {
  font: 700 6.25rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > ul > li:first-of-type p:last-of-type, .people__center--figures > ul > li:nth-of-type(3) p:last-of-type, .people__center--figures > ul > li:nth-of-type(4) p:last-of-type, .people__center--figures > ul > li:nth-of-type(5) p:last-of-type, .people__center--figures > ul > li:nth-of-type(6) p:nth-of-type(2), .people__center--figures > ul > li:last-of-type p:last-of-type {
    font-size: clamp(4.375rem, 1.557rem + 5.87vw, 6.25rem);
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li:first-of-type p:last-of-type, .people__center--figures > ul > li:nth-of-type(3) p:last-of-type, .people__center--figures > ul > li:nth-of-type(4) p:last-of-type, .people__center--figures > ul > li:nth-of-type(5) p:last-of-type, .people__center--figures > ul > li:nth-of-type(6) p:nth-of-type(2), .people__center--figures > ul > li:last-of-type p:last-of-type {
    font: 700 4.375rem/1 "Noto Sans JP", sans-serif;
  }
}
.people__center--figures > ul > li:first-of-type p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(3) p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(4) p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(5) p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(6) p:nth-of-type(2) > span, .people__center--figures > ul > li:last-of-type p:last-of-type > span {
  font: 500 3.625rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > ul > li:first-of-type p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(3) p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(4) p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(5) p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(6) p:nth-of-type(2) > span, .people__center--figures > ul > li:last-of-type p:last-of-type > span {
    font-size: clamp(2.5rem, 0.809rem + 3.52vw, 3.625rem);
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li:first-of-type p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(3) p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(4) p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(5) p:last-of-type > span, .people__center--figures > ul > li:nth-of-type(6) p:nth-of-type(2) > span, .people__center--figures > ul > li:last-of-type p:last-of-type > span {
    font: 500 2.5rem/1 "Noto Sans JP", sans-serif;
  }
}
.people__center--figures > ul > li:nth-of-type(2) p:last-of-type {
  width: 71.1%;
  aspect-ratio: 341/165.97;
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li:nth-of-type(2) p:last-of-type {
    width: 83.88%;
  }
}
.people__center--figures > ul > li:nth-of-type(2) p:last-of-type > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.people__center--figures > ul > li:nth-of-type(5) p:last-of-type {
  white-space: nowrap;
}
.people__center--figures > ul > li:nth-of-type(6) p:nth-of-type(3) {
  font: 700 1rem/1.2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
  margin-top: 1.6875rem;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > ul > li:nth-of-type(6) p:nth-of-type(3) {
    max-width: 17.5rem;
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li:nth-of-type(6) p:nth-of-type(3) {
    max-width: unset;
    font: 700 0.75rem/1.2 "Noto Sans JP", sans-serif;
    margin-top: 1.0625rem;
  }
}
.people__center--figures > ul > li:nth-of-type(7) p:last-of-type {
  width: 72.08%;
  margin-inline: 6.04% auto;
  aspect-ratio: 346/305;
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li:nth-of-type(7) p:last-of-type {
    width: 81%;
    margin-inline: 0 auto;
  }
}
.people__center--figures > ul > li:nth-of-type(7) p:last-of-type > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.people__center--figures > ul > li:nth-of-type(8) p:last-of-type {
  width: 69.17%;
  min-width: 14.375rem;
  display: inline-block;
  white-space: nowrap;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > ul > li:nth-of-type(8) p:last-of-type {
    width: 73%;
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li:nth-of-type(8) p:last-of-type {
    width: 14.375rem;
  }
}
.people__center--figures > ul > li:nth-of-type(8) p:last-of-type > span:first-of-type {
  font: 700 6.25rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > ul > li:nth-of-type(8) p:last-of-type > span:first-of-type {
    font-size: clamp(4.375rem, 1.557rem + 5.87vw, 6.25rem);
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li:nth-of-type(8) p:last-of-type > span:first-of-type {
    font: 700 4.375rem/1 "Noto Sans JP", sans-serif;
  }
}
.people__center--figures > ul > li:nth-of-type(8) p:last-of-type > span:last-of-type {
  text-transform: uppercase;
  font: 500 3.625rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > ul > li:nth-of-type(8) p:last-of-type > span:last-of-type {
    font-size: clamp(2.5rem, 0.809rem + 3.52vw, 3.625rem);
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li:nth-of-type(8) p:last-of-type > span:last-of-type {
    font: 500 2.5rem/1 "Noto Sans JP", sans-serif;
  }
}
.people__center--figures > ul > li:nth-of-type(8) p:last-of-type::before {
  content: "";
  display: inline-block;
  width: 29.9%;
  height: auto;
  aspect-ratio: 1/1;
  margin: 0 0.5625rem -0.46875rem 0;
  background: url("../img/clock.svg") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 6.1875rem 6.1875rem;
}
@media screen and (max-width: 1279px) {
  .people__center--figures > ul > li:nth-of-type(8) p:last-of-type::before {
    width: 32%;
    max-width: 6.1875rem;
  }
}
@media screen and (max-width: 767px) {
  .people__center--figures > ul > li:nth-of-type(8) p:last-of-type::before {
    min-width: 4.33rem;
    margin: 0 0.5625rem -0.3125rem 0;
  }
}
.people__bottom {
  position: relative;
  top: -0.0625rem;
  left: 0;
  right: 0;
  z-index: 1;
  margin-bottom: -0.0625rem;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 3.1875rem;
  padding-block: 12.9375rem 0;
  background-color: #1b1d22;
}
@media screen and (max-width: 767px) {
  .people__bottom {
    padding-block: 4.375rem 0;
    gap: 2.1875rem;
  }
}
.people__bottom > h2 {
  width: 81.25%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .people__bottom > h2 {
    margin: 0;
    width: 100%;
  }
}
.people__bottom > div {
  display: flex;
  flex-direction: column;
}
.people__bottom > div > ul {
  width: 81.25%;
  margin-inline: auto;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .people__bottom > div > ul {
    width: 100%;
    margin-inline: 0;
    gap: 0.3125rem;
  }
}
.people__bottom > div > div {
  width: 100%;
  padding-block: 6.25rem;
  background-color: #4b505e;
  position: relative;
  top: -0.0625rem;
  left: 0;
  right: 0;
  margin-bottom: -0.0625rem;
}
@media screen and (max-width: 767px) {
  .people__bottom > div > div {
    padding-block: 2.8125rem;
  }
}
.people__bottom--tab-list {
  display: grid;
  place-items: center;
  color: #f5f0e5;
  text-align: center;
  letter-spacing: 0.1em;
}
.people__bottom--tab-list:first-of-type {
  width: 28%;
  aspect-ratio: 280/60;
  border-radius: 0.4375rem 0.4375rem 0 0;
  background-color: #676767;
  font: 700 1.125rem/1 "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 767px) {
  .people__bottom--tab-list:first-of-type {
    width: 43.28%;
    aspect-ratio: 145/38;
    border-radius: 0.625rem 0.625rem 0 0;
    font: 700 0.875rem/1 "Noto Sans JP", sans-serif;
  }
}
.people__bottom--tab-list:first-of-type.current {
  background-color: #4b505e;
  width: 32%;
  aspect-ratio: 320/80;
  font: 700 1.375rem/1 "Noto Sans JP", sans-serif;
  border-radius: 0.625rem 0.625rem 0 0;
}
@media screen and (max-width: 767px) {
  .people__bottom--tab-list:first-of-type.current {
    width: 43.28%;
    aspect-ratio: 145/50;
    font: 700 0.875rem/1 "Noto Sans JP", sans-serif;
  }
}
.people__bottom--tab-list:last-of-type {
  width: 28%;
  aspect-ratio: 280/60;
  border-radius: 0.4375rem 0.4375rem 0 0;
  background-color: #676767;
  font: 700 1.125rem/1 "Noto Sans JP", sans-serif;
}
@media screen and (max-width: 767px) {
  .people__bottom--tab-list:last-of-type {
    width: 43.28%;
    aspect-ratio: 145/38;
    font: 700 0.875rem/1 "Noto Sans JP", sans-serif;
    border-radius: 0.625rem 0.625rem 0 0;
  }
}
.people__bottom--tab-list:last-of-type.current {
  font: 700 1.375rem/1 "Noto Sans JP", sans-serif;
  background-color: #4b505e;
  width: 32%;
  aspect-ratio: 320/80;
  border-radius: 0.625rem 0.625rem 0 0;
}
@media screen and (max-width: 767px) {
  .people__bottom--tab-list:last-of-type.current {
    width: 43.28%;
    aspect-ratio: 145/50;
    font: 700 0.875rem/1 "Noto Sans JP", sans-serif;
  }
}
.people__bottom--content {
  width: 81.25%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .people__bottom--content {
    width: 100%;
    margin-inline: 0;
  }
}
.people__bottom--content#benefits {
  display: none;
}
.people__bottom--content#benefits.current {
  display: block;
}
.people__bottom--content#benefits > ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  column-gap: 4%;
  row-gap: 4.0625rem;
}
.people__bottom--content#benefits > ul > li {
  width: 48%;
  display: flex;
  align-items: flex-start;
  gap: 4.17%;
}
@media screen and (max-width: 767px) {
  .people__bottom--content#benefits > ul > li {
    width: 100%;
    gap: 3.88%;
  }
}
.people__bottom--content#benefits > ul > li > div:first-of-type {
  width: 25.625%;
  aspect-ratio: 1/1;
  min-width: 4.0625rem;
  border-radius: 50vh;
  background-color: #fffcf5;
  display: grid;
  place-items: center;
}
@media screen and (max-width: 767px) {
  .people__bottom--content#benefits > ul > li > div:first-of-type {
    width: 19.4%;
  }
}
.people__bottom--content#benefits > ul > li > div:first-of-type > img {
  width: auto;
  height: 47.15%;
  object-fit: contain;
}
.people__bottom--content#benefits > ul > li > div:last-of-type {
  width: 70.2%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.8125rem;
  color: #f5f0e5;
}
@media screen and (max-width: 767px) {
  .people__bottom--content#benefits > ul > li > div:last-of-type {
    width: 76.72%;
    min-width: unset;
  }
}
.people__bottom--content#benefits > ul > li > div:last-of-type > h3 {
  font: 700 1.25rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1279px) {
  .people__bottom--content#benefits > ul > li > div:last-of-type > h3 {
    word-break: keep-all;
  }
}
.people__bottom--content#benefits > ul > li > div:last-of-type > p {
  font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
.people__bottom--content#training {
  display: none;
}
.people__bottom--content#training.current {
  display: block;
}
.people__bottom--content#training > ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  row-gap: 2.1875rem;
}
@media screen and (max-width: 767px) {
  .people__bottom--content#training > ul {
    flex-wrap: nowrap;
    justify-content: flex-start;
    flex-direction: column;
    gap: 1.875rem;
  }
}
.people__bottom--content#training > ul > li {
  width: 48.5%;
  background-color: #fffcf5;
  border-radius: 0.375rem;
  padding: 3.125rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.125rem;
}
@media screen and (max-width: 767px) {
  .people__bottom--content#training > ul > li {
    width: 100%;
    padding: 1.875rem;
  }
}
.people__bottom--content#training > ul > li:first-of-type p:first-of-type::before {
  content: "01";
}
.people__bottom--content#training > ul > li:nth-of-type(2) p:first-of-type::before {
  content: "02";
}
.people__bottom--content#training > ul > li:nth-of-type(3) p:first-of-type::before {
  content: "03";
}
.people__bottom--content#training > ul > li:last-of-type p:first-of-type::before {
  content: "04";
}
.people__bottom--content#training > ul > li > p:first-of-type {
  color: #333333;
  font: 600 0.875rem/1 "Josefin Sans", sans-serif;
  letter-spacing: 0.1em;
  padding-left: 1.625rem;
  position: relative;
}
.people__bottom--content#training > ul > li > p:first-of-type::before {
  content: "";
  display: inline-block;
  color: #b2b2b2;
  font: 600 0.75rem/1 "Josefin Sans", sans-serif;
  letter-spacing: 0.1em;
  position: absolute;
  top: -0.03125rem;
  left: 0;
}
.people__bottom--content#training > ul > li > h3 {
  color: #333333;
  font: 700 1.5rem/1.5 "Noto Sans JP", sans-serif;
  letter-spacing: 0;
}
.people__bottom--content#training > ul > li > p:last-of-type {
  color: #717171;
  font: 500 0.9375rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
.people__interview {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3.75rem;
  padding-block: 5.3125rem 6.25rem;
  background-color: #fffcf5;
}
@media screen and (max-width: 767px) {
  .people__interview {
    padding-block: 4.375rem 5rem;
    gap: 2.0625rem;
  }
}
.people__interview > h2 {
  width: 81.25%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .people__interview > h2 {
    width: 100%;
    margin-inline: 0;
  }
}

.company {
  width: 100%;
  padding-block: 10.5625rem 7.0625rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .company {
    padding-block: 8.9375rem 5rem;
  }
}
.company__top {
  width: 81.25%;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  margin-bottom: 7.4375rem;
}
@media screen and (max-width: 767px) {
  .company__top {
    width: 100%;
    margin-bottom: 4.875rem;
  }
}
.company__top > h1 {
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  .company__top > h1 {
    margin-bottom: 1.4375rem;
  }
}
.company__top > nav.breadcrumb {
  margin-bottom: 4.125rem;
}
@media screen and (max-width: 767px) {
  .company__top > nav.breadcrumb {
    margin-bottom: 1.4375rem;
  }
}
.company__top--text {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .company__top--text {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.company__center {
  position: relative;
  width: 100%;
  background-color: #1b1d22;
  padding-block: 7.625rem 21.0625rem;
}
@media screen and (max-width: 767px) {
  .company__center {
    padding-block: 3.625rem 10.9375rem;
  }
}
.company__center--reward {
  width: 81.25%;
  display: flex;
  flex-direction: column;
  margin-inline: auto;
  align-items: center;
  margin-bottom: 4.875rem;
}
@media screen and (max-width: 1279px) {
  .company__center--reward {
    align-items: flex-start;
    margin-bottom: 6.8125rem;
  }
}
@media screen and (max-width: 767px) {
  .company__center--reward {
    width: 100%;
  }
}
.company__center--reward > div:first-of-type {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin-bottom: 4.625rem;
}
@media screen and (max-width: 1279px) {
  .company__center--reward > div:first-of-type {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 1.5rem;
    margin-bottom: 2.5rem;
  }
}
.company__center--reward > div:first-of-type > h2 {
  width: 45.8%;
  min-width: 28.625rem;
  word-break: keep-all;
}
@media screen and (max-width: 767px) {
  .company__center--reward > div:first-of-type > h2 {
    width: 100%;
    min-width: 18.4375rem;
  }
}
.company__center--reward > div:first-of-type > div {
  width: 50.5%;
  margin-top: 3.125rem;
}
@media screen and (max-width: 1279px) {
  .company__center--reward > div:first-of-type > div {
    width: 100%;
    margin-top: 0;
  }
}
.company__center--reward > div:first-of-type > div > p {
  color: #f5f0e5;
  font: 500 0.9375rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .company__center--reward > div:first-of-type > div > p {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.company__center--reward > ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  column-gap: 4%;
  row-gap: 2.5rem;
}
@media screen and (max-width: 1279px) {
  .company__center--reward > ul {
    justify-content: flex-start;
    align-items: center;
  }
}
@media screen and (max-width: 767px) {
  .company__center--reward > ul {
    flex-wrap: nowrap;
    flex-direction: column;
    row-gap: 0.625rem;
  }
  .company__center--reward > ul.show li {
    display: flex;
  }
}
.company__center--reward > ul > li {
  width: 48%;
  height: 10rem;
  border-radius: 0.625rem;
  background-color: #2e3138;
  padding: 1.875rem 4%;
}
@media screen and (max-width: 1279px) {
  .company__center--reward > ul > li {
    max-width: 30rem;
    padding: 1.875rem 0 1.875rem clamp(0.875rem, -2.037rem + 6.07vw, 2.813rem);
  }
}
@media screen and (max-width: 767px) {
  .company__center--reward > ul > li {
    width: 100%;
    height: 6.5rem;
    max-width: 30rem;
    padding: 1.625rem 3.5% 1.125rem 3.5%;
    display: none;
  }
  .company__center--reward > ul > li:nth-child(-n+5) {
    display: flex;
  }
}
@media screen and (max-width: 1279px) {
  .company__center--reward > ul > li:nth-of-type(5) p img, .company__center--reward > ul > li:nth-of-type(6) p img {
    max-width: 54%;
  }
}
.company__center--reward > ul > li > p {
  width: 100%;
  height: 6.25rem;
}
@media screen and (max-width: 767px) {
  .company__center--reward > ul > li > p {
    height: 3.75rem;
  }
}
.company__center--reward > ul > li > p > img {
  display: block;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left;
}
@media screen and (max-width: 1279px) {
  .company__center--reward > ul > li > p > img {
    max-width: 93%;
  }
}
@media screen and (max-width: 767px) {
  .company__center--reward > ul > li > p > img {
    max-width: 100%;
  }
}
.company__center--action {
  position: relative;
  width: 81.25%;
  padding-top: 6.625rem;
}
@media screen and (max-width: 767px) {
  .company__center--action {
    width: 100%;
    margin-inline: 0;
    padding-top: 0;
  }
}
.company__center--action > div {
  display: flex;
  justify-content: space-between;
  margin-bottom: 4.375rem;
}
@media screen and (max-width: 1279px) {
  .company__center--action > div {
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 1.3125rem;
    margin-bottom: 3.3125rem;
  }
}
.company__center--action > div > h2 {
  width: 45.6%;
  max-width: 28.5rem;
  white-space: nowrap;
}
@media screen and (max-width: 1279px) {
  .company__center--action > div > h2 {
    width: 100%;
  }
}
.company__center--action > div > p {
  width: 47.2%;
  max-width: 29.5rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
@media screen and (max-width: 1279px) {
  .company__center--action > div > p {
    display: block;
    width: 100%;
    max-width: unset;
  }
}
.company__center--action > div > p > span {
  color: #f5f0e5;
  font: 500 0.9375rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .company__center--action > div > p > span {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.company__center--action > ul {
  width: 93.1%;
  margin-inline: auto 0;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3.75rem;
  padding-bottom: 4.25rem;
  position: relative;
}
.company__center--action > ul::before {
  position: absolute;
  top: 2.5rem;
  left: 0.29375rem;
  content: "";
  display: block;
  width: 0.0625rem;
  height: 100%;
  background-color: #ffffff;
}
@media screen and (max-width: 1279px) {
  .company__center--action > ul::before {
    top: 1.875rem;
  }
}
@media screen and (max-width: 767px) {
  .company__center--action > ul::before {
    top: 1.25rem;
    height: calc(100% + 3.125rem);
  }
}
@media screen and (max-width: 767px) {
  .company__center--action > ul {
    width: 98.21%;
    gap: 2.5rem;
    padding-bottom: 3.75rem;
  }
}
.company__center--action > ul > li {
  display: flex;
  align-items: center;
  gap: 3.1875rem;
}
@media screen and (max-width: 1279px) {
  .company__center--action > ul > li {
    flex-direction: column;
    align-items: flex-start;
    gap: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .company__center--action > ul > li {
    gap: 0.5rem;
  }
}
.company__center--action > ul > li > p:first-of-type {
  padding-left: 3.8125rem;
  color: #ffffff;
  font: 700 1.625rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  white-space: nowrap;
  position: relative;
}
.company__center--action > ul > li > p:first-of-type::before {
  left: 0;
  top: 45%;
  content: "";
  position: absolute;
  display: block;
  width: 0.625rem;
  height: 0.625rem;
  border-radius: 50vh;
  background: linear-gradient(168.73deg, #2991c6 0%, #3a5ca5 100%);
}
@media screen and (max-width: 767px) {
  .company__center--action > ul > li > p:first-of-type::before {
    top: 42.5%;
  }
}
@media screen and (max-width: 767px) {
  .company__center--action > ul > li > p:first-of-type {
    padding-left: 2.4375rem;
    font: 700 1.25rem/2 "Noto Sans JP", sans-serif;
  }
}
.company__center--action > ul > li > p:last-of-type {
  max-width: 39.5rem;
  color: #f5f0e5;
  font: 500 1.25rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1279px) {
  .company__center--action > ul > li > p:last-of-type {
    padding-left: 3.8125rem;
  }
  .company__center--action > ul > li > p:last-of-type > br {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .company__center--action > ul > li > p:last-of-type {
    padding-left: 2.4375rem;
    font: 500 1rem/2 "Noto Sans JP", sans-serif;
  }
}
.company__center > p {
  position: absolute;
  left: 50%;
  bottom: 11.3125rem;
  transform: translateX(-50%);
  width: 78.125%;
  max-height: 9.75rem;
  display: grid;
  place-content: center;
  place-items: center;
  gap: 0.0625rem;
  background: linear-gradient(168.73deg, #2991c6 0%, #3a5ca5 100%);
  border-radius: 0.625rem;
  padding: 1.8125rem 3.0625rem 2.09375rem;
}
@media screen and (max-width: 767px) {
  .company__center > p {
    width: 100%;
    max-height: 13.5625rem;
    margin-inline: 0;
    padding: 1.8125rem 1.25rem 2.125rem;
    gap: 0.4375rem;
    bottom: -2.625rem;
    z-index: 2;
  }
}
.company__center > p > span:first-of-type {
  color: #ffffff;
  font: 700 1.8125rem/3.25rem "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
}
.company__center > p > span:last-of-type {
  color: #f5f0e5;
  font: 500 1.25rem/2.5rem "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .company__center > p > span:last-of-type {
    font: 500 1rem/2 "Noto Sans JP", sans-serif;
  }
}
.company__bottom {
  position: relative;
  left: 0;
  top: -5.3125rem;
  z-index: 1;
  width: 100%;
  background-color: #fffcf5;
  padding-block: 7.4375rem 0;
  border-radius: 3.125rem;
}
@media screen and (max-width: 767px) {
  .company__bottom {
    top: 0.375rem;
    padding-block: 6.375rem 0;
    border-radius: 0;
  }
}
.company__mvv {
  width: 81.25%;
  margin-inline: auto;
  margin-bottom: 10rem;
}
@media screen and (max-width: 767px) {
  .company__mvv {
    width: 100%;
    margin-inline: 0;
    margin-bottom: 4.8125rem;
  }
}
.company__mvv > h2 {
  margin-bottom: 6rem;
}
@media screen and (max-width: 767px) {
  .company__mvv > h2 {
    margin-bottom: 4.3125rem;
  }
}
.company__mvv--mission {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.0625rem;
  padding-bottom: 3.25rem;
  margin-bottom: 4rem;
  border-bottom: 0.0625rem solid #d9d9d9;
}
@media screen and (max-width: 767px) {
  .company__mvv--mission {
    gap: 1.0625rem;
    padding-bottom: 2.75rem;
    margin-bottom: 2.75rem;
  }
}
.company__mvv--mission > p {
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .company__mvv--mission > p {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.company__mvv--vision {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.5rem;
  padding-bottom: 4.6875rem;
  margin-bottom: 4rem;
  border-bottom: 0.0625rem solid #d9d9d9;
}
@media screen and (max-width: 767px) {
  .company__mvv--vision {
    gap: 1.875rem;
    padding-bottom: 2.75rem;
    margin-bottom: 2.75rem;
  }
}
.company__mvv--vision > ul {
  width: 100%;
  columns: 2;
  column-gap: 3%;
}
@media screen and (max-width: 1279px) {
  .company__mvv--vision > ul {
    columns: unset;
    column-gap: unset;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 1.875rem;
  }
}
@media screen and (max-width: 767px) {
  .company__mvv--vision > ul {
    gap: 0.625rem;
  }
}
.company__mvv--vision > ul > li {
  width: 100%;
  height: min-content;
  padding: 1.875rem;
  border-radius: 0.625rem;
  background-color: #f5f0e5;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  margin-bottom: 1.875rem;
  color: #333333;
  font: 500 1.125rem/1.7 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1279px) {
  .company__mvv--vision > ul > li {
    margin-bottom: 0;
  }
  .company__mvv--vision > ul > li:first-of-type {
    order: 1;
  }
  .company__mvv--vision > ul > li:nth-of-type(2) {
    order: 3;
  }
  .company__mvv--vision > ul > li:nth-of-type(3) {
    order: 5;
  }
  .company__mvv--vision > ul > li:nth-of-type(4) {
    order: 2;
  }
  .company__mvv--vision > ul > li:nth-of-type(5) {
    order: 4;
  }
  .company__mvv--vision > ul > li:last-of-type {
    order: 6;
  }
}
@media screen and (max-width: 767px) {
  .company__mvv--vision > ul > li {
    width: 100%;
    padding: 1.0625rem 1.25rem;
    border-radius: 0.375rem;
    font: 500 1rem/2 "Noto Sans JP", sans-serif;
  }
}
.company__mvv--vision > ul > li::before {
  content: "";
  display: inline-block;
  width: 1.5625rem;
  height: 1.5625rem;
  aspect-ratio: 1/1;
  margin: 0.25rem 1.25rem 0 0;
  background: url("../img/vision-check.svg") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 1.5625rem 1.5625rem;
}
@media screen and (max-width: 767px) {
  .company__mvv--vision > ul > li::before {
    width: 1.25rem;
    height: 1.25rem;
    margin: 0.3125rem 0.625rem 0 0;
  }
}
.company__mvv--value {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 3.625rem;
}
@media screen and (max-width: 767px) {
  .company__mvv--value {
    gap: 2.75rem;
  }
}
.company__mvv--value > ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  column-gap: 2%;
  row-gap: 1.25rem;
}
@media screen and (max-width: 1279px) {
  .company__mvv--value > ul {
    max-width: 41.25rem;
    margin-inline: auto;
  }
}
@media screen and (max-width: 767px) {
  .company__mvv--value > ul {
    max-width: unset;
    flex-wrap: nowrap;
    flex-direction: column;
    gap: 1.25rem;
  }
}
.company__mvv--value > ul > li {
  width: 32%;
  min-width: 14.625rem;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding: 1.875rem;
  border-radius: 0.625rem;
  background-color: #f5f0e5;
}
@media screen and (max-width: 1279px) {
  .company__mvv--value > ul > li {
    width: 48.48%;
  }
}
@media screen and (max-width: 767px) {
  .company__mvv--value > ul > li {
    width: 100%;
  }
}
.company__mvv--value > ul > li > span {
  color: #8a8a8a;
  font: 700 0.75rem/1 "Josefin Sans", sans-serif;
  letter-spacing: 0.02em;
  margin-bottom: 0.1875rem;
}
.company__mvv--value > ul > li > h3 {
  color: #333333;
  font: 700 1.5rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  margin-bottom: 0.625rem;
}
.company__mvv--value > ul > li > p {
  color: #858585;
  font: 500 1.125rem/1.7 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .company__mvv--value > ul > li > p {
    font: 500 1rem/1.7 "Noto Sans JP", sans-serif;
  }
}

.interview {
  width: 100%;
  padding-block: 10.5625rem 9.375rem;
  display: flex;
  flex-direction: column;
  gap: 8.9375rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .interview {
    padding-block: 8.9375rem 4.375rem;
    gap: 4.0625rem;
  }
}
.interview__details {
  width: 81.25%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .interview__details {
    width: 100%;
  }
}
.interview__details > h1 {
  margin-bottom: 2.1875rem;
}
@media screen and (max-width: 767px) {
  .interview__details > h1 {
    margin-bottom: 4.5rem;
    white-space: nowrap;
  }
}
.interview__details > nav {
  margin-bottom: 3.75rem;
}
@media screen and (max-width: 767px) {
  .interview__details > nav {
    display: none;
  }
}
.interview__details > article {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.interview__details > article > h2 {
  font: 700 2rem/1.7 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  margin-bottom: 3.75rem;
}
@media screen and (max-width: 767px) {
  .interview__details > article > h2 {
    font: 700 1.125rem/1.7 "Noto Sans JP", sans-serif;
    margin-bottom: 2.25rem;
  }
}
.interview__details > article picture img, .interview__details > article img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  aspect-ratio: 2/1;
  margin-bottom: 3.75rem;
  border-radius: 1.25rem 1.25rem 0 0;
}
@media screen and (max-width: 767px) {
  .interview__details > article picture img, .interview__details > article img {
    aspect-ratio: 335/270;
    margin-bottom: 3.3125rem;
    border-radius: 0.625rem 0.625rem 0 0;
  }
}
.interview__details--data {
  width: fit-content;
  display: flex;
  align-items: center;
  gap: 3.125rem;
  margin-bottom: 2.25rem;
}
@media screen and (max-width: 767px) {
  .interview__details--data {
    margin-bottom: 2.1875rem;
  }
}
@media screen and (max-width: 366px) {
  .interview__details--data {
    margin-bottom: 1.75rem;
    gap: 1.5625rem;
  }
}
.interview__details--data > p {
  color: #333333;
  font: 700 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
.interview__details--text-top {
  width: 100%;
  display: flex;
  margin-bottom: 3.75rem;
}
@media screen and (max-width: 767px) {
  .interview__details--text-top {
    flex-direction: column;
    gap: 2.0625rem;
    margin-bottom: 2.0625rem;
  }
}
.interview__details--text-top > div {
  width: 50%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}
@media screen and (max-width: 767px) {
  .interview__details--text-top > div {
    width: 100%;
    gap: 1rem;
  }
}
.interview__details--text-top > div:first-of-type {
  padding-right: 1.1875rem;
  border-right: 0.125rem solid #d9d9d9;
}
@media screen and (max-width: 767px) {
  .interview__details--text-top > div:first-of-type {
    border: none;
    padding: 0;
  }
}
.interview__details--text-top > div:last-of-type {
  padding-left: 1.1875rem;
}
@media screen and (max-width: 767px) {
  .interview__details--text-top > div:last-of-type {
    padding: 0;
  }
}
.interview__details--text-top > div > h3 {
  color: #333333;
  font: 700 1.625rem/1.5 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .interview__details--text-top > div > h3 {
    font: 700 1.1875rem/1.5 "Noto Sans JP", sans-serif;
  }
}
.interview__details--text-top > div > p {
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .interview__details--text-top > div > p {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.interview__details--text-center {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  margin-bottom: 3.125rem;
}
@media screen and (max-width: 767px) {
  .interview__details--text-center {
    gap: 1rem;
    margin-bottom: 2.0625rem;
  }
}
.interview__details--text-center > h3 {
  color: #333333;
  font: 700 1.625rem/1.5 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .interview__details--text-center > h3 {
    font: 700 1.1875rem/1.5 "Noto Sans JP", sans-serif;
  }
}
.interview__details--text-center > p {
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .interview__details--text-center > p {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.interview__details--text-bottom {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  border-radius: 0.625rem;
  padding: 2.5rem;
  background-color: #f5f0e5;
}
@media screen and (max-width: 767px) {
  .interview__details--text-bottom {
    gap: 0.625rem;
    padding: 2.0625rem 1.25rem;
  }
}
.interview__details--text-bottom > h3 {
  color: #333333;
  font: 700 1.625rem/1.5 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .interview__details--text-bottom > h3 {
    font: 700 1.1875rem/1.5 "Noto Sans JP", sans-serif;
  }
}
.interview__details--text-bottom > p {
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
.interview__slider {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4.125rem;
}
@media screen and (max-width: 767px) {
  .interview__slider {
    gap: 2.5rem;
  }
}
.interview__slider > h2 {
  width: 81.25%;
}
@media screen and (max-width: 767px) {
  .interview__slider > h2 {
    width: 100%;
  }
}

.recruit {
  width: 100%;
  padding-block: 10.5625rem 8.75rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .recruit {
    padding-block: 8.9375rem 5rem;
  }
}
.recruit__inner {
  width: 81.25%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .recruit__inner {
    width: 100%;
  }
}
.recruit__inner > h1 {
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  .recruit__inner > h1 {
    margin-bottom: 1.3125rem;
  }
}
.recruit__inner > nav {
  margin-bottom: 5.875rem;
}
@media screen and (max-width: 767px) {
  .recruit__inner > nav {
    margin-bottom: 3.25rem;
  }
}
.recruit__works {
  width: 100%;
  background-color: #fffcf5;
  display: flex;
  flex-direction: column;
  gap: 2.75rem;
}
.recruit__works.top {
  padding-block: 7.875rem 6.25rem;
  background-color: #1b1d22;
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 767px) {
  .recruit__works.top {
    padding-block: 3.9375rem 4.625rem;
  }
}
.recruit__works.top::before {
  content: "";
  width: 58.53%;
  max-width: 46.828125rem;
  aspect-ratio: 749.25/647.03;
  position: absolute;
  top: 36%;
  left: -15.5625rem;
  background: url("../img/top-works-bg.svg") center/contain no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 46.828125rem 40.439375rem;
}
@media screen and (max-width: 1279px) {
  .recruit__works.top::before {
    left: -19.45%;
  }
}
@media screen and (max-width: 767px) {
  .recruit__works.top::before {
    display: none;
  }
}
.recruit__works.top .recruit__works--inner {
  width: 81.25%;
  margin-inline: auto;
  padding-block: 0;
}
@media screen and (max-width: 767px) {
  .recruit__works.top .recruit__works--inner {
    width: 100%;
    margin-inline: 0;
  }
}
.recruit__works.top .recruit__works--text > div p {
  color: #fffcf5;
}
.recruit__works.top .recruit__works--text > a {
  display: none;
}
.recruit__works.top .recruit__works--list h3, .recruit__works.top .recruit__works--list span {
  color: #ffffff;
}
.recruit__works--inner {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 767px) {
  .recruit__works--inner {
    width: 100%;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    gap: 3.75rem;
    padding-block: 4.625rem 0;
  }
}
.recruit__works--text {
  width: 36%;
  min-width: 13.75rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .recruit__works--text {
    width: 100%;
    gap: 1.4375rem;
  }
}
.recruit__works--text > h2 {
  max-width: 16.25rem;
}
@media screen and (max-width: 767px) {
  .recruit__works--text > h2 {
    max-width: unset;
  }
}
.recruit__works--text > div {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.recruit__works--text > div > p {
  color: #333333;
  font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
.recruit__works--text > a {
  color: #333333;
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  text-decoration: underline;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 1.25rem;
  position: relative;
}
.recruit__works--text > a::before {
  content: "";
  display: inline-block;
  border-top: 0.25rem solid transparent;
  border-bottom: 0.25rem solid transparent;
  border-left: 0.375rem solid #e5dfd6;
  position: absolute;
  top: 50%;
  right: 0.3125rem;
  transform: translateY(-50%);
}
.recruit__works--text > a::after {
  content: "";
  display: inline-block;
  width: 1.125rem;
  height: 1.125rem;
  border-radius: 50vh;
  background-color: #2991c6;
}
.recruit__works--list {
  width: 58.6%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  border-top: 0.0625rem solid #676767;
  margin-top: 1.25rem;
}
@media screen and (max-width: 1279px) {
  .recruit__works--list {
    width: 55.5%;
  }
}
@media screen and (max-width: 767px) {
  .recruit__works--list {
    width: 100%;
    margin-top: 0;
  }
}
.recruit__works--list > li {
  width: 100%;
  border-bottom: 0.0625rem solid #676767;
}
.recruit__works--list > li > a {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
  width: 100%;
  height: 100%;
  padding-block: 2.5rem;
}
@media screen and (max-width: 767px) {
  .recruit__works--list > li > a {
    padding-block: 1.875rem;
  }
}
.recruit__works--list > li > a > div {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.recruit__works--list > li > a > div > h3 {
  color: #333333;
  font: 700 1.625rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .recruit__works--list > li > a > div > h3 {
    font: 700 1.3125rem/1 "Noto Sans JP", sans-serif;
  }
}
.recruit__works--list > li > a > div > span {
  display: block;
  width: fit-content;
  min-width: 7rem;
  height: 2rem;
  padding-inline: 0.3125rem;
  padding-block: 0.0625rem 0.125rem;
  border-radius: 50vh;
  border: 0.0625rem solid #a6a6a6;
  color: #333333;
  font: 700 0.875rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
  text-align: center;
  margin-top: 0.75rem;
}
@media screen and (max-width: 767px) {
  .recruit__works--list > li > a > div > span {
    margin-top: 0;
  }
}
.recruit__works--list > li > a > p {
  width: 100%;
  color: #909090;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .recruit__works--list > li > a > p {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}

.single-recruit {
  width: 100%;
  padding-block: 15.8125rem 8.125rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .single-recruit {
    padding-block: 8.9375rem 5rem;
  }
}
.single-recruit__inner {
  width: 81.25%;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 767px) {
  .single-recruit__inner {
    width: 100%;
  }
}
.single-recruit__inner > h1 {
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  .single-recruit__inner > h1 {
    margin-bottom: 1.4375rem;
  }
}
.single-recruit__inner > nav.breadcrumb {
  margin-bottom: 7.3125rem;
}
@media screen and (max-width: 767px) {
  .single-recruit__inner > nav.breadcrumb {
    display: none;
  }
}
.single-recruit__details {
  display: flex;
  flex-direction: column;
  gap: 6.4375rem;
  margin-bottom: 6.0625rem;
}
@media screen and (max-width: 767px) {
  .single-recruit__details {
    gap: 3.875rem;
    margin-bottom: 3.4375rem;
  }
}
.single-recruit__details--top {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .single-recruit__details--top {
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    gap: 3.125rem;
  }
}
.single-recruit__details--top > h1 {
  margin-bottom: 1.5rem;
}
@media screen and (max-width: 767px) {
  .single-recruit__details--top > h1 {
    margin-bottom: 1.3125rem;
  }
}
.single-recruit__details--text {
  width: 36%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2.125rem;
}
@media screen and (max-width: 767px) {
  .single-recruit__details--text {
    width: 100%;
    gap: 1.5rem;
  }
}
.single-recruit__details--text > p {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  color: #333333;
  font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
.single-recruit__details--data {
  width: 59%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.125rem;
}
@media screen and (max-width: 767px) {
  .single-recruit__details--data {
    width: 100%;
  }
}
.single-recruit__details--data > ul {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.single-recruit__details--data > ul > li {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.6875rem;
}
.single-recruit__details--data > ul > li:first-of-type img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0.520625rem;
}
.single-recruit__details--data > ul > li > h2 {
  color: #333333;
  font: 700 1.875rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .single-recruit__details--data > ul > li > h2 {
    font: 700 1.25rem/1 "Noto Sans JP", sans-serif;
  }
}
.single-recruit__details--data > ul > li > p {
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .single-recruit__details--data > ul > li > p {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.single-recruit__details--data > ul > li > ul {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.single-recruit__details--data > ul > li > ul > li {
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .single-recruit__details--data > ul > li > ul > li {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.single-recruit__details--bottom {
  display: grid;
  grid-template-columns: 12rem calc(100% - 12rem);
  grid-template-rows: repeat(8, minmax(4.5rem, auto));
}
@media screen and (max-width: 767px) {
  .single-recruit__details--bottom {
    grid-template-columns: 7rem calc(100% - 7rem);
  }
}
.single-recruit__details--bottom > dt {
  padding: 1.3125rem 1.5rem;
  color: #333333;
  font: 500 1rem/1.75rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  white-space: nowrap;
  word-break: normal;
  background-color: #f5f0e5;
  border-top: 0.0625rem solid #dddddd;
}
@media screen and (max-width: 767px) {
  .single-recruit__details--bottom > dt {
    text-align: center;
    white-space: unset;
    word-break: keep-all;
  }
}
.single-recruit__details--bottom > dt:last-of-type {
  border-bottom: 0.0625rem solid #dddddd;
}
@media screen and (max-width: 767px) {
  .single-recruit__details--bottom > dt > span {
    display: block;
  }
}
.single-recruit__details--bottom > dd {
  color: #333333;
  font: 400 1rem/2rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  padding: 1.375rem 1.5rem;
  border-top: 0.0625rem solid #dddddd;
}
@media screen and (max-width: 366px) {
  .single-recruit__details--bottom > dd {
    padding: 1.375rem 10.5%;
  }
}
.single-recruit__details--bottom > dd:last-of-type {
  border-bottom: 0.0625rem solid #dddddd;
}
.single-recruit__other {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.875rem;
}
@media screen and (max-width: 767px) {
  .single-recruit__other {
    gap: 1.3125rem;
  }
}
.single-recruit__other > h3 {
  font: 700 1.625rem/1.5 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .single-recruit__other > h3 {
    font: 700 1.375rem/1.5 "Noto Sans JP", sans-serif;
  }
}
.single-recruit__other > ul {
  align-self: center;
  width: 100%;
  margin-inline: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  column-gap: 0.78125rem;
  row-gap: 1.270625rem;
}
@media screen and (max-width: 1279px) {
  .single-recruit__other > ul {
    column-gap: 1.5%;
  }
}
@media screen and (max-width: 767px) {
  .single-recruit__other > ul {
    flex-wrap: nowrap;
    flex-direction: column;
  }
}
.single-recruit__other > ul > li {
  width: 32.5%;
  content-visibility: auto;
  contain-intrinsic-size: 20.3125rem 7.291875rem;
}
@media screen and (max-width: 767px) {
  .single-recruit__other > ul > li {
    width: 100%;
    aspect-ratio: 325/116.7;
  }
}

.entry {
  width: 100%;
  padding-block: 10.5625rem 3.5rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .entry {
    padding-block: 8.9375rem 0.375rem;
  }
}
.entry__inner {
  width: 79.6875%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .entry__inner {
    width: 100%;
  }
}
.entry__inner > h1 {
  margin-bottom: 2.1875rem;
}
@media screen and (max-width: 767px) {
  .entry__inner > h1 {
    margin-bottom: 1.4375rem;
  }
}
.entry__inner > nav {
  margin-bottom: 5.3125rem;
}
@media screen and (max-width: 767px) {
  .entry__inner > nav {
    margin-bottom: 2.1875rem;
  }
}
.entry__inner > p {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 5.125rem;
}
@media screen and (max-width: 767px) {
  .entry__inner > p {
    display: inline-block;
    text-align: center;
    margin-bottom: 1.625rem;
  }
}
.entry__inner > p > span {
  color: #333333;
  font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.05em;
  text-align: center;
}
.entry__inner--form {
  max-width: 37.5rem;
  margin-inline: auto;
  display: flex;
  flex-direction: column;
  position: relative;
}
.entry__inner--form .entry__detail--options {
  position: absolute;
  display: none;
  width: 100%;
  height: auto;
  top: 11.0625rem;
  left: 0;
  z-index: 10;
  border-radius: 0.3125rem;
}
@media screen and (max-width: 767px) {
  .entry__inner--form .entry__detail--options {
    top: 12.3125rem;
  }
}
.entry__inner--form .entry__detail--options.is-open {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  background-color: #fffcf5;
  border: 1px solid #d9d9d9;
}
.entry__inner--form .entry__detail--options.is-open .entry__job-option {
  cursor: pointer;
}
.entry__inner--form .entry__detail--options .entry__job-option {
  width: 100%;
  height: 3.125rem;
  color: #333333;
  font: 500 1rem/1.625rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  padding: 0.75rem 1.25rem;
  cursor: default;
}
.entry__inner .wpcf7-form {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.875rem;
}
@media screen and (max-width: 767px) {
  .entry__inner .wpcf7-form {
    gap: 3.125rem;
  }
}
.entry__inner .wpcf7-form .entry__type p, .entry__inner .wpcf7-form label, .entry__inner .wpcf7-form legend {
  width: 100%;
  color: #333333;
  font: 700 1.125rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
.entry__inner .wpcf7-form .wpcf7-response-output {
  width: 100%;
  height: min-content;
  margin: 0;
}
.entry__inner .wpcf7-form > div:not([class]) {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}
.entry__inner .wpcf7-form > div:not([class]) .wpcf7-form-control-wrap {
  display: block;
  width: 100%;
  height: 100%;
}
.entry__inner .wpcf7-form > div:not([class]) .wpcf7-form-control-wrap input {
  width: 100%;
  height: 3.125rem;
  background-color: #f5f0e5;
  border-radius: 0.3125rem;
  padding: 0.75rem 1.25rem;
  color: #333333;
  font: 500 1rem/1.625rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
}
.entry__inner .wpcf7-form > div:not([class]) .wpcf7-form-control-wrap input::placeholder {
  color: #909090;
  font: 500 1rem/1.625rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
}
.entry__inner .wpcf7-form > div:not([class]):nth-of-type(10) {
  margin-bottom: 1.4375rem;
}
@media screen and (max-width: 767px) {
  .entry__inner .wpcf7-form > div:not([class]):nth-of-type(10) {
    margin-bottom: 0.625rem;
  }
}
.entry__inner .wpcf7-form div.file {
  width: 100%;
}
.entry__inner .wpcf7-form div.file fieldset {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.625rem;
}
.entry__inner .wpcf7-form div.file fieldset legend {
  margin-bottom: 1.25rem;
}
.entry__inner .wpcf7-form div.file fieldset label {
  width: 100%;
}
.entry__inner .wpcf7-form div.file input[type=file] {
  width: 100%;
  height: 4.5rem;
  background-color: #f5f0e5;
  border-radius: 0.375rem;
  padding: 1.125rem 1.25rem;
  color: #333333;
  font: 500 0.9375rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .entry__inner .wpcf7-form div.file input[type=file] {
    font: 500 0.875rem/2 "Noto Sans JP", sans-serif;
  }
}
.entry__inner .wpcf7-form div.file input[type=file]::file-selector-button {
  width: 8.625rem;
  height: 2.25rem;
  border-radius: 0.625rem;
  border: none;
  background-color: #2991c6;
  color: #ffffff;
  font: 700 0.875rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  cursor: pointer;
  margin-right: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .entry__inner .wpcf7-form div.file input[type=file]::file-selector-button {
    margin-right: 0.9375rem;
  }
}
.entry__inner .wpcf7-form div.file p {
  color: #333333;
  font: 400 0.875rem/1.6 "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  text-transform: uppercase;
}
.entry__inner .wpcf7-form div.entry__detail--select {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}
.entry__inner .wpcf7-form div.entry__detail--select.is-open .entry__detail--selected::after {
  transform: translateY(-50%) rotate(180deg);
}
.entry__inner .wpcf7-form div.entry__detail--select input[name=your-job] {
  height: 0;
  margin: 0;
  opacity: 0;
}
.entry__inner .wpcf7-form div.entry__detail--select span.entry__detail--label {
  width: 100%;
  color: #333333;
  font: 700 1.125rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  cursor: pointer;
}
.entry__inner .wpcf7-form .entry__detail--selected {
  width: 100%;
  height: 3.125rem;
  background-color: #f5f0e5;
  border-radius: 0.3125rem;
  padding: 0.75rem 1.25rem;
  position: relative;
  cursor: pointer;
}
.entry__inner .wpcf7-form .entry__detail--selected::after {
  content: "";
  position: absolute;
  top: 1.5625rem;
  right: 1.25rem;
  width: 0.8125rem;
  height: 0.5625rem;
  background-color: #333333;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  transform: translateY(-50%);
  transition: transform 0.4s ease;
}
.entry__inner .wpcf7-form .entry__detail--selected.has-value .entry__detail--value {
  color: #333333;
}
.entry__inner .wpcf7-form .entry__detail--value {
  color: #909090;
  font: 500 1rem/1.625rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
}
.entry__inner .wpcf7-form .entry__job-preview {
  display: none;
}
.entry__inner .wpcf7-form div.entry__type {
  order: -1;
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1.25rem;
}
.entry__inner .wpcf7-form div.entry__type .wpcf7-form-control.wpcf7-radio {
  display: flex;
  gap: 1.875rem;
}
.entry__inner .wpcf7-form div.entry__type .wpcf7-list-item.first, .entry__inner .wpcf7-form div.entry__type .wpcf7-list-item.last {
  margin: 0;
  display: block;
  position: relative;
}
.entry__inner .wpcf7-form div.entry__type .wpcf7-list-item label {
  display: flex;
  align-items: center;
  width: fit-content;
  cursor: pointer;
  margin: 0;
}
.entry__inner .wpcf7-form div.entry__type .wpcf7-list-item label input[type=radio] {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  opacity: 0;
  display: block;
  width: 1.4375rem;
  height: 1.4375rem;
  margin: 0;
}
.entry__inner .wpcf7-form div.entry__type .wpcf7-list-item label input[type=radio]:focus ~ .radio-inner {
  outline: 0.0625rem solid #333333;
  outline-offset: 2px;
}
.entry__inner .wpcf7-form div.entry__type .wpcf7-list-item label .radio-inner {
  position: absolute;
  content: "";
  display: inline-block;
  width: 0.9375rem;
  height: 0.9375rem;
  aspect-ratio: 1/1;
  border-radius: 50vh;
  background-color: transparent;
  z-index: 1;
  top: 0.25rem;
  left: 0.25rem;
  pointer-events: none;
}
.entry__inner .wpcf7-form div.entry__type .wpcf7-list-item label input[type=radio]:checked ~ .radio-inner {
  background-color: #2991c6;
}
.entry__inner .wpcf7-form div.entry__type .wpcf7-list-item label .wpcf7-list-item-label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  color: #333333;
  font: 700 1.125rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  white-space: nowrap;
}
.entry__inner .wpcf7-form div.entry__type .wpcf7-list-item label .wpcf7-list-item-label::before {
  content: "";
  display: inline-block;
  width: 1.4375rem;
  height: 1.4375rem;
  aspect-ratio: 1/1;
  border-radius: 50vh;
  background-color: #d9d9d9;
}
.entry__inner .wpcf7-form div.entry__type .wpcf7-list-item label .wpcf7-list-item-label::after {
  display: none;
}
.entry__inner div.check-privacy {
  width: 17.25rem;
  height: 1.625rem;
  margin-inline: auto;
}
.entry__inner div.check-privacy label {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
  white-space: nowrap;
  color: #333333;
  font: 500 1rem/1.625rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
}
.entry__inner div.check-privacy label .wpcf7-form-control, .entry__inner div.check-privacy label .wpcf7-list-item {
  display: flex;
  justify-content: space-between;
  width: 100%;
  height: 100%;
  margin: 0;
}
.entry__inner div.check-privacy label input[type=checkbox] {
  width: 1.5rem;
  height: 1.5rem;
  aspect-ratio: 1/1;
  background-color: #f5f0e5;
  border-radius: 0.1875rem;
  appearance: none;
  background-color: #f5f0e5;
  padding: 0;
  margin-right: 0.75rem;
}
.entry__inner div.check-privacy label input[type=checkbox]:checked {
  appearance: auto;
  accent-color: #333333;
}
.entry__inner div.check-privacy a {
  position: absolute;
  left: 2.25rem;
  top: 0;
  z-index: 1;
  white-space: nowrap;
  color: #333333;
  font: 500 1rem/1.625rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  text-decoration: underline;
}
.entry__inner input[type=submit] {
  align-self: center;
  width: 10.25rem;
  height: 3.1875rem;
  border-radius: 0.375rem;
  background: linear-gradient(168.73deg, #2991c6 0%, #3a5ca5 100%);
  color: #ffffff;
  font: 700 1rem/1.4375rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  text-align: center;
}

.thanks {
  width: 100%;
  padding-block: 10.5625rem 8.625rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .thanks {
    padding-block: 15.4375rem 6.5625rem;
  }
}
.thanks__inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 79.6875%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .thanks__inner {
    width: 100%;
  }
}
.thanks__inner > h1 {
  margin-bottom: 2.1875rem;
}
@media screen and (max-width: 767px) {
  .thanks__inner > h1 {
    margin-bottom: 1.75rem;
  }
}
.thanks__inner > nav {
  margin-bottom: 9.125rem;
}
@media screen and (max-width: 767px) {
  .thanks__inner > nav {
    display: none;
  }
}
.thanks__text {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: fit-content;
  align-self: center;
}
@media screen and (max-width: 767px) {
  .thanks__text {
    align-items: flex-start;
  }
}
.thanks__text > h2 {
  color: #333333;
  font: 600 4.875rem/1 "Josefin Sans", sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  text-align: center;
  margin-bottom: 2.125rem;
}
@media screen and (max-width: 767px) {
  .thanks__text > h2 {
    color: #8a8a8a;
    font: 600 1rem/1 "Josefin Sans", sans-serif;
    letter-spacing: 0.5em;
    text-align: left;
    margin-bottom: 4.5625rem;
    position: absolute;
    top: 13.5rem;
    left: 1.25rem;
  }
}
.thanks__text > div {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 2.75rem;
  min-width: 40.8125rem;
}
@media screen and (max-width: 767px) {
  .thanks__text > div {
    align-items: flex-start;
    margin-bottom: 3.625rem;
    min-width: unset;
  }
}
.thanks__text > div > p {
  color: #333333;
  font: 500 1rem/2 "Josefin Sans", sans-serif;
  letter-spacing: 0.05em;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .thanks__text > div > p {
    font: 500 0.875rem/2 "Josefin Sans", sans-serif;
    text-align: left;
  }
}
.thanks__text > a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 15.75rem;
  height: 3.5625rem;
  margin-inline: auto;
  background-color: #2991c6;
  border-radius: 0.375rem;
  color: #ffffff;
  font: 700 1rem/1.4375rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  text-align: center;
}

.privacy {
  width: 100%;
  padding-block: 6.6875rem 7.5rem;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .privacy {
    padding-block: 8.9375rem 4.375rem;
  }
}
.privacy__inner {
  width: 79.6875%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .privacy__inner {
    width: 100%;
  }
}
.privacy__inner > h1 {
  word-break: keep-all;
  margin-bottom: 1.625rem;
}
@media screen and (max-width: 767px) {
  .privacy__inner > h1 {
    word-break: break-all;
    margin-bottom: 1.4375rem;
  }
}
.privacy__inner > nav {
  margin-bottom: 6.875rem;
}
@media screen and (max-width: 767px) {
  .privacy__inner > nav {
    margin-bottom: 2.5rem;
  }
}
.privacy__text {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 2rem;
}
.privacy__text > li {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.privacy__text > li > h2, .privacy__text > li > p, .privacy__text > li span, .privacy__text > li a, .privacy__text > li address {
  color: #333333;
  font: 500 1rem/2 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
.privacy__text > li:nth-of-type(2) div {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .privacy__text > li:nth-of-type(2) div {
    margin-top: 1rem;
  }
  .privacy__text > li:nth-of-type(2) div:nth-of-type(2) {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media screen and (max-width: 767px) {
  .privacy__text > li:nth-of-type(11) > p {
    margin-top: 1rem;
  }
}
.privacy__text > li:nth-of-type(11) > div {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .privacy__text > li:nth-of-type(11) > div {
    margin-top: 1rem;
    flex-direction: column;
    align-items: flex-start;
  }
}
.privacy__text > li:nth-of-type(11) > div > span {
  display: inline-block;
  width: 12.100625rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .privacy__text > li:nth-of-type(11) > div > span {
    width: fit-content;
  }
}
.privacy__text > li:nth-of-type(11) > div > span::after {
  content: "：";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .privacy__text > li:nth-of-type(11) > div > span::after {
    right: -1rem;
  }
}
.privacy__text > li:nth-of-type(11) > div > address {
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .privacy__text > li:nth-of-type(11) > div > address {
    white-space: normal;
  }
}
.privacy__text > li:nth-of-type(11) > div a.tel, .privacy__text > li:nth-of-type(11) > div a.mail {
  pointer-events: none;
  cursor: default;
}
@media screen and (max-width: 767px) {
  .privacy__text > li:nth-of-type(11) > div a.tel, .privacy__text > li:nth-of-type(11) > div a.mail {
    pointer-events: auto;
    cursor: pointer;
  }
}

.four {
  width: 100%;
  padding-block: 10.5625rem 7.5rem;
}
@media screen and (max-width: 767px) {
  .four {
    padding-block: 8.9375rem 4.375rem;
  }
}
.four__inner {
  width: 79.6875%;
  margin-inline: auto;
}
@media screen and (max-width: 767px) {
  .four__inner {
    width: 100%;
  }
}
.four__inner > h1 {
  margin-bottom: 1.5rem;
  word-break: keep-all;
}
@media screen and (max-width: 767px) {
  .four__inner > h1 {
    margin-bottom: 1.4375rem;
  }
}
.four__inner > nav {
  margin-bottom: 4.5625rem;
}
@media screen and (max-width: 767px) {
  .four__inner > nav {
    margin-bottom: 2.1875rem;
  }
}
.four__text {
  width: 100%;
}
.four__text > h2 {
  margin-bottom: 6.25rem;
}
.four__text > a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 15.75rem;
  height: 3.5625rem;
  margin-inline: auto;
  background-color: #2991c6;
  border-radius: 0.375rem;
  color: #ffffff;
  font: 700 1rem/1.4375rem "Noto Sans JP", sans-serif;
  letter-spacing: 0;
  text-align: center;
}

.footer {
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.footer__top {
  width: 100%;
  height: auto;
  aspect-ratio: 1280/481;
  background: linear-gradient(rgba(41, 146, 198, 0.8), rgba(41, 146, 198, 0.8)), url("../img/footer-bg-pc.webp") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: auto 30.0625rem;
}
@media screen and (max-width: 767px) {
  .footer__top {
    aspect-ratio: 375/260;
    background: linear-gradient(rgba(41, 146, 198, 0.8), rgba(41, 146, 198, 0.8)), url("../img/footer-bg-sp.webp") center/cover no-repeat;
    content-visibility: auto;
    contain-intrinsic-size: auto 16.25rem;
  }
}
.footer__top > a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  gap: 1.5rem;
}
@media screen and (max-width: 767px) {
  .footer__top > a {
    gap: 0.5rem;
  }
}
.footer__top > a > p:first-of-type {
  width: 14.125rem;
  height: 3rem;
}
@media screen and (max-width: 767px) {
  .footer__top > a > p:first-of-type {
    width: 11.75rem;
    height: 2.5rem;
  }
}
.footer__top > a > p:first-of-type > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.footer__top > a > p:last-of-type {
  font: 600 5.75rem/1 "Josefin Sans", sans-serif;
  color: #fffcf5;
  letter-spacing: 0.2em;
  text-align: center;
  text-transform: uppercase;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .footer__top > a > p:last-of-type {
    font: 600 2.75rem/1 "Josefin Sans", sans-serif;
  }
}
@media screen and (max-width: 366px) {
  .footer__top > a > p:last-of-type {
    letter-spacing: 0.15em;
  }
}
.footer__bottom {
  width: 95.313%;
  height: auto;
  padding-block: 2.8125rem 3.125rem;
  margin-inline: 2.343%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  background-color: #fffcf5;
}
@media screen and (max-width: 1279px) {
  .footer__bottom {
    padding-block: 1.875rem 2.5625rem;
    justify-content: center;
    align-items: center;
    height: auto;
    margin-inline: auto;
  }
}
.footer__bottom--logo {
  display: flex;
  align-items: center;
  gap: 1.375rem;
  width: fit-content;
  height: 2.875rem;
  margin-top: 0.266875rem;
}
@media screen and (max-width: 1279px) {
  .footer__bottom--logo {
    margin-top: 0;
  }
}
.footer__bottom--logo > img {
  width: 13.875rem;
  height: auto;
  object-fit: cover;
}
.footer__bottom--logo > span {
  display: block;
  color: #848484;
  font: 500 1rem/1 "Josefin Sans", sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding-top: 0.25rem;
}
@media screen and (max-width: 1279px) {
  .footer__bottom--logo > span {
    display: none;
  }
}
.footer__bottom--logo > span > span {
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}
.footer__bottom--pc {
  display: block;
  width: fit-content;
  height: auto;
}
@media screen and (max-width: 1279px) {
  .footer__bottom--pc {
    display: none;
  }
}
.footer__bottom--pc > ul {
  width: 43.125rem;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  row-gap: 1.6875rem;
}
.footer__bottom--pc > ul > li:first-of-type {
  height: 3.4375rem;
  color: #333333;
  margin-right: 1.875rem;
}
.footer__bottom--pc > ul > li:nth-of-type(2) {
  height: 3.4375rem;
  color: #333333;
  margin-right: 4.891875rem;
}
.footer__bottom--pc > ul > li:nth-of-type(3) {
  margin-right: 1.875rem;
}
.footer__bottom--pc > ul > li:last-of-type {
  width: 100%;
  height: 1.25rem;
}
.footer__bottom--pc > ul > li:last-of-type a {
  display: block;
  width: 100%;
  height: 100%;
  font: 500 0.875rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
  color: #333333;
  text-align: right;
  position: relative;
}
.footer__bottom--pc > ul > li:last-of-type a::before {
  position: absolute;
  content: "";
  right: 14.8125rem;
  bottom: 0.25rem;
  display: inline-block;
  width: 1rem;
  height: 1rem;
  background: url("../img/corporate.svg") center/cover no-repeat;
  content-visibility: auto;
  contain-intrinsic-size: 1rem 1rem;
}
.footer__bottom--pc > ul > li:first-of-type a, .footer__bottom--pc > ul > li:nth-of-type(2) a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100%;
  font: 700 1rem/1 "Noto Sans JP", sans-serif;
  letter-spacing: 0.1em;
}

html {
  width: 100%;
  height: auto;
  font-size: 100%;
}

body {
  width: 100%;
  height: auto;
  overflow-x: hidden;
  font-family: "Noto Sans JP", sans-serif;
  background-color: #fffcf5;
}/*# sourceMappingURL=style.css.map */