@charset "utf-8";
body.top #contents section a {
    color: #009672; }
  body.top #contents .btn a {
    font-size: 2.344vw;
    letter-spacing: 0.06em;
    color: #fff;
    display: flex;
    width: 18.945vw;
    height: 8.008vw;
    text-align: center;
    border: 1px solid #5e5e5e;
    justify-content: center;
    align-items: center; }
  body.top #contents a.moviemodal {
    position: relative;
    display: block;
    overflow: hidden; }
    body.top #contents a.moviemodal i {
      display: block;
      background: url("/assets/live_202510_tw/img/top/btn_play.png") no-repeat center center/14.648vw 14.648vw;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      z-index: 1; }
      body.top #contents a.moviemodal i::before {
        content: '';
        background: url("/assets/live_202510_tw/img/top/mask_movie.png") no-repeat center center/100% 100%;
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        z-index: 0; }


.block_content {
    position: relative;
    padding-bottom: 4vw;
}
.block_content:before {
    content: "";
    width: 100%;
    height: calc(100% - 114.844vw);
    background-repeat: repeat-y;
    background-size: 100% auto;
    background-position: center top;
    background-image: url("/assets/live_202510_tw/img/bg_modal_base_middle.png");
    position: absolute;
    top: 37.227vw;
    left: 0;
  }
.block_content .bg:before {
    content: "";
    width: 100%;
    height: 40.723vw;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center top;
    background-image: url("/assets/live_202510_tw/img/bg_modal_base_top.png");
    position: absolute;
    left: 0;
    top: 0;
    z-index: 10;
}
.block_content .bg:after {
    content: "";
    width: 100%;
    height: 74.707vw;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-image: url("/assets/live_202510_tw/img/bg_modal_base_bottom.png");
    position: absolute;
    left: 0;
    bottom: 2.9vw;
    z-index: 10;
  }
.block_content .bg .secwrap {
    position: relative;
    padding: 5.1vw 5.859vw 14vw;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center top;
    z-index: 100;
  }
.block_content .bg .secwrap:after {
    display: none;
}
.block_content .bg .bg_pict {
    position: absolute;
    left: 0;
    top: 0;
    z-index: 11;
    zoom: 1;
  }
.block_content .bg .bg_pict img {
    width: 100%;
  }

.edit {
  background-color: #d2cdc533;
  border-radius: 2.8vw;
  padding: 0.2vw 2vw 2vw ;
}
.edit_2 {
  background-color: #d2cdc533;
  border-radius: 1.8vw;
  padding: 3.6vw 3vw;
  margin: 3vw 0;
  }
.edit ol {
  margin: 0 0 6vw; }
