@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;

}
.scBox.action{
	opacity: 1;
	transform: translateY(0);
}
.infoBox{
	position: relative;

	margin: 2em auto;

	
}
.infoBox:after{
	content: "";
	width: 28%;
	height: 20em;
	max-width: 263px;
	top:0;
	right: 0;
	background-image: url("../img/info_img.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	display: block;
	z-index: 5;
}

.infoBox:before{
	content: "";
	position: absolute;
	top:0;
	bottom: 0;
	left: 0;
	width: 100%;
	display: block;
	background-color: var(--orange);
	transform: rotate(1deg);
	z-index: -1;
}
.infoBox .bgBox{
	display: grid;
	grid-template-columns: 40% 1fr;
	min-height: 30em;
	background-color: #fff;
	background-image: url("../img/bg_sq.png");
	background-size: 2em auto;
	z-index: 2;
}
.txtCenter{
	display: grid;
	align-items: center;
	justify-content: center;
	padding: 0 2em;
}
.infoBox h2 img{
	max-width: 429px;
	width: 90%;
}
.infoBox h2{
	display: grid;
	align-items: center;
	justify-content: center;
	padding:0 0 2em 2em;
	text-align: center;
	
}
.infoBox ul.notes{
	font-size: max(0.8em,12px);
}
.bgGreen{
	background-color: var(--green);
	position: relative;
	z-index: 2;
	padding-bottom: 2em;
	background-image: url("../img/bg_repeat_y.png");
	background-position: center top;
	background-repeat: repeat-y;
	background-size: 100% auto;
}
.bgGreen:before{
	content: "";
	width: 12%;
	max-width: 273px;
	display: block;
	position: absolute;
	left: 0;
	top:-2em;
	height: 10em;
	background-image: url("../img/star.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
}
.bgGreen:after{
	content: "";
	width: 12%;
	max-width: 273px;
	display: block;
	position: absolute;
	right: 0;
	bottom:0;
	height: 10em;
	background-image: url("../img/star.png");
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: contain;
}

/*TOP*/
#topArea{
	position: relative;
	z-index: 2;
}
#topArea:before{
	content: "";
	display: block;
	width: 100%;
	left: 0;
	bottom: -2px;
	height: 5em;
	background-color: var(--green);
	position: absolute;
}
#topArea:after{
	content: "";
	width: 28%;
	height: 20em;
	max-width: 386px;
	top:0;
	left: 0;
	background-image: url("../img/top_img.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	display: block;
	z-index: 5;
}
.topImgBox{
	max-width: 1300px;
	margin: 0 auto;
	z-index: 3;
	position: relative;
}
.topImgBox h1{
}
#topArea .logo{
	display: block;
	position: absolute;
	width: 28%;
	bottom: 0;
	z-index: 3;
}
#topArea .topImg{
	background-image: url("../img/top.png");
	background-repeat: no-repeat;
	background-size: contain;
	width: 78%;
	margin-left: auto;
}
.catch{
	text-align: center;
	color: #fff;

	position: relative;
		width: 100%;
	margin: 0 auto;
	padding: 2em 5em 2em;
	max-width: 1650px;
	z-index: 3;
}

.notesBox{padding: 1em; background-color: var(--yellow); border-radius: 10px; margin-bottom: 1em;}
.notesBox ul.notes{
	text-align: left;
	/*margin-top: 0.8em;*/
	padding: 0.8em 0.5em;
}
.notesBox h3{
	background-color: var(--green);
	color: #fff;
	padding: 0.5em 0;
}
/*イベント概要*/
/*------------------------------------
--------------------------------------*/
#goods{
	padding-top: 2em;
	position: relative;
}
#goods:before{
	content: "";
	width: 22%;
	height: 20em;
	max-width: 386px;
	top:0;
	left: 0;
	background-image: url("../img/top_img.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	display: block;
	z-index: 5;
}
#goods:after{
	content: "";
	width: 22%;
	height: 20em;
	max-width: 386px;
	top:0;
	right: 0;
	background-image: url("../img/top_img.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	transform: scale(-1,1);
	position: absolute;
	display: block;
	z-index: 5;
}
#goods h2{
	width: 45%;
	margin: 0 auto;
	max-width: 429px;
}
.tokuten{
	background-color: var(--yellow);
	padding: 1em;
	margin-bottom: 1em;
	box-shadow: 3px 3px 0 var(--green);
}
.tokuten .txtArea,.tokuten .img{
	width: 42%;
	display: inline-block;
	vertical-align: middle;
}
.tokuten .txtArea{
	width: 58%;
	padding-left: 1em;
}
.tokuten .txt{
	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(--yellow);
	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:var(--brown) 1px solid;
	text-align: center;
	top:50%;
	left:0%;
	color: var(--brown);
	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.8em ,12px);
	line-height: 1.5em;
	padding-top: 0.5em ;

}
#caution ul.notes li{
	margin-bottom: 0.5em;
}

/*---------------------------------------------------------
@media
------------------------------------------------------------*/
@media (max-width: 1024px) {
#topArea{
	margin-top: 1.5em;
	/*padding: 1em 0;*/
	padding: 1em 0;

}
#topArea:after{
	content: "";
	width: 32%;
	height: 20em;
	max-width: 386px;
	top:-2em;
	left: 0;
	background-image: url("../img/top_img.png");
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	display: block;
	z-index: 5;
}
#topArea:before{

	height: 2em;

}
.topImgBox{
	padding-bottom: 2em;
}
#topArea .topImg{
	width: 90%;
	/*width: 85%;*/
	padding-right: 0.5em;
}
#topArea .logo{

	width: 35%;
	/*left: -1em;*/
}


		/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(3, 1fr);
}
}
@media (max-width: 912px) {
}

@media (max-width: 786px) {
	.catch{

	padding: 2em 3em 1em;
}
.infoBox:before{

	transform: rotate(2deg);
}

.infoBox .bgBox{
	display: block;
	width: 100%;
	padding: 2em 2em 3em;
	min-height: 0;

}
.bgGreen:before{
	width: 18%;
}
.bgGreen:after{
	width: 18%;
}

.txtCenter{
	display: grid;
	align-items: center;
	justify-content: center;
	padding: 0 2em;
}

.infoBox h2{
	display: block;
	width: 45%;
	margin: 0 auto;
	max-width: 429px;
	padding: 0 0 2em;
}
.infoBox h2 img{
	width: 100%;
}


.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) {


	/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(1, 1fr);
}
	
}

