@charset "UTF-8";
/*

 採用情報
----------------------------------------------- */
/* ページタイトル英語画像 */
@media (width > 768px) {
  .page_header .en {
    width: 5.9210526316vw;
  }
}
@media (width <= 768px) {
  .page_header .en {
    width: 15.9574468085vw;
  }
}

/* 会社紹介 */
@media (width > 768px) {
  .recruit_intro {
    padding-inline: 8.0409356725vw;
  }
}
@media (width <= 768px) {
  .recruit_intro {
    padding-inline: 5.3191489362vw;
  }
}
.recruit_intro {
  background-color: #fff;
}
@media (width > 768px) {
  .recruit_intro {
    margin-top: 8.7719298246vw;
    padding-block: 8.7719298246vw;
  }
}
@media (width <= 768px) {
  .recruit_intro {
    margin-top: 15.9574468085vw;
    padding-block: 15.9574468085vw;
  }
}

/* メッセージ */
@media (width > 768px) {
  .message h3 .en {
    width: 7.7485380117vw;
  }
}
@media (width <= 768px) {
  .message h3 .en {
    width: 21.2765957447vw;
  }
}
.message-content {
  display: grid;
  grid-auto-flow: dense;
}
@media (width > 768px) {
  .message-content {
    grid-template-columns: 1fr 21.9298245614vw;
    gap: 5.4824561404vw;
  }
}
@media (width <= 768px) {
  .message-content {
    gap: 10.6382978723vw;
  }
}
.message .image figcaption {
  margin-top: 0.9em;
  text-align: center;
  font-weight: 500;
}
.message .image small {
  font-size: 77.7%;
}
@media (width > 768px) {
  .message .image {
    grid-column: 2/3;
  }
  .message .image figcaption {
    font-size: clamp(12px, 1.3157894737vw, 20px);
  }
}
@media (width <= 768px) {
  .message .image figcaption {
    font-size: min(4.2553191489vw, 20px);
  }
}
.message .lead {
  margin-bottom: 1em;
  font-family: var(--font-min);
}
@media (width > 768px) {
  .message .lead {
    font-size: clamp(12px, 1.8274853801vw, 20px);
  }
}
@media (width <= 768px) {
  .message .lead {
    font-size: min(6.6489361702vw, 20px);
  }
}

/* Company */
@media (width > 768px) {
  .company {
    margin-top: 8.7719298246vw;
  }
}
@media (width <= 768px) {
  .company {
    margin-top: 21.2765957447vw;
  }
}
@media (width > 768px) {
  .company h3 .en {
    width: 8.8450292398vw;
  }
}
@media (width <= 768px) {
  .company h3 .en {
    width: 23.9361702128vw;
  }
}
.company-item {
  display: grid;
}
@media (width > 768px) {
  .company-item {
    margin-top: 4.3859649123vw;
    grid-template-columns: 29.2397660819vw 1fr;
    grid-template-rows: auto 1fr;
    gap: 1.4619883041vw 3.6549707602vw;
  }
}
@media (width <= 768px) {
  .company-item {
    margin-top: 10.6382978723vw;
    gap: 3.9893617021vw;
  }
}
.company-item .heading {
  padding-left: 1em;
  text-indent: -1em;
  line-height: 1.5;
  font-weight: 600;
}
@media (width > 768px) {
  .company-item .heading {
    margin-top: 1.0964912281vw;
    font-size: clamp(12px, 1.4619883041vw, 20px);
  }
}
@media (width <= 768px) {
  .company-item .heading {
    font-size: min(4.2553191489vw, 20px);
  }
}
@media (width > 768px) {
  .company-item .image {
    grid-row: 1/-1;
  }
}
.company-item .desc {
  margin-bottom: auto;
}
@media (width > 768px) {
  .company-item .desc img {
    margin-top: 1.0964912281vw;
    width: 7.3099415205vw;
  }
}
@media (width <= 768px) {
  .company-item .desc img {
    margin-top: 3.9893617021vw;
    width: 19.9468085106vw;
  }
}

