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

html{font-size:62.5%;}
body{font-family:"メイリオ", Meiryo, Osaka,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",  "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;word-break:normal;word-wrap:break-word;-webkit-text-size-adjust: 100%;}
body,div,nav,section,article,aside,header,footer,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,table,th,td{margin:0;padding:0;}
div,nav,section,article,aside,header,footer,ul,ol,li,table,th,td,dl,dt,dd{box-sizing:border-box;-moz-box-sizing:border-box;-webkit-box-sizing:border-box;-o-box-sizing:border-box;-ms-box-sizing:border-box;}
h1,h2,h3,h4,h5,h6{font-size:20px;font-size:2rem;font-weight:bold;}
a{color:#fff;text-decoration:none;}
p{line-height:2;}
li,dt,dd,th,td,a,span{line-height:1.5;}
a:hover{opacity:0.7;cursor:pointer}
table{border-collapse:collapse;border-spacing:0;border:thin solid #000000;}
th{border-bottom:thin solid #000000;font-weight:normal;}
td{border-bottom:thin solid #000000;border-left:thin solid #000000;}
fieldset,img{border:0;}
img{vertical-align:top;}
ol,ul{list-style:none;}
caption,th{text-align:l;}

/*.clearfix
----------------------------------------------*/
.clearfix:after {content: ".";display: block;height: 0;clear: both;visibility: hidden;}
.clearfix {display: inline-block;}
/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}

/*body
----------------------------------------------*/

body{
	width:100%;
	background:url(../img/common/bg.png);
	color:#fff;
}

/*comWrap
----------------------------------------------*/

.comWrap{
	margin:0 auto;
	font-size:12px;
	font-size:1.2rem;
}

/*headerArea
----------------------------------------------*/

.headerArea{}

.headerArea .headerWrap{
	text-align:center;
	background:#000;
}

#topSlider{
	margin:0 0 30px;
}

#topSlider .slick-prev{
	width:20px;
	height:20px;
	background-image:url(../img/top/topPrevBtn.png);
	z-index:1;
	position:relative;
	margin-top:-25px;
}

#topSlider .slick-next{
	width:20px;
	height:20px;
	background-image:url(../img/top/topNextBtn.png);
	z-index:1;
	position:relative;
	margin-top:-25px;
}

.headerPlaceList{
	padding:0;
	margin:0 0 30px;
}

.headerPlaceList{
	padding:0 2%;
}

.headerPlaceList li{
	padding:10px 0;
}

.headerPlaceList li:nth-of-type(1){
	border-bottom:1px solid #7d0000;
	margin:0 0 3px;
}

.headerPlaceList li:nth-of-type(2){
	border-top:1px solid #7d0000;
}

.headerBnrList{
	margin:0 0 45px;
}

.headerBnrList li{
	margin:10px 0;
	border:1px solid #7d0000;	
	animation:opac 2s infinite ease-in;	
}

@keyframes opac{
	0%{opacity:1;}
	50%{opacity:0.3;}
	100%{opacity:1;}		
}

.headerThumbList li{
	float:left;
	width:25%;
}

.headerThumbList li:nth-of-type(1),
.headerThumbList li:nth-of-type(2){
	width:50%;
}

.topEmbed{
	margin:45px 0 0;
	position: relative;
	width: 100%;
	padding-top: 56%;
}

.topEmbed iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/*resNaviArea
----------------------------------------------*/

#fixedHeader{
	display:block;
	position:fixed;
	top:0;
	left:0;
	width:100%;
	height:46px;
	background:#000;
	z-index:3;
}

.menuBtn{
	position:fixed;
	width:46px;
	height:46px;
	top:0;
	right:0;
	overflow:hidden;
	text-indent:-1000px;
	background:url(../img/common/menuBtn.png) center center no-repeat;
	background-size:75% auto;
	background-color:#000;
	display:block;
	z-index:4;
}

/*#closeBtn{
	display:none;
}*/

