@charset "utf-8";

/*----------------------------

		reset / tool

----------------------------*/
body,div,section,p,
ul,li,h1,h2,h3,h4{
	margin:0;
	padding:0;
	font-family:"メイリオ", Meiryo,"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

html,body{
	width:100%;
	height:100%;
}

ul{
	list-style:none;
}

li img{
	vertical-align:top;
}

h1,h2,h3,h4,strong{
	font-size:100%;
	font-weight:normal;
}

h1 img,h2 img{
	vertical-align:top;
}

p{
	font-size:11px;
	line-height:1.4em;
	letter-spacing:0.05em;
}

a{
	text-decoration:none;
}

a:hover{
	text-decoration:underline;
}

a img{
	border:0px;
}

.clearfix:after {
  content: ".";  
  display: block; 
  clear: both;
  height: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*\*//*/
  height: auto;
  overflow: hidden;
  /**/
}

/*----------------------------

		common

----------------------------*/

.wrapper{
	background:url(../images/bg.jpg) repeat-y left top;	
	background-size:100% 100%;
	height:100%;
	width:100%;
	min-width:840px;
	min-height: 600px;
	margin:auto;
	position:relative;
}

.bg{
	background-color:rgba(255,255,255,0.4);
	height:100%;
}

.contents{
	min-height:600px;
	padding:45px 0 80px;
	margin:0 auto;
	max-width:1000px;
	margin:auto;
	overflow:hidden;
}

.contents h1{
	font-size:22px;
	margin-bottom:1em;
	font-weight:bold;
}

.contents p{
	font-size:16px;
	line-height:1.5em;
}

.footer{
	background:#172a88;
	height:50px;
	padding:15px 0 15px;
	position:fixed;
	bottom:0;
	width:100%;
}

#gnav{
	width:1000px;
	margin:0 auto;
}

#gnav li{
	display:inline-block;
	margin:0 10px 10px 0;
}

#gnav li:last-child{
	margin-right:0;
}

#gnav li a{
	display:inline-block;
}

/*----------------------------

		index

----------------------------*/

#index .wrapper{
	padding:0 0;
}

#index .contents{
	background:url(../images/main_bg.jpg) no-repeat center top;
	width:950px;
	margin:0 auto;
	padding:0;
	z-index:1;
	overflow:visible;
}

#index .openingMovie{
	display:none;
}

#index .contents .main{
	width:815px;
	height:796px;
	float:left;
	position:relative;
}

#index .contents .main h1{
	position:absolute;
	left:0;
	top:525px;
}

#index .contents .main h2.text01{
	position:absolute;
	top:210px;
	right:0;
}

#index .contents .main h3.text02{
	position:absolute;
	top:400px;
	left:0;
}

#index .contents .main .release{
	position:absolute;
	top:400px;
	right:23px;
}

#index .contents .sidebar{
	float:left;
	padding:6px 0 0 5px;
	position:relative;
	height:790px;
}

#index .contents .sidebar li{
	padding-bottom:3px;
}

#index .contents .sidebar .sale{
margin-top:40px;
}

#index .contents .sidebar .banner{
	position:absolute;
	bottom:3px;
}


#index .contents .main #update{
background:rgba(255,255,255,0.6);
border:1px solid #231815;
width:270px;
position:absolute;
left:10px;
top:10px;
}

#index #update h2{
background:url(../images/icon.png) no-repeat 3px 2px #036eb7;
background-size:7%;
color:#fff;
padding:0 5px 0 27px;
font-size:15px;
line-height:27px;
}

#index #update .update{
padding:5px 10px 0;
overflow-y:scroll;
height:80px;
}

#index #update ul li{
font-size:14px;
line-height:1.4em;
padding-bottom:10px;
}

#index #update ul li a{
color:#231815;
}

/*----------------------------

		joca

----------------------------*/

#joca .contents h1{
	margin-bottom:0.2em;
}