.edit_2 ol {
  margin-top: 4vw; }

  body.top #contents .about,
  body.top #contents .movie,
  body.top #contents .ticket,
  body.top #contents .info,
  body.top #contents .cast,
  body.top #contents .goods {
    margin: 0 4vw 0;
    padding-top: 2.113vw;
    text-align: left;
    position: relative;
    z-index: 30; }
  body.top #contents .date {
    margin: 0 4vw 2vw;
    padding-top: 12.113vw;
    text-align: center;
    position: relative;
    z-index: 30;
    background: url("/assets/live_202510_tw/img/bg_intro.png") no-repeat center bottom/auto;
    background-size: contain; }
  body.top #contents .intro {
    margin: 0 4vw;
    padding: 7.5vw 0 10vw;
    text-align: left;
    position: relative;
    z-index: 30; }
    body.top #contents .intro h2,
    body.top #contents .cast h2,
    body.top #contents .goods h2,
    body.top #contents .movie h2,
    body.top #contents .ticket h2,
    body.top #contents .about h2 {
      content: '';
      height: 18vw;
      font-size: 11.012vw;
      color: #0a0a0a;
      letter-spacing: 0.01em;
      line-height: 2.0em;
      text-align: center;
      margin: 0; }
    body.top #contents .about h2 { 
      background: url("/assets/live_202510_tw/img/bg_h2_about@sp.png") center no-repeat;
      background-size: 105% 65%; }
    body.top #contents .ticket h2 { 
      background: url("/assets/live_202510_tw/img/bg_h2_ticket@sp.png") center no-repeat;
      background-size: 105% 65%; }
    body.top #contents .cast h2 { 
      background: url("/assets/live_202510_tw/img/bg_h2_cast@sp.png") center no-repeat;
      background-size: 105% 65%; }
    body.top #contents .goods h2 { 
      background: url("/assets/live_202510_tw/img/bg_h2_goods@sp.png") center no-repeat;
      background-size: 105% 65%; }

    body.top #contents .about h3,
    body.top #contents .ticket h3,
    body.top #contents .cast h3,
    body.top #contents .goods h3,
    body.top #contents .info h3,
    body.top #contents .movie h3 {
      color: #fff;
      font-size: 3.6vw;
      line-height: 1.6em;
      background-color: #736662;
      border-radius: 70px;
      padding: 0 12px;
      margin: 4.5vw auto 3vw;
      letter-spacing: 0.05em; }
    body.top #contents .about h3 {
      letter-spacing: 1px; }
    body.top #contents .intro h3 {
      font-size: 3.4vw;
      color: #0a0a0a;
      letter-spacing: 0.05em;
      line-height: 7.1vw;
      margin: 0 0 4.102vw; }
    body.top #contents .intro h4,
    body.top #contents .about h4,
    body.top #contents .movie h4,
    body.top #contents .ticket h4,
    body.top #contents .cast h4,
    body.top #contents .goods h4 {
      font-size: 3.0vw;
      color: #0a0a0a;
      letter-spacing: 0.02em;
      line-height: 2.1vw;
      margin: 1vw 0; }
    body.top #contents .info h4 {
      font-size: 3.0vw;
      color: #0a0a0a;
      letter-spacing: 0.02em;
      line-height: 2em;
      margin: 3vw 0 0; }
    body.top #contents .info h5 {
      font-size: 3.6vw;
      color: #0a0a0a;
      letter-spacing: 0.02em;
      line-height: 2em;
      margin: 8vw 0 0; }
      body.top #contents h4 span {
      border-radius: 30px;
      padding: 0px 17px 1px;
      letter-spacing: 0.02em; }
      body.top #contents h4 span.gr {
      color: #332323;
      background-color: #e3dbd4; }
      body.top #contents h4 span.bl {
      color: #fff;
      background-color: #7d6f61; }


    body.top #contents .intro p + h4,
    body.top #contents .about p + h4,
    body.top #contents .movie p + h4,
    body.top #contents .ticket p + h4,
    body.top #contents .cast p + h4,
    body.top #contents .goods h4 {
      margin-top: 4.469vw; }
    body.top #contents .intro p,
    body.top #contents .about p,
    body.top #contents .movie p,
    body.top #contents .ticket p,
    body.top #contents .info p,
    body.top #contents .cast p {
      position: relative;
      font-size: 2.8vw;
      line-height: 5.16vw;
      letter-spacing: 0.02em;
      margin-top: 3.883vw; } 
    body.top #contents .goods p {
      position: relative;
      font-size: 2.6vw;
      line-height: 5.16vw;
      letter-spacing: 0.02em;
      margin-top: 3.883vw; } 
    body.top #contents p span {
      /*font-size: 22px;
      line-height: 30px;*/
    }

    body.top #contents ol {
      background-color: #ffffffb5;
      display: block;
      padding: 2vw 3vw;
      border-radius: 3vw; }
    body.top #contents .about ol li,
    body.top #contents .ticket ol li,
    body.top #contents .info ol li {
      position: relative;
      list-style: none;
      font-size: 3vw;
      line-height: 2.0em;
      letter-spacing: 0.02em;
      margin: 2vw 0 2vw 1em; }
    body.top #contents .about ol li i {
      position: relative;
      list-style: none;
      margin-left: 4vw;}
    body.top #contents .about ol li::before,
    body.top #contents .ticket ol li::before {
      content: "・";
      margin-left: -1em; }
    body.top #contents .info ol li::before {
      content: "・";
      margin-left: -1em; }

    body.top #contents .date img {
      width: 91.614vw;
      margin: 0 auto; }

    body.top #contents .intro {
      text-align: center; }
    body.top #contents .intro h1 {
      font-size: 5.4vw;
      line-height: 1.8em;
      letter-spacing: 0.08em;
      text-align: center;
      margin: 7vw auto 2.5vw; }
    body.top #contents .intro .intro_txt {
      padding: 1vw; }

    body.top #contents .about p.acsta {
      font-size: 2.4vw;
      text-align: center;
      line-height: 4.4vw;
      margin-top: 3.4vw; }
    body.top #contents .about p.title {
      font-size: 2.4vw;
      text-align: center;
      line-height: 0;
      margin-top: 10vw; }

    body.top #contents .ticket h4 + ul,
    body.top #contents .ticket h4 + ol {
      margin-top: 3.883vw; }
    body.top #contents .ticket h5{
      font-size: 5.012vw;
      color: #0a0a0a;
      letter-spacing: 0.01em;
      line-height: 2.2em;
      text-align: center;
      margin: 9.469vw 0 3.102vw;
      background: url(/assets/live_202510_tw/img/bg_h2.png) center no-repeat;
      background-size: 170% 100%; }
    body.top #contents .ticket p {
      padding-bottom: 4.395vw; }
    body.top #contents .ticket ol {
      /*margin: 0 0 6vw;*/ }
    body.top #contents .ticket ol p {
      margin-bottom: 0; }
    body.top #contents .ticket ol span {
      font-size: 2.3vw; }
    body.top #contents .ticket ol.num li::before {
      content: " ";
      margin-left: -1em; }
    body.top #contents .ticket ol.p_list {
      background-color: unset;
      display: block;
      padding: 0;
      margin: 8vw 0 8vw 1vw; }
    body.top #contents .ticket ol.p_list li {
      position: relative;
      list-style: none;
      font-size: 2.8vw;
      line-height: 5.16vw;
      margin: 0 0 0 2vw;
      letter-spacing: 0.02em; }
    body.top #contents .ticket ol.p_list li::before {
      content: "・";
      margin-left: -1em; }
    body.top #contents .ticket ol.p_list p {
      padding-bottom: 0.5em; }
    body.top #contents .ticket img {
      width: 71.614vw;
      margin: 0 auto;}

    body.top #contents .goods h6 {
      font-size: 4.9vw;
      color: #a38e82;
      letter-spacing: 0.05em;
      line-height: 2em;
      margin: 14.469vw 0;
      text-align: center; }
    body.top #contents .goods a:hover img {
      filter: brightness(1.0);
      transition: 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      opacity: 0.7; }

    body.top #contents .info .edit {
      padding-bottom: 3vw; }
    body.top #contents .info .edit + .edit {
      margin-top: 4vw;
}

    body.top #contents .movie p {
      padding-bottom: 4.395vw; }
    body.top #contents .movie ul {
      display: flex;
      flex-wrap: wrap;
      color: #0a0a0a;
      justify-content: center;
      margin-top: 12.988vw; }
      body.top #contents .movie ul li {
        width: 50%;
        text-align: center;
        font-size: 3.125vw;
        letter-spacing: 0.18em; }
        body.top #contents .movie ul li small {
          font-size: 2.637vw;
          color: #d43241;
          display: block;
          margin-top: 2.441vw; }
      body.top #contents .movie ul li:nth-child(n+3) {
        margin-top: 4.883vw; }
    body.top #contents .movie ul + p {
      padding: 7.813vw 0 10.059vw;
      line-height: 1; }
    body.top #contents .movie .youtube {
      padding-bottom: 3.418vw; }
    body.top #contents .movie .youtube a {
      width: 77.769vw;
      border: 1px solid #c0c0c0;
      height: 12.337vw;
      background: url("/assets/live_202510_tw/img/top/btn_youtube.png") no-repeat left top/100% 100%;
      color: #0a0a0a;
      letter-spacing: 0.02em;
      font-size: 2.827vw;
      display: flex;
      margin: 0 auto;
      justify-content: flex-end;
      align-items: center;
      padding: 0 4.36vw 0 0; }

  body.top #contents .story {
    height: 317.188vw;
    position: relative;
    color: #000;
    text-align: center;
    padding: 33.203vw 0 0;
    z-index: 50; }
    body.top #contents .story .bg {
      position: absolute;
      left: 0;
      top: 0; }
    body.top #contents .story h2 {
      font-size: 12.012vw;
      letter-spacing: 0.1em;
      padding-bottom: 3.418vw; }
    body.top #contents .story p {
      font-size: 3.613vw;
      line-height: 2;
      letter-spacing: 0.14em; }
    body.top #contents .story p em {
      color: #d43241;
      line-height: 1; }
    body.top #contents .story p b {
      font-size: 6.543vw;
      line-height: 1; }
    body.top #contents .story p b em {
      font-size: 4.59vw; }
    body.top #contents .story p + p {
      margin-top: 7.031vw; }

  body.top #contents .game {
    text-align: center;
    position: relative;
    width: 100%;
    height: auto;
    color: #000;
    z-index: 30;
    padding: 16.0vw 0;
    overflow: hidden; }
    body.top #contents .game h2 {
      font-size: 12.012vw;
      letter-spacing: 0.1em;
      padding-bottom: 5.273vw; }
    body.top #contents .game p {
      font-size: 3.613vw;
      letter-spacing: 0.1em; }
    body.top #contents .game .bg {
      position: absolute;
      left: 0;
      top: 0;
      z-index: -1; }
    body.top #contents .game::before {
      content: '';
      height: 9.766vw;
      width: 100%;
      position: absolute;
      right: 50%;
      top: 0;
      z-index: 50; }
    body.top #contents .game::after {
      content: '';
      height: 9.766vw;
      width: 100%;
      position: absolute;
      left: 50%;
      top: 0;
      z-index: 50; }
