@charset "UTF-8";
/**************************************
/* -------------------------
 * 共通
 * ------------------------- */
h2,
h3,
h4,
h5,
h6 {
  font-weight: 300;
}

/* -------------------------
 * FV
 * ------------------------- */
.under-recruit .under-fv {
  background: url(../img/recruit/fv.webp) no-repeat center center/cover;
  padding: 35.6rem 5% 28.8rem;
  color: #fff;
}
@media (max-width: 834px) {
  .under-recruit .under-fv {
    padding-block: 25rem;
  }
}
.under-recruit .under-fv__catch {
  font-size: clamp(1.6rem, 1.3vw, 2.4rem);
  text-align: center;
  margin-top: 5rem;
}
@media (max-width: 834px) {
  .under-recruit .under-fv__catch {
    margin-top: 3rem;
  }
}
@media (max-width: 499px) {
  .under-recruit .under-fv__catch {
    margin-top: 1.5rem;
  }
}

.recruit__btn--black-bg {
  padding-block: 2rem;
  height: 6rem;
}
.recruit__btn--black-bg .btn-txt {
  gap: 0.7rem;
  -webkit-transform: translateY(2rem);
          transform: translateY(2rem);
}
@media (max-width: 834px) {
  .recruit__btn--black-bg .btn-txt {
    gap: 0.9rem;
  }
}
.recruit__btn--black-bg:hover .txt {
  -webkit-transform: translateY(-125%);
          transform: translateY(-125%);
}
@media (max-width: 834px) {
  .recruit__btn--black-bg:hover .txt {
    -webkit-transform: translateY(-130%);
            transform: translateY(-130%);
  }
}

.recruit__btn-area--with-note {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0.5rem;
}
@media (max-width: 834px) {
  .recruit__btn-area--with-note {
    margin-inline: auto;
    gap: 0.2rem;
  }
}

.recruit__btn-note {
  font-size: 1.3rem;
  margin-left: 2rem;
}

.modal-toggle.base-btn:hover {
  cursor: pointer;
}
.modal-toggle.base-btn:hover .txt {
  -webkit-transform: translateY(-115%);
          transform: translateY(-115%);
}
@media (max-width: 834px) {
  .modal-toggle.base-btn:hover .txt {
    -webkit-transform: translateY(-123%);
            transform: translateY(-123%);
  }
}
@media (max-width: 834px) {
  .modal-toggle.base-btn:hover.base-btn--sp-high .txt {
    -webkit-transform: translateY(-130%);
            transform: translateY(-130%);
  }
}
.modal-toggle.base-btn .btn-txt {
  -webkit-transform: translateY(1.2rem);
          transform: translateY(1.2rem);
  gap: 0.3rem;
  text-align: left;
}
@media (max-width: 834px) {
  .modal-toggle.base-btn .btn-txt {
    -webkit-transform: translateY(1.1rem);
            transform: translateY(1.1rem);
    gap: 0.5rem;
  }
}
@media (max-width: 834px) {
  .modal-toggle.base-btn.base-btn--sp-high .btn-txt {
    -webkit-transform: translateY(2.5rem) !important;
            transform: translateY(2.5rem) !important;
    gap: 1rem !important;
  }
}

/* -------------------------
 * イントロ
 * ------------------------- */
.recruit-intro {
  padding-block: 13rem;
}
@media (max-width: 834px) {
  .recruit-intro {
    padding-block: 5rem;
  }
}

