@font-face {
	font-family: 'PA1 Gothic Std';
	src: url('../fonts/AP-OTF-A1GothicStdN-Light_subset.woff2') format('woff2'),
			 url('../fonts/AP-OTF-A1GothicStdN-Light_subset.woff') format('woff');
	font-weight: 300; /* Light weight */
	font-style: normal;
  font-display: swap;
}

@font-face {
	font-family: 'PA1 Gothic Std';
	src: url('../fonts/AP-OTF-A1GothicStdN-Regular_subset.woff2') format('woff2'),
			 url('../fonts/AP-OTF-A1GothicStdN-Regular_subset.woff') format('woff');
	font-weight: normal;
	font-style: normal;
  font-display: swap;
}

@font-face {
	font-family: 'PA1 Gothic Std';
	src: url('../fonts/AP-OTF-A1GothicStdN-Medium_subset.woff2') format('woff2'),
			 url('../fonts/AP-OTF-A1GothicStdN-Medium_subset.woff') format('woff');
	font-weight: 500; /* Medium weight */
	font-style: normal;
  font-display: swap;
}

@font-face {
	font-family: 'PA1 Gothic Std';
	src: url('../fonts/AP-OTF-A1GothicStdN-Bold_subset.woff2') format('woff2'),
			 url('../fonts/AP-OTF-A1GothicStdN-Bold_subset.woff') format('woff');
	font-weight: bold;
	font-style: normal;
  font-display: swap;
}

html:has(.recruit-page) {
	scroll-behavior: smooth;
}

.recruit-page {
  a,
  button,
  summary,
  label {
    opacity: 1;
    transition: opacity .2s ease-out;
    text-decoration: none;
  }

  a:hover,
  button:hover,
  summary:hover,
  label:hover {
    opacity: 0.7;
  }

  .util-spOnly {
    @media (min-width: 768px) {
      display: none !important;
    }
  }

  .util-pcOnly {
    @media not all and (min-width: 768px) {
      display: none !important;
    }
  }

  @media (min-width: 768px) {
    --display-ratio: 100vw / 1280;
    /* --display-ratio: 100vw / 1440; */
    /* Ratioを切り替えるとFVに支障あり（グラデーション画像サイズが繊細なため） */

    /** how to use: calc(200 * var(--display-ratio)) */
  }
}

