@charset "utf-8";

/*==========================================================
	
==========================================================*/

@import url('https://fonts.googleapis.com/css?family=Kosugi+Maru|Noto+Sans+JP:400,500,700');


html {
	background: #000000;
	font-family: 'Noto Sans JP', 'Kosugi Maru', 'ヒラギノ丸ゴ Pro W4', 'Hiragino Maru Gothic Pro', 'Meiryo UI', 'メイリオ', 'Meiryo', sans-serif;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	position: relative;
}

body {
	line-height: 1;
	-webkit-text-size-adjust: 100%;
	margin: 0;
	width: 100%;
	position: relative;
	z-index: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block
}

.movie {
	margin: 0 auto 0 auto;
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
	max-width: 100%;
}

iframe {
	overflow-y: hidden;
	z-index: 1 !important;
}

/*===================sp=*/
@media screen and (max-width: 860px) {}

/*====================*/

/*-----------------------------------------------------------
	base setting
-----------------------------------------------------------*/
p {
	margin: 0 0 0 0;
}

a {
	text-decoration: underline;
	color: #f7003a;
}

a:hover {
	text-decoration: none;
}

a:focus {
	outline: none;
}

.pc {
	display: block !important;
}

.sp {
	display: none !important;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	.pc {
		display: none !important;
	}

	.sp {
		display: block !important;
	}

}

/*====================*/

/*-----------------------------------------------------------
	text setting
-----------------------------------------------------------*/
h2 img,
h3 img,
h4 img {
	pointer-events: none !important;
}

.flt {
	text-decoration: line-through;
}

.fcG {
	color: #a4a4a4;
}

.fcB {
	color: #abebef;
}

.fcY {
	color: #ffa282;
}

.note {
	color: #939393;
	font-size: 19px;
	padding-top: 10px;
}

.note.fr.mt10 {
	margin-bottom: 50px;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	.note {
		font-size: 0.8rem;
		padding-top: 7px;
		width:90%;
		margin:auto;
	}

	.note.fr.mt10 {
		margin-bottom: 30px;
	}
}

/*====================*/

/*-----------------------------------------------------------
	header setting
-----------------------------------------------------------*/
#header {
	width: 100%;
	position: relative;
	margin: 0 0 0 0;
	top: 0;
	left: 0;
	z-index: 11;

	display: block;
}

#header.f {
	background: #191923;
	z-index: 1002;
}

#header.show {
	opacity: 1;
}

#header {
	position: fixed;
	top: 0;
	padding: 0 0 0 0;

	z-index: 1000;
}

#header.f {
	height: 100%;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	overflow-y: auto;
	#191923
}

.headerWrap {
	width: 100%;
	padding: 0 0 0 0;
	position: relative;
	z-index: 9;
}

/*----------------------------------#g_menu setting----------*/
#g_navi {
	margin: 0;
	width: 100%;
	height: auto;
	text-align: center;
	z-index: 9;
	padding: 0 0 5% 0;
	top: 0;
	position: absolute;
}

#header.fix #g_navi {
	top: 0;
	position: fixed;
}

#g_menu .hdBox {
	width: 90%;
	padding: 0 5% 0 5%;
	position: fixed;
	z-index: 9;
}

#g_menu .hdBox2 {
	width: 90%;
	margin: 0 auto 0 auto;
}

#g_navi .btn {
	width: 12.5%;
	float: left;
}

#g_navi .logo {
	width: 18%;
	margin: 10px auto 10px auto;
}

#g_navi .hdBox2 .logo {
	display: block;
}

#g_navi #menuBtn {
	width: 15%;
	margin: 6px -5% 10px 0;
	float: right;
	line-height: 0;
	/* 		background: #a9153b; */
	/* 		box-shadow: 0 0 0 3px #000000; */
	/* 		background: #ed6c00; */
}

.f #g_navi #menuBtn {
	display: none;
}

#g_navi #menuClose {
	width: 15%;
	margin: 6px -5% 0 0;
	float: right;
}

#g_navi #topBtn {
	width: 30%;
	margin: 0 0 0 0;
	float: left;
	font-size: 0.6rem;
}

#g_navi #topBtn.menutop a {
	padding: 16px 0 16px 18%;
	margin: 0 0 0 0;
	color: #ffffff;
}

#g_navi #topBtn.menutop a:after {
	content: "";
	width: 7px;
	height: 100%;
	background: url(../img/arrow_r.png) no-repeat left center;
	background-size: 100% auto;
	position: absolute;
	left: 0;
	top: 0;
}

#g_navi .navi {
	/* 		height: 60px; */
	position: relative;
	display: block;
	width: 90%;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
	/* 		background: #ed6c00; */
	padding: 0 0 0 0;
}

#g_navi .navi .logo {
	width: 18%;
	margin: 10px auto 10px auto;
}

#g_navi .nav {
	width: 100%;
	margin: 5% 0 5% 0;
	/* 		font-size: 4.0vw; */
	color: #EEEEEE;
	overflow: hidden;
}

/*
	#g_navi .nav li {
		width: 100%;
		color: #ffffff;
		margin: 0 auto 0 auto;
		height: auto;
		border-left: none;
		line-height: 0;
		font-weight: 900;
	}
*/
.hdBox2 {
	padding: 0 0 0 0;
	position: relative;
	z-index: 2;
}

body div#g_navi a {
	color: #000000;
	text-decoration: none;
}

body div#g_navi a:hover {
	text-decoration: none;
	opacity: 0.8;
}

#g_menu {
	position: absolute;
	width: 100%;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
	z-index: 1000;
	display: none;
	top: 0;
	bottom: 0;
}

.fix #g_menu {
	top: 0;
}

#g_navi .navBox {
	width: 100%;
	margin: 0 auto 0 auto;
	overflow: hidden;
	padding: 0 0 0 0;
}

#g_navi .nav li.off p {
	color: #595959;
}

#g_navi .nav {
	width: 90%;
	margin: 0 auto 0 auto;
	padding: 0 5% 0 5%;
	text-align: left;
}

#g_menu .menuhex {
	margin-top: 23%;
}

#g_menu .menuhex li a {
	font-size: 1.0rem;
}

#g_menu .menuhex li p {
	font-size: 1.0rem;
}




/*===================sp=*/
@media (min-width: 860px) {

	#g_menu .menuhex li a {
		font-size: 1.6rem;
	}

	#g_menu .menuhex li p {
		font-size: 1.6rem;
	}

	#header {}

	#header.fix {
		top: 0;
		position: fixed;
	}

	#header.fix #g_navi {
		top: 0;
		position: relative;
	}

	#g_navi #menuBtn {
		width: 9%;
		margin: 0 15px 0 0;
	}

	#g_navi #menuClose {
		width: 9%;
		margin: 15px 15px 0 0;
	}

	#g_navi #topBtn {
		margin: 15px 0 0 4%;
	}

	#g_navi #topBtn.menutop a {
		padding: 16px 0 16px 12%;
		margin: 0 0 0 0;
		color: #ffffff;
		font-size: 16px;
	}

	#g_navi #topBtn.menutop a:after {
		content: "";
		width: 14px;
		height: 100%;
		background: url(../img/arrow_r.png) no-repeat left center;
		background-size: 100% auto;
		position: absolute;
		left: 0;
		top: 0;
	}

	#g_navi .navi {
		width: 100%;
	}

	#g_navi .navi .logo {
		width: 12%;
		margin: 15px auto 10px auto;
	}

	#g_navi .shareBox {
		display: none;
	}

	#header {
		width: 100%;
		position: relative;
		margin: 0 0 0 0;
		top: 0;
		left: 0;
		z-index: 9;
		background: none;
		/* 	background: rgba(0, 0, 0, 0.50); */
	}

	#header {
		position: fixed;
		top: 0;
		padding: 0 0 0 0;
		z-index: 1000;
	}

	#header.f {
		height: 100%;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		overflow-y: auto;
	}

	.headerWrap {
		width: 100%;
		max-width: 750px;
		background: none;
		padding: 0 0 0 0;
		margin: 0 auto 0 auto;
		position: relative;
		z-index: 9999;
	}

	#header.fix {
		top: 0;
		position: fixed;
	}

	#header.fix #g_navi {
		top: 0;
		position: relative;
	}

	#g_navi {
		background: none;
		padding: 0 0 0 0;
		position: relative;
		top: 0;

	}

	#header.f #g_navi {
		padding: 0 0 5% 0;
	}

	#g_menu {
		display: none;

		padding: 0 0 0 0;
		width: 100%;
		background: none;
		position: relative;

		overflow: auto;
		overflow-x: auto;
		overflow-y: auto;
		top: 0;
	}

	#g_menu .hdBox {
		padding: 0 0 0 0;
		border-bottom: none;
		z-index: 99;
	}

	#g_menu .hdBox2 {
		width: 100%;
		/* 			display: none; */
		background: none;
		padding: 0 0 0 0;
		margin-right: 0;
		overflow: hidden;
	}

	.inner #g_menu .hdBox2 {
		/* 			display: none; */
	}

	#g_navi .logo {
		width: 30%;
		margin: 0 auto 0 auto;
		padding: 0 0 0 0;
		display: block;
		width: 12%;
		margin: 15px auto 10px auto;
	}

	#g_navi .nav li.logo {
		width: 8%;
		padding: 0 0 0 0;
		margin: 0 0 0 0;
	}

	#g_navi .nav li.logo:hover {
		opacity: 0.5;
		filter: alpha(opacity=50);
		-ms-filter: "alpha(opacity=50)";
		-moz-opacity: 0.5;
		-khtml-opacity: 0.5;
	}

	#g_navi .navBox {
		width: 100%;
		margin: 0 0 0 0;
		padding: 0 0 0 0;
		border: none;
		background: none;

		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		align-items: center;
		-webkit-justify-content: space-between;
		justify-content: space-between;

		display: block;
	}

	#g_navi .nav {

		display: none;

		width: 90%;
		border: none;
		margin: 0 auto 0 auto;

		display: -webkit-flex;
		display: flex;

		-webkit-align-items: center;
		align-items: center;
		-webkit-justify-content: space-between;
		justify-content: space-between;

		-ms-flex-wrap: wrap;
		flex-wrap: wrap;

		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;


		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;

		display: block;

	}

}

/*====================*/

/*-----------------------------------------------------------
	#content setting
-----------------------------------------------------------*/
body {
	background: #000000;
}

body.inner {
	background: #000000;
}

body.inner.event {
	background: #000000 url(../img/bg_event.png) no-repeat center top;
}

body.inner.goods {
	background: #000000 url(../img/bg_main_40.png) no-repeat center top;
}


#content {
	font-family: 'Noto Sans Japanese', sans-serif;
	width: 100%;
	margin: 0 auto 0 auto;
	padding: 40px 0 40px 0;
	z-index: -2;
	position: relative;
	font-size: 16px;
	line-height: 1.8;
	color: #ffffff;
	overflow: hidden;
}

#content.f {
	position: fixed;
}

.contentWrap {
	width: 90%;
	max-width: 750px;
	margin: 0 auto 0 auto;
	padding: 30px 0 30px 0;
	position: relative;
	z-index: 2;
}
.contentBox {
	width: 100%;
	max-width: 750px;
	margin: 50px auto 0 auto;
	padding: 0 0 0 0;
}

.contentline {
	width: 90%;
	max-width: 900px;
	margin: 50px auto 0 auto;
	padding: 0 30px 0 30px;
	border: 4px solid #e6a025;
}
.contentlineCampaing {
	width: 100%;
	max-width: 900px;
	margin: 50px auto 0 auto;
	padding: 0 30px 0 30px;
	text-align: center;
	font-size: large;
	
}

.contentlineU22 {
	border: 4px solid white;
	/*48908F*/
}

#content h2 {
	width: 100%;
	max-width: 750px;
	margin: 0 auto 0 auto;
	text-align: center;
}

#content h2 img {
	width: 100%;
	max-width: 750px;
	filter:
		drop-shadow(1px 1px 10px rgba(0, 0, 0, 0.2)) drop-shadow(-1px -1px 10px rgba(0, 0, 0, 0.2)) drop-shadow(1px -1px 10px rgba(0, 0, 0, 0.2)) drop-shadow(-1px 1px 10px rgba(0, 0, 0, 0.2)) drop-shadow(1px 0px 5px rgba(0, 0, 0, 0.1)) drop-shadow(-1px 0px 5px rgba(0, 0, 0, 0.1)) drop-shadow(0px 1px 5px rgba(0, 0, 0, 0.1)) drop-shadow(0px -1px 5px rgba(0, 0, 0, 0.1));
}

#content h2.tyL img {
	max-width: 700px;
}

.movie iframe,
.movie object,
.movie embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/*===================sp=*/
@media screen and (max-width: 860px) {

	body {
		background: #000000 url(../img/bg_main.png) no-repeat center top;
		background-size: 100% auto;
	}

	#content {
		padding: 20px 0 0 0;
	}

	.contentWrap {
		width: 100%;
		max-width: 950px;
		margin: 2vw auto 2vw auto;
		padding: 5vw 0 7vw 0;
		position: relative;
	}

	.contentBox {
		margin: 5vw auto 0 auto;
		padding: 0 0 0 0;
	}

	.contentline {
		width: 90%;
		max-width: 900px;
		margin: 50px auto 0 auto;
		padding: 0 4% 0 4%;
		border: 4px solid #e6a025;
	}
	.contentlineCampaing {
	width: 90%;
	max-width: 900px;
	margin: 50px auto 0 auto;
	padding: 0 4% 0 4%;
	text-align: center;
	font-size: small;
	
}

	#content h2 img {
		width: 100%;
		max-width: 100%;
	}

	#content h2.tyL img {
		max-width: 90%;
	}



}

/*====================*/


/*-----------------------------------------------------------
	mv setting
-----------------------------------------------------------*/
#main {
	width: 100%;
	max-width: 100%;
	height: 100%;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
	position: relative;
	z-index: 1001;


}

#main.f {
	position: fixed;
}

#main .mainWrap {
	width: 100%;
	height: 100%;
	max-width: 1200px;

	height: 100%;
	margin: 0 auto 0 auto;
	line-height: 0;
	z-index: 2;
	position: relative;

	display: flex;
	flex-wrap: wrap;

	-webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;
	justify-content: space-between;
}

#main .bg {
	width: 100%;
	margin: 0 auto 0 auto;
}

#main .mainBox {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;

	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.mainitem {
	width: 100%;
	height: 100%;
	position: relative;
}

#main .mainBox .tit {
	width: 22%;
	margin: 0 39% 0 39%;
	bottom: 30px;
	position: absolute;
}

