@charset "UTF-8";
/** ───────────────────────────────────────────────────────── **/
/*** ▼ 編集不要 ▼ ***/
header {
  opacity: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: opacity 0.8s, -webkit-transform 0.4s;
  transition: opacity 0.8s, -webkit-transform 0.4s;
  transition: transform 0.4s, opacity 0.8s;
  transition: transform 0.4s, opacity 0.8s, -webkit-transform 0.4s;
}
header.on {
  opacity: 1;
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
}

.gnavi_btn {
  opacity: 0;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
  -webkit-transition: opacity 0.8s, -webkit-transform 0.4s;
  transition: opacity 0.8s, -webkit-transform 0.4s;
  transition: transform 0.4s, opacity 0.8s;
  transition: transform 0.4s, opacity 0.8s, -webkit-transform 0.4s;
}
.gnavi_btn.sc_on {
  opacity: 1;
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
}

.c_img {
  margin-bottom: 70px;
}
@media (max-width: 740px) {
  .c_img {
    margin-bottom: 40px;
  }
}

.c_txts {
  width: 90%;
  margin: 0 auto;
}

.c_titl01 {
  line-height: 1;
  letter-spacing: 0;
  font-size: clamp(4.8rem, -3.657rem + 11.429vw, 9.6rem);
  margin-bottom: 40px;
}
@media (max-width: 740px) {
  .c_titl01 {
    margin-bottom: 30px;
  }
}

.c_titl02 {
  letter-spacing: 0.1em;
  font-size: clamp(2rem, 1.648rem + 0.476vw, 2.2rem);
  margin-bottom: 40px;
}
@media (max-width: 740px) {
  .c_titl02 {
    margin-bottom: 30px;
  }
}

.c_txt01 {
  line-height: 1.75;
  letter-spacing: 0;
  font-size: clamp(1.5rem, 1.324rem + 0.238vw, 1.6rem);
  margin-bottom: 70px;
}
@media (max-width: 740px) {
  .c_txt01 {
    margin-bottom: 50px;
  }
}

.more_btn {
  width: 228px;
}
.more_btn::after {
  position: absolute;
  left: 0;
  content: "";
  width: 100%;
  height: 1px;
  background: #6a8371;
  bottom: -1px;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transform-origin: left top;
          transform-origin: left top;
  -webkit-transition: -webkit-transform 0.6s;
  transition: -webkit-transform 0.6s;
  transition: transform 0.6s;
  transition: transform 0.6s, -webkit-transform 0.6s;
}
.more_btn:hover::after {
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right top;
          transform-origin: right top;
}

.main {
  margin-bottom: 40px;
}
.main .txts {
  position: absolute;
  bottom: 4.1%;
  left: 4.6%;
  color: #fff;
}
@media (max-width: 740px) {
  .main .txts {
    bottom: auto;
    top: 4.4%;
    left: 5.3%;
  }
}
.main .txts .titl01 {
  line-height: 1;
  letter-spacing: 0;
  font-size: clamp(4.8rem, -3.657rem + 11.429vw, 9.6rem);
  margin-bottom: 25px;
}
@media (max-width: 740px) {
  .main .txts .titl01 {
    margin-bottom: 15px;
  }
}
.main .txts .titl02 {
  font-size: clamp(2rem, 1.648rem + 0.476vw, 2.2rem);
}

.usp {
  width: 90%;
  max-width: 1130px;
  margin: 0 auto 70px;
}
@media (max-width: 740px) {
  .usp {
    width: 320px;
    margin-bottom: 60px;
  }
}

.info {
  text-align: center;
  margin-bottom: 80px;
}
@media (max-width: 740px) {
  .info {
    margin-bottom: 60px;
  }
}
.info .titl01 {
  letter-spacing: 0.015em;
  font-size: clamp(1.6rem, 0.895rem + 0.952vw, 2rem);
  font-weight: 500;
  margin-bottom: 25px;
}
@media (max-width: 740px) {
  .info .titl01 {
    margin-bottom: 20px;
  }
}
.info .titl02 {
  letter-spacing: 0.15em;
  font-size: clamp(2.4rem, 1.343rem + 1.429vw, 3rem);
  margin-bottom: 40px;
}
.info .cv_btn {
  display: grid;
  place-items: center;
  place-content: center;
  width: 315px;
  height: 70px;
  background-color: #6a8371;
  margin: 0 auto;
  font-size: clamp(1.6rem, 1.248rem + 0.476vw, 1.8rem);
  color: #fff;
}
@media (max-width: 740px) {
  .info .cv_btn {
    width: 90%;
  }
}