#joca h2{
	font-size:16px;
	margin-top:0.8em;
}

#joca p{
	font-size:14px;
}

#joca .text,
#philippines .text{
	float:left;
	width:62%;
}

#joca .img,
#philippines .img{
	float:right;
}

/*----------------------------

		kirikiri

----------------------------*/

#kirikiri .text{
	margin-bottom:50px;
}

#kirikiri .img{
	text-align:center;
}

#kirikiri .img img{
	margin-right:10px;
}

#kirikiri .img img:last-child{
	margin-right:0;
}

/*----------------------------

		note

----------------------------*/

#note .wrapper{
	background:url(../images/bg.jpg) no-repeat left top;	
	background-size:100% 100%;
	height:auto;
}

#note .contents{
	height:900px;
	width:100%;
	overflow: visible;
}

#note .soon{
	text-align:center;
	padding:20%;
}

#note h1{
	line-height: 1.2em;
	margin-bottom:15px;
}

#note h1 span{
	font-size:16px;
}

#note #noteBox{
	background:rgba(255,255,255,0.1);
	border:7px solid #036eb7;
	height:100%;
	padding:0 25px;
	overflow-y:scroll;
}

#note #noteBox .article{
	border-bottom:2px solid #231815;
	padding:30px 0;
	position:relative;
}

#note #noteBox .article.borderless{
	border:none;
	padding-bottom:30px;
	margin-bottom:500px;
}

#note #noteBox .article .text{
	float:left;
	width:58%;
	position:relative;
	min-height:255px;
}

#note #noteBox .article .text p{
	line-height:1.8em;
}

#note #noteBox .article .date{
	position:absolute;
	right:43%;
	bottom:32px;
}

#note #noteBox .article .img{
	float:right;
	width:40%;
	line-height:1;
}

#note #noteBox .article .img p{
	margin-bottom:10px;
}

#note #noteBox .article .img p:last-child{
	margin-bottom:0;
}

/*----------------------------

		cast_staff

----------------------------*/

#cast .wrapper{
	background:url(../images/bg.jpg) no-repeat left top;	
	background-size:auto 100%;
	height:auto;
}

#cast{
	overflow-y:scroll;
}

#cast .bg {
	padding-left:20px;
}

#cast .contents h1{
	margin-bottom:0.5em;
}

#cast .block{
	border-bottom:2px solid #453a37;
	padding:10px 20px;
}

#cast .block .cast{
	width:49%;
	padding:10px 0 10px;
	overflow:hidden;
}

#cast .cast.left{
	float:left;
	width:50%;
}

#cast .cast.right{
	float:right;
}

#cast .cast img{
	float:left;
	margin:0 10px 0 0;
}

#cast .cast .profile{
	width:66%;
	float:left;
}

#cast .cast .profile h3{
	font-size:15px;
	margin-bottom:8px;
	overflow:hidden;
}

#cast .cast .profile p{
	font-size:13px;
	line-height:1.5em;
}

/* ----- main cast -----*/

#cast .block .main_cast{
	float:left;
	padding:5px 0 15px;
}

#cast .block .main_cast.right{
	float:right;
}

/*----------------------------

		theater

----------------------------*/

#theater .wrapper{
	background:url(../images/bg.jpg) no-repeat left top;	
	background-size:auto 100%;
	height:auto;
}

#theater .contents{
	overflow:visible;
}

#theater h1{
	float:left;
	padding-right: 14px;
}

/*#theater a.ticket{
	float:right;
	background:#000;
	color:#fff;
	display:block;
	padding:3px 10px;
	text-align:center;
}*/

#theater .contents .ticket{
	color:#ff0000;
	letter-spacing: -0.02em;
	font-weight: bold;
	padding-top: 4px;
}

#theater table{
	clear:both;
	background:rgba(255,255,255,0.7);
	border-collapse:collapse;
	width:100%;
	margin:0 auto 50px;
}

#theater table th{
	font-weight:normal;
	padding:10px 5px;
}

