@charset "UTF-8";
/*---------------------------------------------*/
/*PC設定*/
.pc {
  display: block;
}
.sp {
  display: none;
}

.br-1150 {
    display: none;
  }
/*---------------------------------------------*/
/*背景*/
body {
  background: #000;
  font-family: "a-otf-ryumin-pr6n", serif;
  font-weight: 300;
  font-style: normal;
  color:#FFF;text-align:center;margin:0;padding:0;font-size:16px;line-height:1.7em;
}
#wrapper {
background: #000; overflow: hidden;
}
    /*ページローダー*/
 #loader-bg {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #000;
  z-index: 10000000000;
}
#loader {
  display: none;
  position: fixed;
  top: 47%;
  left: 50%;
  width: 104px;
  height: 104px;
  margin-top: -52px;
  margin-left: -52px;
  text-align: center;
  color: #000;
  z-index: 10000000001;
}
#loader img{width:160px;}

/*---------------------------------------------*/
/*汎用設定*/
#contents {
width: auto!important;padding:0;
}
p.size20{font-size:20px;}
p.size30{font-size:30px;margin-bottom:1em;}

.left180{margin-left:180px;}
strong{font-size:30px;  font-weight:normal; color:#d5a400;}

.centerPict{text-align:center;}
.centerPict img{display: inline-block;}

/*---------------------------------------------*/
/*TOP*/
.zoids h1{background: #da174b;
padding: 5px 0 2px;margin-bottom:20px;
font-size: 14px;
color: #000;
text-align: center;}

section#top{
  position: relative;
  z-index: 99;
  width:100%;
}

section#top .block1{width:100%;height:680px;margin:0 auto;padding-top:210px;text-align: center;}

section#top .block1 p#ad{font-size:42px;color:#b70000;margin-bottom:2em;}
section#top .block1 .scroll{margin-top:40px;}
.mb_4rem{margin-bottom: 4rem;}

section#top .block2{width:100%;height:1400px;margin:0 auto;position: relative;}

section#top .block2 .title{
  width: 360px;
  position: absolute;
  bottom: 140px;
  left: 150px;
  z-index: 2;
}

section#top .block2 .redBar{
  width:100%;
  height:320px;
  position: relative;
  background-image: url(_image/top_bar.png);
  background-size: cover;
  background-position: top;
  position: absolute;
  bottom:-268px;
  left:0px;right:0;
  margin:0 auto;
  z-index:2;
}

section#top .block2 .redBar dl{
  width:90%;
  margin:110px auto 0;
  display: flex;

}
section#top .block2 .redBar dl dt{
  width:35%;
  }

section#top .block2 .redBar dl dd{
  text-align: left;
  font-size:17px;
  width: 56%;
}

section#top .block2 .bgFix{width:100%!important; height: auto; padding-top:1450px; background-image:url(_image/top_bg.png);background-size: cover; position: relative;z-index:0;}

section#top .block2 .redBar:before {
content: "";
width: 50vw;
height: 320px;
position: absolute;
left: -49vw;top:0;
background-color: #b70000;
padding: 0;
}

section#top .block2 .redBar:after {
content: "";
width: 50vw;
height: 320px;
position: absolute;
right: -49vw;top:0;
background-color: #b70000;
padding: 0;
}

section#top .block3{
  width:100%;
  margin-top:0px;
  position: relative;
  z-index:0;
  padding-top:220px;
}

/* MOVIE */

section#top .mov {
  width: 800px;
  margin: 120px auto;text-align: center;
}
section#top .mov img{width:100%;}
section#top .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  box-sizing: border-box;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/* parse */
section#top .parseBlock{
  width:100%;
  height:1150px;
  margin:0 auto;
  position: relative;
}

section#top .parseBlock .title{
  width: 50%;
  top: 0;
  position: absolute;
  right: 120px;
  left: 450px;
  z-index: 1;
}
section#top .parseBlock .img{
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
}

