/* CSS Document */
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP&display=swap');

main{
	color: #1a1a1a;
	fill: #1a1a1a;
	font-family: 'Noto Sans JP', sans-serif;
	font-feature-settings: "palt";
	text-align: justify;
	line-height: 1.4em;
	}
	main *{
		line-height: inherit;
		}
	main > *{
		padding: 2em 0;
		}
	main a{
		color: #2cac99;
		fill: #2cac99;
		transition-property: color,text-decoration,background,background-color,background-size,border,border-color,box-shadow,fill,filter,opacity;
		transition-duration: 0.2s;
		transition-timing-function: ease-out;
		}
	main p{
		line-height: 1.6em;
		}
	main p+p{
		margin-top: 1em;
		}
	main svg{
		width: 1em;
		height: 1em;
		}
	main img{
		max-width: 100%;
		height: auto;
		}
	main .headline{
		padding: 0;
		background: none;
		font-size: 1.4em;
		font-weight: bold;
		line-height: 1.4em;
		}
		main .headline:before{
			content: none;
			}
	main .title{
		font-size: 1.4em;
		font-weight: bold;
		line-height: 1.4em;
		}
	main .subTitle{
		font-weight: bold;
		line-height: 1.4em;
		}
	main .buttonSet{
		display: flex;
		justify-content: center;
		}
	main .linkBut{
		display: inline-flex;
		align-items: center;
		padding: 0 1.5em;
		min-height: 2.5em;
		background: #BB251F;
		border-radius: 10em;
		color: #fff;
		fill: #fff;
		font-weight: bold;
		text-decoration: none;
		}
		main .linkBut:hover{
			text-decoration: none;
			}
		main .linkBut i{
			margin-right: 0.5em;
			}

#wrapper{
	padding-top: 0;
	overflow: visible;
	}

#header{
	position: relative;
	}

#main{
	width: 100%;
	padding-top: 0;
	}
	#main article{
		overflow: hidden;
		}

#prim,
#sec,
#tert{
	display: none;
	}

#localNav{
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	padding: 1em 0;
	pointer-events: none;
	z-index: 100;
	}
	#localNav ul{
		display: flex;
		flex-wrap: wrap;
		margin: -0.25em;
		list-style: none;
		}
	#localNav li{
		width: 50%;
		padding: 0.25em;
		}
	#localNav a{
		display: block;
		padding: 0.5em 1em;
		background: #BB251F;
		border-radius: 10em;
		color: #fff;
		font-weight: bold;
		text-align: center;
		text-decoration: none;
		pointer-events: all;
		}

#hero{
	padding: 0;
	}
/*#hero{
	position: relative;
	padding: 2em 0;
	text-align: center;
	background: url("../images/heroBg.jpg") center center;
	background-size: cover;
	}
	#hero:before{
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: #000;
		opacity: 0.2;
		}
	#hero img{
		width: auto;
		}
	#hero .wrap{
		position: relative;
		text-align: center;
		z-index: 1;
		}*/

#present{
	background: #1a1a1a;
	color: #fff;
	overflow: hidden;
	}
	#present h2{
		text-align: center;
		}
	#present h2+section{
		margin-top: 2em;
		}
	#present section{
		display: flex;
		flex-direction: column-reverse;
		}
	#present section+section{
		margin-top: 2em;
		}
	#present h3{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		}
		#present h3:before{
			content: attr(data-ruby);
			display: flex;
			align-items: center;
			margin-bottom: 0.5em;
			padding: 0 1em;
			height: 2em;
			background: #fff;
			border-radius: 10em;
			color: #1a1a1a;
			font-size: 0.6em;
			}
	#present h4{
		display: flex;
		align-items: flex-start;
		}
		#present h4:before{
			content: "";
			flex: 0 0 1em;
			width: 1em;
			height: 1px;
			margin-top: 0.7em;
			margin-right: 0.2em;
			background: #fff;
			}
	#present h4+div{
		margin-top: 0.5em;
		}
	#present figure{
		margin-bottom: 1em;
		}

