@charset "UTF-8";
.load { background: #FFF; position: fixed; top: 0; left: 0; height: 100%; width: 100%; z-index: 9000; }

.load p { position: fixed; left: 50%; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); display: none; -webkit-box-align: baseline; -ms-flex-align: baseline; align-items: baseline; z-index: 9999; font-size: 2.2rem; text-align: center; font-family: "リュウミン M-KL", Ryumin Medium KL; }

.load img { display: block; margin: 0 auto 15px; }

/* main-visual */
.main-visual { width: 100%; height: calc(100vh -  180px); background: url(../images/bg_mv.jpg); background-size: cover; background-repeat: no-repeat; margin-bottom: 80px; background-blend-mode: multiply; }

@media (max-width: 1024px) { .main-visual { height: 65vh; margin-top: 80px; } }

@media (max-width: 767px) { .main-visual { background-position: center; margin-bottom: 40px; } }

.main-visual__inner { position: relative; width: 980px; margin: 0 auto; height: 100%; }

@media (max-width: 1024px) { .main-visual__inner { width: 100%; } }

.main-visual__txt { position: absolute; color: #fff; font-size: 3.3rem; line-height: 2; top: 14vh; left: 4vw; opacity: 0; }

@media (max-width: 1024px) { .main-visual__txt { top: 5vh; font-size: 3rem; } }

@media (max-width: 767px) { .main-visual__txt { font-size: 2.2rem; } }

.main-visual__txt span { opacity: 0; }

.main-visual__bnr { position: absolute; background: #fff; bottom: 10vh; right: 0; width: 490px; padding: 10px 15px; border-radius: 2px; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-pack: distribute; justify-content: space-around; cursor: pointer; -webkit-transition: 0.3s; transition: 0.3s; }

@media (max-width: 1024px) { .main-visual__bnr { right: 2vw; bottom: 6vh; } }

@media (max-width: 767px) { .main-visual__bnr { width: 96%; padding: 5px 10px; bottom: 5vh; max-width: 330px; } }

.main-visual__bnr span { font-size: 1.3rem; line-height: 1.5; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin-top: 5px; word-break: keep-all; }

.main-visual__bnr span::after { content: url(../images/icon_arrow.png); margin-left: 10px; margin-right: 10px; -webkit-transition: 0.3s; transition: 0.3s; }

.main-visual__bnr img { padding-bottom: 4px; }

.main-visual__bnr:hover { opacity: 0.6; }

.main-visual__bnr:hover span::after { margin-left: 15px; margin-right: 5px; }

/* scroll */
.scroll { width: 100%; text-align: center; }

@media (max-width: 767px) { .scroll { padding-left: 10vw; } }

.scroll__icon { position: relative; display: -webkit-box; display: -ms-flexbox; display: flex; margin: 0 auto 50px; padding: 5px 10px; width: 110px; }

.scroll__txt { -webkit-transform: rotate(90deg); transform: rotate(90deg); font-size: 1.3rem; -webkit-transform-origin: left top; transform-origin: left top; }

.scroll__arrow { width: 1px; height: 70px; margin: -5px auto 0; background-color: #eee; position: relative; overflow: hidden; font-size: 0; display: block; }

.scroll__arrow::before { content: ''; width: 1px; height: 70px; margin: 50px auto 0; background-color: #333; position: absolute; top: -150px; left: 0; -webkit-animation: arrow 4s ease 0s infinite normal; animation: arrow 4s ease 0s infinite normal; }

@-webkit-keyframes arrow { 0% { -webkit-transform: translate3d(-50%, 0, 0); transform: translate3d(-50%, 0, 0); }
  60% { -webkit-transform: translate3d(-50%, 100px, 0); transform: translate3d(-50%, 100px, 0); }
  100% { -webkit-transform: translate3d(-50%, 100px, 0); transform: translate3d(-50%, 100px, 0); } }

@keyframes arrow { 0% { -webkit-transform: translate3d(-50%, 0, 0); transform: translate3d(-50%, 0, 0); }
  60% { -webkit-transform: translate3d(-50%, 100px, 0); transform: translate3d(-50%, 100px, 0); }
  100% { -webkit-transform: translate3d(-50%, 100px, 0); transform: translate3d(-50%, 100px, 0); } }

.sec { width: 980px; margin: 0 auto; }

@media (max-width: 1024px) { .sec { width: 100%; } }

.sec__ttl { font-size: 3.9rem; margin-bottom: 50px; }

@media (max-width: 1024px) { .sec__ttl { margin-left: 20px; } }

@media (max-width: 767px) { .sec__ttl { font-size: 3rem; } }

.sec__ttl--archivement { margin-bottom: 100px; }

@media (max-width: 767px) { .sec__ttl--archivement { margin-bottom: 60px; } }

.sec__ttl--contact-us { text-align: left; display: inline-block; }

@media (max-width: 1024px) { .sec__ttl--contact-us { margin-left: 0; } }

.sec__main { font-family: "リュウミン M-KL", Ryumin Medium KL; letter-spacing: 1px; }

.sec__main span { opacity: 0; }

.sec__sub { font-size: 1.5rem; display: block; margin-top: 20px; letter-spacing: 1px; }

@media (max-width: 767px) { .sec__sub { margin-top: 10px; } }

.sec__sub span { opacity: 0; }

/* about-us */
.about-us { margin-bottom: 120px; }

.about-us__box { width: calc((100vw - 1000px)/2 + 980px); }

@media (max-width: 1024px) { .about-us__box { width: 100%; } }

.about-us__box::after { content: ""; width: calc((100vw - 1000px)/2 + 980px); height: 400px; background: #ddd7da; display: block; margin-top: -200px; }

@media (max-width: 1024px) { .about-us__box::after { height: 300px; width: 90%; margin-left: auto; } }

.about-us__slider figure { -webkit-box-shadow: 2px 2px 8px #afafaf; box-shadow: 2px 2px 8px #afafaf; background: #fff; }

.about-us__slider figure figcaption { padding: 22px 18px; font-size: 1.5rem; line-height: 1.8; }

@media (max-width: 1024px) { .about-us__slider figure figcaption { width: 270px; height: 125px; padding: 20px 15px 0; } }

.about-us__slider figure figcaption em { font-size: 2rem; margin-bottom: 15px; display: block; }

@media (max-width: 1024px) { .about-us__slider figure figcaption em { font-size: 1.8rem; margin-bottom: 10px; } }

.archivement { margin-bottom: 150px; }

.archivement__box { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; height: 500px; position: relative; -ms-flex-wrap: wrap; flex-wrap: wrap; margin-bottom: 150px; }

@media (max-width: 1024px) { .archivement__box { display: block; height: auto; background: -webkit-gradient(linear, left top, right top, from(#ddd7da), color-stop(90%, #ddd7da), color-stop(90%, #fff), to(#fff)); background: linear-gradient(90deg, #ddd7da 0%, #ddd7da 90%, #fff 90%, #fff 100%); } }

@media (max-width: 767px) { .archivement__box { margin-bottom: 75px; } }

.archivement__box::before { position: absolute; content: ""; width: calc((100vw - 980px)/2 + 1020px); height: 500px; background: #ddd7da; display: block; margin-top: 0; z-index: -1; right: -40px; top: 0; }

@media (max-width: 1024px) { .archivement__box::before { display: none; } }

@media (max-width: 1024px) { .archivement__box--reverse { background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(10%, #fff), color-stop(10%, #ddd7da), to(#ddd7da)); background: linear-gradient(90deg, #fff 0%, #fff 10%, #ddd7da 10%, #ddd7da 100%); } }

.archivement__box--reverse::before { right: auto; width: calc((100vw - 1000px)/2 + 980px); }

.archivement__item { width: 400px; height: 500px; position: relative; padding: 50px 0; }

@media (max-width: 1024px) { .archivement__item { width: 75%; height: auto; margin: 0 auto; margin-right: 18%; } }

@media (max-width: 767px) { .archivement__item { margin-right: 15%; } }

@media (max-width: 767px) { .archivement__item { padding: 30px 0; width: 80%; } }

@media (max-width: 1024px) { .archivement__item:last-of-type { margin-right: 18%; } }

@media (max-width: 767px) { .archivement__item:last-of-type { margin-right: 15%; } }

.archivement__item--center { margin: 0 auto; }

.archivement__item--center:last-of-type { margin-right: 0; margin-left: 18%; }

@media (max-width: 767px) { .archivement__item--center:last-of-type { margin-left: 15%; } }

.archivement__item img { position: absolute; bottom: 50px; }

@media (max-width: 1024px) { .archivement__item img { position: static; bottom: auto; } }

.archivement__ttl { font-size: 2rem; line-height: 1.4; margin-bottom: 20px; }

@media (max-width: 1024px) { .archivement__ttl { line-height: 1.8; } }

.archivement__txt { font-size: 1.5rem; line-height: 1.95; }

@media (max-width: 1024px) { .archivement__txt { margin-bottom: 20px; } }

.archivement__box2 { padding-bottom: 40px; margin-bottom: 160px; }

@media (max-width: 1024px) { .archivement__box2 { width: 96%; margin: 0 auto 120px; } }

@media (max-width: 767px) { .archivement__box2 { width: 90%; } }

.archivement__item2 { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: end; -ms-flex-align: end; align-items: flex-end; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }

@media (max-width: 767px) { .archivement__item2 { display: block; } }

.archivement__item2:not(:first-of-type) { margin-top: 100px; }

@media (max-width: 1024px) { .archivement__detail { width: 65%; } }

@media (max-width: 767px) { .archivement__detail { width: 100%; } }

.archivement__ttl2 { font-size: 2rem; margin-bottom: 20px; }

@media (max-width: 767px) { .archivement__ttl2 { line-height: 1.3; } }

@media (max-width: 1024px) { .archivement__ttl2 span { font-size: 1.5rem; } }

@media (max-width: 767px) { .archivement__ttl2 span { display: block; margin-top: 5px; } }

.archivement__txt2 { font-size: 1.5rem; line-height: 1.95; }

.archivement__num { position: relative; text-align: right; }

@media (max-width: 1024px) { .archivement__num { width: 35%; } }

@media (max-width: 767px) { .archivement__num { width: 100%; margin-top: 40px; } }

.archivement__huge { font-size: 12rem; font-family: garamond-premier-pro, serif; font-style: italic; margin-bottom: -20px; }

@media (max-width: 1024px) { .archivement__huge { font-size: 8rem; text-align: right; } }

.archivement__huge::first-letter { font-size: 17rem; line-height: 0; }

@media (max-width: 1024px) { .archivement__huge::first-letter { font-size: 10rem; } }

.archivement__unit { font-size: 2rem; }

.archivement__note { position: absolute; right: 0; font-size: 1.3rem; bottom: -35px; }

@media (max-width: 767px) { .archivement__note { bottom: -20px; } }

.archivement__bnr { width: 700px; height: 210px; border: 1px solid #ddd7da; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-align: center; -ms-flex-align: center; align-items: center; margin: 0 auto; font-size: 1.7rem; cursor: pointer; -webkit-backface-visibility: hidden; backface-visibility: hidden; -webkit-transition: 0.3s; transition: 0.3s; }

@media (max-width: 767px) { .archivement__bnr { width: 90%; padding: 15px; } }

.archivement__bnr:hover { -webkit-box-shadow: 2px 2px 8px #afafaf; box-shadow: 2px 2px 8px #afafaf; }

.archivement__bnr:hover span { -webkit-backface-visibility: hidden; backface-visibility: hidden; }

.archivement__bnr span { display: block; margin: auto; text-align: center; -webkit-transition: .3s; transition: .3s; }

.archivement__bnr img { margin-top: 30px; display: block; }

.contact-us { text-align: center; margin-bottom: 90px; }

.contact-us__inner { position: relative; }

.contact-us__link { display: block; width: 60px; height: 60px; font-size: 0; cursor: pointer; margin: 0 auto; }

.contact-us__link span { position: absolute; top: 0; left: 50%; width: 60px; height: 60px; margin-left: -23px; border: 2px solid #dfd7d0; background: #fff; border-radius: 100%; -webkit-box-sizing: border-box; box-sizing: border-box; -webkit-transition: 0.3s; transition: 0.3s; }

@media (max-width: 767px) { .contact-us__link span { left: 48%; } }

.contact-us__link span:hover { -webkit-box-shadow: 2px 2px 8px #afafaf; box-shadow: 2px 2px 8px #afafaf; }

.contact-us__link span:hover::after { margin: -5px 0 0 -6px; }

.contact-us__link span::after { position: absolute; top: 50%; left: 50%; content: ''; width: 10px; height: 10px; border-left: 2px solid #dfd7d0; border-bottom: 2px solid #dfd7d0; -webkit-transform: rotate(-135deg); transform: rotate(-135deg); margin: -5px 0 0 -8px; -webkit-transition: 0.3s; transition: 0.3s; }

/* slick */
.slick-slider { margin-left: 135px; }

@media (max-width: 1024px) { .slick-slider { margin-left: 13%; } }

.slick-slide { margin: 25px; }

@media (max-width: 767px) { .slick-slide { margin: 5px; } }

.slick-slide img { -webkit-transition: 0.3s; transition: 0.3s; }

@media (max-width: 1024px) { .slick-slide img { width: 270px; } }

.slick-slide figure { overflow: hidden; }

.slick-slide:hover img { -webkit-transform: scale(1.1); transform: scale(1.1); }

.slick-icon { position: absolute; bottom: 0; font-size: 0; cursor: pointer; }

.slick-icon span { position: absolute; top: 35px; left: 50%; width: 60px; height: 60px; margin-left: -23px; border: 2px solid #dfd7d0; background: #fff; border-radius: 100%; -webkit-transition: 0.3s; transition: 0.3s; }

@media (max-width: 1024px) { .slick-icon span { top: 15px; } }

.slick-icon span:hover { -webkit-box-shadow: 2px 2px 8px #afafaf; box-shadow: 2px 2px 8px #afafaf; }

.slick-icon span::after { position: absolute; top: 50%; left: 50%; content: ''; width: 10px; height: 10px; border-left: 2px solid #dfd7d0; border-bottom: 2px solid #dfd7d0; -webkit-box-sizing: border-box; box-sizing: border-box; }

.slick-icon-prev { left: -140px; }

@media (max-width: 1024px) { .slick-icon-prev { left: -4%; } }

@media (max-width: 767px) { .slick-icon-prev { left: -5vw; } }

.slick-icon-prev span:hover::after { margin: -5px 0 0 -6px; }

.slick-icon-prev span::after { -webkit-transform: rotate(45deg); transform: rotate(45deg); margin: -5px 0 0 -4px; -webkit-transition: 0.3s; transition: 0.3s; }

.slick-icon-next { left: -60px; }

@media (max-width: 1024px) { .slick-icon-next { left: 7%; } }

@media (max-width: 767px) { .slick-icon-next { left: 16vw; } }

.slick-icon-next span:hover::after { margin: -5px 0 0 -6px; }

.slick-icon-next span::after { -webkit-transform: rotate(-135deg); transform: rotate(-135deg); margin: -5px 0 0 -8px; -webkit-transition: 0.3s; transition: 0.3s; }
/*# sourceMappingURL=style.css.map */