/*スライダーの設定*/
  body.top #contents .game .slider_pict {/*横幅94%で左右に余白を持たせて中央寄せ*/
    width: 100%;
    margin: 10px auto -20px;}
  body.top #contents .game .slider_text {/*横幅94%で左右に余白を持たせて中央寄せ*/
    width: 100%;
    margin: 0 auto;}
  body.top #contents .game .cover {/*SP用対策…テキストスライダーのスワイプ操作不可に*/
    display: none;}
  body.top #contents .game .cover img {
    width:100%;
    height:100%;
    pointer-events: none;
    z-index: 10001;}
  body.top #contents .game .slider_pict img,
  body.top #contents .game .slider_pict video{
    width: 80vw;/*スライダー内の画像を80vwにしてレスポンシブ化*/
    height: auto;}
  body.top #contents .game .slider_text img {
    width: 90vw;/*スライダー内の画像を80vwにしてレスポンシブ化*/
    height: auto;
		margin: 0 5.6vw;}
  body.top #contents .game .slider_pict div.txt_ss {
    position: relative;
    display: block;
    height: 30px;
    width: 100%;
    text-align: right;
    padding: 5px 0;
    font-size: 2.0vw;
    color: #333;}
  body.top #contents .game .slider_text p {
    display: block;
    text-align: left;
    line-height: 1.4em;
    width: 80vw;/*スライダー内の画像と同じ幅*/
    height: auto;
		margin: 0 1.1vw;
    font-size: 3.0vw;}
  body.top #contents .game .slider_pict .slick-slide {
    transform: scale(0.8);/*左右の画像のサイズを80%に*/
    transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
    opacity: 0.5;/*透過50%*/}
  body.top #contents .game .slider_pict .slick-slide.slick-center{
    transform: scale(1);/*中央の画像のサイズだけ等倍に*/
    opacity: 1;/*透過なし*/
    margin: 0 -1.8vw;}
  body.top #contents .game .slider_pict a.moviemodal i::before {
    background: none;/*スライダー内の動画の枠を非表示に*/}
  body.top #contents .game .slider_pict .slick-slide:focus,
  body.top #contents .game .slider_text .slick-slide:focus {
    outline: none;/*スライドタップ時の青いアウトラインを消す*/}
