@charset "UTF-8";

/*!  Home
================================================ */

/* .l-main
-------------------------------------------------*/

.l-main {
  padding-top: 0;
  padding-bottom: 0;
}

/* .l-mv
-------------------------------------------------*/

.l-mv {
  margin: 0 auto;
  padding: 0 40px min(7.5833333333svw, 91px);
}

.l-mv__inner {
  position: relative;
  width: min(100%, 1200px);
  margin: 0 auto;
}

.l-mv__lead {
  position: absolute;
  bottom: min(3.9166666667svw, 47px);
  left: 0;
  width: fit-content;
  color: #fff;
}

.l-mv__lead p {
  margin-bottom: 0;
}

.l-mv__lead .l-mv__text01 {
  position: absolute;
  top: max(-2.0555555556em, -37px);
  left: min(2.6666666667svw, 32px);
  width: fit-content;
  padding: min(0.1666666667em, 3px) min(0.9583333333em, 23px) min(0.25em, 6px);
  background-color: #d79e64;
  background-color: rgba(215, 158, 100, 1);
  font-size: clamp(1.125rem, 0.563rem + 1.5vw, 1.5rem);
  line-height: 1.75;
}

.l-mv__lead .l-mv__text02 {
  margin-left: calc(50% - 50vw);
  padding: min(2svw, 24px) min(0.609375em, 39px) min(3.75svw, 45px) calc(50vw - 50% + 2.0833333333svw);
  background-color: rgba(121, 135, 97, 0.8);
  font-size: clamp(3.125rem, 1.813rem + 3.5vw, 4rem);
  line-height: 1.09375;
}

.l-mv__lead .l-mv__text02 .l-mv__text-strong {
  font-size: clamp(3.75rem, 1.875rem + 5vw, 5rem);
}

.l-mv__lead .l-mv__text02 .l-mv__text-em {
  font-size: clamp(4.25rem, 3.5rem + 2vw, 4.75rem);
}

.l-mv__scroll {
  position: absolute;
  right: max(-4.1666666667svw, -50px);
  bottom: min(0.8333333333svw, 10px);
  font-size: clamp(0.75rem, 0.375rem + 1vw, 1rem);
  letter-spacing: 0.05em;
  writing-mode: vertical-rl;
}

.l-mv__scroll .l-mv__scroll-text {
  margin-bottom: 0;
  padding-bottom: min(2.875em, 46px);
}

.l-mv__scroll .l-mv__scroll-text::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: calc(50% - 0.25em);
  width: 1px;
  height: min(2.375em, 38px);
  background-color: #798761;
  animation: scroll 2s ease-in-out infinite;
}

/*アニメーション*/

@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }

  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }

  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }

  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}

.l-mv__slide .splide__pagination {
  bottom: -22px;
  left: auto;
  right: 0;
  gap: 0 min(1.4166666667svw, 17px);
  padding: 0;
}

.l-mv__slide .splide__pagination__page {
  width: 16px;
  height: 16px;
  margin: 0;
  opacity: 1;
  border: 1px solid #798761;
  background-color: #fefdf6;
}

.l-mv__slide .splide__pagination__page.is-active {
  transform: scale(1);
  background-color: #798761;
}

/* .l-news
-------------------------------------------------*/

.l-news {
  padding: min(3.5833333333svw, 43px) 0 0;
  background-color: rgba(0, 0, 0, 0.1);
}

.l-news__list {
  margin: 45px 0 0;
  border-top: 1px solid #fff;
}

.l-news__item {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 min(2.375em, 38px);
  padding: min(2.1666666667svw, 26px) 3px min(2.0833333333svw, 25px);
  border-bottom: 1px solid #fff;
  line-height: 1.375;
  color: #fff;
}

.l-news__item .l-news__category {
  min-width: 122px;
  padding: min(0.5em, 8px) min(0.625em, 10px);
  box-sizing: border-box;
  background-color: #fff;
  line-height: 1;
  text-align: center;
  color: #798761;
  border-radius: 24px;
}

.l-news__item .l-news__ttl {
  color: #fff;
}

.l-news__btn {
  width: min(10.8%, 108px);
  height: auto;
  aspect-ratio: 108/85;
  margin: min(1.8125em, 29px) 0 0 auto;
  padding: min(0.3125em, 5px) 0 0;
  box-sizing: border-box;
  background: url(../../../images/top/news_btn.webp) no-repeat 50% 0/100% auto;
  font-size: clamp(0.5rem, 0rem + 1.6vw, 1rem);
  line-height: 1.1875;
  text-align: center;
}

/* .l-about
-------------------------------------------------*/

.l-about {
  padding: min(8.3333333333svw, 100px) 0 min(8.25svw, 99px);
}

.l-about .c-hgroup01 {
  width: 100%;
  margin-bottom: min(2.5svw, 30px);
  margin-left: 0;
}