/* Interview */
@media (width > 768px) {
  .interview {
    padding-inline: 8.0409356725vw;
  }
}
@media (width <= 768px) {
  .interview {
    padding-inline: 5.3191489362vw;
  }
}
.interview {
  background-color: var(--color-blue);
  color: #fff;
}
@media (width > 768px) {
  .interview {
    padding-block: 7.3099415205vw;
  }
}
@media (width <= 768px) {
  .interview {
    padding-block: 15.9574468085vw;
  }
}
.interview h3 {
  position: relative;
  grid-template-columns: auto 1fr;
  align-items: center;
}
@media (width > 768px) {
  .interview h3 .en {
    width: 8.4795321637vw;
  }
}
@media (width <= 768px) {
  .interview h3 .en {
    width: 21.2765957447vw;
  }
}
.interview h3 .ja {
  position: static;
}
@media (width > 768px) {
  .interview h3 .ja {
    font-size: clamp(12px, 1.9005847953vw, 20px);
  }
}
@media (width <= 768px) {
  .interview h3 .ja {
    font-size: min(5.3191489362vw, 20px);
  }
}
.interview h3 .ja::before {
  background-color: currentColor;
}
@media (width <= 768px) {
  .interview h3 .ja::before {
    left: 0;
  }
}
.interview-content {
  display: grid;
}
@media (width > 768px) {
  .interview-content {
    grid-template-columns: 1fr 25.8771929825vw;
    gap: 2.9239766082vw;
    align-items: center;
  }
}
@media (width <= 768px) {
  .interview-content {
    gap: 7.9787234043vw;
  }
}
.interview .button {
  font-family: var(--font-min);
}
@media (width > 768px) {
  .interview .button {
    height: 4.7514619883vw;
    font-size: clamp(12px, 1.4619883041vw, 20px);
  }
}
@media (width <= 768px) {
  .interview .button {
    height: 13.2978723404vw;
    font-size: min(4.2553191489vw, 20px);
  }
}
.interview .images {
  display: grid;
}
@media (width > 768px) {
  .interview .images {
    margin-top: 3.2894736842vw;
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width <= 768px) {
  .interview .images {
    margin-top: 7.9787234043vw;
  }
}

/* 募集要項 */
@media (width > 768px) {
  .requirement {
    padding-inline: 8.0409356725vw;
  }
}
@media (width <= 768px) {
  .requirement {
    padding-inline: 5.3191489362vw;
  }
}
@media (width > 768px) {
  .requirement {
    padding-top: 7.3099415205vw;
  }
}
@media (width <= 768px) {
  .requirement {
    padding-top: 15.9574468085vw;
  }
}
.requirement h3 {
  font-family: var(--font-min);
  font-weight: 400;
}
@media (width > 768px) {
  .requirement h3 {
    font-size: clamp(12px, 1.9005847953vw, 36px);
  }
}
@media (width <= 768px) {
  .requirement h3 {
    font-size: min(5.3191489362vw, 28px);
  }
}
.requirement dl {
  display: grid;
}
@media (width > 768px) {
  .requirement dl {
    margin-top: 2.5584795322vw;
    grid-template-columns: 13.1578947368vw 1fr;
  }
}
@media (width <= 768px) {
  .requirement dl {
    margin-top: 5.3191489362vw;
  }
}
.requirement :is(dt, dd) {
  line-height: 1.875;
}
@media (width > 768px) {
  .requirement :is(dt, dd) {
    padding-block: 0.7em;
    border-top: 1px dashed #707070;
  }
}
.requirement :is(dt, dd):first-of-type {
  border-top: none;
}
.requirement :is(dt, dd).lists {
  line-height: 2.5;
}
@media (width <= 768px) {
  .requirement dt {
    border-top: 1px dashed #707070;
    padding-top: 0.7em;
  }
}
@media (width > 768px) {
  .requirement dd {
    padding-right: 8.0409356725vw;
  }
}
@media (width <= 768px) {
  .requirement dd {
    padding-bottom: 0.7em;
  }
}
.requirement-btn {
  text-align: center;
}
@media (width > 768px) {
  .requirement-btn {
    margin-top: 5.8479532164vw;
  }
}
@media (width <= 768px) {
  .requirement-btn {
    margin-top: 10.6382978723vw;
  }
}
.requirement .button {
  max-width: 100%;
  font-family: var(--font-min);
  line-height: 1.2;
}
@media (width > 768px) {
  .requirement .button {
    width: min(45.3216374269vw, 700px);
    height: min(4.7514619883vw, 100px);
    font-size: clamp(12px, 1.6081871345vw, 20px);
  }
}
@media (width <= 768px) {
  .requirement .button {
    width: 106.3829787234vw;
    height: 17.2872340426vw;
    font-size: min(4.2553191489vw, 20px);
  }
}
.requirement .button small {
  font-size: 81%;
}

/* エントリーボタン */
.btn-entry {
  position: fixed;
  z-index: 2;
}
@media (width > 768px) {
  .btn-entry {
    width: 10.5994152047vw;
    right: 0.730994152vw;
    bottom: 0.730994152vw;
  }
}
@media (width <= 768px) {
  .btn-entry {
    width: 21.2765957447vw;
    right: 1.329787234vw;
    bottom: 19.9468085106vw;
  }
}