#theater table td{
	border:1px solid #9CF;
	font-size:14px;
	padding:6px;
}

#theater table td.area{
	background:rgba(0,204,255,0.1);
	font-size:17px;
	text-align:center;
}

#theater table td.theater a{
	color:#06C;
}
#theater table td.theater a:visited{
	color:#06C;
}

#theater table td.ticket{
	text-align:center;
}

#theater table tr.warning td{
	border:none;
	font-size:13px;
	padding:8px;
}
#theater table td[align]{
	width:330px;
}

/*----------------------------

		ticket

----------------------------*/

#ticket .wrapper{
	height:auto;
}

#ticket .contents{
	max-width:800px;
	overflow:visible;
}

#ticket a{
	color:#221814;
}

#ticket .intro .text{
	float:left;
	padding:14px 0 0;
}

#ticket .intro .img{
	float:right;
}

#ticket .intro .text h1{
	margin-bottom:20px;
}

#ticket .intro .text h2{
	margin-bottom:25px;
}

#ticket .intro .text h3{
	margin-bottom:12px;
}

#ticket .intro p.warning{
	clear:both;
	font-size:10px;
	padding:20px 0;
}

#ticket .block{
	border-bottom:1px solid #453a37;
	padding:0 10px 20px;
	margin-bottom:15px;
}

#ticket .block h2{
	background:#009943;
	color:#fff;
	font-size:17px;
	font-weight:bold;
	padding:3px 10px;
	margin-bottom:15px;
}

#ticket .block h3{
	color:#e50011;
	font-size:17px;
	font-weight:bold;
}

#ticket .block h3 span{
	color:#221814;
	font-size:14px;
	font-weight:normal;
}

#ticket .block h4{
	font-size:17px;
	font-weight:bold;
	padding:5px 0;
}

#ticket .block h4 span a{
	font-size:12px;
	font-weight:normal;
	text-decoration:underline;
	word-break:keep-all;
}

#ticket .block h4:nth-of-type(2){
	margin-top:15px;
}

#ticket .block p{
	font-size:12px;
	letter-spacing:0;
	line-height:1.7;
}

#ticket .block strong{
	color:#e50011;
	font-weight:bold;
}

#ticket .block p strong{
	font-size:13px;
}

#ticket .block .notice{
	background:#fff000;
	display:inline-block;
	font-size:11px;
	font-weight:bold;
	padding:5px;
}

#ticket .block p .limit{
	color:#e50011;
}

#ticket .block .emergency{
	border:solid 1px #f00;
	margin-top:1em;
	padding:10px;
}

#ticket .block .emergency h2{
	background:#f00;
	color:#fff;
	display:inline-block;
	margin:0;
}

#ticket .block .emergency h4 a{
	color:inherit;
	text-decoration:underline;
}

#ticket .block .emergency strong{
	font-size:12px;
	letter-spacing:-0.03em;
}

#ticket .block .ticketshop{
	border-collapse:collapse;
	margin-left:15px;
}

#ticket .block .ticketshop td{
	font-size:12px;
}

#ticket .block .ticketshop td a{
	color:#221814;
	text-decoration:underline;
	margin-left:30px;
}

#ticket .block.exile{
	height:482px;
	position:relative;
	margin-bottom:100px;
	padding-top:15px;
}

#ticket .block.exile>h4{
	line-height:1.8;
}

#ticket .block.exile .exbg{
	position:absolute;
	top:-10px;
	right:-30px;
}

#ticket .block.exile .price{
	color:#e61e19;
	font-size:21px;
	font-weight:bold;
	padding-left:35px;
	margin-bottom:10px;
}

#ticket .block.exile .detail{
	background:#fffac2;
	margin:0;
	padding:10px;
	width:520px;
}

#ticket .block.exile .detail h4{
	margin:0;
	padding:3px 0;
}

#ticket .block.exile .detail .warning{
	color:#e61e19;
	font-size:12px;
}