#main .mainBox .sub {
	width: 17%;
	max-width: 120px;
	margin: 0 0 0 0;
	bottom: 16%;
	left: 5%;
	top: auto;
	position: absolute;

}

#main .logo {
	width: 30%;
	max-width: 125px;
	position: absolute;
	right: 20px;
	top: 20px;
	opacity: 0.6;
}

#main .txt {
	width: 8.5%;
	position: absolute;
	right: 23%;
	bottom: 22%;
}

#main .mainBox .lang {
	width: 20%;
	max-width: 90px;
	position: absolute;
	bottom: 25px;
	left: 6.2%;
}

#main .mainBox .lang .lan {
	width: 100%;
}

#main .mainBox .lang .btn {
	width: 100%;
	margin: 10px auto 0 auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

#main .mainBox .lang .btn p {
	width: 47%;
}

/*===================sp=*/
@media screen and (max-width: 860px) {


	#main .mainBox .tit {
		width: 50%;
		max-width: 50%;
		line-height: 0;
		margin: 0 25% 0 25%;
		margin-top: 0;
		margin-bottom: 30px;
		bottom: 0;
	}

	#main .mainBox .sub {
		margin-top: 0;
	}

	#main .mainBox .sub {
		width: 17%;
		margin: 0 0 0 0;
		bottom: 17%;
		left: 3%;
		top: auto;
		position: absolute;

	}

	#main .logo {
		width: 20%;
		position: absolute;
		right: 20px;
		top: 20px;
		opacity: 0.6;
	}

	#main .txt {
		width: 13%;
		position: absolute;
		right: 8%;
		bottom: 28%;
	}

	#main .mainBox .lang {
		width: 15%;
		max-width: 80px;
		position: absolute;
		bottom: 25px;
		left: 4.4%;
	}

}

/*====================*/

.inner #main {
	width: 100%;
	max-width: 100%;
	height: 100%;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
	position: relative;
	z-index: 1;
	/* 	z-index: 1001; */

}

.inner #main .mainWrap {
	width: 100%;
	max-width: 750px;

	height: 100%;
	margin: 0 auto 0 auto;
	line-height: 0;
	z-index: 2;
	position: relative;

	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;

}

.inner .bgBox {
	width: 100%;
}

.inner #main .mainBox {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;

	display: flex;

	-ms-flex-line-pack: center;
	align-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.inner #main .mainBox .tit {
	width: 100%;
	max-width: 500px;
	line-height: 0;
	margin: 0 0 0 0;
	bottom: 0;
	position: relative;



}

.inner #main .mainBox .tit.tittyL {
	width: 100%;
	max-width: 500px;
	line-height: 0;
	margin-top: 0;
}

/*
				.inner #main .mainBox .tit img {
					margin-bottom: 0;
					filter:
					drop-shadow(1px 1px 10px rgba(0, 0, 0, 0.2))
					drop-shadow(-1px -1px 10px rgba(0, 0, 0, 0.2))
					drop-shadow(1px -1px 10px rgba(0, 0, 0, 0.2))
					drop-shadow(-1px 1px 10px rgba(0, 0, 0, 0.2))
					
					drop-shadow(1px 0px 5px rgba(0, 0, 0, 0.1))
					drop-shadow(-1px 0px 5px rgba(0, 0, 0, 0.1))
					drop-shadow(0px 1px 5px rgba(0, 0, 0, 0.1)) 
					drop-shadow(0px -1px 5px rgba(0, 0, 0, 0.1));
				}
*/


/*===================sp=*/
@media screen and (max-width: 860px) {


	.inner #main .mainBox .tit {
		width: 80%;
		max-width: 500px;
		line-height: 0;
		margin-top: 0;
	}

}

/*====================*/


/*-----------------------------------------------------------
	#announce setting
-----------------------------------------------------------*/

#announce {
	padding: 0 0 0 0;
	margin: 5px 0 10px 0;
}

/*
		#announce .contentBox {
			width: 90%;
			margin: 0 auto 0 auto;
			padding: 0 0 0 0;
			line-height: 1.4;
			font-size: 18px;
			color: #f7003a;
			text-align: center;
		}
			#announce .contentBox p {
				border: 3px solid #f7003a;
				padding: 15px 25px 15px 25px;
				width: auto;
				display: inline-block;
				margin: 0 auto 0 auto;
			}
*/

#announce .contentBox {
	width: 90%;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
	line-height: 1.4;
	font-size: 20px;
	color: #000000;
	text-align: center;
}

#announce .contentBox p {
	padding: 15px 25px 15px 28px;
	width: auto;
	display: inline-block;
	margin: 0 auto 0 auto;
	background: #ffffff;
	font-weight: bold;
}


/*===================sp=*/
@media screen and (max-width: 860px) {

	#announce {}

	#announce .contentBox {
		width: 90%;
		font-size: 1.0rem;
		margin: 2vw auto 0 auto;

	}

	#announce .contentBox p {
		padding: 10px 20px 8px 20px;
		width: auto;
		display: inline-block;
		margin: 0 auto 0 auto;
	}



}

/*====================*/


/*-----------------------------------------------------------
	#lead setting
-----------------------------------------------------------*/

#lead {
	padding: 0 0 0 0;
	margin: 80px auto 0 auto;
}

#lead .contentBox {
	width: 90%;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
	line-height: 1.4;
	font-size: 32px;
	font-weight: bold;
	color: #e6a025;
	text-align: center;
}

#lead .contentBox.lead_contentBox{
	background-color: rgb(57, 57, 57);
	padding: 2%;
	border: 3px;
	border-style: solid;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	#lead {
		margin: 12vw auto 0 auto;
	}

	#lead .contentBox {
		width: 90%;
		font-size: 1.2rem;
		margin: 7vw auto 0 auto;

	}

	#lead .contentBox.lead_contentBox{
		line-height: 2rem;
	}


}

/*====================*/


/*-----------------------------------------------------------
	#news setting
-----------------------------------------------------------*/
#news {
	margin: 0 auto 0 auto;
	padding-bottom: 0;
	text-align: center;
	padding-top: 0;
}

#news .contentBox {
	margin-top: 0;
}

#news h2 {
	position: relative;
	padding-top: 100px;
}

#news h2:after {
	content: "";
	display: block;
	width: 20%;
	height: 100%;
	background: url(../img/item_01.png) no-repeat right top;
	background-size: auto 100%;

	position: absolute;
	top: 0;
	right: 0;

}

#news ul {
	width: 90%;
	min-height: 100px;
	text-align: center;
	margin: 30px auto 0 auto;
	padding: 3% 5% 3% 5%;
	background: #0d0d0d;

}

#news ul li {
	width: 100%;
	font-size: 18px;
}

#news ul li {
	margin: 0 0 10px 0;

	display: flex;

	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	text-align: left;

	line-height: 1.8;
}

#news ul li .date {
	margin-right: 3%;
	color: #f7003a;
	font-weight: bold;
}

#news ul li .txt {
	padding-left: 0;
	position: relative;
	font-weight: bold;
}

#news ul li .txt a {
	color: #ffffff;
}

#news ul li .txt span {
	color: #f7003a;
}

/*
				#news ul li .txt::before {
					content: "";
					width: 30px;
					height: 100%;
					background: url(../img/item_db_01.svg) no-repeat top left;
					background-size: 100% auto;
					position: absolute;
					left: 0;
					top: 0;
				}
				
*/


/*===================sp=*/
@media screen and (max-width: 860px) {
	#news {
		margin-top: 20px;
	}

	#news h2 {
		position: relative;
		padding-top: 15vw;
	}

	#news h2:after {
		content: "";
		display: block;
		width: 40%;
		height: 100%;
		background: url(../img/item_01.png) no-repeat right top;
		background-size: auto 100%;

		position: absolute;
		top: 0;
		right: 0;

	}

	#news ul li {
		width: 100%;
		font-size: 3.4vw;
	}

	#news ul li .txt {
		/* 					padding-left: 8%; */
		position: relative;
	}

	#news ul li .txt::before {
		content: "";
		width: 16%;
		height: 100%;
		background: url(../img/item_db_01.svg) no-repeat top left;
		background-size: auto 80%;
		position: absolute;
		left: 0;
		top: 0;
	}


}

/*====================*/




#bnr {
	padding: 0 0 20px 0;
}

#bnr .bnrBox {
	width: 100%;
	margin: 0 auto 0 auto;

	display: flex;
	justify-content: center;
	align-items: stretch;
	text-align: left;

	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;



}

#bnr .bnrBox li {
	width: 230px;
	margin: 0 1.5% 20px 1.5%;
}



/*===================sp=*/
@media screen and (max-width: 860px) {

	#bnr {
		padding: 0 0 0 0;
	}

	#bnr .bnrBox {
		margin: 1vw auto 0 auto;
		padding: 0 0 0 0;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	#bnr .bnrBox li {
		width: 46%;
		margin: 0 2% 0 2%;
	}


}

/*====================*/

/* ---------- movie ---------- */
#pv .movie_wrap {
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
}

#pv .movieBox {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
}

#pv .movieBox iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
}


/*-----------------------------------------------------------
	.photo setting
-----------------------------------------------------------*/

.photo {
	width: 100%;
	padding: 30px 0 0 0;
	overflow: hidden;
}

.photo .section_wrap {
	width: 100%;
	position: relative;
}

.photo .images {
	width: 100%;
	position: relative;
	height: 180px;
}

.photo ul {
	list-style: none;
	position: absolute;
	top: 0;

	left: 0;
	width: 2560px;
	height: 100%;
	margin-left: 0;
}


.js-loop ul {
	list-style: none;
	position: absolute;
	top: 0;

	left: 0;
	width: 2560px;
	height: 100%;
	margin-left: 0;
}

.js-loop2 ul {
	list-style: none;
	position: absolute;
	top: 0;

	left: 0;
	width: 1920px;
	height: 100%;
	margin-left: 0;
}


.photo ul li {
	width: 300px;
	line-height: 0;
	position: absolute;
	top: 0;
	left: 0;
	box-shadow: 0px 0px 8px -2px #000000;
}

.photo ul li img {
	width: 100%;
	height: auto;
	/* 	box-shadow: 0px 8px 15px 0px rgba(8, 1, 3, 0.5); */
}

.photo ul li:nth-child(1) {
	left: 0;
}

.photo ul li:nth-child(2) {
	left: 320px;
}

.photo ul li:nth-child(3) {
	left: 640px;
}

.photo ul li:nth-child(4) {
	left: 960px;
}

.photo ul li:nth-child(5) {
	left: 1280px;
}

.photo ul li:nth-child(6) {
	left: 1600px;
}

.photo ul li:nth-child(7) {
	left: 1920px;
}

.photo ul li:nth-child(8) {
	left: 2240px;
}

/*

.photo ul li:nth-child(9) { left: 2560px; }
*/

/*
.photo ul li:nth-child(11) { left: 3220px; }
.photo ul li:nth-child(12) { left: 3630px; }
.photo ul li:nth-child(13) { left: 3960px; }
.photo ul li:nth-child(14) { left: 4290px; }
.photo ul li:nth-child(15) { left: 4620px; }
.photo ul li:nth-child(16) { left: 4950px; }
.photo ul li:nth-child(17) { left: 5280px; }
*/


.photo .loopanime {
	-webkit-animation: image_list_animation 60s linear infinite;
	animation: image_list_animation 50s linear infinite;
}

.photo .loopanime2 {
	-webkit-animation: image_list_animation2 70s linear infinite;
	animation: image_list_animation2 60s linear infinite;
}

@-webkit-keyframes image_list_animation {
	0% {
		transform: translateX(0%);
	}

	100% {
		transform: translateX(-2560px);
	}
}

@keyframes image_list_animation {
	0% {
		transform: translateX(0%);
	}

	100% {
		transform: translateX(-2560px);
	}
}

@-webkit-keyframes image_list_animation2 {
	0% {
		transform: translateX(0%);
	}

	100% {
		transform: translateX(-2880px);
	}
}

@keyframes image_list_animation2 {
	0% {
		transform: translateX(0%);
	}

	100% {
		transform: translateX(-2880px);
	}
}

/*===================sp=*/
@media screen and (max-width: 860px) {}

/*====================*/





/*-----------------------------------------------------------
	#cm setting
-----------------------------------------------------------*/

#cm {
	padding: 0 0 0 0;
}

#cm .contentBox {
	width: 90%;
	max-width: 580px;
	margin: 50px auto 0 auto;
	padding: 0 0 0 0;
}


/*===================sp=*/
@media screen and (max-width: 860px) {

	#cm {}

	#cm .contentBox {
		width: 70%;
		margin: 7vw auto 0 auto;

	}



}

/*====================*/



/*-----------------------------------------------------------
	#special setting
-----------------------------------------------------------*/

#special {
	padding: 0 0 0 0;
}

#special .contentBox {
	margin-top: 50px;
}

#special h2 {
	position: relative;
	padding-top: 80px;
}

#special h2:after {
	content: "";
	display: block;
	width: 20%;
	height: 100%;
	background: url(../img/item_02.png) no-repeat left top;
	background-size: auto 100%;

	position: absolute;
	top: 0;
	left: 0;

}

#special .bnrBox {
	width: 100%;
	margin: 50px auto 0 auto;

	display: flex;
	/* 		justify-content: center; */
	align-items: stretch;
	text-align: left;

	-ms-flex-wrap: wrap;
	flex-wrap: wrap;

	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;


}

#special .bnrBox li {
	width: 35%;
	margin: 0 3% 20px 3%;

	background: #000000;
	/*
			box-shadow: 0 0 10px 2px rgba(232, 109, 0, 0.70);
			border: 1px solid rgba(232, 109, 0, 0.40);
*/

	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;

	line-height: 0;
	overflow: hidden;
	padding: 0 0 0 0;


}



/*===================sp=*/
@media screen and (max-width: 860px) {

	#special h2 {
		position: relative;
		padding-top: 15vw;
	}

	#special h2:after {
		content: "";
		display: block;
		width: 20%;
		height: 100%;
		background: url(../img/item_02.png) no-repeat left top;
		background-size: auto 100%;

		position: absolute;
		top: 0;
		left: 0;

	}

	#special .bnrBox {
		margin: 2vw auto 0 auto;
		padding: 2vw 0 0 0;

		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	#special .bnrBox {
		justify-content: center;
	}

	#special .bnrBox li {
		margin: 0 2% 20px 2%;
		min-width: 60%;
	}


}

/*====================*/



/*-----------------------------------------------------------
	#campaign setting
-----------------------------------------------------------*/

#campaign {
	margin: 80px auto 0 auto;
	padding: 0 0 0 0;
}

