@charset "UTF-8";
#main .recruit_lead .container,
#main .business .container,
#main .closing .container {
  margin-inline: auto;
}

#main .business .container {
  max-width: 1250px;
}

/* カバー
----------------------------------------------- */
.cover {
  --vw: calc(100vw - (100vw - 100%));
}

.cover {
  position: relative;
  overflow: hidden;
  aspect-ratio: 800/847;
}
@media screen and (min-width: 768px) {
  .cover {
    aspect-ratio: 1536/1506;
  }
}
@media screen and (min-width: 1450px) {
  .cover {
    aspect-ratio: 2900/1200;
  }
}

.cover_img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.cover_text_container {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  bottom: 0;
}

.cover_catch_img {
  position: absolute;
  aspect-ratio: 603/247;
  width: calc(var(--vw) * 605 / 800);
  top: calc(var(--vw) * 347 / 800);
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .cover_catch_img {
    aspect-ratio: 1054/435;
    width: calc(var(--vw) * 1054 / 1536);
    top: calc(var(--vw) * 717 / 1536);
  }
}
@media screen and (min-width: 1450px) {
  .cover_catch_img {
    aspect-ratio: 1780/331;
    width: calc(var(--vw) * 1780 / 2900);
    top: calc(var(--vw) * 795 / 2900);
    left: calc(var(--vw) * 169 / 2900);
    transform: unset;
  }
}

.cover_company_img {
  position: absolute;
  aspect-ratio: 752/33;
  width: calc(var(--vw) * 466 / 800);
  bottom: calc(var(--vw) * 154 / 800);
  left: 50.8%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .cover_company_img {
    width: calc(var(--vw) * 713 / 1536);
    bottom: calc(var(--vw) * 267 / 1536);
    left: 49.7%;
  }
}
@media screen and (min-width: 1450px) {
  .cover_company_img {
    width: calc(var(--vw) * 760 / 2900);
    bottom: calc(var(--vw) * 937 / 2900);
    left: calc(var(--vw) * 292 / 2900);
    transform: unset;
  }
}

.cover_title_img {
  position: absolute;
  aspect-ratio: 300/76;
  width: calc(var(--vw) * 300 / 800);
  bottom: calc(var(--vw) * 59 / 800);
  left: 48.8%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .cover_title_img {
    aspect-ratio: 485/122;
    width: calc(var(--vw) * 485 / 1536);
    bottom: calc(var(--vw) * 110 / 1536);
    left: 47.8%;
  }
}
@media screen and (min-width: 1450px) {
  .cover_title_img {
    aspect-ratio: 522/130;
    width: calc(var(--vw) * 522 / 2900);
    bottom: calc(var(--vw) * 500 / 2900);
    left: calc(var(--vw) * 385 / 2900);
    transform: unset;
  }
}

/* 共通
----------------------------------------------- */
.section,
.section + .section {
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .section,
  .section + .section {
    margin-top: 60px;
  }
}
@media screen and (min-width: 1450px) {
  .section,
  .section + .section {
    margin-top: 80px;
  }
}

.grid_122 {
  gap: 16px;
}
@media screen and (min-width: 768px) {
  .grid_122 {
    gap: 40px;
  }
}
@media screen and (min-width: 1450px) {
  .grid_122 {
    gap: 50px;
  }
}

.recruit_image {
  width: 100%;
  height: auto;
}

.recruit_heading {
  color: #606367;
  font-weight: bold;
  letter-spacing: 0.05em;
  font-size: 22px;
  margin-bottom: 2px;
}
@media screen and (min-width: 768px) {
  .recruit_heading {
    font-size: 30px;
    margin-bottom: 5px;
  }
}
@media screen and (min-width: 980px) {
  .recruit_heading {
    font-size: 40px;
    margin-bottom: 12px;
  }
}

.recruit_text {
  margin-bottom: 16px;
}
@media screen and (min-width: 768px) {
  .recruit_text {
    margin-bottom: 24px;
  }
}
@media screen and (min-width: 980px) {
  .recruit_text {
    margin-bottom: 30px;
  }
}

.recruit_button {
  margin-top: 16px;
}
@media screen and (min-width: 768px) {
  .recruit_button {
    margin-top: 24px;
  }
  .recruit_button a {
    padding: 15px 55px 15px 16px;
  }
}
@media screen and (min-width: 980px) {
  .recruit_button {
    margin-top: 30px;
  }
  .recruit_button a {
    padding: 15px 60px 15px 30px;
  }
}

.order1 {
  order: 1;
}

.order2 {
  order: 2;
}

@media screen and (min-width: 768px) {
  .md_order1 {
    order: 1;
  }
}

@media screen and (min-width: 768px) {
  .md_order2 {
    order: 2;
  }
}

.text-center {
  text-align: center;
}

/* 採用情報
----------------------------------------------- */
.recruit_info_button_container {
  gap: 16px;
  margin-top: 16px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .recruit_info_button_container {
    justify-content: center;
    margin-top: 24px;
    gap: 50px;
  }
}
@media screen and (min-width: 980px) {
  .recruit_info_button_container {
    margin-top: 30px;
    gap: 50px;
  }
}