.recruit-intro__flex {
  display: grid;
  grid-template-columns: 549fr 850fr;
  gap: 3rem 2%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-left: calc((100% - min(1350px, 90%)) / 2);
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 834px) {
  .recruit-intro__flex {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 834px) {
  .recruit-intro__body {
    padding-right: 5%;
  }
}

.recruit-intro__ttl {
  font-size: clamp(2.2rem, 2.6vw, 4.2rem);
}

.recruit-intro__catch {
  font-size: clamp(1.8rem, 1.7vw, 2.6rem);
  margin-block: 3rem 2.5rem;
}
@media (max-width: 834px) {
  .recruit-intro__catch {
    margin-block: 2rem 1rem;
  }
}

.recruit-intro__txt {
  margin-bottom: 7rem;
}
@media (max-width: 834px) {
  .recruit-intro__txt {
    margin-bottom: 3rem;
  }
}

/* -------------------------
 * CONCEPT
 * ------------------------- */
.recruit-concept {
  background: url(../img/recruit/concept_bg.webp) no-repeat center center/cover;
  padding: 15rem 5%;
  color: #fff;
}
@media (max-width: 834px) {
  .recruit-concept {
    padding-block: 5rem;
  }
}

.recruit-concept__ttl {
  text-align: center;
  font-size: var(--fz26);
  margin-bottom: 4rem;
}
@media (max-width: 834px) {
  .recruit-concept__ttl {
    margin-bottom: 3rem;
  }
}

.recruit-concept__txt {
  text-align: center;
}
@media (max-width: 834px) {
  .recruit-concept__txt {
    text-align: left;
  }
}

/* -------------------------
 * POSITION
 * ------------------------- */
.recruit-main-cont {
  padding-block: 13rem;
}
@media (max-width: 834px) {
  .recruit-main-cont {
    padding-block: 5rem;
  }
}

.recruit-main-cont__head-flex {
  position: sticky;
  top: 0;
  z-index: 10;
  padding-bottom: 4rem;
}
@media (max-width: 834px) {
  .recruit-main-cont__head-flex {
    position: static;
    padding-bottom: 0;
  }
}

.recruit-position .recruit-main-cont__head-flex {
  background: #fff;
}

.recruit-system .recruit-main-cont__head-flex {
  background: #f2f3f2;
}

.recruit-main-cont__head-flex {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 3rem 2%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  margin-bottom: 6rem;
}
@media (max-width: 1240px) {
  .recruit-main-cont__head-flex {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 834px) {
  .recruit-main-cont__head-flex {
    margin-bottom: 4rem;
  }
}

.recruit-main-cont__ttl-en {
  line-height: 1;
  font-size: clamp(3.5rem, 4.9vw, 8rem);
  margin-bottom: 3rem;
  font-weight: 300;
}
@media (max-width: 834px) {
  .recruit-main-cont__ttl-en {
    margin-bottom: 1rem;
  }
}
.recruit-main-cont__ttl-en .small {
  font-size: 1.6rem;
  font-weight: normal;
}

.recruit-main-cont__ttl {
  font-weight: 400;
  font-size: clamp(1.6rem, 1.6vw, 2.6rem);
}

.recruit-main-cont__head-body {
  text-align: right;
}
@media (max-width: 1024px) {
  .recruit-main-cont__head-body {
    text-align: left;
  }
}

.recruit-main-cont__lead {
  font-size: clamp(2.2rem, 2.1vw, 4.2rem);
  margin-bottom: 1.5rem;
}
@media (max-width: 834px) {
  .recruit-main-cont__lead {
    margin-bottom: 1rem;
  }
}

.recruit-position__list > li + li {
  margin-top: 6rem;
}
@media (max-width: 834px) {
  .recruit-position__list > li + li {
    margin-top: 3rem;
  }
}

.recruit-position__list-item {
  border-radius: 20px;
  border: solid 1px #ddd;
  padding: 8rem 5%;
}
@media (max-width: 834px) {
  .recruit-position__list-item {
    padding: 4rem 3rem;
  }
}

.recruit-position__item-ttl {
  font-size: clamp(2.4rem, 3vw, 4.2rem);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
  border-bottom: solid 1px #ddd;
  padding-bottom: 1.6rem;
  margin-bottom: 2rem;
}
@media (max-width: 834px) {
  .recruit-position__item-ttl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0;
  }
}
.recruit-position__item-ttl .catch {
  font-size: clamp(1.6rem, 3vw, 2.6rem);
}

.recruit-position__item-label {
  margin-block: 5rem 3rem;
  padding: 0.2rem 1.5rem 0.3rem;
  border-radius: 5px;
  border: solid 1px #000;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 834px) {
  .recruit-position__item-label {
    margin-block: 3rem 2rem;
    margin-inline: auto;
  }
}

.recruit-position__type-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3rem 2%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 834px) {
  .recruit-position__type-list {
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem 4%;
  }
}

.recruit-position__type-txt {
  margin-top: 1rem;
}

@media (max-width: 834px) {
  .recruit-position__career-img {
    overflow-x: auto;
    width: 100%;
  }
}
@media (max-width: 834px) {
  .recruit-position__career-img img {
    display: block;
    width: 900px;
    height: auto;
    max-width: none;
  }
}

/* -------------------------
 * SYSTEM
 * ------------------------- */
.recruit-rule .recruit-system__top-kv {
  background: url(../img/recruit/system_rule_top-kv.webp) no-repeat center center/cover;
}

.recruit-system {
  background: #f2f3f2;
}

.recruit-system__list > li + li {
  margin-top: 7rem;
}
@media (max-width: 834px) {
  .recruit-system__list > li + li {
    margin-top: 3rem;
  }
}