#campaign .bnrBox {
	width: 100%;
	margin: 30px auto 0 auto;

	display: flex;
	justify-content: center;
	align-items: stretch;
	text-align: left;


}

#campaign .morearea {
	display: none;
	margin-top: 0;
}

#campaign .bnrBox li {
	width: 23%;
	margin: 0 1% 0 1%;

	background: #000000;
	box-shadow: 0 0 10px 2px rgba(232, 109, 0, 0.70);
	border: 1px solid rgba(232, 109, 0, 0.40);

	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;

	line-height: 0;
	overflow: hidden;
	padding: 0 0 0 0;
}

#campaign .bnrBox p {
	width: 23%;
	margin: 0 1% 0 1%;
}

#campaign .btn {
	margin: 20px auto 0 auto;
	-webkit-transition: opacity .3s;
	-o-transition: opacity .3s;
	transition: opacity .3s;
	cursor: pointer;
}

#campaign .btn.op {
	opacity: 0;
	height: 0;
	margin-top: 0;
}




/*===================sp=*/
@media screen and (max-width: 860px) {

	#campaign .bnrBox {
		margin: 2vw auto 0 auto;
		padding: 2vw 0 0 0;

		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	#campaign .bnrBox li {
		width: 42%;
		margin: 0 2% 20px 2%;
	}

	#campaign .bnrBox p {
		width: 42%;
		margin: 0 2% 20px 2%;
	}

	#campaign .btn {
		margin: 10px auto 0 auto;
		-webkit-transition: opacity .3s;
		-o-transition: opacity .3s;
		transition: opacity .3s;
		cursor: pointer;
	}

	#campaign .btn img {
		width: 140%;
		margin-left: -20%;
	}


}

/*====================*/


/*-----------------------------------------------------------
	#story setting
-----------------------------------------------------------*/
#story {
	margin: 80px auto 30px auto;
	padding: 0 0 0 0;
	text-align: center;
}

/*
	base text
*/
#story .txtBox {
	width: 100%;
	color: #ffffff;
	font-size: 22px;
	line-height: 1.8;
	margin: 50px auto 0 auto;
	padding: 0 0 0 0;
	font-family: 'ヒラギノ丸ゴ Pro W4', 'Hiragino Maru Gothic Pro', 'Meiryo UI', 'メイリオ', 'Meiryo', sans-serif;

}

#story .txtBox span {
	position: relative;
	z-index: 2;
	font-size: 30px;
	color: #f7003a;
}

#story .contentBox {
	margin: 0 auto 0 auto;
	position: relative;
}

#story .itemBox {}


/*===================sp=*/
@media screen and (max-width: 860px) {

	#story {
		margin: 30px auto 30px auto;
	}

	#story .txtBox {
		font-size: 3.4vw;
		margin: 0 auto 0 auto;
		padding: 20px 2% 0 2%;
	}

	#story .txtBox span {
		font-size: 4.0vw;
	}

	#story .txtBox {
		width: 89%;
		z-index: 2;
		position: relative;
	}
}

/*====================*/


/*-----------------------------------------------------------
	#system setting
-----------------------------------------------------------*/
#system {
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
	text-align: center;
	overflow: hidden;
}
#system .baseText
{
	width: 100%;
	color: #ffffff;
	font-size: 22px;
	line-height: 1.8;
	margin: 50px auto 0 auto;
	padding: 0 0 0 0;
	font-family: 'ヒラギノ丸ゴ Pro W4', 'Hiragino Maru Gothic Pro', 'Meiryo UI', 'メイリオ', 'Meiryo', sans-serif;
}

#system .contentBox {
	margin: 0 auto 0 auto;
	padding: 20px 0 0 0;
}

#system .contentBox {
	margin-top: 20px;
}

#system h2 {
	position: relative;
	padding-top: 50px;
}

#system h2:after {
	content: "";
	display: block;
	width: 20%;
	height: 100%;
	background: url(../img/item_03.png) no-repeat right top;
	background-size: auto 100%;

	position: absolute;
	top: 0;
	right: 3%;

}

#howto #system {
	margin-top: 50px;
}

#howto #system h3 {
	width: 90%;
	font-size: 34px;
	color: #ffffff;
	text-align: center;
	margin: 0 auto 0 auto;
	padding: 0 0 30px 0;
	border-bottom: 2px solid #333333;
}

#howto #system h3.tit {
	font-size: 36px;
	font-weight: bold;
	text-align: center;
	color: #f7003a;
	margin: 50px auto 0 auto;
	padding: 0 0 0 0;
	border-bottom: none;
}

#howto .howtoBox {
	width: 90%;
	margin: 50px auto 0 auto;
}

#howto .howtoBox li {
	width: 100%;
	position: relative;
	margin: 0 auto 80px auto;
}

#howto .howtoBox li .tit {
	color: #e6a025;
	font-size: 26px;
	text-align: center;
	font-weight: 700;
}

#howto .howtoBox li .details {
	width: 100%;
	margin: 10px auto 0 auto;
}

#howto .howtoBox .img {
	margin: 0 0 0 0;
	z-index: 1;
}

#howto .howtoBox .txt {
	font-size: 22px;
	line-height: 1.6;
	text-align: left;
	margin: 20px 0 0 0;
	color: #ffffff;

}

#howto .howtoBox .note {
	font-size: 19px;
	line-height: 1.6;
	text-align: left;
	color: #999999;

}

#howto .menubox {
	width: 90%;
	margin: 0 auto 0 auto;
}

#howto .howtoBox .menubox li {
	font-size: 18px;
	width: 80%;
	margin: 30px auto 0 auto;
}

#system .lead {
	width: 90%;
	margin: 0 auto 0 auto;
	font-size: 22px;
	margin-top: 30px;
	text-align: left;
}

#system .systemBox {
	width: 90%;
	margin: 50px auto 0 auto;
	display: block;
}

#system .systemBox li {
	width: 100%;
	position: relative;

	margin: 0 0 30px 0;

	display: flex;
	justify-content: space-between;

	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;

}

#system .systemBox li .details {
	position: relative;
	width: 48%;
}

#system .systemBox .img {
	margin: 0 0 0 0;
	z-index: 1;
}

#system .systemBox .txtBox {
	width: 46%;
	text-align: left;
}

#system .systemBox .tit {
	font-size: 24px;
	font-weight: 700;
	line-height: 1.4;
	color: #e6a025;
}

#system .systemBox .txt {
	font-size: 22px;
	line-height: 1.6;
	text-align: left;
	margin: 15px 0 0 0;
	color: #ffffff;
}

#rule {
	margin: 0 auto 30px auto;
}

.ruleWrap {
	width: 90%;
	margin: 0 auto 30px auto;
}

h3.tit,
.ruleWrao h3.tit {
	font-size: 36px;
	font-weight: bold;
	text-align: center;
	color: #f7003a;
	margin: 50px auto 0 auto;
}


#rule .txt {
	font-size: 22px;
	text-align: left;
	margin: 30px auto 50px auto;
}


#rule .noteBox {
	margin: 50px auto 0 auto;
	font-size: 19px;
	text-align: left;
	color: #999999;
}

#rule .contentline {
	padding-top: 30px;
	padding-bottom: 30px;
	font-size: 22px;
}

#rule .contentline span {
	font-size: 19px;
	color: #999999;
	font-weight: normal;
}

#system .ruleBox {
	width: 100%;
	margin: 50px auto 0 auto;
	display: flex;
	justify-content: space-between;


	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

#system .ruleBox li {
	width: 32%;
	margin-bottom: 30px;
	position: relative;
}

#system .ruleBox li .details {
	position: relative;
}

#system .ruleBox .img {
	margin: 0 8% 0 8%;
	z-index: 1;
}

#system .ruleBox .txt {
	font-size: 20px;
	line-height: 1.4;
	font-weight: 700;
	text-align: center;
	margin: 0 0 0 0;
	color: #e6a025;

}

#rule .btn {
	width: 100%;
	background: #e6a025;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	color: #ffffff;
	margin: 60px auto 0 auto;
}

#rule .btn a {
	display: block;
	padding: 30px 0 30px 0;
	color: #ffffff;
	font-size: 22px;
	font-weight: 700;
	text-decoration: none;
}

#rule .btn:hover {
	opacity: 0.7;
}


/*===================sp=*/
@media screen and (max-width: 860px) {
	#howto .menubox {
		width: 100%;
		margin: 0 auto 0 auto;
	}
	
	#howto #system h3 {
		font-size: 1.2rem;
	}
	#howto #system h3.tit {
		font-size: 1.4rem;
		margin-top: 30px;
	}

	#howto .howtoBox li {
		margin-bottom: 30px;
	}

	#howto .howtoBox .menubox li {
		width: 100%;
	}

	h3.tit,
	.ruleWrao h3.tit {
		font-size: 1.4rem;
	}

	#howto .howtoBox li .tit {
		font-size: 1.2rem;
	}

	#howto .howtoBox .txt {
		font-size: 3.4vw;
		line-height: 1.6;
		text-align: left;
		margin: 20px 0 0 0;
		color: #ffffff;

	}

	#howto .howtoBox .note {
		font-size: 0.8rem;
		line-height: 1.6;
		text-align: left;
		color: #999999;

	}

	h3.tit {
		font-size: 1.2rem;
		font-weight: bold;
		text-align: center;
		color: #f7003a;
		margin: 50px auto 0 auto;
	}

	 #rule .contentWrap{
		width:90%;
	 }

	 #rule .contentWrap .note{
		width:100%;
	 }

	#rule .txt {
		font-size: 1.0rem;
		text-align: left;
		margin: 30px auto 0 auto;
	}

	#rule .noteBox {
		font-size: 0.8rem;
	}

	#rule .contentline {
		font-size: 1.0rem;

	}

	#rule .contentline span {
		font-size: 0.8rem;
		color: #999999;
	}

	#system .ruleBox .txt {
		font-size: 1.0rem;
		line-height: 1.4;
		font-weight: 700;
		text-align: center;
		margin: 0 0 0 0;
		color: #e6a025;

	}

	#system .systemBox li {
		margin-bottom: 20px;
	}

	#system .systemBox .tit {
		font-size: 1.0rem;
		font-weight: 700;
		line-height: 1.4;
		color: #e6a025;
	}

	#system .systemBox .txt {
        font-size: 3.4vw;
		line-height: 1.6;
		text-align: left;
		margin: 10px 0 0 0;
		color: #fff;
	}


	#system .lead {
		width: 90%;
		margin: 0 auto 0 auto;
		font-size: 3.4vw;
		margin-top: 30px;
		text-align: left;
	}

	#play .pointBox {
		width: 100%;

		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	#play .pointBox li {
		width: 48%;
		margin: 0 auto 5vw auto;
		position: relative;
	}

	#play .pointBox .comm {
		position: absolute;
		left: 0;
		top: 0;
	}

	#play .pointBox .img {
		margin: 3vw 5% 0 5%;
	}

	#play .pointBox .tit {
		width: 100%;
		margin: 0 auto 0 auto;
	}

	#play .pointBox .txt {
		font-size: 2.4vw;
		line-height: 2.0;
		text-align: center;
		margin: 10px 0 0 0;
	}

	.cap {
		width: 80%;
		margin-top: 20px;
		margin-bottom: 20px;
		font-size: 2.6vw;
	}

	#rule .btn {
		margin-top: 20px;
	}

	#rule .btn a {
		display: block;

		padding: 15px 0 15px 0;
		color: #ffffff;
        font-size: 3.4vw;
	}

}

/*====================*/




/*-----------------------------------------------------------
	#point setting
-----------------------------------------------------------*/
#point {
	margin: 20px auto 0 auto;
	text-align: center;
	padding-bottom: 0;
}

#point h2 {
	/*
		width: 12%;
		margin: 0 auto 0 auto;
*/
}

#point .pointBox {
	width: 100%;
	margin: 0 auto 0 auto;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
}

#point .pointBox li {
	width: 31%;
	position: relative;
	margin-bottom: 70px;
}

#point .pointBox .details {}

#point .pointBox .comm {
	width: 30%;
	position: absolute;
	left: 0;
	top: 0;
}

#point .pointBox .comm img {
	width: 100%;
	height: auto;
}

#point .pointBox .img {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}

#point .pointBox .txt {
	font-size: 14px;
	line-height: 1.6;
	text-align: left;
	margin: 25px 0 0 0;
}

#point .cap {}

/*===================sp=*/
@media screen and (max-width: 860px) {
	#point {
		margin: 5vw auto 0 auto;
	}

	#point h2 {
		/*
		width: 30%;
		margin: 0 auto 10px auto;
*/
	}

	#point .pointBox {
		width: 100%;

		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	#point .pointBox li {
		width: 70%;
		margin: 0 auto 4vw auto;
		position: relative;
	}

	#point .pointBox .comm {
		position: absolute;
		left: 0;
		top: 0;
	}

	#point .pointBox .img {
		margin: 0 5% 0 5%;
	}

	#point .pointBox .txt {
		font-size: 2.4vw;
		line-height: 2.0;
		text-align: left;
		margin: 10px 0 0 0;
	}


}

/*====================*/



/*-----------------------------------------------------------
	#voice setting
-----------------------------------------------------------*/

#howto {}

#howto h3 {
	width: 90%;
	font-size: 34px;
	color: #ffffff;
	text-align: center;
	margin: 0 auto 0 auto;
	padding: 0 0 30px 0;
	border-bottom: 2px solid #333333;
}

#howto h4 {
	width: 100%;
	font-size: 30px;
	color: #e6a025;
	text-align: left;
	margin: 20px auto 20px auto;
}


/*-----------------------------------------------------------
	#voice setting
-----------------------------------------------------------*/
#voice {
	width: 100%;
	position: relative;
	text-align: center;
	padding: 20px 0 20px 0;
	margin-top: 0;
}

#voice ul {
	width: 100%;
	max-width: 700px;
	margin: 30px auto 0 auto;
}

#voice ul li {
	margin: 0 0 30px 0;
}

#voice ul li .cap {
	font-size: 14px;
	color: rgba(255, 255, 255, 0.50);
	margin: 45px auto 0 auto;
	text-align: center;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	#voice {
		margin: 30px auto 0 auto;
	}

	#voice ul {
		margin: 20px auto 0 auto;
	}

	#voice ul li {
		margin: 0 0 30px 0;
	}

	#voice ul li .cap {
		font-size: 2.4vw;
		margin: 30px auto 0 auto;
	}
}

/*====================*/

/*-----------------------------------------------------------
	#event setting
-----------------------------------------------------------*/
#event {
	width: 100%;
	position: relative;
	text-align: center;
	padding: 20px 0 20px 0;
	margin-top: 0;
}