section#top .parseBlock .item_image {
  position: absolute;
  left: 0;
  right: 0;
  display: flex;
  justify-content: space-between;
  width: 90%;
  margin: 0 auto;
  bottom: 0;
  text-align: left;
  z-index: 99;
}

section#top .parseBlock .item_image .item1 img,section#top .parseBlock .item_image .item2 img,section#top .parseBlock .item_image .item3 img {
  margin-bottom: 10px;
}

section#top .parseBlock .item_image .item1 {
  width: 30%;
}

section#top .parseBlock .item_image .item2 {
  width: 30%;
  margin: 95px 0 0;
}

section#top .parseBlock .item_image .item3 {
  width: 30%;
  margin: 190px 0 0;
}



/* section parse1 */
section#parse1{
  width:100%;
  margin:0 auto;
}

section#parse1 .inner{
  width:85%;
  margin:0 auto;
  position: relative;
  padding-top:80px;
  z-index:1;
}

section#parse1 .inner .title{
  width:47%;
  z-index: 0;
}
.title {position: relative; left: -90px;}

section#parse1 .inner .maskBox{width:100px;height:400px;background:#000;position:absolute;top:220px;left:160px;}

section#parse1 .inner .lead{
  width:23%;
  position: absolute;
  left:200px;
  top:360px;
  text-align: left;
  z-index: 999;
}

section#parse1 .inner .parse1 {
  width: 85%;
  margin: 50px auto;
}

section#parse1 .inner .parse1_flex {
  width: 100%;
  margin-bottom: 30px;
  display: flex;
  justify-content: space-between;
}

section#parse1 .inner .parse1_flex:last-of-type {
  align-items: center;
}

section#parse1 .inner .parse1_flex div {
  position: relative;
  width: 45%;
}

section#parse1 .inner .parse1_flex div h2 {
  text-align: left;
}

section#parse1 .inner .detail_text {
    width: 90%;
    margin: 0 0 0 auto;
    text-align: left;
}

section#parse1 .inner .parse1_flex div:last-of-type {
  width: 47%;
}

.parse1_pict2 {
    margin-top: -50px;
}

/* section parse2 */

section#parse2{width:100%;margin:0 auto;text-align: left;}

section#parse2 .inner{
  width:85%;
  margin:0 auto;
  position: relative;
  padding-top:0px;
  z-index: 0;
}

section#parse2 .inner .title{
  width:47%;
}

section#parse2 .inner .lead{
  width:50%;
  position: absolute;
  left:200px;
  top:510px;
  text-align: left;
}

section#parse2 .bg1{
  width: 100%;
  position: absolute;
  right: -250px;
  margin: 0 auto;
  top: -60px;
  z-index: -1;
}

.pasrse2_structure_box {
  position: relative;
  display: flex;
  width: 85%;
  margin: 100px auto;
  justify-content: space-between;
  align-items: end;
}

.pasrse2_structure_box .pasrse2_structure_title {
  width: 40%;
  position: absolute;
  left: -80px;
  top: 0;
}

.pasrse2_structure_box .pasrse2_img1 {
  width: 60%;
  position: absolute;
  left: -140px;
  top: 220px;
}

.pasrse2_structure_box img {
  width: 100%;
}

.pasrse2_structure_box .box {
  margin-bottom: 30px;
}

.pasrse2_structure_box .box p {
  margin-top: 10px;
}

.pasrse2_structure_box .left, .pasrse2_structure_box .right {
  width: 48%;
}

.inner .specList{width:100%;margin:200px auto 0;display:flex;flex-wrap: wrap; justify-content:space-between;}
.inner .specList li{width:29%;position: relative;margin:10px;}
.inner .specList li p{margin-top:10px; margin-left: 20px;}
.inner .specList img{width: 100%;}

/* section power */
section#power{width:100%;margin:100px auto 0;text-align: left;}

section#power .inner{width:80%;
  margin:0 auto;
  position: relative;
}