.recruit-Hero {
  position: relative;
  overflow: hidden;

  .recruit-Hero__video {
    width: 100vw;
    min-height: 695px;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }

  .recruit-Hero__overlay {
    position: absolute;
    top: 230px;
    left: 0;
    width: 100%;
    height: 320px;
    object-fit: cover;
    z-index: -1;
  }

  .recruit-Hero__content--sp {
    background: linear-gradient(
      180deg,
      rgba(255, 255, 255, 0) 0px,
      rgba(255, 255, 255, 0) 356px,
      #fff 550px,
      #fff 100%
    );
    padding-top: 388px;
    padding-bottom: 36px; /** 次セクションと足して56px */
  }

  .recruit-Hero__titleEn {
    color: #EC6518;
    font-family: 'PA1 Gothic Std';
    font-size: 63.606px;
    font-weight: 500;
    line-height: 121.3%;
    letter-spacing: 4.452px;
    padding-left: 14px;
  }

  .recruit-Hero__titleJa {
    display: inline-flex;
    align-items: center;
    color: #000;
    font-family: 'PA1 Gothic Std';
    font-size: 18.598px;
    font-weight: 500;
    line-height: 121.3%;
    letter-spacing: 1.302px;
    padding-left: 20px;
    margin-bottom: 0;
  }

  .recruit-Hero__titleJa::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: 4px;
    flex-shrink: 0;
    background: #EC6518;
    margin-right: 5.73px;
  }

  .recruit-Hero__copy {
    color: #000;
    font-family: 'PA1 Gothic Std';
    font-size: 31.391px;
    font-weight: 600;
    line-height: 121.3%;
    letter-spacing: 4.081px;
    margin-top: 28px;
    padding-left: 18px;
    margin-bottom: 0;
  }

  .recruit-Hero__description {
    color: #000;
    font-family: 'PA1 Gothic Std';
    font-size: 14px;
    font-weight: 500;
    line-height: 221.3%;
    letter-spacing: 0.42px;
    margin-top: 13px;
    padding-left: 16px;
  }

  .recruit-Hero__content--pc {
    display: none;
  }

  @media (min-width: 768px) {
    background: #F2F2F2;

    .recruit-Hero__video {
      width: calc(100vw - 300 * var(--display-ratio));
      height: calc(687 * var(--display-ratio));
      object-position: left top;
      left: calc(300 * var(--display-ratio));
      z-index: 0;
      min-height: auto;
    }

    .recruit-Hero__overlay {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: calc(687 * var(--display-ratio));
      object-fit: cover;
      z-index: 0;
    }

    .recruit-Hero__content--sp {
      display: none;
    }

    .recruit-Hero__content--pc {
      display: block;
      position: relative;
      padding-top: calc(100 * var(--display-ratio));
      padding-bottom: calc(160 * var(--display-ratio));
    }

    .recruit-Hero__title {
      display: flex;
      align-items: center;
      padding-left: calc(109 * var(--display-ratio));
      gap: calc(25 * var(--display-ratio));
    }

    .recruit-Hero__logo {
      width: calc(234 * var(--display-ratio));
      height: calc(61 * var(--display-ratio));
      object-fit: contain;
    }

    .recruit-Hero__titleJa {
      padding-left: 0;
      color: #2A2A2A;
      font-size: calc(29.41 * var(--display-ratio));
      letter-spacing: calc(2.059 * var(--display-ratio));
    }

    .recruit-Hero__titleJa::before {
      display: none;
    }

    .recruit-Hero__copy {
      margin-top: calc(32 * var(--display-ratio));
      padding-left: calc(90 * var(--display-ratio));
      margin-bottom: 0;

      color: #2A2A2A;
      font-size: calc(60.273 * var(--display-ratio));
      font-weight: 600;
      letter-spacing: calc(8.438 * var(--display-ratio));
    }

    .recruit-Hero__description {
      margin-top: calc(44 * var(--display-ratio));
      padding-left: calc(97 * var(--display-ratio));

      color: #222;
      font-size: calc(16.954 * var(--display-ratio));
      line-height: 141.3%;
      letter-spacing: calc(2.035 * var(--display-ratio));
    }
  }
}

.recruit-About {
  padding: 20px 0 54px;
  position: relative;
  overflow: hidden;

  .recruit-About__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    object-fit: cover;
    z-index: -1;
    pointer-events: none;
  }

  .recruit-About__title {
    display: inline-flex;
    align-items: center;
    color: #000;
    font-family: 'PA1 Gothic Std';
    font-size: 18.598px;
    font-weight: 500;
    line-height: 121.3%;
    letter-spacing: 1.302px;
    margin-bottom: 0;
    padding-left: 20px;
  }

  .recruit-About__title::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 6px;
    flex-shrink: 0;
    background: #EC6518;
    margin-right: 9.6px;
  }

  .recruit-About__content {
    text-align: center;
    margin-top: 48px;
  }

  .recruit-About__logo {
    width: 257px;
    height: 67px;
    object-fit: contain;
  }

  .recruit-About__description {
    color: #2A2A2A;
    font-family: 'PA1 Gothic Std';
    font-size: 14px;
    font-weight: 500;
    line-height: 194%;
    letter-spacing: 1.4px;
    margin-top: 44px;
    margin-bottom: 0;
  }

  .recruit-About__button {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: #EC6518;
    max-width: 308px;
    height: 56px;
    margin-inline: 40px;
    margin-top: 41px;

    color: #FFF;
    font-family: "Noto Sans JP";
    font-size: 15.301px;
    font-weight: 700;
    line-height: 26.976px;
    letter-spacing: 1.836px;
  }

  .recruit-About__imgList {
    display: flex;
    gap: 39px;
    overflow-x: auto;
    padding-inline: 39px;
    margin-top: 46px;

    -ms-overflow-style: none;
    scrollbar-width: none;
  }

  .recruit-About__imgList::-webkit-scrollbar {
    display: none;
  }

  .recruit-About__imgItem {
    display: flex;
    width: 295.41px;
    height: 208.876px;
    flex-shrink: 0;
    object-fit: cover;
    border-radius: 9.409px;
  }

  @media (min-width: 768px) {
    background: #F2F2F2;
    padding: calc(33 * var(--display-ratio)) 0 calc(92 * var(--display-ratio));

    .recruit-About__bg {
      position: absolute;
      top: 0;
      left: auto;
      right: 0;
      width: calc(709 * var(--display-ratio));
      height: calc(481 * var(--display-ratio));
      z-index: 0;
    }

    .recruit-About__title {
      display: none;
    }

    .recruit-About__content {
      margin-top: 0;
    }

    .recruit-About__logo {
      width: calc(326.04 * var(--display-ratio));
      height: calc(85.01 * var(--display-ratio));
    }

    .recruit-About__description {
      color: #2A2A2A;
      font-size: calc(15.085 * var(--display-ratio));
      letter-spacing: calc(1.508 * var(--display-ratio));
      margin-top: calc(41 * var(--display-ratio));
    }

    .recruit-About__button {
      border-radius: calc(4.565 * var(--display-ratio));
      max-width: none;
      width: calc(225.495 * var(--display-ratio));
      height: calc(44.734 * var(--display-ratio));
      margin-inline: auto;
      margin-top: calc(36 * var(--display-ratio));

      font-size: calc(12.85 * var(--display-ratio));
      line-height: calc(22.655 * var(--display-ratio));
      letter-spacing: calc(1.542 * var(--display-ratio));
    }

    .recruit-About__imgList {
      gap: calc(59 * var(--display-ratio));
      padding-inline: calc(59 * var(--display-ratio));
      margin-top: calc(96 * var(--display-ratio));
    }

    .recruit-About__imgItem {
      width: calc(449.743 * var(--display-ratio));
      height: calc(318 * var(--display-ratio));
      border-radius: calc(14.324 * var(--display-ratio));
    }
  }
}