#entry{
	padding: 0;
	background: #ffd426;
	background: #ccffff;
	/*background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='rgba(255,255,255,0.2)' fill-rule='evenodd'%3E%3Cpath d='M0 40L40 0H20L0 20M40 40V20L20 40'/%3E%3C/g%3E%3C/svg%3E");*/
	}
	#entry h2{
		display: none;
		}
	#entry section{
		padding: 2em 0;
		border-bottom: 0.3em solid #1a1a1a;
		}
	#entry h3{
		display: flex;
		flex-direction: column;
		align-items: center;
		}
		#entry h3:after{
			content: "";
			width: 1em;
			height: 5px;
			margin-top: 0.5em;
			background: #BB251F;
			background: #B98840;
			}
	#entry div+div{
		margin-top: 2em;
		}
	#entry span{
		position: relative;
		z-index: 1;
		}
		#entry span:before{
			content: "";
			position: absolute;
			left: 0;
			bottom: 0;
			width: 100%;
			height: 0.4em;
			background: #BB251F;
			opacity: 0.5;
			z-index: -1;
			}
	#entry ul{
		display: flex;
		flex-direction: column;
		margin-top: 1em;
		line-height: 1.4em;
		list-style: none;
		}
	#entry li{
		padding-left: 1em;
		text-indent: -1em;
		}
	#entry li+li{
		margin-top: 0.5em;
		}
	#entry .wrap > div{
		display: flex;
		flex-direction: column;
		align-items: center;
		}
	#entry .subTitle{
		font-size: 1.1em;
		line-height: 1.6em;
		text-align: center;
		}

#report{}
	#report h2{
		display: flex;
		flex-direction: column;
		align-items: center;
		text-align: center;
		}
		#report h2 span{
			position: relative;
			margin-bottom: 0.5em;
			padding: 0.5em 0.8em;
			background: #B98840;
			color: #fff;
			font-size: 0.6em;
			line-height: 1em;
			}
			#report h2 span:after{
				content: "";
				position: absolute;
				left: 50%;
				bottom: -1em;
				margin-left: -0.5em;
				border: 0.5em solid transparent;
				border-top-color: #B98840;
				transform: scale(0.8,1.1);
				}
	#report h2+div{
		margin-top: 1em;
		}
	#report dl{
		display: flex;
		flex-direction: column;
		padding: 1em;
		background: #f2f2f2;
		position: relative;
		}
	#report dl+dl{
		margin-top: 1em;
		}
	#report dt{
		font-size: 1.1em;
		font-weight: bold;
		line-height: 1.4em;
		}
	#report dt+dd{
		margin: -1em;
		margin-bottom: 1em;
		order: -1;
		}
	#report dd+dd{
		margin-top: 0.5em;
		line-height: 1.4em;
		}
	#report dd{}
		#report dd:last-child{
			border: 0 dotted #ccc;
			border-width: 1px 0;
			}
			#report dd:last-child a{
				display: flex;
				align-items: flex-start;
				padding: 0.5em 0;
				}
			#report dd:last-child i{
				margin: 0.1em 0.2em 0 0;
				}
	#report .buttonSet{
		margin-top: 1em;
		}

#campaign{
	background: url("../images/campaignBg.jpg") center center;
	background-size: cover;
	}
	#campaign i{
		position: absolute;
		top: -1em;
		left: -0.5em;
		width: 5.5em;
		height: 4em;
		z-index: 1;
		}
		#campaign i svg{
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
			font-weight: 900;
			font-style: normal;
			}
	#campaign h2{
		position: relative;
		padding: 1em;
		padding-left: 4em;
		background: #ff9999;
		color: #ff9999;
		}
	#campaign h2+div{
		margin: 1em;
		}
	#campaign header{}
		#campaign header p{
			text-align: left;
			}
	#campaign section{
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		margin: 0 1em;
		padding: 1em 0;
		border-top: 1px solid #e6e6e6;
		}
		#campaign section:nth-of-type(-n+3) p,
		#campaign section:nth-of-type(-n+3) ul{
			font-weight: bold;
			}
	#campaign h3{
		align-self: center;
		padding: 0.5em 1.5em;
		background: #ffef64;
		border-radius: 10em;
		font-weight: bold;
		text-align: center;
		}
	#campaign h3+div{
		margin-top: 1em;
		}
	#campaign figure{
		margin-top: 1em;
		text-align: center;
		}
		#campaign figure img{
			width: auto;
			max-width: 100%;
			}
	#campaign .list.point{}
		#campaign .list.point > li:before{
			color: #ff9999;
			transform: scale(0.6);
			}
	#campaign .wrap{
		position: relative;
		filter: drop-shadow(0 0 0.2em rgba(0,0,0,0.5));
		}
		#campaign .wrap > div{
			background: #fff;
			border-radius: 10px;
			overflow: hidden;
			}


