@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=League+Gothic&family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&family=Patua+One&family=Spectral+SC&display=swap');


body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td { margin: 0; padding: 0;}
body { overflow-x: hidden;font-family:"Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif; font-variant-east-asian: proportional-width;/*  font-feature-settings: "palt"; */font-weight: 400;font-style: normal;}
ul { list-style: none; }
fieldset,img { border: 0; vertical-align: middle; overflow: hidden; }
a{color: #cfcfcf;  cursor: pointer;text-decoration: none;}
a[href]:hover { color: #e60012; }
.tuline { text-decoration: underline; }
.clearfix { *zoom:1;}
.clearfix:after { visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; }
.clear { clear: both; display: block; height: 0; overflow: hidden; }
img{ max-width:100%;}

.hop08:hover{ opacity: 0.8; }

.color_whi{ color:#fff;}
.color_red02{ color:#a20303;}
.color_red{ color:#e60012;}
.color_ered{color: #e5001b;}
.color_pink{ color: #ec6d74;}
.color_yellow{ color: #f6e400;}
.color_inblue{ color: #1d4282;}
.color_upblue{ color: #00b1d4;}
.color_green{ color: #009754;}
.color_egreen{color: #8cca8e;}
.color_orge{ color: #ef8200;}
.color_cucu{ color: #852a8a;}
.color_gray{ color: #8b8c8b;}



.f14{font-size:14px;font-size:0.14rem;  line-height:145%; }
.f16{font-size:16px;font-size:0.16rem;  line-height:156%; }
.f18{font-size:18px;font-size:0.18rem;  line-height:156%; }
.f20{font-size:20px;font-size:0.2rem;  line-height:120%; }
.f22{font-size:22px;font-size:0.22rem;  line-height:120%; }
.f24{font-size:24px;font-size:0.24rem;  line-height:120%; }
.f36{font-size:36px;font-size:0.36rem;  line-height:120%; }
.f100{font-size:100px;font-size:1rem;  line-height:105%; }

.fsz70{font-size:70%;}
.fsz75{font-size:75%;}
.fsz80{font-size:80%;}
.fsz85{font-size:85%;}
.fsz110{font-size:1.1em;}
.fsz120{font-size:1.2em;}
.fsz150{font-size:1.5em;}
.fsz180{font-size:1.8em;}
.fsz200{font-size:2em;}

.ftume-005 { letter-spacing: -0.05em; }
.ftume-01 { letter-spacing: -0.1em; }
.ftume-015 { letter-spacing: -0.15em; }

.mt-15 { margin-top: 15px; }
.mt-30 { margin-top: 30px; }
.mt-50 { margin-top: 50px; }
.mt-70 { margin-top: 70px; }
.mt-100 { margin-top: 100px; }

.mb-10 { margin-bottom: 10px; }
.mb-15 { margin-bottom: 15px; }
.mb-30 { margin-bottom: 30px; }
.mb-50 { margin-bottom: 50px; }
.mb-70 { margin-bottom: 70px; }
.mb-100 { margin-bottom: 100px; }
  
.algin_center{text-align: center;}


.inner_ytbp{ position: relative; padding-bottom: 56.25%;  margin:1% 0 4% 0;}
.inner_ytbp iframe{ position: absolute; top: 0; left: 0; width: 100%;height: 100%; }

.an_scl{ opacity: 0; }
.pc_none{ display: none; }
.sp_none{ display: block; }

.wf-NotoSansJP{ font-family: "Noto Sans JP", sans-serif;}
.wf-NotoSerifJP{ font-family: "Noto Serif JP", sans-serif;}
.wf-EN{font-family: "League Gothic", sans-serif;font-optical-sizing: auto;font-weight: 400;font-style: normal; font-variation-settings:"wdth" 100;letter-spacing: 0.02em;}



.ytb_mob{ padding:0 0 3% 0;width:900px; max-width: 100%; margin:0 auto;box-sizing: border-box;}
.ytb_inst{ width: 100%; padding-bottom: 52.6%; position: relative;}
.ytb_inst iframe{ position: absolute; top: 0; left:0; width: 100%; height: 100%; }

:root{
  --htf: 100px;
  --bdf: 0.2rem;
  --mnH: 0;
  --ftH: 92px;


}



/******************************************************************/

html{ font-size:var(--htf);}
body{font-size:var(--bdf);line-height: 1.5;color:#fff;}


.headmob{ position: relative; z-index: 20;background:url("../images/bg.jpg") 0 0 repeat fixed;  }

.top_banner{position: relative; text-align: center; display: flex; flex-direction: column; min-height: 100vh;}
.tpx_ph{ padding: 5vh 0 0 0; width: 1200px; max-width: 100%; margin:0 auto; display: flex; align-items: center; justify-content: center; }
.tpx_ph img{ max-height: 65vh; width: auto; }
.tpx_uptime{max-width: 60%; width: 623px; margin: 0 auto; padding: 0 0 5vh 0;}



/* menu */
.menu_mob{width: 100%;margin: 0 auto; font-size:0.28rem; line-height: 100%; font-weight: bolder; letter-spacing: 0.05em; position: relative; padding: 0.5em 0 0.1rem 0; z-index: 20; margin-top: auto;  }/* 84px */
.menu_mob.pfix{ position: fixed; left: 0; top: 0;bottom:auto; z-index: 300;height: auto;background:url("../images/bg.jpg") 0 0 repeat; }
  .inner_mb{width: 100%;  margin: 0 auto; top: 0;display: flex; justify-content: center; align-items: center;}
  .menu_mob ul{ display: flex; justify-content: center; padding: 0 0.5em; }
  .menu_mob.pfix ul{ animation: msslid 0.45s both;  }

  .inner_mb ul li{ position: relative; margin: 0 2px; }
  .menu_inlist a{--cl:#fff;--atop: 100%;--aani:0.2s;--adel: 0.2s; --bani:0.2s; --bdel: 0s;--btran:0; background:#000; position: relative; display:block; color:var(--cl)!important;  padding:0.6em 0.7em;overflow: hidden; text-decoration: none;overflow: hidden;}
  .menu_inlist a span{position: relative; z-index: 10;}
  .menu_inlist a::after{content: ""; display: block;position: absolute; top:var(--atop); left: 0; bottom:-0.02rem; right: 0; box-sizing: border-box; box-shadow: inset 0 0 0 3em #e60012;  transition: top var(--aani) var(--adel); z-index: 1;}

  /*   .menu_mob ul::before{ content: ""; display: block; width: 4em; margin-left: -4em;margin-right:0.08em;background: #f39b03;border-radius: 0.2em;transform: skewX(-22deg);}
  .menu_mob ul::after{ content: ""; display: block; width: 4em; margin-left:0.1em;margin-right: -4em;background: #f39b03;border-radius: 0.2em;transform: skewX(-22deg);} */
  /* .menu_inlist a::before{content: ""; display: block;position: absolute; top:0.4em; left:0.4em;  right: 0.4em; transition: transform var(--bani) var(--bdel); transform: scaleX(var(--btran)); z-index:0; height: 0.2em; background: #fff5e8; border-radius: 99em;} */

  .menu_inlist li.sel a,.menu_inlist li a:hover{--atop: 0%;--btran: 1;--cl:#fff;
    --aani:0.4s;--adel: 0s;
    --bani:0.3s;--bdel: 0.3s;
  }


  .menu_mob::after{content: ""; display: block;position: absolute; bottom:0%; left:0%; width:100%;  height: 0.1rem; background: #e60012; z-index: 10; pointer-events: none; opacity: 1;}

/* menu */

/**/


@keyframes msslid {
  0%{ transform: translateY(10%); opacity: 0;}
  100%{transform: translateY(0); opacity: 1;}
}

.fadeUp{ animation: fadeUp 0.5s both; }
@keyframes fadeUp {
  0%{ transform: translateY(0.5rem); opacity: 0;}
  100%{transform: translateY(0); opacity: 1;}

}

.fadeIn{ animation: fadeIn 0.5s both; }
@keyframes fadeIn {
  0%{opacity: 0;}
  100%{opacity: 1;}

}



.wrap{position: relative; z-index: 2; padding-bottom: 105px; padding-top:var(--mnH); background-color: transparent;}
.wbg{ position:fixed; top: 0; left: 0; width: 100%; height: 100vh; overflow: hidden; z-index: 1; pointer-events: none; }
.mob_binner{ position: relative; z-index: 10; }



.mobinbg{display: block;position: absolute; top:var(--mnH); left:50%; height: calc(100vh); width: 92%; transform: translateX(-50%); background: #ff9016; border-radius: 0.2rem; }
  .bgstar01{ position: absolute; top: 0.4rem; left: -0.6rem; width: 6.9rem; opacity: 0.1; z-index: 1; }
  .bgstar02{ position: absolute; top: 0.2rem; right: 0.2rem; width: 3rem; opacity: 0.1; z-index: 1; }
  .bgstar03{ position: absolute; bottom: 0.3rem; right: 15.65%; width: 1.05rem; opacity: 0.1; z-index: 1; }




/* .menupx{
  --mnH: 84px;
  --ftH: 92px;
} */
.menupx .wrap{ padding-top:var(--mnH);}
.menupx .mobinbg{position: fixed; top:84px;height: calc(100vh - 84px - 92px); }
.menupx .menu_mob::after{opacity: 1;}

/* .menupx footer{position:fixed; bottom: 0; left: 0; width: 100%; z-index: 10;}
.menupx footer::before{content: ""; display: block;position: absolute; bottom:100%; left:50%; width:calc(92% - 0.8rem); transform: translateX(-50%); height: 0.1rem; background: #ff9016; z-index: 10; pointer-events: none;}
 */


  .mobin_pz{ position: relative; z-index: 10;width:84%; max-width: 1200px; margin: 0 auto; box-sizing:border-box; padding:0.4rem 0; }
    .in_tt{text-align: center; width: 500px; max-width:100%; margin: 0 auto 5em auto;padding-top: 7em; position: relative; display: flex;justify-content: center;align-items: center;}
    /* .in_tt::before{content: "";display: block; height: 2px; background: #000;flex-grow: 1;} */
    .in_tt::after{content: "";display: block;height:0.3em; width: 7em; background: #e60012; position: absolute; bottom:0; left:50%; transform: translateX(-50%) scaleX(0);}
    .fadeUp.in_tt::after{transform: translateX(-50%) scaleX(1); transition:transform 0.4s 0.8s;}

    .title_sl02{ text-align: center;--iscl: #e60012; color: var(--iscl);font-size: 1.5em; line-height: 1.1; margin: 2em 0 0.8em 0;  }
    .title_sl02 .tlins{ position: relative; display: inline-block; padding: 0.4em 0.2em;letter-spacing: 0.2em;}
    .title_sl02 .tlins::before,.title_sl02 .tlins::after{content: ""; font-weight: bold;  position: absolute; top: 0; left: 0; width: 100%;height: 2px; background-color: var(--iscl);}
    .title_sl02 .tlins::after{top: calc(100% - 2px);}
    .top-txcon{padding:1em;box-sizing:border-box; font-weight: 800;  display:inline-block; font-size: 2em;}


    .tt_en{ display: inline-block; position: relative; font-size:2.4em; line-height: 1.1; padding: 1.1em 0 0.4em 0; position: absolute; top: 0; left:50%;transform: translateX(-50%); letter-spacing: 0.2em; font-weight: 600; }
    .tt_jp{letter-spacing: 0.15em;padding: 0 0.5em; font-weight: 400;}
    .title_time{ text-align: center; color: #e60012; font-size: 1.8em; line-height: 1; font-weight: 800; }
      .txfb{ font-size: 0.6em; display: inline-grid; place-items: center; width: 1.4em; height: 1.4em; /* border: 2px solid #e60012;  vertical-align: middle;*/ margin: 0 1em 0 0.2em; letter-spacing: 0; font-variant-east-asian: full-width; font-feature-settings: normal; box-sizing: border-box; position: relative; top: -0.1em; }
    .text_time{text-align: center;font-weight: 700; padding: 0.5em 0;}
    .text_cont{width: 900px; max-width:100%;margin: 0 auto;}

    .andmore{text-align:right; font-family: "League Gothic", "Noto Sans JP", sans-serif; font-size:2em}




  /*news*/
  .news_inmob{position: relative;}
  .news_inmob .mobin_pz{  }


  .newsin_box{ width: 900px;max-width: 100%; margin: 0 auto; font-size:1em;  line-height: 150%; color: #000; padding-bottom: 4em;}
  .newsin_box li{ margin-bottom: 1em; padding-left: 6.5em; text-indent: -6em; border-left: 2px solid #e60012; }
    .newstime{padding-right: 0.8em;}
  .newsin_box li a{color: #fff;}
  .newsin_box li a:hover{color: #0888ac;}
  .news_inmob .inn_eds{background-color:#f5ac73; top: 0rem; bottom: -0.5rem; height:auto;transform: skewY(-5deg);transform-origin: 0 0;}

  .newspg .news_inmob{ padding:4% 8.33% 6% 8.33%; z-index: 3;}
  .newspg .mobin_txlin{ text-align:left; color:#000;background-color:rgba(255,255,255,0.7);}
  .newspg .ne_inmob{ padding-bottom:5%; }
  .newspg .nw_tit{ text-align:center; font-weight:bold;}
  .newsline{height:0.5em; background:#ffd0a8;margin:0.5em 0;}

  .newspage .text_cont{background: rgba(0, 0, 0, 1);border: 1px solid rgba(230, 0, 18, 0.3);border-left: 3px solid #e60012;border-radius: 8px;padding: 1.4em 1.8em;margin: 0 auto 0.5rem auto;line-height: 1.95;box-sizing: border-box;}
    .newstitle{ font-size: 1.4em; line-height: 1.5; padding-bottom: 0.3em; }
    .newsintime{color: #e60012; display: block; padding-bottom: 1.5em;}
    .newspage .fly_op02{position: relative; top: -1.15rem;}



  .texinli{font-size: 0.16rem;line-height: 160%; font-weight: 400;}
  .texinli li{margin-left: 1em; list-style: '・';}
  .texinli02{font-size: 0.16rem;line-height: 160%; font-weight: 400;}
  .texinli02 li{margin-left: 1em; list-style: '※';}
  ul li.nolst{margin-left:0; padding-left: 1em; text-indent: -1em; list-style: none;}








/*about*/
.about_inmob{text-align: center;padding-top: 0.4rem;}
.about_inmob .mobin_pz{  }
.about_inmob .inn_eds{background-color:#f5ac73; top: 0; bottom: 0; height: 100%;transform-origin: center;transform: skewY(-5deg);}


/*artist*/
.artist_inmob{}
  .artist_inmob .mobin_pz{ }
  .artist_inmob .in_tt{}
  .ar_minb{ display: flex; flex-wrap: wrap; padding: 0.4rem 0 0 0; }
    .ar_inpre{width:23.5%; margin:0 2% 0.3rem 0;position: relative; padding-bottom: 0.4rem;text-decoration: none; overflow: hidden; }
    .ar_minb .ar_inpre:nth-child(4n){margin-right: 0;}
    .ar_name{ position: absolute; bottom: 0; left: 0; width: 100%; text-align: center; background: #e60012; color: #fff; padding: 0.3em; box-sizing: border-box;}
    .ar_inpre img{transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);}
    /* .ar_inpre[href]:hover img{transform: scale(1.1, 1.1);}*/



  .ar_cdb{ padding:2.58% 2.58% 2.58% 37.93%; background-color: #ff0000; min-height: calc(100% - 0.4rem); box-sizing: border-box;border-radius: 8px;}
  .ar_cdb .ar_cdph{ float: left; width: 47.8%; padding-bottom: 43.8%; margin-right:4.36%;  position: relative;}
  .ar_cdb .ar_cdph img{ max-width: 100%; max-height: 100%; }
  .arsimg{ position: absolute; top: 0; left: 0; bottom: 0; right: 0; height: 100%; width: 100%; text-align: center;}
  .ar_cdb .ar_cdcon{ float: left;width: 47.8%; color: #fff; }
  .cdname{ font-weight: 700; font-size:0.18rem; line-height: 110%; display:block; padding-top: 0.3em; }
  .ar_banner{ clear: both;  font-size: 19px; font-size: 0.19rem; line-height:170%; overflow: hidden; }
  .ar_banner a{ display: block;float: left;width: 41.2%; margin:2.8% 4% 0 0; padding-right:5.8%;  text-align: center;border: 1px solid #fff; position: relative;color: #fff; border-radius: 4px; text-decoration: none;}
  .ar_banner a:nth-of-type(2n){ margin-right:0%;}
  .ar_banner a::before{ content: ">"; font-family: "Noto Sans JP"; position: absolute; right: 0; top: 0; height: 100%; width: 12%; font-size:0.14rem;}
  .ar_banner a[href]:hover{ background-color:#000; /*background-color: rgba(255,255,255,0.6);*/ color:#fff;}
  .ar_banner .no_banner{ display: block; margin:2.8% 4% 0 0;border: 1px solid transparent; position: relative; }



/*ticket*/
.ticket_inmob{ }
.ticket_inmob .mobin_pz{}
  .link_out{display: flex; width: 900px; max-width: 100%; margin: 2em auto; padding: 2em;background: #fff; box-shadow: inset 0 0 0 0.04rem #fff,inset 0 0 0 0.08rem #ff9016;box-sizing: border-box; border-radius: 0.2rem;}
    .link_out dt{ width: 30%; border-right: 0.02rem solid #ff9016; display: flex; justify-content: center; align-items: center; font-size: 1.3em; color: #666666; }
    .link_out dd{ width: 66%; margin-left:4%; padding: 0.5em 0; line-height: 120%; color: #666666; }
    .link_out dd a{display: inline-block; padding: 0.2em 0;color: #666666; text-decoration: none;}
    .link_out dd a[href]:hover{color: #d26d00;}

.txin_01{text-indent:-1em; padding-left: 1em; display: block;}


/*goods*/
.goods_inmob{}
.goods_inmob .inn_eds{background-color:#f5ac73;}
.goodslistmob{display: flex; flex-wrap: wrap;}
.goodsints{width: 47%;margin: 0 1.5% 0.3rem 1.5%;position: relative;padding-top: 0.5rem; }
.gd_phnf{ margin-bottom: 3%; border-radius: 8px; overflow: hidden;}

.gd_txin{ text-align: left; }
.gd_instit{ font-size: 1.3em; line-height: 130%;text-align: center; padding-bottom: 0.3em; }
.gd_pri{ font-size: 1.1em; line-height: 120%; font-weight: bold;text-align: center; padding-bottom: 0.7em;color: #fff; }
.goods_new{ display: inline-block; padding: 0.2em 0.8em; color: #fff; background-color:#ea5432; font-size: 0.9em; line-height: 100%; margin: 5px;}

.glslide{overflow:hidden; position: relative;}
/* .glslide::before{content: " "; position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 30; background: url("../images/hand_icon.png") center center no-repeat; background-size: 30% auto; opacity: 0.5; pointer-events: none; transition: opacity 0.3s; }
.glslide:hover::before{ opacity: 0; } */
.glsprev{ position: absolute; top:calc(50% - 0.15rem); left:-0.2rem; border: 0.15rem solid transparent; border-left-width: 0.3rem;border-right:0.3rem solid #000; opacity: 0.5; z-index: 30; transition: opacity 0.3s; cursor: pointer; }
.glsnext{ position: absolute; top:calc(50% - 0.15rem); right:-0.2rem; border: 0.15rem solid transparent; border-right-width: 0.3rem;border-left:0.3rem solid #000; opacity: 0.5; z-index: 30; transition: opacity 0.3s;cursor: pointer;}
.glsprev:hover,.glsnext:hover{opacity: 0.8;}
.tx_id01{padding-left: 1em; text-indent: -1em; display: block;}
.tx_id02{padding-left: 2em; text-indent: -2em; display: block;}
.tx_id03{padding-left: 3em; text-indent: -3em; display: block;}
.tx_id04{padding-left: 4em; text-indent: -4em; display: block;}
.tx_id05{padding-left: 5em; text-indent: -5em; display: block;}


.txgline li{ padding-left: 1em; text-indent: -1em; }
.banshow_ph{ display: inline-block; padding:0.1em 1em; color:#fff; background: #e60012; border-radius: 0.3em; text-decoration: none; transition: all 0.3s; }
.banshow_ph[href]:hover{color:#e60012;background: #fff; }
.show_ph{ display: none; }



/*special*/
.special_inmob{text-align: center;background-color: #f5ac73;}

.special_inmob a:hover{text-decoration: underline; }

.spec_inmob{ text-align: left; color: #8b8c8b; }
.spec_incon{ float: left;  width:46.25%; margin:3.33% 0 0 2.5%; display: table;}
.spec_incon .spec_inph{ display: table-cell; width:21.6%;  }
.spec_incon .spec_intxb{ display: table-cell; vertical-align: top;}
.spec_incon .spec_intt{ font-weight: bold; padding-bottom:0.1rem;}




/*link*/
.link_inmob{text-align: center; padding-bottom: 0.75rem;}


.link_inmob .link_banlist a{ display: inline-block; padding:0.1rem 0.05rem; max-width: 30%;  }
.link_inmob .link_banlist a img{ border-radius: 8px;}
.link_inmob .link_banlist a:hover{ opacity:0.9; }
.link_inmob .inn_eds{background-color:#000;}


/*info*/
.info_inmob{ padding-bottom: 0.75rem; }



footer{background-color: rgba(0, 0, 0, 0.8); position: relative; z-index: 20; width: 100%; font-size: 12px; line-height: 1.8;border-top: 0.1rem solid #e60012;}
.foot{ padding:40px 0; color: #fff; text-align: center;  }
  .logolist{text-align: center;display: flex;justify-content: center; margin-bottom: 1em;}
    .logolist a img{ height: 100%;}
    .logolist a:hover{ opacity: 0.6; }
    .logolist a.ban_bandai{display: inline-block; height: 0.6rem; margin: 0 1.25em;}
    .logolist a.ban_lantis{display: inline-block; height: 0.33rem; margin: 0 1.25em;}

  .foot_sns{padding:0 0 0.3rem 0; display: flex; justify-content: center; align-items: center;}
  .foot_sns a{width: 2.6em; margin: 0 1em;}
  .foot_sns a:hover{ transform: scale(1.1); }
  .foot_sns img{width:100%;}


.pgtp{position: fixed; bottom: 0.6rem; right:0.3rem; text-align: center; text-decoration: none; border-radius: 6px; display: none; z-index: 100; width: 0.86rem;}
.pgtp:hover{text-decoration: none;opacity: 0.7;}


.ban_more{ margin: 3%; text-align: center; }
.ban_more a{ display: inline-block; font-size:0.26rem;  padding: 0.5em 1.5em; line-height: 100%; text-decoration: none;  transition:all 0.4s; color:#fff; background-color: #000; border-radius: 0.5em; font-weight: 500; }
.ban_more a:hover{ color: #000;background-color: #fff;}

/* .ticketpg .ban_more a{ color:#8b8c8b;}
.ticketpg .ban_more a:hover{ color:#fffc00;}
 */


@media screen and (max-width:1480px) {
  /* .mobinbg{ width: calc(100% - 0.8rem); } */



}



@media screen and (max-width:1200px) {
  :root{
    --htf: 8.33vw;
  }

}
@media screen and (max-width:768px) {

  :root{
    --htf: 13.02vw;
  }

html,body{ width: 100%; overflow-x: hidden; }

body{}

.pc_none{ display: block; }
.sp_none{ display: none; }

.headmob{ position: relative; z-index: 80; }
.top_banner{ text-align: center; padding-bottom:0.6rem; }
.tpx_ph{padding: 0.7rem 0 0.3rem 0; width: 90%; margin: 0 auto;}

.top_banner .ban_tps01{float: none; width: 100%;}
.top_banner .ban_tps02{float: none; width: 100%;}


/* menu */
.menu_mob{z-index: 201;padding: 0; font-size:2em;height:1.2em;border:0; bottom: 0;}
  .menu_mob::before{content: "";height:0; width: 100%; background: #e60f13; z-index: 201; position: absolute; bottom:0;left: 0; transition: all 0.4s; }

  .ban_tpnsc{ text-align: center; height: 0.5rem; position: absolute; bottom: 0rem; left: 0; width: 100%;}

  .ban_op{ display:inline-block; background: #e60f13; border-radius: 999px; border:0.04rem solid #fff; box-shadow: inset 0 0 0 0.04rem #000; line-height: 0; position: relative; padding:0.425rem 0.21rem; width: 1rem;height: 1rem; box-sizing:border-box; z-index: 351;}
  .ban_op::before{content: "";display: block; width:0.5rem; height: 0.07rem;background: #fff; position:absolute; top:0.29rem; left:0.21rem; transition:all 0.3s;    transform-origin: 0 100%; border-radius: 99px; }
  .ban_op::after{ content: ""; display: block; width:0.5rem; height: 0.07rem;background: #fff; position:absolute; bottom:0.29rem; left:0.21rem;transition:all 0.3s;    transform-origin: 0 0; border-radius: 99px;}
  .ban_op span{ display: block;width:0.5rem;  height:0.07rem; background: #fff;transition:all 0.3s; border-radius: 99px; }
  .ban_op.sel::before{transform: rotate(45deg) translateX(0);transform-origin: 50% 50%;
      top: 0.425rem;}
  .ban_op.sel::after{transform: rotate(-45deg) translateX(0);transform-origin: 50% 50%;
      top: 0.425rem;bottom:auto;}
  .ban_op.sel span{ opacity:0;}


  .inner_mb{  width: 100%;padding:0.4rem 0; display: none; position:absolute; z-index: 301; }
  .inner_mb ul{padding:1rem 10% 0.4rem 10%; background: none; display: block!important; }
  .inner_mb ul li{ float: left; width:96%; box-sizing:border-box; margin:2%; }

/*   .menu_inlist a{border: 0.04rem solid #000;margin:0;}
  .menu_inlist a::after{box-shadow: inset 0 0 0 0.04rem #000; border: 0.04rem solid #fff;bottom:-0.04rem;top:-0.04rem;right:-0.04rem;left:-0.04rem;} */
  .menu_inlist li a:hover {--cl: #fff;}
  .menu_inlist a::after{box-shadow: inset 0 0 0 3em #353535;}

  .pfix .ban_tpnsc{position:static;margin-top: -0.1rem;}
  .pfix .inner_mb{position:absolute;top:100%; left: 0;}
  .menu_mob.pfix{padding: 3% 0 0 0; }
  .menu_mob.pfix .inner_mb ul{padding:0.4rem 10%;}

  .menuopen .menu_mob::before{ height:100vh;bottom:-100vh; }
  .menu_mob::after{  }



/* menu */

.menupx .mobinbg{top: 0.85rem;height: calc(100vh - 0.85rem - 90px);}
  .bgstar01{ left: -0.6rem; width: 3.6rem;}
  .bgstar02{ right: 0.2rem; width: 1.3rem; }
  .bgstar03{ right: 8.65%; width: 0.8rem;}

  .top-txcon{padding:1em 1em;font-size: 1.6em;}





/*news*/
.news_inmob .mobin_pz{ }


/*about*/
.about_inmob .mobin_pz{  }


/*artist*/
.fly_op02{top: -0.95rem;}


.artist_inmob{padding-bottom:0.2rem; }
.ar_inpre{ float: none; width:48.5%; margin:0 3% 4.93% 0%;position: relative;}
.ar_minb .ar_inpre:nth-child(2n){margin-right: 0;}

.ar_name{ font-size: 1.1em; }
.ar_name .in_smfn{ font-size: 0.13rem; line-height:120%; }
.ar_banner a{ width: 40.2%; margin:2.8% 4% 0 0; }
.ar_banner a:last-child{ margin-right:0%;}

.inp_07{}
.inp_08{}
.inp_08 .ar_name{white-space: nowrap;}


/*ticket*/
.ticket_inmob .mobin_pz{}


/*special*/
.spec_incon{ float:none; width:94.68%; margin:0 2.66% 4.93% 2.66%; display: table;}
.spec_incon .spec_inph{ display: table-cell; width:21.6%;  }
.spec_incon .spec_intxb{ display: table-cell; vertical-align: top;}
.spec_incon .spec_intt{ font-weight: bold; padding-bottom:0.1rem;}


/*info*/
.info_inmob .mobin_pz{ }


/*goods*/
.goodsints{width:94.68%;margin: 0 2.66% 4.93% 2.66%;position: relative;padding-top: 0.2rem; }
.gd_phnf{ /* margin:0 5% 3% 5%;  */}
.gd_txin{ text-align: left; }
.gd_instit{ font-size: 1.3em; line-height: 130%;text-align: center; padding-bottom: 0.3em; }
.gd_pri{ font-size: 1.1em; line-height: 120%; font-weight: bold;text-align: center; }




.pic_02 {transform: translateY(50%);}
.pic_03 {right: 5%; bottom: 6%;}
.pic_10 {left: 3%;}

.foot{ width: 100%;font-size:10px; position: relative; }



}


@media screen and (max-width:375px) {
.f14{font-size:8px;line-height:145%; }
.f16{font-size:10px;line-height:156%; }
.f18{font-size:12px;line-height:156%; }
.f20{font-size:14px;line-height:120%; }
.f24{font-size:18px;line-height:120%; }
.f36{font-size:30px;line-height:120%; }


}


/* ============================================================
   DESIGN IMPROVEMENTS
   ============================================================ */

/* --- 全体タイポグラフィ --- */
body {
  letter-spacing: 0.025em;
}

/* --- セクション見出し (.tt_en) --- */
.tt_en {
  font-family: "League Gothic", "Noto Sans JP", sans-serif;
  font-size: 3.6em;
  font-weight: 400;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #fff;
}

.in_tt {
  margin-bottom: 3em;
  padding-top: 8em;
  padding-bottom: 1.4em;
}

.in_tt::after {
  height: 0.18em;
  width: 4.5em;
  border-radius: 2px;
  background: linear-gradient(90deg, #e60012, #ff4455);
}

/* --- テキストセクション共通の半透明背景 --- */
.about_inmob .mobin_pz,
.info_inmob .mobin_pz {
  background: rgba(0, 0, 0, 1);
  border-radius: 12px;
  padding-left: 5%;
  padding-right: 5%;
}

/* --- スケジュールセクション --- */
.about_inmob {
  padding-top: 0.3rem;
}

.title_sl02 {
  font-size: 1.15em;
  letter-spacing: 0.14em;
  margin: 1.8em 0 0.7em 0;
}

.title_sl02 .tlins {
  padding: 0.35em 0.9em;
  letter-spacing: 0.18em;
}

.about_inmob .mobin_pz {
  line-height: 2;
}

.fsz120 {
  line-height: 1.85;
}

/* --- アーティストセクション --- */
.title_time {
  font-family: "League Gothic", "Noto Sans JP", sans-serif;
  font-size: 2.4em;
  letter-spacing: 0.12em;
}

.text_time {
  font-size: 0.95em;
  letter-spacing: 0.08em;
  opacity: 0.85;
  padding: 0.4em 0 0.6em 0;
}

.ar_minb {
  padding-top: 0.25rem;
}

.ar_inpre {
  border-radius: 10px;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(0, 0, 0, 0.5);
  transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94),
              box-shadow 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.ar_inpre[href]:hover {
  transform: translateY(-6px);
  box-shadow: 0 10px 28px rgba(230, 0, 18, 0.35);
}

.ar_inpre[href]:hover img {
  transform: scale(1.07, 1.07);
}

.ar_name {
  background: linear-gradient(135deg, #b5000d 0%, #e60012 55%, #ff2233 100%);
  padding: 0.45em 0.6em;
  font-size: 0.88em;
  letter-spacing: 0.04em;
  line-height: 1.45;
  font-weight: 500;
}

/* --- チケットセクション --- */
.ticket_inmob .text_cont {
  background: rgba(0, 0, 0, 1);
  border: 1px solid rgba(230, 0, 18, 0.3);
  border-left: 3px solid #e60012;
  border-radius: 8px;
  padding: 1.4em 1.8em;
  margin: 0 auto;
  line-height: 1.95;
  box-sizing: border-box;
}
.text_cont_ins{
  background: rgba(0, 0, 0, 1);
  padding: 1.8em;
  text-align: left;
  width: 900px;
  max-width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
  margin-top: 0.4rem;

}

.ticket_inmob .text_cont b.fsz110 {
  color: #fff;
  letter-spacing: 0.06em;
}

/* --- インフォメーションセクション --- */
h2.f24 {
  border-left: 4px solid #e60012;
  padding-left: 0.65em;
  letter-spacing: 0.09em;
  font-weight: 600;
}

.texinli {
  line-height: 1.75;
  color: rgba(255, 255, 255, 0.85);
}

/* --- フッター --- */
footer {
  border-top-width: 3px;
}

.foot {
  padding: 48px 0;
  font-size: 13px;
  line-height: 2.1;
  color: rgba(255, 255, 255, 0.7);
}

.foot a {
  color: rgba(255, 255, 255, 0.55);
  transition: all 0.4s;
}

.foot a:hover {
  color: #e60012;
}

/* --- HPリンクボタン --- */
.banshow_ph {
  font-size: 0.75em;
  vertical-align: middle;
  margin-left: 0.5em;
  padding: 0.12em 0.9em;
  border-radius: 0.25em;
  transition: all 0.25s;
}

/* --- Goods COMING SOON --- */
.fsz200.algin_center {
  letter-spacing: 0.2em;
  opacity: 0.6;
  font-family: "League Gothic", "Noto Sans JP", sans-serif;
  font-weight: 400;
}

/* --- タブレット対応（769px〜1024px） --- */
@media screen and (min-width:769px) and (max-width:1024px) {
  :root {
    --htf: 9.76vw;
  }

  .tt_en {
    font-size: 3em;
  }

  .mobin_pz {
    width: 90%;
  }

  /* アーティストカード：3列に */
  .ar_inpre {
    width: 31%;
    margin: 0 3.5% 0.3rem 0;
  }
  .ar_minb .ar_inpre:nth-child(4n) {
    margin-right: 3.5%;
  }
  .ar_minb .ar_inpre:nth-child(3n) {
    margin-right: 0;
  }

  .ar_name {
    font-size: 0.82em;
    padding: 0.35em 0.4em;
  }

  .title_time {
    font-size: 2.1em;
  }

  /* チケット・テキストエリア */
  .text_cont {
    width: 100%;
  }

  .ticket_inmob .text_cont {
    padding: 1.2em 1.5em;
  }

  /* インフォメーション */
  .texinli {
    font-size: 0.155rem;
  }

  /* イベントロゴ */
  .tpx_ph {
    padding-left: 5%;
    padding-right: 5%;
    box-sizing: border-box;
  }

  /* メニュー */
  .menu_mob {
    font-size: 0.22rem;
  }

  .menu_inlist a {
    padding: 0.7em 1em;
  }

  /* フッター */
  .foot {
    font-size: 12px;
  }
}

/* --- スマートフォン対応（〜768px） --- */
@media screen and (max-width:768px) {
  .tt_en {
    font-size: 2.8em;
  }

  .title_time {
    font-size: 2em;
  }

  .ar_inpre {
    border-radius: 8px;
  }

  .ticket_inmob .text_cont {
    padding: 1.1em 1.3em;
  }
}

/* ==========================================
   カウントダウンタイマー
   ========================================== */

.countdown-wrap {
  text-align: center;
  padding: 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.countdown-label {
  font-family: "League Gothic", "Noto Sans JP", sans-serif;
  font-size: 0.78em;
  letter-spacing: 0.35em;
  color: #000;
  margin-bottom: 0.45em;
  text-transform: uppercase;
  text-shadow: none;
}

.countdown {
  display: inline-flex;
  justify-content: center;
  align-items: flex-start;
  gap: 0;
}

.countdown-unit {
  display: flex;
  flex-direction: column;
  align-items: center;
  min-width: 3.6em;
}

.cd-num {
  font-family: "League Gothic", "Noto Sans JP", sans-serif;
  font-size: 4.2em;
  line-height: 1;
  color: #e60012;
  letter-spacing: 0.04em;
  display: block;
  text-shadow: none;
}

.cd-lbl {
  font-size: 0.48em;
  letter-spacing: 0.28em;
  color: #000;
  margin-top: 0.2em;
  display: block;
  text-shadow: none;
}

.countdown-sep {
  font-family: "League Gothic", sans-serif;
  font-size: 3.4em;
  color: #e60012;
  line-height: 1.2;
  padding: 0 0.1em;
}

.countdown-ended {
  font-family: "League Gothic", "Noto Sans JP", sans-serif;
  font-size: 2em;
  color: #e60012;
  letter-spacing: 0.2em;
  text-shadow: 0 0 20px rgba(230, 0, 18, 0.7);
}

/* SP */
@media screen and (max-width: 768px) {
  .countdown-wrap {
    padding: 0 0 0.4rem 0;
  }
  .countdown-unit {
    min-width: 2.8em;
  }
  .cd-num {
    font-size: 4em;
  }
  .countdown-sep {
    font-size: 3.2em;
  }
}

/* Tablet */
@media screen and (min-width: 769px) and (max-width: 1024px) {
  .cd-num {
    font-size: 5em;
  }
  .countdown-sep {
    font-size: 4em;
  }
}
