@charset "UTF-8";
/* ページごとの設定
================================================== */
/* 
-------------------------------------------------- */
@media screen and (max-width: 767px) {
  .wrapper::before {
    content: "";
    background-image: url("/assets/img/cmn/bg_headerNav.png");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    mix-blend-mode: color-dodge;
    opacity: 0.6;
    position: fixed;
    top: 240px;
    right: -48vw;
    height: 155.46667vw;
    width: 152.8vw;
  }
}
@media screen and (min-width: 768px) {
  .wrapper::before {
    content: "";
    background-image: url("/assets/img/top/bg_tracking.png");
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    mix-blend-mode: color-dodge;
    height: min(66.39825vw, 907px);
    width: min(61.20059vw, 836px);
    opacity: 0.6;
    position: fixed;
    top: min(18.30162vw, 250px);
    left: calc(50% - min(48.46267vw, 662px));
  }
}

.main {
  position: relative;
}

/* セクション */
@media screen and (min-width: 768px) {
  .sec__inner {
    padding-top: min(16.10542vw, 220px);
  }
}

/* header（トップページのみOPアニメーション設定）
-------------------------------------------------- */
/* sp */
@media screen and (max-width: 767px) {
  .header {
    opacity: 0;
    animation: cmnFadeIn 1s ease-in-out 4.5s forwards;
  }
}
/* pc */
@media screen and (min-width: 768px) {
  .header__logo {
    opacity: 0;
    animation: cmnFadeIn 1s ease-in-out 5s forwards;
  }
}
/* pcグローバルナビ
-------------------------------------------------- */
@media screen and (min-width: 768px) {
  .gNav {
    opacity: 0;
    animation: cmnFadeIn 1s ease-in-out 5s forwards;
  }
}

/* 追尾タイトルのアニメーション設定
-------------------------------------------------- */
@media screen and (min-width: 768px) {
  .wrapLeft .fixWrap {
    opacity: 0;
    visibility: hidden;
  }
  .wrapLeft .fixWrap.is-sticky {
    transition: opacity 1s ease-in-out, visibility 1s;
    opacity: 1;
    visibility: visible;
  }
  .wrapLeft .fixWrap.is-fading-out {
    transition: opacity 0.5s, visibility 0.5s;
    opacity: 0;
    visibility: hidden;
  }
}