#closeBtn2,
#closeBtn3{
	display:block;
	margin:30px 0 0;
	width:100%;
	text-align:center;
}

#closeBtn2 img,
#closeBtn3 img{
	margin:0 5px;
	line-height:1;
}

.resNaviArea{
	position:fixed;
	top:0;
	left:100%;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.9);
	z-index:3;
}

.resNaviArea2{
	position:fixed;
	top:46px;
	left:-100%;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.9);
	z-index:3;
}

.resNaviWrap{
	height:100%;
	overflow-y:scroll;
}

.resNaviContents{
	padding:15px 3% 60px;
}

.resNaviContents li{
	font-size:16px;
	box-shadow:0px 5px 5px -5px rgba(166,166,166,0.9);
}

.resNaviContents li a{
	display:block;
	font-size:14px;
	box-sizing:border-box;
	padding:15px 30px 12px 3px;
	width:100%;
	height:100%;
	background-image:url(../img/common/iconArrowR.png);
	background-position:right 20px center;
	background-repeat:no-repeat;
	background-size:auto 7px;
}

.resNaviContents li a img{
	line-height:1;
	vertical-align:baseline;
}

.resNaviContents dt{
	font-size:15px;
	font-weight:bold;
	margin:0 0 10px;
	padding:2px 0 4px;
/*	background:rgba(41,47,136,0.5);*/
	border-bottom:1px solid #7d0000;
}

.resNaviContents dt:nth-last-of-type(1){
	margin-top:25px;
}

.resNaviContents dd{
	font-size:15px;
	margin:0 0 10px;
	padding:0 0 0 10px;
}

.resNaviContents dd span{
	font-size:13px;
}

/*inquiryArea
----------------------------------------------*/

.inquiryArea{
	background:rgba(50,50,50,0.3);
}

.inquiryWrap{
	padding:20px 3%;
}

.inquiry{
}

.inquiry dl{
	margin:0 0 20px;
}

.inquiry dl:nth-last-of-type(1){
	margin:0;
}

.inquiry dt{
	margin:0 0 3px;
}

.inquiry dd{
	padding:0 0 0 30px;
}

.inquiry dd:nth-last-of-type(1){
	margin-bottom:0;
}

.inquiry dd a{
	font-size:16px;
}

#ticketList{
	position:fixed;
	bottom:185px;
	right:-100%;
	width:200px;
	background:rgba(255,255,255,0.7);
}

/*チケットボタン*/

#ticketBtn{
	position:fixed;
	top:5px;
	left:5px;
	display:block;
	height:36px;
	padding:9px 10px;
	border:1px solid #970000;
	z-index:5;
	box-sizing:border-box;
	background-color:#000;
}

#ticketBtn img{
	line-height:1;
}

#ticketBtn:hover{
	cursor:pointer;
	opacity:1;
}

/*DVDボタン*/

#btnDvd{
	width:180px;
	height:45px;
	margin:15px auto 0;
	display:block;
}

/*footerArea
----------------------------------------------*/

.footerArea{
	position:relative;
	overflow:hidden;
	background:#000;
	text-align:center;
}

.footerWrap{
	font-size:10px;
	font-size:1rem;
	padding:15px 3%;
}

.footerWrap p{
	text-align:left;
	margin:0 0 15px;
}

.footerLinks{
	margin:0 0 15px;
}

.footerLinks li{
	display:inline-block;
	padding:0 10px;
}

.footerLinks li:nth-of-type(2){
	border-left:1px solid #fff;
	border-right:1px solid #fff;
}

.footerWrap dl{
	margin:0 0 15px;
}

.footerWrap dt{
	margin:0 0 10px;
}

.footerWrap dd{
	margin:0 0 5px;
}

.copyList li{
}

/*共通
----------------------------------------------*/

.headerArea,
.naviArea,
.inquiryArea,
.footerArea,
.topContentsArea,
.comContentsArea{
	width:100%;
}