#after{
	background: #1a1a1a;
	color: #fff;
	}
	#after .wrap{
		text-align: center;
		}

#contact{
	background: #1a1a1a;
	color: #fff;
	font-style: normal;
	}
	#contact h3{
		white-space: nowrap;
		line-height: 1em;
		}
	#contact h3+div{
		margin-top: 1em;
		}
	#contact dl{
		display: flex;
		flex-wrap: wrap;
		}
	#contact dt{
		width: 100%;
		}
	#contact dd{
		margin-top: 0.3em;
		margin-right: 1em;
		}
	#contact dd+dt{
		margin-top: 1em;
		}

#banner{
	position: fixed;
	left: 0;
	bottom: 1.5em;
	width: 100%;
	padding: 0;
	z-index: 10;
	}
	#banner .wrap{
		display: flex;
		flex-direction: column;
		}
	#banner .banner{
		margin-bottom: 0.5em;
		}
		/*#banner .banner a{
			display: flex;
			align-items: center;
			padding-right: 1em;
			background: #BB251F;
			border: 1px solid #BB251F;
			color: #fff;
			}
			#banner .banner a:after{
				content: "お買い物に出かける";
				}
			#banner .banner a:hover{
				text-decoration: none;
				}
		#banner .banner img{
			margin-right: 1em;
			max-width: 160px;
			}*/
	#banner ul{
		justify-content: flex-start;
		align-items: flex-end;
		}
	#banner li+li{
		margin-left: 5px;
		}
	#banner li{
		display: flex;
		}
	#banner .sns{}
		#banner .sns a{
			display: flex;
			align-items: center;
			padding: 0 6px;
			height: 20px;
			background: #000;
			border-radius: 3px;
			color: #fff;
			fill: #fff;
			font-size: 11px;
			text-decoration: none;
			}
			#banner .sns a:hover{
				text-decoration: none;
				}
	#banner .line{}
		#banner .line a{
			background: #00c300;
			}
		#banner .line i{
			margin: 2px 3px 0 0;
			}

.shopLink{
	padding: 1em 0 2em 0;
	background: #ffd426;
	background-image: url("data:image/svg+xml,%3Csvg width='40' height='40' viewBox='0 0 40 40' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='rgba(255,255,255,0.2)' fill-rule='evenodd'%3E%3Cpath d='M0 40L40 0H20L0 20M40 40V20L20 40'/%3E%3C/g%3E%3C/svg%3E");
	}
	.shopLink dl{
		display: flex;
		flex-direction: column;
		align-items: center;
		margin-top: 1em;
		width: 15em;
		}
	.shopLink dt{}
		.shopLink dt svg{
			width: 100%;
			height: auto;
			filter: drop-shadow(0 0 0.2em rgba(0,0,0,0.5));
			vertical-align: bottom;
			}
		_:-ms-lang(x)::-ms-backdrop,.shopLink dt svg{
			height: 4em;
			}
	/*.shopLink dt{
		position: relative;
		margin-bottom: 0.5em;
		padding: 0.8em 1em;
		background: #B98840;
		color: #fff;
		font-size: 1.6em;
		font-weight: bold;
		line-height: 1em;
		}
		.shopLink dt:after{
			content: "";
			position: absolute;
			left: 50%;
			bottom: -1em;
			margin-left: -0.5em;
			border: 0.5em solid transparent;
			border-top-color: #B98840;
			transform: scale(0.8,1.1);
			}*/
	.shopLink dd{
		align-self: stretch;
		margin-top: 1em;
		}
		.shopLink dd img{
			width: 100%;
			}
	.shopLink .wrap{
		display: flex;
		flex-direction: column-reverse;
		align-items: center;
		}


@media (min-width:1200px) {
}


/* ie */
@media all and (-ms-high-contrast: none){
#banner{}
	#banner .twitter{}
		#banner .twitter a{
			background: #1b95e0;
			}
}