/*矢印の設定*/
/*戻る、次へ矢印の位置*/
  body.top #contents .game .slick-prev, 
  body.top #contents .game .slick-next {
    position: absolute;/*絶対配置にする*/
    top: 41%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    outline: none;/*クリックをしたら出てくる枠線を消す*/
    border-top: 2px solid #666;/*矢印の色*/
    border-right: 2px solid #666;/*矢印の色*/
    height: 4vw;
    width: 4vw;
    z-index: 10001;
    display: none !important;}
  body.top #contents .game .slick-prev {/*戻る矢印の位置と形状*/
    left: 4.0%;
    transform: rotate(-135deg);}
  body.top #contents .game .slick-next {/*次へ矢印の位置と形状*/
    right: 4.0%;
    transform: rotate(45deg);}
/*ドットナビゲーションの設定*/
  body.top #contents .game .slick-dots {
    text-align: center;
  	margin: 5.5vw 0 0;}
  body.top #contents .game .slick-dots li {
    display:inline-block;
  	margin: 0 5px;}
  body.top #contents .game .slick-dots button {
    color: transparent;
    outline: none;
    width: 7px;/*ドットボタンのサイズ*/
    height: 14px;/*ドットボタンのサイズ*/
    display: block;
    border-radius: 50%;
    background: #ccc;/*ドットボタンの色*/
    border: none;
    font-size: 2.0vw;}
  body.top #contents .game .slick-dots .slick-active button{
    background: #333;/*ドットボタンの現在地表示の色*/}


@media screen and (min-width: 1024px) and (max-width: 1600px) {
  /* PC */
  body.top #contents .date {
    padding-top: 10vw; }
}

/*
@media screen and (min-width: 1281px) {
  /* PC *
}

@media screen and (min-width: 1281px) and (max-width: 1600px) {
  /* PC *
}*/

@media screen and (min-width: 1601px) {
  /* PC */
  body.top #contents .btn a {
    font-size: 14px;
    width: 110px;
    height: 46px;
    transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
  body.top #contents .btn a:hover {
    background-color: rgba(255, 255, 255, 0.2);
    transition: 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
  body.top #contents a.moviemodal {
    display: block;
    overflow: hidden;
    box-shadow: 0 0 24px rgba(255, 107, 55, 0);
    transition: 0.45s;
    backface-visibility: hidden;
    width: 100%;
    margin: 0 auto;}
    body.top #contents a.moviemodal i {
      background: url("/assets/live_202510_tw/img/top/btn_play.png") no-repeat center center/auto 84px;
      transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
    body.top #contents a.moviemodal img {
      transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
      backface-visibility: hidden; }
    body.top #contents a.moviemodal:hover img {
      transform: scale(1.12);
      transition: 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
    body.top #contents a.moviemodal:hover i {
      filter: brightness(1.3);
      transition: 0.45 cubic-bezier(0.25, 0.46, 0.45, 0.94); }
    body.top #contents a.moviemodal:hover {
      box-shadow: 0 0 24px rgba(255, 107, 55, 0.5);
      transition: 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94); }


.block_content {
    position: relative;
    width: 1200px;
    margin: 0 auto;
    cursor: auto;
    padding-bottom: 100px;
}
.block_content:before {
    display:none;
  }
.block_content .bg {
    position: relative;
    padding-bottom: 100px;
  }
.block_content .bg:before {
    background-image:url(/assets/live_202510_tw/img/bg_modal_base_top@pc.png);
    height: 100px;
}
.block_content .bg:after {
    content: "";
    width: 100%;
    height: 100px;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center bottom;
    background-image: url("/assets/live_202510_tw/img/bg_modal_base_bottom@pc.png");
    position: absolute;
    left: 0;
    bottom: -100px;
    z-index: 11;
  }
.block_content .bg .secwrap {
    background-image: url("/assets/live_202510_tw/img/bg_modal_base_middle@pc.png");
    background-repeat: repeat-y;
    padding: 50px 100px;
    top: 100px;
    z-index: 10;
  }


.block_content .bg .bg_pict {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 11;
  width: 1200px;
  height: 1024px;
  }
.block_content .bg .bg_pict img {
  width: 1200px;
  height: 1024px;
  }

  
.edit {
  background-color: #d2cdc533;
  border-radius: 50px;
  padding: 20px 50px;
}
.edit_2 {
  border-radius: 20px;
  padding: 30px 58px 1px;
  margin: 38px 0;;
  }
