@charset "UTF-8";
@import url(base.css);
.img100 { width: 100%; height: auto; }

/*-------------------------------------------------
	++ BASE
-------------------------------------------------*/
body { background: #FFF url("../img/bg_white.jpg") center top repeat; font-family: 'Noto Sans JP', sans-serif; color: #231815; }

.pc { display: none; }

#container { margin: 0 auto; text-align: center; position: relative; }

.cInner { display: block; clear: both; width: 100%; margin: 0 auto; text-align: center; position: relative; padding: 0 3vw; }

.colGold { color: #daa93e; }

.ticketBtn { text-align: center; }
.ticketBtn a { display: inline-block; background: #a92b2b; color: #FFF; font-size: 4vw; padding: 1vw 7vw; border-radius: 5px; }

.csnB { position: relative; }
.csnB:after { content: ""; display: block; background: url("../img/csn.png") center top repeat-x; width: 100%; height: 110px; position: absolute; bottom: -55px; left: 0; z-index: 1; }

/*-------------------------------------------------
	++ COMMON
-------------------------------------------------*/
.section { position: relative; padding: 10vw 0; }
.section .secHead { margin-bottom: 5vw; padding: 0 15vw; }
.section .secHead h2 img { margin: 0 auto; text-align: center; }

/*-------------------------------------------------
	++ HEAD
-------------------------------------------------*/
#header { width: 100%; height: 10vw; background-color: #FFF; position: relative; z-index: 10; }
#header h1 { margin: 0 auto; text-align: center; width: 60%; max-height: 10vw; }
#header h1 img { display: block; width: auto; max-height: 10vw; margin: 0 auto; text-align: center; }
#header .link { position: absolute; top: 2.2vw; right: 2.2vw; background-color: #9F291A; color: #FFF; padding: 0.5vw; border-radius: 3px; line-height: 100%; font-family: 'Arial','游ゴシック体','YuGothic','游ゴシック','Yu Gothic','ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro','メイリオ',Meiryo,sans-serif; }
#header .link span, #header .link a { height: 5vw !important; padding: 0 1vw; }
#header .link span img { display: inline-block; height: 3vw; width: auto; }
#header .link a { display: none; color: #FFF; padding: 0 2vw; }

#menu { width: 100%; position: fixed; top: 0; left: 0; z-index: 20; }
#menu .cInner { padding: 0; }
#menu .menuBtn { display: block; background: url(../img/burger.png) center top no-repeat; background-size: 8vw; width: 8vw; height: 8vw; position: fixed; top: 12vw; right: 2vw; }
#menu .menuBtn.current { background: url(../img/burger_close.png) center top no-repeat; background-size: 8vw; }
#menu ul { display: none; border-top: 1px solid #999; padding-top: 22vw; background-color: rgba(0, 0, 0, 0.9); }
#menu ul li { width: 100%; border-bottom: 1px solid #999; }
#menu ul li:nth-of-type(1) { border-top: 1px solid #999; }
#menu ul li img { display: block; margin: 0 auto; text-align: center; width: auto; height: 8vw; }
#menu ul li a, #menu ul li span { display: block; font-family: "Arial"; color: #FFF; padding: 3vw 10vw; line-height: 1; text-shadow: 0 0 5px rgba(0, 0, 0, 0.7); }
#menu ul li span img { opacity: 0.2; }
#menu ul li.goods img { height: 10vw; }
#menu.first { display: none; }

/*-------------------------------------------------
	++ MAIN
-------------------------------------------------*/
#main { padding: 7vw 0; }
#main:after { content: ""; display: block; width: 100%; height: 3vw; background: url("../img/bg_white_bottom.png") center bottom repeat-x; background-size: auto 3vw; position: absolute; bottom: -2vw; left: 0; z-index: 1; }
#main .cInner img { margin: 0 auto; text-align: center; }
#main .title { padding-top: 5vw; margin-bottom: 5vw; }
#main .mainDate .ename { font-size: 5vw; line-height: 140%; position: relative; }
#main .mainDate .ename:before, #main .mainDate .ename:after { content: ""; display: inline-block; width: 15vw; height: 1px; background-color: #231815; margin: 2vw 3vw; }
#main .mainDate .jname { font-size: 5vw; }
#main .mainDate .date { font-size: 5vw; }
#main .mainDate .date span { font-size: 6vw; font-weight: 700; }
#main .mainDate .place { font-size: 5vw; font-weight: 700; }
#main .mainDate .ticketBtn { margin-top: 5vw; }

/*-------------------------------------------------
	++ CONTENTS
-------------------------------------------------*/
#news { background: url("../img/bg_brown.jpg") center top repeat; padding-top: 13vw; }
#news:before { content: ""; display: block; width: 100%; height: 10vw; background: url("../img/bg_main_wave.png") center top no-repeat; background-size: auto 10vw; position: absolute; top: 2vw; left: 0; }
#news .entryList { display: block; margin: 3vw auto; text-align: center; background-color: #FFF; padding: 3vw; }
#news .entryList ul li { text-align: left; padding: 0 0 3vw 0; color: #231815; }
#news .entryList ul li:nth-last-of-type(1) { padding-bottom: 0; }
#news .entryList ul li .date { margin-right: 3vw; }
#news .entryList ul li a { color: #231815; }
#news .link { margin: 5vw 0 10vw 0; }
#news .link a { color: #d07e2d; }

#intro { padding-bottom: 20vw; }
#intro:before { content: ""; display: block; width: 100%; height: 30vw; background: url("../img/intro_top.png") center top no-repeat; background-size: 100% auto; position: absolute; top: 0; left: 0; }
#intro .text { font-size: 3.8vw; line-height: 180%; text-align: center; }

#story { padding-top: 20vw; padding-bottom: 20vw; }
#story .pnl { background: rgba(17, 8, 2, 0.7); padding: 3vw 2vw; }
#story .text { font-size: 3.8vw; line-height: 180%; text-align: center; }
#story .text .lead { font-size: 4.4vw; color: #FFF; background-color: #231815; padding: 1vw 0; line-height: 220%; }

#member { background: url("../img/bg_orange.jpg") center top repeat; padding-bottom: 15vw; }
#member:before { content: ""; display: block; width: 100%; height: 28vw; background: url("../img/story_bottom.png") center bottom no-repeat; background-size: 100% auto; position: absolute; top: -21vw; left: 0; }
#member:after { content: ""; display: block; width: 100%; height: 9vw; background: url("../img/member_bottom.png") center bottom repeat-x; background-size: 170%; position: absolute; bottom: 0; left: 0; }

#cast { margin-bottom: 10vw; }

#music { margin-bottom: 10vw; }

.photoPnl { margin: 0 auto; text-align: center; }
.photoPnl ul { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; }
.photoPnl ul li { width: 48%; }

#staff .staffList dl dt { width: 50%; float: left; text-align: right; padding-right: 3vw; }
#staff .staffList dl dd { width: 50%; float: left; text-align: left; padding-left: 3vw; }

.youtube { margin-top: 10vw; position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
.youtube iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#ticket { padding: 5vw 3vw 3vw 3vw; background: url("../img/bg_brown.jpg") center top repeat; color: #FFF; }
#ticket .cInner .pnl { margin-bottom: 5vw; }
#ticket .ticketWrap { margin-bottom: 7vw; text-align: left; }
#ticket .ticketWrap h2 { text-align: center; margin: 5vw auto; font-size: 3.6vw; }
#ticket .ticketWrap table { width: 100%; border: 1px solid #231815; margin-bottom: 5vw; font-size: 3.6vw; }
#ticket .ticketWrap table caption { background-color: #dc8530; color: #231815; width: 100%; padding: 1vw 3vw; font-size: 3.6vw; font-weight: bold; }
#ticket .ticketWrap table th, #ticket .ticketWrap table td { border: 1px solid #231815; padding: 2vw; background-color: #000; }
#ticket .ticketWrap table th { display: none; }
#ticket .ticketWrap table td { width: 75%; }
#ticket .ticketWrap table td.dn { width: 25%; text-align: center; }
#ticket .ticketWrap table td.ptn { text-align: center; width: 18%; }
#ticket .ticketWrap table td.time { text-align: center; width: 82%; }
#ticket .ticketWrap .att { margin-bottom: 3vw; }
#ticket .ticketWrap .infoText { margin-bottom: 5vw; }
#ticket .ticketWrap .infoText h3 { background-color: #dc8530; color: #231815; padding: 1vw 3vw; margin-bottom: 3vw; font-size: 3.6vw; }
#ticket .ticketWrap .infoText a { color: #FFF; text-decoration: underline; }
#ticket .ticketWrap .infoText a:hover { text-decoration: none; }
#ticket .ticketWrap .infoText span { font-size: 85%; }
#ticket .ticketWrap .infoText.mt60 { margin-top: 5vw; }
#ticket iframe { width: 96%; height: 70vw; margin: 0 auto; text-align: center; }

#footer { font-size: 77%; background: url("../img/bg_brown.jpg") center top repeat; color: #FFF; }
#footer .cInner { padding: 10vw 5vw 5vw 5vw; }
#footer .copyright { padding: 3vw 0; }

/*-------------------------------------------------
	++ FOOTER
-------------------------------------------------*/
#pageTop { position: fixed; bottom: 5vw; right: 5vw; width: 10vw; z-index: 18; }
#pageTop img { display: block; width: 100%; height: auto; }

#spCover { display: none; width: 100%; height: 100%; position: fixed; top: 0; left: 0; background-color: rgba(0, 0, 0, 0.8); z-index: 19; }