/* kv
-------------------------------------------------- */
.kv {
  background: linear-gradient(rgba(54, 62, 78, 0.52) 0%, #363e4e 100%), url("/assets/img/top/bg_kv_sp.jpg");
  background-position: top center;
  background-size: contain;
  background-repeat: no-repeat;
}
@media screen and (min-width: 768px) {
  .kv {
    background: linear-gradient(rgba(54, 62, 78, 0.52) 0%, #363e4e 100%), url("/assets/img/top/bg_kv_pc.jpg");
    background-size: cover;
    margin: 0 calc(50% - 50vw);
    width: 100vw;
  }
}
.kv__inner {
  height: 216.53334vw;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 768px) {
  .kv__inner {
    height: min(56.66179vw, 774px);
    padding: 0 min(6.07614vw, 83px) 0 min(28.3309vw, 387px);
    margin: 0 auto;
    max-width: 1366px;
  }
}

.kv__img {
  position: absolute;
  width: 133.06667vw;
}
@media screen and (min-width: 768px) {
  .kv__img {
    width: min(65.59298vw, 896px);
  }
}
.kv__img--01 {
  top: 50%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  width: 68.8vw;
  animation: kvFadeOut 1.5s ease-in 1s forwards;
}
@media screen and (min-width: 768px) {
  .kv__img--01 {
    width: min(26.72036vw, 365px);
  }
}
.kv__img--02 {
  top: 29.33334vw;
  left: 1.6vw;
  transform: translateX(150%);
  animation: kvSlideLeft 1.5s ease-in-out 1s forwards;
}
@media screen and (min-width: 768px) {
  .kv__img--02 {
    top: min(2.34261vw, 32px);
    left: min(28.3309vw, 387px);
  }
}
.kv__img--03 {
  top: 89.33334vw;
  right: 1.6vw;
  transform: translateX(-150%);
  animation: kvSlideRight 1.5s ease-in-out 2s forwards;
}
@media screen and (min-width: 768px) {
  .kv__img--03 {
    top: min(21.22987vw, 290px);
    right: min(6.07614vw, 83px);
  }
}
.kv__img--04 {
  top: 150.66667vw;
  left: 1.6vw;
  transform: translateX(150%);
  animation: kvSlideLeft 1.5s ease-in-out 3s forwards;
}
@media screen and (min-width: 768px) {
  .kv__img--04 {
    top: min(40.11714vw, 548px);
    left: min(28.3309vw, 387px);
  }
}

/* 初回アクセス以外時のアニメーション無効設定
-------------------------------------------------- */
.visited .gNav {
  animation: initial;
  opacity: 1;
}
.visited .header {
  animation: initial;
  opacity: 1;
}
.visited .header__logo {
  animation: initial;
  opacity: 1;
}

/* （about）
-------------------------------------------------- */
.about {
  margin-top: 53px;
}
@media screen and (min-width: 768px) {
  .about {
    margin-top: min(5.85652vw, 80px);
  }
}
.about__inner {
  background-image: url("/assets/img/top/bg_about_sp.png");
  background-position: bottom right;
  background-size: 246px 279px;
  background-repeat: no-repeat;
  padding: 0 0 155px;
}
@media screen and (min-width: 768px) {
  .about__inner {
    background-position: bottom right min(9.44364vw, 129px);
    background-size: min(27.01172vw, 368.98px) min(30.67497vw, 419.02px);
    padding: min(9.95608vw, 136px) min(6.07614vw, 83px) min(9.51684vw, 130px) min(28.3309vw, 387px);
  }
}
.about__txt {
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .about__txt {
    font-size: min(1.46413vw, 2rem);
    line-height: 2;
  }
}

/* TOPICS
-------------------------------------------------- */
.topics {
  margin-top: 76px;
}
@media screen and (min-width: 768px) {
  .topics {
    margin-top: min(5.34408vw, 73px);
  }
}
.topics .sec__ttl {
  margin-bottom: 48px;
}
@media screen and (min-width: 768px) {
  .topics .sec__inner {
    padding-top: min(8.12592vw, 111px);
  }
}

/* タイトル */
.topics__content__ttl {
  border-bottom: 1px solid #4A5463;
  color: #DDFF22;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  margin-bottom: 16px;
  padding-bottom: 15px;
}
@media screen and (min-width: 768px) {
  .topics__content__ttl {
    font-size: min(1.46413vw, 20px);
    margin-bottom: min(2.34261vw, 32px);
    padding-bottom: min(1.0981vw, 15px);
  }
}
.topics__content__ttl span {
  display: inline-block;
}
.topics__content__ttl span:nth-of-type(1) {
  margin-right: 16px;
}
@media screen and (min-width: 768px) {
  .topics__content__ttl span:nth-of-type(1) {
    margin-right: min(1.17131vw, 16px);
  }
}

.topics__content > .wrap {
  border-bottom: 1px solid #4A5463;
  padding-bottom: 15px;
}
@media screen and (min-width: 768px) {
  .topics__content > .wrap {
    display: flex;
    gap: 0 min(2.92826vw, 40px);
    padding-bottom: min(2.2694vw, 31px);
  }
}

/* 賞状画像 */
@media screen and (min-width: 768px) {
  .topics__winning__img {
    width: min(30.45388vw, 416px);
  }
}
.topics__winning__img figcaption {
  margin-top: 8px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .topics__winning__img figcaption {
    margin-top: min(0.58566vw, 8px);
  }
}
.topics__winning__img figcaption span {
  display: inline-block;
}
.topics__winning__img figcaption span:nth-of-type(1) {
  margin-right: 24px;
}
@media screen and (min-width: 768px) {
  .topics__winning__img figcaption span:nth-of-type(1) {
    margin-right: min(1.75696vw, 24px);
  }
}

/* プロフィール */
.topics__profile {
  display: flex;
  gap: 0 4.77612%;
  margin-top: 32px;
}
@media screen and (min-width: 768px) {
  .topics__profile {
    gap: 0 min(1.17131vw, 16px);
    margin-top: initial;
    width: min(32.21084vw, 440px);
  }
}

.topics__profile__img {
  flex-shrink: 0;
  width: 34.92538%;
}
@media screen and (min-width: 768px) {
  .topics__profile__img {
    width: min(11.85945vw, 162px);
  }
}

.topics__profile__ttl {
  margin-bottom: 16px;
}
@media screen and (min-width: 768px) {
  .topics__profile__ttl {
    margin-bottom: min(1.17131vw, 16px);
  }
}

.topics__profile__list {
  display: flex;
  flex-direction: column;
  gap: 8px 0;
}
@media screen and (min-width: 768px) {
  .topics__profile__list {
    gap: min(0.58566vw, 8px) 0;
  }
}

/* 受賞履歴 */
.topics__history {
  margin-top: 16px;
}
@media screen and (min-width: 768px) {
  .topics__history {
    margin-top: 0;
  }
}

.topics__history__section {
  margin-top: 16px;
}
@media screen and (min-width: 768px) {
  .topics__history__section {
    border-bottom: 1px solid #4A5463;
    display: flex;
    margin-top: min(1.17131vw, 16px);
    padding-bottom: min(1.0981vw, 15px);
  }
}
@media screen and (max-width: 767px) {
  .topics__history__section:not(:last-child) {
    border-bottom: 1px solid #4A5463;
    padding-bottom: 15px;
  }
}

.topics__history__ttl {
  margin-bottom: 16px;
}
@media screen and (min-width: 768px) {
  .topics__history__ttl {
    margin-bottom: 0;
    padding-right: 1em;
    width: min(13.46999vw, 184px);
  }
}

@media screen and (min-width: 768px) {
  .topics__history__list > div {
    display: flex;
  }
}
.topics__history__list > div:not(:first-child) {
  margin-top: 16px;
}
@media screen and (min-width: 768px) {
  .topics__history__list > div:not(:first-child) {
    margin-top: min(0.58566vw, 8px);
  }
}
@media screen and (min-width: 768px) {
  .topics__history__list dt {
    padding-right: 1em;
    width: min(15.59298vw, 213px);
  }
}
@media screen and (min-width: 768px) {
  .topics__history__list dd {
    width: min(36.53002vw, 499px);
  }
}

.topics__history__btn {
  background-color: #4A5463;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0 10px;
  margin-top: 16px;
  padding: 13px 0;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .topics__history__btn {
    display: none;
  }
}
.topics__history__btn::after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 5px solid transparent;
  border-left: 5px solid transparent;
  border-top: 9px solid #ffffff;
  border-bottom: 0;
  margin-top: 4px;
  transition: 0.5s;
}
.topics__history__btn.is-open::after {
  transform: rotate(180deg);
}

/* 01-事業内容（business）
-------------------------------------------------- */
@media screen and (min-width: 768px) {
  .business {
    margin-top: min(2.1962vw, 30px);
  }
}
@media screen and (min-width: 768px) {
  .business__inner {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    padding-top: min(19.76574vw, 270px);
  }
}

/* 中の囲い */
.business__content {
  background-color: #2B3038;
  padding: 16px;
  margin-top: 24px;
}
@media screen and (min-width: 768px) {
  .business__content {
    margin-top: 0;
    padding: min(1.75696vw, 24px);
    width: min(32.21084vw, 440px);
  }
}
@media screen and (min-width: 768px) {
  .business__content:nth-of-type(even) {
    margin-top: min(5.12446vw, 70px);
  }
}
.business__content .txt {
  margin-top: 16px;
}
@media screen and (min-width: 768px) {
  .business__content .txt {
    margin-top: min(1.17131vw, 16px);
  }
}
.business__content .list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}
@media screen and (min-width: 768px) {
  .business__content .list {
    gap: min(0.58566vw, 8px);
    margin-top: min(1.17131vw, 16px);
  }
}
.business__content .list li {
  border: 1px solid #4A5463;
  display: inline-block;
  padding: 7px;
}
@media screen and (min-width: 768px) {
  .business__content .list li {
    padding: min(0.51245vw, 7px);
  }
}

