@charset "UTF-8";
/********************
 共通 
********************/
/* カラー */
/********************
 index
********************/
/* ファーストビュー */
.fv {
  position: relative;
  margin: 0 calc(50% - 50vw);
  width: 100vw;
  text-align: center;
}

.fv .fv__carousel {
  opacity: 0;
}

.fv .fv__carousel .fv__carousel-item .fv__carousel-img {
  -o-object-fit: cover;
     object-fit: cover;
}

.fv .fv-caption {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100%;
  color: #FFF;
  text-shadow: 1px 3px 2px #3e3e3e;
  letter-spacing: 0.3em;
  font-weight: 500;
  font-size: 2em;
  line-height: 1.5;
  opacity: 0;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

@media (min-width: 992px) {
  .fv .fv-caption {
    font-size: 3em;
    line-height: 2;
  }
}

/* インフォメーション */
.info {
  margin: 0 calc(50% - 50vw);
  padding: 16px 8px;
  width: 100vw;
  background-color: #250707;
  opacity: 0;
}

.info .info-txt {
  padding-right: var(--bs-gutter-x, 0.75rem);
  padding-left: var(--bs-gutter-x, 0.75rem);
  color: #FFF;
}

.info .info-txt--bg {
  margin-bottom: 0;
  text-align: center;
  font-size: 2rem;
}

@media (min-width: 992px) {
  .info {
    margin: 0;
    margin-top: -156px;
    padding: 8px;
    width: 100%;
  }
}

/* イメージ動画 */
.imgmv {
  margin: 80px auto 0;
  max-width: 600px;
}

@media (min-width: 992px) {
  .imgmv {
    margin-top: 200px;
  }
}

/* セクション_コンセプト */
.concept .concept__title:before {
  content: "CONCEPT";
}

.concept .concept__img {
  margin: 0 calc(50% - 50vw);
  margin-top: 80px;
  padding: 64px var(--bs-gutter-x, 0.75rem);
  width: 100vw;
  background-image: url(../img/index/concept.jpg);
  background-position: center;
  background-size: cover;
}

.concept .concept__img .concept__box {
  padding: 32px;
  background-color: rgba(37, 7, 7, 0.64);
}

.concept .concept__img .concept__box .concept__txt {
  color: #FFF;
}

@media (min-width: 992px) {
  .concept {
    margin-bottom: 200px;
  }
  .concept .concept__img .concept__box {
    padding: 64px 80px;
  }
}

/* セクション_対象者 */
.residents {
  margin: 0 auto;
  padding: 0;
  max-width: 1320px;
}

.residents .bk__light {
  padding-top: 32px;
  padding-bottom: 80px;
}

.residents .residents__title {
  margin-top: 80px;
  font-size: 2.4rem;
}

.residents .residents__title::before {
  top: -2.2rem;
  content: "RESIDENTS";
}

.residents .residents__wrap {
  margin-top: 80px;
}

.residents .residents__wrap .residents__img-wrap {
  position: relative;
  margin-top: 32px;
}

.residents .residents__wrap .residents__img-wrap:before {
  position: absolute;
  top: 5px;
  left: calc((var(--bs-gutter-x) * .5) + 5px);
  width: calc(100% - var(--bs-gutter-x));
  height: 100%;
  border: 1px solid #BBC3C8;
  content: "";
}

.residents .residents__wrap .residents__img-wrap .residents__img {
  position: relative;
}

@media (min-width: 992px) {
  .residents {
    margin-top: 200px;
  }
  .residents .bk__light {
    padding-top: 80px;
    padding-bottom: 140px;
  }
  .residents .residents__wrap .residents__img-wrap:before {
    top: 10px;
    left: calc((var(--bs-gutter-x) * .5) + 10px);
  }
}

/* セクション_魅力 */
.feature .feature__title {
  margin-top: 200px;
}

.feature .feature__title:before {
  content: "FEATURE";
}

.feature .feature__wrap {
  margin-top: 80px;
}

.feature .feature__wrap .feature__img-wrap {
  position: relative;
  margin-top: 32px;
  color: #FFF;
  text-decoration: none;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.feature .feature__wrap .feature__img-wrap:before {
  position: absolute;
  top: 5px;
  left: calc((var(--bs-gutter-x) * .5) + 5px);
  z-index: -1;
  width: calc(100% - var(--bs-gutter-x));
  height: 100%;
  border: 1px solid #BBC3C8;
  content: "";
}

.feature .feature__wrap .feature__img-wrap.borderIn:after {
  position: absolute;
  top: 28px;
  left: 8px;
  width: calc(100% - (var(--bs-gutter-x)));
  height: 50%;
  border-bottom: 1px solid #FFF;
  content: "";
  -webkit-animation: border_anime 1.8s linear forwards;
          animation: border_anime 1.8s linear forwards;
}

.feature .feature__wrap .feature__img-wrap:hover {
  color: #333;
}

.feature .feature__wrap .feature__img-wrap:hover:after {
  border-color: #333;
}

.feature .feature__wrap .feature__img-wrap:hover .feature__img:nth-child(2) {
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  opacity: 1;
  -webkit-transform: translate(-50%, -50%) scale(1.1);
          transform: translate(-50%, -50%) scale(1.1);
}

.feature .feature__wrap .feature__img-scale {
  position: relative;
  overflow: hidden;
}

.feature .feature__wrap .feature__img-scale .feature__img {
  position: relative;
  width: 100%;
}

.feature .feature__wrap .feature__img-scale .feature__img:nth-child(2) {
  position: absolute;
  top: 50%;
  left: 50%;
  padding-right: calc(var(--bs-gutter-x) * .5);
  padding-left: calc(var(--bs-gutter-x) * .5);
  opacity: 0;
  cursor: pointer;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}

.feature .feature__wrap .feature__txt-wrap {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.feature .feature__wrap .feature__txt-wrap .feature__caption {
  letter-spacing: 0.1em;
  font-weight: 400;
  font-size: 2rem;
}

@media (min-width: 992px) {
  .feature .feature__wrap .feature__img-wrap:before {
    top: 10px;
    left: calc((var(--bs-gutter-x) * .5) + 10px);
  }
  .feature .btn--primary-wrap {
    margin-top: 80px;
  }
}

/* CTA_見学受付 */
.cta-reserve {
  margin: 0 calc(50% - 50vw);
  margin-top: 80px;
  padding: 24px var(--bs-gutter-x, 0.75rem);
  width: 100vw;
  background-color: #261F06;
}

.cta-reserve .cta-reserve__box {
  margin: 0 auto;
  max-width: 1320px;
  border: 1px solid #9A8B54;
  text-align: center;
  letter-spacing: 0.2em;
}

.cta-reserve .cta-reserve__box .cta-reserve__title {
  padding: 20px 0;
  color: #FFF;
  font-size: 3.2rem;
}

.cta-reserve .cta-reserve__box .cta-reserve__btn-wrap {
  overflow: hidden;
}

.cta-reserve .cta-reserve__box .cta-reserve__btn-wrap .cta-reserve__btn {
  display: block;
  background: radial-gradient(#E6DCB1, #9A8B54);
  color: #FFF;
  text-decoration: none;
  font-size: 2rem;
  -webkit-transition: all .3s;
  transition: all .3s;
}

.cta-reserve .cta-reserve__box .cta-reserve__btn-wrap .cta-reserve__btn:hover {
  color: #333;
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

/* セクション_お知らせ */
.information .information__title:before {
  content: "INFORMATION";
}

.information .information__box {
  overflow: hidden;
  overflow-y: scroll;
  margin-top: 80px;
  padding: 32px 0;
  height: 280px;
  background-color: #F5F5F5;
}

.information .information__box .information__list {
  margin-bottom: 0;
  padding: 0 16px;
}

.information .information__box .information__list .information__content {
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  margin: 0 0 20px;
  padding-bottom: 16px;
  width: 100%;
  border-bottom: 1px solid #BBC3C8;
}

.information .information__box .information__list .information__content .information__content-title {
  margin-bottom: 0;
}

.information .information__box .information__list .information__content .information__content-txt {
  margin-bottom: 0;
}

@media (max-width: 540px) {
  .information .information__title:before {
    top: -1.8rem;
    font-size: 2.8rem;
  }
}

@media (min-width: 992px) {
  .information .information__box .information__list {
    padding: 32px 64px;
  }
  .information .information__box .information__list .information__content {
    margin-bottom: 32px;
  }
}

/* セクション_お知らせ */
.environs .environs__title::before {
  content: "ENVIRONS";
}

.environs .environs__img {
  margin-top: 80px;
  margin-bottom: 32px;
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.environs .environs__txt {
  margin-bottom: 0;
}

/* セクション_アクセス */
.access {
  margin: 0 auto;
  margin-top: 80px;
  padding: 0;
  max-width: 1320px;
}

.access .bk__light {
  padding-top: 32px;
  padding-bottom: 80px;
}

.access .access__title {
  margin-top: 80px;
}

.access .access__title::before {
  content: "ACCESS";
}

.access .access__wrap {
  margin: 80px auto 0;
  max-width: 1320px;
}

.access .access__wrap .access__info {
  margin-top: 32px;
}

.access .access__wrap .access__info .access__address, .access .access__wrap .access__info .access__guide {
  margin-bottom: 16px;
  padding-left: 0;
}

.access .access__wrap .access__info .access__address .access__address-txt, .access .access__wrap .access__info .access__address .access__guide-txt, .access .access__wrap .access__info .access__guide .access__address-txt, .access .access__wrap .access__info .access__guide .access__guide-txt {
  list-style: none;
}

@media (min-width: 992px) {
  .access {
    margin-top: 200px;
  }
  .access .bk__light {
    padding-top: 80px;
    padding-bottom: 140px;
  }
  .access .access__wrap .access__info {
    padding-left: 64px;
  }
}
/*# sourceMappingURL=index.css.map */