@charset "utf-8";

/* ================================================
 base
--------------------------------------------------- */
body {
	font-size: 14px;
	line-height: 1.7;
	color: #fff;
	font-family: Meiryo, "メイリオ", YuGothic, 'Yu Gothic', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	background:#000 url(../image/bg.png) center top repeat-y;
}
#wrap {
	min-width: 980px;
	background-image: url(../image/wrap.jpg), url(../image/wrap2.png);
	background-position: center top, center top;
	background-repeat: no-repeat, repeat-x;
}
#home #wrap {
	background-image: url(../image/wrap_home.jpg);
	background-position: center top;
	background-repeat: no-repeat;
}
@media only screen and (max-width: 640px) {
	body {
		background: #000;
		/*font-size:14px; font-size: 2.1875vw;*/
		font-size: 18px; font-size: 2.8125vw;
	}
	#wrap {
		min-width: 0;
		background-image: url(../image/wrap_sp.jpg);
		background-position: center top;
		background-repeat: no-repeat;
		background-size: 100% auto;
	}
	#home #wrap {
		background-image: url(../image/wrap_home_sp.jpg);
		background-size: 100% auto;
	}
}

h1,h2,h3,h4,h5,h6,ul,li,p {margin:0; padding:0;}

/*=================================================
 header
--------------------------------------------------- */
#header {
	width:951px;
	margin:0 auto;
}
#header .spacer {
	height: 222px;
	font-size: 0;
}
#home #header .spacer {
	height: 573px;
}
#header .menu {
	padding: 30px 15px 0 15px;
}
#header ul {
	width: 100%;
	margin: 0; padding: 0;
}
#header li {
	height: 50px;
	margin: 0; padding: 0;
	list-style: none;
	display: inline;
	float: left;
}
#header li a{
	width: 100%; height: 50px;
	display: block;
	background-image: url(../image/menu.png);
}
#header .m1 {width: 195px;}
#header .m2 {width: 164px;}
#header .m3 {width: 138px;}
#header .m4 {width: 166px;}
#header .m5 {width: 136px;}
#header .m6 {width: 105px;}
#header span {display: none;}

#header li.m1 a {background-position: 0 -30px;}
#header li.m2 a {background-position: -195px -30px;}
#header li.m3 a {background-position: -359px -30px;}
#header li.m4 a {background-position: -497px -30px;}
#header li.m5 a {background-position: -663px -30px;}
#header li.m6 a {background-position: -799px -30px;}

#header li.m1 a:hover {background-position: 0 -110px;}
#header li.m2 a:hover {background-position: -195px -110px;}
#header li.m3 a:hover {background-position: -359px -110px;}
#header li.m4 a:hover {background-position: -497px -110px;}
#header li.m5 a:hover {background-position: -663px -110px;}
#header li.m6 a:hover {background-position: -799px -110px;}

#home    #header li.m1 a {background-position: 0 -190px;}
#tickets #header li.m2 a {background-position: -195px -190px;}
#access  #header li.m3 a {background-position: -359px -190px;}
#sponcor #header li.m4 a {background-position: -497px -190px;}
/*#contact #header li.m5 a {background-position: -663px -190px;}
#eng     #header li.m6 a {background-position: -799px -190px;}*/

@media only screen and (max-width: 640px) {
	#header {
		width: 100%;
	}
	#header .spacer {
		height: 24.375vw;
	}
	#home #header .spacer {
		/*height: 106.5625vw;*/
		height: 106.5625vw; padding: 0 !important; margin: 0 !important;
	}
	#header .menu {
		width: 95.625%;
		padding: 0; margin: 0 auto;
	}
	#header li {
		height: auto;
		padding: 0.3125vw 0;
		float: none;
		display: block;
		background-image: url(../image/menu_ar.png);
		background-position: 10% center;
		background-repeat: no-repeat;
		background-size: auto 100%;
		border-bottom: #3a3a3a 1px solid;
		font-size: 24px; font-size: 3.75vw; line-height: 2.125;
	}
	#header li:last-child {
		border-bottom: none;
	}
	#header li a{
		height: 100%;
		background-image: none;
	}
	
	#header .m1,
	#header .m2,
	#header .m3,
	#header .m4,
	#header .m5,
	#header .m6 {width: 100%;}

	#header span {
		display: block;
		padding-left: 17.2%;
	}
	
	#header a:link, #header a:visited {
		color:#FFF; text-decoration:none;
	}
	#header a:hover, #header a:active {
		color:#FFF; text-decoration:none;
	}
	
	#home    #header li.m1 a,
	#tickets #header li.m2 a,
	#access  #header li.m3 a,
	#sponcor #header li.m4 a,
	#contact #header li.m5 a,
	#eng     #header li.m6 a {background-color: rgba(247,25,135,0.53);}
}