.edit ol {
  margin: 0 0 40px; }
.edit_2 ol {
  margin-top: 0; }


  body.top #contents .cast,
  body.top #contents .goods,
  body.top #contents .movie,
  body.top #contents .ticket,
  body.top #contents .about,
  body.top #contents .info {
    display: block;
    position: relative;
    width: 1200px;
    margin: 0 auto 100px;
    padding: 0;
    text-align: left;
    overflow: hidden; }
  body.top #contents .date {
    display: block;
    position: relative;
    width: 1600px;
    padding: 0;
    text-align: center;
    overflow: hidden;
    margin: -220px auto 50px;
    background: url("/assets/live_202510_tw/img/bg_intro.png") no-repeat center bottom/auto; }
  body.top #contents .intro {
    display: block;
    position: relative;
    width: 1200px;
    margin: 90px auto;
    padding: 0;
    text-align: center;
    overflow: hidden; }
    body.top #contents .intro h2,
    body.top #contents .cast h2,
    body.top #contents .goods h2,
    body.top #contents .movie h2,
    body.top #contents .ticket h2,
    body.top #contents .about h2 {
      width: 100%;
      height: 110px;
      font-size: 70px;
      letter-spacing: 0.01em;
      text-align: center;
      margin: -70px auto 30px; }
    body.top #contents .about h2 { 
      background: url("/assets/live_202510_tw/img/bg_h2_about.png") center no-repeat;
      background-size: 107% 100px; }
    body.top #contents .ticket h2 { 
      background: url("/assets/live_202510_tw/img/bg_h2_ticket.png") center no-repeat;
      background-size: 107% 100px; }
    body.top #contents .cast h2 { 
      background: url("/assets/live_202510_tw/img/bg_h2_cast.png") center no-repeat;
      background-size: 107% 100px; }
    body.top #contents .goods h2 { 
      background: url("/assets/live_202510_tw/img/bg_h2_goods.png") center no-repeat;
      background-size: 107% 100px; }
    body.top #contents .cast h3,
    body.top #contents .goods h3,
    body.top #contents .movie h3,
    body.top #contents .ticket h3,
    body.top #contents .about h3 {
      color: #fff;
      font-size: 32px;
      line-height: 1.6em;
      background-color: #736662;
      border-radius: 70px;
      padding: 4px 27px;
      margin: 30px auto; }
    body.top #contents .intro h3 {
      font-size: 30px;
      line-height: 2.42em;
      margin: 10px auto 30px;
      letter-spacing: 0.15em; }
    body.top #contents .about h3 {
      letter-spacing: 1px; }
    body.top #contents .info h3 {
      font-size: 36px;
      line-height: normal;
      margin: -40px auto 40px; }
    body.top #contents .intro h4,
    body.top #contents .cast h4,
    body.top #contents .goods h4,
    body.top #contents .movie h4,
    body.top #contents .ticket h4,
    body.top #contents .about h4 {
      font-size: 24px;
      line-height: 1.0em;
      margin: 0 0 30px; }
    body.top #contents .info h4 {
      font-size: 24px;
      line-height: 1.0em;
      margin: 80px 0 20px; }
    body.top #contents .info h5 {
      font-size: 24px;
      line-height: 1.0em;
      margin: 80px 0 20px; }
      body.top #contents h4 span {
      color: #332323;
      background-color: #e3dbd4;
      border-radius: 10px;
      padding: 3px 26px;
      letter-spacing: 0.02em; }
      body.top #contents h4 span.gr {
      color: #332323;
      background-color: #e3dbd4;
      padding: 3px 26px; }
      body.top #contents h4 span.bl {
      color: #fff;
      background-color: #7d6f61;
      padding: 1px 26px 3px; }
    body.top #contents .intro p + h4,
    body.top #contents .cast p + h4,
    body.top #contents .goods p + h4,
    body.top #contents .movie p + h4,
    body.top #contents .about p + h4,
    body.top #contents .info p + h4 {
      margin-top: 70px; }
    body.top #contents .ticket p + h4 {
      margin-top: 50px; }
    body.top #contents .intro p,
    body.top #contents .cast p,
    body.top #contents .goods p,
    body.top #contents .movie p,
    body.top #contents .ticket p,
    body.top #contents .about p,
    body.top #contents .info p {
      font-size: 18px;
      line-height: 36px;
      margin: 36px 0px 46px;
      letter-spacing: 2.0px; }
    body.top #contents p span {
      font-size: 22px;
      line-height: 30px; }

    body.top #contents ol {
      background-color: #ffffffb5;
      display: block;
      padding: 24px 60px 34px;
      border-radius: 18px; }
    body.top #contents .about ol li,
    body.top #contents .ticket ol li {
      position: relative;
      list-style: none;
      font-size: 24px;
      line-height: 38px;
      letter-spacing: 1.0px; 
      margin: 18px 0 0 12px; }
    body.top #contents .info ol li {
      position: relative;
      list-style: none;
      font-size: 18px;
      line-height: 32px;
      letter-spacing: 1.0px;
      margin:18px 0 0 0; }
    body.top #contents .about ol li::before,
    body.top #contents .ticket ol li::before,
    body.top #contents .info ol li::before {
      content: "・";
      margin-left: -1em; }

    body.top #contents .date img {
      width: 822px;
      margin: 0 auto;}

    body.top #contents .intro {
      text-align: center; }
    body.top #contents .intro h1 {
      font-size: 50px;
      line-height: 1.8em;
      letter-spacing: 0.15em;
      text-align: center;
      margin: 70px auto 10px; }
    body.top #contents .intro .intro_txt {
    padding: 20px 50px; }

    body.top #contents .about .add {
      margin-top: -165px; }
    body.top #contents .about p.acsta {
      font-size: 12px;
      line-height: 24px;
      margin-top: 18px;
      letter-spacing: 1.0px; }
    body.top #contents .about p.title {
      font-size: 18px;
      line-height: 10px;
      margin: 48px auto 0px;
      letter-spacing: 1.0px; }
  
    body.top #contents .ticket h4 + ul,
    body.top #contents .ticket h4 + ol {
      margin-top: 0; }
    body.top #contents .ticket h5 {
      font-size: 52px;
      margin: 100px 0 40px; }
    body.top #contents .ticket p {
      padding-bottom: 0; }
    body.top #contents .ticket ol {
      margin: 18px 0 36px; }
    body.top #contents .ticket ol p{
      margin-bottom: 0; }
    body.top #contents .ticket ol span {
      font-size: 18px; }
    body.top #contents .ticket ol.num li {
      margin: 18px 0 12px; }
    body.top #contents .ticket ol.num li::before {
      content: " ";
      margin-left: -1em; }
    body.top #contents .ticket ol.p_list {
      background-color: unset;
      display: block;
      padding: 0;
      margin: 80px 0; }
    body.top #contents .ticket ol.p_list li {
      position: relative;
      list-style: none;
      font-size: 18px;
      line-height: 32px;
      margin: 8px 0 0 20px;
      letter-spacing: 2.0px; }
    body.top #contents .ticket ol.p_list li::before {
      content: "・";
      margin-left: -1em; }
    body.top #contents .ticket ol.p_list p {
      padding-bottom: 0.5em; }
    body.top #contents .ticket img {
      width: 100%;
      margin: 0 auto;}

    body.top #contents .goods h6 {
        font-size: 52px;
        color: #a38e82;
        letter-spacing: 0.05em;
        line-height: 2em;
        margin: 80px 0;
        text-align: center;}

    body.top #contents .info .edit {
      padding: 20px 50px; }
    body.top #contents .info .edit + .edit {
      margin-top: 20px; }

    body.top #contents .movie a.moviemodal {
      width: 70%; }
    body.top #contents .movie p {
      padding-bottom: 0;
      margin-bottom: 30px; }
    body.top #contents .movie ul {
      margin-top: 0;
      width: 1024px;
      justify-content: center;
      margin: 45px auto 0; }
      body.top #contents .movie ul li {
        width: calc( 100% / 3);
        font-size: 22px; }
        body.top #contents .movie ul li small {
          font-size: 13px;
          margin-top: 13px; }
      body.top #contents .movie ul li:nth-child(n+3) {
        margin-top: 0; }
      body.top #contents .movie ul li:nth-child(n+4) {
        margin-top: 38px; }
    body.top #contents .movie ul + p {
      padding: 40px 0 65px;
      line-height: 1;
      font-size: 18px; }
    body.top #contents .movie .youtube {
      padding-bottom: 0; }
    body.top #contents .movie .youtube a {
      width: 551px;
      border: 1px solid #c0c0c0;
      height: 80px;
      background: url("/assets/live_202510_tw/img/top/btn_youtube@pc.png") no-repeat left top/100% 100%;
      font-size: 16px;
      padding-right: 52px;
      transition: 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
    body.top #contents .movie .youtube a:hover {
      background-color: rgba(255, 255, 255, 0.2);
      transition: 0.45s cubic-bezier(0.25, 0.46, 0.45, 0.94); }
  
  body.top #contents .story {
    height: 1399px;
    padding: 218px 0 0;
    position: relative;
    overflow: hidden; }
    body.top #contents .story::before {
      content: '';
      background: #cecece;
      height: 1192px;
      width: 100vw;
      position: absolute;
      right: 50%;
      top: 107px;
      z-index: 50;
      margin-right: 960px; }
    body.top #contents .story::after {
      content: '';
      background: #cecece;
      height: 1192px;
      width: 100vw;
      position: absolute;
      left: 50%;
      top: 107px;
      z-index: 50;
      margin-left: 960px; }
    body.top #contents .story .bg {
      position: absolute;
      left: 50%;
      top: 0;
      width: 1920px;
      height: auto;
      margin-left: -960px; }
    body.top #contents .story h2 {
      font-size: 77px;
      padding-bottom: 0;
      margin-bottom: 34px; }
    body.top #contents .story p {
      font-size: 19px;
      line-height: 36px; }
    body.top #contents .story p b {
      font-size: 29px;
      line-height: 1; }
    body.top #contents .story p b em {
      font-size: 19px; }
    body.top #contents .story p + p {
      margin-top: 26px; }

    body.top #contents .game {
      padding: 100px 0;
			margin-top: -101px;
      position: relative;
      width: 100%;
      min-width: 1024px;
      height: auto; 
      overflow: hidden;
      background: url("/assets/live_202510_tw/img/top/bg_game@pc.jpg") no-repeat center center/cover; }
    body.top #contents .game h2 {
      font-size: 77px;
      padding-bottom: 15px;
      background: url("/assets/live_202510_tw/img/top/bg_border-game@pc.png") no-repeat center bottom; }
    body.top #contents .game p {
      font-size: 23px;
      line-height: 1;
      margin-top: 15px; }
    body.top #contents .game .bg {
      display: none; }
    body.top #contents .game::before {
      content: '';
      height: 866px;
      width: 100vw;
      position: absolute;
      right: 50%;
      top: 127px;
      z-index: 50;
      margin-right: 960px; }
    body.top #contents .game::after {
      content: '';
      height: 866px;
      width: 100vw;
      position: absolute;
      left: 50%;
      top: 127px;
      z-index: 50;
      margin-left: 960px; }