/* 02-施工実績（trackRecord）
-------------------------------------------------- */
.trackRecord dl {
  border-top: 1px solid #4A5463;
  margin-top: 24px;
}
@media screen and (min-width: 768px) {
  .trackRecord dl {
    margin-top: 0;
  }
}
.trackRecord dl > div {
  border-bottom: 1px solid #4A5463;
  padding: 15px 0 16px;
}
@media screen and (min-width: 768px) {
  .trackRecord dl > div {
    display: flex;
    gap: 0 min(5.12446vw, 70px);
    padding: min(1.0981vw, 15px) 0 min(1.17131vw, 16px);
  }
}
.trackRecord dl dt {
  font-weight: 400;
  margin-bottom: 8px;
}
@media screen and (min-width: 768px) {
  .trackRecord dl dt {
    margin-bottom: 0;
    width: min(6.58858vw, 90px);
  }
}
.trackRecord dl ol {
  padding-left: 1.5em;
}
.trackRecord dl ol li {
  text-indent: -1.5em;
}

/* カルーセル */
.carousel {
  margin-top: 24px;
}
@media screen and (min-width: 768px) {
  .carousel {
    margin-top: min(2.92826vw, 40px);
  }
}
.carousel figcaption {
  font-size: 1.8rem;
  line-height: 1.44445;
  margin-top: 8px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .carousel figcaption {
    font-size: min(1.31772vw, 1.8rem);
    margin-top: min(0.58566vw, 8px);
  }
}