/*=================================================
 main
--------------------------------------------------- */
#main {
	width:980px;
	margin:0 auto;
}
#container {
	margin:0 15px; padding-top: 45px;
	background:#3b3b3b;
	border:#7f7f7f 1px solid;
	border-bottom:none;
}

.block {
	padding:0 8% 80px 9%;
	position:relative;
}
.block .icon {
	width:4.35%; max-width:27px;
	position:absolute; left:-7px; top:0;
}
.block h2 {
	font-size:23px; line-height:43px; font-weight:normal;
	background:url(../image/line1.png) right bottom no-repeat;
}
.block .box {
	padding:25px 25px 0 28px;
}
.bottomline {
	padding-bottom: 20px !important;
	border-bottom:#898989 1px dotted;
}
.sp {
	display: none;
}

@media only screen and (max-width: 640px) {
	#main {
		width: 100%;
	}
	#container {
		width: 95.625%;
		margin: 0 auto; padding-top: 7.03125vw;
	}
	.block {
		padding:0 7% 6.25vw 7%;
	}
	.block .icon {
		left:-1.09375vw; top:1vw;
	}
	.block h2 {
		font-size:32px; font-size:5vw; line-height:1.375;
		background:url(../image/line2.png) right bottom no-repeat;
	}
	.block h2 span {
		display: block;
		/*font-size: 14px; font-size: 2.1875vw; line-height: 1;*/
		font-size: 18px; font-size: 2.8125vw; line-height: 1;
	}
	.block .box {
		padding: 2.8125vw 2.5vw 0 2.8125vw;
	}
	.bottomline {
		padding-bottom: 3.125vw !important;
	}
	.sp {
		display: inline;
	}
}

.pagetop {
	margin: 0 8% 0 9%;
}
.pagetop p {
	width: 67px;
	margin: 0; padding: 0 0 30px 0;
	float: right;
	font-size: 11px; line-height: 18px; text-align: center;
}
.pagetop a:link, .pagetop a:visited {color:#fff; text-decoration:none;}
.pagetop a:hover, .pagetop a:active {color:#fff; text-decoration:underline;}

@media only screen and (max-width: 640px) {
	.pagetop p {
		width: 10.46875vw;
		padding: 0 0 3.125vw 0;
		font-size:11px; font-size: 1.71875vw; line-height:1.6;
	}
	.pagetop p img {
		width: 100%;
	}
}

/*=================================================
 footer
--------------------------------------------------- */
#footer {
	margin:0 15px; padding:15px 0;
	background:#242424;
	border-right:#7f7f7f 1px solid; border-left:#7f7f7f 1px solid;
	font-size:12px; line-height:20px; text-align:center;
}
@media only screen and (max-width: 640px) {
	#footer {
		width: 95.625%;
		margin: 0 auto; padding: 2.34375vw 0;
		font-size:14px; font-size: 2.1875vw; line-height:1.4;
	}
}