section#power .inner .title{width:631px;}
section#power .inner .maskBox{width:100px;height:400px;background:#000;position:absolute;top:220px;left:160px;}
section#power .inner .lead{position: absolute;left:200px;top:245px;text-align: left;}
section#power .bg1{width:900px;position: absolute;left:0px;right:0;margin:0 auto;top:410px;}

section#power .bg2{
  width: 100%;
  position: absolute;
  left:30px;
  right:0;
  margin:0 auto;
  top: 220px;
}

section#power .bg2 .red_btn{
  display: block;
  margin: 50px auto 0px;
  width: 60%;
}

section#power .power_flex {
  display: flex;
  justify-content: space-between;
  
}

section#power .power_flex img {
  width: 45%;
}

section#power .power_flex p {
  width: 50%;
}

.inner .specList{
  margin: 120vh auto 0;
}

.inner .specList.sl1{
  justify-content:left;
}

.inner .specList.sl2{
  margin: 70vh auto 0;
}

.inner .specList li{
  width: 29%;
}

.mt-100 {
  margin-top: 100px!important;
}

/* section parse3 */

section#parse3 .inner{
  width:85%;
  margin:100px auto 0;
  position: relative;
}

section#parse3 .inner .title{
  position: relative;
  width:47%;
}

section#parse3 .inner .title p{
    position: absolute;
    width: 100%;
    top: 260px;
    left: 320px;
    text-align: left;
}

section#parse3 .parse3_box {
  width: 85%;
  display: flex;
  justify-content: space-between;
  margin: 50px 0 50px auto;
}

section#parse3 .parse3_inner {
  position: relative;
  margin-top: 300px;
}

section#parse3 .parse3_inner .parse3_h2_img {
  position: absolute;
  width: 30%;
  top: -190px;
  left: 0;
}

section#parse3 .parse3_box .text {
  width: 42%;
  text-align: left;
}

section#parse3 .parse3_box .text p.text_title {
  font-size: 30px;
  color: #d5a400;
  margin-bottom: 20px;
  line-height: 1.3;
}

section#parse3 .parse3_box .img {
  width: 55%;
}

/* section parse4 */

section#parse4 .inner{
  width:85%;
  margin:100px auto 0;
  position: relative;
  text-align: center;
}

section#parse4 .inner .title{
  position: relative;
  width:47%;
}

section#parse4 .inner .title p{
    position: absolute;
    width: 100%;
    top: 260px;
    left: 320px;
    text-align: left;
}

section#parse4 .inner .parse4_img {
  width: 100%;
  margin-top: -100px;
}

/* section spec*/
section#spec{
  width:100%;
  margin:0 auto;
  text-align: left;
}

section#spec .inner1{
  width:85%;
  height:1300px;
  margin:0 auto;
  position: relative;
  padding-top:80px;
}

section#spec .inner1.inner2{
  height:1200px;
}

section#spec .inner1 .title{
  width: 40%;
}
.lead_text {
  font-size:16px;
  color:#fff;
  margin-top: 20px;
}

section#spec .inner1 .spec_bg1{
  width: 38%;
  position: absolute;
  top: 140px;
  right: 40px;
  z-index: 99;
}
section#spec .inner1 .spec_bg2{
  width: 60%;
  position: absolute;
  top: 560px;
  left: 40px;
}
section#spec .inner1 .spec_title{width:450px;position: absolute;left:50px;top:320px;text-align: left;font-size:30px;color:#d5a400;line-height: 1.7em;}

.spec_lead {
  width: 36%;
  position: absolute;
  right: -110px;
  top: 680px;
  text-align: left;
  border-top: 1px solid #b70000;
  border-bottom: 1px solid #b70000;
  padding: 50px 50px 50px 100px;
  font-size: 18px;
  line-height: 1.7em;
}

/* PKG*/
#pkg {
    width: 100%;
    margin: 100px 0;
    position: relative;
}
#pkg .inner{width:1080px;margin:0 auto; position: relative;z-index:1}
#pkg .inner p.attention{width:440px;display:block;font-size:12px;line-height:1.2em;margin-top:20px;margin-left:auto;margin-right:0;}

