@charset "UTF-8";
/* ==========================================================================//
//
// 採用TOP
//
// ========================================================================== */
/* 共通
---------------------------------------------------------- */
main {
  margin-top: 0;
}

@media all and (min-width: 751px) {
  .wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0 40px;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  .wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media all and (min-width: 751px) {
  .txt_contents {
    width: 70%;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  .txt_contents {
    width: 74%;
  }
}

@media all and (max-width: 750px) {
  .area_catch {
    margin-bottom: 30px;
    font-size: 23px;
    line-height: 1.5;
  }
}
@media all and (min-width: 751px) {
  .area_catch {
    margin-top: -10px;
    margin-bottom: 70px;
    font-size: 30px;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  .area_catch {
    margin-top: 40px;
    font-size: clamp(23px, 2.3vw, 27px);
  }
}

.area_desc {
  letter-spacing: 0.05em;
  line-height: 2;
}
@media all and (min-width: 751px) {
  .area_desc {
    letter-spacing: 0.02em;
    line-height: 1.85;
  }
}

@media all and (min-width: 1001px) {
  .image_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  .image_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media all and (min-width: 1001px) {
  .image_wrap .parallax-box {
    width: 44.76%;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  .image_wrap .parallax-box {
    width: 47%;
  }
}

.more_btn {
  margin-top: 30px;
}
@media all and (min-width: 751px) {
  .more_btn {
    margin-right: calc(-100 * (100vw - 1320px) / 1180);
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  .more_btn {
    margin-right: 0;
  }
}

/*  仕事を知る
---------------------------------------------------------- */
section.sec_works .box {
  padding: 70px 0;
}
@media all and (min-width: 751px) {
  section.sec_works .box {
    padding: 170px 0;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  section.sec_works .box {
    padding: 9vw 0 14vw;
  }
}
section.sec_works .area_desc p:not(:first-of-type) {
  margin-top: 30px;
}
section.sec_works .sec_wrap {
  margin-top: 75px;
}
@media all and (min-width: 751px) {
  section.sec_works .sec_wrap {
    margin-top: 160px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
@media all and (min-width: 1401px) {
  section.sec_works .sec_wrap .img_ttl {
    margin: 38px -12px 0 0 !important;
  }
}

/* 社員を知る
---------------------------------------------------------- */
section.sec_people .box {
  padding: 70px 0;
}
@media all and (min-width: 751px) {
  section.sec_people .box {
    padding: 170px 0;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  section.sec_people .box {
    padding: 9vw 0 14vw;
  }
}
section.sec_people .people_list .people_detail:not(:first-child) {
  margin-top: 60px;
}
@media all and (min-width: 751px) {
  section.sec_people .people_list .people_detail:not(:first-child) {
    margin-top: 90px;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  section.sec_people .people_list .people_detail {
    margin-top: 48px;
  }
}
section.sec_people .people_list .people_detail .ttl {
  margin-bottom: 40px;
  font-family: "Outfit", sans-serif;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.01em;
}
@media all and (min-width: 751px) {
  section.sec_people .people_list .people_detail .ttl {
    margin-bottom: 70px;
    font-size: 23px;
  }
}
@media all and (min-width: 751px) {
  section.sec_people .people_list .people_detail .image_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 0 0;
    zoom: 100%;
  }
}
@media all and (max-width: 750px) {
  section.sec_people .people_list .people_detail .parallax-box {
    margin-bottom: 30px;
  }
}
@media all and (min-width: 751px) {
  section.sec_people .people_list .people_detail .parallax-box {
    width: 42%;
  }
}
@media all and (min-width: 751px) {
  section.sec_people .people_list .people_detail .txts {
    margin-top: 0;
    width: 53%;
  }
}
section.sec_people .people_list .people_detail .txts .catch {
  margin-bottom: 20px;
  font-size: 23px;
  line-height: 1.5;
}
@media all and (min-width: 751px) {
  section.sec_people .people_list .people_detail .txts .catch {
    margin-bottom: 40px;
    font-size: 23px;
    line-height: 1.51;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  section.sec_people .people_list .people_detail .txts .catch {
    margin-bottom: 2vw;
    font-size: 2vw;
  }
}
section.sec_people .people_list .people_detail .txts .name_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0 25px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media all and (min-width: 751px) {
  section.sec_people .people_list .people_detail .txts .name_wrap {
    gap: 0 20px;
  }
}
section.sec_people .people_list .people_detail .txts .name {
  font-family: "Outfit", sans-serif;
  font-weight: 300;
  letter-spacing: 0.02em;
}
@media all and (max-width: 750px) {
  section.sec_people .people_list .people_detail .txts .name {
    margin-bottom: 8px;
    font-size: 20px;
    line-height: 1.1;
  }
}
@media all and (min-width: 751px) {
  section.sec_people .people_list .people_detail .txts .name {
    margin-bottom: 10px;
    font-size: 24px;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  section.sec_people .people_list .people_detail .txts .name {
    font-size: 2vw;
  }
}
section.sec_people .people_list .people_detail .txts .cross {
  width: 36px;
}
@media all and (min-width: 751px) {
  section.sec_people .people_list .people_detail .txts .cross {
    width: 43px;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  section.sec_people .people_list .people_detail .txts .cross {
    width: 4vw;
  }
}
section.sec_people .people_list .people_detail .txts .position {
  font-size: 13px;
  letter-spacing: 0.02em;
}
@media all and (min-width: 751px) {
  section.sec_people .people_list .people_detail .txts .position {
    font-size: 12px;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  section.sec_people .people_list .people_detail .txts .position {
    font-size: 1.2vw;
    white-space: nowrap;
  }
}

/* 働き方を知る
---------------------------------------------------------- */
section.sec_culture .box {
  padding: 70px 0;
}
@media all and (min-width: 751px) {
  section.sec_culture .box {
    padding: 170px 0;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  section.sec_culture .box {
    padding: 9vw 0 14vw;
  }
}
@media all and (min-width: 751px) {
  section.sec_culture .image_wrap {
    gap: 0 72px;
  }
}
@media all and (max-width: 1000px) {
  section.sec_culture .image_wrap .area_desc {
    margin-bottom: 50px;
  }
}
@media all and (min-width: 751px) {
  section.sec_culture .image_wrap .area_desc {
    width: 48.28%;
  }
}

/* 採用情報
---------------------------------------------------------- */
section.sec_joinus .box {
  padding: 70px 0 0;
}
@media all and (min-width: 751px) {
  section.sec_joinus .box {
    padding: 170px 0 0;
  }
}
@media screen and (min-width: 751px) and (max-width: 960px) {
  section.sec_joinus .box {
    padding: 9vw 0 0;
  }
}
@media all and (min-width: 751px) {
  section.sec_joinus .image_wrap {
    gap: 0 72px;
  }
}
@media all and (max-width: 1000px) {
  section.sec_joinus .image_wrap .area_desc {
    margin-bottom: 50px;
  }
}
@media all and (min-width: 751px) {
  section.sec_joinus .image_wrap .area_desc {
    width: 48.28%;
  }
}
section.sec_joinus .sec_wrap {
  margin-top: 70px;
}
@media all and (min-width: 751px) {
  section.sec_joinus .sec_wrap {
    margin-top: 150px;
  }
}