.l-about .l-headline__img {
  position: absolute;
  bottom: min(0.4166666667svw, 5px);
  right: min(5.6%, 28px);
  width: min(13.8%, 69px);
}

.l-about__wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: min(7.2727272727%, 80px);
}

.l-about__wrap .l-about__text {
  width: min(45.4545454545%, 500px);
  padding-top: min(1.6666666667svw, 20px);
}

.l-about__wrap .l-about__img {
  width: min(43%, 473px);
}

.l-about__wrap .l-about__btn {
  margin-top: min(1.9375em, 31px);
}

.l-about__wrap .l-about__btn .c-btn01 {
  margin-left: 0;
}

/* .l-service
-------------------------------------------------*/

.l-service {
  padding: min(8.3333333333svw, 100px) 0 min(8.4166666667svw, 101px);
}

.l-service__box01 {
  margin: min(7.7272727273svw, 85px) auto 0;
  padding: min(3svw, 33px) min(4.5620437956%, 50px) min(4.3636363636svw, 48px);
  border: 2px solid rgba(255, 255, 255, 0.8);
  border-radius: 12px;
}

.l-service__box01 .l-service__wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.l-service__box01 .l-service__img {
  width: min(40.3%, 403px);
  margin-top: min(1.3636363636svw, 15px);
}

.l-service__box01 .l-service__text {
  width: min(53.5%, 535px);
}

.l-service__box01 .l-service__text .c-subheadline02 {
  margin-bottom: min(0.21875em, 7px);
  margin-left: 0;
}

.l-service__box01 .l-service__btn {
  margin: min(1.1875em, 19px) 0 0;
}

.l-service__box02 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(335px, 1fr));
  gap: min(2.5454545455svw, 28px) min(3.1818181818%, 35px);
  margin-top: min(3.0909090909svw, 34px);
}

.l-service__box02 .l-service__box {
  padding: min(3.9090909091svw, 43px) min(3.7593984962%, 20px) min(3.3636363636svw, 37px);
  border: 2px solid rgba(255, 255, 255, 0.8);
  border-radius: 12px;
}

.l-service__box02 .l-service__box .l-service__img {
  width: min(73.1707317073%, 360px);
  margin: 0 auto min(2.0909090909svw, 23px);
}

.l-service__box02 .l-service__box .l-service__text {
  width: min(73.1707317073%, 360px);
  margin: min(1.0625em, 17px) auto 0;
  text-align: center;
}

.l-service__box02 .l-service__btn {
  margin: min(2.0625em, 33px) auto 0;
}

.l-service__box02 .l-service__btn .c-btn01 {
  margin: auto;
}

/* .l-instagram
-------------------------------------------------*/

.l-instagram {
  padding: min(9.1666666667svw, 110px) 0 min(8svw, 96px);
}

.l-instagram .c-hgroup01 {
  background: linear-gradient(102deg, #fff11d 0%, #fbcc00 20%, #f0932e 44%, #c8327b 74%, #4e52a1 100%);
  color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
}

.l-instagram__wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: min(6.1666666667svw, 74px);
}

.l-instagram__wrap .l-instagram__contents {
  width: min(64.1666666667%, 770px);
}