#event .contentBox {
	margin-top: 70px;
}

#event h2 {
	position: relative;
	padding-top: 70px;
}

#event h2:after {
	content: "";
	display: block;
	width: 20%;
	height: 100%;
	background: url(../img/item_04.png) no-repeat left top;
	background-size: auto 100%;

	position: absolute;
	top: 0;
	left: 0;

}

#event .outlineBox {
	width: 90%;
	margin: 50px auto 0 auto;
	display: flex;
	justify-content: space-between;
}

#event .outlineBox li {
	width: 25%;
	position: relative;
}

#event .outlineBox li .details {
	position: relative;
}

#event .outlineBox .img {
	margin: 0 8% 0 8%;
	z-index: 1;
}

#event .outlineBox .txt {
	font-size: 20px;
	line-height: 1.4;
	font-weight: 700;
	text-align: center;
	margin: 0 2% 0 2%;
	color: #ffffff;

}

#event .outlineList {
	width: 90%;
	margin: 50px auto 0 auto;
}

#event .outlineList li {
	width: 100%;
	margin: 0 0 50px 0;
	display: flex;
	justify-content: space-between;
	text-align: left;
}

#event .outlineList li:last-child {
	margin-bottom: 0;
}

#event .outlineList .tit {
	width: 25%;
	color: #f7003a;
	font-weight: 700;
	font-size: 22px;
}

#event .outlineList .txtBox {
	width: 75%;
	font-size: 22px;
}

#event .outlineList .txtBox span {
	font-size: 30px;
}

#event .btn {
	width: 100%;
	background: #f7003a;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	color: #ffffff;
	margin: 30px auto 0 auto;
	text-align: center;
}

#event .btn a {
	display: block;
	padding: 30px 0 30px 0;
	color: #ffffff;
	font-size: 20px;
	font-weight: 700;
	text-decoration: none;
}

#event .btn:hover {
	opacity: 0.7;
}


/*===================sp=*/
@media screen and (max-width: 860px) {

	#event .contentBox {
		margin-top: 0px;
	}

	#event .btn a {
		padding: 15px 0 15px 0;
        font-size: 3.4vw;
	}

	#event .outlineBox .txt {
		font-size: 1.0rem;

	}

	#event .outlineList .tit {
		font-size: 0.8rem;
	}

	#event .outlineList .txtBox {
		font-size: 1.0rem;
	}

	#event .outlineList .txtBox span {
		font-size: 1.0rem;
	}

	#event .scheduleList {
		margin-top: 0;
	}

	#event .scheduleList li {
		width: 30%;
		max-width: 30%;
		padding: 0 0 10px 0;
		margin: 0 0 15px 0;
		position: relative;
	}

	#event .scheduleList li.new a:before {
		content: '';
		position: absolute;
		top: -5px;
		left: -5px;
		width: 25%;
		max-width: 25%;
		padding-top: 100%;
		display: block;
		background: url(../img/icon_new.svg) no-repeat top left;
		background-size: 100% auto;
	}

	#event .scheduleList li .place {
		margin: 5px 0 5px 0;
		font-size: 4vw;
		color: #eccb9b;
		font-weight: 900;
		text-shadow: 0 0 10px rgba(232, 109, 0, 0.80);
	}

	#event .scheduleList li .date {
		font-size: 2.0vw;
		font-weight: 700;
		line-height: 1.4;
		color: #c3c3c3;
	}

	#event .scheduleList li .cs {
		margin: 10px 0 0 0;
		padding: 20% 0 20% 0;
	}

	#event .info {
		position: absolute;
		top: 25vw;
		left: 0;
		width: 100%;
		text-align: center;
		font-size: 6vw;
		color: #ffffff;
		font-weight: bold;
	}


}

/*====================*/

/*-----------------------------------------------------------
	#ticketdetails setting
-----------------------------------------------------------*/

#ticketdetails {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}

#ticketdetails .contentBox {
	padding: 0 0 0 0;
	margin: auto auto;
}

#ticketdetails .contentline {
	max-width: 600px;
	padding: 30px 30px 30px 30px;
	margin: 0 auto 0 auto;
}

#ticketdetails h3 {
	font-size: 30px;
	color: #ffffff;
	text-align: center;
	margin: 0 auto 0 auto;
	padding: 30px 0 30px 0;
	border-bottom: 2px solid #333333;
}

#ticketdetails h4 {
	font-size: 23px;
	color: #ffffff;
	text-align: center;
	margin: 50px auto 30px auto;
}

#ticketdetails #ticket_api h4 {
	margin: 0 0 0 0;
	padding: 0 0 5px 0;
	font-size: 12px;
	letter-spacing: 0;
	line-height: 1;
	border-bottom: 2px solid #bfbfbf;
	position: relative;
	text-align: left;
	color: #000000;
}

#ticketdetails .btnBox {
	width: 40%;
	margin: 0 auto 30px auto;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

#ticketdetails .btnBox .btn {
	width: 46%;
}

#ticketdetails .btnimgBox {
	text-align: center;
}
/*日程*/
#schedule.contentWrap {
	background: none;
	margin-top: 70px;
}

#schedule .contentBox {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#schedule .contentBox .imgBox {
	width: 28%;
	padding: 0 9% 0 9%;
}

#schedule .contentBox .imgBox img {
	filter:
		drop-shadow(1px 1px 10px rgba(0, 0, 0, 0.2)) drop-shadow(-1px -1px 10px rgba(0, 0, 0, 0.2)) drop-shadow(1px -1px 10px rgba(0, 0, 0, 0.2)) drop-shadow(-1px 1px 10px rgba(0, 0, 0, 0.2)) drop-shadow(1px 0px 5px rgba(0, 0, 0, 0.1)) drop-shadow(-1px 0px 5px rgba(0, 0, 0, 0.1)) drop-shadow(0px 1px 5px rgba(0, 0, 0, 0.1)) drop-shadow(0px -1px 5px rgba(0, 0, 0, 0.1));
}

#schedule .contentBox .txtBox {
	width: 54%;
	text-align: left;
}

#schedule .contentBox .txtBox h2 {
	width: 100%;
	max-width: 500px;
	color: #00bdad;
	text-align: left;
	margin: 0 0 0 0;
	border-bottom: none;
}

#schedule .contentBox .txtBox h3 {
	color: #00bdad;
	text-align: left;
	font-size: 18px;
	border-bottom: none;
}

#schedule .contentBox .txtBox .txt01 {
	text-align: left;
	font-size: 13px;
	font-weight: bold;
}

#schedule .contentBox .txtBox .txt02 {
	text-align: left;
	font-size: 11px;
	margin: 20px 0 0 0;
}

/*API*/

#ticket_api.contentWrap {
	background: none;
	margin: 50px auto 30px auto !important;
}

#ticket_api .note {
	margin: 30px auto 0 auto;
	color: #999999;
}

#ticketdetails .contentBox {
	margin: 0 auto 40px auto;
}

#ticketdetails .txtWrap {
	width: 100%;
	max-width: 750px;
	margin: 30px auto 0 auto;


}

#ticketdetails .tit {
	width: 100%;
	color: #f7003a;
	font-weight: 700;
	font-size: 30px;
	border-bottom: none;
	padding: 0 0 0 0;
	margin: 0 auto 0 auto;
}

#ticket_api .tit {
	width: 100%;
	color: #f7003a;
	font-weight: 700;
	font-size: 30px;
	border-bottom: none;
	padding: 0 0 0 0;
	margin: 20px auto 20px auto;
}

#ticketdetails .tit2 {
	width: 100%;
	color: #0060d6;
	font-weight: 700;
	font-size: 30px;
	border-bottom: none;
	padding: 0 0 0 0;
	margin: 0 auto 0 auto;
}

#ticketdetails .txtBox {
	font-size: 11px;
}

#ticketdetails .txtWrap .txt.fs35 {
	font-size: 30px;
}

#ticketdetails .txtWrap .comm {
	width: 20%;
	position: absolute;
	right: 0;
	top: 20px;
}

#ticketdetails table {
	width: 100%;
	background: #212121;
	margin: 30px auto 30px auto;
}

#ticketdetails table .head {
	background: #000000;
	font-size: 19px;
	color: #f7003a;
	border-bottom: none;
}

#ticketdetails table .head td {
	color: #f7003a;
	font-weight: 700;
	padding-bottom: 20px;
}

#ticketdetails table tr td span {
	font-size: 11px;
}

#ticketdetails table tr td.cat {
	padding: 0 0 20px 3%;
	text-align: left;
}

#ticketdetails table tr td.cat p {
	font-size: 22px;
	color: #e6a025;
	font-weight: 700;
	line-height: 1.2;
}

#ticketdetails table tr td.cat .sub {
	font-size: 17px;
	margin: 0 auto 0 auto;
	color: #999999;
}

#ticketdetails table tr {

	border-bottom: 2px solid #333333;
}

#ticketdetails table tr td {
	padding: 20px 0 20px 0;
	font-size: 20px;
	text-align: center;
}

#ticketdetails table tr td:last-child {
	padding-right: 3%;
}

#ticketdetails table tr:last-child {
	border-bottom: none;
}

#ticketdetails .contentline {
	text-align: center;
	font-weight: 700;
	font-size: 22px;
}


#ticketdetails .ticketBox {
	margin: 50px auto 0 auto;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
}

#ticketdetails .ticketBox li {
	width: 47%;
	position: relative;
	margin: 0 0 50px 0;
}

#ticketdetails .ticketBox li.col1 {
	width: 100%;
	margin-bottom: 0;
}

#ticketdetails .ticketBox li.col1 .note {
	margin-bottom: 0;
}

#ticketdetails .ticketBox li .details {
	position: relative;
	background: #1a1a1a;
	text-align: center;
	padding: 20px 0 15px 0;
	line-height: 1.4;
}

#ticketdetails .ticketBox .img {
	margin: 0 8% 0 8%;
	z-index: 1;
}

#ticketdetails .ticketBox .details .txt {
	font-size: 15px;
	line-height: 1.4;
	font-weight: 700;
	text-align: center;
	margin: 5px 0 0 0;
	color: #ffffff;

}

#ticketdetails .ticketBox .txt {
	font-size: 20px;
	line-height: 1.6;
	text-align: left;
	margin: 20px 0 0 0;
	color: #ffffff;
}

#ticketdetails .ticketBox .txt span {
	color: #e6a025;
	font-weight: 500;
}

#ticketdetails .txtWrap.col2 {
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;

	-ms-flex-wrap: wrap;
	flex-wrap: wrap;

}

#ticketdetails .txtWrap.col2 .txtBox {
	width: 60%;
	margin: 10px 0 0 0;
}

#ticketdetails .txtWrap.col2 .btnBox {
	width: 30%;
	margin: 10px 0 0 0;
	padding: 0 0 0 10%;
	display: block;
}

#ticketdetails .txtWrap.col2 .btnBox .btn {
	width: 100%;
	margin: 50px 0 50px 0;
}

#ticketdetails .txtWrap .tit {
	width: 100%;
	font-size: 17px;
	font-weight: bold;
}

#ticketdetails .txtWrap .txt {
	margin: 20px 0 0 0;
	font-size: 20px;
}

#ticketdetails .txtWrap .txt.date {
	text-align: center;
	margin-bottom:20px;
	font-size: 22px;
}

#ticketdetails #back {
	padding-top: 80px;
}


/*===================sp=*/
@media screen and (max-width: 860px) {

	#ticketdetails .txtWrap .comm {
		width: 30%;
		position: absolute;
		right: 0;
		top: 10px;
	}

	#ticketdetails .contentline {
		max-width: 82%;
		padding: 30px 3% 30px 3%;
		margin: 0 auto 0 auto;
	}

	#ticketdetails .contentline {
		text-align: center;
		font-size: 0.9rem;
		font-weight: 700;
	}

	#ticketdetails .ticketBox .details .txt {
		font-size: 0.8rem;

	}

	#ticketdetails .ticketBox {
		width: 95% !important;
	}

	#ticketdetails .ticketBox .note{
		width:100%;
	}

	#ticketdetails .ticketBox .txt {
		font-size: 1.0rem;

	}

	#ticketdetails .txtWrap .txt {
		font-size: 1.0rem;
	}

	#ticketdetails .contentBox {
		width: 100% !important;
	}

	#ticketdetails .contentBox {
		width: 100%;
		margin: 0 auto 0 auto;
	}


	#ticketdetails table .head {
		font-size: 1.0rem;
	}

	#ticketdetails table tr td.cat p {
		font-size: 1.0rem;
	}

	#ticketdetails table tr td.cat .sub {
		font-size: 0.8rem;

	}

	#ticketdetails table tr td {
		font-size: 1.0rem;
	}


	#ticketdetails .tit {
		font-size: 1.4rem;
	}

	#ticketdetails .tit2 {
		font-size: 1.2rem;
	}

	#ticketdetails .txtBox {
		font-size: 1.0rem;
	}

	#ticketdetails .txtWrap .txt.fs35 {
		font-size: 1.2rem;
	}

	#ticketdetails .note{
		margin-bottom:40px;
	}


	#ticketdetails h3 {
		font-size: 6.0vw;
	}

	#ticketdetails h4 {
		font-size: 4.0vw;
	}

	#ticketdetails #ticket_api h4 {
		font-size: 4.0vw;
	}


	/*日程*/
	#schedule.contentWrap {
		background: none;
		margin-top: 50px;
	}

	#schedule .contentBox {
		display: block;
	}

	#schedule .contentBox .imgBox {
		width: 76%;
		padding: 0 0 0 0;
		margin: 0 auto 0 auto;
	}

	#schedule .contentBox .txtBox {
		width: 100%;
		text-align: left;
		margin: 20px auto 0 auto;
	}

	#schedule .contentBox .txtBox h2 {
		width: 100%;
		color: #00bdad;
		text-align: left;
		margin: 0 0 0 0;
		border-bottom: none;
	}

	#schedule .contentBox .txtBox h3 {
		color: #00bdad;
		text-align: left;
		font-size: 4.0vw;
		border-bottom: none;
	}

	#schedule .contentBox .txtBox .txt01 {
		text-align: left;
		font-size: 3.4vw;
		font-weight: bold;
	}

	#schedule .contentBox .txtBox .txt02 {
		text-align: left;
		font-size: 3.4vw;
		margin: 20px 0 0 0;
	}

	#ticketdetails .txtWrap.col2 {
		display: block;
	}

	#ticketdetails .txtWrap.col2 .txtBox {
		width: 100%;
		margin: 10px 0 0 0;
	}

	#ticketdetails .txtWrap.col2 .btnBox {
		width: 100%;
		margin: 30px auto 0 auto;
		padding: 0 0 0 0;
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;

		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	#ticketdetails .txtWrap.col2 .btnBox .btn {
		width: 48%;
		margin: 0 0 10px 0;
	}

	#ticketdetails #back {
		padding-top: 80px;
	}

	#ticketdetails .btnBox .btn {
		width: 100%;
	}

}

