@charset "UTF-8";

:root {
  --media_pc: 1680; /* VW計算用 calc(vw / var(--media_pc)) */
  --media_sp: 750;
}

.pcfixBtn{display:none;}
.gnavi_wrap .pickup_sp_nav{display:none;}
p,span{color:#1e1e1e;}
picture{display:block;}
.img{position:relative;font-size:0;}
p {
  font-family: YakuHanMP,'Zen Old Mincho', serif;
}

.kv-wrap{
  width: 100%;
  margin-top:122px;
}
.kv-wrap{
  display:block;
  position:relative;
}
.kv-wrap .kv-ttl{
  position:absolute;
  top:50%;
  left:50%;
  transform: translate(-50%,-50%);
  font-family: "OptimaLTPro-Roman";
  font-size:100px;
  color:#fff;
  white-space: nowrap;
}
.kv-wrap .kv-cap{
  position:absolute;
  bottom:0;
  right:0;
  margin:5px;
  font-size:12px;
  color:#fff;
  text-shadow: 1px 1px 20px #333;
}

.img .cap {
  position: absolute;
  bottom: 0;
  left: 0;
  margin: 5px;
  font-size: 12px;
  color: #fff;
  text-shadow: 1px 1px 20px #333;
  /*font-family: 'Noto Sans JP', sans-serif;*/
}

@media screen and (max-width: 1366px) {
  .kv-wrap{
    margin-top:8.931vw;
  }
  .kv-wrap .kv-ttl{
    font-size:7.321vw;
  }
  .kv-wrap .kv-cap{
    margin:0.366vw;
    font-size:0.878vw;
  }
}

@media screen and (max-width: 768px) {
  .kv-wrap{
    margin-top:16.276vw;
  }
  .kv-wrap .kv-ttl{
    font-size:11.467vw;
  }
  .kv-wrap .kv-cap{
    margin:0.667vw 1.333vw;
    font-size:2.667vw;
  }
  .img .cap {
    font-size: 2.666vw; 
  }
}

.contents_wrap{
  width:100%;
  padding-bottom:160px;
}
.intro_wrap{
  text-align: center;
  padding:187px 0 0;
}
.yt_wrap {
  width: 1280px;
  max-width: 100%;
  margin: 0 auto;
}
.yt_wrap .mov {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  box-sizing: border-box;
}
.yt_wrap .mov iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


.yt_wrap {
  position: relative;
}

@media screen and (max-width: 768px) {
  .contents_wrap{
    padding-bottom: calc(120 / var(--media_sp) * 100vw);
  }
  .intro_wrap{
    padding: calc(115 / var(--media_sp) * 100vw) 0 0;
  }
  .yt_wrap {
    width: 90.667%;
    max-width: inherit;
  }
}

.gallery_wrap{
  width:100%;
}
.inner_gallery_wrap{
  width:100%;
  text-align:center;
  padding-top:158px;
}
.inner_gallery_txt_wrap{
  width:100%;
  margin:0 auto 100px;
  padding:0 20px;
  box-sizing:border-box;
}
.inner_gallery_ttl{
  font-size:36px;
  line-height: 1;
  letter-spacing: 0.15em;
  margin-bottom:30px;
}
.inner_gallery_txt{
  font-size:18px;
  line-height: 2.833;
  letter-spacing: 0.06em;
  margin-bottom:30px;
}
h2{
  font-size:25px;
  font-weight: normal;
  letter-spacing: 0.2em;
  color:#b39872;
  border:1px solid #b39872;
  width:505px;
  height:54px;
  line-height: 54px;
  margin:0 auto;
}
.inner_gallery_img_wrap{
  width:100%;
  display:flex;
  flex-wrap:wrap;
  gap:0.476%;
}
.inner_gallery_img_wrap .gallery_img{
  width:100%;
  height: 0;
  position:relative;
  font-size:0;
}
.inner_gallery_img_wrap .gallery_img.radius01{
  border-radius:0 260px 0 0;
  overflow:hidden;
}
.inner_gallery_img_wrap .gallery_img.radius02{
  border-radius:0 0 0 260px;
  overflow:hidden;
}
.inner_gallery_img_wrap .gallery_img.harf{
  width:49.762%;
}
.inner_gallery_img_wrap .gallery_img.sml01{
  width:42.292%;
}
.inner_gallery_img_wrap .gallery_img.sml02{
  width:40.9525%;
}
.inner_gallery_img_wrap .gallery_img.mid01{
  width:57.232%;
}
.inner_gallery_img_wrap .gallery_img.mid02{
  width:58.5715%;
}
.inner_gallery_img_wrap .gallery_img:nth-child(n+2){
  margin-top:0.476%;
}
.inner_gallery_img_wrap .gallery_img .cap{
  position:absolute;
  bottom:0;
  right:0;
  margin:5px;
  font-size:12px;
  line-height: 1;
  color:#fff;
  text-shadow: 1px 1px 20px #333,1px 1px 20px #333;
}
.inner_gallery_img_wrap .gallery_img.img01{
  padding-bottom: 57.024%;
  background: url('../img/gallery/ext_ent_img01_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.inner_gallery_img_wrap .gallery_img.img02{
  padding-bottom: 37.619%;
  background: url('../img/gallery/ext_ent_img02_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.inner_gallery_img_wrap .gallery_img.img03{
  padding-bottom: 37.619%;
  background: url('../img/gallery/ext_ent_img03_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.inner_gallery_img_wrap .gallery_img.img04{
  padding-bottom: 42.44%;
  background: url('../img/gallery/ext_ent_img04_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.inner_gallery_img_wrap .gallery_img.img05{
  padding-bottom: 42.44%;
  background: url('../img/gallery/ext_ent_img05_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.inner_gallery_img_wrap .gallery_img.img06{
  padding-bottom: 37.619%;
  background: url('../img/gallery/ext_ent_img06_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.inner_gallery_img_wrap .gallery_img.img07{
  padding-bottom: 37.619%;
  background: url('../img/gallery/ext_ent_img07_pc.jpg?01');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img00{
  padding-bottom: 57.024%;
  background: url('../img/gallery/common_facilities_img00_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img01{
  padding-bottom: 57.024%;
  background: url('../img/gallery/common_facilities_img01_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img02{
  padding-bottom: 37.619%;
  background: url('../img/gallery/common_facilities_img02_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img03{
  padding-bottom: 37.679%;
  background: url('../img/gallery/common_facilities_img03_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img04{
  padding-bottom: 42.44%;
  background: url('../img/gallery/common_facilities_img04_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img05{
  padding-bottom: 30.893%;
  background: url('../img/gallery/common_facilities_img05_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img06{
  padding-bottom: 30.833%;
  background: url('../img/gallery/common_facilities_img06_pc.jpg');
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

@media screen and (max-width: 768px) {
  .inner_gallery_wrap{
    padding-top: calc(80 / var(--media_sp) * 100vw);
  }
  .inner_gallery_txt_wrap{
    margin:0 auto calc(120 / var(--media_sp) * 100vw);
    padding:0;
  }
  .inner_gallery_ttl{
    font-size: calc(44 / var(--media_sp) * 100vw);
    line-height: 1.832;
    letter-spacing: 0.1em;
    margin-bottom: calc(30 / var(--media_sp) * 100vw);
  }
  .inner_gallery_txt{
    font-size: calc(26 / var(--media_sp) * 100vw);
    line-height: 2.077;
    margin-bottom: calc(45 / var(--media_sp) * 100vw);
  }
  h2{
    font-size: calc(26 / var(--media_sp) * 100vw);
    letter-spacing: 0.2em;
    width: calc(438 / var(--media_sp) * 100vw);
    height: calc(67 / var(--media_sp) * 100vw);
    line-height: calc(67 / var(--media_sp) * 100vw);
  }
  .inner_gallery_img_wrap{
    display:block;
    gap:0;
  }
  .inner_gallery_img_wrap .gallery_img.radius01{
    border-radius:0 calc(110 / var(--media_sp) * 100vw) 0 0;
  }
  .inner_gallery_img_wrap .gallery_img.radius02{
    border-radius:0;
  }
  .inner_gallery_img_wrap .gallery_img.radius03{
    border-radius:0 0 0 calc(110 / var(--media_sp) * 100vw);
    overflow:hidden;
  }
  .inner_gallery_img_wrap .gallery_img.harf{
    width:100%;
  }
  .inner_gallery_img_wrap .gallery_img.sml01{
    width:100%;
  }
  .inner_gallery_img_wrap .gallery_img.sml02{
    width:100%;
  }
  .inner_gallery_img_wrap .gallery_img.mid01{
    width:100%;
  }
  .inner_gallery_img_wrap .gallery_img.mid02{
    width:100%;
  }
  .inner_gallery_img_wrap .gallery_img:nth-child(n+2){
    margin-top:0.8%;
  }
  .inner_gallery_img_wrap .gallery_img .cap{
    margin: calc(5 / var(--media_sp) * 100vw);
    font-size: calc(20 / var(--media_sp) * 100vw);
    text-shadow: 1px 1px calc(20 / var(--media_sp) * 100vw) #333,1px 1px calc(20 / var(--media_sp) * 100vw) #333;
  }
  .inner_gallery_img_wrap .gallery_img.img01{
    padding-bottom: 77.2%;
    background: url('../img/gallery/ext_ent_img01_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .inner_gallery_img_wrap .gallery_img.img02{
    padding-bottom: 60.133%;
    background: url('../img/gallery/ext_ent_img02_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .inner_gallery_img_wrap .gallery_img.img03{
    padding-bottom: 70.267%;
    background: url('../img/gallery/ext_ent_img03_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .inner_gallery_img_wrap .gallery_img.img04{
    padding-bottom: 50.533%;
    background: url('../img/gallery/ext_ent_img04_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .inner_gallery_img_wrap .gallery_img.img05{
    padding-bottom: 50.533%;
    background: url('../img/gallery/ext_ent_img05_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .inner_gallery_img_wrap .gallery_img.img06{
    padding-bottom: 60.133%;
    background: url('../img/gallery/ext_ent_img06_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .inner_gallery_img_wrap .gallery_img.img07{
    padding-bottom: 60.133%;
    background: url('../img/gallery/ext_ent_img07_sp.jpg?01');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img00{
    padding-bottom: 77.333%;
    background: url('../img/gallery/common_facilities_img00_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img01{
    padding-bottom: 77.333%;
    background: url('../img/gallery/common_facilities_img01_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img02{
    padding-bottom: 60.133%;
    background: url('../img/gallery/common_facilities_img02_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img03{
    padding-bottom: 64.133%;
    background: url('../img/gallery/common_facilities_img03_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img04{
    padding-bottom: 69.467%;
    background: url('../img/gallery/common_facilities_img04_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img05{
    padding-bottom: 60.133%;
    background: url('../img/gallery/common_facilities_img05_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
  .common_facilities_wrap .inner_gallery_img_wrap .gallery_img.img06{
    padding-bottom: 60.133%;
    background: url('../img/gallery/common_facilities_img06_sp.jpg');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
  }
}

.sideNav {
  position: fixed;
  width: 100%;
  height: 100%;
  display: block;
  z-index: 2;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
}
.sideNav.active {
  opacity: 1;

  transition: opacity 0.3s;
}
.sideNav ul {
  position: absolute;
  top: 43%;
  left: 0;
  transform: translate(-0%, -50%);
  display: flex;
  writing-mode: vertical-rl;
  height: 508px;
  gap: 12px;
}
.sideNav ul > * + * {
  /*! margin-top: 12px; */
}
.sideNav ul li {
  font-size: 15.738px;
  color: #fff;
  border-radius: 0 18px 0 0;
  background-color: #1a3f90;
  transition:  background-color 0.3s;
}
.sideNav ul li.active {
  pointer-events: initial;
}
.sideNav ul li a {
  font-size: 15.738px;
  color: #fff;
  padding: 13px 12px 9px 21px;
  transition:  color 0.3s;
  display: block;
  pointer-events: initial;
  white-space: nowrap;
}
.sideNav ul li.active a {
  color: #b39872;
  pointer-events: none;
}
.sideNav ul li a::after {
  content: "";
  background-image: url("../img/gallery/icon_gallery_sidenav.svg");
  width: 6px;
  height: 13px;
  display: inline-block;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  margin-top: 7px;
}

@media screen and (max-width: 768px){
  .sideNav {

    height: 100lvh;
  }
  .sideNav ul {
    top: 33%;
    height: 100%;
    justify-content: center;
    gap: 1vw;
  }
  .sideNav ul > * + * {
    margin-top: 0;
  }
  .sideNav ul li {
    border-radius: 0 2vw 0 0;
    display: block;
    height: auto;
    padding: 2.6vw 2.1vw 1.3vw 2.7vw;
    box-sizing: border-box;
  }
  .sideNav ul li a {
    font-size: 3.2vw;
    padding: 0;
  }
  .sideNav ul li a::after {
    width: 1vw;
    height: 2.4vw;
    margin-top: 1.3vw;
  }
}