/* ----- swiper設定 ----- */
.swiper .sw-button {
  background-color: rgba(224, 224, 224, 0.76);
  height: 12vw;
  width: 6.66667vw;
  position: absolute;
  top: 27.46667vw;
  z-index: 100;
}
@media screen and (min-width: 768px) {
  .swiper .sw-button {
    height: min(3.29429vw, 45px);
    width: min(1.83017vw, 25px);
    top: min(6.29576vw, 86px);
  }
}
.swiper .sw-button::before {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}
.swiper .button-prev {
  left: 0;
}
.swiper .button-prev::before {
  border-width: 1.33334vw 2.4vw 1.33334vw 0;
  border-color: transparent #363E4E transparent transparent;
}
@media screen and (min-width: 768px) {
  .swiper .button-prev::before {
    border-width: min(0.36604vw, 5px) min(0.65886vw, 9px) min(0.36604vw, 5px) 0;
  }
}
.swiper .button-next {
  right: 0;
}
.swiper .button-next::before {
  border-width: 1.33334vw 0 1.33334vw 2.4vw;
  border-color: transparent transparent transparent #363E4E;
}
@media screen and (min-width: 768px) {
  .swiper .button-next::before {
    border-width: min(0.36604vw, 5px) 0 min(0.36604vw, 5px) min(0.65886vw, 9px);
  }
}

.swiper-wrapper {
  position: relative;
}

/* ページネーション */
.pagination {
  display: flex;
  justify-content: center;
  margin-top: 16px;
}

.swiper-pagination-bullet {
  background-color: initial;
  border: 1px solid #E0E0E0;
  border-radius: initial;
  margin: 0 5px !important;
  height: 10px;
  width: 10px;
  opacity: 1;
}

.swiper-pagination-bullet-active {
  background-color: #E0E0E0;
}

/* 03-資格 登録（qualification）
-------------------------------------------------- */
.qualification {
  background-image: radial-gradient(farthest-side at 100% 45%, rgba(54, 62, 78, 0.52), rgb(54, 62, 78)), url("/assets/img/top/bg_qualification_sp.jpg");
  background-position: top center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
}
@media screen and (min-width: 768px) {
  .qualification {
    background-image: radial-gradient(farthest-side at 100% 45%, rgba(54, 62, 78, 0.52), rgb(54, 62, 78)), url("/assets/img/top/bg_qualification_pc.jpg");
  }
}

@media screen and (max-width: 767px) {
  .qualification__inner {
    padding-top: 40px;
  }
}