/*====================*/





.ticketWrap {
	background: #eeeeee;
	margin: 30px auto 0 auto;
	padding: 20px 3% 20px 3%;
	position: relative;
}

.ticketWrap .naviBox {
	height: 80px;
	margin: 0 60px 0 60px;
	padding: 0 0 0 0;
	overflow: hidden;
}

.ticketWrap .naviBox .prevBtn {
	width: 50px;
	height: 80px;
	background: #ffffff;
	z-index: 5;
	-webkit-transition: all .3s;
	transition: all .3s;
	cursor: pointer;
	position: absolute;
	top: 20px;
	left: 3%;
}

.ticketWrap .naviBox .prevBtn:before {
	content: '';
	width: 12px;
	height: 12px;
	border: 0;
	border-top: solid 3px #626262;
	border-right: solid 3px #626262;
	top: 50%;
	left: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	margin: -8px 0 0 -3px;
	position: absolute;
}

.ticketWrap .naviBox .nextBtn {
	width: 50px;
	height: 80px;
	background: #ffffff;
	z-index: 5;
	-webkit-transition: all .3s;
	transition: all .3s;
	cursor: pointer;
	position: absolute;
	top: 20px;
	right: 3%;
}

.ticketWrap .naviBox .nextBtn:before {
	content: '';
	width: 12px;
	height: 12px;
	border: 0;
	border-top: solid 3px #626262;
	border-right: solid 3px #626262;
	top: 50%;
	left: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin: -8px 0 0 -10px;
	position: absolute;
}

.ticketWrap .naviBox .prevBtn:hover,
.ticketWrap .naviBox .nextBtn:hover {
	opacity: 0.7;
}

.ticketWrap .naviBox .prevBtn span,
.ticketWrap .naviBox .nextBtn span {
	display: none;
}

.ticketWrap .naviBox .comm {
	width: 100%;
	top: 25px;
	font-size: 14px;
	color: #ffffff;
	text-align: center;
	font-weight: bold;
	position: relative;
	display: none;
}

.ticketWrap .naviBox ul {
	background: #ababab;
	height: 80px;
	list-style: none;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	overflow-x: scroll;
	overflow-scrolling: touch;
	width: 100%;
	margin: 0;
	padding: 0;
	z-index: 2;
	position: relative;
}

.ticketWrap .naviBox ul::-webkit-scrollbar {
	height: 0;
}

.ticketWrap .naviBox ul li {
	margin: 0 2px 0 0;
	position: relative;
	cursor: pointer;
	opacity: 0.85;
}

.ticketWrap .naviBox ul li .scheduleBox {
	background: #ffffff;
	display: block;
	width: 80px;
	height: 80px;
	text-align: center;
	cursor: pointer;
	-webkit-transition: all .3s;
	transition: all .3s;
	position: relative;
	color: #676767;
	text-align: center;

	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: center;
	align-items: center;
}

.ticketWrap .naviBox ul li.cr {
	opacity: 1.0;

}

.ticketWrap .naviBox ul li.cr .scheduleBox {
	background: #fbe663;
}

.ticketWrap .naviBox ul li .scheduleBox:hover {
	opacity: 0.7;
}

.ticketWrap .naviBox ul li .scheduleBox .date {
	width: 100%;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	top: 28px;
}

.ticketWrap .naviBox ul li .scheduleBox .state {
	bottom: 10px;
	width: 100%;
	font-size: 10px;
	font-weight: 500;
	line-height: 1;
	color: #676767;
	margin-top: 10px;
}

.ticketWrap .naviBox ul li .scheduleBox .state span {
	font-size: 10px;
	font-weight: 500;
}

.ticketWrap .naviBox ul li .scheduleBox.present .state span {
	color: #32b16c;
}

.ticketWrap .naviBox ul li .scheduleBox.present .state span:before {
	content: "○";
}

.ticketWrap .naviBox ul li .scheduleBox.sold .state {
	color: #9d9d9d;
}

.ticketWrap .naviBox ul li .scheduleBox.sold .state span:before {
	content: "✕";
}

.ticketWrap .naviBox ul li .scheduleBox.few .state {
	color: #960b0b;
}

.ticketWrap .naviBox ul li .scheduleBox.few .state span:before {
	content: "△";
}


.ticketWrap .detailsBox {}

.ticketWrap .detailsBox .tit {
	margin: 0;
	padding: 20px 0 20px 0;
	font-size: 20px;
	letter-spacing: .1em;
	line-height: 1;
	color: #000000;
	font-weight: 500;
	text-align: center;

	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-align-items: flex-end;
	align-items: flex-end;
}

.ticketWrap .detailsBox .tit .tit01 {
	font-size: 25px;
}

.ticketWrap .detailsBox .details {
	background: #ffffff;
	padding: 2%;
}

.ticketWrap .detailsBox .details h4 {
	margin: 0 0 0 0;
	padding: 0 0 5px 0;
	font-size: 15px;
	letter-spacing: 0;
	line-height: 1;
	border-bottom: 2px solid #bfbfbf;
	position: relative;
}

.ticketWrap .detailsBox .details a.scrap {
	position: absolute;
	top: 0;
	right: 0;
	padding-right: 15px;
	color: #0e70bb;
	font-size: 15px;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	.ticketWrap .detailsBox .details h4 {
		margin: 0 0 0 0;
		padding: 0 0 5px 0;
		font-size: 15px;
		letter-spacing: 0;
		line-height: 1;
		border-bottom: 2px solid #bfbfbf;
		position: relative;

		line-height: 2.0;
	}

	.ticketWrap .detailsBox .details a.scrap {
		position: relative;
		right: 0;
		text-align: right;

	}
}

/*====================*/

.ticketWrap .detailsBox .details a.scrap:after {
	content: '';
	width: 8px;
	height: 8px;
	border: 0;
	border-top: solid 2px #0e70bb;
	border-right: solid 2px #0e70bb;
	top: 50%;
	right: 0;
	-webkit-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin: -5px 0 0 0px;
	position: absolute;
}

.ticketWrap .detailsBox .details a.scrap:hover {
	text-decoration: none;
	opacity: 0.7;
}

.ticketWrap .detailsBox .details ul {
	width: 102%;

	/*
						margin-left: -15px;
						margin-right: -15px;
*/
	list-style: none;
	display: block;
	/*
						margin: 0 -7px;
						padding: 0;
*/
	margin-bottom: 50px;
	margin-top: 2%;
}

.ticketWrap .detailsBox .details ul:before,
.ticketWrap .detailsBox .details ul:after {
	content: " ";
	display: table;
}

.ticketWrap .detailsBox .details ul:after {
	clear: both;
}

.ticketWrap .detailsBox .details ul li {
	position: relative;
	float: left;
	width: 23%;
	min-height: 1px;
	/*
						padding-left: 15px;
						padding-right: 15px;
						padding: 0 0 0 5px;
						margin: 15px 10px 0 0;
*/
	margin-right: 2%;
	margin-top: 2%;

}


/*===================sp=*/
@media screen and (max-width: 860px) {
	.ticketWrap .detailsBox .details ul li {
		position: relative;
		float: left;
		width: 90%;
		min-height: 1px;
		padding-left: 5%;
		padding-right: 5%;
		margin: 15px auto 0 auto;

	}
}

/*====================*/



.ticketWrap .detailsBox .details ul li .scheduleBox {
	position: relative;
	padding: 1em 8%;
	background: #fff;
	-webkit-transition: all .3s;
	transition: all .3s;
	z-index: 1;
	color: #ffffff;

	display: -webkit-flex;
	display: flex;

	-webkit-justify-content: space-between;
	justify-content: space-between;

	-webkit-align-items: center;
	align-items: center;
}

.ticketWrap .detailsBox .details ul li .scheduleBox a {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	left: 0;
	bottom: 0;
	color: #ffffff;
}

.ticketWrap .detailsBox .details ul li .scheduleBox .time {
	font-size: 14px;
	font-weight: 600;
	line-height: 1;

	margin-right: 10px;
}

.ticketWrap .detailsBox .details ul li .scheduleBox .state {
	font-size: 12px;
	font-weight: 500;
	line-height: 1;
	/*
							
							margin-left: 10px;
*/
}

.ticketWrap .detailsBox .details ul li .scheduleBox:hover {
	opacity: 0.7;
}

.ticketWrap .detailsBox .details ul li .scheduleBox.present {
	background: #32b16c;
}

.ticketWrap .detailsBox .details ul li .scheduleBox.present .state span:before {
	content: "○";
}

.ticketWrap .detailsBox .details ul li .scheduleBox.sold {
	background: #969696;
}

.ticketWrap .detailsBox .details ul li .scheduleBox.sold .state span:before {
	content: "✕";
}

.ticketWrap .detailsBox .details ul li .scheduleBox.few {
	background: #960b0b;
}

.ticketWrap .detailsBox .details ul li .scheduleBox.few .state span:before {
	content: "△";
}

.ticketWrap .detailsBox .details ul li .scheduleBox.remaining {
	color: #f84141;
}

.ticketWrap .detailsBox .details .buyWrap {
	width: 100%;
	margin: 20px auto 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.ticketWrap .detailsBox .details .buyWrap .ticketBox {
	width: 48%;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	.ticketWrap .detailsBox .details .buyWrap {
		width: 100%;
		margin: 20px auto 0 auto;
		display: block;
	}

	.ticketWrap .detailsBox .details .buyWrap .ticketBox {
		width: 100%;
		margin: 0 0 0 0;
	}
}

/*====================*/

.ticketWrap .detailsBox .details .ticketBox {
	margin-left: -15px;
	margin-right: -15px;
	margin: 0 -7px 0 -7px;
}

.ticketWrap .detailsBox .details .ticketBox:before,
.ticketWrap .detailsBox .details .ticketBox:after {
	content: " ";
	display: table;
}

.ticketWrap .detailsBox .details .ticketBox:after {
	clear: both;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem {
	position: relative;
	min-height: 1px;
	padding-left: 15px;
	padding-right: 15px;
	margin: 0 0 15px;
	padding: 0 7px 0 7px;
}

.ticketWrap .detailsBox .details .ticketBox .ticket-item:last-child {
	margin-bottom: 0;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem:nth-of-type(2n)+div.ticketItem {
	clear: left;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem p {
	font-size: 10px;
	margin: 0;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket {
	display: block;
	margin: 0 0 15px 0;
	padding: 10px 2% 10px 2%;
	width: 96%;
	color: #fff;
	font-size: 12px;
	font-weight: 500;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	border: none;
	background: #ffffff;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket:hover {
	opacity: 0.7;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.scrap {
	background: #f34f49;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.scrap:hover {
	opacity: 0.7;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.eplus {
	background: #e85298;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.eplus:hover {
	opacity: 0.7;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.pia {
	background: #36c;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.pia:hover {
	opacity: 0.7;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.lawson {
	background: #1a9fdd;
}

.ticketWrap .detailsBox .details .ticketBox .ticketItem a.ticket.lawson:hover {
	opacity: 0.7;
}




/*-----------------------------------------------------------
	#faq setting
-----------------------------------------------------------*/

#faq {
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}

#faq .contentWrap {
	/* 	background: #001219; */
	padding: 0 0 50px 0;
	margin: 0 auto 0 auto;
}

#faq .contentBox {
	padding: 0 0 0 0;
	margin: 0 auto 0 auto;
}

#faq h3 {
	width: 90%;
	font-size: 34px;
	color: #ffffff;
	text-align: center;
	margin: 0 auto 0 auto;
	padding: 0 0 30px 0;
	border-bottom: 2px solid #333333;
}

#faq h4 {
	width: 100%;
	font-size: 30px;
	color: #e6a025;
	text-align: left;
	margin: 20px auto 20px auto;
}


#faq .btnBox {
	width: 100%;
	max-width: 700px;
	margin: 0 auto 80px auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#faq .btnBox .btn {
	background: #eeeeee;
	width: 32%;
	height: 50%;
	text-align: center;
	position: relative;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

#faq .btnBox .btn:hover {
	opacity: 0.7;
}

#faq .btnBox .btn a {
	color: #000000;
	display: block;
	padding: 20px 10% 20px 10%;
	text-decoration: none;
	font-weight: 700;

}

#faq .faqWrap {
	margin: 10px auto 0 auto;
	padding: 0 0 20px 0;
}

#faq .faqWrap ul {
	width: 90%;
	max-width: 750px;
	margin: 30px auto 0 auto;
}

#faq .faqWrap ul li {
	padding: 0 0 30px 0;
}

#faq .faqWrap ul li .q {
	font-size: 26px;
	color: #e6a025;
	font-weight: bold;
	display: block;
	/* 				padding-left: 2em; */
	margin: 0 0 2% 0;
}

/*
			#faq .faqWrap ul li .q::before {
				content: "Q.";
				display: block;
				float: left;
				margin-left: -2em;
				width: 2em;
				text-align: center;
			}
*/
#faq .faqWrap ul li .a {
	font-size: 26px;
	line-height: 1.8;
	color: #ffffff;
	display: block;
	/* 				padding-left: 2em; */
}

/*
			#faq .faqWrap ul li .a::before {
				content: "A.";
				font-size: 26px;
				font-weight: bold;
				display: block;
				float: left;
				margin-left: -2em;
				width: 2em;
				text-align: center;
			}
*/

#faq .faqWrap ul li .n {
	font-size: 22px;
	line-height: 1.8;
	color: #ffffff;
	display: block;
	padding-left: 1em;
	margin: 0 0 0 0;
	margin-bottom: 20px;
}

#faq .faqWrap ul li .n::before {
	content: "・";
	font-size: 16px;
	font-weight: bold;
	display: block;
	float: left;
	margin-left: -1em;
	width: 1em;
	text-align: center;
}

#faq .faqWrap ul li .n:last-child {
	margin-bottom: 0;
}

#faq .faqWrap .bnr {
	width: 100%;
	max-width: 250px;
	margin: 0 auto 0 auto;
}

#faq .faqWrap .note {
	font-size: 19px;
	color: #999999;
}

#faq .faqWrap a {
	color: #f7003a;
	text-decoration: underline;
}

#faq .faqWrap a:hover {
	text-decoration: none;
}

#faq .faqWrap .faqlist {
	width: 90%;
	margin: 50px auto 0 auto;
	background: #202020;
}

