@charset "UTF-8";
/* CSS Document */

.bg_wh{
  background: #FFF;
  color: #333;
}

  @media screen and (min-width:768px){
    .lp_slide_section{padding: 50px 0;}
  }

  @media screen and (max-width:767px){
    .lp_slide_section{padding: 0 0 20px 0;}
  }

/*kv*/
.kv-section{
  height: 100svh;
  position: relative;
  overflow:hidden;
}

.kv-section img.kv-poster{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
}


.kv_ttl_area{
  position: absolute;
  top: 50%;
  opacity: 0;
  left: 0;
  width: 100%;
  animation: fadettl 0.8s forwards;
  animation-delay: 1s;
  background: rgba(0,0,0,0.4);
  z-index: 10;
  transform: translateY(-50%);}

.kv_ttl_area_inner{
  position: relative;
  width: 100%;
  height: 100%;
  padding: 6vh 20px;
  text-align: center;
  box-sizing: border-box;
}

.kv_copy img,
.kv_logo img.logo{
  width: 400px;
}

.kv_copy{
  margin-bottom: 30px;
  opacity: 0;
  animation: fadettl 2s forwards;
  animation-delay: 1.5s;
}
.logo{
  opacity: 0;
  animation: fadettl 2s forwards;
  animation-delay: 1.5s;
}

.popup-trigger{
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 10;
  background: rgba(0,0,0,0.6);
  padding: 8px 20px;
  border-radius: 20px;
  cursor: pointer;
  opacity: 0;
  animation: fadettl 2s forwards;
  animation-delay: 2s;
}
.popup-trigger img.icon_view{
  display: block;
  width: 150px;
/*  animation: blinking 1.5s ease-in-out infinite alternate;*/
}

.popup-trigger:hover{
  opacity: 0.8;
  transition: 0.3s;
}

  @keyframes blinking {
  0%   { opacity: 0.1; }
  100% { opacity: 1; }
  }

.scroll{
	position: absolute;
	left: 50%;
  opacity: 0;
	bottom:0px;
  animation: fadettl 2s forwards;
  animation-delay: 2s;
  z-index: 10;
}
.scroll img{
  width: 50px;
  animation: arrow 0.4s cubic-bezier(0.215, 0.61, 0.355, 1) 0s infinite alternate;
}

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

    100% {
      transform: translate3d(-50%, -20px, 0);
    }
  }
  @keyframes fadettl{
      from {
        opacity: 0;
      }
      to {
        opacity: 1;
      }
    }



  @media screen and (min-width:768px) and (max-width:1024px){
      .kv_copy img,
      .kv_logo img.logo{
        width: 350px;
      }
      .popup-trigger{
        right: -200px;}
  }
  @media screen and (max-width:767px){
    .kv_ttl_area_inner{
      padding: 6vh 20px;
      }

    .kv_copy{
      margin-bottom: 10px;}

    .kv_copy img{
      width: 240px;
    }
    .kv_logo img.logo{
      width: 260px;
    }

    .scroll{
      bottom:60px;
      }
    .scroll img{
      width: 40px;
    }


  }
/*kv modal/////////////////////////*/


.image-modal{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,0.85);
  display:flex;
  justify-content:center;
  align-items:center;
  opacity:0;
  visibility:hidden;
  transition:opacity 0.5s ease, visibility 0s .3s;
  z-index:9999;

}

.image-modal.active{
  opacity:1;
  visibility:visible;
  transition:opacity .3s ease;
}

.image-modal img {
  max-width: none;
  max-height: none;
  width: auto;
  height: auto;
  display: block;
  cursor: grab;
  transform-origin: center center;
  user-select: none;
  -webkit-user-drag: none;
}
.close-btn{
  position:fixed;
  top:20px;
  right:30px;
  font-size:3rem;
  line-height: 50px;
  font-weight: 100;
  background: #FFF;
  width: 50px;
  height: 50px;
  color: #000;
  text-align: center;
  border-radius: 50px;
  z-index: 10;
  box-shadow: 0px 0px 10px 0px #000000;
  cursor:pointer;
}

    @media screen and (max-width:767px){
      .close-btn{
        top:10px;
        right:10px;
        font-size:2rem;
        width: 44px;
        height: 44px;
        line-height: 44px;}
    }