.recruit-system__list-item {
  background: #fff;
}

.recruit-system__top-kv {
  height: 40rem;
  color: #fff;
  padding-bottom: 4rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 834px) {
  .recruit-system__top-kv {
    height: 24rem;
    padding-bottom: 1.5rem;
  }
}

.recruit-evaluation .recruit-system__top-kv {
  background: url(../img/recruit/system_evaluation_top-kv.webp) no-repeat center center/cover;
}

.recruit-system__top-ttl {
  line-height: 1.2;
  font-size: clamp(2.8rem, 3.2vw, 4.6rem);
}
.recruit-system__top-ttl .en {
  font-size: clamp(1.3rem, 1.1vw, 1.6rem);
}
.recruit-system__top-ttl .ff-kalnia {
  font-weight: normal;
}

.recruit-system__top-kv-inner {
  margin-top: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  gap: 1em;
}
@media (max-width: 499px) {
  .recruit-system__top-kv-inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
}

.recruit-system__top-catch {
  font-size: clamp(1.6rem, 1.8vw, 2.6rem);
  line-height: 1.4;
}

.recruit-system__list-item-inner {
  padding-block: 8rem;
}
@media (max-width: 834px) {
  .recruit-system__list-item-inner {
    padding-block: 4rem;
    padding-inline: 3rem;
  }
}
@media (max-width: 834px) {
  .recruit-system__list-item-inner.inner--1150 {
    width: 100%;
  }
}

.recruit-system__summary {
  display: grid;
  grid-template-columns: 12.9rem 1fr;
  gap: 1rem 4%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 834px) {
  .recruit-system__summary {
    grid-template-columns: 1fr;
  }
}

.recruit-system__summary-ttl {
  font-size: 2rem;
  background: url(../img/recruit/system_summary-ttl-bg.webp) no-repeat center center/cover;
  aspect-ratio: 129/103;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 12.9rem;
  height: auto;
}
@media (max-width: 834px) {
  .recruit-system__summary-ttl {
    font-size: 1.6rem;
    width: 8rem;
  }
}

.recruit-system__summary-catch {
  font-size: 2.6rem;
  margin-bottom: 1rem;
}
@media (max-width: 834px) {
  .recruit-system__summary-catch {
    font-size: 2rem;
  }
}

.recruit-system__detail {
  margin-top: 6rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 834px) {
  .recruit-system__detail {
    margin-top: 4rem;
  }
}

.recruit-system__detail-ttl {
  border-bottom: 1px solid #ddd;
  padding-bottom: 1rem;
  margin-bottom: 1.5rem;
  font-size: 2rem;
}
@media (max-width: 834px) {
  .recruit-system__detail-ttl {
    font-size: 1.6rem;
  }
}

.recruit-evaluation__detail-img {
  max-width: 1045px;
  margin: 4rem auto 3rem;
}
@media (max-width: 834px) {
  .recruit-evaluation__detail-img {
    margin-block: 2rem 1.5rem;
    overflow-x: auto;
    width: 100%;
  }
}
@media (max-width: 834px) {
  .recruit-evaluation__detail-img img {
    display: block;
    width: 900px;
    height: auto;
    max-width: none;
  }
}

.recruit-evaluation__detail-btn {
  margin-left: auto;
}
@media (max-width: 499px) {
  .recruit-evaluation__detail-btn {
    margin-inline: auto;
  }
}

/* 教育システム */
.recruit-evaluation__program {
  margin-top: 6rem;
  padding: 6rem 5%;
  border-radius: 20px;
  background-color: #f2f3f2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 834px) {
  .recruit-evaluation__program {
    margin-top: 4rem;
    padding: 4rem 3rem;
  }
}

.recruit-evaluation__program-btn {
  margin-left: auto;
  margin-top: 2rem;
}
@media (max-width: 834px) {
  .recruit-evaluation__program-btn {
    margin-right: auto;
    margin-left: 0;
  }
}

.recruit-evaluation__program-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1em;
  margin-bottom: 2rem;
}
@media (max-width: 834px) {
  .recruit-evaluation__program-top {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 1rem;
  }
}

.recruit-evaluation__program-label {
  color: #fff;
  padding: 0rem 1.8rem 0.2rem;
  background-color: #2d2d2d;
  font-size: 2rem;
}
@media (max-width: 834px) {
  .recruit-evaluation__program-label {
    font-size: 1.6rem;
  }
}

.recruit-evaluation__program-catch {
  font-size: 2.2rem;
  line-height: 1.4;
}
@media (max-width: 834px) {
  .recruit-evaluation__program-catch {
    font-size: 1.8rem;
  }
}