/*スライダーの設定*/
    body.top #contents .game .slider_pict{/*横幅94%で左右に余白を持たせて中央寄せ*/
      width: 100%;
      margin: 40px auto -20px;
      max-width: 4000px; }
    body.top #contents .game .slider_text {/*横幅94%で左右に余白を持たせて中央寄せ*/
      width: 100%;
      margin: 0 auto;
      max-width: 4000px; }
  body.top #contents .game .cover {/*SP用対策*/
      display: none; }
    body.top #contents .game .slider_pict img,
    body.top #contents .game .slider_pict video {
      width: 40vw;/*スライダー内の画像を40vwにしてレスポンシブ化*/
      height: auto;
      margin: 0 4.4vw;}
    body.top #contents .game .slider_text img {
      width: 34vw;/*スライダー内の画像を40vwにしてレスポンシブ化*/
      height: auto;
      margin: 0 8.4vw;}
    body.top #contents .game .slider_pict div.txt_ss {
      position: relative;
      display: block;
      height: 20px;
      width: 100%;
      text-align: right;
      padding: 5px 4.2vw;
      font-size: 0.5vw;
      color: #333;}
    body.top #contents .game .slider_text p {
      display: block;
      text-align: left;
      line-height: 1.4em;
      width: 50vw;
      height: auto;
      margin: 0px;
      font-size: 1.0vw;}
    body.top #contents .game .slider_pict .slick-slide,
    body.top #contents .game .slider_text .slick-slide,
    body.top #contents .game .slider_text p {
      transform: scale(0.8);/*左右の画像のサイズを80%に*/
      transition: all .5s;/*拡大や透過のアニメーションを0.5秒で行う*/
      opacity: 0.5;/*透過50%*/}
    body.top #contents .game .slider_pict .slick-slide.slick-center,
    body.top #contents .game .slider_text .slick-slide.slick-center {
      transform: scale(1);/*中央の画像のサイズだけ等倍に*/
      opacity: 1;/*透過なし*/}
    body.top #contents .game .slider_pict a.moviemodal:hover {
      box-shadow: none;/*発光なしに*/}
    body.top #contents .game .slider_pict a.moviemodal i {
      background-size: auto 150px;/*再生ボタンサイズ*/}
    body.top #contents .game .slider_pict a.moviemodal i::before {
      background: none;/*スライダー内の動画の枠を非表示に*/}
