@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;font-weight:normal;}body{line-height:1}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:none}a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent}del{text-decoration:line-through}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help}table{border-collapse:collapse;border-spacing:0}hr{display:block;height:1px;border:0;border-top:1px solid #ccc;margin:1em 0;padding:0}input,select{vertical-align:middle}

/*================================================
 *  一般・共通設定
 ================================================*/
body {
	font-size:18px;
	font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	line-height:1.8;
	background-image:url("img/bg_g2021.jpg");
	background-repeat:repeat;
	background-position:center center;
	background-attachment:fixed;
	color:#000000;
}

#contents {
	width:980px;
	margin:0 auto;
}

header {
	width:100%;
	margin:0 auto;
}
a {
	color: #f20000;
}
a:hover {
	color:#1c03bcf;
}

h1 {
	font-size:28px;
	line-height:1.4;
}

h2 {
	font-size:24px;
	border-bottom:2px solid #ff0010;
}

h3 {
	margin-bottom:0.25em;
	font-size:20px;
	border-bottom: 1px solid #ff0010;
}

h4 {
	margin-bottom:0.25em;
	font-size:16px;
}
h4:before {
	content:"\00ab";
}
h4:after {
	content:"\00bb";
}

h5 {
	margin-bottom:0.25em;
	padding:2px;
	font-size:16px;
	border-top:1px dotted #ddd;
	border-bottom:1px dotted #ff0010;
	background:#f3f3f3;
}

h6 {
	margin-bottom:0.25em;
	padding-left:5px;
	font-size:16px;
	border-left:5px solid #cf0c0c;
}

p {
	margin:0 0 1em 0;
}

img {
	vertical-align:bottom;
}

em {
	font-weight:bold;
}

strong {
	font-weight:bold;
	color:#ef8100;
}

pre {
	margin:1em 0;
	padding:1em;
}

blockquote {
	margin-bottom:1em;
	padding:1em;
	border:1px dotted #ddd;
	border-left:5px solid #ddd;
}

ul,ol,dl {
	margin:0 0 1em 0;
}
ul li {
	list-style:disc;
}
ol li {
	list-style:decimal;
}
li {
	margin-left:2em;
}

dt {
	margin-bottom:0.5em;
	border-bottom:1px solid #ff0010;
}
dd {
	padding-bottom:0.5em;
	padding-left:1em;
	margin-bottom:1em;
}

table {
	margin-bottom:1em;
	border-collapse:collapse;
}
th {
	padding:5px 10px;
	vertical-align:middle;
	text-align: left;
}
td {
	padding:5px 10px;
	text-align:left;
}

/*================================================
 *  汎用クラス
 ================================================*/
.list {
	padding:0 0 0 2em;
}

.list li {
	margin:0;
	padding:0;
	list-style:none;
	text-indent:-1.3em;
}
.list li:before {
	content:"\002605\00a0";
	color:#ffc720;
}

.temp {
	clear:both;
	overflow:hidden;
	margin-bottom:50px;
}

.img {
	float:left;
	width:300px;
}

.text {
	float:right;
	width:450px;
}

.photo {
	margin:20px 0;
	padding:10px;
	box-shadow:rgba(113, 135, 164, 0.8) 0 3px 15px 0;
	background:#fff;
}

.photo img {
	max-width:100%;
}

/*================================================
 *  ヘッダー
 ================================================*/
header {
	text-align: center;
}

header h1{
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#0c1534+0,080403+100 */
	background: #0c1534; /* Old browsers */
	background: -moz-linear-gradient(top, #0c1534 0%, #080403 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #0c1534 0%,#080403 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #0c1534 0%,#080403 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0c1534', endColorstr='#080403',GradientType=0 ); /* IE6-9 */
}


/*================================================
 *  グローバルナビゲーション
 ================================================*/
nav {
	width:100%;
	height:70px;
	position:fixed;
	background: #000;
	border-bottom:1px solid #333;
	top:0;
	left:0;
	padding:5px 0;
	z-index:10;
}
nav ul {
	position:relative;
	float:left;
	left:50%;
	margin:0;
}
nav li {
	position:relative;
	left:-50%;
	float:left;
	list-style:none;
	margin:0;
	padding:15px 20px;
}
nav li a {
	color:#fff;
	text-decoration:none;
}
nav li a:hover {
	color:#dfdfdf;
	text-decoration:underline;;
}

/*================================================
 *  メイン
 ================================================*/
section {
	margin-bottom:100px;
}

/*  NEWS
------------------------------------- */
#newsBox{
	background: #030714;
	padding: 30px 50px 20px;
	border:1px solid #201a1c;
	height: 200px;
	overflow-x: hidden;
}



/*  SNS
------------------------------------- */
#areaSNS{
	width: 100%;
	margin-top: 40px;
	margin-bottom: 100px;
	overflow: hidden;
}
#areaSNS .box{
	float: left;
	width: 300px;
	margin-right: 30px;
}
#areaSNS #boxBlog{
	margin-right: 0;
}

