@charset "UTF-8";

@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);
/* Thin 100, Light 300, DemiLight 350, Regular 400, Medium 500, Bold 700, Black 900 */

@import url(//fonts.googleapis.com/css?family=Noto+Serif+JP:300,400,500,600,700&display=swap&subset=japanese);



@import url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanjp-noto.min.css);
@import url(https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanmp.min.css);

@import url('https://fonts.googleapis.com/css2?family=Abhaya+Libre:wght@400;500;600&family=Cinzel:wght@400;500&display=swap');


@import url('https://fonts.googleapis.com/css2?family=Allura&family=Arizonia&family=Great+Vibes&family=La+Belle+Aurore&family=League+Script&family=Pinyon+Script&display=swap');
/* font-family: 'Great Vibes', cursive; 
	
	font-family: 'Allura', cursive;
font-family: 'Arizonia', cursive;
font-family: 'Great Vibes', cursive;
font-family: 'La Belle Aurore', cursive;
font-family: 'League Script', cursive;
font-family: 'Pinyon Script', cursive;


*/



.colorUsagi{ color: #e9a2d0;}
.colorMercury{ color: #1576c2;}
.colorMars{ color: #c21b2b;}
.colorJupiter{ color: #24936d;}
.colorVenus{ color: #d77d1c;}
.colorUranus{ color: #23568b;}
.colorNeptune{ color: #2bb6a5;}
.colorPluto{ color: #785748;}
.colorSaturn{ color: #633688;}
.colorChibi{ color: #e9a2d0;}
.colorTuxedo{ color: #222a78;}

#side .box .movArea{ position: relative; margin-bottom: 1rem}
#side .box .movArea:before{ content: ''; display: block; width: 100%; height: 0; padding-top: 56.25%;}
#side .box .movArea iframe{ position: absolute; top: 0; left: 0; width: 100% !important; height: 100% !important;}


table.tbl-r05 {
	width: 100%;
    border-collapse: collapse;
    text-align: left;
    line-height: 1.5;
    border-top: 1px solid #ccc;
    border-left: 1px solid #ccc;
    margin-bottom: 40px;
    box-sizing: border-box;
}
table.tbl-r05 th {
	  border: solid 1px #ccc;
    background-color: #f2f2f2;
        padding: 10px;
        
}
table.tbl-r05 th:nth-of-type(2){ width: 50%;} 


table.tbl-r05 td {
  border: solid 1px #ccc;
  padding: 10px;
  box-sizing: border-box;
}

table.tbl-r05 td ul{ padding: 0; margin: 0;}


table.tbl-r05 td:first-child {
	width: 7em;
white-space: nowrap;
}








table.ticketTable {
    font-size: 0.8rem;
    width: auto;
    border-collapse: collapse;
    margin: 3rem 0;
    min-width: 500px;
}
table.ticketTable th br{ display: none;}
table.ticketTable th,
table.ticketTable td {
    border: solid 1px #ccc;              /* 枠線指定 */
}


table.ticketTable th {width: 7em; padding: 1em;
	    background-color: #f2f2f2;
	    
}
table.ticketTable tr:first-child th{border-top: 1px solid #ccc;}
table.ticketTable tr:first-child th:first-child{ border: 0; background: transparent;}
table.ticketTable td { text-align: center; vertical-align: middle;}

table.ticketTable tr:nth-child(n+2) th{border-left: 1px solid #ccc; background: transparent;} 

table.ticketTable.yoko th{ line-height: 1.2; background: inherit;}

table.ticketTable .sat{background:  rgba(0,100,203, 0.04) !important;}
table.ticketTable .sun{background: rgba(203,0,0, 0.04) !important ;}
table.ticketTable td.noStage{    background-color: rgba(0,0,0, 0.2); opacity: 0.5;}


table.ticketTable td.line {}

.page_main span.chibi {}


table.ticketTable .sat th,
table.ticketTable th.sat {
    color: #0064cb !important;
}

table.ticketTable .sun th,
table.ticketTable th.sun {
    color: #cb0000 !important;
}

.iconMoon,
.iconStar{ display: inline-block; width: 1em; height: 1em; margin-right: 0.3em; }





table.ticketTable .iconMoon,
table.ticketTable .iconStar{ display: inline-block; width: 1.2em; height: 1.2em; line-height: 1;  }


table.ticketTable.yoko{ width: auto; min-width: initial !important;}
table.ticketTable.yoko th,
table.ticketTable.yoko td{ width: auto;padding: 1em 0.5em; font-size: 0.8rem; line-height: 1.2;}






.iconMoon:before{ content: ''; display: block;background: url(/stage/upload/icon_moon_gray.png) center center no-repeat; background-size: contain; width: 1.2em; height: 1.2em;  }
.iconStar:before{content: ''; display: block;background: url(/stage/upload/icon_star_gray.png) center center no-repeat; background-size: contain;  width: 1.2em; height: 1.2em;  }


.syugoStar{display: inline-block; width: 1.8em; height: 1.8em; line-height: 1; }
.syugoStar:before{ content: ''; display: block;background: url(/stage/assets/image/syugo_icon/moon.png) center center no-repeat; background-size: contain; width: 1.8em; height: 1.8em;  }

.syugoStar.starChibi:after{ content: ''; display: inline-block; white-space: nowrap; font-size: 0.8em; }
.syugoStar.starChibi.chibi_1:after{ content: '小林';}
.syugoStar.starChibi.chibi_2:after{ content: '鎌田';}

.starChibi:before{background: url(/stage/assets/image/syugo_icon/moon_chibi.png) center center no-repeat !important; background-size: contain !important;}
.starMercury:before{background: url(/stage/assets/image/syugo_icon/mercury.png) center center no-repeat !important; background-size: contain !important;}
.starMarz:before{background: url(/stage/assets/image/syugo_icon/marz.png) center center no-repeat !important; background-size: contain !important;}
.starJupiter:before{background: url(/stage/assets/image/syugo_icon/jupiter.png) center center no-repeat !important; background-size: contain !important;}
.starVenus:before{background: url(/stage/assets/image/syugo_icon/venus.png) center center no-repeat !important; background-size: contain !important;}
.starUranus:before{background: url(/stage/assets/image/syugo_icon/uranus.png) center center no-repeat !important; background-size: contain !important;}
.starNeptune:before{background: url(/stage/assets/image/syugo_icon/neptune.png) center center no-repeat !important; background-size: contain !important;}
.starPluto:before{background: url(/stage/assets/image/syugo_icon/pluto.png) center center no-repeat !important; background-size: contain !important;}
.starSaturn:before{background: url(/stage/assets/image/syugo_icon/saturn.png) center center no-repeat !important; background-size: contain !important;}

table.ticketTable.ssGoods th, 
table.ticketTable.ssGoods td{    padding: 0.5em 0.3em;}

table.ticketTable.ssGoods th{ vertical-align: middle;   padding: 0.5em 0.5em;}
table.ticketTable.ssGoods th .time{ white-space: nowrap;}




blockquote{ padding: 1em 2em; border: dashed 1px #ccc; margin: 2rem 2rem;}
blockquote h4{ font-size: 0.9rem !important; margin: 0 0 0.5em !important; color: inherit !important;}
blockquote p:last-child{  font-size: 0.8rem;margin-bottom: 0;}


table.goodsDayTable{
	background: #fff;
	    font-size: 0.8rem;
    width: auto;
    border-collapse: collapse;
    margin:0 0 3rem 0;
    min-width: 500px;}
    .mini table.goodsDayTable{ width: 100%;}
table.goodsDayTable th, 
table.goodsDayTable td {
    border: solid 1px #ccc;
    padding: 0.5em;
    line-height: 2;
}
table.goodsDayTable th{ background: #f6f6f6;}

table.goodsDayTable td.day { text-align: right;}
table.goodsDayTable td.time { text-align: right;}


.hibaiGoods{ width: 100%; display: grid; grid-template-columns: 1fr 1fr; grid-gap:1rem;}
.mini .hibaiGoods{grid-template-columns: 1fr; grid-gap:2rem;}
.hibaiGoods img{ width: 100%; height: auto;}


.ticketZaseki{width: 100%; display: grid; grid-template-columns: auto 1fr; grid-gap:2rem;}
.mini .ticketZaseki{grid-template-columns: 1fr; grid-gap:2rem;}

.ticketZaseki .gridItem{}
.ticketZaseki .zasekiMap{ width: 100%; height: auto; max-width: 250px;}
.mini .ticketZaseki .zasekiMap{ width: 100%; height: auto; max-width: 100%;}

.starList{ padding: 3rem 0;}
.starList li{ padding-left: 3em; position: relative;}
.starList li span{display: inline-block; width: 3.5em; height: 1.2em; line-height: 1; position: absolute; top: 50%; left: 0; transform: translate(0,-50%);}
.starList li span:before{ content: ''; display:inline-block;background: url(/stage/assets/image/syugo_icon/moon.png) center center no-repeat; background-size: contain; width: 1.2em; height: 1.2em;  }
.starList li span:after{ content: '…'; display: inline-block; margin-left: 0.3em; transform: translate(0,-20%) }

.onlyMini{ display: none;}
.mini .onlyMini{ display: inline-block;}

.hibaiArea{ padding: 2em 3em; margin-bottom: 6em; background: rgba(236,0,169,0.01);border:dashed 1px  rgba(236,0,169,0.25);}
.mini .hibaiArea{padding: 1em 1em; }
.hibaiArea h5{color: rgba(236,0,169,1);}

body#stage #wrap{
	
}
body#stage #wrap .contentsFrame{
	margin: 0 auto 20px;
    height: auto;
    min-height: 100px;
    position: relative;
    max-width: 1200px;
    border: solid 0px #c30;
}


body#stage #pageVisualCover { width: 100% !important;}

body#stage #pageVisual{ background: url(/stage/upload/sms_HPKV_4-4.jpg) center center no-repeat; background-size: cover;  margin-bottom: 20px;}
/* body#stage #pageVisual{ background: url(../image/_msc_dummy_pc.png) center center no-repeat; background-size: cover;  margin-bottom: 20px;} */
body#stage #pageVisual:after{ content: ''; display: block; width: 100%; height: 0; padding-top: 41.917%;}




body#stage #pageSubMenu{	font-family: YakuHanJP_Noto,'Noto Sans Japanese' , sans-serif;font-weight: 400; margin-bottom: 50px;}
body#stage #pageSubMenu ul.musicalSubmenu{ display: flex; justify-content: space-between; }
body#stage #pageSubMenu ul.musicalSubmenu li{ width: 14.0%;  text-align: center;}
body#stage #pageSubMenu ul.musicalSubmenu li.deactive{ opacity: 0.6; pointer-events: none;}
body#stage #pageSubMenu ul.musicalSubmenu a{ display: flex; padding: 10px 5px; text-decoration: none !important; box-sizing: border-box; align-content: center; align-items: center; height: 100%;  background:#f79dc5;
	color: #fff;
	    border-top: 0;
	    border-radius: 7px; 
	    font-size: 0.8rem;
	    font-weight: bold;
	
}

body#stage #pageSubMenu ul.musicalSubmenu li span:after{ content: ''; display: block; text-align: center; font-size: 0.8em; padding-top: 0.3em; color: #369;   font-weight: bold;}

body#stage #pageSubMenu ul.musicalSubmenu li:nth-of-type(1) span:after{ content: 'MUSICAL TOP'; }
body#stage #pageSubMenu ul.musicalSubmenu li:nth-of-type(2) span:after{ content: 'NEWS'; }
body#stage #pageSubMenu ul.musicalSubmenu li:nth-of-type(3) span:after{ content: 'TICKET'; }
body#stage #pageSubMenu ul.musicalSubmenu li:nth-of-type(4) span:after{ content: 'CAST STAFF'; }
body#stage #pageSubMenu ul.musicalSubmenu li:nth-of-type(5) span:after{ content: 'GOODS'; }
body#stage #pageSubMenu ul.musicalSubmenu li:nth-of-type(6) span:after{ content: 'Q&A'; }
body#stage #pageSubMenu ul.musicalSubmenu li:nth-of-type(7) span:after{ content: 'HISTORY'; }

body#stage #pageSubMenu.y2021 ul.musicalSubmenu li:nth-of-type(6) span:after{ content: 'STREAMING'; }
body#stage #pageSubMenu.y2021 ul.musicalSubmenu li:nth-of-type(7) span:after{ content: 'Q&A'; }
body#stage #pageSubMenu.y2021 ul.musicalSubmenu li:nth-of-type(8) span:after{ content: 'HISTORY'; }

body#stage #pageSubMenu.y2021 ul.musicalSubmenu li{width: 12.3%;}
body#stage #pageSubMenu.y2021 ul.musicalSubmenu li a span div{ transform: scale(0.9,1);}


body#stage #pageSubMenu ul.musicalSubmenu a span{ display: inline-block; margin: auto;}



.mini body#stage #pageSubMenu.y2021 ul.musicalSubmenu{}
.mini body#stage #pageSubMenu.y2021 ul.musicalSubmenu::after{ content: '　'; display: inline-block;     width: 32.5%;}
.mini body#stage #pageSubMenu.y2021 ul.musicalSubmenu li{}


body#stage #main{ display: flex; justify-content: space-between; align-items:normal; vertical-align: top; padding: 0; min-height: inherit !important; border: solid 0px #369;

		font-weight: 300;
		font-family: YakuHanJP_Noto,'Noto Sans Japanese' , sans-serif;
/* 		font-family: YakuHanMP , 'Noto Serif JP', serif; */
		
}
body#stage #main:after{ display: none;}


body#stage #main #grid-content-entry{ float: none !important;  width: calc(100% - 217px) !important;  margin: 0; padding: 0px; box-sizing: border-box; 	display: block;
	align-items:flex-start;border: solid 0px #c30;}
	
	body#stage.news #main #grid-content-entry{ flex-wrap: wrap; align-items: flex-start; align-content: flex-start;}
	
	body#stage #main #grid-content{ float: none; width: 100% !important; }
	body#stage #main #grid-content .box{ margin: 0 !important;}
	
	body#stage #main .layoutContents{ float: none; width: 100% !important;}
	

body#stage #main #grid-content-entry:after{ display: none;}
body#stage #main #pageInclude{}
body#stage #main #page_stage{   }

body#stage #main #side{ position: relative; float: none !important; width: 197px !important; margin: 0;display: flex;
	align-items: initial; padding: 0px; box-sizing: border-box; 	border: solid 0px #c30;}
body#stage #main #side .box{ padding: 0;}
	#side #twitterWidgets .widgets{ padding: 0;}
	#side #twitterWidgets .widgets iframe{ width: 100% !important;	}



body#stage #main h2,
body#stage #main h3{font-family: YakuHanMP , 'Noto Serif JP', serif;font-weight: 700;    color: rgba(15,115,191, 1);}

body#stage #main h4{font-weight: 700;   color: rgba(15,115,191, 1); }
body#stage #main h5,
body#stage #main h6{font-weight: 700;   }

body#stage #main h4{ margin-top: 1em;}

body#stage #main h2{margin: 0 0 1rem; font-size: 2rem; line-height: 1.5; }
body#stage #main article.section{ margin-bottom: 3rem; border: solid 0px #ccc; padding: 1rem; font-size: 0.9rem; line-height:2;}
	body#stage #main article#musicalNews{ margin-bottom: 0;}

body#stage #main article.section h3{ margin: 0 0 1rem; font-size: 1.5rem;line-height: 1.5; }
body#stage #main article.section h4{ margin: 0 0 0.5rem; font-size: 1.3rem;line-height: 1.5; padding-top: 0.5rem; }
body#stage #main article.section h5{ margin: 0 0 0.5rem; font-size: 1.15rem;line-height: 1.5; padding-top: 0.5rem;}

body#stage #main article.section p{ margin-bottom: 1em;}

body#stage #main article.section h3.sectionTitle{position: relative; text-align: left; font-weight: 400; font-size: 4rem;line-height: 1.5;color: rgba(15,115,191, 0.2);
	

}

.heading07 {
	position: relative;
	padding-top: 3.8rem;
	padding-bottom: 2rem;
	padding-left: 0em;
	margin-bottom: 2rem !important;
	font-size: 26px;
	text-align: left;
	border-bottom: solid 1px  rgba(15,115,191, 0.2);
}

.heading07.noBorder{border-bottom:0;}

.heading07 span {
	position: relative;
	z-index: 2;
	font-size: 1.3rem;
	color: #999;
}

.heading07::before {
	content: attr(data-en);
	position: absolute;

	top: -0em;
	left: 0%;
	color: rgba(15,115,191, 0.4);
	font-size:3rem;
	font-weight: 400;

}


body#stage #main article.section h3.sectionTitle::after {
	content: '';
	position: absolute;
	display: none;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 8px;
	background-image: repeating-linear-gradient(-45deg, rgba(15,115,191, 0.2) 0px, rgba(15,115,191, 0.2) 1px, rgba(0,0,0,0) 0%, rgba(0,0,0,0) 50%);
	background-size: 8px 8px;
}

body#stage #main article.section .logoWrap{ text-align: center; margin-bottom: 3rem;}
body#stage #main article.section .stageLogo{max-width: 80%; width: 60%; padding: 0 2rem; margin: auto; background: #fff; }


body#stage #main article.section .aboutWrap{ position: relative; border: double 3px #f79dc5; padding: 2rem 3rem 2rem 3rem; }
body#stage #main article.section .aboutWrap h5{ text-align: center; background: #fff; line-height:1; padding: 0 3em 0.5em 3em;font-family: YakuHanMP , 'Noto Serif JP', serif;  color: #f79dc5;}
body#stage #main article.section .aboutWrap p{ margin: 0; text-align: center;}
body#stage #main article.section .aboutWrap p:not(:last-child){ margin-bottom: 1em;}

body#stage #main article.section{}



body#stage #main article.section .newsList{ display: flex; flex-wrap: wrap; justify-content: space-between;}
body#stage #main article.section .newsList li{width: 100%; }
body#stage #main article.section .newsList a{ text-decoration: none;background: rgba(15,115,191,0.02); padding: 0.5em; display: flex; flex-wrap: wrap; margin-bottom: 0.5em;transition: all 250ms ease-in-out;}
body#stage #main article.section .newsList a:hover{ background: rgba(15,115,191,0.1); }
body#stage #main article.section .newsList dl{ display: flex; flex-wrap: wrap; }
body#stage #main article.section .newsList dt{ width: 7em; font-size: 0.7rem; display: flex; align-items: center; }
body#stage #main article.section .newsList dt span{ display: inline-block;color: #fff; background: rgba(15,115,191, 1); line-height: 1; padding: 0.5em 0.8em; text-align: center; border-radius: 0.5em;  white-space: nowrap;}
body#stage #main article.section .newsList dd{ flex: 1; padding-left: 1em;}
body#stage #main article.section .newsList a{ color: rgba(15,115,191, 1);}

body#stage #main article.section .ticketTable{}

body#stage #main article.section dl{ }
body#stage #main article.section dl.date{ font-size: 1.8rem;display: grid; grid-template-columns: auto 1fr; margin-bottom: 1rem;}
body#stage #main article.section dl.date dt{ white-space: nowrap;}
body#stage #main article.section dl.date dd{ }

body#stage #main article.section dl.date dt:after{ content: '：'; display: inline-block;  padding: 0 0.3em;}

body#stage #main article.section dl.senkou{ }
body#stage #main article.section dl.senkou dt{   font-size: 1.2em;}
body#stage #main article.section dl.senkou dd{}



body#stage #main article .readEx{ text-align: left; margin-bottom: 2rem;}
body#stage #main article .readEx h4{ font-size: 1.4rem;}
body#stage #main article .readEx p{font-size: 0.8rem;}

body#stage #main #musicalStreaming{}

body#stage #main #musicalStreaming .ticketUnit{    border: dashed 1px #ccc;
    padding: 2rem; margin-bottom: 2rem;}
body#stage #main #musicalStreaming .ticketUnit > dt{ margin-bottom: 20px;}
body#stage #main #musicalStreaming .ticketUnit dd:last-child{ margin-bottom: 0;}
body#stage #main #musicalStreaming .streamingData{ margin-bottom: 0;}
body#stage #main #musicalStreaming .streamingData dt{ font-weight: bold;}
body#stage #main #musicalStreaming .streamingData dd{ margin-bottom: 1rem;}
body#stage #main #musicalStreaming .streamingData dd:last-child{ margin-bottom: 0;}

.ticketUnit{}
.ticketUnit > dt{ color: #ec008b; font-size: 1.5rem;}
.ticketUnit dd{margin-bottom:3em;  }

.ticketUnit dd.subArea{ border: dashed 1px #ccc; padding: 2rem;}
.ticketUnit dd.subArea > .kome{ padding-top: 0; margin-top: 0;}


.ticketUnit dd .date{font-size: 1.3em; }

.ticketUnitSub{}
.ticketUnitSub dt{font-size: 1rem;}
.ticketUnitSub dd{margin-bottom: 1em; }






.headUnit{ display: block; align-items: flex-start; justify-content: space-between;    border-bottom: solid 0px rgba(15,115,191, 0.2);
	margin-bottom: 0rem; padding-bottom: 0rem;}
.headUnit h3{ border-bottom: 0; margin-bottom: 0 !important}


.headSub{ flex: 1; font-size: 0.9rem; color: #666; font-weight: normal;  display: none;}
.headSub h4{}
.headSub dl{}
.headSub dl dt{ font-weight: bold;}
.headSub dl dd{ padding-bottom: 1rem;}
.headSub a{}
.headSub small{ display: inline-block; line-height: 1.4; font-size: 0.8rem;}

.exRead{
	display: block;
	background: rgba(0,0,0, 0.03);
	
       padding: 2rem;
    margin-bottom: 5rem;
    
}
.exRead h4{}
.exRead dl{}
.exRead dl dt{font-weight: bold;}
.exRead dl dd{padding-bottom: 1rem;}}
.exRead a{}
.exRead small{ display: inline-block; line-height: 1.4; font-size: 0.8rem;}



.kome{ padding: 2em 0; font-size: 0.8em;}
.kome li{ padding-left: 1.2rem; margin-bottom: 0.8em; line-height: 1.5; position: relative;}
.kome li:before{ content: '※'; display: inline-block; position: absolute; top: 0; left: 0; font-size: 0.9em; }

ul.list{ padding: 2em 0; font-size: 0.8em;}
ul.list li{ padding-left: 1.2rem; margin-bottom: 0.8em; line-height: 1.5; position: relative;}
ul.list li:before{ content: '・'; display: inline-block; position: absolute; top: 0; left: 0; font-size: 0.9em; }

h3 + .list,
h3 + .kome,
h4 + .list,
h4 + .kome,
h4 + .list,
h4 + .kome{ padding-top: 0;}
 

.pink{ color: #ec008b;}
.tRight{ text-align: right;}

#headInfo h3.info{ margin-bottom: 2em !important; text-align: center;}
#headInfo h3.info span{ display: block; font-size: 0.8em;}


#headInfo .kome,
#headInfo ul.list{ padding: 0em 0 0em 0; font-size: 1em;margin-bottom: 2em;}

#headInfo .kome li, 
#headInfo ul.list li{ line-height: 1.8; }

#musicalTicket table{ margin-bottom: 0;}
#musicalTicket table.ticketPrice { width: 35em;}
#musicalTicket table.ticketPrice th:nth-of-type(1) { width: 16em;white-space: nowrap;}
#musicalTicket table.ticketPrice th:nth-of-type(2) { width: 5em;white-space: nowrap;}
#musicalTicket table.ticketPrice td:nth-of-type(2) {  text-align: right;white-space: nowrap;}
#musicalTicket table.ticketPrice td:nth-of-type(3){ font-size: 0.9em; white-space: nowrap;} 

#musicalTicket table.ticketBuy th:nth-of-type(1) { width: 10em;}
#musicalTicket table.ticketBuy th:nth-of-type(2) { width: 26em;}
#musicalTicket table.ticketBuy td:nth-of-type(3){ font-size: 0.9em;} 

.ticketContact{  width: 100%; max-width: 100%; margin:3rem 0 3rem; display: flex; justify-content: space-between;}
.ticketContact dl{ width: 49%;}
.ticketContact dt{ background: rgba(0,0,0, 0.03); border: solid 0px  rgba(239,0,136, 1); color:#000; text-align: center; padding: 0.5em; font-size: 1.0em;}
.ticketContact dd{ text-align: center; padding: 1em;}
.ticketContact strong{ font-size: 1.2em; font-weight: normal !important;}


.castGtoup{font-size: 1.2rem;}
.castList{}
.castList ul{display: flex; width: 100%; flex-wrap: wrap; justify-content: space-between;}
.castList ul li{width: 100%; margin-bottom: 1rem;}
.castList dl{ display: flex; width: 100%; margin-bottom: 2rem; flex-wrap: wrap;}
.castList li > dl > dt:nth-child(1) { width: 120px;}

.castList li > dl > dt img{ border: solid 1px #ccc;}


.colorUsagi dl > dt img{ border-color: #e9a2d0 !important;}
.colorMercury dl > dt img{ border-color: #1576c2 !important;}
.colorMars dl > dt img{ border-color: #c21b2b !important;}
.colorJupiter dl > dt img{ border-color: #24936d !important;}
.colorVenus dl > dt img{ border-color: #d77d1c !important;}
.colorUranus dl > dt img{ border-color: #23568b !important;}
.colorNeptune dl > dt img{ border-color: #2bb6a5 !important;}
.colorPluto dl > dt img{ border-color: #785748 !important;}
.colorSaturn dl > dt img{ border-color: #633688 !important;}
.colorChibi dl > dt img{ border-color: #e9a2d0 !important;}
.colorTuxedo dl > dt img{ border-color: #222a78 !important;}

.castList li > dl >  dd{ font-size: 0.8rem;}
.castList  li > dl > dd:nth-of-type(1) { width: 200px; padding-left: 1em; display:flex; align-items: center; align-content:flex-start;flex-wrap: wrap;    box-sizing: border-box; padding-top: 0.3em;}
.castList li > dl >  dd:nth-of-type(2) { flex: 1; border-left:solid 1px #ccc; padding-left:2.5em;  display:flex; align-items: center; align-content: center;flex-wrap: wrap; line-height: 1.8;}

.castList  li > dl > dd:nth-of-type(1) dl{ width: 100%; }
.castList dl dd p{color: #333; font-size: 0.85rem;  }

.castList dl dt img{ width: 100%; height: auto;}

.castList dl dl{ display: block; margin: 0; padding: 0;}
.castList dl dl dt{margin: 0; padding: 0;}
.castList dl dl dd{margin: 0; padding: 0;}



.castList dl.charaName{ margin-bottom: 0.5em;font-size: 1em;line-height: 1.5;}
.castList dl.charaName dt{ font-weight: bold; }
.castList dl.charaName dd{font-size: 0.9em;}

.castList dl.actorName{ margin-bottom: 0.5rem;line-height: 1.5;}
.castList dl.actorName dt{font-size: 2em;font-weight: bold; line-height: 1.5; margin-bottom: 0em; padding-top: 0em;}
.castList dl.actorName dd{}

.castList dl.actorName small{ font-weight: normal;}

.castList li.snowDancer{}
.castList li.snowDancer > dl > dt:nth-child(1){
	width: 320px;
    padding-left: 0em;

    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    text-align: center;
    box-sizing: border-box;
}

.castList li.snowDancer > dl > dt:nth-child(1) span{
        font-size: 1.3em;
    font-weight: bold;
           color: #333 !important;
    }

.castList li.snowDancer > dl > dd:nth-of-type(1){
flex: 1;
    border-left: solid 1px #ccc;
    padding: 2em 0 2em 2.5em;
    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
     
 }   
 
 .castList li.snowDancer > dl > dd:nth-of-type(1) p{   
	 font-size: 1.2em;
    font-weight: bold;
           color: #666 !important;}
    
    
    
.castList li.subCast{padding: 0em 0em 1em 0em;}
.castList li.subCast > dl > dt:nth-child(1){
	width: 100%;
    padding: 0em 0em 1em 0em;

    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    text-align: center;
    box-sizing: border-box;
    justify-content: center;
}

.castList li.subCast > dl > dt:nth-child(1) span{
        font-size: 1.3em;
    font-weight: bold;
      color: #333 !important;
    }

.castList li.subCast > dl > dd:nth-of-type(1){
		width: 100%;
flex: 1;
    border-left: solid 0px #ccc;
    padding-left:0em;
    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
         justify-content: center;
       
 }   
 
 .castList li.subCast > dl > dd:nth-of-type(1) span{
	  display: inline-block;
	  padding: 0.2em 1em;
	  border-right: solid 1px #ccc;
	         font-size: 1.3em;
    font-weight: bold;
    	          color: #666 !important;
 }
 
  .castList li.subCast > dl > dd:nth-of-type(1) span:last-child{ 	  border-right: 0;}
 
  .castList li.colorLuna:nth-child(12),
 .castList li.colorTuxedo{ padding-top: 3rem; }
 
 
 .indent{ padding-left: 1.5em; text-indent: -1.5em;}

.staffList{ display: none;}
.staffList dl{ display: grid; grid-template-columns: 150px 1fr; grid-gap:0.5em;width: 100%; margin-bottom: 2rem; flex-wrap: wrap;}
.staffList dl dt{ text-align: right; color: rgba(15,115,191, 1);font-size: 0.7em;  display: flex; align-items: center;  justify-content: flex-end; }
.staffList dl dd{padding-left: 0em;font-size: 0.9em;}
.staffList dl dd:after{ content: ''; display: block; width: 100%; }
.staffList .spot{ padding-bottom: 1rem;font-size: 1.5em;}
.staffList big{}
.staffList small{ font-size: 0.6em;}

.staffList dl dt span{ display: inline-block;}
.staffList dl dt span:after{ content: '：'; display: inline-block;}





.staffList.tate{
	  -ms-writing-mode: tb-rl;
  writing-mode: vertical-lr;
  
}
.staffList.tate dl{ display: grid; grid-template-columns: 80px 1fr; grid-gap:0.5em;width: 100%; margin: 2rem; flex-wrap: wrap;}
.staffList.tate dl dt{ text-align: right; color: rgba(15,115,191, 1);font-size: 0.7em;  display: flex; align-items: center;  text-align: right;justify-content: flex-end;}
.staffList.tate dl dd{padding-left: 0em;}
.staffList.tate dl dd:after{ content: ''; display: block; width: 100%; }
.staffList.tate .mainLast{ padding-right: 1rem;}
.staffList.tate big{font-size: 1.2em;}


small{ font-size: 60%;}

.staffUnit{ display: block; align-content: center; justify-content: space-between; flex-wrap: wrap; width: auto; margin: 0 auto 1rem;}
.staffUnit dl{  display: grid; grid-template-columns: 7rem 1fr; grid-gap:1rem; width: auto; padding: 0rem 0;text-align: left;  margin: 0 0 1.5%;  background: transparent; border: solid 0px rgba(15,115,191, 0.2);}

.maxsize .staffUnit dl{}

.staffUnit dl dt{padding: 0.25rem 0 0; color: rgba(15,115,191, 1);font-size: 0.8rem; text-align: right;}
.staffUnit dl dd{padding: 0rem 0 0;font-size: 1.2em; }
.staffUnit dl dd:after{ content: ''; display: block; width: 100%; }

.staffUnit small{ font-size: 0.8em; display: inline-block; text-align: center; margin-left: 0.5em;}

.staffUnit.staffTop{ font-size: 1.4rem;}
.staffUnit.staffTop dl{font-size: 1.4rem;}
.staffUnit.staffTop dt{font-size: 1.0rem;padding: 0.4rem 0 0; }
.staffUnit.staffTop dd{font-size: 1.4rem;}

.staffUnit.staffMain{ font-size: 1.4rem; margin-bottom: 3rem}
.staffUnit.staffMain dl{font-size: 1.4rem;}
.staffUnit.staffMain dt{font-size: 1.0rem;padding: 0.4rem 0 0; }
.staffUnit.staffMain dd{ font-size: 1.4rem;}


.staffUnit.staffSub{ }
.staffUnit.staffSub dl{}
.staffUnit.staffSub dt{ }


.staffUnit dl.ad{}
.staffUnit dl.ad:nth-last-child(5){ }

.staffUnit dl.sup{}
.staffUnit dl.sup:nth-last-child(3){ margin-top: 3rem;}

.staffUnit img.logo{ width: auto; height: 3rem; margin: 0 1rem}
.staffUnit img.logo.fm{}
.staffUnit img.logo.eplus{}



ul.goodsList{}
ul.goodsList{}

ul.goodsList li{ display: flex; margin-bottom: 2rem; padding: 5rem 1rem 3rem; border-bottom: solid 1px rgba(15,115,191, 0.2);
	
	background: url(/img/stage/icon_gekijou.png) left top no-repeat;
}

.goodsList li.gekijou_new {
    background: url(/stage/img/icon_gekijou_new.png) left top no-repeat;
}

.gingaLogo{ width: 80%; max-width: 300px;}

ul.goodsList .image{ width: 250px; margin-right: 2rem;}
ul.goodsList .image img{ width: 100%; height:auto; }
ul.goodsList .data{ flex: 1;font-size: 0.9rem; }
ul.goodsList h3{ font-size: 1.6rem !important;color: rgba(15,115,191, 1)}
ul.goodsList h4{ font-size: 1.2rem !important;}
ul.goodsList .price{ margin-bottom: 1rem; }

ul.goodsList .data p.txt{    color: rgba(15,115,191, 1); line-height: 1.6; font-weight: 500;}
ul.goodsList .data p.txt small{ display: inline-block; font-size: 0.8em; margin-bottom: 0.2em;}

ul.goodsList .data p.spec{ display: inline-block; line-height: 1.4; font-size: 0.8em; padding: 5px 10px; background: rgba(0,0,0,0.02); border: dotted 0px #ccc; border-radius: 10px; margin:0px 0px 0; transform: translate(-10px,0)}


.summaryUnit{margin-bottom: 2rem; font-size: 1.6em; font-weight: 300;}
.mini .summaryUnit{ font-size: 1.4em; }

.summaryUnit dl{display: inline-block; margin-right: 0.5em;}



.summaryUnit dt{display: inline-block;}
.summaryUnit dd{display: inline-block; }

.summaryUnit dl:nth-of-type(2){ margin-right: 0.1em;} 

.summaryUnit .slash{  display: inline-block; padding-left: 0.2em;}

.summaryUnit dl.gensaku{display: block;}
.summaryUnit dl.gensaku dt{font-size: 1.0em;}
.summaryUnit dl.gensaku dd{font-size: 1.2em;}

.summaryUnit dl .job{
    font-weight: 700;
    color: rgba(15,115,191, 1);
    font-size: 1.3rem;
}
.colon{
	    font-weight: 700;
    color: rgba(15,115,191, 1);
    font-size: 1.3rem;
    display: inline-block;
    padding: 0 0.2em;
}


.castGrid{ display: grid;grid-template-columns: 4rem 1fr;}
.mini .castGrid{ display: grid;grid-template-columns:1fr;}

.castGrid h4{ padding-top:0.2em !important; }

ul.cast{ margin-bottom: 1rem; font-size: 1.3em;}
.mini ul.cast{font-size: 0.9em;}
ul.cast li{ display: inline-block; margin-right: 0.5em; }

ul.cast li.slashItem{ margin-right: 0;}

ul.cast li .slash{  display: inline-block; padding-left: 0.2em;}

ul.cast.sub{ font-size: 1.1em;    padding-top: 2rem;    margin-bottom: 3rem;}
.mini ul.cast.sub{ font-size: 0.7em; padding-top: 1rem;    margin-bottom: 2rem;  }

.qaUnit { margin: 0 0 1.5%;}
.qaUnit dt{padding: 0.5rem 1rem; font-size: 1.4em; background: rgba(15,115,191, 0.05); margin-bottom: 0.5em;
	
font-weight: 700;    color: rgba(15,115,191, 1);
}
.qaUnit dd{padding: 0.5rem 1rem;font-size: 1em; margin-bottom: 2rem;}
.qaUnit dd strong{ font-size: 1.1em;}

.exInfo {
    margin-bottom: 3rem;
    border: solid 0px #ccc;
    padding: 1rem;
    font-size: 0.8rem;
    line-height: 2;
}

.exInfo p:last-child{ padding-top: 2em;}





.adDocument{ padding: 50px 0; text-align: center;}

.btnWrap{ display: inline-block;}
.btnWrap a{ position: relative; text-decoration: none; display: flex; align-content: center; justify-content: center;min-width:280px; margin: auto; padding: 10px 30px; border-radius: 5px;  background:  rgba(15,115,191, 1); color: #fff !important; transition: all 300ms ease;}
.btnWrap a:hover{background:  rgba(15,115,191, 0.8);  }

.btnWrap.pink a{background:  rgba(247,157,197, 1);  }
.btnWrap.pink a:hover{background:  rgba(247,157,197, 0.8);  }

.btnWrap a span{ position: relative; display: inline-block; padding-right: 0rem; border: solid 0px #ccc;}

.btnWrap a.iconPdf:before{ content: 'PDF'; font-size: 0.8em; display: inline-block; line-height: 1.2; padding: 0.3em; position: absolute; top: 50%; left:2rem; transform: translate(0,-50%) rotate(0deg) scale(1,1);background:#c00; color: #fff; border-radius: 3px; }

.btnWrap:not(.btnBoxWrap) a:after{ content: ''; display: inline-block; width: 0.6em; height: 0.6em; position: absolute; top: 50%; right:2rem; transform: translate(0,-50%) rotate(45deg) ; border: solid 2px #fff;  border-bottom: 0; border-left: 0;}

.btnBoxWrap{ }
.btnBoxWrap a{padding: 20px 20px;min-width:180px; }
.btnBoxWrap a div{display: flex; align-content: center; justify-content: center;}
.btnBoxWrap a div span:nth-of-type(1) { width: 20%;padding-left: 1rem;}
.btnBoxWrap a div span:nth-of-type(2) { width: 80%; padding-right: 2rem;}
.btnBoxWrap a div span{ position: relative; display: grid; align-content: center; line-height: 1; }
.btnBoxWrap a img{ display: inline-block; width: 100%; max-width: 100px; height: auto; margin: 0px;}

.btnBoxWrap a:hover img{ opacity: 1 !important;}

.btnBoxWrap a div span:nth-of-type(2):after{ content: ''; display: inline-block; width: 0.6em; height: 0.6em; position: absolute; top: 50%; right:1rem; transform: translate(0,-50%) rotate(45deg) ; border: solid 2px #fff;  border-bottom: 0; border-left: 0;}


.btnBoxWrap{}
.btnBoxWrap a{}
.btnBoxWrap a div{}
.btnBoxWrap img{}
.btnBoxWrap span{}



ul.goodsList > li{ position: relative; background: none !important;}
ul ul.icon{ display: flex;justify-content:flex-start; align-items: center; width: 200px; position: absolute;top: 0; left: 0;}
ul ul.icon li{ display: inline-block; padding: 0 !important; width: 60px !important; height: 60px !important; border-radius: 30px !important; background: #000; color: #fff; position: relative; margin-right: 5px;}
ul ul.icon li.g{ background: #ee2a7b; }
ul ul.icon li.t{background: #0f73bf; }
ul ul.icon li.e{ background: #00b312;}
ul ul.icon li:after{ content: ''; display: inline-block; position: absolute;top: 50%; left: 50%; transform: translate(-50%,-50%); font-size: 1.0em; white-space: nowrap;}
ul ul.icon li.g:after{ content: '劇場'; }
ul ul.icon li.t:after{ content: '店舗'; }
ul ul.icon li.e:after{ content: '通販'; }

ul.goodsList.flex{}
ul.goodsList.flex li{ flex-wrap: wrap;}
ul.goodsList.flex li .image{ width: 250px;margin-bottom: 40px;}
ul.goodsList.flex li .data{ width: calc(100% - 300px); flex: none; margin-bottom: 40px;}



html.middle .goodsList li .image {
    width: 100%;
    float: none;
    text-align: center;
    padding: 0 0 0 0;
    margin-bottom: 20px;
}

html.middle .goodsList li .data{
	 width: 100%;
    float: none;

}


html.mini .goodsList li .image {
    width: 100%;
    float: none;
    text-align: center;
    padding: 0 0 0 0;
    margin-bottom: 20px;
}

html.mini .goodsList li .data{
	 width: 100%;
    float: none;

}

html.mini ul.goodsList.flex > li{ padding-top: 100px !important;}
html.mini  ul ul.icon { width: 300px;}
html.mini  ul ul.icon li{  width: 80px !important; height: 80px !important; border-radius: 40px !important; }

@media screen and (max-width: 1000px) {
  table.tbl-r05 {
    width: 100%;
         border-left:0;
  }
 table.tbl-r05 .thead {
    display: none;
  }
  table.tbl-r05 tr {
    width: 100%;
  }
  table.tbl-r05 td {
	  position: relative;
    display: block;
    text-align: left;
    width: 100%;
        padding: 3em 2em 1em !important;
             border-bottom:0;
             box-sizing: border-box;
   
  }
  table.tbl-r05 td:first-child {
    background: #eee;
 padding: 0.5em !important;
    text-align: left;
    width: auto;

  }
  
  table.tbl-r05 tr:last-child td:last-child{  border-bottom: solid 1px #ccc;}
  table.tbl-r05 td:before {
    content: attr(data-label);
    position: absolute;
    top: 0.5em;
    left: 0.5em;


  }
}








.middle{}


html.mini,
html.mini body{ font-size: 24px;}

.mini body#stage #pageVisual{ background: url(/stage/upload/sms_HPKV_4-4.jpg) center center no-repeat; background-size: cover;  margin-bottom: 20px;}
/* .mini body#stage #pageVisual{ background: url(../image/_msc_dummy.png) center center no-repeat; background-size: cover;  margin-bottom: 20px;} */
.mini body#stage #pageVisual2:after{ content: ''; display: block; width: 100%; height: 0; padding-top: 120%;}


.mini #pageSubMenu{ margin-bottom: 5rem;}
.mini body#stage #main{ display: block;-webkit-text-size-adjust: none;}
.mini body#stage #main *{}
.mini body#stage #main #grid-content-entry{ width: 100% !important; padding: 0 25px;}
.mini body#stage #main #side {
    width: 750px !important;
    float: none !important;
    margin: 60px auto 0 !important;
    position: relative !important;
    padding-top: 30px !important;
    padding-bottom: 140px !important;
    background-color: #fff;
}



.mini body#stage #pageSubMenu ul.musicalSubmenu{ flex-wrap: wrap; padding: 1%;}
.mini body#stage #pageSubMenu ul.musicalSubmenu li {
    width: 32.5%;
    margin-bottom: 1%;
    font-size: 1.8rem;
    min-height: 3.5rem;
}
.mini body#stage #pageSubMenu ul.musicalSubmenu li a{ padding: 0.5rem 0;  min-height: 100%;}

.mini body#stage #pageSubMenu ul.musicalSubmenu li a span{ }

.mini body#stage #pageSubMenu ul.musicalSubmenu li span:after{font-size: 0.8em; padding-top: 0.1em; line-height: 1}




.mini body#stage #main article.section { font-size: 1.1rem; word-break: break-all;}
.mini body#stage #main article.section .newsList{}
.mini body#stage #main article.section .newsList li {    border-bottom: solid 1px rgba(15,115,191, 0.2); margin-bottom: 0.5em;}
.mini body#stage #main article.section .newsList a{ }
.mini body#stage #main article.section .newsList a:hover{ }
.mini body#stage #main article.section .newsList dl{ display: flex; flex-wrap: wrap; }
.mini body#stage #main article.section .newsList dt{ width: 7em; font-size: 0.7rem; display: flex; align-items: center; }
.mini body#stage #main article.section .newsList dt span{ }
.mini body#stage #main article.section .newsList dd{ flex: auto; width: 100%; padding-left: 0em; padding-top: 0.5em;}


.mini body#stage #main article#musicalNews h3{margin-bottom: 0.5rem !important;}

.mini ul.cast li{ }


.mini #musicalTicket table.ticketPrice{ width: 100%;}

.mini .ticketContact{ display: block;}
.mini .ticketContact dl{ width: 100%;}


.mini body#stage #main article.section .stageLogo{    max-width: 100%;    width: 80%;}

.mini body#stage #main article.section .aboutWrap h5{    font-size: 1.5rem; padding: 0; margin-bottom: 0.8em}
body#stage #main article.section .aboutWrap{}
.mini body#stage #main article.section .aboutWrap,
.mini body#stage #main article.section .aboutWrap p{ text-align: left !important;}
.mini body#stage #main article.section .aboutWrap br{ display: none;}

.mini body#stage #main article.section .aboutWrap br.only{ display: block;}

/*
	
.mini .castGtoup{font-size: 1.2rem;}
.mini .castList{}
.mini .castList ul{}
.mini .castList ul li{}
.mini .castList dl{ display: block; width: 100%; margin-bottom: 4rem;}
.mini .castList dl dt{ width: 100%;}
.mini .castList dl dd{flex: 1;width: 100%;padding: 0em;font-size: 1rem;}
.mini .castList dl dd p{color: #333; }




.mini .castList dl.charaName{ display: flex; margin-bottom: 1rem;font-size: 1rem; padding-top: 1rem;}
.mini .castList dl.charaName dt{font-size: 1.3rem; line-height: 1.3rem;;margin-bottom: 0; display: inline-block; width: auto;}
.mini .castList dl.charaName dd{font-size: 1.0rem; line-height: 1.3rem;margin-bottom: 0;display: inline-block; width: auto;margin-left: 1em; color: #666;}

.mini .castList dl.actorName{ display: flex; margin-bottom: 1rem;}
.mini .castList dl.actorName dt{font-size: 2.3rem;line-height: 2.3rem;display: inline-block; width: auto;}
.mini .castList dl.actorName dd{font-size: 0.8rem; line-height: 2.6rem; display: inline-block; width: auto;margin-left: 1em;color: #666;}
*/




.mini .staffUnit{ }
.mini .staffUnit dl{grid-template-columns: 5rem 1fr;}

.mini .staffUnit dl.sup{    grid-template-columns: 3rem 1fr;}

.mini .staffUnit small{ }

.mini .staffUnit.staffTop{ }


.mini .staffUnit.staffMain{}




.staffUnit.staffSub{ }
.staffUnit.staffSub dl{}
.staffUnit.staffSub dt{ }

.mini .staffUnit img.logo{ width: auto; height: 2.5rem; margin: 1rem 1rem}


.mini ul.goodsList li{ display: block; margin-bottom: 4rem; padding: 0rem 1rem 2rem; border-bottom: solid 1px #f8b2d7;}
.mini ul.goodsList .image{ width: 100%; margin-right: 0rem; margin-bottom: 2rem;}
.mini ul.goodsList .image img{ width: 100%; height:auto; }
.mini ul.goodsList .data{width: 100%;  font-size: 1rem; }
.mini ul.goodsList h3{ font-size: 1.6rem !important;color: rgba(15,115,191, 1)}
.mini ul.goodsList h4{ font-size: 1.2rem !important;}
.mini ul.goodsList .price{ margin-bottom: 1rem; }



@media screen and (max-width:1024px) {
table.ticketTable.yoko th,
table.ticketTable.yoko td{ width: auto;padding: 0.6em 0.3em; font-size: 0.9rem; line-height: 1.2;}

table.ticketTable.yoko th  br,
table.ticketTable.yoko th  br{ display: inline-block;}


}
@media screen and (max-width:767.98px) {/* 変更点。0.02引く。 */
/* ここにSP向けのCSS指定 */


}

@media screen and (max-width:1024px) {
/* ▼ここにPC向けのCSS指定 */
.castList ul{display: flex; width: 100%; flex-wrap: wrap; justify-content: space-between;}
.castList ul li{width: 100%; margin-bottom: 1rem;}
.castList dl{ display: flex; width: 100%; margin-bottom: 2rem; flex-wrap: wrap;}
.castList li > dl > dt:nth-child(1) { width: 40%;}
.castList li > dl >  dd{ font-size: 0.8em;}
.castList  li > dl > dd:nth-of-type(1) {  flex: 1; padding-left: 1em; display:flex; align-items: center; align-content: center;flex-wrap: wrap;    font-size: 1.2rem;}
.castList li > dl >  dd:nth-of-type(2) { width: 100%;flex: auto;  border-left:0; padding:1em 0em 0em;  display:flex; align-items: center; align-content: center;flex-wrap: wrap; }

.castList  li > dl > dd:nth-of-type(1) dl{ width: 100%; }





.castList dl.charaName dt{ font-size: 1.1rem;}
.castList dl dd p{    font-size: 1.1rem; line-height: 1.6;}
.castList dl dd p br{ display: none;}

.castList li.snowDancer{}
.castList li.snowDancer > dl > dt:nth-child(1){
	width: 100%;
    padding-left: 0em;

    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    text-align: center;
    box-sizing: border-box;
    justify-content: center;
}

.castList li.snowDancer > dl > dt:nth-child(1) span{
       font-size: 1.5rem;
    font-weight: bold;
    }

.castList li.snowDancer > dl > dd:nth-of-type(1){
		width: 100%;
		
flex: 1;
    border-left: 0;
    padding: 0.5em 0 2em 0em;
    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    text-align: center;
    justify-content: center;
     
 }   
 
 .castList li.snowDancer > dl > dd:nth-of-type(1) p{   
	   font-size: 1.7rem;
    font-weight: bold;}
    
 .castList li.snowDancer > dl > dd:nth-of-type(1) span{ display: inline-block;}
    
.castList li.subCast{padding: 4em 0em;}
.castList li.subCast > dl > dt:nth-child(1){
	width: 100%;
    padding: 2em 0em;

    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
    text-align: center;
    box-sizing: border-box;
    justify-content: center;
}

.castList li.subCast > dl > dt:nth-child(1) span{
      font-size: 1.5rem;
    font-weight: bold;
    }

.castList li.subCast > dl > dd:nth-of-type(1){
		width: 100%;
flex: 1;
    border-left: solid 0px #ccc;
    padding-left:0em;
    display: flex;
    align-items: center;
    align-content: center;
    flex-wrap: wrap;
         justify-content: center;
 }   
 
  .castList li.subCast > dl > dd:nth-of-type(1) p{
	  display: flex;
	  width: 100%;
	      flex-wrap: wrap;

  }
 
 .castList li.subCast > dl > dd:nth-of-type(1) span{
	 width: 50%;
	  display: block;
	  padding: 0;
	  border: 0;
	            font-size: 1.7rem;
    font-weight: bold;
    text-align: center;

    
 }
 
  .castList li.subCast > dl > dd:nth-of-type(1) span:last-child{ 	  border-right: 0;}
 
 
body#stage #main article.section .aboutWrap{ margin-top: 0rem;}






/* ▲ここにPC向けのCSS指定 */
}



@media screen and (min-width:1024px) {
/* ▼ここにPC向けのCSS指定 */
    
    


/* ▲ここにPC向けのCSS指定 */
}

@media screen and (max-width:1024px) {
/* ▼ここにPC向けのCSS指定 */
    
    #musicalTicket table.ticketPrice{ width: 100%;}
    .ticketZaseki{grid-template-columns: 1fr; }

/* ▲ここにPC向けのCSS指定 */
}


body#musical #grid-content-entry .box{
	    box-shadow: 0 0 0px #ccc;
    -moz-box-shadow: 0 0 0px #ccc;
    -webkit-box-shadow: 0 0 0px #ccc;
}






.musicalQA h4:not(:first-child){ padding-top: 3rem !important;  margin-top: 3rem !important;  border-top: dotted 1px #ccc;}

.musicalQA h6{ font-size: 1.1rem; font-weight: 600 !important; margin-bottom: 1.0rem;}

.musicalQA .btnWrap a{  padding: 10px 60px 10px 30px; }
	
.musicalQA .toujitsu {}
.musicalQA .toujitsu table.ticket {
  border-collapse: collapse;
  text-align: left;
  line-height: 1.5;
  border-top: 3px solid #ec008b;
  border-left: 1px solid #ccc;
  margin-bottom: 40px;
  box-sizing: border-box
}
.musicalQA .toujitsu table.ticket .header {}
.musicalQA .toujitsu table.ticket .header td {
  background-color: #f2f2f2
}
.musicalQA .toujitsu table.ticket .type {
  white-space: nowrap;
  padding: 10px;
  font-weight: 700;
  vertical-align: top;
  color: #000;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  width: 80px !important
}
.musicalQA .toujitsu table.ticket td {
  box-sizing: border-box;
  padding: 10px;
  vertical-align: top;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc
}
.musicalQA .toujitsu table.ticket td:nth-of-type(2) {
  width: 250px
}
.musicalQA .toujitsu table.ticket td:nth-of-type(3) {
  min-width: auto
}
.musicalQA .red{ color: #c00;}

.musicalQA  ul.kome{ padding-top: 0em;}
.musicalQA  ul.list {font-size: 1em;}

.musicalQA  .qaUnit dd > ul.list{ padding-top: 0.5em; } 

.musicalQA  ul.list li{
	    padding-left: 1.2rem;
    margin-bottom: 1.2em;
    line-height: 1.7;
}

.musicalQA  ul.abc { list-style-type:upper-alpha;}
.musicalQA  ul.abc li{
	    padding-left: 0.5rem;
	    margin-left: 1.5em;
    margin-bottom: 1.2em;
    
    line-height: 1.7;
}


@media screen and (max-width:1050px) {
  .musicalQA .toujitsu table.ticket {}
  .musicalQA .toujitsu table.ticket .header {
    display: none
  }
  .musicalQA .toujitsu table.ticket .type {
    display: block;
    width: 100% !important;
    background-color: #f2f2f2
  }
  .musicalQA .toujitsu table.ticket td {
    display: block;
    width: 100% !important;
    empty-cells: hide
  }
  .musicalQA .toujitsu table.ticket td.empty {
    display: none !important
  }
}