/*movie_trailer////////////////////////////////*/
.movie_trailer{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.movie_trailer video{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.icon_movie{
  width: 100px;
  position: absolute;
  bottom: 30px;
  right: 30px;}

.icon_movie img{
  width: 100px;
}

  @media screen and (max-width:767px){
      .icon_movie{
        bottom: 20px;
        right: 20px;
      }
      .icon_movie,
      .icon_movie img{
        width: 60px;
      }

  }
/*slider///////////////////////////////////////*/
.Slide_Contents{
  max-width: 1040px;
  margin: 0 auto;
}
.slick_wrap{
  position: relative;
  padding-bottom: 60px;
}
.slick_wrap .slick-track {
  display: flex;
}
.slick_wrap .slick-list{
    overflow: visible;
    padding: 0 !important;
}
.slick_wrap .slick_item{
  position: relative;
}
.slick_wrap .slick-slide{
  padding: 0 30px;
  position: relative;
  height: auto !important;
}

.slick_txt_inner{
  padding: 20px 20px 0 20px;
}
.lp_item_ttl{
  font-size: 2.8rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 15px;
}

.lp_item_txt{
  text-align: center;
  background-size:100%;
  background-repeat: no-repeat;
  background-position: 0 0;
}
.lp_item_txt p + p{
  margin-top: 10px;
}

.slick-dots{
  position: absolute;
  bottom: 5px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  border-radius: 20px;
  padding: 5px 10px;
  background: rgba(202,202,202,0.3);
}

  .bg_wh .slick-dots{
    background: rgba(153,153,153,0.5)
  }

.slick-dots li{
  margin:0 3px;
}
.slick-dots button{
  background:#f7f7f7;
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  text-indent: -99999px;
  overflow: hidden;
}
.bg_wh .slick-dots button{background:#FFF;}
.slick-dots li.slick-active button{
  background:#000;
}

.slick_item_inner{
  position: relative;
}
.slick_item_inner img{
  display: block;
}

.slick_item_inner_ttl{
  font-size: 2.2rem;
  font-weight: 600;
  margin-bottom: 20px;
}
.slick_item_inner_txt{
  font-size: 1.4rem;
  margin-bottom: 20px;
}
.slick_movie{
  position: relative;
  padding-top: 56.25%;
  width: 100%;

}
  .bg_wh .slick_movie{background:#D7D7D7;}

.slick_movie img{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
  display: block;
}

.slick_movie video{
  position:absolute;
  top: -2px;
  left: -2px;
  width: calc(100% + 4px);
  height: calc(100% + 4px);
  object-fit:cover;
  display: block;
}

.slick_arrow.slick-disabled{
  display: none !important;
}

.slick_arrow{
  cursor: pointer;
  position: absolute;
  width: 30px;
  height: 30px;
  bottom: 0;
  z-index: 10;
}

.arrow_prev:hover,
.arrow_next:hover{
  opacity:0.6;
	transition: 0.5s all;
}

.slick_arrow.arrow_prev{background-image:url("../images/lp/prev_wh.svg?2"); left: 35%;}
.slick_arrow.arrow_next{background-image:url("../images/lp/next_wh.svg?2"); right: 35%;}

.bg_wh .slick_arrow.arrow_prev{background-image:url("../images/lp/prev_bl.svg?2");}
.bg_wh .slick_arrow.arrow_next{background-image:url("../images/lp/next_bl.svg?2");}

.blank_box{
  width: 100%;
  padding-top: 56.15%;
  background: linear-gradient(0deg,rgba(7, 10, 19, 1) 0%, rgba(16, 22, 38, 1) 100%);
}
.blank_box_inner{
  position: absolute;
  box-sizing: border-box;
}
table.List th,
table.List td{
  color: #FFF;
  text-align: left;
  vertical-align: top;
  padding: 15px;
  font-size: 1.4rem;
  white-space: nowrap;
}
table.List th{
  padding-right: 40px;
}

.slide4-3-note .note,
.slide7-note .note2,
.slide7-note .note{
  font-size: 0.9rem;
}
.slide6-txtBox{
  color: #FFF;
  text-align: center;
    }
.slide6-ttl{
  font-size: 2rem;
  font-weight: 600;
}
.slide6-txt{
  margin: 20px 0 40px 0;
  font-size: 1.4rem;
}
.slide6-txt2{
  font-size: 1.2rem;
  margin-top: 20px;
}
.slide6-txt2 span{
  font-size: 1.4rem;
  font-weight: 600;
}
.logo_10th_bl{
  margin-top: 20px;
}
.logo_10th_bl img{
  width: 80px;
}
.lp_item_price{
  line-height: 1.5;
  font-weight: 600;
}
.lp_item_price span.red{
  color: #F02124;
  font-size: 1.2rem;
}

  @media screen and (min-width:768px){
    .bg_wh .slick_item_inner{
      -webkit-filter: drop-shadow(0 0 0.5rem rgba(0,0,0,0.3));
      filter: drop-shadow(0 0 0.5rem rgba(0,0,0,0.3));

      }
    .Slide_Contents{
      padding: 0 20px;}

    .slide4-3-note{
      position: absolute;
      bottom: 30px;
      left: 20px;
      width: 350px;
    }

    .slide6-txtBox{
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 100%;
      box-sizing: border-box;
      padding: 0 10px;
      left: 0;

    }
    .slide7-note{
      display: none;
    }
    .lp_item_txt_w-45{
      width: 45%;
      position: absolute;
      right: 2.5%;
      height: 100%;
      display: flex;
      justify-content: center;
      flex-direction: column;
      top: 0;
    }
    .lp_item_price{
      position: absolute;
      bottom: 30px;
      right: 30px;
    }
    .blank_box_inner{
        top: 50%;
        left: 50%;
        transform: translate(-50%,-50%);
      }
  }

  @media screen and (min-width:768px) and (max-width:1024px){
    .lp_item_txt_w-45{width: 47%;}
  }

  @media screen and (max-width:1024px){
    .lp_item_ttl{
      font-size: 2.4rem;}

    .lp_item_txt{
      font-size: 1.4rem;}

    .slick_wrap .slick-slide{
      padding:0 10px;}

    .slick_item_inner_ttl{
      font-size: 2rem;
      margin-bottom: 10px;
    }
    .slick_item_inner_txt{
      font-size: 1.3rem;
      margin-bottom: 10px;
    }
    table.List th,
    table.List td{
      padding: 10px;}

    .lp_item_price{
      font-size: 1.4rem;
      bottom: 10px;
      right: 20px;
    }
    .lp_item_price span.red{font-size: 1rem;}

  }

  @media screen and (max-width:767px){
    .slick_wrap{
      padding-bottom: 50px;
    }
    .slick_txt_inner{
      padding: 25px 10px 0 10px;
    }
    .lp_item_ttl{
      margin-bottom: 25px;
      font-size: 1.6rem;}

    .lp_item_txt{
      font-size: clamp(1.2rem, 3.5vw, 1.4rem);
    }

    .slick_wrap .slick-slide{
      padding: 0;
    }

    .slick-dots button{
      width: 6px;
      height: 6px;
    }


    .slick_arrow{
      width: 25px;
      height: 25px;
    }

    .slick_arrow.arrow_prev{left: 20%;}
    .slick_arrow.arrow_next{right: 20%;}


    .slick_item_inner_ttl{
      font-size: 1.6rem;
      margin-bottom: 5px;
    }
    .slick_item_inner_txt{
      font-size: 1.2rem;
      margin-bottom: 5px;
    }
    .lp_item_icon{
      position: absolute;
      bottom: 10px;
      color: #000;
      right: 10px;
      width: 30px;
      height: 30px;
      background: url("../images/lp/icon_txt.svg?3") no-repeat 0 0;
      background-size: 100%;
      z-index: 11;
    }
    .lp_popup_ex{
      opacity:0;
      visibility:hidden;
      transition:opacity .5s ease;
      position:absolute;
      left:50%;
      top:50%;
      transform:translate(-50%,-50%);
      width:90%;
      background: #FFF;
      padding: 10px 10px;
      box-sizing: border-box;
      z-index:10;
      box-shadow: 0px 0px 10px 0px rgba(0,0,0,0.6);
    }

    .lp_item_price{
      font-size: 1.4rem;
      margin-top: 20px;
      line-height: 1.4;}

    .logo_10th_bl img{
        width: 60px;
      }

    .slide4-3-note{
      color: #000;
    }

    .slide6-txtBox_inner{
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 100%;
      box-sizing: border-box;
      padding: 0 10px;
      left: 0;

    }
    .slide6-ttl{
      font-size: clamp(1.2rem, 4vw, 1.6rem);
    }
    .slide6-txt{
      margin: 20px 0 20px 0;
      line-height: 1.6;
      font-size: clamp(0.9rem, 3vw, 1.3rem);
    }


    .slide6-txt2{
      font-size: 1rem;
      position: absolute;
      bottom: 5vw;
      left: 0;
      width: 100%;
      text-align: center;
    }
    .slide6-txt2 span{
      font-size: 1.2rem;
    }

    .slick_item_inner.active .lp_popup_ex{
      opacity:1;
      visibility:visible;
    }

    .slick_item_inner.active .lp_item_icon{
      background-image: url("../images/lp/icon_txt_close.svg?3");}

    .sp_trimming{
      width: 100%;
      height: 0;
      padding-top: 100%;
      position: relative;
      overflow: hidden;
    }
    .sp_trimming img{
      position: absolute;
      top: 0;
      width: 178%;
      max-width: 178%;
      left: -39%;
    }

    .slick_item .icon_movie img{
      position: static;
      width: 60px;
      max-width: 100%;
    }
    .slick_item .icon_movie{
        bottom: 20px;
        right: 20px;
      }

    .slick_movie{
      position: relative;
      padding-top: 100%;
      width: 100%;
    }
    .slick_movie_pc-sp{
      padding-top: 56.25%;
      margin: 21.875% 0;
    }
    .blank_box{
      padding-top: 100%;}

    table.List th,
    table.List td{
      font-size: clamp(1rem, 3vw, 1.2rem);
      padding: 6px 0;
      white-space: normal;
    }
    .blank_box_inner{
      top: 50%;
      transform: translateY(-50%);
      left: 0;
      padding: 0 15px;
    }
    table.List th{
      white-space: nowrap;
      padding-right: 10px;
    }

  }
  @media screen and (max-width:320px){
    .slick_item_ttl{
      padding: 25px 0 20px 0;
    }
    .lp_popup_ex{
      padding: 5px;
    }
    .slick_item_inner_txt{
    font-size: 1rem;}

    .lp_item_price{
      font-size: 1.2rem;
      margin-top: 10px;}
  }

/*separate movie///////////////////////////*/
.Separate_area{
  position: relative;
}
.Separate_open{
  text-align: center;
  margin-bottom: 20px;
}
.Separate_open img,
.Separate_close img{
  width: 36px;
}

.Separate_open:hover,
.Separate_close:hover{
  opacity: 0.6;
  transition: 0.3s;
}

.Separate_before{
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  padding: 50px 0px;
}
.Separate_before_inner{
  padding: 0 20px;
}
.Separate_before_img{
  max-width: 500px;
  margin: 0 auto;
  padding: 0 20px;
}
.Separate_after{
  position: absolute;
  top:0;
  left:0;
  width:100%;
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  z-index:2;
  background: #000;
  padding-top: 50px;
  }

.Separate_after_inner{
  padding: 0 0 50px 0;
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}
.Separate_after_txtinner{
  padding: 0 20px;
}
.Separate_close{
  position: absolute;
  top: 0px ;
  right: 40px;
  z-index: 10;
}

.Separate_after.is_show{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transition:opacity .8s ease;
}
.Separate_movie{
  max-width:500px;
  margin:0 auto 20px auto;
  aspect-ratio:9/14.4;
  padding: 0 20px;
  position: relative;
}

.Separate_movie video{
  width:100%;
  height:100%;
  display:block;
}

.Separate_movie_img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  padding: 0 20px;
  box-sizing: border-box;
  object-fit: cover;
}



.Separate_ttl{
  font-size: 2.8rem;
  font-weight: 600;
  text-align: center;
  margin-bottom: 20px;
}


.btn_rotate{
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
  z-index: 10;
  background: url("../images/lp/icon_rotate-2.svg?2") no-repeat 0 0;
  background-size: 100%;
  width: 30px;
  height: 30px;
  cursor: pointer;
}

.btn_rotate.btn_rotate_on{
  background-image:url("../images/lp/icon_rotate-1.svg?2");
}

.rotate_img_box{
  background: #000;
  max-width: 980px;
  overflow: hidden;
  margin: 0 auto 20px auto;

}

.rotate_img_box_inner{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.rotate_img_box_inner video {
  opacity: 0;
  transition: opacity 0.5s ease;
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  object-fit:cover;
}

.rotate_img.is-active {
  opacity: 1;
}

.rotate_img_yoko{
  position: relative;
}

.bg_gr{
  padding: 50px 0;
  color: #333;
  background: #e3e3e3
}

    @media screen and (max-width:767px){
      .Separate_after_inner{
        padding: 0 0 20px 0;}
      .Separate_close{
        top: -35px;
        right: 10px;
      }
      .Separate_movie_img.is-visible {
        opacity: 1;
      }
      .Separate_ttl{
        font-size: 1.6rem;
      }
      .bg_gr{
        padding: 30px 0;}

      .Separate_before{
        padding: 50px 0 50px 0;
      }
      .Separate_after{
        padding-top: 50px;
      }
      .rotate_img_box_inner{
        padding-top: 100%;}
  }

/*Separate_info_slider////////////////////*/
.Separate_info_slider{
  padding: 30px 0 50px 0;
}
.Separate_info_box{
  background: #FFF;
  color: #000;
  box-sizing: border-box;
  padding: 20px 40px;}

.Separate_info_txt{
  margin-bottom: 20px;
}

.Separate_info_ttl{
  font-size: 2.4rem;
  font-weight: 600;
}
.Separate_info_number{
  font-size: 3rem;
  font-weight: 600;
  margin-right: 10px;
  vertical-align: -2px;
}

.Separate_info_slider .slick-list{
  overflow: visible;
  padding: 0 !important;
}


.Separate_info_slider .slick-slide{
  padding: 0 30px;
  height: auto !important;
}
.Separate_info_slider .slick-slide div{
  height: 100% !important;
}
.Separate_info_slider .slick-track {
  display: flex;
}

.Separate_info_slider .slick-dots{
  bottom: 5px;
}

.Separate_info_slider .slick_arrow.arrow_prev{left: 40%;}
.Separate_info_slider .slick_arrow.arrow_next{right: 40%;}


    @media screen and (max-width:767px){
      .Separate_info_box{
        padding: 10px;}

      .Separate_info_ttl{
        font-size: 1.6rem;
      }
      .Separate_info_number{
        font-size: 2rem;}

      .Separate_info_slider .slick-slide{
        padding: 0 20px 0 0;}

      .Separate_info_slider .slick_arrow.arrow_prev{left: 25%;}
      .Separate_info_slider .slick_arrow.arrow_next{right: 25%;}

    }

/*link_10thlp//////////////////////////*/
.link_10thlp{
  max-width: 1290px;
  margin: 0 auto;
  position: relative;
}
.link_10thlp_logo{
  position: absolute;
  top: 50px;
  left: 50px;
}
.link_10thlp_logo img{
  width: 90px;
}

.link_10thlp_txt{
  position: absolute;
  /* Prevent the CTA from rising too far on ultra-wide viewports. */
  bottom: clamp(24px, 5vw, 64px);
  left: 0;
  text-align: center;
  width: 100%;
}
.link_10thlp_arrow{
  margin-top: 5px;

}
.link_10thlp_arrow span,
.link_10thlp_arrow a{
  position: relative;
  display: inline-block;
  font-size: 1.8rem;
  font-weight: 600;
  padding-right: 20px;
}
  .slick_item .link_10thlp_arrow a{color: #333; font-size: 1.6rem; font-weight: 400;}

.link_10thlp_arrow span:after,
.link_10thlp_arrow a:after{
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-top: 2px solid #FFF;
  border-right: 2px solid #FFF;
  position: absolute;
  right: -5px;
  top: 50%;
  transform: rotate(45deg) translateY(-50%);
  animation: arrow-right 0.5s ease infinite alternate;
}

  .slick_item .link_10thlp_arrow a:after{border-color:  #333;}

 @keyframes arrow-right {
  0% {
    transform: translateX(0) translateY(-50%) rotate(45deg);
  }
  100% {
    transform: translateX(-5px) translateY(-50%) rotate(45deg);
  }
}


  @media screen and (max-width:767px){
    .link_10thlp_img{
      background:#171717;
    }
    .link_10thlp_img img{
      max-width: 140%;
      margin-left: -20%;
    }

    .link_10thlp_arrow span{
      font-size: 1.4rem;
      padding-right: 10px;}

    .link_10thlp_arrow span:after{
      width: 6px;
      height: 6px;}

    .link_10thlp_txt{
      bottom: 30px;}
    .link_10thlp_txt a{
      position: relative;
      display: inline-block;
    }
    .link_10thlp_logo{
       position: absolute;
       bottom: -20px;
       left: 0;
    }
    .link_10thlp_logo{
      position: absolute;
      top: 0;
      left: 30px;
    }
    .link_10thlp_logo img{
      width: 50px;
    }
  }