#pkg .line{
    width:100%;height:600px;position: absolute;
    top: 100px;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #b70000;
    transform: skewY(-10deg);
    z-index: 0;
}

/* GALLERY*/

#gallery{
  width:85%;
  margin:0px auto 0;
}
#gallery h2{
  margin:18px 0;
}

#gallery1 {
  display: flex;
  justify-content: space-between;
}

#gallery1 dt{
  width:49%
  }
.slider{
  width:100%;
}
.slider img{
  width:100%;
  object-fit: cover;
}

#gallery1 dd{
  width:49%
}

.thumbnail-img {
  opacity: 0.5;
  transition: opacity .3s linear;
  width: calc(100% / 4) !important;
}
.thumbnail-img img{width:100%;padding:0 2.5px 5px 2.5px;}

.thumbnail .slick-current {
  width: 100%;
  opacity: 1;
}

.slick-track {
  transform: unset !important;
}

dd .slick-list div.slick-track:last-of-type {
width: 100%!important; 
}


/* info*/

#info{
  width:85%;
  height:900px;
  margin:50px auto 0;
  position:relative;
}

#info .img1{
  width: 100%;
  position: absolute;
  top: 70px;
  left: 0;
  z-index: 0;
}

#info .inner{
  width: 40%;
  right: 40px;
  top: 110px;
  position: absolute;
  z-index: 1;
}

#info .inner p.days{font-size:30px;line-height:1.7em;margin-top:100px;}
#info .inner p.price{font-size:16px;}
#info .inner p.attention{font-size:12px;line-height:1.7em;margin-top:55px;}

section#spec .btn{width:500px;margin:120px auto 0;}

.mr_20 {
  margin-right: 20px;
}

.copyright1 {
  font-size: 12px;
  text-align: center;
  font-family: "source-han-sans-japanese", sans-serif;
}


/* 画像サイズ */

.w-100 {
  width: 100%;
}

.w-80 {
  width: 80%;
}

.parse1-img {
  position: absolute;
  width: 1000px;
  top: -155px;
  right: -180px;
  z-index: -99;
}

.parse1-img img {
  width: 100%;
}

.parse1_h2_1_text {
  color: #D5A400;
  position: absolute;
  left: 130px;
  top: 130px;
  z-index: 3;
  font-size: 25px;
  line-height: 45px;
  text-align: left;
}

.parse1_h2_1_text span {
  margin-right: 10px;
  vertical-align: bottom;
}


.vertical-rl {
  writing-mode: vertical-rl;
}


/* フォント */

.bebas-neue-regular {
  font-family: "Bebas Neue", sans-serif;
  font-weight: 400;
  font-style: normal;
}

.photo-blur {
  filter: blur(10px);
}

.photo-blur {
  filter: blur(10px);
  animation-name: blur;
  animation-duration: 5s;
}

@keyframes blur {
  0% {
    filter: blur(10px);
  }
  100% {
    filter: blur(0);
  }
}

@keyframes scroll-anim {
  from {
    opacity: 0;
    scale: 0.9;
  }
  to {
    opacity: 1;
    scale: 1;
  }
}

@keyframes fadeIn {
  0% {
  }
  100% {
      opacity: 1;
      transform: translate(0);
  }
}

/*----------------------------
ブラーで出現
----------------------------*/
.Blur {
  transition: 1s ease-in-out;
  filter: blur(10px);
  animation-name: blur;
  opacity: 0;
}
.Blur.on {
  filter: blur(0);
  opacity: 1.0;
}

.slick-list.draggable {
  
}

/*----------------------------
フェードで出現
----------------------------*/

.fadeIn {
  animation-name: fadeIn;
  animation-duration: 1s;
  animation-fill-mode: forwards;
}

.fadeInRight {
  opacity: 0;
  transform: translateX(100px);
}

@media screen and (min-width: 1400px) {
  section#parse3 .inner .title p {
    top: 270px;
  }
}