/*矢印の設定*/
/*戻る、次へ矢印の位置*/
    body.top #contents .game .slick-prev, 
    body.top #contents .game .slick-next {
      position: absolute;/*絶対配置にする*/
      top: 40%;
      cursor: pointer;/*マウスカーソルを指マークに*/
      outline: none;/*クリックをしたら出てくる枠線を消す*/
      border-top: 2px solid #666;/*矢印の色*/
      border-right: 2px solid #666;/*矢印の色*/
      height: 50px;
      width: 50px;
      z-index: 10000;
      display: block !important; }
    body.top #contents .game .slick-prev {/*戻る矢印の位置と形状*/
      left: 23.0%;
      transform: rotate(-135deg);}
    body.top #contents .game .slick-next {/*次へ矢印の位置と形状*/
      right: 23.0%;
      transform: rotate(45deg);}
/*ドットナビゲーションの設定*/
    body.top #contents .game .slick-dots {
      text-align: center;
      margin: 20px 0 0 0;}
    body.top #contents .game .slick-dots li {
      display: inline-block;
      margin: 0 5px;}
    body.top #contents .game .slick-dots button {	
      color: transparent;
      outline: none;
      width: 8px;/*ドットボタンのサイズ*/
      height: 12px;/*ドットボタンのサイズ*/
      display: block;
      border-radius: 50%;
      background: #ccc;/*ドットボタンの色*/
      border: none;}
    body.top #contents .game .slick-dots .slick-active button{
      background: #333;/*ドットボタンの現在地表示の色*/}

    body.top #contents [data-nexttrigger] {
    transform: scale(1.06) translateY(0);
    filter: blur(1px); }

}


