@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Montserrat');
/* CSS Document */
.topFixed{
	width: 90vw;
	max-width: 1206px;
	z-index: 2;
	right: 0;
	top:0;
	position: fixed;
}
.topArea{
	padding: 6em 0 1em;
	text-align: center;
	position: relative;
	z-index: 5;
	display: block;
	margin: 0 auto;
	
	
}
.topArea h1{
	width: 70%;
	max-width: 600px;
	margin: 0 auto;
	position: relative;
	z-index: 5;
	transition: all 0.5s 0s ease-out, opacity 0.5s 0s ease-out;
	opacity: 0;
	transform: scale(1.1);

}
.main.action .topArea h1{
	opacity: 1;
	transform: scale(1);
}
.topArea:before{
	content: "";
	position: absolute;
	top:0;
	left: 0;
	width: 100%;
	bottom: 0;
	background-image: url("../img/bat_l.png");
	background-repeat: no-repeat;
	background-size: 100% auto;
	z-index: 1;

}
.topArea:after{
	content: "";
	position: absolute;
	left: 0;
	width: 100%;
	background-image: url("../img/bat_r.png");
	background-repeat: no-repeat;
	bottom: 0;
	top:48%;
	background-position: center top;
	background-size: 100% auto;
	z-index: 1;

}
.catch{
	 font-family: "RocknRoll One", sans-serif;
	text-align: center;
	padding: 4em 0 2em;
	position: relative;
	z-index: 5;
	transition: all 0.5s 0s ease-out, opacity 0.5s 0s ease-out;
	opacity: 0;
	transform: translateY(2em);

}
.main.action .catch{
	opacity: 1;
	transform: translateY(0)
}
.catch strong{
	padding: 0.5em;
	background-color: var(--pink);
	display: block;
	width: 100%;
	letter-spacing: 1px;
	font-size: 1.2em;
	line-height: 1.5em;
}
.catch p{
	padding: 1em 0;
	text-shadow: 0 0 5px #000,0 0 5px #000,0 0 2px #000,0 0 3px #000;
	line-height: 1.8em;
	
}

.infoBox{
	border: var(--pink) 3px solid;
	border-radius: 1.5em;
	position: relative;
	background-color: #000;
	overflow: hidden;
	z-index: 5;
	border-bottom-width: 1em;
}
.infoBox:before{
	content: "";
	width: 80%;
	top:0;
	left: 0;
	height: 12em;
	background-image: url("../img/info_h2.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	position: absolute;
}
.infoBox:after{
	content: "";
	width: 40%;
	top:auto;
	bottom: 0;
	right:  0;
	height: 12em;
	background-image: url("../img/info_bg.png");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	position: absolute;
}
#event,#info,#epos{
	transition: all 0.5s 0s ease-out, opacity 0.5s 0s ease-out;
	opacity: 0;
	transform: translateY(2em);

}
#event.action,#info.action,#epos.action{
	opacity: 1;
	transform: translateY(0);
}
.infoBox h2{
	font-size: 1.8em;
	 font-family: "RocknRoll One", sans-serif;
	padding: 0 0 0.8em;
}
.infoBox h3{
	width: 100%;
	max-width: 900px;
	margin: 0 auto;

	font-size: 1.5em;
	 font-family: "RocknRoll One", sans-serif;
	/*border-top: #fff 3px dotted;*/
	border-bottom: #fff 3px dotted;
	padding: 0.5em 0 0.3em;
	
}
.infoBox .inner{
	position: relative;
	z-index: 5;
	padding: 1.5em;
	padding-bottom: 3em;
}
table.list{
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}
table.list th{
	width: 7em;
	padding: 1em;
	background-color: var(--gray);
	color: #fff;
	border-bottom: var(--gray) 1px dashed;
	font-weight: normal;
	box-sizing: border-box;

}
table.list td{
	width: 100%;
	display: block;
	padding: 1em;
	border-bottom: var(--gray) 1px dashed;
	background: rgba(0,0,0,0.8);
	box-sizing: border-box;
}
.inner .txt{
	text-shadow: 0 0 5px #000,0 0 5px #000,0 0 2px #000,0 0 3px #000;
	text-align: center;
	padding: 1em ;
}
.borderBox{
	border: var(--pink) 2px solid;
	border-radius: 10px;
	background: rgba(0,0,0,0.8);
}
.borderBox .txt{
	padding: 1em 0;
}
.inner strong{
	display: block;
	color: #fff;
	background-color: var(--pink);
	text-shadow: none;
	padding: 0.5em;
	margin-bottom: 1em;
}
.inner hr{
	border: 0;
	border-bottom: var(--gray) 1px dashed;
}
/*---------------------------------------------------------
販売グッズ
------------------------------------------------------------*/
h1.second{
	position: relative;
	padding: 1.5em 0.5em 0.5em;
	display:block;
	max-width: 7em;
	margin: 0 auto 0.2em;
	font-size: min(max(8vw,16px),50px);
	text-align: center;
	 font-family: "RocknRoll One", sans-serif;

}
h1.second:before{
	content: "";
	top:0.8em;
	bottom: -0.2em;
	left: 0;
	right: 0;
	background-image: url("../img/second_h1_bg.png");
	background-position: left center;
	background-repeat: no-repeat;
	background-size: contain;
	display: block;
	position: absolute;
	z-index: 5;
}
h1.second:after{
	content: "";
	top:0;
	bottom: 0;
	width: 100%;
	left: 0;
	border-bottom: var(--pink) 5px dotted;
	position: absolute;
	display: block;
	z-index: 5;
}
h1.second span{
	position: relative;
	z-index: 6;
}
h2.second{
	background-color: var(--pink);
	padding: 1em;
	text-align: center;
	margin-top: 0;
	 font-family: "RocknRoll One", sans-serif;
	font-size: 1.5em;
	position: relative;
	z-index: 5;
}
.goodsBtArea{
	padding: 0.5em 0;
	display: flex;
}
.goodsBtArea a{
	width:calc(50% - 0.5em);
	margin: 0.25em;
	padding:1em 1em;
	background-color: #000;
	color: #fff;
	font-weight: bold;
	border: var(--pink) 2px solid;
	border-radius: 50px;
	display: grid;
	align-items: center;
	text-align: center;
	background-image: url("../goods/img/bt_bg.png");
	background-position: left top;
	background-size: auto 90%;
	background-repeat: no-repeat;
	line-height: 1.3em;
	position: relative;
}
.goodsBtArea a.new:after{
	content: "new";
	position: absolute;
	display: block;
	background-color: var(--lightPink);
	color: #fff;
	width: 3em;
	height: 3em;
	text-align: center;
	line-height: 3em;
	border-radius: 50%;
	top:-0.5em;
	left: -0.5em;
	transform: scale(0.8);
}
.goodsBtArea a:not(.selected):hover{
	background-color:#333;
}
.goodsBtArea a.selected{background-color: var(--pink);}
	/*グッズサムネ*/
