@charset "UTF-8";
/* mobile */
/* ------------------------------------

colors setting

------------------------------------ */
/* ------------------------------------

colors setting の変数ではなく
下記の左側の変数をcssで指定する

×：$black
◯：$dark-text

------------------------------------ */
/*  text-color
*----------------------------------- */
/*  background-color
*----------------------------------- */
/*  border-color
*----------------------------------- */
/*  system-color
*----------------------------------- */
/*  cv
*----------------------------------- */
/*  footer
*----------------------------------- */
/*  menu
*----------------------------------- */
/*  new icon
*----------------------------------- */
/*  horizontal
*----------------------------------- */
/*  slick-color
*----------------------------------- */
.en {
  font-family: "montserrat", sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

.en02 {
  font-family: "montserrat", sans-serif;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}

.yakuhan {
  font-family: "YakuHanJP", "ryo-gothic-plusn", sans-serif;
}

body {
  background-color: #faf8f2;
}

.mv {
  margin-bottom: 170px;
  padding: 0 32px;
}
@media (min-width: 768px) {
  .mv {
    position: relative;
  }
}
@media (max-width: 767px) {
  .mv {
    margin-bottom: 28.9743589744dvw;
    padding: 0 5.1282051282dvw;
  }
}
.mv__grid {
  overflow: hidden;
  border-radius: 41px;
  height: calc(100dvh - 66px - 74px);
  box-sizing: border-box;
  margin: 66px 0 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: 50% 50%;
  position: relative;
}
@media (max-width: 767px) {
  .mv__grid {
    height: calc(100svh - 35.3846153846dvw);
    margin: 13.8461538462dvw -2.3076923077dvw 0;
    border-radius: 4.358974359dvw;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: repeat(3, 33.3333333333%);
  }
}
.mv__img {
  position: relative;
  box-sizing: border-box;
}
.mv__img picture {
  display: block;
  height: 100%;
  width: 100%;
}
.mv__img picture:nth-of-type(2) {
  position: absolute;
  animation: mvAnime 12s ease-out infinite forwards;
  top: 0;
}
.mv__img img {
  object-position: top center;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.mv__img.mv__img--01 picture:nth-of-type(2) {
  animation-delay: 0s;
}
@media (max-width: 767px) {
  .mv__img.mv__img--01 picture:nth-of-type(2) {
    animation-delay: 0s;
  }
}
.mv__img.mv__img--02 picture:nth-of-type(2) {
  animation-delay: 4s;
}
@media (max-width: 767px) {
  .mv__img.mv__img--02 picture:nth-of-type(2) {
    animation-delay: 3s;
  }
}
.mv__img.mv__img--03 picture:nth-of-type(2) {
  animation-delay: 2s;
}
@media (max-width: 767px) {
  .mv__img.mv__img--03 picture:nth-of-type(2) {
    animation-delay: 4s;
  }
}
.mv__img.mv__img--04 picture:nth-of-type(2) {
  animation-delay: 3s;
}
@media (max-width: 767px) {
  .mv__img.mv__img--04 picture:nth-of-type(2) {
    animation-delay: 1s;
  }
}
.mv__img.mv__img--05 picture:nth-of-type(2) {
  animation-delay: 1s;
}
@media (max-width: 767px) {
  .mv__img.mv__img--05 picture:nth-of-type(2) {
    animation-delay: 2s;
  }
}
.mv__img.mv__img--06 picture:nth-of-type(2) {
  animation-delay: 5s;
}
@media (max-width: 767px) {
  .mv__img.mv__img--06 picture:nth-of-type(2) {
    animation-delay: 5s;
  }
}
.mv__wrap {
  position: absolute;
  inset: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.mv-txt {
  height: 100%;
  position: absolute;
  inset: 0;
  margin: auto;
  width: 100dvw;
}
@media (min-width: 768px) {
  .mv-txt {
    height: fit-content;
    display: flex;
    padding: 14px 0;
    border-bottom: 4px solid #fff;
    border-top: 4px solid #fff;
  }
}
@media (max-width: 767px) {
  .mv-txt {
    overflow: hidden;
    top: 0;
    height: 100%;
    width: 23.0769230769dvw;
    border-right: 0.7692307692dvw solid #fff;
    border-left: 0.7692307692dvw solid #fff;
  }
}
.mv-txt__wrap {
  display: grid;
}
@media (min-width: 768px) {
  .mv-txt__wrap {
    animation: slideShow 40s infinite linear;
    display: flex;
  }
}
@keyframes slideShow {
  0% {
    transform: translateX(0%);
  }
  100% {
    transform: translateX(-100%);
  }
}
@media (max-width: 767px) {
  .mv-txt__wrap {
    flex-direction: column-reverse;
    animation: slideShowY 40s infinite linear;
  }
}
@keyframes slideShowY {
  0% {
    transform: translateY(0%);
  }
  100% {
    transform: translateY(-100%);
  }
}
.mv-txt.slick-initialized {
  opacity: 1;
}
@media (min-width: 768px) {
  .mv-txt__item {
    margin: 0 3dvw;
  }
}
@media (max-width: 767px) {
  .mv-txt__item {
    margin: 5.1282051282dvw 0;
  }
}
.mv-txt .slick-track {
  display: flex;
}
@media (max-width: 767px) {
  .mv-txt .slick-track {
    display: flex;
    flex-flow: column;
  }
}
.mv-txt picture {
  display: block;
}
.mv-txt picture img {
  display: block;
  width: 133dvw;
  height: auto;
}
@media (max-width: 767px) {
  .mv-txt picture img {
    width: 22.0512820513dvw;
    height: 253.3333333333dvw;
  }
}

@keyframes mvAnime {
  0% {
    opacity: 1;
  }
  25% {
    opacity: 1;
  }
  30% {
    opacity: 0;
  }
  60% {
    opacity: 0;
  }
  75% {
    opacity: 0;
  }
  80% {
    opacity: 1;
  }
  100% {
    opacity: 1;
  }
}
.topic a {
  height: 74px;
  max-width: 1100px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: max-content max-content auto;
}
@media (min-width: 768px) {
  .topic a {
    align-items: center;
  }
}
@media (max-width: 767px) {
  .topic a {
    height: 22.0512820513dvw;
    row-gap: 1.5384615385dvw;
    column-gap: 4.8717948718dvw;
    grid-template-columns: auto 1fr;
  }
}
.topic__ttl {
  display: block;
  font-size: 1.9rem;
  font-weight: bold;
  font-family: "montserrat", sans-serif;
  letter-spacing: 0.06em;
  line-height: 1;
}
@media (min-width: 768px) {
  .topic__ttl {
    padding-right: 29px;
  }
}
@media (max-width: 767px) {
  .topic__ttl {
    display: flex;
    align-self: flex-end;
  }
}
.topic__info {
  display: flex;
  align-items: center;
  gap: 17px;
}
@media (min-width: 768px) {
  .topic__info {
    padding-right: 12px;
  }
}
@media (max-width: 767px) {
  .topic__info {
    gap: 4.358974359dvw;
    align-self: flex-end;
  }
}
.topic__info time {
  display: block;
  line-height: 1;
  font-size: 1.5rem;
  font-weight: 400;
  letter-spacing: 0.03em;
}
@media (max-width: 767px) {
  .topic__info time {
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.topic__info li {
  display: block;
  background-color: #696969;
  padding: 0.22em 0.3em;
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1;
  color: #fff;
}
@media (max-width: 767px) {
  .topic__info li {
    font-size: 13px;
    font-size: 3.3333333333dvw;
  }
}
@media (max-width: 767px) {
  .topic__txt {
    grid-column: 1/3;
  }
}
.topic__txt p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  font-size: 1.5rem;
  font-weight: 400;
}
@media (max-width: 767px) {
  .topic__txt p {
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}

.lead {
  position: relative;
  margin-bottom: 122px;
}
@media (max-width: 767px) {
  .lead {
    margin-bottom: 24.6153846154dvw;
  }
}
.lead__ttl {
  margin-bottom: 42px;
  text-align: center;
  font-size: 1.6rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  line-height: 1;
  font-family: "montserrat", sans-serif;
}
@media (max-width: 767px) {
  .lead__ttl {
    margin-bottom: 6.6666666667dvw;
    font-size: 16px;
    font-size: 4.1025641026dvw;
  }
}
.lead__ttl span:nth-of-type(1) {
  color: #63a197;
}
.lead__ttl span:nth-of-type(2) {
  color: #EA7744;
}
.lead__ttl span:nth-of-type(3) {
  color: #4CB548;
}
.lead__ttl span:nth-of-type(4) {
  color: #589cf6;
}
.lead__ttl span:nth-of-type(5) {
  color: #d37092;
}
.lead__subttl {
  margin-bottom: 58px;
  text-align: center;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  -webkit-font-smoothing: antialiased;
  font-size: 5.3rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  line-height: 1.2;
}
@media (max-width: 767px) {
  .lead__subttl {
    margin-bottom: 7.6923076923dvw;
    font-size: 30px;
    font-size: 7.6923076923dvw;
    line-height: 1.4;
  }
}
.lead__txt {
  margin-bottom: 20px;
  text-align: center;
}
@media (max-width: 767px) {
  .lead__txt {
    margin-bottom: 5.1282051282dvw;
  }
}
.lead__txt p {
  font-size: 2.1rem;
  font-weight: bold;
  letter-spacing: 0.03em;
  line-height: 2.5238095238;
}
@media (max-width: 767px) {
  .lead__txt p {
    font-size: 16px;
    font-size: 4.1025641026dvw;
    line-height: 2.375;
  }
}
.lead__txt p:not(:last-child) {
  margin-bottom: 2.5em;
}
.lead__catch {
  max-width: 582px;
  margin: 0 auto 74px;
}
@media (max-width: 767px) {
  .lead__catch {
    max-width: 78.9743589744dvw;
    margin: 0 auto 15.8974358974dvw;
  }
}
.lead__img {
  max-width: 1440px;
  margin: 0 auto;
}

.lead-bg {
  position: absolute;
  left: 0;
  right: 0;
  top: 240px;
  width: 100%;
  height: 100%;
  z-index: -1;
  display: flex;
  flex-flow: column;
  gap: 110px;
}
@media (max-width: 767px) {
  .lead-bg {
    top: 50dvw;
    gap: 17.9487179487dvw;
  }
}
.lead-bg .slide-txt {
  position: relative;
}
.lead-bg .slide-txt:nth-of-type(1), .lead-bg .slide-txt:nth-of-type(3) {
  position: relative;
}
.lead-bg .slide-txt:nth-of-type(1)::before, .lead-bg .slide-txt:nth-of-type(3)::before {
  z-index: -1;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 465px;
  display: block;
  margin: auto;
  content: "";
  background: linear-gradient(0deg, rgba(235, 231, 222, 0) 0%, rgb(235, 231, 222) 30%, rgb(235, 231, 222) 70%, rgba(235, 231, 222, 0) 100%);
}
@media (max-width: 767px) {
  .lead-bg .slide-txt:nth-of-type(1)::before, .lead-bg .slide-txt:nth-of-type(3)::before {
    height: 76.6666666667dvw;
  }
}
.lead-bg .slide-txt:nth-of-type(2) .slide-txt__item img {
  filter: invert(91%) sepia(9%) saturate(284%) hue-rotate(333deg) brightness(108%) contrast(87%);
}

.recruit-movie {
  max-width: 1440px;
  margin: 0 auto 254px;
}
@media (max-width: 767px) {
  .recruit-movie {
    margin-bottom: 33.3333333333dvw;
  }
}
.recruit-movie__wrap {
  margin-left: auto;
  max-width: 1300px;
  position: relative;
}
@media (min-width: 768px) {
  .recruit-movie__wrap {
    background: url("../images/top/bg_movie.png") center top/contain no-repeat;
    background-position: 0 14px;
    padding: 42px 37px 0 min(13.12dvw, 200px);
  }
}
.recruit-movie__iframe {
  aspect-ratio: 1056/478;
  max-width: 1056px;
  position: relative;
}
@media (max-width: 767px) {
  .recruit-movie__iframe {
    aspect-ratio: 392/175;
    max-width: 1056%;
    background: url("../images/top/sp/bg_movie.png") right top no-repeat;
    background-size: 94.8717948718dvw auto;
  }
}
.recruit-movie__iframe .l-movie__main video {
  width: 1056px;
  display: block;
  height: 100%;
}
@media (max-width: 767px) {
  .recruit-movie__iframe .l-movie__main video {
    width: 100%;
    padding-top: 4.1025641026dvw;
    box-sizing: content-box;
  }
}
.recruit-movie__ttl {
  font-size: min(5.21dvw, 7.5rem);
  font-weight: 800;
  letter-spacing: 0.05em;
  color: #1d1d1d;
  font-family: "montserrat", sans-serif;
  line-height: 1.05;
}
@media (min-width: 768px) {
  .recruit-movie__ttl {
    z-index: 2;
    position: absolute;
    top: 0;
    left: 0.3em;
    writing-mode: vertical-rl;
  }
}
@media (max-width: 767px) {
  .recruit-movie__ttl {
    margin: 0 5.1282051282dvw 6.9230769231dvw;
    font-size: 49px;
    font-size: 12.5641025641dvw;
    line-height: 1.0204081633;
  }
}

.movie-btn {
  position: absolute;
  left: -57px;
  bottom: -57px;
  height: 113px;
  width: 113px;
  z-index: 3;
}
@media (max-width: 767px) {
  .movie-btn {
    left: 7.1794871795dvw;
    bottom: -12.8205128205dvw;
    width: 28.9743589744dvw;
    height: 28.9743589744dvw;
  }
}
.movie-btn a {
  display: block;
}
.movie-btn img {
  position: absolute;
  inset: 0;
  margin: auto;
  transition: 0.3s;
}
.movie-btn img:nth-of-type(1) {
  width: 100%;
  animation: 8s linear infinite rotation;
}
.interview {
  padding-bottom: 103px;
  border-bottom: 1px solid #e3ddd2;
}

.message {
  margin-bottom: 154px;
  background-color: #fff;
  position: relative;
  padding: 0 37px;
}
@media (min-width: 768px) {
  .message {
    overflow-x: clip;
    border-bottom: 1px solid #e3ddd2;
  }
}
@media (max-width: 767px) {
  .message {
    margin-bottom: 27.1794871795dvw;
    padding: 9.2307692308dvw 0 0;
  }
}
.message::before {
  z-index: 1;
  position: absolute;
  top: 53px;
  right: 0;
  left: 0;
  display: block;
  margin: auto;
  content: "MESSAGE";
  width: fit-content;
  font-size: 26rem;
  font-weight: bold;
  font-family: "montserrat", sans-serif;
  line-height: 1;
  color: #f8f5ef;
}
@media (max-width: 767px) {
  .message::before {
    top: 79.4871794872dvw;
    font-size: 74px;
    font-size: 18.9743589744dvw;
  }
}
.message__grid {
  position: relative;
  z-index: 2;
  margin: 0 auto;
}
@media (min-width: 768px) {
  .message__grid {
    width: 1080px;
    display: grid;
    grid-template-columns: 41.945% auto;
    grid-template-rows: 1fr 142px;
    column-gap: 43px;
    row-gap: 30px;
  }
}
@media (min-width: 768px) {
  .message__img {
    align-self: flex-end;
    position: relative;
    z-index: 2;
    margin-top: -39px;
    order: 1;
    grid-row: 1/3;
  }
}
@media (max-width: 767px) {
  .message__img {
    width: 71.7948717949dvw;
    margin: -2.0512820513dvw auto 0;
  }
}
.message__txt {
  color: #1e1e1e;
}
@media (min-width: 768px) {
  .message__txt {
    margin-top: 30px;
    align-self: flex-end;
  }
}
@media (max-width: 767px) {
  .message__txt {
    margin: 0 7.6923076923dvw;
  }
}
.message__txt p {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.8666666667;
}
@media (max-width: 767px) {
  .message__txt p {
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.message__ttl {
  margin-bottom: 1em;
  font-size: 1.5rem;
  font-weight: 500;
}
@media (max-width: 767px) {
  .message__ttl {
    margin-bottom: 0.8em;
    text-align: center;
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.message__subttl {
  margin-bottom: 0.3em;
  font-size: 5rem;
  font-weight: 800;
  letter-spacing: 0.03em;
  line-height: 1.28;
}
@media (max-width: 767px) {
  .message__subttl {
    margin-bottom: 0.5em;
    text-align: center;
    font-size: 31px;
    font-size: 7.9487179487dvw;
    line-height: 1.2903225806;
  }
}
.message__subttl span {
  color: #e34056;
}
@media (min-width: 768px) {
  .message__btn {
    align-self: flex-start;
  }
}
@media (max-width: 767px) {
  .message__btn {
    background-color: #faf8f2;
    padding-top: 7.1794871795dvw;
    border-top: 1px solid #e3ddd2;
  }
}
.message__btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 57px;
  border-radius: 57px;
  width: 100%;
  max-width: 296px;
  color: #fff;
  background-color: #272727;
  font-size: 1.5rem;
  font-weight: 500;
  position: relative;
}
@media (max-width: 767px) {
  .message__btn a {
    margin: 0 auto;
    height: 14.6153846154dvw;
    border-radius: 14.6153846154dvw;
    max-width: 75.8974358974dvw;
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.message__btn a::before {
  position: absolute;
  top: 0;
  right: 29px;
  bottom: 0;
  display: block;
  margin: auto;
  width: 31px;
  height: 6px;
  background: url("../images/cmn/arrow.svg") center/contain no-repeat;
  filter: invert(1);
  content: "";
}
@media (max-width: 767px) {
  .message__btn a::before {
    right: 7.4358974359dvw;
    width: 7.9487179487dvw;
    height: 1.5384615385dvw;
  }
}

.bnr-link {
  margin-bottom: 182px;
  padding: 0 37px;
}
@media (max-width: 767px) {
  .bnr-link {
    margin-bottom: 30.7692307692dvw;
    padding: 0 5.1282051282dvw;
  }
}
.bnr-link ul {
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 44px;
  row-gap: 56px;
}
@media (max-width: 767px) {
  .bnr-link ul {
    row-gap: 14.358974359dvw;
    grid-template-columns: 1fr;
  }
}
.bnr-link a {
  display: block;
}
.bnr-link img {
  margin-bottom: 16px;
}
@media (max-width: 767px) {
  .bnr-link img {
    margin-bottom: 6.4102564103dvw;
  }
}
.bnr-link p {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.6;
}
@media (min-width: 768px) {
  .bnr-link p {
    text-align: center;
  }
}
@media (max-width: 767px) {
  .bnr-link p {
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}

.col-link {
  padding: 0 37px 154px;
  border-bottom: 1px solid #e3ddd2;
  margin-bottom: 63px;
  position: relative;
}
@media (max-width: 767px) {
  .col-link {
    margin-bottom: 10.5128205128dvw;
    padding: 0 5.1282051282dvw 23.0769230769dvw;
  }
}
.col-link::before {
  z-index: -1;
  position: absolute;
  top: min(13.9dvw, 200px);
  right: 0;
  left: 0;
  width: 100%;
  height: 467px;
  background: red;
  background: linear-gradient(0deg, rgba(235, 231, 222, 0) 0%, rgb(235, 231, 222) 30%, rgb(235, 231, 222) 70%, rgba(235, 231, 222, 0) 100%);
  display: block;
  margin: auto;
  content: "";
}
.col-link__item {
  margin: 0 auto;
  max-width: 1200px;
  display: grid;
}
@media (min-width: 768px) {
  .col-link__item {
    grid-template-columns: 50% auto;
    column-gap: 64px;
  }
  .col-link__item:nth-of-type(odd) {
    grid-template-columns: auto 50%;
    flex-flow: row-reverse;
  }
  .col-link__item:nth-of-type(odd) .col-link__img {
    order: 2;
    margin-right: -47px;
  }
  .col-link__item:nth-of-type(even) .col-link__img {
    margin-left: -47px;
  }
}
.col-link__item:not(:last-child) {
  margin-bottom: 100px;
}
@media (max-width: 767px) {
  .col-link__item:not(:last-child) {
    margin-bottom: 17.9487179487dvw;
  }
}
@media (max-width: 767px) {
  .col-link__img {
    margin-bottom: 7.6923076923dvw;
  }
}
@media (min-width: 768px) {
  .col-link__txt {
    padding-top: 24px;
  }
}
.col-link__txt p {
  font-weight: 400;
  font-size: 1.6rem;
  line-height: 2.0625;
}
@media (max-width: 767px) {
  .col-link__txt p {
    font-size: 16px;
    font-size: 4.1025641026dvw;
    line-height: 1.8125;
  }
}
.col-link__ttl {
  margin-bottom: 1.8em;
  color: #000;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .col-link__ttl {
    margin-bottom: 1.6em;
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.col-link__ttl span {
  margin-bottom: 0.2em;
  display: block;
  font-size: 4.8rem;
  font-weight: 800;
  font-family: "montserrat", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media (max-width: 767px) {
  .col-link__ttl span {
    font-size: 38px;
    font-size: 9.7435897436dvw;
  }
}
.col-link__subttl {
  margin-bottom: 0.5em;
  font-size: 3.4rem;
  font-weight: bold;
  line-height: 1.5294117647;
}
@media (max-width: 767px) {
  .col-link__subttl {
    font-size: 24px;
    font-size: 6.1538461538dvw;
  }
}
.col-link__btn {
  margin-top: 34px;
}
@media (max-width: 767px) {
  .col-link__btn {
    margin-top: 7.6923076923dvw;
  }
}

.bnr-link2 {
  padding: 0 37px 57px;
  border-bottom: 1px solid #e3ddd2;
}
@media (max-width: 767px) {
  .bnr-link2 {
    padding: 0 5.1282051282dvw 21.5384615385dvw;
  }
}
.bnr-link2__wrap {
  display: grid;
  column-gap: 44px;
  row-gap: 40px;
  grid-template-columns: 1fr 1fr;
  max-width: 1200px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  .bnr-link2__wrap {
    row-gap: 4.358974359dvw;
    grid-template-columns: 1fr;
  }
}
@media (min-width: 768px) {
  .bnr-link2__item:nth-of-type(3) {
    grid-column: 1/3;
  }
}
@media (max-width: 767px) {
  .bnr-link2__item:nth-of-type(3) {
    margin-top: 2.5641025641dvw;
  }
}
.bnr-link2__item:nth-of-type(3) a {
  position: relative;
  display: block;
  max-width: 780px;
  margin: 0 auto;
}
.bnr-link2__item:nth-of-type(3) a picture {
  display: block;
  transition: 0.3s;
}
.bnr-link2__item:nth-of-type(3) a picture:nth-of-type(1) {
  z-index: -1;
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
.bnr-link2__item:nth-of-type(3) a:hover {
  opacity: 1;
}
.bnr-link2__item:nth-of-type(3) a:hover picture:nth-of-type(2) {
  opacity: 0;
}
.bnr-link2__item:nth-of-type(3) a:hover img {
  opacity: 1;
}

.news {
  background-color: #fff;
  padding: 76px 37px 90px;
  border-bottom: 1px solid #e3ddd2;
}
@media (max-width: 767px) {
  .news {
    padding: 14.6153846154dvw 5.1282051282dvw 19.4871794872dvw;
  }
}
.news__grid {
  margin: 0 auto;
  max-width: 1200px;
}
@media (min-width: 768px) {
  .news__grid {
    display: grid;
    grid-template-columns: max-content 1fr;
    grid-template-rows: max-content 1fr;
    row-gap: 38px;
  }
}
@media (min-width: 768px) {
  .news__header {
    display: flex;
    align-items: center;
    gap: 28px;
  }
}
@media (max-width: 767px) {
  .news__header {
    margin-bottom: 7.1794871795dvw;
  }
}
.news__header p {
  font-size: 1.6rem;
  font-weight: 400;
}
@media (max-width: 767px) {
  .news__header p {
    font-size: 16px;
    font-size: 4.1025641026dvw;
  }
}
.news__ttl {
  color: #000;
  font-size: 1.6rem;
}
@media (min-width: 768px) {
  .news__ttl {
    gap: 30px;
    display: flex;
    align-items: center;
  }
}
@media (max-width: 767px) {
  .news__ttl {
    margin-bottom: 7.1794871795dvw;
    text-align: center;
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.news__ttl span {
  font-size: 4.8rem;
  font-weight: 800;
  font-family: "montserrat", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media (max-width: 767px) {
  .news__ttl span {
    display: block;
    font-size: 36px;
    font-size: 9.2307692308dvw;
  }
}
@media (min-width: 768px) {
  .news__btn {
    grid-columns: 2/3;
    grid-rows: 1/2;
    align-self: flex-end;
    text-align: right;
  }
}
@media (max-width: 767px) {
  .news__btn {
    margin-top: 13.5897435897dvw;
    text-align: center;
  }
}

.news-list {
  margin: 0 auto;
}
@media (min-width: 768px) {
  .news-list {
    max-width: 1200px;
    grid-column: 1/3;
    grid-row: 2/3;
    grid-template-columns: repeat(4, 1fr);
    display: grid;
    gap: 25px;
  }
}
@media (max-width: 767px) {
  .news-list {
    margin: 0 -5.1282051282dvw;
  }
}
@media (max-width: 767px) {
  .news-list__item {
    margin: 0 5.1282051282dvw;
    width: 89.7435897436dvw;
  }
}
.news-list__img {
  margin-bottom: 16px;
  aspect-ratio: 281/181;
  display: block;
  overflow: hidden;
}
@media (max-width: 767px) {
  .news-list__img {
    aspect-ratio: 350/225;
    margin-bottom: 4.1025641026dvw;
  }
}
.news-list__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.news-list__tag {
  margin-bottom: 12px;
  display: flex;
  flex-flow: wrap;
  gap: 1em;
  font-size: 1.4rem;
}
@media (max-width: 767px) {
  .news-list__tag {
    margin-bottom: 2.5641025641dvw;
    gap: 1.7948717949dvw;
  }
}
.news-list__tag li {
  color: #656565;
  line-height: 1;
  font-weight: 400;
}
@media (max-width: 767px) {
  .news-list__tag li {
    font-size: 12px;
    font-size: 3.0769230769dvw;
  }
}
.news-list__txt p {
  margin-bottom: 0.8em;
  font-size: 1.5rem;
  line-height: 1.4666666667;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  text-align: left;
}
@media (max-width: 767px) {
  .news-list__txt p {
    font-size: 18px;
    font-size: 4.6153846154dvw;
  }
}
.news-list__txt time {
  line-height: 1;
  display: block;
  font-size: 1.5rem;
  font-weight: 400;
}
@media (max-width: 767px) {
  .news-list__txt time {
    font-size: 13px;
    font-size: 3.3333333333dvw;
  }
}
.news-list .slick-dots {
  margin-top: 6.6666666667dvw !important;
  position: relative;
  display: flex;
  flex-flow: wrap;
  justify-content: center;
  gap: 2.5641025641dvw;
}
.news-list .slick-dots li,
.news-list .slick-dots button {
  margin: 0;
  border-radius: 50%;
  width: 2.8205128205dvw;
  height: 2.8205128205dvw;
}

.recruit {
  padding: 50px 37px 66px;
}
@media (max-width: 767px) {
  .recruit {
    padding: 12.8205128205dvw 5.1282051282dvw 15.3846153846dvw;
  }
}
.recruit__wrap {
  max-width: 1200px;
  margin: 0 auto;
}
.recruit__ttl {
  color: #000;
  margin-bottom: 1em;
  font-size: 1.6rem;
}
@media (min-width: 768px) {
  .recruit__ttl {
    display: flex;
    gap: 30px;
    align-items: center;
  }
}
@media (max-width: 767px) {
  .recruit__ttl {
    margin-bottom: 2em;
    text-align: center;
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.recruit__ttl span {
  font-size: 4.8rem;
  font-weight: 800;
  font-family: "montserrat", sans-serif;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media (max-width: 767px) {
  .recruit__ttl span {
    display: block;
    font-size: 36px;
    font-size: 9.2307692308dvw;
  }
}

.recruit-list ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 19px;
}
@media (max-width: 767px) {
  .recruit-list ul {
    gap: 3.5897435897dvw;
    grid-template-columns: 1fr;
  }
}
.recruit-list a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 64px;
  font-size: 1.5rem;
  font-weight: 500;
  box-sizing: border-box;
  color: #242424;
  background-color: #fff;
  border: 1px solid #b1a898;
  transition: 0.3s;
}
@media (max-width: 767px) {
  .recruit-list a {
    height: 16.4102564103dvw;
    font-size: 15px;
    font-size: 3.8461538462dvw;
  }
}
.recruit-list a:hover {
  opacity: 0.7;
}

.side-fixed-btn {
  position: fixed;
  width: fit-content;
  right: 13px;
  bottom: 20px;
  z-index: 1001;
}
.side-fixed-btn img {
  width: 122px;
  height: 122px;
}

/*# sourceMappingURL=top.css.map */