#faq .faqWrap .faqlist li {
	width: 94%;
	margin: 0 0 0 0;
	padding: 20px 3% 20px 3%;
	display: flex;
	justify-content: space-between;
	text-align: left;
	border-bottom: 2px solid #333333;
}

#faq .faqWrap .faqlist li:last-child {
	margin-bottom: 0;
	border-bottom: none;
}

#faq .faqWrap .faqlist .tit {
	width: 30%;
	color: #e6a025;
	font-weight: 700;
	font-size: 22px;
}

#faq .faqWrap .faqlist .txt {
	width: 65%;
	font-size: 22px;
}

#faq .faqWrap .faqlist .txt span {
	font-size: 17px;
}


/*===================sp=*/
@media screen and (max-width: 860px) {

	#faq {
		width: 100%;
		padding: 20px 0 0 0;
	}

	#faq h2 {
		width: 94%;
		margin: 0 auto 0 auto;
		font-size: 5.0vw;
	}

	#faq .btnBox {
		width: 90%;
		margin: 3% auto 0 auto;
	}

	#faq .btnBox .btn {
		width: 30%;
		margin-bottom: 50px;
	}

	#faq .btnTextL{
		padding: 10px 0% 10px 0% !important;
	}




	#faq .btnBox .btn a {
        font-size: 3.4vw;
	}

	#faq h3 {
		font-size: 1.2rem;
		margin-bottom: 10px;
	}

	#faq h4 {
		font-size: 4.0vw;
		margin-top: 20px;
		margin-bottom: 10px;
	}

	#faq .faqWrap ul {
		width: 90%;
	}

	#faq .faqWrap ul li .q {
		font-size: 1.0rem;
	}

	#faq .faqWrap ul li .a {
		font-size: 1.0rem;
	}

	#faq .faqWrap ul li .a::before {
		font-size: 1.0rem;
		margin-top: 0;
	}

	#faq .faqWrap ul li .n {
		font-size: 1.0rem;
	}

	#faq .faqWrap ul li .n::before {
		font-size: 1.0rem;
	}

	#faq .faqWrap .bnr {
		width: 60%;
		max-width: 200px;
		margin: 0 auto 5% auto;
	}

	#faq .faqWrap .note {
		font-size: 2.9vw;
	}

	#faq .faqWrap .faqlist .tit {
		width: 30%;
		color: #e6a025;
		font-weight: 700;
		font-size: 1.0rem;
	}

	#faq .faqWrap .faqlist .txt {
		width: 65%;
		font-size: 1.0rem;
	}

	#faq .faqWrap .faqlist .txt span {
		font-size: 0.8rem;
	}

}

/*====================*/


/*-----------------------------------------------------------
	#gamedetails setting
-----------------------------------------------------------*/

#game h2 {
	position: relative;
	padding-top: 150px;
}

#game h2:after {
	content: "";
	display: block;
	width: 17%;
	height: 100%;
	background: url(../img/item_05.png) no-repeat right top;
	background-size: 100% auto;

	position: absolute;
	top: 0;
	right: 0;

}

#game .txt {
	width: 100%;
	font-size: 22px;
	margin: 50px auto 0 auto;
}

#game .bnrBox {
	width: 100%;
	margin: 20px auto 0 auto;

	display: flex;
	align-items: stretch;
	text-align: left;
}

#game .bnrBox .bnr {
	margin: 0 auto 0 auto;
}

#tag.contentBox {
	margin: 50px auto 0 auto;
}

#tag h3 {
	width: 100%;
	margin: 0 auto 0 auto;
}

#tag .img {
	margin: 20px auto 0 auto;
}

#tag .btnBox {
	margin: 20px auto 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

#tag .btn {
	width: 41%;
	background: #0060d6;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	color: #ffffff;
	margin: 30px 0 0 0;
	padding: 0 3% 0 3%;
	text-align: left;
	line-height: 1.6;
}

#tag .btn a {
	display: block;
	padding: 30px 0 30px 0;
	color: #ffffff;
	font-size: 1.2rem;
	font-weight: 700;
	text-decoration: none;
}

#tag .btn:hover {
	opacity: 0.7;
}

#gamedetails {
	width: 100%;
	position: relative;
	text-align: center;
	padding-top: 0;
	margin: 0 0 0 0;
	padding: 5% 0 5% 0;
}

#gamedetails .contentBox {
	margin: 10px auto 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

#gamedetails h2 img {
	max-width: 500px;
}

#gamedetails .txtBox {
	width: 47%;
	max-width: 445px;
	margin: 20px auto 0 auto;
}

#gamedetails .txtBox .txt {
	width: 100%;
	line-height: 1.8;
	font-size: 16px;
	text-align: left;
	color: #ffffff;
}

#gamedetails .movieBox {
	width: 47%;
	max-width: 450px;
	margin: 20px auto 0 auto;
}

#gamedetails .tit {
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	width: 100%;
	margin-bottom: 10px;
}

#gamedetails .link2site {
	width: 47%;
	max-width: 450px;
	margin: 30px auto 0 auto;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
	#game .contentBox {
		width: 100%;
	}

	#game .contentBox .txtBox {
		width: 90%;
		font-size: 1.0rem;
		margin: 0 auto 0 auto;
	}

	#game .txt {
        font-size: 3.4vw;
	}

	#game h2 {
		position: relative;
		padding-top: 10vw;
	}

	#game h2:after {
		content: "";
		display: block;
		width: 17%;
		height: 100%;
		background: url(../img/item_05.png) no-repeat right top;
		background-size: 100% auto;

		position: absolute;
		top: 0;
		right: 0;

	}

	#gamedetails {
		padding-top: 10%;
	}

	#gamedetails .txtBox {
		width: 100%;
		margin-top: 10px;
	}

	#gamedetails .txtBox .txt {
		font-size: 2.9vw;
		line-height: 2.0;
	}

	#gamedetails .colBox {
		width: 100%;
		display: block;
		margin-top: 0;
	}

	#gamedetails .colBox .movieBox {
		width: 100%;
		margin: 0 0 0 0;
	}

	#gamedetails .colBox .movieBox h2 {
		width: 50%;
		margin: 8% 0 5% 5%;
	}

	#gamedetails .colBox .txt {
		width: 100%;
		margin-top: 8%;
		font-size: 14px;
	}

	#gamedetails .contentBox .video {
		max-width: 100%;
		margin-top: 0;
	}

	#gamedetails .colBox .txtBox {
		width: 100%;
		margin: 0 auto 0 auto;
	}

	#gamedetails .colBox .logo {
		width: 40%;
		max-width: 205px;
		margin: 0 auto 0 auto;
		line-height: 0;
	}

	#gamedetails .colBox .txtBox .txt {
		line-height: 1.6;
		font-size: 14px;
	}

	#gamedetails .movieBox {
		width: 100%;
		max-width: 450px;
		margin: 30px auto 0 auto;
	}

	#gamedetails .tit {
		font-size: 3.0vw;
	}

	#gamedetails .link2site {
		width: 90%;
		max-width: 450px;
		margin: 20px auto 0 auto;
	}

	#tag .btnBox {
		width: 90%;
		margin: 0 auto 0 auto;
	}

	#tag .btn a {
		display: block;
		padding: 15px 0 15px 0;
		color: #ffffff;
		font-size: 0.8rem;
		font-weight: 700;
		text-decoration: none;
	}

}

/*====================*/

/*----------------------------------btn setting----------*/
ul.link2site {
	width: 100%;
	display: table;
	margin: 30px 0 0 0;
	padding: 0;
	list-style: none;
}

ul.link2site li {
	width: 32%;
	float: left;
	margin-right: 2%;
}

ul.link2site li:last-child {
	margin-right: 0;
}

ul.link2site li a {
	display: block;
	padding: 4% 0 4% 0;
	color: #fff;
	height: 50px;
	font-size: 13px;
	text-decoration: none;
	text-align: center;
	border-radius: 5px;
	line-height: 50px;
	font-weight: normal;
}

ul.link2site li.link-item-web a {
	background: #32b16c;
	font-size: 11px;
}

ul.link2site li.link-item-twitter a {
	background: #55acee;
}

ul.link2site li.link-item-twitter img {
	width: 10%;
	height: auto;
}

ul.link2site li.link-item-facebook a {
	background: #3b5a9a;
}

ul.link2site li.link-item-facebook img {
	width: 5%;
	height: auto;
}

ul.link2site li a:hover {
	opacity: 0.5;
	filter: alpha(opacity=50);
	-ms-filter: "alpha(opacity=50)";
	-moz-opacity: 0.5;
	-khtml-opacity: 0.5;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	ul.link2site {
		width: 100%;
		margin: 3% auto 0 auto;
	}

	ul.link2site li a {
		height: 30px;
		line-height: 30px;
	}

}

/*====================*/

/*-----------------------------------------------------------
	#campaign setting
-----------------------------------------------------------*/

#footer .bnrBox {
	width: 100%;
	margin: 0 auto 30px auto;
	display: flex;
	justify-content: center;
	align-items: stretch;
	text-align: left;
}

#footer .bnrBox .bnr {
	width: 490px;
	margin: 0 0 0 0;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	#footer .bnrBox {
		width: 80%;
		margin: 0 auto 5vw auto;
		padding: 0 0 0 0;
	}

	#footer .bnrBox {
		width: 65%;
		margin: 0 3% 0 3%;
	}

	.bnr {
		width: 70%;
		min-width: 70%;
		margin: 0 3% 0 3%;
	}

	.fadeImg {
		width: 90%;
		margin:auto;
		text-align: center;
	}

}

/*====================*/

/*-----------------------------------------------------------
	#campaign setting
-----------------------------------------------------------*/
.campaign {
	width: 100%;
	margin: 0 auto 0 auto;
	z-index: -1;
}

.campaign .bnr {
	width: 100%;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	.campaign {
		margin-top: 0;
		padding-top: 0;
	}


}

/*====================*/



/*-----------------------------------------------------------
	#comment setting
-----------------------------------------------------------*/
#comment {
	margin: 80px auto 50px auto;
	padding: 0 0 0 0;
}

#comment h3 {
	width: 90%;
	font-size: 34px;
	color: #ffffff;
	text-align: center;
	margin: 0 auto 0 auto;
	padding: 0 0 30px 0;
	border-bottom: 2px solid #333333;
}

#comment .txtWrap {
	width: 90%;
	margin: 30px auto 0 auto;
}

#comment .txtWrap p {
	font-size: 22px;
	font-weight: 500;
}

#comment .txtWrap p span {
	font-size: 28px;
	font-weight: 700;
}

/*===================sp=*/
@media screen and (max-width: 860px) {
	#comment {
		margin: 50px auto 10px auto;
		padding: 0 0 0 0;
	}

	#comment .txtWrap {
		font-size: 3.4vw;
		line-height: 1.6;
	}

	#comment .txtWrap p {
        font-size: 3.4vw;
		font-weight: 500;
	}

	#comment .txtWrap p span {
		font-size: 1.2rem;
		font-weight: 700;
	}

	#comment h3 {
		font-size: 1.2rem;

	}


}

/*====================*/


/*-----------------------------------------------------------
	#specialcp01 setting
-----------------------------------------------------------*/
#specialcp01.contentWrap,
#specialcm.contentWrap {
	margin: 0 0 0 0;
}

#specialcp01,
#specialcm {
	width: 100%;
	position: relative;
	text-align: center;
	padding-top: 0;
	margin: 0 0 0 0;
	padding: 12% 0 8% 0;
}

#specialcp01 .contentBox,
#specialcm .contentBox {
	margin: 0 auto 0 auto;
}

#specialcp01 .img {
	width: 90%;
	max-width: 700px;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
}

#specialcp01 .txtBox {
	width: 90%;
	max-width: 600px;
	margin: 20px auto 0 auto;
}

#specialcp01 .txtBox .txt {
	width: 100%;
	line-height: 1.8;
	font-size: 16px;
	text-align: left;
	margin: 20px 0 0;
	color: #ffffff;
}

#specialcp01 .btn {
	width: 70%;
	max-width: 240px;
	margin: 20px auto auto;
}

.video {
	position: relative;
	height: 0;
	padding: 30px 0 56.25%;
	overflow: hidden;
}

.video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/*===================sp=*/
@media screen and (max-width: 860px) {

	#gamedetails {
		padding-top: 10%;
	}

	#gamedetails .txtBox {
		width: 100%;
	}

	#specialcp01 .txtBox .txt {
		width: 100%;
		line-height: 1.8;
		font-size: 3.4vw;
		text-align: left;
		margin: 20px 0 0;
		color: #ffffff;
	}
}

/*====================*/


/*-----------------------------------------------------------
	#entrant setting
-----------------------------------------------------------*/

#entrant {
	padding: 0 0 0 0;
}

#entrant .contentBox {
	width: 90%;
	max-width: 580px;
	margin: 50px auto 0 auto;
	padding: 0 0 0 0;
}


/*===================sp=*/
@media screen and (max-width: 860px) {

	#entrant {}

	#entrant .contentBox {
		width: 70%;
		margin: 7vw auto 0 auto;

	}



}

/*====================*/

/*-----------------------------------------------------------
	goods setting
-----------------------------------------------------------*/

#goods {
	width: 100%;
	padding: 0 0 70px 0;
	margin: 0 auto 0 auto;
}

#goods .contentBox {
	margin-top: 20px;
}

#goods .goodsWrap {
	width: 90%;
	max-width: 750px;
	margin: 0 auto 0 auto;
}

#goods .goodsWrap ul {
	display: -webkit-flex;
	/* Safari */
	display: flex;
	-webkit-justify-content: space-between;
	/* Safari */
	justify-content: space-between;
	-webkit-align-items: flex-start;
	/* Safari */
	align-items: flex-start;
	position: relative;
}

#goods .goodsWrap ul.goodscol2 {
	width: 100%;
	margin: 50px auto 0 auto;
}

#goods .goodsWrap ul.goodscol2 li {
	width: 47%;
	margin: 0 0 80px 0;
}

#goods .goodsWrap ul li .img {
	width: 100%;
}

#goods .goodsWrap ul li .img a {
	width: 100%;
	height: 100%;
	display: block;
}

#goods .goodsWrap ul li .txtBox {
	width: 100%;
	padding: 0 0 0 0;
}

#goods .goodsWrap ul li .txtBox .tit {
	color: #f7003a;
	line-height: 1.6;
	font-weight: bold;
	margin: 20px auto 0 auto;
	font-size: 30px;
}

