/* =============================
   recruit.css
   採用ページ専用スタイル
============================= */

/* コンポーネントスタイルの読み込み */

:where(:root) {
  word-wrap: anywhere;
  line-break: strict;
}

.title__ribbon {
  --front-color: var(--theme-pink-500);
  --back-color: var(--theme-pink-700);
  --shadow-color: var(--theme-pink-800);
  display: inline-block;
  position: relative;
  /* height: 45px; */
  text-align: center;
  box-sizing: border-box;
  font-size: 18px;
  z-index: 10;
  &::before,
  &::after {
    content: "";
    position: absolute;
    width: 0.5555555556em;
    bottom: -0.5555555556em;
    border: 1.1111111111em solid var(--back-color);
    z-index: -2;
  }
  &::before {
    left: -1.3888888889em;
    border-left-color: transparent;
  }
  &::after {
    right: -1.3888888889em;
    border-right-color: transparent;
  }
  .title__text {
    display: inline-block;
    position: relative;
    margin: 0;
    padding: .5em 1em;
    line-height: 150%;
    font-size: 1em;
    color: #FFF;
    background: var(--front-color);
    &::before,
    &::after {
      content: "";
      position: absolute;
      top: 100%;
      border: none;
      border-bottom: solid 0.5555555556em transparent;
    }
    &::before {
      left: 0;
      border-right: solid 0.8333333333 var(--shadow-color);
    }
    &::after {
      right: 0;
      border-left: solid 0.8333333333 var(--shadow-color);
    }
  }
}

@media (width <= 600px) {
  .title__ribbon {
    font-size: 16px;
  }
}

.theme-table {
  container-type: inline-size;
}

.theme-table__table {
  width: 100%;
  --border-color: #bbbbbb;
}

/* 白テーマ用 */
.theme-table__table[data-color="white"] {
  --border-color: rgba(255, 255, 255, 0.3);
  --main-color: #ffffff;
  --sub-color: #ffffff;
}

.theme-table__row:last-child {
  .theme-table__head {
    border-bottom: 0px solid var(--main-color, var(--theme-pink-500));
  }
  .theme-table__description {
    border-bottom: 0px solid var(--border-color);
  }
}
.theme-table__head {
  border-bottom: 1px solid var(--main-color, var(--theme-pink-500));
  padding: 1em 1.5em;
  text-align: left;
  font-weight: 700;
  color: var(--main-color, var(--theme-pink-500));
}

