@charset "UTF-8";

/* -----------------------------------------------
mv
----------------------------------------------- */
.mv__wrap {
  position: relative;
}
.mv__wrap::after {
  content: "";
  background: url(../images/common/mv_mask.svg) 50% 100% / contain no-repeat;
  display: block;
  position: absolute;
  bottom: -1px;
}
.mv__inner {
  display: flex;
  justify-content: center;
  align-items: center;
}
.mv__inner .mv__cap {
  color: #fff;
}
.mv__inner .mv__cap h1 {
  font-weight: normal;
  text-shadow: 0px 0px 5px rgba(0,0,0,1),0px 0px 10px rgba(0,0,0,1);
}

@media (max-width: 767px) {
  .mv__wrap {
    aspect-ratio: 750 / 360;
    background: url(../images/example/mv_sp.jpg) 50% 0 / cover no-repeat;
    width: 100%;
    height: auto;
  }
  .mv__wrap::after {
    aspect-ratio: 250 / 30;
    width: 66.67%;
    right: -17%;
  }
  .mv__inner {
    width: 84%;
    height: 100%;
    margin: 0 auto;
  }
  .mv__inner .mv__cap h1 {
    font-size: min(calc(var(--vw) * 22px),22px);
    letter-spacing: .05em;
    line-height: 1.66;
  }
  
}
@media (min-width: 768px) {
  .mv__wrap {
    aspect-ratio: 1440 / 360;
    background: url(../images/example/mv_pc.jpg) 50% 0 / cover no-repeat;
    width: 100%;
    height: auto;
  }
  .mv__wrap::after {
    aspect-ratio: 824 / 102;
    max-width: 824px;
    width: 57.23%;
    right: -17%;
  }
  .mv__inner {
    width: 91.12%;
    height: 100%;
    margin: 0 auto;
  }
  .mv__inner .mv__cap h1 {
    font-size: 38px;
    letter-spacing: .1em;
  }

}



.bg__wrap {
  background: #FBFAF5;
}



/* -----------------------------------------------
btn
----------------------------------------------- */
.btn__wrap  .btn__list {
  margin-inline: auto;
  font-weight: normal;
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  flex-wrap: wrap;
}
.btn__list li {
  margin-bottom: 10px;
}
.btn__list li a {
  background: none;
  border: none;
  border-radius: 10px;
  cursor: pointer;
  width: 100%;
  text-align: center;
  display: block;
}
.btn__list li.current a {
  background: #397121;
  color: #fff;
}

@media (max-width: 767px) {
  .btn__wrap {
    margin-bottom: 66px;
    width: 84%;
    margin-inline: auto;
  }
  .btn__list li {
    width: 31.12%;
    border-bottom: 1px solid #397121;
    padding-bottom: 2px;
  }
  .btn__list li a {
    font-size: min(calc(var(--vw) * 14px),14px);
    height: 60px;
    line-height: 60px;
  }

}
@media (min-width: 768px) {
  .btn__wrap {
    margin-bottom: 102px;
  }
  .btn__list {
    max-width: 880px;
  }
  .btn__list li {
    width: 31.82%;
    max-width: 280px;
    border-bottom: 2px solid #397121;
    padding-bottom: 5px;
  }
  .btn__list li a {
    line-height: 80px;
  }

}



/* -----------------------------------------------
contents
----------------------------------------------- */
.contents {
}
.example__list__wrap {
  margin-inline: auto;
}
.example__list__item picture {
  overflow: hidden;
}
.example__swiper__wrap .example__controller__wrap {
  position: relative;
}
.example__wrap .example__swiper {
  margin-inline: auto;
  position: relative;
}
.swiper-pagination-bullet-active {
  background: #3A7322;
}
.example__prev:after,
.example__next:after {
  font-size: 0;
  background-repeat: no-repeat;
  background-position: 50% 0;
  background-size: contain;
  width: 36px;
  height: auto;
  aspect-ratio: 1 / 1;
}
.example__prev:after {
  background-image: url(../images/common/icon_arrow_lf.svg);
}
.example__next:after {
  background-image: url(../images/common/icon_arrow_rg.svg);
}
.example__swiper .swiper-slide picture {
  overflow: hidden;
}
.example__cap span.cat {
  background: #397121;
  color: #fff;
  border-radius: 50vh;
  display: inline-block;
}

@media (max-width: 767px) {

  .example__wrap {
    padding-block: 94px 100px;
  }
  .example__list__wrap .example__list__item {
    margin-bottom: 30px;
  }
  .example__swiper .swiper-slide picture {
    border-radius: 10px;
    margin-bottom: 7%;
  }
  .example__cap time.date {
    font-size: min(calc(var(--vw) * 15px),15px);
    line-height: 2.2;
  }
  .example__cap span.cat {
    font-size: min(calc(var(--vw) * 12px),12px);
    line-height: 2.2;
    padding-inline: 1.15em;
    margin-left: .8em;
  }  
  .example__cap p {
    font-size: min(calc(var(--vw) * 14px),14px);
    line-height: 2;
    margin-top: 4%;
  }

}
@media (min-width: 768px) {

  .example__list__wrap {
    max-width: 1040px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: stretch;
  }
  .example__list__wrap .example__list__item {
    width: 46.154%;
    max-width: 480px;
    margin-bottom: 74px;
  }
  .example__list__item picture {
    border-radius: 20px;
  }
  .example__wrap {
    padding-bottom: 120px;
  }
  .example__swiper__wrap {
    padding-block: 124px 88px;
  }
  .swiper-controller {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 9;
  }
  .example__swiper .swiper-button-prev,
  .example__swiper .swiper-button-next {
    width: 36px;
  }
  .example__swiper .swiper-slide picture {
    border-radius: 10px;
  }
  .example__cap {
    padding-top: 20px;
  }
  .example__cap time.date {
    font-size: 18px;
    line-height: 34px;
  }
  .example__cap span.cat {
    font-size: 16px;
    line-height: 34px;
    padding-inline: 1.15em;
  }
  .example__cap p {
    font-size: 18px;
    line-height: 2.11;
    margin-top: 10px;
  }

}