#goods .goodsWrap ul.goodscol2 li .txtBox .tit {
	color: #f7003a;
	line-height: 1.6;
	font-weight: bold;
	margin: 20px auto 0 auto;
	font-size: 25px;
}

#goods .goodsWrap ul li .txtBox .txt {
	font-size: 22px;
	color: #ffffff;
	line-height: 1.6;
	margin: 10px 0 0 0;
}

#goods .goodsWrap ul li .txtBox .txt span {
	font-size: 20px;
}

#goods .note {
	font-size: 16px;
	color: #999999;
	width: 100%;
	text-align: center;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	#goods {
		margin: 0 auto 0 auto;
	}

	#goods .contentBox {
		margin-top: 0;
	}

	#goods .goodsWrap ul {
		width: 100%;
		margin: 0 auto 0 auto;
		display: block;
	}

	#goods .goodsWrap ul.goodscol2 {
		width: 100%;
		margin: 0 auto 0 auto;
	}

	#goods .goodsWrap ul.goodscol2 li {
		width: 100%;
		margin: 0 0 10px 0;
	}

	#goods .goodsWrap ul li {
		padding: 5% 0 10% 0;
		display: block;
	}

	#goods .goodsWrap ul li .img {
		width: 100%;
		margin: 0 auto 0 auto;
	}

	#goods .goodsWrap ul li .txtBox {
		width: 100%;
		padding: 0 0 0 0;
	}

	#goods .goodsWrap ul li .txtBox .tit {
		width: 100%;
		font-size: 1.4rem;
	}

	#goods .goodsWrap ul.goodscol2 li .txtBox .tit {
		font-size: 1.4rem;
	}

	#goods .goodsWrap ul li .txtBox .txt {
		font-size: 1.0rem;

	}

}

/*====================*/



/*-----------------------------------------------------------
	#menu setting
-----------------------------------------------------------*/
#menu {
	width: 90%;
	max-width: 660px;
	margin: 80px auto 0 auto;
}

#menu .tit {
	position: relative;
	padding-top: 50px;
	padding-bottom: 90px;
}

#menu .tit:after {
	content: "";
	display: block;
	width: 30%;
	height: 100%;
	background: url(../img/item_06.png) no-repeat left top;
	background-size: auto 100%;

	position: absolute;
	top: 0;
	left: 0;

}

ul.menuhex {
	position: relative;

	width: 100%;
	max-width: 600px;
	margin-top: 10%;
	margin-bottom: 50px;
	margin-left: auto;
	margin-right: auto;
}

ul.menuhex li {
	width: 27%;
	margin-left: 15%;
	position: relative;
}

ul.menuhex li:hover {
	opacity: 0.7;
}

/*
ul.menuhex li.menu_goods:hover {
	opacity: 1.0;
}
*/
ul.menuhex li:nth-child(even) {
	margin-left: 61%;
	margin-top: -20%;
}

ul.menuhex li:nth-child(odd) {
	margin-top: -20%;
}

ul.menuhex li a {
	margin: 0 auto;
	width: 100%;
	padding-top: 174%;
	display: block;
	position: relative;
	background: #ddd;
	transition: all 0.2s linear;
	font-size: 1.6rem;

	color: #ffffff;
	font-weight: bold;

	box-shadow: 0px 0 5px 5px rgba(0, 0, 0, 0.15) inset;

}

/*
ul.menuhex li.menu_goods p {
	margin: 0 auto;
	width: 100%;
	padding-top: 174%;
	display: block;
	position: relative;
	background: #494949;
	transition: all 0.2s linear;
	font-size: 1.6rem;
	
	color: #666666;
	font-weight: bold;
	
	box-shadow: 0px 0 5px 5px rgba(0, 0, 0, 0.15) inset;

}
*/

ul.menuhex li a span {
	width: 140%;
	margin-left: -20%;
	height: 100%;
	line-height: 1.2;
	color: #ffffff;
	font-weight: bold;
	text-align: center;
	display: block;
	position: relative;
	z-index: 1;
	position: absolute;
	top: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

ul.menuhex li p span {
	width: 140%;
	margin-left: -20%;
	height: 100%;
	line-height: 1.2;
	color: #666666;
	font-weight: bold;
	text-align: center;
	display: block;
	position: relative;
	z-index: 1;
	position: absolute;
	top: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

ul.menuhex li a:before,
ul.menuhex li a:after,
ul.menuhex li p:before,
ul.menuhex li p:after {
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	padding-top: 174%;
	position: absolute;
	background: #494949;
	transition: all 0.2s linear;
	z-index: 0;
	box-shadow: 0 10px 5px -5px rgba(0, 0, 0, 0.15) inset, 0 -10px 5px -5px rgba(0, 0, 0, 0.15) inset;
	/* 	box-shadow: 0 0 5px 5px rgba(102, 102, 102, 0.30) inset; */
}


ul.menuhex li a:before,
ul.menuhex li p:before {
	transform: rotate(60deg);
}

ul.menuhex li a:after,
ul.menuhex li p:after {
	transform: rotate(-60deg);
}



ul.menuhex li a:hover,
ul.menuhex li a:hover:before,
ul.menuhex li a:hover:after {
	background: #bbb;
}

ul.menuhex li.menu_event a,
ul.menuhex li.menu_event a:before,
ul.menuhex li.menu_event a:after {
	background: #f7003a;
}

ul.menuhex li.menu_event a:hover,
ul.menuhex li.menu_event a:hover:before,
ul.menuhex li.menu_event a:hover:after {
	background: #f7003a;
}

ul.menuhex li.menu_ticket a,
ul.menuhex li.menu_ticket a:before,
ul.menuhex li.menu_ticket a:after {
	background: #e6a025;
}

ul.menuhex li.menu_ticket a:hover,
ul.menuhex li.menu_ticket a:hover:before,
ul.menuhex li.menu_ticket a:hover:after {
	background: #e6a025;
}

ul.menuhex li.menu_how a,
ul.menuhex li.menu_how a:before,
ul.menuhex li.menu_how a:after {
	background: #0060d6;
}

ul.menuhex li.menu_how a:hover,
ul.menuhex li.menu_how a:hover:before,
ul.menuhex li.menu_how a:hover:after {
	background: #0060d6;
}

ul.menuhex li.menu_goods a,
ul.menuhex li.menu_goods a:before,
ul.menuhex li.menu_goods a:after {
	background: #0060d6;
}

ul.menuhex li.menu_goods a:hover,
ul.menuhex li.menu_goods a:hover:before,
ul.menuhex li.menu_goods a:hover:after {
	background: #0060d6;
}


ul.menuhex li.menu_cs a,
ul.menuhex li.menu_cs a:before,
ul.menuhex li.menu_cs a:after {
	background: #494949;
}

ul.menuhex li.menu_cs a:hover,
ul.menuhex li.menu_cs a:hover:before,
ul.menuhex li.menu_cs a:hover:after {
	background: #494949;
}

.menu_cs:after {
	content: "coming soon.";
	position: absolute;
	bottom: 35%;
	left: 0;
	width: 100%;
	font-size: 0.8rem;
	display: block;
	text-align: center;
	color: #666666;
}

ul.menubox {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

ul.menubox li {
	background: #eeeeee;
	width: 80%;
	text-align: center;
	position: relative;
	border-radius: 5px;
	font-size: 18px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

ul.menubox li:hover {
	opacity: 0.7;
}

ul.menubox li a {
	color: #000000;
	display: block;
	padding: 20px 10% 20px 4%;
	text-decoration: none;
	font-weight: 700;

}

ul.menubox li:after {
	content: "";
	width: 11px;
	height: 100%;
	background: url(../img/arrow_b.png) no-repeat right center;
	background-size: 100% auto;
	position: absolute;
	right: 4%;
	top: 0;
}

.menutop {
	width: 100%;
	margin: 30px auto 0 auto;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;

	position: relative;
	text-align: center;
}

.menutop a {
	color: #ffffff;
	display: block;
	padding: 20px 10% 20px 10%;
	text-decoration: none;
	font-weight: 700;
	margin: 0 auto 0 auto;
	position: relative;

}

.menutop a:after {
	content: "";
	width: 12px;
	height: 100%;
	background: url(../img/arrow_r.png) no-repeat left center;
	background-size: 100% auto;
	position: absolute;
	left: 5%;
	top: 0;
}

#menucloseft {
	width: 94%;
	background: #f7003a;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	color: #ffffff;
	margin: 0 0 0 0;
	padding: 0 3% 0 3%;
	text-align: center;
	line-height: 1.6;
}

#menucloseft span {
	display: block;
	padding: 15px 0 15px 0;
	color: #ffffff;
	font-size: 0.8rem;
	font-weight: 700;
	text-decoration: none;
}

#menucloseft:hover {
	opacity: 0.7;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	#menu .tit {
		position: relative;
		padding-top: 10vw;
		padding-bottom: 10vw;

	}

	ul.menuhex {
		width: 90%;
		margin-top: 20%;
	}

	ul.menuhex {
		width: 90%;
		margin-top: 20%;
	}

	#menu .tit:after {
		content: "";
		display: block;
		width: 30%;
		height: 100%;
		background: url(../img/item_06.png) no-repeat left top;
		background-size: auto 100%;

		position: absolute;
		top: 0;
		left: 0;

	}

	ul.menuhex li a {
		margin: 0 auto;
		width: 100%;
		padding-top: 174%;
		display: block;
		position: relative;
		background: #ddd;
		transition: all 0.2s linear;
		font-size: 1.0rem;

	}

	ul.menubox li {
		width:100%;
	}

	ul.menubox li a {
		font-size: 3.4vw;
		padding: 20px 9% 20px 4%;
		text-align: center;
	}

	ul.menubox li p {
		font-size: 0.6rem;
	}


	ul.menubox li:after {
		width: 3%;
		right: 3%;
	}
	

}

/*====================*/


#comment h3.mobile-heading{
		color: rgb(0, 96, 214);
		font-weight: 700;
		border-color: rgb(0, 96, 214);
}

/*-----------------------------------------------------------
	.shareWrap setting
-----------------------------------------------------------*/
.shareWrap {
	width: 100%;
	margin: 50px auto 0 auto;
	padding: 0 0 0 0;
	position: relative;
	text-align: center;
}

.shareWrap .contentBox {
	background: url(../img/line_02.png) repeat-x center top;
	max-width: 750px;
	padding: 0 0 50px 0;
	margin: 0 auto 0 auto;
}

.shareWrap .tit {
	width: 100%;
	max-width: 750px;
	margin: 0 auto 0 auto;
	font-size: 16px;
	font-weight: 600;
	color: #ffffff;

}

.shareWrap ul {
	width: 100%;
	margin: 20px auto 0 auto;

	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.shareWrap ul li {
	width: 30%;
	max-width: 200px;
	margin: 0 0.5% 0 0.5%;
	line-height: 0;
}

.shareWrap ul li img {
	width: 100%;
	height: auto;
}

.shareWrap ul li a {
	display: block;
}

#g_menu .shareWrap ul {
	width: 100%;
}

#g_menu .shareWrap ul {
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	.shareWrap {
		margin-top: 50px;
		padding: 0 0 0 0;
	}

	.top .shareWrap {
		margin-top: 50px;
	}

	.shareWrap .contentBox {
		width: 100%;
		padding: 0 0 10% 0;
	}

	.shareWrap .tit {
		width: 100%;
		float: none;
		margin: 0 auto 0 auto;
	}

	.shareWrap ul {
		width: 90%;
	}

	.shareWrap ul li {
		width: 31%;
		margin: 0 0 0 0;
	}

}

/*====================*/



/*-----------------------------------------------------------
	#footer setting
-----------------------------------------------------------*/
#footer {
	width: 100%;
	text-align: center;
	margin: 80px auto 0 auto;
	padding: 0 0 30px 0;
	position: relative;
	line-height: 1.6;
	color: #e5e5e4;
}

.footerWrap {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto 0 auto;
}

#footer .tit {
	width: 90%;
	max-width: 750px;
	/*background: #434343;*/
	font-size: 22px;
	margin: 0 auto 0 auto;
	padding: 3px 0 3px 0;
	color: #ffffff;
}

#footer .txt {
	width: 90%;
	max-width: 750px;
	font-size: 22px;
	margin: 20px auto 0 auto;
	padding: 0 0 0 0;
	color: #ffffff;
}

#footer .copyright {
	font-size: 22px;
	margin: 40px 0 8px 0;
	color: #ffffff;
}

#footer .copyright span {
	font-size: 20px;
	margin: 0 0 8px 0;
	color: #999999;
}

#footer .logoBox {
	width: 60%;
	margin: 40px auto 30px auto;

	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

#footer .logoBox .logo01 {
	width: 40%;
	max-width: 180px;
	margin: 0 30px 0 30px;
	font-size: 20px;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	#footer {
		width: 90%;
		margin: 30px auto 0 auto;
	}

	#footer .tit {
		width: 90%;
		max-width: 750px;
		background: #434343;
		font-size: 0.7rem;
		margin: 0 auto 0 auto;
		padding: 3px 0 3px 0;
		color: #ffffff;
	}

	#footer .logoBox .logo01 {
		width: 40%;
		max-width: 180px;
		margin: 0 30px 0 30px;
		font-size: 0.7rem;
	}

	#footer .txt {
		width: 90%;
		max-width: 750px;
		font-size: 0.7rem;
		margin: 20px auto 0 auto;
		padding: 0 0 0 0;
		color: #ffffff;
	}

	#footer .copyright {
		font-size: 0.8rem;
	}

	#footer .copyright {
		font-size: 0.7rem;
		margin: 40px 0 8px 0;
		color: #ffffff;
	}

	#footer .copyright span {
		font-size: 0.7rem;
		margin: 0 0 8px 0;
		color: #999999;
	}

	#footer .logoBox {
		width: 80%;
	}

	#footer .logoBox .logo01 {
		width: 40%;
		max-width: 158px;
		margin: 0 2% 0 2%;
	}

}

/*====================*/


#footer .bnrBox {
	width: 100%;
	margin: 0 auto 30px auto;
	display: flex;
	justify-content: center;
	align-items: stretch;
	text-align: left;
}

#footer .bnrBox .bnr {
	width: 490px;
	margin: 0 0 0 0;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	#footer .bnrBox {
		width: 80%;
		margin: 0 auto 5vw auto;
		padding: 0 0 0 0;
	}

	#footer .bnrBox .bnr {
		width: 65%;
		margin: 0 3% 0 3%;
	}

}

/*====================*/



/*-----------------------------------------------------------
	#new footer setting
-----------------------------------------------------------*/
.l-footer {

	position: relative;
	z-index: 2;
}

.l-footer::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;

	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
	pointer-events: none;
	opacity: 0.3;
	mix-blend-mode: overlay;
}