.headerWrap,
.naviWrap,
.inquiryWrap,
.footerWrap,
.topContentsWrap,
.comContentsWrap{
	width:100%;
	margin:0 auto;
}

/*フロート*/

.left{float:left;}

.right{float:right;}

/*ページ内ナビゲーションボタン*/

.intLinks:hover{
	cursor:pointer;
}

/*トップページ
----------------------------------------------*/

.topBody{
	opacity:0;
}

.topBody .headerArea{
	padding-top:46px;
}

.topContentsWrap{
	padding:45px 3% 60px;
/*	background-image:url(../img/top/staffBg.png),url(../img/top/castBg.png);
	background-position:center 2100px,center 50px;
	background-repeat:no-repeat,no-repeat;
	background-size:100% auto,100% auto;	*/
	background:url(../img/top/topContentsBg.png) center 10px no-repeat;
	background-size:100% auto;
}

.topStaffContent{
	text-align:center;
	padding:0 0 60px;
}

.topStaffContent h2{
	margin:0 0 25px;
}

.topStaffContent li{
	line-height:2;
	margin:0 0 10px;
}

.topStaffContent table{
	border:none;
	margin:30px 0 0 21.5%;
	font-size:11px;
}

.topStaffContent th{
	border:none;
	text-align:left;
	vertical-align:top;
	line-height:2;
	padding:0 20px 5px 0;
    word-break: keep-all;
    white-space: nowrap;	
}

.topStaffContent td{
	border:none;
	text-align:left;
	vertical-align:top;
	line-height:2;
	padding:0 0 5px;
}

.topStaffContent .music td{
	padding-bottom:25px;
}

.topTopicsContent{
}

.topTopicsContent h2{
	line-height:1;
	background:url(../img/top/topicsHeaderBg.png) left center no-repeat;
	width:auto 100%;
	padding:5px 3%;
}

.topTopicsContent h2 img{
	vertical-align:baseline;
}

.topNews{
	width:100%;
	margin:0 0 45px;
}

.topNewsWrap{
	height:250px;
	overflow-y:scroll;
	padding:15px 5%;
	background-color:#292F33;
}

.topNewsWrap .oneArticle{
	margin:0 0 20px;
	padding:0 0 20px;
	border-bottom:1px solid #fff;
}

.topNewsWrap .oneArticle:nth-last-of-type(1){
	margin-bottom:0;
}

.topNewsWrap .articleThumb{
	float:left;
	width:25%;
}

.topNewsWrap .right{
	float:left;
	width:75%;
}

.topNewsWrap .articleDate{
	display:block;
	padding:0 0 0 10px;
	font-size:10px;
	margin:0 0 10px;
}

.topNewsWrap .articleTitle{
	display:block;
	padding:0 0 0 10px;
	font-size:14px;
	font-weight:normal;
}

.topNewsWrap .articleText{
	margin:15px 0 0;
	font-size:12px;
}

.topNewsWrap .articleText a{
	color:#f00;
}

.topTwitter{
	width:100%;	
}

.topTwitterWrap{
	height:250px;
	overflow:hidden;
	background:rgba(166,166,166,0.3);	
}

.timeline-Tweet-text{
	font-size:12px !important;
}

.topBnrList{
	margin:60px 0 0;
}

.topBnrList li{
	display:block;
	border:1px solid #7cb9c6;
}


/*下層ページ共通
----------------------------------------------*/

