@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Kosugi+Maru&display=swap');
/* CSS Document */
/*共通*/
hr{
	border: 0;
	border-bottom: var(--txt) 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;
	max-width: 1000px;
	margin:3em auto;
	background-color: #fff;
	
}
.infoBox .bgBox{
	position: relative;
	padding: 2em 3em 3em;

}
.txtCenter{
	display: grid;
	align-items: center;
	justify-content: center;
	padding: 2em 0 0;
	position:relative;
	z-index: 2;
}
.box_bg {
	position: relative;
	overflow: hidden;
}
.box_bg:before{
	content: "";
	display: block;
	width: 45%;
	height: 5em;
	position: absolute;
	background-image: url("../img/box_bg.jpg");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	top:-0.5em;
	left: 0;
}
.box_bg:after{
	content: "";
	display: block;
	width: 45%;
	height: 5em;
	position: absolute;
	background-image: url("../img/box_bg.jpg");
	background-repeat: no-repeat;
	background-position: left top;
	background-size: contain;
	bottom:-0.5em;
	right: 0;
	transform: scale(-1,-1);
}

h2{
	max-width: 8em;
	font-size: min(8vw,48px);
	line-height: 1.3em;
	margin: 0 auto;
	text-align: center;
	letter-spacing: 1px;
	position: relative;
	z-index: 2;
}

.infoBox ul.notes{
	font-size: max(0.8em,12px);
}

/*TOP*/
#topArea {
	background-color: #fff;
	background-image: url("../img/pc/top_bg.jpg");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: 100% auto;
	padding: 1em 0;
}
#topArea .topImgBox{
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns:60% 40%;
}
#topArea h1{
	display: grid;
	justify-content: center;
	align-content: center;
}
#topArea h1 .logo{
	width: 70%;
	margin: 0 auto;
}
#topArea .topImg{
	background-image: url("../img/top.jpg");
	background-repeat: no-repeat;
	background-size: contain;
	margin-left: auto;
	position: relative;
}
#topArea .topImg:before{
	content: "";
	position: absolute;
	display: block;
	top:0;
	width: 100%;
	bottom: 0;
	left: 0;
	background-color: #f1c7db;
	transform: rotate(-2deg);
	z-index: -1;
}
.catch{
	text-align: center;


	position: relative;
		width: 100%;
	margin: 0 auto;
	padding: 3em 1em ;
	z-index: 3;
	background-color: #fff;
}
.mainBox{
	position: relative;
	background-image: url("../img/pc/hanabira.png");
	background-position: center top;
	background-size: 100% auto;
	background-repeat: no-repeat;
	padding: 3em 0 0;
}
.mainBox:before{
	content: "";
	top:0;
	width: 100%;
	left: 0;
	bottom: 0;
	position: absolute;
	z-index: -1;
	display: block;
	background-image: url("../img/bg_line.png");
	background-position: center;
	background-size: 100% auto;
	background-repeat: no-repeat;
}
.notesBox{padding: 1em; margin-bottom: 1em;}
.notesBox ul.notes{
	text-align: left;
	/*margin-top: 0.8em;*/
	padding: 0.8em 0.5em;
	font-size: 1em;
	line-height: 1.5em;
}
.notesBox h3{
	background-color: var(--pink);
	color: var(--txt);
	padding: 0.5em 0;
	border-radius: 6px;
}
/*イベント概要*/
/*------------------------------------
--------------------------------------*/
#goods{
	padding-top: 2em;
	position: relative;
	background-color: #fff;
}
#goods h2{
	position: relative;
}
.tokuten{
	background-color: var(--lightPink);

	border-radius: 10px;
	border: var(--pink) 2px solid;
	overflow: hidden;
	margin: 1em auto;
}
.tokutenBox{
		display: grid;
	column-gap: 1em;
	row-gap: 1em;
	grid-template-columns:repeat(2, 1fr);
	padding: 1em; 
	background-color: var(--white);
	color: var(--txt);
}
.tokutenBox .txtArea{
	display: grid;
	align-items: center;
}
.tokutenBox .txtArea .txt{
	padding: 1em 0.25em;
}
/*グッズ情報*/
	/*グッズサムネ*/
.goodsWrap {
	text-align: left;
		display: grid;
	grid-template-columns:repeat(3, 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(--pink) 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:var(--txt);
}
.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.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(--txt) 1px solid;
	text-align: center;
	top:50%;
	left:0%;
	color:var(--txt);
	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;
	color: var(--txt);
}
.price{
	text-align: right;
	font-weight: bold;
	padding: 0.5em;
	background-color:  var(--pink);
	color: var(--txt);
	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:var(--white);
border-radius: 50%;
color: var(--txt);
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;


}
#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:4em;
	/*padding: 1em 0;*/
	padding: 0;

}
.mainBox{
	background-image: url("../img/smp/hanabira.png");
	background-position:center top;

}
.mainBox:before{
	background-size: 200% auto;
}

/*TOP*/
#topArea .topImgBox{
	grid-template-columns:repeat(1, 1fr);
}
#topArea h1 .logo{
	padding: 1em 0 1.5em;
}

		/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(3, 1fr);
}
}
@media (max-width: 912px) {
}

@media (max-width: 786px) {

.infoBox:before{

	transform: rotate(2deg);
}






.tokutenBox{

	grid-template-columns:1fr;
}

/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(2, 1fr);
}
.bannerArea a{
	width: calc(100% - 1em);

}


}
@media (max-width: 480px) {


	/*グッズサムネ*/
.goodsWrap {

	grid-template-columns:repeat(1, 1fr);
}
	
}

