@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap');
/* CSS Document */
/*共通*/
hr{
	border: 0;
	border-bottom: var(--brown) 1px dashed;
}
.fontChange {
  font-family: "Kosugi Maru", sans-serif;
  font-weight: 400;
  font-style: normal;
}
.scBox{
	opacity: 0;
	transition:transform 500ms 0s ease-out, opacity 500ms 0s ease;
	transform: translateY(2em);
	position: relative;
	border-bottom: #fff 2px solid;
	padding-bottom: 2em;

}
.scBox:before{
	content: "";
	width: 5em;
	height: 6em;
	bottom: -3.3em;
	right: 0;
	background-image: url("../img/kira_red.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: right center;
	position: absolute;
	display: block;
	z-index: 3;
}
.bgRed .scBox:before{
	background-image: url("../img/kira_white.png");
}
.bgWhite .scBox{
	border-bottom: var(--brown) 2px solid;
}
.scBox.action{
	opacity: 1;
	transform: translateY(0);
}
.infoBox{
	position: relative;
	
}
.txtCenter{
	display: grid;
	align-items: center;
	justify-content: center;
	padding: 0 2em;
}
.infoBox.bgWhite{
	margin: 2.5vw 0 0;
}
.infoBox.bgRed{
	margin:0 0 5vw ;
}
.infoBox.bgWhite .bgBox{
padding-bottom: 5vw;
}
.infoBox.bgWhite .bgBox{
	background-color: #fff;
	
}
.infoBox.bgWhite:before{
	content: "";
	width: 100%;
	height: 5vw;
	left: 0;
	top:0;
	display: block;
	position: relative;
	background-image: url("../img/wave_top.png");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	z-index: -1;
}
.infoBox.bgWhite:after{
	content: "";
	width: 100%;
	height: 5vw;
	left: 0;
	bottom:0;
	display: block;
	position: relative;
	background-image: url("../img/wave_bottom.png");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100% 100%;
	z-index: -1;
}
.infoBox.bgRed{
	color: #fff;
}
.infoBox h2 img{
	width: 45%;
}
.infoBox h2{
	border-bottom: var(--brown) 2px solid;
	margin-bottom: 2em;
}
.infoBox.bgRed h2{
	border-bottom: #fff 2px solid;
}
/*TOP*/
#topArea{
	background-color: #fff;
	border-bottom: #fff 3px solid;

}
.topImgBox{
		border-bottom: var(--red) 5px solid;

}
.topImgBox h1{
	display: grid;
	grid-template-columns:42% 1fr;
	
}
#topArea .logo{
	display: grid;
	align-items: center;
	padding: 3em;
}
#topArea .topImg{
	background-image: url("../img/top.jpg");
	background-repeat: no-repeat;
	background-size: contain;
}
.catch{
	text-align: center;
	color: #fff;

	position: relative;
		width: 100%;
	margin: 0 auto;
	padding: 2em 5em 0;
	max-width: 1650px;
}
.catch:before,.catch:after{
	content: "";
	position:absolute;
	display: block;
	width: 100%;
	height: 5em;
	background-image: url("../img/catch_img.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	top:0;
	left: 0;
}
.catch:after{
	transform: scale(-1,-1);
	right: 0;

}

/*.notesBox{padding: 1em;  border-radius: 10px; margin-bottom: 1em;}
.notesBox ul.notes{
	text-align: left;
	margin-top: 0.8em;
}*/

.notesBox{padding: 1em; background-color: var(--brown_bg); border-radius: 10px; margin-bottom: 1em;}
.notesBox ul.notes{
	text-align: left;
	margin-top: 0.8em;
}
.notesBox h3{
	background-color: var(--line);
	color: #fff;
	padding: 0.5em 0;
}
/*イベント概要*/
/*------------------------------------
--------------------------------------*/
#goods{

}
#goods h2{
}
.tokuten{
	background-color: var(--brown_bg);
	padding: 1em;
	border-top: var(--line) 5px solid;
	border-bottom: var(--line) 5px solid;
	border-radius: 10px;
	margin-bottom: 1em;
}
.tokuten .txtArea,.tokuten .img{
	width: 42%;
	display: inline-block;
	vertical-align: middle;
}
.tokuten .txtArea{
	width: 58%;
	padding-left: 1em;
}
.tokuten .txt{
	background-color: #fff;
	padding: 1em;
}
/*グッズ情報*/
	/*グッズサムネ*/
.goodsWrap {
	text-align: left;
		display: grid;
	grid-template-columns:repeat(4, 1fr);
	column-gap: 0.5em;
	row-gap: 1em;
	padding: 1em 0 0;
}
.itemBox{

	background-color: #fff;
	padding: 0;
	font-size: min(1em ,13px);
	position: relative;
	border: var(--brown) 1px solid;
	/*border-bottom:#dfb3ba 3px solid;*/
	/*color:#111;*/
	text-align: left;
}

.itemBox .new{
	text-align: center;
	background-color:var(--bgP);
	color: #fff;
}
.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;
	color:#732820;
}
.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(--line);
	opacity: 0.7;
}
.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: #fff 1px solid;
	text-align: center;
	top:50%;
	left:0%;
	color: #fff;
	z-index: 2;
	display:block;
	opacity: 0;
	transition: all 0.2s 0s ease-out;
}
.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;
	font-weight: bold;
}
.price{
	text-align: right;
	font-weight: bold;
	padding: 0.5em;
	background-color:  var(--brown);
	color: #fff;
	position: relative;

}
.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:#fff;
border-radius: 50%;
color: var(--brown);
text-shadow: none;
	transform: scale(0.9);
}

ul.list{
	margin-left: 1em;
}
ul.list li{
	text-indent: -1em;
	margin: 0.5em 0;
}

#caution{

	padding: 2em 1em;
	background-color: #fff;


}
#caution ul.notes{
	font-size:max(0.9em ,13px);
	line-height: 1.5em;
	padding-top: 0.5em ;

}
#caution ul.notes li{
	margin-bottom: 0.5em;
}

/*---------------------------------------------------------
@media
------------------------------------------------------------*/
@media (max-width: 1024px) {
#topArea{
	margin-top: 0;
}


		/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(3, 1fr);
}
}
@media (max-width: 912px) {
}

@media (max-width: 786px) {
	.catch{

	padding: 2em 3em 1em;
}
.catch:before,.catch:after{
	height: 4em;
}
.topImgBox h1{
	display: grid;
	grid-template-columns:1fr;
	
}
	#topArea{
		border-top: var(--red) 5px solid;
	}
#topArea .logo{
	display: grid;
	align-items: center;
	padding: 2em 5em 1em;
}

.infoBox h2 img{
	width: 55%;
}


	
	.infoBox .gridBox{
	grid-template-columns:repeat(1, 1fr);
}
.tokuten .txtArea,.tokuten .img{
	width: 100%;
	max-width: 500px;
	display: block;
	margin: 0 auto;
}
.tokuten .txtArea{
	width: 100%;
	max-width: none;
	padding-left: 0;
	margin-top: 1em;
}

	/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(2, 1fr);
}
.bannerArea a{
	width: calc(100% - 1em);

}


}
@media (max-width: 480px) {

.infoBox h2 img{
	width: 65%;
}

	/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(1, 1fr);
}
	
}