@media screen and (min-width: 1921px) {
  /* PC */
    body.top #contents .game .slider_pict img,
    body.top #contents .game .slider_pict video,
    body.top #contents .game .slider_text img {
      width: 40vw;/*スライダー内の画像を60vwにしてレスポンシブ化*/
      max-width: 1000px !important;
      height: auto;
      margin: 0 13vw;}
    body.top #contents .game .slider_pict div.txt_ss {
      position: relative;
      display: block;
      height: 20px;
      width: 100%;
      text-align: right;
      padding: 5px 12.8vw;
      font-size: 0.5vw;
      color: #333;}
    body.top #contents .game .slider_text p {
      display: block;
      text-align: left;
      line-height: 1.4em;
      width: 41vw;
      height: auto;
      margin: 0 8.0vw;
      font-size: 0.8vw;}
    body.top #contents .game .slick-prev {/*戻る矢印の位置と形状*/
      left: 18%;
      transform: rotate(-135deg);}
    body.top #contents .game .slick-next {/*次へ矢印の位置と形状*/
      right: 18%;
      transform: rotate(45deg);}
}



/*h2 各要素 最初は非表示*/
body.top #contents h2 span {
  display: none; } /*今回h2ではなくh1に適用*/
body.top #contents h1 span {
  /*display: none;*/ }

.top #contents [data-scale] h1 span {
  overflow: hidden; }
  .top #contents [data-scale] h1 span em {
    opacity: 0;
    transform: scale(1.2);
    filter: blur(1px);
    display: inline-block; }
.top #contents [data-scale] h1 + p.btn {
  opacity: 0;
  transform: scale(1.06);
  filter: blur(1px);
  display: inline-block; }
.top #contents [data-scale] header::before {
  opacity: 0; }
.top #contents [data-nexttrigger] {
  opacity: 0;
  transform: scale(1) translateY(2vw);
  filter: blur(1px); }

/*h1 span em　を１文字ずつずらして表示、文字数ぶん*/
.imgloaded .top #contents [data-scale].animated h1 span em {
  opacity: 1;
  transform: scale(1);
  filter: blur(0);
  transition: 0.1s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(2) em {
  transition: 1.5s 0.15s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(3) em {
  transition: 1.5s 0.28s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(4) em {
  transition: 1.5s 0.41s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(5) em {
  transition: 1.5s 0.54s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(6) em {
  transition: 1.5s 0.67s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(7) em {
  transition: 1.5s 0.8s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(8) em {
  transition: 1.5s 0.93s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(9) em {
  transition: 1.5s 1.06s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(10) em {
  transition: 1.5s 1.19s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(11) em {
  transition: 1.5s 1.32s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(12) em {
  transition: 1.5s 1.45s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(13) em {
  transition: 1.5s 1.58s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(14) em {
  transition: 1.5s 1.71s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(15) em {
  transition: 1.5s 1.84s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(16) em {
  transition: 1.5s 1.97s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(17) em {
  transition: 1.5s 2.10s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(18) em {
  transition: 1.5s 2.23s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(19) em {
  transition: 1.5s 2.36s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(20) em {
  transition: 1.5s 2.49s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h1 span:nth-of-type(20) em {
  transition: 1.5s 2.62s cubic-bezier(0.215, 0.61, 0.355, 1); }

/*h2+p.btn GAMEのスライドまわり*/
.imgloaded .top #contents [data-scale].animated h2 + p.btn {
  opacity: 1;
  filter: blur(0);
  transform: translateY(0);
  transition: 2s 0.9s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated h2 + p.btn[data-nextcount='1'] {
  transition-delay: 0.54s; }
.imgloaded .top #contents [data-scale].animated h2 + p.btn[data-nextcount='2'] {
  transition-delay: 0.67s; }

/*data-nexttrigger をずらして表示*/
.imgloaded .top #contents [data-scale].animated [data-nexttrigger] {
  opacity: 1;
  filter: blur(0);
  transform: translateY(0);
  transition: 1s 0.9s cubic-bezier(0.215, 0.61, 0.355, 1); }
.imgloaded .top #contents [data-scale].animated [data-nexttrigger][data-nextcount='0'] {
  transition-delay: 0.10s; }
.imgloaded .top #contents [data-scale].animated [data-nexttrigger][data-nextcount='1'] {
  transition-delay: 1.10s; }
.imgloaded .top #contents [data-scale].animated [data-nexttrigger][data-nextcount='2'] {
  transition-delay: 0.41s; }
.imgloaded .top #contents [data-scale].animated [data-nexttrigger][data-nextcount='3'] {
  transition-delay: 0.41s; }
.imgloaded .top #contents [data-scale].animated [data-nexttrigger][data-nextcount='4'] {
  transition-delay: 0.41s; }
.imgloaded .top #contents [data-scale].animated [data-nexttrigger][data-nextcount='5'] {
  transition-delay: 0.41s; }
.imgloaded .top #contents [data-scale].animated [data-nexttrigger][data-nextcount='6'] {
  transition-delay: 0.41s; }
.imgloaded .top #contents [data-scale].animated [data-nexttrigger][data-nextcount='7'] {
  transition-delay: 0.41s; }

/*header::before をずらして表示…はせずに最初の表示だけ*/
.imgloaded .top #contents [data-scale].animated header::before {
  opacity: 1;
  transition: 1.5s 0.93s cubic-bezier(0.215, 0.61, 0.355, 1); }