/* font
--------------------------*/
a:link, a:visited {color:#ff82a5; text-decoration:underline;}
a:hover, a:active {color:#ff82a5; text-decoration:underline;}

.fs {font-size:12px;}
.fl1 {font-size:16px;}
.fl2 {font-size:18px;}

.pink {color: #f290c1;}
.yellow {color: #f2fb89;}

.indent1 {padding-left: 1em; text-indent: -1em;}

@media only screen and (max-width: 640px) {
	/*
	.fs {font-size: 12px; font-size: 1.875vw; }
	.fl1 {font-size: 16px; font-size: 2.5vw; }
	.fl2 {font-size: 20px; font-size: 3.125vw; }
	*/
	.fs {font-size: 16px; font-size: 2.5vw; }
	.fl1 {font-size: 20px; font-size: 3.125vw; }
	.fl2 {font-size: 24px; font-size: 3.75vw; }
}

/* align
--------------------------*/
.alignC {text-align:center !important;}
.alignL {text-align:left !important;}
.alignR {text-align:right !important;}

/* float
--------------------------*/
.floatR {float:right;}
.floatL {float:left;}
.floatN {float:none;}
.clearR {clear:right;}
.clearL {clear:left;}

/* module
--------------------------*/
.clearfix:after {
	display: block;
	clear: both;
	content: "";
}
.pagetop {
	text-align:right;
}
.link-opacity:hover {
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
	opacity: 0.8;
}

/* margin / padding
--------------------------*/
.pdB1em  {padding-bottom: 1em;}
.pdB1hem {padding-bottom: 1.5em;}

.mg0  {margin:0 !important;}
.mg5  {margin:5px !important;}
.mg10 {margin:10px !important;}
.mg15 {margin:15px !important;}
.mg20 {margin:20px !important;}
.mg25 {margin:25px !important;}
.mg30 {margin:30px !important;}
.mg35 {margin:35px !important;}
.mg40 {margin:40px !important;}
.mg45 {margin:45px !important;}
.mg50 {margin:50px !important;}

.pd0  {padding:0 !important;}
.pd5  {padding:5px !important;}
.pd10 {padding:10px !important;}
.pd15 {padding:15px !important;}
.pd20 {padding:20px !important;}
.pd25 {padding:25px !important;}
.pd30 {padding:30px !important;}
.pd35 {padding:35px !important;}
.pd40 {padding:40px !important;}
.pd45 {padding:45px !important;}
.pd50 {padding:50px !important;}

.mgL5  {margin-left:5px !important;}
.mgL10 {margin-left:10px !important;}
.mgL15 {margin-left:15px !important;}
.mgL20 {margin-left:20px !important;}
.mgL25 {margin-left:25px !important;}
.mgL30 {margin-left:30px !important;}
.mgL35 {margin-left:35px !important;}
.mgL40 {margin-left:40px !important;}
.mgL45 {margin-left:45px !important;}
.mgL50 {margin-left:50px !important;}
.mgR5  {margin-right:5px !important;}
.mgR10 {margin-right:10px !important;}
.mgR15 {margin-right:15px !important;}
.mgR20 {margin-right:20px !important;}
.mgR25 {margin-right:25px !important;}
.mgR30 {margin-right:30px !important;}
.mgR35 {margin-right:35px !important;}
.mgR40 {margin-right:40px !important;}
.mgR45 {margin-right:45px !important;}
.mgR50 {margin-right:50px !important;}
.mgT0  {margin-top:0px !important;}
.mgT5  {margin-top:5px !important;}
.mgT10 {margin-top:10px !important;}
.mgT15 {margin-top:15px !important;}
.mgT20 {margin-top:20px !important;}
.mgT25 {margin-top:25px !important;}
.mgT30 {margin-top:30px !important;}
.mgT35 {margin-top:35px !important;}
.mgT40 {margin-top:40px !important;}
.mgT45 {margin-top:45px !important;}
.mgT50 {margin-top:50px !important;}
.mgB0  {margin-bottom:0px !important;}
.mgB5  {margin-bottom:5px !important;}
.mgB10 {margin-bottom:10px !important;}
.mgB15 {margin-bottom:15px !important;}
.mgB20 {margin-bottom:20px !important;}
.mgB25 {margin-bottom:25px !important;}
.mgB30 {margin-bottom:30px !important;}
.mgB35 {margin-bottom:35px !important;}
.mgB40 {margin-bottom:40px !important;}
.mgB45 {margin-bottom:45px !important;}
.mgB50 {margin-bottom:50px !important;}

.pdL5  {padding-left:5px !important;}
.pdL10 {padding-left:10px !important;}
.pdL15 {padding-left:15px !important;}
.pdL20 {padding-left:20px !important;}
.pdL25 {padding-left:25px !important;}
.pdL30 {padding-left:30px !important;}
.pdL35 {padding-left:35px !important;}
.pdL40 {padding-left:40px !important;}
.pdL45 {padding-left:45px !important;}
.pdL50 {padding-left:50px !important;}
.pdR5  {padding-right:5px !important;}
.pdR10 {padding-right:10px !important;}
.pdR15 {padding-right:15px !important;}
.pdR20 {padding-right:20px !important;}
.pdR25 {padding-right:25px !important;}
.pdR30 {padding-right:30px !important;}
.pdR35 {padding-right:35px !important;}
.pdR40 {padding-right:40px !important;}
.pdR45 {padding-right:45px !important;}
.pdR50 {padding-right:50px !important;}
.pdT0  {padding-top:0px !important;}
.pdT5  {padding-top:5px !important;}
.pdT10 {padding-top:10px !important;}
.pdT15 {padding-top:15px !important;}
.pdT20 {padding-top:20px !important;}
.pdT25 {padding-top:25px !important;}
.pdT30 {padding-top:30px !important;}
.pdT35 {padding-top:35px !important;}
.pdT40 {padding-top:40px !important;}
.pdT45 {padding-top:45px !important;}
.pdT50 {padding-top:50px !important;}
.pdB0  {padding-bottom:0px !important;}
.pdB5  {padding-bottom:5px !important;}
.pdB10 {padding-bottom:10px !important;}
.pdB15 {padding-bottom:15px !important;}
.pdB20 {padding-bottom:20px !important;}
.pdB25 {padding-bottom:25px !important;}
.pdB30 {padding-bottom:30px !important;}
.pdB35 {padding-bottom:35px !important;}
.pdB40 {padding-bottom:40px !important;}
.pdB45 {padding-bottom:45px !important;}
.pdB50 {padding-bottom:50px !important;}
.pdB60 {padding-bottom:60px !important;}
.pdB85 {padding-bottom:85px !important;}

@media only screen and (max-width: 640px) {
	.pdB20 {padding-bottom:15px !important;}
	.pdB60 {padding-bottom:30px !important;}
	.pdB85 {padding-bottom:40px !important;}
}