.l-instagram__account {
  display: flex;
  align-items: center;
  gap: min(1.3333333333svw, 16px);
  margin-bottom: min(1.8333333333svw, 22px);
  color: #798761;
  font-family: "Raleway", sans-serif;
  font-size: clamp(1.5rem, 1.05rem + 1.2vw, 1.875rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.02em;
}

.l-instagram__account img {
  width: min(7.7922077922%, 60px);
  height: auto;
}

.l-instagram__photos {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(3.1168831169%, 24px);
}

.l-instagram__photos img {
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: cover;
}

.l-instagram__check {
  width: min(30%, 360px);
  padding: min(1.0833333333svw, 13px) 0 min(3.25svw, 39px);
  border-top: 2px dashed #798761;
  border-bottom: 2px dashed #798761;
  font-weight: bold;
  line-height: 1.75;
}

.l-instagram__check .l-instagram__icon {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.7em;
  margin: 0 auto 0;
  font-size: clamp(1.0625rem, 0.75rem + 0.8vw, 1.25rem);
}

.l-instagram__check .l-instagram__icon::before {
  content: "";
  width: min(24.4444444444%, 88px);
  height: auto;
  aspect-ratio: 88/81;
  background: url(../../../images/top/instagram_img01.webp) no-repeat 0 0/100% auto;
}

.l-instagram__check .l-instagram__btn {
  margin: 2em auto 0;
}

/* .l-instagram
-------------------------------------------------*/

.l-access {
  width: min(96.6666666667%, 1200px);
  margin: 0 auto 0;
  padding: min(7.3333333333svw, 88px) 0 min(5.8333333333svw, 70px);
  border-top: 1px solid #798761;
}

.l-access__wrap {
  display: flex;
  flex-wrap: wrap;
  gap: 0 min(4.5454545455%, 50px);
  width: min(91.6666666667%, 1100px);
  margin: 0 auto;
}

.l-access__wrap .l-access__text {
  width: min(45.4545454545%, 500px);
}

.l-access__wrap .l-access__map {
  width: min(45.4545454545%, 500px);
  aspect-ratio: 16/9;
  margin-top: min(0.8333333333svw, 10px);
}

.l-access__wrap .l-access__map iframe {
  width: 100%;
  height: 100%;
  margin-top: 0;
}

.l-access__wrap .c-hgroup01 {
  margin-left: 0;
  text-align: left;
}

.l-access__address,
.l-access__train,
.l-access__parking {
  display: flex;
  align-items: center;
  line-height: 1.375;
  margin-bottom: 1.875em;
}

.l-access__address::before,
.l-access__train::before,
.l-access__parking::before {
  content: "";
  width: 2.875em;
  height: auto;
  margin-right: 1.125em;
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 100% auto;
}

.l-access__address::before {
  aspect-ratio: 91/97;
  background-image: url(../../../images/top/icon_address.webp);
}

.l-access__train::before {
  aspect-ratio: 91/64;
  background-image: url(../../../images/top/icon_train.webp);
}

.l-access__parking::before {
  aspect-ratio: 91/72;
  background-image: url(../../../images/top/icon_parking.webp);
}

.l-access__btn {
  margin-top: min(1.9375em, 31px);
}

.l-access__btn .c-btn01 {
  margin-left: 0;
}

@media print, screen and (max-width: 900px) {
  .l-main {
    padding: min(17.8666666667svw, 67px) 0 0;
  }

  .l-mv__lead .l-mv__text01 {
    left: min(2.6666666667svw, 32px);
  }
}

@media print, screen and (max-width: 750px) {
  .l-main {
    padding: min(17.8666666667svw, 134px) 0 0;
  }

  .l-mv {
    margin-bottom: min(16svw, 120px);
    padding: 0;
  }

  .l-mv__inner {
    width: 89.3333333333%;
  }

  .l-mv__lead {
    bottom: min(3.3333333333svw, 23px);
  }

  .l-mv__lead .l-mv__text01 {
    top: max(-3.8666666667svw, -29px);
    left: 0;
    padding: min(0.6666666667svw, 5px) min(2.6666666667svw, 20px) min(1.2svw, 9px);
    font-size: clamp(0.75rem, 0rem + 3.2vw, 1.5rem);
    line-height: 1.1666666667;
    letter-spacing: 0.01em;
  }

  .l-mv__lead .l-mv__text02 {
    padding: min(2.5333333333svw, 19px) min(8svw, 60px) min(3.2svw, 24px) calc(50vw - 50% + 0.8svw);
    font-size: clamp(1.875rem, 0rem + 8vw, 3.75rem);
    line-height: 1.2473933333;
  }

  .l-mv__lead .l-mv__text02 .l-mv__text-strong {
    font-size: clamp(1.875rem, 0rem + 8vw, 3.75rem);
  }

  .l-mv__lead .l-mv__text02 .l-mv__text-em {
    font-size: clamp(2.125rem, -0.016rem + 9.1vw, 4.25rem);
  }

  .l-mv__scroll {
    display: none;
  }

  .l-mv__slide .splide__pagination {
    display: none;
  }

  .l-news {
    padding: min(15.6svw, 117px) 0 0;
  }

  .l-news__list {
    margin: min(14.6666666667svw, 110px) 0 0;
  }

  .l-news__item {
    gap: 0 min(1.875em, 60px);
    padding: min(11.2svw, 84px) 0 min(8.1333333333svw, 61px);
  }

  .l-news__item .l-news__category {
    min-width: min(7.625em, 244px);
    padding: min(0.46875em, 15px) 10px min(0.46875em, 15px);
  }

  .l-news__item .l-news__ttl {
    width: 100%;
    padding: min(4.8svw, 36px) 0;
  }

  .l-news__btn {
    width: min(32.2388059701%, 216px);
    margin-top: min(2.5625em, 86px);
    padding-top: min(0.3125em, 10px);
    font-size: clamp(1rem, -0.016rem + 4.3vw, 2rem);
  }

  .l-about {
    padding: min(21.3333333333svw, 160px) 0 min(21.0666666667svw, 158px);
  }

  .l-about .c-hgroup01 {
    margin-bottom: min(8svw, 60px);
  }

  .l-about .l-headline__img {
    bottom: max(-2.2666666667svw, -17px);
    right: max(-2.8358208955%, -19px);
    width: min(20.8955223881%, 140px);
  }

  .l-about__wrap {
    display: block;
  }

  .l-about__wrap .l-about__text {
    width: 100%;
  }

  .l-about__wrap .l-about__img {
    width: 100vw;
    margin: min(6.8svw, 51px) calc(50% - 50vw) 0;
  }

  .l-about__wrap .l-about__btn {
    margin-top: min(1.46875em, 47px);
  }

  .l-about__wrap .l-about__btn .c-btn01 {
    margin-left: auto;
  }

  .l-service {
    padding: min(19.2svw, 144px) 0 min(18.9333333333svw, 142px);
  }

  .l-service__box01 {
    margin: min(17.6svw, 132px) auto 0;
    padding: min(5.3333333333svw, 40px) min(4.6827794562%, 31px) min(7.4666666667svw, 56px);
    border-radius: clamp(0.75rem, 0rem + 3.2vw, 1.5rem);
  }

  .l-service__box01 .l-service__wrap {
    display: block;
  }

  .l-service__box01 .l-service__img {
    width: 94%;
    margin: 0 auto;
  }

  .l-service__box01 .l-service__text {
    width: 100%;
    padding: min(4.5333333333svw, 34px) 0 0;
  }

  .l-service__box01 .l-service__text .c-subheadline02 {
    margin-left: auto;
    margin-bottom: min(0.4230769231em, 22px);
  }

  .l-service__box01 .l-service__btn {
    margin-top: min(1.8125em, 58px);
  }

  .l-service__box01 .l-service__btn .c-btn01 {
    width: min(min(86.6666666667%, 520px));
  }

  .l-service__box02 {
    margin-top: min(13.3333333333svw, 100px);
  }

  .l-service__box02 .l-service__box {
    padding: min(5.3333333333svw, 40px) min(4.6827794562%, 31px) min(7.7333333333svw, 58px);
    border-radius: clamp(0.75rem, 0rem + 3.2vw, 1.5rem);
  }

  .l-service__box02 .l-service__box .l-service__img {
    width: 100%;
    margin-bottom: min(1.6svw, 12px);
  }

  .l-service__box02 .l-service__box .l-service__text {
    width: 100%;
    margin: min(2.6666666667svw, 20px) auto 0;
    text-align: left;
  }

  .l-service__box02 .l-service__btn {
    margin-top: min(1.8125em, 58px);
  }

  .l-service__box02 .l-service__btn .c-btn01 {
    width: min(min(86.6666666667%, 520px));
    margin-top: min(6.9333333333svw, 52px);
  }

  .l-instagram {
    padding: min(24.8svw, 186px) 0 0;
  }

  .l-instagram__wrap {
    display: block;
    margin-top: min(21.3333333333svw, 160px);
  }

  .l-instagram__wrap .l-instagram__contents {
    width: 100%;
  }

  .l-instagram__account {
    gap: min(2.6666666667svw, 20px);
    margin-bottom: min(4.8svw, 36px);
    font-size: clamp(1.25rem, 0.515rem + 3.13vw, 2rem);
  }

  .l-instagram__account img {
    width: min(13.1343283582%, 88px);
  }

  .l-instagram__photos {
    gap: min(2.9850746269%, 20px);
  }

  .l-instagram__check {
    padding: min(1.0666666667svw, 8px) 0 min(5.3333333333svw, 40px);
    width: 100%;
    margin-top: min(19.7333333333svw, 148px);
  }

  .l-instagram__check .l-instagram__icon {
    flex-direction: row;
    gap: 0 min(0.48em, 6px);
    margin-top: min(2.1333333333svw, 16px);
    font-size: clamp(0.78125rem, 0.016rem + 3.3vw, 1.5625rem);
  }

  .l-instagram__check .l-instagram__icon::before {
    width: min(12.2388059701%, 82px);
  }

  .l-instagram__check .l-instagram__btn {
    margin-top: 0.25em;
  }

  .l-access {
    width: 89.3333333333%;
    padding: min(26.6666666667svw, 200px) 0 min(18.1333333333svw, 136px);
    border-top: none;
  }

  .l-access__wrap {
    display: block;
    width: 100%;
  }

  .l-access__wrap .l-access__text {
    width: 100%;
  }

  .l-access__wrap .l-access__map {
    width: 100%;
    aspect-ratio: 335/300;
    margin-top: min(9.6svw, 72px);
  }

  .l-access__wrap .c-hgroup01 {
    margin-left: auto;
    text-align: center;
  }

  .l-access__btn {
    margin-top: min(2.1875em, 70px);
  }

  .l-access__btn .c-btn01 {
    margin-left: auto;
  }
}

@media (hover: hover) {
  .l-news__item .l-news__ttl:hover {
    color: #d79e64;
  }

  .l-news__btn a:hover {
    color: #fff;
  }
}/*# sourceMappingURL=../sourcemaps/page/top.css.map */