/*  */
@media screen and (max-width: 767px) {
  .qualification__content {
    margin-top: 24px;
  }
}
.qualification__content + .qualification__content {
  margin-top: 40px;
}
@media screen and (min-width: 768px) {
  .qualification__content + .qualification__content {
    margin-top: min(2.92826vw, 40px);
  }
}
.qualification__content .listWrap {
  background-color: #E0E0E0;
  color: #000;
  padding: 16px;
}
@media screen and (min-width: 768px) {
  .qualification__content .listWrap {
    padding: min(1.75696vw, 24px);
  }
}
@media screen and (max-width: 767px) {
  .qualification__content .listWrap + .listWrap {
    margin-top: 16px;
  }
}

/* 所持資格 */
@media screen and (min-width: 768px) {
  .qualification__content--01 .qualification__list {
    display: flex;
    flex-wrap: wrap;
    gap: 0 min(1.17131vw, 16px);
  }
}
.qualification__content--01 .qualification__list > div {
  border-top: 1px solid #fff;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0 3.30034%;
  padding: 15px 0 16px;
}
@media screen and (min-width: 768px) {
  .qualification__content--01 .qualification__list > div {
    border-top: none;
    border-bottom: 1px solid #fff;
    justify-content: flex-start;
    gap: 0 min(1.17131vw, 16px);
    padding: min(1.17131vw, 16px) 0 min(1.0981vw, 15px);
    width: min(30.45388vw, 416px);
  }
}
.qualification__content--01 .qualification__list > div:first-of-type {
  border-top: none;
  padding-top: 0;
}
@media screen and (min-width: 768px) {
  .qualification__content--01 .qualification__list > div:nth-of-type(1), .qualification__content--01 .qualification__list > div:nth-of-type(2) {
    padding-top: 0;
  }
}
@media screen and (min-width: 768px) {
  .qualification__content--01 .qualification__list > div:nth-last-of-type(1) {
    border-bottom: none;
  }
}
.qualification__content--01 .qualification__list dt {
  flex-shrink: 0;
  width: 83.4983499%;
}
@media screen and (min-width: 768px) {
  .qualification__content--01 .qualification__list dt {
    width: min(21.96194vw, 300px);
  }
}
.qualification__content--01 .qualification__list dd {
  flex-shrink: 0;
  text-align: right;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .qualification__content--01 .qualification__list dd {
    width: min(2.56223vw, 35px);
  }
}
.qualification__content--01 .qualification__toggleButton {
  background-color: #4A5463;
  display: block;
  padding: 12px 13px 14px;
  text-align: center;
}
.qualification__content--01 .qualification__toggleButton span {
  display: inline-flex;
  align-items: center;
  gap: 0 10px;
  justify-content: center;
}
.qualification__content--01 .qualification__toggleButton span::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 9px 5px 0 5px;
  border-color: #FFFFFF transparent transparent transparent;
}
.qualification__content--01 .qualification__toggleButton.active span::after {
  transform: scale(1, -1);
}

/* 官公庁登録・許可 */
.qualification__content--02 .wrap::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  width: 0;
}
@media screen and (min-width: 768px) {
  .qualification__content--02 .listWrap {
    width: min(32.21084vw, 440px);
  }
}
@media screen and (min-width: 768px) {
  .qualification__content--02 .listWrap:nth-of-type(odd) {
    float: left;
  }
}
@media screen and (min-width: 768px) {
  .qualification__content--02 .listWrap:nth-of-type(even) {
    float: right;
  }
}
@media screen and (min-width: 768px) {
  .qualification__content--02 .listWrap:not(:nth-of-type(1), :nth-of-type(2)) {
    margin-top: min(1.17131vw, 16px);
  }
}
.qualification__content--02 .ttl {
  margin-bottom: 16px;
}
@media screen and (min-width: 768px) {
  .qualification__content--02 .ttl {
    margin-bottom: min(1.17131vw, 16px);
  }
}