.goodsWrap {
	text-align: left;
		display: grid;
	grid-template-columns:repeat(4, 1fr);
	column-gap: 0.5em;
	row-gap: 1em;
	padding: 1em 0 0;
	position: relative;
	z-index: 5;
}
.itemBox{

	background-color:#000;
	border: var(--pink) 1px solid;
	padding: 0;
	font-size: 1em;
	position: relative;
	color: #fff;
	z-index: 5;
}

.itemBox .new{
	text-align: center;
	background-color:var(--lightPink);
	color: #fff;
	position: absolute;
	top:0;
	left: 0;
	width: 3em;
	height: 3em;
	line-height: 3em;
	border-radius: 50%;
}
.itemBox .new:before{
	content: none;
}

.itemBox a:hover{
	background-color:transparent;
}
.image{
	padding: 0.5em 0.5em 0;
	position: relative;
}
.itemBox a{
	position: relative;
	display: block;
	width: 100%;
	margin: 0 auto;
	overflow: hidden;
}
.itemBox a:before{
	content: "";
	width: 0;
	height: 100%;
	display: block;
	position: absolute;
	top:0;
	bottom:0;
	left:0;
	transition: all 0.2s 0s ease-out;
	background: var(--pink);
	opacity: 0.8;
}
.itemBox a:hover:before{
	width: 100%;
}
.itemBox a:after{
	content: "more";
	position: absolute;
	line-height: 1.5em;
	height: 1.5em;
	letter-spacing: 1px;
	width: 100%;
	border-bottom: #000 2px solid;
	text-align: center;
	top:46%;
	left:0%;
	color: #000;
	z-index: 2;
	display:block;
	opacity: 0;
	transition: all 0.2s 0s ease-out;
	font-weight: bold;
}
.itemBox a:hover:after{
	opacity: 1;
}
.goodsCategory{
	color: #fff;
	padding: 0.2em 0;
	margin-bottom: 0.3em;
}
.itemBox h4{
	padding: 0.5em;
	line-height: 1.5em;
	color:#fff;
}
.price{
	text-align: right;
	font-weight: bold;
	border-top: var(--gray) 1px solid;
	padding: 0.5em;
	padding-left: 2em;
	position: relative;

}
.memo{
	/*text-align: center;*/
	/*background-color: var(--pink);*/
	color:var(--pink);
	font-weight: bold;
	text-align: right;
	font-size:max(0.8em,13px);
}
.goodsNum{
position: absolute;
top:0.2em;
left:0em;
/*padding: 0.25em;*/
width: 2em;
	height: 2em;
background-repeat: no-repeat;
background-position: center;
background-size:contain;
text-align: center;
font-size: 15px;
	line-height: 2em;
font-weight: bold;
background-color: var(--pink);
border-radius: 50%;
color: #fff;
text-shadow: none;
	transform: scale(0.9);
}

/*kissU*/
.kissUTop{
	text-align: center;
	padding-bottom: 2em;
}
.kissUTop .catchTxt{
	padding: 0.5em 0 1em;
	font-size: 1.5em;
	line-height: 1.3em;
	color: var(--pink);
	 font-family: "RocknRoll One", sans-serif;

}
.kissUBox h3{
	background-color: var(--pink);
	color: #fff;
	padding: 0.5em;
	text-align: center;
}
.kissUBox{
	padding-bottom: 2em;
}
.kissUBox .txt{
	padding: 1em;
	text-align: center;
}
.kissUBox .txt strong{
	color: var(--pink);
	font-weight: bold;
}
.kissUBox hr{
	border: 0;
	border-bottom: #fff 1px dashed;
}
.kissUBox .img{
	text-align: center;
	padding-bottom: 1em;
}
/*---------------------------------------------------------
@media
------------------------------------------------------------*/
@media (max-width: 1024px) {
/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(3, 1fr);
}
h1.second{
	margin-top: 1em;
	}

}

@media (max-width: 912px) {
}

@media (max-width: 786px) {
.topArea:after{

	bottom: 0;
	top:40%;
	background-position: center top;
}
.catch strong{

	font-size: 1.2em;
	line-height: 1.3em;
}
/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(2, 1fr);
}


}
@media (max-width: 480px) {
.topArea:after{

	bottom: 0;
	top:35%;
	background-position: center top;
}
.infoBox .inner{

	padding: 1em;
}
/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(1, 1fr);
}
}

