@charset "UTF-8";
/* CSS Document */

h1 {
	display: flex;
	justify-content: center;
	align-items: center;
	aspect-ratio: 24 / 5;
	min-height: 11rem;
	max-height: 22rem;
	max-width: 100%;
	min-width: 100%;
	font-size: clamp(3.2rem, calc(3vw / 0.8), 4.2rem);
	color: #fff;
	margin-bottom: 6rem;
	position: relative;
}

h1 strong {
	display: block;
	font-weight: 400;
	line-height: 0.8;
	margin-bottom: 0.14em;
}

h1 small {
	display: block;
	font-size: 0.44em;
	font-weight: 300;
	line-height: 1.2;
}

#about h1 {
	background: url("/about/images/top-img.jpg") no-repeat center center;
	background-size: cover;
}

#info h1 {
	background: url("/info/images/top-img.jpg") no-repeat 20% center;
	background-size: cover;
}

#shop h1 {
	background: url("/shop/images/top-img.jpg") no-repeat 82% center;
	background-size: cover;
}

#contact h1 {
	background: url("/contact/images/top-img.jpg") no-repeat 82% center;
	background-size: cover;
}

#event h1 {
	background: url("/event/images/top-img.jpg") no-repeat 18% center;
	background-size: cover;
}

h1.noBg {
	color: #000;
	height: auto;
	display: block;
	aspect-ratio: auto;
	min-height: auto;
	margin-top: 3rem;
}

h1.noBg strong {
	border-bottom: solid 1px #000;
}


@media screen and (max-width: 640px) {

	h1 {
		left: -4vw;
		width: calc(100% + 8vw);
		max-width: none;
	}
}