.theme-table__description {
  border-bottom: 1px solid var(--border-color);
  padding: 1em 1.5em;
  color: var(--sub-color, #000);
}

/* description内の要素間マージン */
.theme-table__description > :not(:last-child) {
  margin-bottom: 2rem;
}

/* --- コンテナクエリ (小画面用) --- */
@container (width <= 500px) {
  .theme-table__head,
  .theme-table__description {
    display: block;
    padding-left: 0;
    padding-right: 0;
  }

  .theme-table__head {
    border-bottom: none;
    padding-bottom: 0;
  }

  .theme-table__description {
    padding-top: 0.75em;
  }
}

.tabs__buttons {
  padding: 0;
  margin: 0;
  display: flex;
  align-items: flex-end;
  gap: .25em;
  overflow: auto;
}
.tabs__button {
  white-space: nowrap;
  display: inline-flex;
  border-radius: .25em .25em 0 0;
  padding: 0.5em 1.25em;
  font-weight: 500;
  transition: all 200ms;
  color: var(--theme-pink-500);
  background-color: var(--theme-pink-100);
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  appearance: none;
  &:hover {
    background-color: white;
    color: var(--theme-pink-500);
  }
  &[aria-selected="true"] {
    background-color: white;
    color: var(--theme-pink-500);
    font-weight: bold;
  }
}

.stitch-box {
  --background-color: #fff;
  --border-color: var(--theme-pink-500);
  --border-inset: 16px;
  background-color: var(--background-color);
  box-shadow: 0px 10px 10px color-mix(in srgb, var(--shadow-color, black) 15%, transparent);
  padding: 80px;
  position: relative;
  color: var(--text-color, inherit);
  &::before {
    content: "";
    width: calc(100% - var(--border-inset) * 2);
    height: calc(100% - var(--border-inset) * 2);
    position: absolute;
    inset: 0;
    margin: auto;
    border: 2px dashed var(--border-color);
    pointer-events: none;
  }
  &[data-color="pink-500"] {
    --background-color: var(--theme-pink-500);
    --text-color: white;
    --border-color: white;
  }
  &[data-theme="light"] {
    --background-color: var(--theme-color-50);
    --border-color: var(--theme-color-500);
    --shadow-color: var(--theme-color-800);
  }
  &[data-size="sm"] {
    padding: 56px;
  }
}

@media (width <= 768px) {
  .stitch-box {
    --border-inset: 16px;
    padding: 56px;
  }
}

@media (width <= 600px) {
  .stitch-box {
    --border-inset: 8px;
    padding: 32px;
    &[data-size="sm"] {
      padding: 32px;
    }
  }
}

.btn {
  display: inline-flex;
  align-items: center;
  gap: 0.625em;
  padding: 0.625em 1.25em;
  border-radius: .25em;
  text-decoration: none;
  text-align: center;
  --background-color: #3f8fc6;
  background-color: var(--background-color, var(--theme-pink-500));
  color: white;
  transition: all 300ms;
  &[data-size="lg"] {
    padding: 0.75em 1em;
    font-weight: bold;
    gap: 0.5em;
    border-radius: 1rem;
  }
  &[data-color="pink"] {
    --background-color: var(--theme-pink-500);
    color: var(--theme-pink-50);
  }
  &[data-color="macha"] {
    --background-color: var(--theme-macha-500);
    color: var(--theme-macha-50);
  }
  &[data-color="blue"] {
    --background-color: var(--theme-blue-500);
    color: var(--theme-blue-50);
  }
  &:hover {
    transform: scale(1.06);
  }
}
.btn__body-small {
  font-size: .8em;
}
.btn__prepend,
.btn__append {
  width: 1em;
  font-size: 1.5em;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
}

.heroicons-outline--clipboard-list {
  display: inline-block;
  width: 1em;
  height: 1em;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M9 5H7a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V7a2 2 0 0 0-2-2h-2M9 5a2 2 0 0 0 2 2h2a2 2 0 0 0 2-2M9 5a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2m-3 7h3m-3 4h3m-6-4h.01M9 16h.01'/%3E%3C/svg%3E");
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}
.tabler--brand-cake {
  display: inline-block;
  width: 1em;
  height: 1em;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='none' stroke='%23000' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M20.84 12c0 2.05.985 3.225-.04 5c-1.026 1.775-2.537 1.51-4.314 2.534C14.71 20.56 14.184 22 12.133 22s-2.576-1.441-4.353-2.466C6.004 18.51 4.492 18.775 3.466 17c-1.025-1.775-.04-2.95-.04-5s-.985-3.225.04-5C4.492 5.225 6.003 5.49 7.78 4.466C9.556 3.44 10.082 2 12.133 2s2.577 1.441 4.353 2.466c1.776 1.024 3.288.759 4.313 2.534c1.026 1.775.04 2.95.04 5z'/%3E%3C/svg%3E");
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

.tabler--label-filled {
  display: inline-block;
  width: 1em;
  height: 1em;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M16.52 6a2 2 0 0 1 1.561.75l3.7 4.625a1 1 0 0 1 0 1.25l-3.7 4.624A2 2 0 0 1 16.52 18H6a3 3 0 0 1-3-3V9a3 3 0 0 1 3-3z'/%3E%3C/svg%3E");
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

.material-symbols--first-page-rounded {
  display: inline-block;
  width: 1em;
  height: 1em;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M7 18q-.425 0-.712-.288T6 17V7q0-.425.288-.712T7 6t.713.288T8 7v10q0 .425-.288.713T7 18m6.8-6l3.9 3.9q.275.275.275.7t-.275.7t-.7.275t-.7-.275l-4.6-4.6q-.15-.15-.212-.325T11.425 12t.063-.375t.212-.325l4.6-4.6q.275-.275.7-.275t.7.275t.275.7t-.275.7z'/%3E%3C/svg%3E");
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

.material-symbols--chevron-left-rounded {
  display: inline-block;
  width: 1em;
  height: 1em;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='m10.8 12l3.9 3.9q.275.275.275.7t-.275.7t-.7.275t-.7-.275l-4.6-4.6q-.15-.15-.212-.325T8.425 12t.063-.375t.212-.325l4.6-4.6q.275-.275.7-.275t.7.275t.275.7t-.275.7z'/%3E%3C/svg%3E");
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

.material-symbols--chevron-right-rounded {
  display: inline-block;
  width: 1em;
  height: 1em;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M12.6 12L8.7 8.1q-.275-.275-.275-.7t.275-.7t.7-.275t.7.275l4.6 4.6q.15.15.213.325t.062.375t-.062.375t-.213.325l-4.6 4.6q-.275.275-.7.275t-.7-.275t-.275-.7t.275-.7z'/%3E%3C/svg%3E");
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

.material-symbols--last-page-rounded {
  display: inline-block;
  width: 1em;
  height: 1em;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23000' d='M10.2 12L6.3 8.1q-.275-.275-.275-.7t.275-.7t.7-.275t.7.275l4.6 4.6q.15.15.213.325t.062.375t-.062.375t-.213.325l-4.6 4.6q-.275.275-.7.275t-.7-.275t-.275-.7t.275-.7zM17 6q.425 0 .713.288T18 7v10q0 .425-.288.713T17 18t-.712-.288T16 17V7q0-.425.288-.712T17 6'/%3E%3C/svg%3E");
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
}

.ant-design--file-excel-outlined {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024' width='1024' height='1024'%3E%3Cpath fill='black' d='M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7M790.2 326H602V137.8zm1.8 562H232V136h302v216a42 42 0 0 0 42 42h216zM514.1 580.1l-61.8-102.4c-2.2-3.6-6.1-5.8-10.3-5.8h-38.4c-2.3 0-4.5.6-6.4 1.9c-5.6 3.5-7.3 10.9-3.7 16.6l82.3 130.4l-83.4 132.8a12.04 12.04 0 0 0 10.2 18.4h34.5c4.2 0 8-2.2 10.2-5.7L510 664.8l62.3 101.4c2.2 3.6 6.1 5.7 10.2 5.7H620c2.3 0 4.5-.7 6.5-1.9c5.6-3.6 7.2-11 3.6-16.6l-84-130.4l85.3-132.5a12.04 12.04 0 0 0-10.1-18.5h-35.7c-4.2 0-8.1 2.2-10.3 5.8z'/%3E%3C/svg%3E");
}
.ant-design--file-pdf-outlined {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024' width='1024' height='1024'%3E%3Cpath fill='black' d='m531.3 574.4l.3-1.4c5.8-23.9 13.1-53.7 7.4-80.7c-3.8-21.3-19.5-29.6-32.9-30.2c-15.8-.7-29.9 8.3-33.4 21.4c-6.6 24-.7 56.8 10.1 98.6c-13.6 32.4-35.3 79.5-51.2 107.5c-29.6 15.3-69.3 38.9-75.2 68.7c-1.2 5.5.2 12.5 3.5 18.8c3.7 7 9.6 12.4 16.5 15c3 1.1 6.6 2 10.8 2c17.6 0 46.1-14.2 84.1-79.4c5.8-1.9 11.8-3.9 17.6-5.9c27.2-9.2 55.4-18.8 80.9-23.1c28.2 15.1 60.3 24.8 82.1 24.8c21.6 0 30.1-12.8 33.3-20.5c5.6-13.5 2.9-30.5-6.2-39.6c-13.2-13-45.3-16.4-95.3-10.2c-24.6-15-40.7-35.4-52.4-65.8M421.6 726.3c-13.9 20.2-24.4 30.3-30.1 34.7c6.7-12.3 19.8-25.3 30.1-34.7m87.6-235.5c5.2 8.9 4.5 35.8.5 49.4c-4.9-19.9-5.6-48.1-2.7-51.4c.8.1 1.5.7 2.2 2m-1.6 120.5c10.7 18.5 24.2 34.4 39.1 46.2c-21.6 4.9-41.3 13-58.9 20.2c-4.2 1.7-8.3 3.4-12.3 5c13.3-24.1 24.4-51.4 32.1-71.4m155.6 65.5c.1.2.2.5-.4.9h-.2l-.2.3c-.8.5-9 5.3-44.3-8.6c40.6-1.9 45 7.3 45.1 7.4m191.4-388.2L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7M790.2 326H602V137.8zm1.8 562H232V136h302v216a42 42 0 0 0 42 42h216z'/%3E%3C/svg%3E");
}
.ant-design--file-ppt-outlined {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024' width='1024' height='1024'%3E%3Cpath fill='black' d='M424 476c-4.4 0-8 3.6-8 8v276c0 4.4 3.6 8 8 8h32.5c4.4 0 8-3.6 8-8v-95.5h63.3c59.4 0 96.2-38.9 96.2-94.1c0-54.5-36.3-94.3-96-94.3H424zm150.6 94.3c0 43.4-26.5 54.3-71.2 54.3h-38.9V516.2h56.2c33.8 0 53.9 19.7 53.9 54.1m280-281.7L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7M790.2 326H602V137.8zm1.8 562H232V136h302v216a42 42 0 0 0 42 42h216z'/%3E%3C/svg%3E");
}
.ant-design--file-word-outlined {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: currentColor;
  -webkit-mask-image: var(--svg);
  mask-image: var(--svg);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  --svg: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1024 1024' width='1024' height='1024'%3E%3Cpath fill='black' d='M854.6 288.6L639.4 73.4c-6-6-14.1-9.4-22.6-9.4H192c-17.7 0-32 14.3-32 32v832c0 17.7 14.3 32 32 32h640c17.7 0 32-14.3 32-32V311.3c0-8.5-3.4-16.7-9.4-22.7M790.2 326H602V137.8zm1.8 562H232V136h302v216a42 42 0 0 0 42 42h216zM528.1 472h-32.2c-5.5 0-10.3 3.7-11.6 9.1L434.6 680l-46.1-198.7c-1.3-5.4-6.1-9.3-11.7-9.3h-35.4a12.02 12.02 0 0 0-11.6 15.1l74.2 276c1.4 5.2 6.2 8.9 11.6 8.9h32c5.4 0 10.2-3.6 11.6-8.9l52.8-197l52.8 197c1.4 5.2 6.2 8.9 11.6 8.9h31.8c5.4 0 10.2-3.6 11.6-8.9l74.4-276a12.04 12.04 0 0 0-11.6-15.1H647c-5.6 0-10.4 3.9-11.7 9.3l-45.8 199.1l-49.8-199.3c-1.3-5.4-6.1-9.1-11.6-9.1'/%3E%3C/svg%3E");
}

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

.link-anchor {
  padding-top: 60px;
  margin-top: -60px;
}

.text-pdf {
  color: #b30c00;
}
.text-excel {
  color: #117e43;
}
.text-word {
  color: #1c58bd;
}
.text-ppt {
  color: #D04423;
}


.pagination {
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}
.pagination__list {
  margin-left: auto;
  margin-right: auto;
  display: flex;
  width: fit-content;
  flex-wrap: wrap;
  justify-content: center;
  gap: calc(.25rem * 2);
}
.pagination__item {
  display: block;
  text-align: center;
  font-size: 18px;
}
.pagination__item-body {
  display: grid;
  height: 2em;
  min-width: 2em;
  cursor: pointer;
  align-items: center;
  justify-items: center;
  place-items: center;
  border-radius: 0.25rem;
  padding-left: .4em;
  padding-right: .4em;
  transition-duration: 200ms;
  text-decoration: none;
  background-color: white;
  font-weight: bold;
}
@media (hover: hover) {
  .pagination__item-body:hover {
    background-color: var(--theme-pink-50);
  }
}
.pagination__item-body[data-type="disactive"] {
  pointer-events: none;
  & > * {
    opacity: 0.3;
  }
}
@media (hover: hover) {
  .pagination__item-body[data-type="disactive"]:hover {
    background-color: transparent;
  }
}
.pagination__item-body[data-type="active"] {
  pointer-events: none;
  color: var(--theme-pink-500);
}
.pagination__item-body [class*="icon-"] {
  font-size: 1.4em;
}
@media (max-width: 768px) {
  .pagination__item.is--prev,.pagination__item.is--next {
    width: calc((100% - .5rem) / 2);
  }
  .pagination__item:not(.is--prev):not(.is--next) {
    order: 1;
  }
}

.document-download {
  border-radius: .5rem;
  background-color: #F8F8F1;
  padding-left: calc(.25rem * 6);
  padding-right: calc(.25rem * 6);
  padding-top: calc(.25rem * 4);
  padding-bottom: calc(.25rem * 4);
  margin-top: 32px;
}
.document-download__title {
  font-size: 1.25rem;
  line-height: calc(1.75 / 1.25);
  font-weight: 700;
  color: rgb(153, 161, 175);
}
.document-download__list {
  margin-top: calc(.25rem * 2);
  padding-left: 0;
}
:where(.document-download__list > :not(:last-child)) {
  margin-top: calc(calc(.25rem * 2) * 0);
  margin-bottom: calc(calc(.25rem * 2) * calc(1 - 0));
}
.document-download__list-item {
  position: relative;
  display: flex;
  align-items: center;
  gap: calc(.25rem * 2);
}
.document-download__list-item .icon {
  position: absolute;
  top: calc(.25rem * 0);
  left: calc(.25rem * 0);
  font-size: 1.5rem;
  line-height: calc(2 / 1.5);
}
.document-download__list-item .link-underline {
  padding-left: calc(.25rem * 6);
}
@media (max-width: 600px) {
  .document-download__title {
    font-size: 1.125rem;
    line-height: calc(1.75 / 1.125);
  }
  .document-download__list-item .icon {
    font-size: 1.25rem;
    line-height: calc(1.75 / 1.25);
  }
}
@media (max-width: 414px) {
  .document-download__title {
    font-size: 0.875rem;
    line-height: calc(1.25 / 0.875);
  }
  .document-download {
    padding-left: calc(.25rem * 4);
    padding-right: calc(.25rem * 4);
  }
}



/* ページ専用のスタイル設定・コンポーネント */
.main-content[data-page="recruit"] {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-style: normal;
  background-image: url("/images/recruit/bg-pattern@4x.png");
  background-size: 115px auto;
  margin-bottom: 0;
  padding-bottom: 4em;

  --theme-amber-50:  #FAF3EF;
  --theme-amber-100: #fedecc;
  --theme-amber-200: #DFAC90;
  --theme-amber-300: #D99875;
  --theme-amber-400: #D68F67;
  --theme-amber-500: #D89068;
  --theme-amber-600: #D38459;
  --theme-amber-700: #C96E3C;
  --theme-amber-800: #9E562D;
  --theme-amber-900: #63361D;
  --theme-amber-950: #1B0F08;

  --theme-sky-50:  #F1F5F8;
  --theme-sky-100: #DCEAF4;
  --theme-sky-200: #BED8EA;
  --theme-sky-300: #A6C8E0;
  --theme-sky-400: #96BAD5;
  --theme-sky-500: #91B3CF;
  --theme-sky-600: #86A1C0;
  --theme-sky-700: #6E88A1;
  --theme-sky-800: #4F6176;
  --theme-sky-900: #2B3B47;
  --theme-sky-950: #0A0F13;

  --theme-blue-50:  #F2F6F8;
  --theme-blue-100: #DAEAF2;
  --theme-blue-200: #B8D6E6;
  --theme-blue-300: #97C0D8;
  --theme-blue-400: #7FAACB;
  --theme-blue-500: #6992B2;
  --theme-blue-600: #5F7FA0;
  --theme-blue-700: #4B5F79;
  --theme-blue-800: #334150;
  --theme-blue-900: #162028;
  --theme-blue-950: #07090B;

  --theme-macha-50:  #F3F6F2;
  --theme-macha-100: #E1E8DA;
  --theme-macha-200: #CBD9B9;
  --theme-macha-300: #B8C99A;
  --theme-macha-400: #A9BD83;
  --theme-macha-500: #769D66;
  --theme-macha-600: #6C8F5C;
  --theme-macha-700: #577248;
  --theme-macha-800: #3E5033;
  --theme-macha-900: #222F20;
  --theme-macha-950: #0A0B07;

  --theme-yellow-50:  #FBF8EE;
  --theme-yellow-100: #fff2d4;
  --theme-yellow-200: #E6C984;
  --theme-yellow-300: #E1BD64;
  --theme-yellow-400: #E0B753;
  --theme-yellow-500: #E1B751;
  --theme-yellow-600: #DDB043;
  --theme-yellow-700: #D4A229;
  --theme-yellow-800: #A57F21;
  --theme-yellow-900: #685016;
  --theme-yellow-950: #1D1707;

  --theme-pink-50:  #fff5f4;
  --theme-pink-100: #ffede9;
  --theme-pink-200: #fbdcda;
  --theme-pink-300: #f8c4c5;
  --theme-pink-400: #f39fa3;
  --theme-pink-500: #EF868B;
  --theme-pink-600: #EC7278;
  --theme-pink-700: #EA6169;
  --theme-pink-800: #BC5558;
  --theme-pink-900: #7E3437;
  --theme-pink-950: #3A181A;

  --theme-navy: #213965;
}

[data-color-set="yellow"] {
  --theme-color-50: var(--theme-yellow-50);
  --theme-color-100: var(--theme-yellow-100);
  --theme-color-200: var(--theme-yellow-200);
  --theme-color-300: var(--theme-yellow-300);
  --theme-color-400: var(--theme-yellow-400);
  --theme-color-500: var(--theme-yellow-500);
  --theme-color-600: var(--theme-yellow-600);
  --theme-color-700: var(--theme-yellow-700);
  --theme-color-800: var(--theme-yellow-800);
  --theme-color-900: var(--theme-yellow-900);
  --theme-color-950: var(--theme-yellow-950);
}

[data-color-set="amber"] {
  --theme-color-50: var(--theme-amber-50);
  --theme-color-100: var(--theme-amber-100);
  --theme-color-200: var(--theme-amber-200);
  --theme-color-300: var(--theme-amber-300);
  --theme-color-400: var(--theme-amber-400);
  --theme-color-500: var(--theme-amber-500);
  --theme-color-600: var(--theme-amber-600);
  --theme-color-700: var(--theme-amber-700);
  --theme-color-800: var(--theme-amber-800);
  --theme-color-900: var(--theme-amber-900);
  --theme-color-950: var(--theme-amber-950);
}

[data-color-set="sky"] {
  --theme-color-50: var(--theme-sky-50);
  --theme-color-100: var(--theme-sky-100);
  --theme-color-200: var(--theme-sky-200);
  --theme-color-300: var(--theme-sky-300);
  --theme-color-400: var(--theme-sky-400);
  --theme-color-500: var(--theme-sky-500);
  --theme-color-600: var(--theme-sky-600);
  --theme-color-700: var(--theme-sky-700);
  --theme-color-800: var(--theme-sky-800);
  --theme-color-900: var(--theme-sky-900);
  --theme-color-950: var(--theme-sky-950);
}

[data-color-set="blue"] {
  --theme-color-50: var(--theme-blue-50);
  --theme-color-100: var(--theme-blue-100);
  --theme-color-200: var(--theme-blue-200);
  --theme-color-300: var(--theme-blue-300);
  --theme-color-400: var(--theme-blue-400);
  --theme-color-500: var(--theme-blue-500);
  --theme-color-600: var(--theme-blue-600);
  --theme-color-700: var(--theme-blue-700);
  --theme-color-800: var(--theme-blue-800);
  --theme-color-900: var(--theme-blue-900);
  --theme-color-950: var(--theme-blue-950);
}

[data-color-set="macha"] {
  --theme-color-50: var(--theme-macha-50);
  --theme-color-100: var(--theme-macha-100);
  --theme-color-200: var(--theme-macha-200);
  --theme-color-300: var(--theme-macha-300);
  --theme-color-400: var(--theme-macha-400);
  --theme-color-500: var(--theme-macha-500);
  --theme-color-600: var(--theme-macha-600);
  --theme-color-700: var(--theme-macha-700);
  --theme-color-800: var(--theme-macha-800);
  --theme-color-900: var(--theme-macha-900);
  --theme-color-950: var(--theme-macha-950);
}

[data-color-set="pink"] {
  --theme-color-50: var(--theme-pink-50);
  --theme-color-100: var(--theme-pink-100);
  --theme-color-200: var(--theme-pink-200);
  --theme-color-300: var(--theme-pink-300);
  --theme-color-400: var(--theme-pink-400);
  --theme-color-500: var(--theme-pink-500);
  --theme-color-600: var(--theme-pink-600);
  --theme-color-700: var(--theme-pink-700);
  --theme-color-800: var(--theme-pink-800);
  --theme-color-900: var(--theme-pink-900);
  --theme-color-950: var(--theme-pink-950);
}


/* レイアウトスタイルの読み込み */
.recruit-content__group {
  --bg: var(--fill-background-color, transparent);
  border-image-source: linear-gradient(var(--bg) 0px, var(--bg) 0px);
  border-image-slice: 0 fill;
  border-image-width: 1;
  border-image-outset: 0 100vi;
  padding-block: 80px;
  &[data-color="pink-200"] {
    --fill-background-color: var(--theme-pink-50);
  }
  &[data-color="white"] {
    --fill-background-color: white;
  }
  & > * + * {
    margin-top: 80px;
  }
}

.recruit-content__title {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  font-size: 20px;
  color: var(--theme-pink-500);
  margin-bottom: 32px;
}
.recruit-content__title-icon {
  width: 1em;
  height: 1lh;
  display: grid;
  place-items: center;
}
.recruit-content__title-text {
  margin: 0;
  font-size: 1em;
}

@media (width <= 600px) {
  .recruit-content__group {
    padding-block: 32px;
    & > * + * {
      margin-top: 32px;
    }
  }
  .recruit-content__title {
    margin-bottom: 16px;
    font-size: 16px;
  }
}


.recruit-intro__title {
  background-color: var(--theme-navy);
  color: white;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 80px 40px;
  font-size: 36px;
  letter-spacing: .04em;
}

.recruit-intro__body {
  text-align: center;
  font-size: 18px;
  line-height: 228%;
  :where(p) {
    margin: 0;
  }
  & > * + * {
    margin-top: 1em;
  }
}

@media (width <= 600px) {
  .recruit-intro__title {
    padding: 32px 16px;
    font-size: 24px;
  }
  .recruit-intro__body {
    font-size: 16px;
    line-height: 175%;
  }
}


.recruit-news__container {
  padding-left: 6rem;
  padding-right: 6rem;
}

.recruit-news__content-box {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 56px;
}


.recruit-news__head {
  flex-shrink: 0;
}

.recruit-news__body {
  max-width: 822px;
  width: 100%;
}
.recruit-news__list {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 16px;
  font-size: 1.125em;
}

.recruit-news__item {
  grid-column: span 2 / span 2;
  display: grid;
  grid-template-columns: subgrid;
  border-bottom: 1px solid #d5dbe0;
}

.recruit-news__item[data-new="true"] .recruit-news__item-time {
  display: flex;
  flex-direction: column;
}

.recruit-news__item[data-new="true"] .recruit-news__item-time::before {
  position: absolute;
  bottom: 100%;
  font-size: 10px;
  font-weight: 500;
  color: #ef4444;
  content: 'NEW';
}

.recruit-news__item-detail {
  grid-column: span 2 / span 2;
  display: grid;
  grid-template-columns: subgrid;
  padding: 30px 0;
  transition-duration: 200ms;
  text-decoration: none;
}

.recruit-news__item-detail:hover {
  color: #b97552;
}

.recruit-news__item-time {
  position: relative;
  font-weight: 500;
  letter-spacing: 0.03em;
  color: #bababa;
  transition-duration: 200ms;
}

.recruit-news__item-title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  font-weight: 500;
  margin-block: 0;
}

/* --- Responsive --- */
@media (max-width: 960px) {
  .recruit-news__item-detail {
    padding: 26px 0;
  }
}

@media (max-width: 768px) {
  .recruit-news__item-detail {
    grid-template-columns: 1fr;
    padding: 22px 0;
  }
}

@media (max-width: 600px) {
  .recruit-news__content-box {
    gap: 16px;
  }
  .recruit-news__head {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    width: 100%;
  }

  .recruit-news__head > :not(:last-child) {
    margin-bottom: 0;
  }

  .recruit-news__content-box {
    flex-direction: column;
  }

  .recruit-news__item-detail {
    padding: 18px 0;
  }
}



.recruit-points {
  counter-reset: count 0;
  & > * + * {
    margin-top: 56px;
  }
}
.recruit-points__section {
  counter-increment: count 1;
  & > * + * {
    margin-top: 56px;
  }
}
.recruit-points__section-head {
  display:  flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  &::before {
    content: "POINT"counter(count);
    font-weight: bold;
    font-size: 12px;
    color: var(--theme-pink-500);
    letter-spacing: 0.2em;
  }
}
.recruit-points__body {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
  gap: 32px;
}
.recruit-points__list {
  list-style: none;
  padding: 0;
  margin-bottom: 0;
  display: grid;
  grid-template-columns: 1fr;
  gap: 32px;
  &[data-type="columns"] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
    gap: 32px;
  }
  &[data-type="2columns"] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px;
  }
}
.recruit-points__item {
  & > * + * {
    margin-top: .5em;
  }
}
.recruit-points__item-image {
  img {
    padding: 1px;
    border: 1px solid var(--theme-pink-200);
    border-radius: .75em;
    aspect-ratio: 3 / 2;
    overflow: hidden;
  }
}
.recruit-points__item-detail {
  & > * + * {
    margin-top: .5em;
  }
  :where(.recruit-points__item-text) {
    margin: 0;
  }
}
.recruit-points__item-title {
  font-size: 18px;
  font-weight: bold;
  color: var(--theme-pink-500);
  margin: 0;
}

@media (width <= 600px) {
  .recruit-points__section {
    & > * + * {
      margin-top: 24px;
    }
  }
  .recruit-points__body {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .recruit-points__list {
    gap: 16px;
    &[data-type="columns"] {
      grid-template-columns: 1fr;
      gap: 16px;
    }
  }
}



.recruit-infos__title {
  font-size: 24px;
  font-weight: bold;
  color: var(--theme-pink-500);
  border-bottom: 2px solid var(--theme-pink-200);
  padding-bottom: .25em;
}



.recruit-facility__list {
  & > * + * {
    margin-top: 80px;
  }
}
.recruit-facilty__section {
  & > * + * {
    margin-top: 24px;
  }
}
.recruit-facility__section-info {
  .stitch-box {
    padding: 24px 32px;
  }
  & > * + * {
    margin-top: 24px;
  }
}
.recruit-facility__section-head {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 24px;
}
.recruit-facility__section-image {
  display: grid;
  place-items: center;
  img {
    border-radius: .75rem;
    overflow: hidden;
    padding: 1px;
    border: 1px solid var(--theme-color-200);
  }
}
.recruit-facility__title {
  color: var(--theme-color-500);
  border-top: 2px dashed var(--theme-color-200);
  border-bottom: 2px dashed var(--theme-color-200);
  padding: .5em 1em;
  background-color: var(--theme-color-100);
}
.recruit-facility__title-small {
  margin: 0;
}
.recruit-facility__title-text {
  font-size: 1.5em;
  margin: 0;
}
.recruit-facility__section-detail {
  p {
    margin: 0;
    & + & {
      margin-top: 1em;
    }
  }
}
.recruit-facility__section-subtitle {
  font-weight: bold;
  color: var(--theme-color-500);
  background-color: var(--theme-color-100);
  padding: .25em .75em;
  border-radius: .5em;
  width: fit-content;
  border: 1px solid var(--theme-color-200);
}
.recruit-facility__section-data {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 24px;
  .theme-table {
    --main-color: var(--theme-color-500);
  }
}
.recruit-facility__section-map {
  iframe {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: .75rem;
    overflow: hidden;
    border: 1px solid var(--theme-color-200)!important;
    padding: 1px;
  }
}

@media (width <= 768px) {
  .recruit-facility__section-head {
    grid-template-columns: 1fr;
    gap: 16px;
  }
  .recruit-facility__section-data {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
@media (width <= 600px) {
  .recruit-facility__list {
    & > * + * {
      margin-top: 32px;
    }
  }
  .recruit-facilty__section {
    & > * + * {
      margin-top: 16px;
    }
  }
  .recruit-facility__section-head {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .recruit-facility__section-data {
    grid-template-columns: 1fr;
    gap: 8px;
  }
}

.recruit-footer {
  padding: 80px;
}
.recruit-footer__text {
  font-size: 1.125em;
  text-align: center;
  line-height: 175%;
}
.recruit-footer__actions {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.3333333333em;
  font-size: 1.125em;
}

@media (width <= 600px) {
  .recruit-footer {
    padding: 32px;
  }
}

.recruit-news-archive {
  & > * + * {
    margin-top: 56px;
  }
}
:where(.recruit-news-archive__list > :not(:last-child)) {
  margin-top: calc((.25rem * 20) * 0);
  margin-top: calc(calc(.25rem * 20) * 0);
  margin-bottom: calc((.25rem * 20) * (1 - 0));
  margin-bottom: calc(calc(.25rem * 20) * calc(1 - 0));
}
.recruit-news-archive__list {
  margin: 0;
  padding: 0;
}
.recruit-news-archive__item {
  list-style: none;
}
.recruit-news-archive__item + .recruit-news-archive__item {
  border-top: 2px dashed white;
}
.recruit-news-archive__item + .recruit-news-archive__item {
  padding-top: calc(.25rem * 20);
}
.recruit-news-archive__item[data-new] .recruit-news-archive__date {
  position: relative;
}
.recruit-news-archive__item[data-new] .recruit-news-archive__date::before {
  position: absolute;
  bottom: 100%;
  font-size: 10px;
  font-weight: bold;
  letter-spacing: .04em;
  color: red;
  content: 'NEW';
}
:where(.recruit-news-archive__item-body > :not(:last-child)) {
  margin-top: calc((.25rem * 10) * 0);
  margin-top: calc(calc(.25rem * 10) * 0);
  margin-bottom: calc((.25rem * 10) * (1 - 0));
  margin-bottom: calc(calc(.25rem * 10) * calc(1 - 0));
}
.recruit-news-archive__item-body {
  background-color: white;
  padding: calc(.25rem * 20);
}
:where(.recruit-news-archive__header > :not(:last-child)) {
  margin-top: calc((.25rem * 4) * 0);
  margin-top: calc(calc(.25rem * 4) * 0);
  margin-bottom: calc((.25rem * 4) * (1 - 0));
  margin-bottom: calc(calc(.25rem * 4) * calc(1 - 0));
}
.recruit-news-archive__headline {
  display: flex;
  align-items: center;
  gap: calc(.25rem * 2);
}
.recruit-news-archive__date {
  position: relative;
  font-weight: 500;
  letter-spacing: .03em;
  color: #bababa;
  font-size: 1.125em;
}
.recruit-news-archive__category {
  font-size: 0.75em;
}
.recruit-news-archive__title {
  font-size: 1.875em;
  font-weight: bold;
  color: var(--theme-pink-500);
}
.recruit-news-archive__markdown {
  max-width: 100%;
}
.recruit-news-archive__actions {
  text-align: center;
}
@media (max-width: 960px) {
  :where(.recruit-news-archive__list > :not(:last-child)) {
    margin-top: calc((.25rem * 16) * 0);
    margin-top: calc(calc(.25rem * 16) * 0);
    margin-bottom: calc((.25rem * 16) * (1 - 0));
    margin-bottom: calc(calc(.25rem * 16) * calc(1 - 0));
  }
  .recruit-news-archive__item + .recruit-news-archive__item {
    padding-top: calc(.25rem * 16);
  }
  .recruit-news-archive__item-body {
    gap: calc(.25rem * 16);
  }
  :where(.recruit-news-archive__item-body > :not(:last-child)) {
    margin-top: calc((.25rem * 8) * 0);
    margin-top: calc(calc(.25rem * 8) * 0);
    margin-bottom: calc((.25rem * 8) * (1 - 0));
    margin-bottom: calc(calc(.25rem * 8) * calc(1 - 0));
  }
  .recruit-news-archive__item-body {
    padding: calc(.25rem * 16);
  }
}
@media (max-width: 768px) {
  :where(.recruit-news-archive__list > :not(:last-child)) {
    margin-top: calc((.25rem * 12) * 0);
    margin-top: calc(calc(.25rem * 12) * 0);
    margin-bottom: calc((.25rem * 12) * (1 - 0));
    margin-bottom: calc(calc(.25rem * 12) * calc(1 - 0));
  }
  .recruit-news-archive__item + .recruit-news-archive__item {
    padding-top: calc(.25rem * 12);
  }
  .recruit-news-archive__item-body {
    gap: calc(.25rem * 12);
  }
  :where(.recruit-news-archive__item-body > :not(:last-child)) {
    margin-top: calc((.25rem * 6) * 0);
    margin-top: calc(calc(.25rem * 6) * 0);
    margin-bottom: calc((.25rem * 6) * (1 - 0));
    margin-bottom: calc(calc(.25rem * 6) * calc(1 - 0));
  }
  .recruit-news-archive__item-body {
    padding: calc(.25rem * 12);
  }
  :where(.recruit-news-archive__header > :not(:last-child)) {
    margin-top: calc((.25rem * 2) * 0);
    margin-top: calc(calc(.25rem * 2) * 0);
    margin-bottom: calc((.25rem * 2) * (1 - 0));
    margin-bottom: calc(calc(.25rem * 2) * calc(1 - 0));
  }
}
@media (max-width: 600px) {
  :where(.recruit-news-archive__list > :not(:last-child)) {
    margin-top: calc((.25rem * 10) * 0);
    margin-top: calc(calc(.25rem * 10) * 0);
    margin-bottom: calc((.25rem * 10) * (1 - 0));
    margin-bottom: calc(calc(.25rem * 10) * calc(1 - 0));
  }
  .recruit-news-archive__item + .recruit-news-archive__item {
    padding-top: calc(.25rem * 10);
  }
  .recruit-news-archive__item-body {
    gap: calc(.25rem * 8);
  }
  :where(.recruit-news-archive__item-body > :not(:last-child)) {
    margin-top: calc((.25rem * 4) * 0);
    margin-top: calc(calc(.25rem * 4) * 0);
    margin-bottom: calc((.25rem * 4) * (1 - 0));
    margin-bottom: calc(calc(.25rem * 4) * calc(1 - 0));
  }
  .recruit-news-archive__item-body {
    padding: calc(.25rem * 8);
  }
}