.event {
  background-color: #e9ebe8;
  width: 100%;
  max-width: 965px;
  margin: 0 auto 80px;
  padding: 60px 0;
}
@media (max-width: 740px) {
  .event {
    margin-bottom: 60px;
    padding: 50px 0;
  }
}
.event .c01 .titl01 {
  text-align: center;
  letter-spacing: 0.15em;
  font-size: clamp(2.4rem, 1.343rem + 1.429vw, 3rem);
  margin-bottom: 15px;
}
.event .c01 .titl01_cap {
  text-align: center;
  letter-spacing: 0.15em;
  font-size: clamp(2rem, 1.824rem + 0.238vw, 2.1rem);
  margin-bottom: 40px;
}
@media (max-width: 740px) {
  .event .c01 .titl01_cap {
    margin-bottom: 50px;
  }
}
.event .c02 {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 40px;
  display: grid;
  grid-template-columns: auto 1fr;
}
@media (max-width: 740px) {
  .event .c02 {
    text-align: center;
    margin-bottom: 30px;
    grid-template-columns: 1fr;
  }
}
.event .c02 .txt01 {
  font-size: clamp(1.8rem, 1.271rem + 0.714vw, 2.1rem);
  margin-bottom: 15px;
}
@media (max-width: 740px) {
  .event .c02 .txt01 {
    margin-bottom: 10px;
  }
}
.event .c02 .txt02 {
  font-size: clamp(1.8rem, 1.271rem + 0.714vw, 2.1rem);
  margin-bottom: 15px;
}
.event .c02 .txt03 {
  font-size: clamp(1.5rem, 0.971rem + 0.714vw, 1.8rem);
}
.event .c03 {
  text-align: center;
  margin-bottom: 30px;
}
.event .c03 .txt01 {
  font-size: clamp(1.8rem, 1.271rem + 0.714vw, 2.1rem);
  margin-bottom: 40px;
  padding-right: 40px;
}
@media (max-width: 740px) {
  .event .c03 .txt01 {
    padding-right: 0;
  }
}
.event .c03 .txt02 {
  line-height: 1.6;
  font-size: 1.5rem;
}
.event .cv_btn {
  display: grid;
  place-items: center;
  place-content: center;
  width: 315px;
  height: 70px;
  background-color: #6a8371;
  margin: 0 auto;
  font-size: clamp(1.6rem, 1.248rem + 0.476vw, 1.8rem);
  color: #fff;
}
@media (max-width: 740px) {
  .event .cv_btn {
    width: 90%;
  }
}

.s_wrap {
  margin-bottom: 70px;
}
@media (max-width: 740px) {
  .s_wrap {
    margin-bottom: 40px;
  }
}
.s_wrap .swiper-area {
  overflow: hidden;
  width: 100%;
  position: relative;
}
.s_wrap .swiper-area .swiper {
  -ms-touch-action: auto;
      touch-action: auto;
}
.s_wrap .swiper-area .swiper .swiper-slide {
  -webkit-transition: -webkit-transform 2s;
  transition: -webkit-transform 2s;
  transition: transform 2s;
  transition: transform 2s, -webkit-transform 2s;
}
.s_wrap .swiper-area .swiper-button-next {
  position: absolute;
  top: 50%;
  right: 60px;
  z-index: 1;
  width: 70px;
  height: 70px;
  -webkit-transform: translate(0%, -50%);
          transform: translate(0%, -50%);
  cursor: pointer;
}
@media (max-width: 740px) {
  .s_wrap .swiper-area .swiper-button-next {
    right: 5px;
    width: 30px;
    height: 30px;
  }
}

.sec02 {
  margin-bottom: 80px;
}
@media (max-width: 740px) {
  .sec02 .c_titl02 {
    letter-spacing: 0;
  }
}

.sec03 {
  margin-bottom: 80px;
}

.sec04 {
  width: 90%;
  margin: 0 auto 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.sec04 .left {
  width: 37.8%;
}
@media (max-width: 740px) {
  .sec04 .left {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 100%;
  }
}
.sec04 .left .img {
  width: 68.5%;
  margin: 80px 0 120px;
}
.sec04 .right_con {
  width: 49.3%;
}
@media (max-width: 740px) {
  .sec04 .right_con {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: 100%;
    margin-bottom: 40px;
  }
}

.sec05 {
  margin-bottom: 80px;
}
@media (max-width: 740px) {
  .sec05 .c_titl02 {
    letter-spacing: 0;
  }
}

.sec06 {
  width: 90%;
  margin: 0 auto 80px;
  display: grid;
  grid-template-columns: 686fr 474fr;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: end;
  gap: 40px;
}
@media (max-width: 740px) {
  .sec06 {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 740px) {
  .sec06 .txts {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media (max-width: 740px) {
  .sec06 .img {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

.sec07 {
  margin-bottom: 80px;
}

.sec08 {
  margin-bottom: 80px;
}

.sec09 {
  width: 90%;
  margin: 0 auto 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.sec09 .left {
  width: 37.8%;
}
@media (max-width: 740px) {
  .sec09 .left {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 100%;
  }
}
.sec09 .left .img {
  width: 68.5%;
  margin: 80px 0 120px;
}
.sec09 .right_con {
  width: 49.3%;
}
@media (max-width: 740px) {
  .sec09 .right_con {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    width: 100%;
    margin-bottom: 40px;
  }
}

.sec10 {
  margin-bottom: 80px;
}
@media (max-width: 740px) {
  .sec10 .c_titl02 {
    letter-spacing: 0;
  }
}

.sec11 {
  width: 90%;
  margin: 0 auto 80px;
  display: grid;
  grid-template-columns: 588fr 572fr;
  gap: 40px;
}
@media (max-width: 740px) {
  .sec11 {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 740px) {
  .sec11 .txts {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media (max-width: 740px) {
  .sec11 .txts .c_titl02 {
    letter-spacing: 0;
  }
}
.sec11 .txts .c_txt01 {
  margin-bottom: 20px;
}
.sec11 .txts .br_cap {
  margin-bottom: 70px;
}
@media (max-width: 740px) {
  .sec11 .txts .br_cap {
    margin-bottom: 50px;
  }
}
@media (max-width: 740px) {
  .sec11 .img {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.sec11 .img .atto {
  text-align: right;
  margin-top: 5px;
}/*# sourceMappingURL=top.css.map */