.comContentsArea{
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#001666+0,00585d+100&0.3+0,0.3+100 */
	background: -moz-linear-gradient(top,  rgba(0,22,102,0.3) 0%, rgba(0,88,93,0.3) 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  rgba(0,22,102,0.3) 0%,rgba(0,88,93,0.3) 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(0,22,102,0.3) 0%,rgba(0,88,93,0.3) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#4d001666', endColorstr='#4d00585d',GradientType=0 ); /* IE6-9 */
}

.comContentsWrap{
	padding:66px 3% 30px;
}

.comContentsWrap h1{
	text-align:center;
	margin:0 0 45px;
}

/*ABOUT＆STORYページ
----------------------------------------------*/

.aboutBody .comContentsWrap{
	background:url(../img/about/aboutBg.png) center 90px no-repeat;
	background-size:100% auto;
}

.aboutContent{
	margin:0 0 45px;
}

.aboutContent h2{
	line-height:1;
	margin:0 0 20px;
}

.aboutContent p{
	margin:0 0 15px;
}

/*CASTページ
----------------------------------------------*/

.castBody{
	opacity:0;
}

.castBody .comContentsWrap{
	background:url(../img/about/aboutBg.png) center 90px no-repeat;
	background-size:100% auto;
}

.scrollContent{
}

.scrollContent h2{
	text-align:center;
	margin:15px 0 20px;
}

.scrollContent h3{
	margin:0 0 10px;
}

.scrollContent p{
	margin:0 0 20px;
}

#castSliderNavi{
}

#castSliderNavi .slick-slide{
	margin:30px 0 0;
	text-align:center;
}

#castSliderNavi .slick-slide img{
	text-align:center;
	display:inline-block;
}

/*TICKETページ
----------------------------------------------*/

.ticketBody .comContentsWrap{
	background-image:url(../img/about/aboutBg.png),url(../img/ticket/ticketBg.png);
	background-position:center 90px,center 1950px;
	background-repeat:no-repeat,no-repeat;
	background-size:100% auto,100% auto;
}

.ticketDetail{
	margin:0 0 75px;
}

.ticketDetail li{
	margin:0 0 60px;
}

.ticketContent{
	margin:0 0 60px;	
}

.ticketContent h2{
	line-height:1;
	margin:0 0 25px;
}

.dateList{
	margin:0 0 30px;
}

.dateList dt{
	margin:0 0 20px;
}

.addList{
	margin:15px 0 0;
}

.addList dt{
	text-indent:-6px;
	margin:15px 0 10px;
	font-weight:bold;
}

.addList dt:nth-of-type(1){
	margin-top:0;
}

.addList dd{
	margin:0 0 10px;
	text-indent:-12px;
	padding:0 0 0 12px;
	line-height:1.7;
}

.playGuide{
	margin:30px 0 0;
}

.playGuide h3{
	border-bottom:1px solid #00a0e9;
	line-height:1;
	margin:0 0 20px;
}

.playGuide dl{
	padding:0 0 0 14px;
}

.playGuide dt{
	margin:20px 0 10px;
}

.playGuide dd{
	margin:0 0 10px;	
}

.playGuide .strongFont{
	font-weight:bold;
}

.preceding{
	padding:0 0 30px;
}

.precedingWrap{
	padding:0 4%;
}

#preceding4{
	margin-bottom:20px;
}

.preceding h2{
	margin:0 0 20px;
}

.preceding a{
	color:#f00;
}

.preceding p{
	font-size:16px;
	text-align:center;
	margin:0 0 15px;
}

.preceding table{
	border:none;
	margin:0 auto 25px;
}

.preceding th{
	border:none;
	padding:5px 0;
	text-align:right;
	word-break:keep-all;
	white-space:nowrap;
	vertical-align:top;
}

.preceding td{
	border:none;
	padding:5px 0;
	text-align:left;
	vertical-align:top;	
}

.preceding li{
	margin:0 0 5px;
	font-size:10px;
	text-indent:-10px;
	padding:0 0 0 10px;
	line-height:1.7;
}


#preceding6{
	margin:0 0 45px;
}

#preceding6 p{
	line-height:1.3;
	font-size:20px;
}

#preceding6 p span{
	font-size:14px;
}

#preceding6 p small{
	display:block;
	margin-top:10px;
	font-size:10px;
}

#preceding6 .detail6{
	margin-bottom:25px;
}