.recruit-Service {
  padding-top: 34px;
  background: #F2F2F2;

  .recruit-Service__title {
    display: inline-flex;
    align-items: center;
    color: #2a2a2a;
    font-family: 'PA1 Gothic Std';
    font-size: 18.6px;
    font-weight: 500;
    line-height: 121.3%;
    letter-spacing: 1.302px;
    margin-bottom: 0;
    padding-left: 20px;
  }

  .recruit-Service__title::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 6px;
    flex-shrink: 0;
    background: #EC6518;
    margin-right: 9.6px;
  }

  .recruit-Service__list {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 45px;
    padding: 0 20px;
    margin-top: 22px;
  }

  .recruit-Service__item {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    width: 100%;
    border-radius: 5.754px;
    overflow: hidden;
    background: #fff;
  }

  .recruit-Service__itemImg {
    flex-shrink: 0;
    display: flex;
    width: 100%;
    height: 211.182px;
    object-fit: cover;
  }

  .recruit-Service__itemTitle {
    display: flex;
    flex-shrink: 0;
    gap: 6px;
    color: #1E1D1C;
    font-family: 'PA1 Gothic Std';
    font-size: 17.46px;
    font-weight: 600;
    line-height: 152%;
    letter-spacing: 1.746px;
    padding-top: 12px;
    padding-left: 18px;
    margin-bottom: 0;
  }

  .recruit-Service__itemTitle::before {
    display: inline-flex;
    color: #EC6518;
    font-family: "brandon-grotesque";
    font-size: 33.98px;
    font-weight: bold;
    letter-spacing: 0.34px;
  }

  .recruit-Service__item--01 .recruit-Service__itemTitle::before {
    content: "01";
  }
  .recruit-Service__item--02 .recruit-Service__itemTitle::before {
    content: "02";
  }
  .recruit-Service__item--03 .recruit-Service__itemTitle::before {
    content: "03";
  }
  .recruit-Service__item--04 .recruit-Service__itemTitle::before {
    content: "04";
  }

  .recruit-Service__itemDesc {
    flex-shrink: 0;
    color: #1E1D1C;
    font-family: 'PA1 Gothic Std';
    font-size: 12px;
    font-weight: 500;
    line-height: 210%;
    margin-top: 6px;
    margin-bottom: 0;
    padding-inline: 18px;
    padding-bottom: 18px;
  }
  
  .recruit-Service__itemDescStrong {
    color: #EC6518;
  }
  
  .recruit-Service__video {
    background: #fff;
    margin-top: 26px;
    padding-top: 37px;
    padding-inline: 20px;
    padding-bottom: 55px;
  }


  .recruit-Service__video iframe {
    display: flex;
    border-radius: 13.527px;
    width: 353px;
    height: 189.383px;
    margin-inline: auto;
  }

  @media (min-width: 768px) {
    padding-top: 0;
    padding-inline: calc(200 * var(--display-ratio));
    padding-bottom: calc(146 * var(--display-ratio));

    .recruit-Service__title {
      color: #2a2a2a;
      font-size: calc(29.036 * var(--display-ratio));
      letter-spacing: calc(2.032 * var(--display-ratio));
      padding-left: 0;
    }

    .recruit-Service__title::before {
      width: calc(16 * var(--display-ratio));
      height: calc(16 * var(--display-ratio));
      border-radius: calc(8 * var(--display-ratio));
      margin-right: calc(13 * var(--display-ratio));
    }

    .recruit-Service__list {
      justify-content: center;
      flex-wrap: wrap;
      flex-direction: row;
      gap: calc(35 * var(--display-ratio)) calc(30 * var(--display-ratio));
      padding: 0;
      margin-top: calc(32 * var(--display-ratio));
    }

    .recruit-Service__item {
      width: calc((100% - calc(35 * var(--display-ratio))) / 2);
      height: calc(382.48 * var(--display-ratio));
      border-radius: calc(6.89 * var(--display-ratio));
    }

    .recruit-Service__itemImg {
      height: calc(252.826 * var(--display-ratio));
    }

    .recruit-Service__itemTitle {
      gap: calc(6 * var(--display-ratio));
      font-size: calc(20.903 * var(--display-ratio));
      letter-spacing: calc(2.09 * var(--display-ratio));
      padding-top: calc(12 * var(--display-ratio));
      padding-left: calc(18 * var(--display-ratio));
    }

    .recruit-Service__itemTitle::before {
      font-size: calc(40.681 * var(--display-ratio));
      letter-spacing: calc(0.407 * var(--display-ratio));
    }

    .recruit-Service__itemDesc {
      font-size: calc(11.067 * var(--display-ratio));
      font-weight: 600;
      margin-top: calc(6 * var(--display-ratio));
      padding-inline: calc(18 * var(--display-ratio));
      padding-bottom: calc(18 * var(--display-ratio));
    }
    
    
    .recruit-Service__video {
      background: transparent;
      margin-top: calc(112 * var(--display-ratio));
      padding-top: 0;
      padding-inline: 0;
      padding-bottom: 0;
    }


    .recruit-Service__video iframe {
      border-radius: calc(33.723 * var(--display-ratio));
      width: 100%;
      height: calc(472.117 * var(--display-ratio));
      object-fit: contain;
    }
  }
}

