@charset "UTF-8";
@import url(//use.fontawesome.com/releases/v5.0.11/css/all.css);
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@100;300&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Josefin+Sans&display=swap");
@media screen and (min-width: 769px) { /* line 8, style.scss */
  .sp_only { display: none !important; } }
@media screen and (max-width: 768px) { /* line 13, style.scss */
  .pc_only { display: none !important; }
  /* line 16, style.scss */
  .sp_only { display: block !important; } }
/* line 25, style.scss */
body { overflow-x: hidden; position: relative; }
/* line 32, style.scss */
body.gallery { background: #F2F2F2; }
/* line 35, style.scss */
body.gallery.w02 { background: #F2F2F2; }
@media screen and (max-width: 991px) { /* line 35, style.scss */
  body.gallery.w02 { background: #E0E0E0 !important; } }

/* line 44, style.scss */
.site-header { z-index: 9999; position: fixed; top: 5%; right: 0; font-family: 'Josefin Sans', sans-serif; background: rgba(255, 255, 255, 0.7); }
@media screen and (max-width: 991px) { /* line 44, style.scss */
  .site-header { position: fixed; top: 0; right: 0; background: none; } }
/* line 57, style.scss */
.site-header .navbar { padding: 0; }

/* line 62, style.scss */
.box-wrap { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: -1; width: 100%; height: 100%; text-align: center; margin: auto; }

/* line 74, style.scss */
.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover { color: rgba(0, 0, 0, 0.7); }
@media screen and (max-width: 768px) { /* line 74, style.scss */
  .navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover { color: white; } }

/* line 100, style.scss */
.navbar-expand-md .navbar-nav .nav-link, .navbar-expand-lg .navbar-nav .nav-link { color: black; font-size: 1.05rem; padding: 10px 30px; }

/* line 107, style.scss */
.navbar-nav_m .nav-link { color: #FFF; }

/* line 112, style.scss */
.global-nav { font-family: 'Josefin Sans', sans-serif; position: fixed; right: -180px; /* 隠れる */ top: 0; width: 160px; padding-top: 40px; background: rgba(0, 0, 0, 0.7); transition: all .6s; z-index: 200; overflow-y: auto; /* メニューが多くなったらスクロール*/ }
/* line 123, style.scss */
.global-nav a { display: block; }

/* line 128, style.scss */
.hamburger { position: absolute; top: 0; right: 1%; width: 40px; height: 40px; cursor: pointer; z-index: 300; display: none; background: rgba(0, 0, 0, 0.7); }
@media screen and (max-width: 991px) { /* line 128, style.scss */
  .hamburger { display: block; } }

/* line 140, style.scss */
.nav-open .hamburger { background: none; }

/* line 143, style.scss */
.hamburger__line { position: absolute; right: 10px; width: 20px; height: 2px; background-color: #FFF; transition: all .6s; }

/* line 151, style.scss */
.hamburger__line--1 { top: 10px; }

/* line 154, style.scss */
.hamburger__line--2 { top: 17px; }

/* line 157, style.scss */
.hamburger__line--3 { top: 24px; }

/* line 160, style.scss */
.black-bg { position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 100; opacity: 0; visibility: hidden; transition: all .6s; cursor: pointer; }

/* 表示された時用 */
/* line 174, style.scss */
.nav-open .global-nav { right: 0; }

/* line 177, style.scss */
.nav-open .black-bg { opacity: .7; visibility: visible; }

/* line 181, style.scss */
.nav-open .hamburger__line--1 { transform: rotate(45deg); top: 20px; }

/* line 185, style.scss */
.nav-open .hamburger__line--2 { width: 0; left: 50%; }

/* line 189, style.scss */
.nav-open .hamburger__line--3 { transform: rotate(-45deg); top: 20px; }

/* line 193, style.scss */
.ribon { position: absolute; z-index: 9999; }

/* line 199, style.scss */
#scroll { position: fixed; bottom: 5%; left: 2%; display: inline-block; width: 43px; height: 49px; }
/* line 206, style.scss */
#scroll span.down { position: relative; }
/* line 208, style.scss */
#scroll span.down:before { background: url("../img/down.png") no-repeat; display: block; content: ""; position: absolute; width: 43px; height: 49px; }
/* line 217, style.scss */
#scroll span.up { position: relative; }
/* line 219, style.scss */
#scroll span.up:before { background: url("../img/up.png") no-repeat; display: block; content: ""; position: absolute; width: 43px; height: 49px; }

/* line 230, style.scss */
.navbar-light .navbar-toggler { color: white; border: none; outline: none; }
@media screen and (max-width: 768px) { /* line 230, style.scss */
  .navbar-light .navbar-toggler { background: rgba(0, 0, 0, 0.5); border-radius: 0; padding: 10px; } }

/* line 242, style.scss */
.navbar-light .open-mobile { background: none; position: relative; }
/* line 245, style.scss */
.navbar-light .open-mobile:after { width: 30px; height: 30px; font-family: "Font Awesome 5 Free"; content: '\f00d'; font-weight: 900; display: block; color: #FFF; font-size: 1.8rem; }

/* line 256, style.scss */
.navbar-light .close-mobile { background: none; position: relative; }
/* line 259, style.scss */
.navbar-light .close-mobile:after { width: 30px; height: 30px; font-family: "Font Awesome 5 Free"; content: '\f0c9'; font-weight: 900; display: block; color: #FFF; font-size: 1.8rem; }

@keyframes wrap { 0% { opacity: 0; }
  100% { opacity: 1; } }
@keyframes Navber { 0% { opacity: 0; transform: translateY(-100%); }
  75% { opacity: .5; transform: translateY(-100%); }
  85% { opacity: .8; transform: translateY(-100%); }
  100% { opacity: 1; transform: translateY(64%); } }
/* line 302, style.scss */
.wrap { width: 100%; position: relative; }
/* line 305, style.scss */
.wrap::after { animation-name: wrap; animation-duration: 3s; animation-timing-function: linear; animation-fill-mode: forwards; width: 100%; display: block; content: ""; position: absolute; top: 0; left: 0; right: 0; bottom: 0; padding-top: calc(1944 /1980 * 100%); background: url("../img/bg-body.png") center center/cover no-repeat; z-index: -2; }

/*.cls-1{fill:#1a1311;}
.cls-2{fill:#112444;}*/
/* line 328, style.scss */
a#page_bottom { display: block; color: #FFF; text-align: center; margin: auto; z-index: 1; position: absolute; bottom: 10px; left: 10px; }
/* line 337, style.scss */
a#page_bottom:hover { text-decoration: none; }
/* line 340, style.scss */
a#page_bottom:before { display: block; font-family: "Font Awesome 5 Free"; content: '\f078'; font-weight: 900; color: #FFF; font-size: 1.6rem; text-align: center; margin: auto; }

/* line 351, style.scss */
.containers { position: relative; width: 100%; text-align: center; margin: auto; }

@keyframes sp_logo { 0% { opacity: 1; transform: translateY(0); }
  75% { opacity: 0; transform: translateY(0); }
  85% { opacity: 0; transform: translateY(0); }
  100% { opacity: 1; transform: translateY(230%); } }
/* line 378, style.scss */
.logo { height: 100px; position: absolute; top: 40%; right: 10%; bottom: 0; z-index: 10; }
@media screen and (max-width: 768px) { /* line 378, style.scss */
  .logo { top: 40%; right: 0; left: 0; animation-name: sp_logo; animation-duration: 4s; animation-timing-function: ease-in; animation-fill-mode: forwards; } }
@media screen and (max-width: 360px) { /* line 378, style.scss */
  .logo { top: 30%; } }

/* line 400, style.scss */
.mosz { height: 100px; fill: #FFF; }
@media screen and (max-width: 768px) { /* line 400, style.scss */
  .mosz { width: 80px; } }

@keyframes mosz1 { 0% { opacity: 0; fill: #1a1311; transform: translateY(50%); }
  15% { opacity: 1; fill: #1a1311; transform: translateY(0); }
  85% { opacity: 1; fill: #1a1311; transform: translateY(0); }
  100% { opacity: 1; transform: translateY(0); fill: #FFF; } }
@keyframes mosz2 { 0% { opacity: 0; fill: #1a1311; }
  15% { opacity: 1; fill: #1a1311; }
  85% { opacity: 1; fill: #1a1311; }
  100% { opacity: 1; fill: #FFF; } }
@keyframes mosz3 { 0% { opacity: 0; fill: #112444; transform: translateY(-50%); }
  15% { opacity: 1; fill: #112444; transform: translateY(0); }
  85% { opacity: 1; fill: #112444; transform: translateY(0); }
  100% { opacity: 1; transform: translateY(0); fill: #FFF; } }
/* line 469, style.scss */
.mosz1 { animation-name: mosz1; animation-duration: 4s; animation-timing-function: ease-out; }

/* line 474, style.scss */
.mosz2 { animation-name: mosz2; animation-duration: 4s; animation-timing-function: ease-out; }

/* line 479, style.scss */
.mosz3 { animation-name: mosz3; animation-duration: 4s; animation-timing-function: ease-out; }

@keyframes image-op { 0% { opacity: 1; background: white; }
  50% { opacity: .75; background: white; }
  100% { opacity: 0; background: white; } }
@keyframes image-top { 0% { opacity: 1; background: white; transform: translateY(0); }
  75% { opacity: .8; background: rgba(255, 255, 255, 0.5); transform: translateY(0); }
  85% { opacity: .5; background: rgba(255, 255, 255, 0.5); transform: translateY(-100%); }
  100% { opacity: 0.05; background: rgba(255, 255, 255, 0.05); transform: translateY(-100%); } }
@keyframes image-bottom { 0% { opacity: 1; background: white; transform: translateY(0); }
  75% { opacity: .8; background: rgba(255, 255, 255, 0.5); transform: translateY(0); }
  85% { opacity: .5; background: rgba(255, 255, 255, 0.5); transform: translateY(100%); }
  100% { opacity: 0.05; background: rgba(255, 255, 255, 0.05); transform: translateY(100%); } }
@keyframes image-blur { 0% { filter: saturate(0%) blur(5px); }
  25% { filter: saturate(0%) blur(3px); }
  50% { filter: saturate(0%) blur(2.5px); }
  75% { filter: saturate(75%) blur(1.5px); }
  100% { filter: saturate(100%) blur(0px); } }
/* line 567, style.scss */
.bg-content { background-color: rgba(242, 242, 242, 0.75); backdrop-filter: url(../img/filters.xml#blur_saturate) blur(5px) saturate(150%); -webkit-backdrop-filter: blur(5px); backdrop-filter: blur(5px); }

/* line 573, style.scss */
.bg-content2 { background-color: rgba(244, 244, 244, 0.89); }

/* line 576, style.scss */
.img-op { position: relative; padding-top: calc(1944 /1980 * 100%); background: url("../img/bg-body.png") top center/cover no-repeat; animation-name: image-blur; animation-duration: 2.5s; animation-timing-function: linear; }
@media screen and (max-width: 768px) { /* line 576, style.scss */
  .img-op { padding-top: calc(814 /541 * 90%); background: url("../img/bg-body-sp.png") top center/cover no-repeat; } }
@media screen and (max-width: 414px) { /* line 576, style.scss */
  .img-op { padding-top: calc(814 /541 * 150%); background: url("../img/bg-body-sp.png") top center/cover no-repeat; } }
/* line 594, style.scss */
.img-op:after { animation-name: image-op; animation-duration: 2.5s; animation-timing-function: ease-out; position: absolute; top: 0; display: block; content: ""; padding-top: calc(1944 /1980 * 220%); width: 100%; z-index: 9; }

/* line 612, style.scss */
.modal-backdrop { background: transparent; opacity: 0.5 !important; }

/* line 617, style.scss */
.ekko-lightbox + .modal-backdrop { z-index: 1050; background-color: #000; opacity: 0.5; }

/* line 622, style.scss */
.ekko-lightbox { z-index: 1051; }

/* line 625, style.scss */
.modal-lg, .modal-xl { max-width: 95%; }

/* line 629, style.scss */
.modal-content { position: relative; display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; width: 100%; top: 7%; pointer-events: auto; background-color: rgba(255, 255, 255, 0.8); background-clip: padding-box; border: none; outline: 0; border-radius: 0; }
/* line 644, style.scss */
.modal-content.bg-gallery { background-color: rgba(255, 255, 255, 0.8); }
/* line 647, style.scss */
.modal-content.bg-contact { background-color: rgba(255, 255, 255, 0.8); }

/* line 652, style.scss */
.fm { font-family: "Hiragino Mincho ProN", YuMincho, "Yu Mincho", 'Noto Serif JP', "serif"; font-weight: 300; }

/* line 656, style.scss */
.fmg { font-family: 'Noto Sans JP', sans-serif; font-weight: 300; }

/* line 660, style.scss */
.card { border-radius: 0; border: none; }
/* line 663, style.scss */
.card img { border-radius: 0; border: none; }

/* line 670, style.scss */
.min-vh-80 { min-height: 80vh; }

/* line 674, style.scss */
.h-80 { height: 80vh; }

/* line 677, style.scss */
.min-vh-75 { min-height: 75vh; }

/* line 681, style.scss */
.h-75 { height: 75vh; }

/* line 684, style.scss */
.min-vh-70 { min-height: 70vh; }

/* line 687, style.scss */
.h-70 { height: 70vh; }

/* line 690, style.scss */
.min-vh-50 { min-height: 40vh; }

/* line 693, style.scss */
.h-50 { height: 50vh; }

/* line 697, style.scss */
.lh-text { line-height: 230%; font-size: 0.9rem; margin-right: 20%; }
@media screen and (max-width: 768px) { /* line 697, style.scss */
  .lh-text { line-height: 200%; font-size: 0.8rem; margin-right: 0%; width: 80%; max-width: 400px; margin: auto; } }

/* line 712, style.scss */
.card-title { margin-bottom: 3rem; }

/* line 719, style.scss */
input.form-control-lg::placeholder { font-size: 0.7rem; position: relative; top: -6px; }

/* line 724, style.scss */
textarea.form-control-lg::placeholder { font-size: 0.7rem; position: relative; top: 0px; }

/* line 729, style.scss */
.lh2 { line-height: 2 !important; }

/* line 732, style.scss */
.form-control-lg { position: relative; height: calc(1.5em + 1rem + 2px); padding: .5rem .5rem; font-size: 1rem; line-height: 1.5; border-radius: 0; }

/* line 740, style.scss */
.btn-dark { text-align: center; border-radius: 0; }

/* line 744, style.scss */
.logo_btn { cursor: pointer; }

/* line 747, style.scss */
.carousel-indicators { display: block; top: 35%; }

/* line 752, style.scss */
.carousel-indicators li { height: auto !important; background: none !important; display: block; text-indent: 0; width: 100%; opacity: 1.0; font-size: 1.3rem; }

/* line 762, style.scss */
.vert .carousel-item-next.carousel-item-left, .vert .carousel-item-prev.carousel-item-right { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

/* line 770, style.scss */
.vert .carousel-item-next, .vert .active.carousel-item-right { -webkit-transform: translate3d(0, 100%, 0); transform: translate3d(0, 100% 0); }

/* line 779, style.scss */
.vert .carousel-item-prev, .vert .active.carousel-item-left { -webkit-transform: translate3d(0, -100%, 0); transform: translate3d(0, -100%, 0); }

/* line 785, style.scss */
.kado { border-radius: 0; }

/* line 789, style.scss */
.carousel-control-next:focus, .carousel-control-next:hover, .carousel-control-prev:focus, .carousel-control-prev:hover { color: #333; }

/* line 792, style.scss */
.carousel-control-next, .carousel-control-prev { position: absolute; top: 110%; bottom: 0; z-index: 1; display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; -ms-flex-pack: center; justify-content: center; width: 15%; color: #333; text-align: center; opacity: .5; transition: opacity .15s ease; }

/* line 810, style.scss */
.lb-outerContainer, .lightbox .lb-image { border-radius: 0 !important; }

/* line 815, style.scss */
.lb-dataContainer { position: absolute; top: -50px; right: 0; left: 0; }

/* line 822, style.scss */
.copy { line-height: 200%; letter-spacing: .15rem; font-size: 10px; }

@media screen and (max-width: 768px) { /* line 837, style.scss */
  .item { text-align: center; margin: 40px auto; width: 94%; } }

@media screen and (max-width: 1280px) { /* line 845, style.scss */
  .box_logo { width: 100px; } }

/* line 851, style.scss */
.gallery_box { margin: auto; border: 0; height: 100vh; overflow-x: hidden; overflow-y: scroll !important; position: relative; }
@media screen and (max-width: 1280px) { /* line 860, style.scss */
  .gallery_box .h1 { font-size: 1.6rem; } }
@media screen and (max-width: 1280px) { /* line 865, style.scss */
  .gallery_box .h4 { font-size: 1.2rem; } }
@media screen and (max-width: 768px) { /* line 851, style.scss */
  .gallery_box { padding: 0; } }
/* line 873, style.scss */
.gallery_box .item { padding: 2% 3% 0 3%; margin-top: 5%; }
@media screen and (max-width: 1980px) { /* line 873, style.scss */
  .gallery_box .item { padding: 1.5% 3% 0 2%; } }
@media screen and (max-width: 1420px) { /* line 873, style.scss */
  .gallery_box .item { padding: 2% 3% 0 4%; } }
@media screen and (max-width: 1280px) { /* line 873, style.scss */
  .gallery_box .item { padding: 4% 3% 0 4%; } }
@media screen and (max-width: 1000px) { /* line 873, style.scss */
  .gallery_box .item { padding: 4% 3% 0 4%; } }
/* line 891, style.scss */
.gallery_box .box_in { height: 100vh; overflow: hidden; }
/* line 899, style.scss */
.gallery_box .bg-glay { background: #E0E0E0 !important; }
/* line 906, style.scss */
.gallery_box .g-menu { padding-left: 3%; position: fixed; top: 0; bottom: 0; height: 78vh; margin: auto; z-index: 9999; pointer-events: none; }
@media screen and (max-width: 991px) { /* line 906, style.scss */
  .gallery_box .g-menu { position: inherit; height: auto !important; } }
/* line 919, style.scss */
.gallery_box .g-menu a { pointer-events: auto !important; z-index: 99999 !important; }
/* line 922, style.scss */
.gallery_box .g-menu a:hover { text-decoration: none; }
/* line 928, style.scss */
.gallery_box .active { font-weight: bold; color: #000; }
@media screen and (max-width: 768px) { /* line 932, style.scss */
  .gallery_box .carousel-item { position: relative; display: block; float: none; } }
/* line 940, style.scss */
.gallery_box .lightbox { position: absolute; top: 80px !important; }
@media screen and (max-width: 768px) { /* line 940, style.scss */
  .gallery_box .lightbox { position: absolute; left: 0 !important; right: 0 !important; bottom: 0 !important; top: 0 !important; width: 100%; z-index: 10000; text-align: center; line-height: 0; font-weight: normal; } }

/* line 959, style.scss */
.w-80 { width: 80%; }

/** Hero */
@keyframes page_top { 0% { opacity: 0; transform: translateX(-120%); }
  75% { opacity: .5; transform: translateX(-120%); }
  85% { opacity: .8; transform: translateX(-120%); }
  100% { opacity: 1; transform: translateX(50%); } }
/* line 987, style.scss */
.main #page_top { position: fixed; bottom: 2%; left: 0%; }
@media screen and (min-width: 769px) { /* line 987, style.scss */
  .main #page_top { animation-name: page_top; animation-duration: 2.5s; animation-timing-function: ease-out; animation-fill-mode: forwards; } }
@media screen and (max-width: 768px) { /* line 987, style.scss */
  .main #page_top { animation-name: page_top; animation-duration: 2.5s; animation-timing-function: steps(0, end); animation-fill-mode: forwards; } }
@media screen and (max-width: 768px) { /* line 987, style.scss */
  .main #page_top { bottom: 5%; } }
@media screen and (max-width: 360px) { /* line 987, style.scss */
  .main #page_top { bottom: 8%; } }
/* line 1009, style.scss */
.main #page_top a { color: #FFF; font-size: 1.4rem; }
/* line 1012, style.scss */
.main #page_top a:before { display: block; }

/* line 1020, style.scss */
.gallery #page_top { position: fixed; bottom: 2%; left: 0%; }
@media screen and (min-width: 769px) { /* line 1020, style.scss */
  .gallery #page_top { animation-name: page_top; animation-duration: 0s; animation-timing-function: ease-out; animation-fill-mode: forwards; } }
@media screen and (max-width: 768px) { /* line 1020, style.scss */
  .gallery #page_top { animation-name: page_top; animation-duration: 0s; animation-timing-function: steps(0, end); animation-fill-mode: forwards; } }
@media screen and (max-width: 768px) { /* line 1020, style.scss */
  .gallery #page_top { bottom: 5%; } }
@media screen and (max-width: 360px) { /* line 1020, style.scss */
  .gallery #page_top { bottom: 8%; } }
/* line 1042, style.scss */
.gallery #page_top a { color: #333; font-size: 1.4rem; }
/* line 1045, style.scss */
.gallery #page_top a:before { display: block; }

/* line 1075, style.scss */
.hero__scroll .chevron { margin-top: 20px; text-align: center; display: block; -webkit-animation: pulse 2s infinite; animation: pulse 2s infinite; color: #FFF; }

@-webkit-keyframes pulse { 0% { -webkit-transform: translate(0, 0); transform: translate(0, 0); }
  50% { -webkit-transform: translate(0, 10px); transform: translate(0, 10px); }
  100% { -webkit-transform: translate(0, 0); transform: translate(0, 0); } }
@keyframes pulse { 0% { -webkit-transform: translate(0, 0); transform: translate(0, 0); }
  50% { -webkit-transform: translate(0, 10px); transform: translate(0, 10px); }
  100% { -webkit-transform: translate(0, 0); transform: translate(0, 0); } }
/* line 1107, style.scss */
.chevron::before { border-style: solid; border-width: 0.15em 0.15em 0 0; content: ''; display: inline-block; height: 20px; position: relative; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); vertical-align: top; width: 20px; }

/* line 1120, style.scss */
.chevron.right:before { left: 0; -webkit-transform: rotate(45deg); -ms-transform: rotate(45deg); transform: rotate(45deg); }

/* line 1126, style.scss */
.chevron.top:before { top: 0; -webkit-transform: rotate(-45deg); -ms-transform: rotate(-45deg); transform: rotate(-45deg); }

/* line 1132, style.scss */
.chevron.top:after { content: 'scroll'; color: #FFF; font-size: 8px; display: block; text-align: center; margin: auto; position: absolute; top: 60%; right: 0; left: -12%; }

/* line 1144, style.scss */
.chevron.top.text-dark:after { color: #333; }

/* line 1147, style.scss */
.chevron.bottom:before { top: 0; -webkit-transform: rotate(135deg); -ms-transform: rotate(135deg); transform: rotate(135deg); }

/* line 1153, style.scss */
.chevron.bottom:after { content: 'scroll'; color: #FFF; font-size: 8px; display: block; text-align: center; margin: auto; position: absolute; top: -47%; right: 0; left: -12%; }

/* line 1165, style.scss */
.chevron.bottom.text-dark:after { color: #333; }

/* line 1168, style.scss */
.chevron.left:before { left: 0.25em; -webkit-transform: rotate(-135deg); -ms-transform: rotate(-135deg); transform: rotate(-135deg); }

/* line 1173, style.scss */
#pagetop_arrow { display: none; }

/*# sourceMappingURL=style.css.map */