#preceding6 .detail6 dt{
	text-align:left;
	font-size:14px;
	font-weight:bold;
	margin:0 0 5px;
}

#preceding6 .detail6 dd{
	font-size:14px;
	margin:0 0 15px;
}

#preceding6 .caution6 dt{
	font-size:12px;
	margin:0 0 10px;
	text-indent:-6px;
}

#preceding6 .caution6 dd{
	font-size:12px;	
	margin:0 0 10px;
	text-indent:-12px;
	padding:0 0 0 12px;
}

.counter{
	margin:0 0 25px;
	font-size:15px;
}

.counter dt{
	margin:0 0 5px;
	text-indent:-7px;
	font-weight:bold;
}

.counter dt:nth-of-type(2){
	margin-top:20px;
}

.counter dd{
	margin:0 0 5px;
	padding:0;
	text-indent:0;
}

/*GOODSページ
----------------------------------------------*/

.goodsBody .comContentsWrap{
	background:url(../img/about/aboutBg.png) center 90px no-repeat;
	background-size:100% auto;
}

#goodsNavi{
	margin:0 0 60px;
}

#goodsNavi li{
	padding:0 5px;
}

#goodsNavi .slick-slide{
	margin:0;
	text-align:center;
}

#castSliderNavi .slick-slide img{
	text-align:center;
	display:inline-block;
}

.goods{
	margin:0 0 20px;
	font-size:13px;
	padding:15px;
	background-color:rgba(166,166,166,0.3);
}

.goods h2{
	margin:0 0 15px;
	line-height:1;
}

.goods p{
	margin:0 0 15px;
}

.goods li{
	font-size:11px;
	line-height:1.9;
	margin:5px 0;
}

.goods .detailList li{
	text-align:left;
	margin:0 0 15px;
	line-height:1;
}

.goods table{
	border:none;
	margin:0 0 15px;
}

.goods th{
	border:none;
	padding:3px 0;
	text-align:left;
}

.goods th:after{
	content:"：";
}

.goods td{
	border:none;
	padding:3px 0;
	text-align:left;
}

#goods7 table{
	font-size:12px;
}

#goods7 th{
	vertical-align:top;
	text-align:right;
}

#goods7 td{
	vertical-align:top;
}

.goodsGuide{
	font-size:12px;
	margin:30px 0 45px;;
	padding:15px 4%;
	background-color:rgba(0,0,0,0.5);
}

.goodsGuide h2{
	font-size:14px;
	line-height:1;
	text-align:center;
	margin:0 0 10px;
}

.goodsGuide li{
	text-indent:-12px;
	padding:0 0 0 12px;
	margin:0 0 10px;
}

.goodsGuideInner{
	padding:10px 3%;
	border:1px solid #7d192c;
	margin:20px 0;
}

.goodsGuideInner h3{
	font-size:14px;
	text-align:center;
	margin:0 0 15px;
}

.goodsGuideInner table{
	border:none;
	width:100%;
	font-size:13px;
	margin:0 auto;
}

.goodsGuideInner th{
	border:none;
	padding:0 0 5px;
	text-align:left;
	line-height:1;
	display:block;	
}

.goodsGuideInner td{
	display:block;
	border:none;
	padding:0 0 20px 13px;	
	text-align:left;
	line-height:1.9;
}

.goodsGuide dl{
	margin:5px 0 30px;
	padding:0 0 0 12px;
}

.goodsGuide dt{
	margin:0 0 5px;
}

.goodsGuide dd{
	text-indent:0;
}


/*GUIDEページ
----------------------------------------------*/

.guideBody .comContentsWrap{
	background:url(../img/about/aboutBg.png) center 90px no-repeat;
	background-size:100% auto;
}

.guideContent{
	padding:0 0 30px;
}

.guide{
	font-size:12px;
	padding:0 0 10px;
}