/* 04-会社概要（companyProfile）
-------------------------------------------------- */
@media screen and (min-width: 768px) {
  .companyProfile__inner {
    padding-top: min(11.42021vw, 156px);
  }
}
.companyProfile .companyProfile__list {
  border-top: 1px solid #4A5463;
  margin-top: 24px;
}
@media screen and (min-width: 768px) {
  .companyProfile .companyProfile__list {
    margin-top: 0;
    line-height: 1.875;
  }
}
.companyProfile .companyProfile__list > div {
  border-bottom: 1px solid #4A5463;
  padding: 15px 0 16px;
}
@media screen and (min-width: 768px) {
  .companyProfile .companyProfile__list > div {
    display: flex;
    padding: min(0.87848vw, 12px) 0 min(0.95169vw, 13px);
  }
}
.companyProfile .companyProfile__list dt {
  font-weight: 700;
  margin-bottom: 8px;
}
@media screen and (min-width: 768px) {
  .companyProfile .companyProfile__list dt {
    margin: 0;
    padding-right: min(0.73207vw, 10px);
    width: min(11.42021vw, 156px);
  }
}
.companyProfile .companyProfile__list ol {
  padding-left: 1.5em;
}
.companyProfile .companyProfile__list ol li {
  text-indent: -1.5em;
}

.companyProfile__content {
  margin-top: 40px;
}

/* アクセス */
@media screen and (min-width: 768px) {
  .companyProfile__content--access {
    margin-top: min(2.92826vw, 40px);
  }
}
.companyProfile__content--access .map {
  margin-top: 16px;
  height: 98px;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .companyProfile__content--access .map {
    margin-top: min(1.17131vw, 16px);
    height: min(19.03368vw, 260px);
  }
}
.companyProfile__content--access .map iframe {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
  height: 100%;
  width: 100%;
}

/* 特定技能外国人実習生受け入れについて */
.companyProfile__content--receiving {
  border: 0.5px solid #E0E0E0;
  padding: 23px 15px 103px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .companyProfile__content--receiving {
    margin: min(5.85652vw, 80px) auto 0 0;
    padding: min(1.75696vw, 24px) min(1.75696vw, 24px) min(2.48902vw, 34px);
    width: min(52.70864vw, 720px);
  }
}
@media screen and (min-width: 768px) {
  .companyProfile__content--receiving .content__ttl {
    font-size: min(1.46413vw, 2rem);
    line-height: 1.45;
  }
}
.companyProfile__content--receiving .receiving__list {
  margin-top: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px 0;
  padding-left: 8px;
}
@media screen and (min-width: 768px) {
  .companyProfile__content--receiving .receiving__list {
    gap: min(0.58566vw, 8px) 0;
    margin-top: min(1.61055vw, 22px);
    padding-left: 0;
  }
}
.companyProfile__content--receiving .receiving__list a {
  background-color: #E0E0E0;
  color: #363E4E;
  display: inline-flex;
  align-items: center;
  gap: 0 10px;
  padding: 10px;
}
@media screen and (min-width: 768px) {
  .companyProfile__content--receiving .receiving__list a {
    gap: 0 min(0.73207vw, 10px);
    padding: min(0.73207vw, 10px);
  }
}
@media screen and (min-width: 768px) {
  .companyProfile__content--receiving .receiving__list a:hover {
    opacity: 0.6;
  }
}
.companyProfile__content--receiving .receiving__list a::after {
  content: "";
  background-image: url("/assets/img/top/icon_pdf.svg");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  display: inline-block;
  height: 18px;
  width: 14px;
}
@media screen and (min-width: 768px) {
  .companyProfile__content--receiving .receiving__list a::after {
    height: min(1.31772vw, 18px);
    width: min(1.0249vw, 14px);
  }
}
.companyProfile__content--receiving .receiving__img {
  position: absolute;
  top: 100%;
  left: 15px;
  transform: translateY(-80px);
  width: calc(100% - 30px);
}
@media screen and (min-width: 768px) {
  .companyProfile__content--receiving .receiving__img {
    top: initial;
    bottom: min(-3.22108vw, -44px);
    left: min(28.11128vw, 384px);
    transform: initial;
    width: min(37.33529vw, 510px);
  }
}
.companyProfile__content--receiving .receiving__img picture {
  display: block;
}

/* 05-採用情報（recruit）
-------------------------------------------------- */
.recruit {
  margin-top: 48.8vw;
}
@media screen and (min-width: 768px) {
  .recruit {
    margin-top: min(9.22402vw, 126px);
  }
}
@media screen and (min-width: 768px) {
  .recruit__inner {
    padding-top: min(11.42021vw, 156px);
  }
}
@media screen and (min-width: 768px) {
  .recruit .lead {
    display: block;
  }
}