.recruit-Offer {
  .recruit-Offer__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-inline: 20px;
  }

  .recruit-Offer__title {
    display: inline-flex;
    align-items: center;
    color: #000;
    font-family: 'PA1 Gothic Std';
    font-size: 23.229px;
    font-weight: 500;
    line-height: 121.3%;
    letter-spacing: 1.626px;
    margin-bottom: 0;
  }

  .recruit-Offer__title::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 6px;
    flex-shrink: 0;
    background: #EC6518;
    margin-right: 9.6px;
  }

  .recruit-Offer__tabs {
    display: flex;
    align-items: center;
  }

  .recruit-Offer__tab {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 40px;
    border-radius: 10px;
    border: 1px solid #bbb;
    background: #F7F7F7;
    cursor: pointer;
    font-size: 16px;
    color: #909090;
    font-weight: 500;
    line-height: 121.3%;
    letter-spacing: 1.051px;
  }

  .recruit-Offer__tab:first-child {
    border-radius: 10px 0 0 10px;
  }

  .recruit-Offer__tab:last-child {
    border-radius: 0 10px 10px 0;
  }

  .recruit-Offer__tab.recruit-Offer__tab--isActive {
    border: 1px solid #EC6518;
    background: #EC6518;
    color: #fff;
  }

  .recruit-Offer__content {
    margin-top: 25px;
    padding-inline: 20px;
    padding-bottom: 33px;
  }

  .recruit-Offer__panel {
    display: none;
  }

  .recruit-Offer__panel.recruit-Offer__panel--isActive {
    display: block;
  }

  .recruit-Offer__list {
    margin-bottom: 0;
  }

  .recruit-Offer__item {
    display: flex;
    align-items: stretch;
    width: 100%;
    min-height: 46px;
  }

  .recruit-Offer__itemKey {
    position: relative;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 14px 20px;
    width: 96px;

    color: #EC6518;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-weight: 700;
  }

  .recruit-Offer__itemKey::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 100%;
    background: #EC6518;
  }

  .recruit-Offer__item:last-of-type .recruit-Offer__itemKey::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 1px;
    width: 100%;
    background: #EC6518;
  }

  .recruit-Offer__itemValue {
    position: relative;
    flex-grow: 1;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 14px 0px 14px 12px;
    width: 100%;
    margin-bottom: 0;

    color: #565656;
    font-family: "Noto Sans JP";
    font-size: 12px;
    font-weight: 700;
  }

  .recruit-Offer__itemValue::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    height: 1px;
    width: 100%;
    background: #CECECE;
  }

  .recruit-Offer__item:last-of-type .recruit-Offer__itemValue::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    height: 1px;
    width: 100%;
    background: #CECECE;
  }

  .recruit-Offer__support {
    padding: 33px 32px 40px;
    background: #EC6518;
  }

  .recruit-Offer__supportList {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 14px;
  }

  .recruit-Offer__supportItem {
    flex-shrink: 0;
    width: 232.218px;
    height: 51.954px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 7.872px;
    background: #FFF;

    color: #EC6518;
    font-family: 'PA1 Gothic Std';
    font-size: 22.856px;
    font-weight: 500;
    line-height: 121.3%;
    letter-spacing: 1.6px;
  }

  .recruit-Offer__supportDesc {
    color: #fff;
    text-align: center;
    font-family: 'PA1 Gothic Std';
    font-size: 19.527px;
    font-weight: 500;
    line-height: 121.3%;
    letter-spacing: 1.367px;
    margin-top: 24px;
    margin-bottom: 0;
  }

  @media (min-width: 768px) {
    padding-top: calc(53 * var(--display-ratio));

    .recruit-Offer__header {
      padding-inline: calc(200 * var(--display-ratio));
    }

    .recruit-Offer__title {
      color: #2d2d2d;
      font-size: calc(29.036 * var(--display-ratio));
      letter-spacing: 2.032px;
    }

    .recruit-Offer__title::before {
      width: calc(16 * var(--display-ratio));
      height: calc(16 * var(--display-ratio));
      border-radius: calc(8 * var(--display-ratio));
      margin-right: calc(13 * var(--display-ratio));
    }

    .recruit-Offer__tab {
      width: calc(286.651 * var(--display-ratio));
      height: calc(45.604 * var(--display-ratio));
      border-radius: calc(10 * var(--display-ratio));
      border: calc(1 * var(--display-ratio)) solid #bbb;
      background: #F7F7F7;
      cursor: pointer;
      font-size: calc(15 * var(--display-ratio));
      color: #909090;
      letter-spacing: calc(1.051 * var(--display-ratio));
    }

    .recruit-Offer__tab:first-child {
      border-radius: calc(10 * var(--display-ratio)) 0 0 calc(10 * var(--display-ratio));
    }

    .recruit-Offer__tab:last-child {
      border-radius: 0 calc(10 * var(--display-ratio)) calc(10 * var(--display-ratio)) 0;
    }

    .recruit-Offer__tab.recruit-Offer__tab--isActive {
      border: calc(1 * var(--display-ratio)) solid #EC6518;
    }

    .recruit-Offer__content {
      margin-top: calc(59 * var(--display-ratio));
      padding-inline: calc(200 * var(--display-ratio));
      padding-bottom: calc(76 * var(--display-ratio));
    }

    .recruit-Offer__item {
      justify-content: space-between;
      gap: calc(24 * var(--display-ratio));
      min-height: calc(62 * var(--display-ratio));
    }

    .recruit-Offer__itemKey {
      padding: calc(17 * var(--display-ratio));
      width: calc(197 * var(--display-ratio));

      font-family: 'PA1 Gothic Std';
      font-size: calc(14 * var(--display-ratio));
      font-weight: 500;
    }

    .recruit-Offer__itemValue {
      padding: calc(12 * var(--display-ratio)) 0px calc(12 * var(--display-ratio)) calc(28 * var(--display-ratio));

      color: #4b4b4b;
      font-family: 'PA1 Gothic Std';
      font-size: calc(12 * var(--display-ratio));
      font-weight: 500;
      line-height: 1.5;
    }

    .recruit-Offer__support {
      margin-inline: auto;
      padding: calc(42 * var(--display-ratio)) calc(200 * var(--display-ratio)) calc(42 * var(--display-ratio));
    }

    .recruit-Offer__supportList {
      flex-direction: row;
      justify-content: center;
      gap: calc(30 * var(--display-ratio));
    }

    .recruit-Offer__supportItem {
      width: calc(244.108 * var(--display-ratio));
      height: calc(54.614 * var(--display-ratio));
      border-radius: calc(8.27 * var(--display-ratio));

      font-size: calc(24.027 * var(--display-ratio));
      letter-spacing: calc(1.682 * var(--display-ratio));
    }

    .recruit-Offer__supportDesc {
      font-size: calc(24.027 * var(--display-ratio));
      letter-spacing: calc(1.682 * var(--display-ratio));

      margin-top: calc(21.51 * var(--display-ratio));
    }
  }
}