.l-footer__container {
	max-width: 904px;
	margin: 0 auto;
	padding: 48px 24px 40px;
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: repeat(1, 1fr);
}

.l-footer__bnr {
	margin-left: auto;
	display: flex;
	flex-direction: column;
	gap: 32px 0;
}

.l-footer__bnr a {
	transition: opacity 0.3s ease-in-out;
}

.l-footer__bnr a:hover {
	opacity: 0.7;
}

.l-footer__share {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0 16px;
	margin-top: 40px;
}

.l-footer__share a {
	transition: opacity 0.3s ease-in-out;
}

.l-footer__share a:hover {
	opacity: 0.7;
}

.l-footer__copy {
	color: var(--color-white);
	margin-top: 35px;
}

.l-footer__copy span,
.l-footer__copy small {
	display: block;
	font-size: 0.8em;
	font-weight: 700;
	color: white;
}

.l-footer__copy small {
	margin-top: 8px;
}

@media print,
screen and (min-width: 769px) {

	.l-footer__logo {
		text-align: center;
	}

	.l-footer__bnr {
		margin: 40px auto 0;
	}

	.l-footer__copy {
		margin-top: 32px;
	}

	.l-footer__copy span,
	.l-footer__copy small {
		text-align: center;
	}
}

@media screen and (max-width: 768px) {
	.l-footer__logo {
		text-align: center;
	}

	.l-footer__bnr {
		margin: 40px auto 0;
	}

	.l-footer__copy {
		margin-top: 32px;
	}

	.l-footer__copy span,
	.l-footer__copy small {
		text-align: center;
	}
}

@media print,
screen and (min-width: 769px) {
	.t-hiddenSp {
		display: block;
	}

	.t-hiddenPc {
		display: none;
	}

	.t-taL-pc {
		text-align: left !important;
	}

	.t-taR-pc {
		text-align: right !important;
	}

	.t-taC-pc {
		text-align: center !important;
	}

	.l-header {
		padding: 40px 20px;
	}

	.l-header.is-scroll {
		padding: 20px 20px;
	}

	.l-header__shareToggle {
		display: none;
	}

	.l-header__toggle {
		display: none;
	}

	.l-header__navList {
		align-items: center;
		gap: 0 16px;
	}

	.l-header__navItem>a .-en,
	.l-header__navItem>button .-en {
		font-size: 1.8rem;
	}

	.l-header__btn {
		display: none;
	}

	.l-header__share {
		display: none;
	}

	.l-footer__container {
		padding: 80px 24px 100px;
		grid-template-columns: repeat(2, 1fr);
	}

	.l-footer__bnr {
		grid-column: 2/3;
		grid-row: 1/4;
	}

	.c-accordion__label {
		font-size: 1.8rem;
		display: flex;
		gap: 0 16px;
		align-items: center;
	}

	.c-tab {
		gap: 0 24px;
	}

	.c-tab__label {
		width: calc(50% - 12px);
		padding: 20px 10px;
		font-size: 1.8rem;
	}

	.c-tab__table th {
		padding: 21px 0;
		font-size: 1.6rem;
		background-color: rgba(217, 217, 217, 0.2);
	}

	.c-tab__table th span {
		font-size: 1.4rem;
	}

	.c-tab__table td {
		padding: 20px 5px;
		font-size: 1.6rem;
	}

	.c-tab__table tbody th {
		padding-left: 40px;
		width: 33.4%;
	}

	.c-tab__table tbody td {
		width: 33.3%;
	}

	.c-titleSection {
		font-size: 6.4rem;
	}

	.c-titleBorder {
		font-size: 2.4rem;
	}

	.p-topLoading__text svg {
		filter: drop-shadow(1.5px 1.5px 1px rgba(255, 30, 233, 0.6)) drop-shadow(0px 3px 8px rgba(0, 202, 230, 0.6980392157)) drop-shadow(0px -3px 8px rgba(0, 202, 230, 0.6980392157));
	}

	.p-topCanvas__btn {
		right: unset;
		left: 60%;
		bottom: 130px;
	}

	.p-topModal {
		padding: 80px 0;
	}

	.p-topModal__title {
		margin-bottom: 40px;
	}

	.p-topModal__title span {
		font-size: 2.4rem;
	}

	.p-topModal__desc {
		margin-top: 32px;
		font-size: 1.6rem;
	}

	.p-topMainContainer {
		padding: 22px 0 96px;
		margin-top: -100px;
	}

	.p-topTicketInfo {
		margin-top: 80px;
	}

	.p-topU22__content {
		padding: 40px;
		gap: 0 24px;
	}

	.p-topU22__logo {
		width: 26%;
	}

	.p-topU22__text {
		width: 70.4%;
	}

	.p-topU22__desc {
		font-size: 1.6rem;
	}

	.p-topPlay__list {
		margin-top: 50px;
	}

	.p-topPlay__item img {
		height: 120px;
	}

	.p-topPlay__item figcaption {
		margin-top: 16px;
		font-size: 1.8rem;
	}

	.p-topSchedule {
		margin-top: 120px;
		padding: 80px 0;
	}

	.p-TicketTokyo:nth-child(2) {
		margin-top: 56px;
	}

	.p-TicketTokyo__pre {
		margin-top: 64px;
	}

	.p-TicketTokyo__period {
		margin-top: 64px;
	}

	.p-TicketTokyo__period h5 {
		font-size: 1.6rem;
	}

	.p-TicketTokyo__period p {
		margin-top: 16px;
		font-size: 1.6rem;
	}

	.p-TicketTokyo__period1 {
		flex: 1 1 20%;
	}

	.p-TicketTokyo__period1 h4 {
		font-size: 1.8rem;
	}

	.p-TicketTokyo__period2 {
		flex: 1 1 50%;
	}

	.p-TicketTokyo__period3 {
		flex: 1 1 30%;
	}

	.p-TicketTokyo__availavility {
		margin-top: 40px;
		padding: 40px 45px;
	}

	.p-TicketTokyo__availavility .ticketWrap .prevBtn::before,
	.p-TicketTokyo__availavility .ticketWrap .nextBtn::before {
		width: 49px;
		height: 22px;
	}

	.p-TicketTokyo__availavility .ticketWrap .prevBtn {
		left: -20px;
	}

	.p-TicketTokyo__availavility .ticketWrap .nextBtn {
		right: 0;
	}

	.p-TicketTokyo__availavility .ticketWrap .nextBtn::before {
		transform: rotate(180deg) translate(0, 9px);
	}

	.p-TicketTokyo__availavility .ticketWrap .detailsWrap {
		padding: 30px 30px 0;
	}

	.p-TicketTokyo__availavility .ticketWrap .detailsBox {
		flex-direction: row;
		gap: 0 40px;
	}

	.p-TicketTokyo__availavility .ticketWrap .detailsBox .details ul {
		gap: 16px;
	}

	.p-TicketTokyo__availavility .ticketWrap .detailsBox .details ul li .scheduleBox .time {
		font-size: 1.8rem;
	}

	.p-TicketTokyo__googlemap iframe {
		height: 465px;
	}

	.p-TicketTokyo__info {
		gap: 0 32px;
		margin-top: 25px;
	}

	.p-TicketTokyo__infoTitle h4 {
		font-size: 1.8rem;
	}

	.p-TicketTokyo__infoContent p {
		font-size: 1.6rem;
	}

	.p-TicketOsaka {
		margin-top: 56px;
	}

	.p-topGoods__content {
		margin-top: 50px;
		gap: 50px 32px;
	}

	.p-topGoods__item {
		width: calc(50% - 20px);
	}

	.p-topGoods__txt {
		margin-top: 34px;
		font-size: 1.8rem;
	}

	.p-topGoods__txt h3 {
		font-size: 1.8rem;
	}

	.p-topGoods__txt p {
		font-size: 1.6rem;
	}

	.p-topGoods__txt p.-desc {
		margin: 26px 0;
	}

	.p-topGoods__txt .-size {
		gap: 0 14px;
	}

	.p-topInfo__cautions {
		padding: 40px 0 32px;
	}

	.p-topInfo__cautions h3 {
		font-size: 1.8rem;
		margin-bottom: 24px;
	}

	.p-topInfo__cautions p,
	.p-topInfo__cautions li {
		margin-top: 24px;
	}

	.p-questions {
		margin-top: 56px;
	}

	.p-questions__content h3 {
		gap: 0 16px;
		font-size: 1.8rem;
	}

	.p-questions__content p {
		font-size: 1.6rem;
		gap: 0 16px;
		margin-top: 20px;
	}

	.p-questions__content p span {
		font-size: 1.8rem;
	}

	.p-eventJoin {
		margin-top: 56px;
	}
}

/*-----------------------------------------------------------
	#share setting
-----------------------------------------------------------*/
#share {
	width: 40px;
	height: 100%;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
	position: fixed;
	right: 2%;
	top: 0;
	text-align: right;
	z-index: -1;
}

#share .contentBox {
	width: 100%;
	height: 100%;
	max-width: 1200px;
	margin: 0 auto 0 auto;
	padding: 0 0 0 0;
	position: relative;
	z-index: 1;
}

#share ul {
	width: 40px;
	margin: -75px auto 0 auto;
	z-index: 10;
	position: absolute;
	right: 1%;
	top: 50%;

}

#share li {
	margin: 0 0 10px 0;
}

#share li div {
	padding-bottom: 100%;
	background: #000000;

	border-radius: 50%;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	overflow: hidden;
	position: relative;
	z-index: 10;

	box-shadow: 2px 5px 8px rgba(102, 102, 102, 0.30);
}

#share li div a {
	display: block;
	width: 100%;
	height: 100%;
}

#share li div {
	line-height: 0;
	font-size: 0;
}

#share li .btn_tw {
	background: #1ea2f2 url(../img/i_tw.svg) no-repeat center center;
	background-size: auto 40%;
}

#share li .btn_tw:hover {
	opacity: 0.7;
}

#share li .btn_fb {
	background: #3b5999 url(../img/i_fb.svg) no-repeat center center;
	background-size: auto 50%;
}

#share li .btn_fb:hover {
	opacity: 0.7;
}

#share li .btn_li {
	background: #00b800 url(../img/i_li.svg) no-repeat center center;
	background-size: auto 50%;
}

#share li .btn_li:hover {
	opacity: 0.7;
}


/*===================sp=*/
@media screen and (min-width: 1200px) {

	#share ul {
		width: 40px;
		margin: -75px auto 0 auto;
		z-index: 10;
		position: absolute;
		right: 2%;
		top: 50%;
	}

}

/*===================sp=*/
@media screen and (max-width: 860px) {

	#share {
		width: 35px;
		height: 100%;
		margin: 0 auto 0 auto;
		padding: 0 0 0 0;
		position: fixed;
		right: 1%;
		top: 0;
		text-align: right;
		z-index: 10;
	}

	#share ul {
		width: 35px;
		margin: -30px auto 0 auto;
		z-index: 10;
		position: absolute;
		right: 0;
		top: 50%;
	}

}

/*====================*/


/*----------------------------------#popup setting----------*/
#popup {
	display: none;
}

#popupBtn {
	width: 10%;
	max-width: 65px;
	position: fixed;
	right: 2%;
	bottom: 50%;
	z-index: 100;
	cursor: pointer;
	transform: translate(0, 50%);
}

#popupBtn li {
	padding-top: 10px;
}

#popupBtn img {
	width: 100%;
	border-style: none;
}


/*===================sp=*/
@media screen and (max-width: 860px) {

	#popupBtn {
		/* To disable the side menu on mobile */
		
		width: 10%;
		max-width: 65px;
		position: fixed;
		right: 2%;
		bottom: 50%;
		z-index: 100;
		cursor: pointer;
		transform: translate(0, 50%);
	}
	

	#popupBtn img {
		width: 100%;
		border-style: none;
		margin: 0px 0px -10px 0px;
	}

}

/*====================*/



.closebtn {
	width: 6%;
	padding: 0;
	margin: 0 0 0 0;
	display: block;
	z-index: 1000;
	line-height: 0;
	position: absolute;
	right: 20px;
	top: 20px;
}

.closebtn:hover {
	opacity: 0.7;
}

.closebtn p,
.closebtn p span {
	display: inline-block;
	transition: all .4s;
	box-sizing: border-box;
}

.closebtn p {
	position: relative;
	width: 100%;
	height: 100%;
	padding-top: 100%;
}

.closebtn p span {
	position: absolute;
	left: 7%;
	width: 86%;
	height: 6px;
	background-color: #a9153b;
}

.closebtn p span:nth-of-type(1) {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 45%;
}

.closebtn p span:nth-of-type(2) {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	bottom: 45%;
}

/*===================sp=*/
@media screen and (max-width: 860px) {

	.closebtn {
		width: 10%;
		padding: 0;
		margin: 0 0 0 0;
		display: block;
		z-index: 1000;
		line-height: 0;
		position: absolute;
		right: 5px;
		top: 5px;
	}

	.closebtn p span {
		position: absolute;
		left: 2%;
		width: 96%;
		height: 3px;
		background-color: #a9153b;
	}

	.closebtn p span:nth-of-type(1) {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		top: 44%;
	}

	.closebtn p span:nth-of-type(2) {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		bottom: 44%;
	}

}

/*====================*/


#infopop .bg {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1042;
	overflow: hidden;
	position: fixed;
	background: #0b0b0b;
	opacity: 0.8;
}

#infopop {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1500;
}

#infopop .infoWrap {
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1043;
	position: fixed;
	outline: none !important;
	-webkit-backface-visibility: hidden;
	overflow-y: auto;
	overflow-x: hidden;
}



#infopop .infoBox {
	text-align: center;
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	padding: 0 8px;
	box-sizing: border-box;
	padding-top: 40px;
	padding-bottom: 40px;
	padding-left: 6px;
	padding-right: 6px;
}

#infopop .infoBox:before {
	content: '';
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

#infopop .infoBox .info {
	position: relative;
	display: inline-block;
	vertical-align: middle;
	margin: 0 auto 0 auto;
	text-align: left;
	z-index: 1045;
	cursor: auto;
	line-height: 0;
	width: 90%;
	max-width: 740px;
	opacity: 0;
	-webkit-transition: all 0.15s ease-out;
	-moz-transition: all 0.15s ease-out;
	transition: all 0.15s ease-out;
	opacity: 1;
}

#infopop .infoBox .info .img {
	width: 100%;
	overflow: hidden;
}

#infopop .infoBox .info .img a {
	display: block;
}

#infopop .btn {
	position: absolute;
	top: -45px;
	right: 0;
	width: 30px;
}