.recruit__content {
  margin-top: 24px;
}
@media screen and (min-width: 768px) {
  .recruit__content {
    margin-top: min(2.92826vw, 40px);
  }
}
.recruit__content .list {
  border-top: 1px solid #4A5463;
  margin-top: 16px;
}
@media screen and (min-width: 768px) {
  .recruit__content .list {
    margin-top: min(1.75696vw, 24px);
  }
}
.recruit__content .list > div {
  border-bottom: 1px solid #4A5463;
  padding: 15px 0 16px;
}
@media screen and (min-width: 768px) {
  .recruit__content .list > div {
    display: flex;
    padding: min(1.0981vw, 15px) 0 min(1.17131vw, 16px);
  }
}
.recruit__content .list dt {
  font-weight: 700;
  margin-bottom: 8px;
}
@media screen and (min-width: 768px) {
  .recruit__content .list dt {
    margin-bottom: 0;
    padding-right: min(0.73207vw, 10px);
    width: min(17.86238vw, 244px);
  }
}

/* 06-お問合せ（contact）
-------------------------------------------------- */
@media screen and (min-width: 768px) {
  .contact__inner {
    padding-top: min(20.93705vw, 286px);
    margin-top: -9.51683vw;
  }
}
@media screen and (min-width: 1366px) {
  .contact__inner {
    margin-top: -130px;
  }
}
.contact .contact__ttl {
  margin-bottom: 8px;
}
@media screen and (min-width: 768px) {
  .contact .contact__ttl {
    margin-bottom: 0;
  }
}
.contact .wrap {
  background-color: #4A5463;
  padding: 24px 16px;
}
@media screen and (min-width: 768px) {
  .contact .wrap {
    padding: min(2.92826vw, 40px);
  }
}
.contact .txt {
  text-align: center;
}
.contact .btn {
  margin-top: 16px;
}
@media screen and (min-width: 768px) {
  .contact .btn {
    margin-top: min(1.17131vw, 16px);
  }
}
.contact .btn a {
  border: 1px solid #DDFF22;
  color: #DDFF22;
  display: block;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.45;
  max-width: 303px;
  margin: 0 auto;
  padding: 22px 5px 24px;
  position: relative;
  text-align: center;
  transition: 0.6s;
}
@media screen and (min-width: 768px) {
  .contact .btn a {
    font-size: min(1.46413vw, 2rem);
    max-width: 373px;
    padding: min(1.75696vw, 24px) min(0.36604vw, 5px);
  }
}
@media screen and (min-width: 768px) {
  .contact .btn a::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 100%;
    background: #DDFF22;
    z-index: 0;
    transition: 0.6s ease-out;
  }
}
.contact .btn span {
  display: flex;
  align-items: center;
  gap: 0 10px;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .contact .btn span {
    gap: 0 min(0.73207vw, 10px);
    position: relative;
    z-index: 100;
  }
}
.contact .btn span::after {
  content: "";
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6.5px 0 6.5px 12px;
  border-color: transparent transparent transparent #DDFF22;
}
@media screen and (min-width: 768px) {
  .contact .btn span::after {
    border-width: min(0.47585vw, 6.5px) 0 min(0.47585vw, 6.5px) min(0.87848vw, 12px);
    transition: 1s;
  }
}
@media screen and (min-width: 768px) {
  .contact .btn a:hover {
    color: #000;
  }
  .contact .btn a:hover::before {
    width: 100%;
  }
  .contact .btn a:hover span::after {
    border-color: transparent transparent transparent #000;
  }
}

/* 初回アクセス判別時のアニメーション設定
-------------------------------------------------- */
.visited .kv__img--01 {
  animation: initial;
  opacity: 0;
  display: none;
  z-index: -1000;
}
.visited .kv__img--02,
.visited .kv__img--03,
.visited .kv__img--04 {
  animation: initial;
  opacity: 1;
  transform: initial;
}/*# sourceMappingURL=top.css.map */