.guide h2{
	margin:0 0 15px;
	font-size:12px;
	color:#fff;
	padding:0 25px 0 0;
	font-weight:bold;
	border-bottom:3px double #7d192c;
	background:url(../img/guide/arrow.png) right 5px center no-repeat;
	background-size:auto 9px;
}

.guide h2:hover{
	opacity:0.8;
	cursor:pointer;
}

.guide h3{
	font-size:12px;
	display:inline-block;
	padding:3px 7px;
	margin:0 0 10px;
	background-color:rgba(0,0,0,0.2);
	border:1px solid #7d192c;
	font-weight:normal;	
}

.guide a{
}

.guide p{
	padding:0 0 15px;
}

.guide ul{
	padding:0 0 15px 18px;
}

.guide ul li{
	list-style:outside square;
	padding:0 0 10px;
}

/*Blu-ray&DVDページ
----------------------------------------------*/

.dvdBody .comContentsWrap{
	background:url(../img/about/aboutBg.png) center 90px no-repeat;
	background-size:100% auto;
}

.dvdBody .comContentsWrap{
	background-image:url(../img/about/aboutBg.png),url(../img/ticket/ticketBg.png);
	background-position:center 90px,center 800px;
	background-repeat:no-repeat,no-repeat;
	background-size:100% auto,100% auto;
}

.dvdContent p{
	margin:0 0 15px;
}

.dvdContent .dvdCopy{
	margin:0 0 25px;
}

/*.dvdContent .dvdCopy+p{
	word-break:break-all;
}*/

.price{
	margin:30px 0 ;
}

.price h2{
	font-size:14px;
	font-weight:normal;
	color:#00a0e9;
	border-bottom:1px solid #00a0e9;
	margin:0 0 15px;
}

.price dl{
	margin:0 0 15px 6px;
}

.price dt{
	margin:0 0 3px;
}

.price dd{
	padding:3px 6px;
	margin:0 0 10px;
}

.dvdContent{
	margin:0 0 45px;
}

.dvdContent li{
	margin:10px 0;
	text-indent:-12px;
	padding:0 0 0 12px;
}

.dvdContent .list{
	border:none;
	margin:30px 0 0;
}

.dvdContent .list th{
	border:none;
	padding:3px 0;
}

.dvdContent .list td{
	border:none;
	padding:3px 0;	
}

/*アコーディオン*/

.contentDisplay{
	display:none;
}

/*機能
----------------------------------------------*/

/*オーバーレイアニメ*/


#animeDisplay{
	width:100%;
	height:100px;
	text-align:center;
	background:#000;
	border-top:3px solid #7d0000;
	border-bottom:3px solid #7d0000;	
	color:#fff;
	position:fixed;
	z-index:6;
	top:50%;
	margin-top:-50px;
	left:-100%;
	opacity:0;
}

#animeDisplay p{
	line-height:100px;
}

#animeDisplay img{
	vertical-align:middle;
}


/*オーバーレイ*/

#overArea{
	display:none;
	position:fixed;
	z-index:20;
	width:100%;
	height:100%;
	background:rgba(0,0,0,0.7);	
	min-width:1200px;
	opacity:0;
	top:0;
}

#overArea:hover{
	cursor:pointer;
}

#overWrap{
	position:relative;
	z-index:25;
	display:none;
	width:1200px;
	padding:30px;
	margin:30px auto;
	border:1px solid #fff;
	opacity:0;
	color:#fff;
}

.overFixed{
	position:fixed;
	left:0;
	right:0;
}

#overCloseBtn{
	display:block;
	width:45px;
	height:45px;
	position:absolute;
	overflow:hidden;
	text-indent:-999px;
	top:0;
	right:0;
	background:url(img/common/iconW.png) 0 0 no-repeat;
	background-size:auto 100%;
}

#overCloseBtn:hover{
	cursor:pointer;
}

/*解析コード用*/

#siteCatalyst{
	height:1px;
	overflow:hidden;
}