.recruit-rule__detail-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 2rem;
}
@media (max-width: 499px) {
  .recruit-rule__detail-flex .base-btn {
    gap: 0.4rem;
    margin: 0 auto;
    width: 100%;
  }
}

.recruit-rule__detail-btn {
  margin-left: auto;
}
@media (max-width: 499px) {
  .recruit-rule__detail-btn {
    margin-left: 0;
  }
}

.recruit-rule__img {
  margin: 7rem auto 0;
  max-width: 808px;
}
@media (max-width: 834px) {
  .recruit-rule__img {
    margin-top: 3rem;
    width: 100%;
  }
}
@media (max-width: 834px) {
  .recruit-rule__img img {
    display: block;
    height: auto;
    max-width: none;
  }
}

/* -------------------------
 * MESSAGE
 * ------------------------- */
.recruit-message {
  background: url(../img/recruit/message_bg.webp) no-repeat center center/cover;
  padding-block: 16rem;
}
@media (max-width: 834px) {
  .recruit-message {
    padding-block: 5rem;
  }
}

.recruit-message__ttl {
  font-size: clamp(1.6rem, 1.2vw, 2rem);
  font-weight: 500;
}
.recruit-message__ttl .en {
  line-height: 1.3;
  font-size: clamp(2.4rem, 4.9vw, 8rem);
  margin-bottom: 3rem;
  font-weight: 300;
}

.recruit-message__flex {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 2rem 18%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 834px) {
  .recruit-message__flex {
    grid-template-columns: 1fr;
  }
}

.recruit-message__catch {
  font-size: clamp(2.2rem, 2.2vw, 3.8rem);
  line-height: 1.3;
  margin-bottom: 5rem;
}
@media (max-width: 834px) {
  .recruit-message__catch {
    margin-bottom: 3rem;
  }
}

.recruit-message__txt {
  margin-bottom: 7rem;
}
@media (max-width: 834px) {
  .recruit-message__txt {
    margin-bottom: 3rem;
  }
}

/* -------------------------
 * REQUIREMENTS
 * ------------------------- */
.recruit-requirements__ttl-area {
  background: url(../img/recruit/requirements_bg.webp) no-repeat center center/cover;
  min-height: 60rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media (max-width: 834px) {
  .recruit-requirements__ttl-area {
    height: 30rem;
    min-height: auto;
  }
}

.recruit-requirements__ttl-area-inner {
  margin-top: auto;
}

.recruit-requirements__ttl {
  font-size: clamp(1.6rem, 3vw, 2.6rem);
  line-height: 1.2;
  color: #fff;
}
.recruit-requirements__ttl .en {
  font-size: clamp(3rem, 7.2vw, 12rem);
}

.recruit-requirements__link-area {
  margin-block: 9rem 8rem;
}
@media (max-width: 834px) {
  .recruit-requirements__link-area {
    margin-block: 5rem 4rem;
  }
}

.recruit-requirements__nav-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2rem 3%;
}
@media (max-width: 834px) {
  .recruit-requirements__nav-list {
    grid-template-columns: 1fr;
    -webkit-column-gap: 5%;
       -moz-column-gap: 5%;
            column-gap: 5%;
  }
}
.recruit-requirements__nav-list > li {
  max-width: 40rem;
  width: 48%;
}

.recruit-requirements__nav-txt {
  display: inline-block;
}
@media (max-width: 834px) {
  .recruit-requirements__nav-txt.txt--slide {
    height: 2.8rem;
  }
}

.recruit-requirements__nav-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 1.6rem 0 1.6rem 1.7rem;
  border-bottom: 1px solid #ddd;
}
@media (max-width: 834px) {
  .recruit-requirements__nav-link {
    padding: 1rem 0 1rem 0rem;
  }
}

.recruit-requirements__list > li + li {
  margin-top: 12rem;
}
@media (max-width: 834px) {
  .recruit-requirements__list > li + li {
    margin-top: 6rem;
  }
}