#areaSNS .box .inner{
	padding:5px;
	height: 290px;
	min-height: 290px;
	background: #030714;
	border:1px solid #201a1c;
	border-top: none;
}
#areaSNS .box#boxIG{
	width:320px;
}
#areaSNS .box#boxIG .inner{
	height: 280px !important;
	overflow-y: scroll;
}
#areaSNS #boxYoutube.box{
	padding-top: 50px;
	float: none;
	width:100%;
	clear: both;
}
#areaSNS #boxYoutube.box .inner{
	padding:50px;
	height: auto;
	border:1px solid #201a1c;
}
.movie-wrap {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
} 
.movie-wrap iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}


/*  INTRODUCTION
------------------------------------- */
#areaINTRO p{
	margin: 50px;}


/*  CAST & STAFF
------------------------------------- */
#areaCAST{
	margin-top: 100px;}
#areaCAST p{
	text-align: center;
}

#areaCAST table{
	margin:30px 0 30px 200px;
}
#areaCAST th{
	width: 260px;
}
#areaCAST .table01 th,
#areaCAST .table01 td{
	font-size: 20px;
	padding:5px;
}
#areaCAST .table02 th,
#areaCAST .table02 td{
	font-size: 16px;
	padding:3px 5px;
}

/*  SCHEDULE & TICKET
------------------------------------- */
#areaSCHEDULE{
	margin-top: 100px;}
#areaSCHEDULE p{
	margin: 0 50px;
}
#areaSCHEDULE .inner{
	margin: 50px;
	overflow: hidden;
}
#areaSCHEDULE .inner p{
	float: right;
}
#areaSCHEDULE .inner dl{
	margin-right:350px;
}



/*================================================
 *  フッター
 ================================================*/
footer {
	clear:both;
	padding:40px 0;
	text-align:center;
	font-size: 16px;
	background: #030714;
	color:#a4a5a7;
}

/*================================================
 *  ページトップへの戻り
 ================================================*/
.totop {
	position:fixed;
	bottom:15px;
	right:15px;
}
.totop a {
	display:block;
	text-decoration:none;
	border:1px solid #222;

}
.totop img {
	background:#000;
}
.totop img:hover {
	background:#333;
}

/*================================================
 *  タブレット/スマートフォン向けデザイン
 ================================================*/
/* スクロールバーを考慮して20px大きいサイズで切り替え */
@media screen and (max-width:799px) {

	body {
		box-sizing:border-box;
		width:100%;
		padding:0 15px;
		font-size:14px;
	}

	#contents {
		width:100%;
	}

	header {
		width:100%;
	}

	img{
		max-width: 100%;
	}

	header h1 img{
		width:100%;
	}

	/*  グローバルナビゲーション
	------------------------------------- */
	nav{
		height: auto;
		text-align: center;
	}
	nav ul{
		margin:0 auto;
		display: table;
		position: static;
		float: none;
	}
	nav li{
		position: static;
		float: none;
		display: table-cell;
		padding:0;
	}
	/*  NEWS
	------------------------------------- */
	#newsBox{
		padding:20px;
	}

	/*  SNS
	------------------------------------- */
	#areaSNS{
		margin-bottom: 50px;
	}
	#areaSNS .box{
		float: none;
		width: 100% !important;
		margin-right: 0;
		margin-bottom: 30px;
	}
	#areaSNS .box#boxIG .inner{
		-webkit-overflow-scrolling: touch;
	}
	#areaSNS .box#boxIG iframe{
		padding-top: 15px !important;
		width:100% !important;
	}
	#areaSNS #boxYoutube.box{
		padding-top: 30px;
	}
	#areaSNS #boxYoutube.box .inner{
		padding:0;
		min-height: auto;
	}
	/*  INTRODUCTION
	------------------------------------- */
	#areaINTRO p{
		margin: 20px;}

	/*  CAST & STAFF
	------------------------------------- */
	#areaCAST{
		margin-top: 50px;
	}
	#areaCAST table{
		margin:0;
	}
	#areaCAST th{
		width: auto;
		vertical-align: top;
		white-space: nowrap;
		padding-right: 10px;
	}
	#areaCAST .table01{
		border-bottom: 1px dotted #444;
		margin: 20px 0;
	}
	#areaCAST .table01 th,
	#areaCAST .table01 td{
		font-size: 16px;
		padding:5px 3px;
		line-height: 1.4;
	}
	#areaCAST .table02 th,
	#areaCAST .table02 td{
		font-size: 14px;
		padding:3px;
		line-height: 1.4;
	}

	/*  SCHEDULE & TICKET
	------------------------------------- */
	#areaSCHEDULE{
		margin-top: 50px;
	}
	#areaSCHEDULE p{
		margin: 0 0 20px ;
		text-align: center;
	}
	#areaSCHEDULE .inner{
		margin: 0;
		overflow: hidden;
	}
	#areaSCHEDULE .inner p{
		float: none;
	}
	#areaSCHEDULE .inner dl{
		margin-right:0;
	}

	/*  footer
	------------------------------------- */
	footer {
		clear:both;
		padding:20px 0;
		font-size: 10px;
		background: none;
		border-top:1px dotted #444;
	}



}