.recruit-Faq {
  padding: 47px 20px 53px;
  background: #252525;

  .recruit-Faq__title {
    display: inline-flex;
    align-items: center;
    color: #fff;
    font-family: 'PA1 Gothic Std';
    font-size: 23.229px;
    font-weight: 500;
    line-height: 121.3%;
    letter-spacing: 1.302px;
    margin-bottom: 0;
  }

  .recruit-Faq__title::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 6px;
    flex-shrink: 0;
    background: #EC6518;
    margin-right: 9.6px;
  }

  .recruit-Faq__list {
    margin-top: 24px;
  }

  .recruit-Faq__item {
    border-radius: 10px;
    background-color: #f4f4f4;
    color: #333;
    list-style: none;

    &[open] .recruit-Faq__questionOpeningImg {
      opacity: 1;
      visibility: visible;
    }

    &:not([open]) .recruit-Faq__questionOpeningImg {
      opacity: 0;
      visibility: hidden;
    }

    &[open] .recruit-Faq__questionClosingImg {
      opacity: 0;
      visibility: hidden;
    }

    &:not([open]) .recruit-Faq__questionClosingImg {
      opacity: 1;
      visibility: visible;
    }
  }

  .recruit-Faq__item + .recruit-Faq__item {
    margin-top: 18px;
  }

  .recruit-Faq__question {
    padding: 24px 14px;
    position: relative;
    display: flex;
    align-items: center;
    cursor: pointer;
  }

  .recruit-Faq__questionIcon,
  .recruit-Faq__answerIcon {
    width: 28px;
    height: 28px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;

    color: #F4F4F4;
    text-align: center;
    font-family: "brandon-grotesque";
    font-size: 15.975px;
    font-weight: 390;
  }

  .recruit-Faq__questionIcon {
    background: #EC6518;
  }

  .recruit-Faq__answerIcon {
    background: #AEAEAE;
  }

  .recruit-Faq__questionOpeningImg,
  .recruit-Faq__questionClosingImg {
    pointer-events: none;
    transition: opacity .2s ease-out, visibility .2s ease-out;
    position: absolute;
    right: 20px;
    top: 50%;
    translate: 0 -50%;
  }

  .recruit-Faq__questionText {
    padding-left: 13px;
    padding-right: 28px;

    color: #333;
    font-family: 'PA1 Gothic Std';
    font-size: 14px;
    font-weight: 500;
    line-height: 160%;
    letter-spacing: 1.4px;
  }

  .recruit-Faq__answerText {
    padding-left: 13px;

    color: #333;
    font-family: 'PA1 Gothic Std';
    font-size: 14px;
    font-weight: 400;
    line-height: 160%;
    letter-spacing: 1.4px;
  }

  .recruit-Faq__question::-webkit-details-marker {
    /* Safari-デフォルトの三角形を削除*/
    display: none;
  }

  .recruit-Faq__answer {
    overflow: hidden;
    /* padding・marginはここでは設定しない */	
  }

  .recruit-Faq__answer::before {
    content: "";
    display: block;
    height: 1px;
    width: calc(100% - 28px);
    margin-inline: 14px;
    background-image : linear-gradient(to right, #000 4px, transparent 4px);
    background-size: 8px 1px;
    background-repeat: repeat-x; 
    background-position: left bottom;
  }

  .recruit-Faq__answerInner {
    padding: 19px 14px;
    position: relative;
    display: flex;
    align-items: center;
  }

  @media (min-width: 768px) {
    padding-top: calc(98 * var(--display-ratio));
    padding-inline: calc(200 * var(--display-ratio));
    padding-bottom: calc(134 * var(--display-ratio));

    .recruit-Faq__title {
      font-size: calc(29.036 * var(--display-ratio));
      letter-spacing: calc(2.032 * var(--display-ratio));
    }

    .recruit-Faq__title::before {
      width: calc(16 * var(--display-ratio));
      height: calc(16 * var(--display-ratio));
      border-radius: calc(8 * var(--display-ratio));
      margin-right: calc(13 * var(--display-ratio));
    }

    .recruit-Faq__list {
      margin-top: calc(32 * var(--display-ratio));
    }

    .recruit-Faq__item {
      border-radius: calc(10 * var(--display-ratio));
    }

    .recruit-Faq__item + .recruit-Faq__item {
      margin-top: calc(23 * var(--display-ratio));
    }

    .recruit-Faq__question {
      padding: calc(17 * var(--display-ratio)) calc(18 * var(--display-ratio)) calc(21 * var(--display-ratio));
    }

    .recruit-Faq__questionIcon,
    .recruit-Faq__answerIcon {
      width: calc(28 * var(--display-ratio));
      height: calc(28 * var(--display-ratio));
      border-radius: calc(14 * var(--display-ratio));
      font-size: calc(15.975 * var(--display-ratio));
    }

    .recruit-Faq__questionOpeningImg,
    .recruit-Faq__questionClosingImg {
      right: calc(20 * var(--display-ratio));
    }

    .recruit-Faq__questionText {
      padding-left: calc(14 * var(--display-ratio));
      padding-right: calc(34 * var(--display-ratio));

      font-size: calc(14.491 * var(--display-ratio));
      font-weight: 700;
      line-height: normal;
      letter-spacing: calc(1.449 * var(--display-ratio));
    }

    .recruit-Faq__answerText {
      padding-left: calc(13 * var(--display-ratio));

      font-size: calc(12.881 * var(--display-ratio));
      font-weight: 500;
      line-height: 200%;
      letter-spacing: calc(1.288 * var(--display-ratio));
    }

    .recruit-Faq__answerInner {
      padding: calc(21 * var(--display-ratio)) calc(18 * var(--display-ratio)) calc(24 * var(--display-ratio));
    }
  }
}