.recruit-requirements__item {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0rem 13%;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (max-width: 834px) {
  .recruit-requirements__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (max-width: 834px) {
  .recruit-requirements__item .recruit__btn-area--with-note {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}

.recruit-requirements__item-ttl {
  font-size: clamp(2.4rem, 2.3vw, 3.8rem);
  margin-bottom: 6rem;
  font-weight: normal;
}
@media (max-width: 834px) {
  .recruit-requirements__item-ttl {
    margin-bottom: 2rem;
  }
}

@media (max-width: 834px) {
  .recruit-requirements__item-ttl {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

@media (max-width: 834px) {
  .recruit-requirements__item-btn {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    margin: 3rem auto 0;
  }
}

@media (max-width: 834px) {
  .recruit-requirements__item-body {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}

@media (max-width: 834px) {
  .recruit-requirements__item-ttl-side {
    display: contents;
  }
}

.recruit-requirements__main-list .indent {
  padding-left: 1em;
  display: inline-block;
}

.recruit-requirements__main-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  position: relative;
  z-index: 1;
}
.recruit-requirements__main-list dt,
.recruit-requirements__main-list dd {
  padding-block: 3rem;
}
.recruit-requirements__main-list dt:last-of-type,
.recruit-requirements__main-list dd:last-of-type {
  border-bottom: none;
}
.recruit-requirements__main-list dt {
  width: 23%;
  border-bottom: 1px solid #ddd;
}
@media (max-width: 639px) {
  .recruit-requirements__main-list dt {
    width: 100%;
    border-bottom: none;
    padding: 1.6rem 0 0 0;
  }
}
.recruit-requirements__main-list dt:first-of-type {
  padding-top: 0;
}
.recruit-requirements__main-list dd {
  width: 77%;
  border-bottom: 1px solid #ddd;
  padding-left: 1.6rem;
}
@media (max-width: 639px) {
  .recruit-requirements__main-list dd {
    min-width: 140px;
    padding: 1rem 0 1.6rem 0;
    width: 100%;
  }
}
.recruit-requirements__main-list dd:first-of-type {
  padding-top: 0;
}

/* -------------------------
 * モーダル
 * ------------------------- */
.modal {
  display: none;
  position: fixed;
  z-index: 8887;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: rgba(0, 0, 0, 0.7);
  -webkit-transition: all 1s ease-in-out;
  transition: all 1s ease-in-out;
  -ms-touch-action: manipulation;
      touch-action: manipulation; /* タッチイベントを最適化 */
  -webkit-tap-highlight-color: transparent;
}

.modal-container .img {
  background: #f1f1f1;
  margin-bottom: 15px;
}

.modal-content {
  background: #fff;
  border-radius: 20px;
  overflow-y: auto;
  padding: 90px 5%;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 1350px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-animation: show 0.6s linear 0s;
          animation: show 0.6s linear 0s;
}
@media (max-width: 834px) {
  .modal-content {
    padding-block: 3rem;
    width: 90%;
  }
}

#modal-rates .modal-content {
  padding-inline: 0.8rem;
}
#modal-rates .modal-top {
  width: 90%;
}

#modal-flextime .modal__img {
  max-width: 48rem;
}

.modal-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin-inline: auto;
  padding-bottom: 2.5rem;
  border-bottom: 1px solid #ddd;
  margin-bottom: 4rem;
}
@media (max-width: 834px) {
  .modal-top {
    padding-bottom: 1.5rem;
    margin-bottom: 3rem;
  }
}

.modal-close {
  color: #000;
  text-decoration: none;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 0rem;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-item-align: start;
      align-self: flex-start;
}
.modal-close .icon {
  position: relative;
  width: 35px;
  height: 35px;
  cursor: pointer;
  background: none;
  border: none;
  padding: 0;
}
.modal-close .icon::before, .modal-close .icon::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 26px;
  height: 1px;
  background: #000;
  -webkit-transform-origin: center;
          transform-origin: center;
}
.modal-close .icon::before {
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
}
.modal-close .icon::after {
  -webkit-transform: translate(-50%, -50%) rotate(-45deg);
          transform: translate(-50%, -50%) rotate(-45deg);
}
.modal-close .txt {
  font-weight: 500;
  font-size: 1.4rem;
}

.modal-close:hover,
.modal-close:focus {
  text-decoration: none;
  cursor: pointer;
}

.modal-title {
  color: #fff;
}

@-webkit-keyframes show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes show {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.modal__ttl {
  font-size: 2.6rem;
}
@media (max-width: 834px) {
  .modal__ttl {
    font-size: 1.8rem;
    line-height: 1.5;
  }
}

.modal__img {
  margin-inline: auto;
}
@media (max-width: 834px) {
  .modal__img.js-scroll {
    overflow-x: auto;
    width: 100%;
  }
}
@media (max-width: 834px) {
  .modal__img.js-scroll img {
    display: block;
    width: 900px;
    height: auto;
    max-width: none;
  }
}

.modal__note {
  margin-top: 2.5rem;
}
@media (max-width: 834px) {
  .modal__note {
    margin-top: 1.5rem;
  }
}/*# sourceMappingURL=recruit.css.map */