.recruit-Entry {
  padding: 39px 20px 62px;
  background: #F2F2F2;

  .recruit-Entry__title {
    display: inline-flex;
    align-items: center;
    color: #2d2d2d;
    font-family: 'PA1 Gothic Std';
    font-size: 23.229px;
    font-weight: 500;
    line-height: 121.3%;
    margin-bottom: 0;
  }

  .recruit-Entry__title::before {
    content: "";
    display: inline-block;
    width: 12px;
    height: 12px;
    border-radius: 6px;
    flex-shrink: 0;
    background: #EC6518;
    margin-right: 9.6px;
  }

  .recruit-Entry__content {
    margin-top: 27px;
    padding: 30px 20px 40px;
    background: #fff;
    border-radius: 10px;
  }

  .recruit-Entry__item ~ .recruit-Entry__item {
    margin-top: 14px;
  }

  .recruit-Entry__itemKey {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #565656;
    font-family: "Noto Sans JP";
    font-size: 14.062px;
    font-weight: 700;
    line-height: 20.089px;
  }

  .recruit-Entry__itemRequired,
  .recruit-Entry__itemAny {
    display: inline-block;
    font-size: 12.053px;
  }

  .recruit-Entry__itemRequired {
    color: #EC6518;
  }

  .recruit-Entry__itemAny {
    color: #9F9F9F;
  }

  .recruit-Entry__itemValue {
    margin-top: 8px;

    input[type="text"],
    input[type="email"],
    textarea {
      width: 100%;
      min-height: 40px;
      padding: 4px 12px;
      background: #F2F2F2;
      border-radius: 5px;
      font-size: 14px;
      color: #333;
    }

    textarea {
      min-height: 260px;
      padding: 12px;
    }
  }

  .recruit-Entry__itemValue--radioTabs {
    display: flex;
    align-items: center;
    gap: 12px;

    label {
      display: flex;
      align-items: center;
      justify-content: center;
      text-align: center;
      width: 121.393px;
      height: 41.25px;
      flex-shrink: 0;

      border-radius: 23.572px;
      border: 1px solid #D0D0D2;
      background: #FFF;
      cursor: pointer;

      &:has(input[type="radio"][checked="checked"]) {
        border: 1px solid #EC6518;
        background: #EC6518;
      }
    }

    .mwform-radio-field-text {
      color: #6C7284;
      font-family: "Noto Sans JP";
      font-size: 16.5px;
      font-weight: 700;
    }

    input[type="radio"][checked="checked"] + .mwform-radio-field-text {
      color: #fff;
    }
  }

  .recruit-Entry__submit {
    margin-top: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 50px;
    border-radius: 5px;
    background: #EC6518;
    color: #fff;

    text-align: center;
    font-family: "Noto Sans JP";
    font-size: 14.138px;
    font-weight: 700;
  }

  @media (min-width: 768px) {
    padding: calc(106 * var(--display-ratio)) calc(200 * var(--display-ratio));

    .recruit-Entry__title {
      color: #252525;
      font-size: calc(29.036 * var(--display-ratio));
      letter-spacing: calc(2.032 * var(--display-ratio));
    }

    .recruit-Entry__title::before {
      width: calc(16 * var(--display-ratio));
      height: calc(16 * var(--display-ratio));
      border-radius: calc(8 * var(--display-ratio));
      margin-right: calc(13 * var(--display-ratio));
    }

    .recruit-Entry__content {
      margin-top: calc(41 * var(--display-ratio));
      padding: calc(48 * var(--display-ratio)) calc(200 * var(--display-ratio)) calc(51 * var(--display-ratio));
      border-radius: calc(10 * var(--display-ratio));
    }

    .recruit-Entry__item ~ .recruit-Entry__item {
      margin-top: calc(15 * var(--display-ratio));
    }

    .recruit-Entry__itemKey {
      gap: calc(8 * var(--display-ratio));
      font-size: calc(14.855 * var(--display-ratio));
      line-height: 1.43;
    }

    .recruit-Entry__itemRequired,
    .recruit-Entry__itemAny {
      font-size: calc(12.733 * var(--display-ratio));
    }

    .recruit-Entry__itemValue {
      margin-top: calc(9 * var(--display-ratio));

      input[type="text"],
      input[type="email"],
      textarea {
        min-height: calc(42 * var(--display-ratio));
        padding: calc(4 * var(--display-ratio)) calc(12 * var(--display-ratio));
        border-radius: calc(5 * var(--display-ratio));
        font-size: calc(14 * var(--display-ratio));
      }

      textarea {
        min-height: calc(274 * var(--display-ratio));
        padding: calc(12 * var(--display-ratio));
      }
    }

    .recruit-Entry__itemValue--radioTabs {
      gap: calc(13 * var(--display-ratio));

      label {
        width: calc(138 * var(--display-ratio));
        height: calc(37 * var(--display-ratio));

        border-radius: calc(21.2 * var(--display-ratio));
      }

      .mwform-radio-field-text {
        font-size: calc(14.855 * var(--display-ratio));
      }
    }

    .recruit-Entry__submit {
      margin-top: calc(39 * var(--display-ratio));
      height: calc(52 * var(--display-ratio));
      border-radius: calc(5 * var(--display-ratio));

      font-size: calc(14.935 * var(--display-ratio));
    }
  }
}

/** 外部要素の微調整 */
body:has(.recruit-page) .footer_cta_contact {
  margin-top: 0;
  background: #F2F2F2;
}
