﻿:root {
	--main-color: #0188c3;
	--text-base-color: #1a1a1a;
}
html {
	font-size: 16px;
	scroll-behavior: smooth;
}
body {
	font-family: 'M PLUS 1', 'Montserrat', sans-serif;
	font-weight: 400;
	font-style: normal;
	color: var(--text-base-color);
	container-type: inline-size;
	box-sizing: border-box;
	letter-spacing: 0.075rem;
	margin-inline: auto;
	width: 100%;
	overflow-x: hidden;
}
@media (max-width: 768px) {
	body {
		overflow-x: hidden;
		overflow-y: visible;
	}
}
img {
	vertical-align: top;
}
ol,
ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
dl,
dt,
dd {
	margin: 0;
	padding: 0;
}
a {
	text-decoration: none;
	transition: 0.8s;
	color: var(--text-base-color);
}
a:hover {
	opacity: 0.7;
	filter: brightness(110%);
}
header {
	background: #fff;
	border-bottom: 1px solid #ccc;
	font-family: 'M PLUS 1', 'Montserrat', sans-serif;
	box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.16);
	position: fixed;
	position: -webkit-fixed;
	width: 100%;
	z-index: 9999;
}
header .bl_wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	max-width: 1920px;
	margin-inline: auto;
	padding: 20px 40px;
	height: 90px;
	box-sizing: border-box;
}
@media (max-width: 1024px) {
	header .bl_wrapper {
		box-sizing: border-box;
		height: clamp(45px, 6.25vw, 80px);
		padding: 10px 5%;
	}
}
@media (max-width: 1024px) {
	header {
		box-sizing: border-box;
		position: fixed;
		width: 100vw;
		-webkit-backface-visibility: hidden;
		backface-visibility: hidden;
		transform: translateZ(0);
		will-change: transform;
	}
}
header h1 {
	margin: 0;
	z-index: 1000;
}
header h1 img {
	height: 50px;
	width: auto;
}
@media (max-width: 1024px) {
	header h1 img {
		height: clamp(25px, 3.6458333333vw, 50px);
		vertical-align: inherit;
		z-index: 100;
	}
}
header .bl_head-r {
	display: flex;
	align-items: center;
	flex: 1;
	justify-content: flex-end;
}
@media (max-width: 1024px) {
	header .bl_head-r {
		flex-direction: column;
		align-items: flex-start;
		position: fixed;
		top: 0;
		right: -100%;
		background: #fff;
		width: 80%;
		height: 100%;
		padding: 2rem;
		z-index: 999;
		transition: right 0.3s ease;
	}
	header .bl_head-r.open {
		right: 0;
		text-align: center;
		margin: 0 0 0;
		width: 100vw;
		height: 100vh;
		padding: clamp(45px, 31.25vw, 70px) 0 0;
		box-sizing: border-box;
		overflow: hidden;
		justify-content: flex-start;
	}
}
header .bl_head-r nav {
	margin: 0 2rem;
}
@media (max-width: 1024px) {
	header .bl_head-r nav {
		margin-inline: auto;
	}
}
header .bl_head-r nav ul {
	display: flex;
	gap: min(2vw, 4rem);
	list-style: none;
	margin: 0;
	padding: 0;
	font-weight: 700;
	margin-left: auto;
}
@media (max-width: 1024px) {
	header .bl_head-r nav ul {
		flex-direction: column;
		gap: 1.5rem;
	}
}
header .bl_head-r nav ul li {
	position: relative;
}
header .bl_head-r nav ul li.is-active a:hover:after {
	display: none;
}
header .bl_head-r nav ul li > a {
	text-decoration: none;
	color: #000;
	text-transform: uppercase;
	position: relative;
}
header .bl_head-r nav ul li > a::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -0.5rem;
	width: 0%;
	height: 4px;
	background-color: #a82931;
	transition: width 0.3s ease;
}
header .bl_head-r nav ul li > a:hover::after {
	width: 100%;
}
header .bl_head-r nav ul li:hover > a::after {
	width: 100%;
}
header .bl_head-r nav ul li.is-active::after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -0.5rem;
	width: 100%;
	height: 4px;
	background-color: #a82931;
	transition: width 0.3s ease;
}
header .bl_head-r nav ul li .bl_sub-nav {
	display: block;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s ease;
	position: absolute;
	top: 100%;
	left: 0;
	background: #111;
	min-width: 260px;
	z-index: 1000;
	margin-top: 1rem;
	font-weight: 400;
}
@media (max-width: 1024px) {
	header .bl_head-r nav ul li .bl_sub-nav {
		transform: translateX(-50%);
		left: 50%;
	}
}
header .bl_head-r nav ul li .bl_sub-nav li a {
	display: block;
	color: #fff;
	padding: 10px 15px;
	white-space: nowrap;
	text-decoration: none;
	text-transform: none;
}
header .bl_head-r nav ul li .bl_sub-nav li a:hover {
	background-color: #999;
}
header .bl_head-r nav ul li .bl_sub-nav li a:hover::after {
	width: 0;
}
header .bl_head-r nav ul li:hover .bl_sub-nav {
	opacity: 1;
	visibility: visible;
}
@media (max-width: 1024px) {
	header .bl_head-r nav ul li:hover .bl_sub-nav {
		transform: translateX(-50%);
	}
}
header .bl_head-r .header-utils {
	display: flex;
	align-items: center;
	gap: 15px;
}
@media (max-width: 1024px) {
	header .bl_head-r .header-utils {
		display: none;
		flex-direction: column;
		align-items: center;
		margin-top: 2rem;
		width: 100%;
	}
}
header .bl_head-r .header-utils .lang-switch {
	display: flex;
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
	font-size: 1rem;
}
header .bl_head-r .header-utils .lang-switch li {
	padding-inline: 0.75rem;
}
header .bl_head-r .header-utils .lang-switch li + li {
	border-left: 1px solid #1a1a1a;
}
header .bl_head-r .header-utils .lang-switch a {
	text-decoration: none;
	color: #a1a1a1;
	text-transform: uppercase;
}
header .bl_head-r .header-utils .lang-switch a:hover {
	color: #1a1a1a;
}
header .bl_head-r .header-utils .lang-switch .mf_current a {
	color: #1a1a1a;
}
header .bl_head-r .header-utils .h-icon {
	margin-left: 1.5rem;
	display: flex;
	gap: 2rem;
	align-items: center;
}
@media (max-width: 768px) {
	header .bl_head-r .header-utils .h-icon {
		margin-left: 0;
	}
	header .bl_head-r .header-utils .h-icon li:last-child {
		display: none;
	}
}
header .bl_head-r .header-utils .icon {
	display: inline-block;
	transition: opacity 0.3s ease;
}
header .bl_head-r .header-utils .icon:hover {
	opacity: 0.6;
}
header .bl_head-r .header-utils .icon img {
	display: block;
}
header .bl_head-r.open .header-utils {
	display: flex;
}
header .bl_head-r.open .header-utils .lang-switch {
	margin-inline: auto;
}
header .bl_head-r.open .header-utils .mail img {
	display: inline;
}
header .bl_head-r.open .header-utils .search img {
	display: inline;
}
header .hamburger {
	display: none;
	flex-direction: column;
	gap: 6px;
	width: 25px;
	height: 25px;
	background: none;
	border: none;
	cursor: pointer;
	position: relative;
}
header .hamburger span {
	display: block;
	width: 25px;
	height: 3px;
	background: #000;
	transition: 0.3s;
}
@media (max-width: 1024px) {
	header .hamburger {
		display: flex;
		position: fixed;
		right: 5%;
		z-index: 1001;
	}
	header .hamburger.is-active span:nth-child(1) {
		transform: translateY(9px) rotate(45deg);
	}
	header .hamburger.is-active span:nth-child(2) {
		opacity: 0;
	}
	header .hamburger.is-active span:nth-child(3) {
		transform: translateY(-9px) rotate(-45deg);
	}
}
.search-panel {
	position: fixed;
	top: -100%;
	left: 50%;
	width: 100%;
	max-width: 1920px;
	background: linear-gradient(to bottom, #f8f2fb, #ffffff);
	padding: 2rem 1rem;
	box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
	transition: top 0.4s ease, opacity 0.4s ease;
	opacity: 0;
	z-index: 998;
	box-sizing: border-box;
	transform: translateX(-50%);
}
@media (max-width: 1024px) {
	.search-panel {
		position: relative;
		top: 0;
		opacity: 1;
	}
}
.search-panel.active {
	top: 0;
	opacity: 1;
}
.search-panel .close-btn {
	position: absolute;
	top: 1rem;
	right: 1rem;
	background: none;
	border: none;
	font-size: 2rem;
	cursor: pointer;
	color: #333;
}
.search-panel .close-btn::before {
	content: '×';
}
@media (max-width: 1024px) {
	.search-panel .close-btn {
		display: none;
	}
}
.search-panel .search-box {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: nowrap;
	margin-bottom: 1.5rem;
	gap: 0.5rem;
}
.search-panel .search-box input {
	width: 60%;
	padding: 0.75rem 1.25rem;
	font-size: 1rem;
	border-radius: 9999px;
	border: 1px solid #ccc;
	outline: none;
}
.search-panel .search-box .submit-btn {
	background: #ccc;
	color: #fff;
	border: none;
	padding: 0.75rem 1.25rem;
	border-radius: 9999px;
	font-size: 1rem;
	cursor: pointer;
}
.search-panel .search-box .submit-btn:hover {
	background: #8c1f28;
}
.search-panel .search-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	justify-content: center;
}
.search-panel .search-tags button {
	background: #fff;
	border: 1px solid #ddd;
	border-radius: 9999px;
	padding: 0.5rem 1rem;
	font-size: 0.9rem;
	cursor: pointer;
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.08);
}
.search-panel .search-tags button:hover {
	background: #f0f0f0;
}
@media (max-width: 1024px) {
	.search-panel {
		padding: 1.5rem 1rem;
	}
	.search-panel .search-box {
		flex-direction: column;
		gap: 0.75rem;
	}
	.search-panel .search-box input {
		width: 50%;
	}
	.search-panel .search-box .submit-btn {
		width: auto;
	}
	.search-panel .search-tags {
		display: none;
	}
	.search-panel .search-tags button {
		width: 80%;
		text-align: center;
	}
}
footer {
	padding-top: 5rem;
	text-align: center;
	position: relative;
}
footer .bl_f-logo {
	max-width: 168px;
	margin: 0 auto 3rem;
}
footer .bl_f-logo img {
	width: 100%;
	height: auto;
}
footer ul {
	display: flex;
	justify-content: center;
	gap: 4rem;
	font-size: 0.875rem;
	margin: 0 auto 3rem;
}
@media (max-width: 768px) {
	footer ul {
		flex-direction: column;
		gap: 2rem;
	}
	footer ul.bl_sns-list {
		flex-direction: row;
	}
}
footer ul a {
	color: #1a1a1a;
}
footer ul.bl_sns-list {
	gap: 1rem;
}
@media (max-width: 450px) {
	footer ul.bl_sns-list {
		flex-direction: row;
		gap: 1rem;
	}
}
footer ul.bl_sns-list img {
	width: auto;
	height: 35px;
}
footer small {
	background: #a82931;
	color: #fff;
	font-size: 0.8125rem;
	display: block;
	padding: 1rem;
	line-height: 1;
}
footer:after {
	content: '';
	display: block;
	width: min(21.9791666667vw, 422px);
	height: min(17.34375vw, 333px);
	background: url(../images/obj_c.webp) no-repeat;
	position: absolute;
	background-size: contain;
	background-position: top right;
	top: 0;
	z-index: -1;
	position: absolute;
	right: 50%;
	transform: translateX(50%) translateY(-60%);
	width: 100vw;
	opacity: 0;
	transition: opacity 1s ease;
}
footer.after-visible::after {
	opacity: 1;
}
.home footer:after {
	z-index: 1;
}
main {
	position: relative;
	padding-top: 90px;
	max-width: 1800px;
	margin-inline: auto;
}
@media (max-width: 768px) {
	main {
		padding-top: clamp(45px, 6.25vw, 80px);
	}
}
main.mf_no-mv::after {
	content: '';
	display: block;
	width: min(20.8333333333vw, 400px);
	height: min(32.7083333333vw, 628px);
	background: url(../images/obj_a.webp) no-repeat;
	background-size: contain;
	background-position: top right;
	position: absolute;
	right: calc(50% - 50vw);
	top: 0;
	transform: translateY(-10%);
	z-index: -1;
}
section,
.bl_news-note,
.bl_event-note {
	width: 90%;
	max-width: 1200px;
	margin: 3rem auto;
}
@media (max-width: 450px) {
	section,
	.bl_news-note,
	.bl_event-note {
		margin-block: 8vw;
	}
}
section h2,
.bl_news-note h2,
.bl_event-note h2 {
	display: flex;
	flex-direction: row-reverse;
	justify-content: flex-end;
	font-size: 1rem;
	font-family: 'M PLUS 1', 'Montserrat', sans-serif;
	font-weight: normal;
	align-items: last baseline;
	letter-spacing: 0.05em;
	margin-bottom: 1.875rem;
}
@media (max-width: 768px) {
	section h2,
	.bl_news-note h2,
	.bl_event-note h2 {
		flex-direction: column-reverse;
		justify-content: center;
		text-align: center;
		align-items: center;
	}
}
section h2 span,
.bl_news-note h2 span,
.bl_event-note h2 span {
	font-size: 3.125rem;
	font-weight: 600;
	border-bottom: solid 4px #8c1f28;
	margin-right: 1rem;
	line-height: 1;
	padding-bottom: 0.7rem;
}
@media (max-width: 768px) {
	section h2 span,
	.bl_news-note h2 span,
	.bl_event-note h2 span {
		margin-right: 0rem;
		margin-bottom: 1rem;
		font-size: 1.875rem;
	}
}
section.mf_mc h2 span,
.bl_news-note.mf_mc h2 span,
.bl_event-note.mf_mc h2 span {
	border-bottom: none;
	margin-right: 2.5rem;
}
@media (max-width: 768px) {
	section.mf_mc h2 span,
	.bl_news-note.mf_mc h2 span,
	.bl_event-note.mf_mc h2 span {
		margin: 0;
		font-size: 6.6666666667vw;
	}
	section.mf_mc h2 span img,
	.bl_news-note.mf_mc h2 span img,
	.bl_event-note.mf_mc h2 span img {
		height: 6.6666666667vw;
		width: auto;
	}
}
.mf_bcg-01 {
	background: #ede5e2;
	padding-top: 1px;
}
.bl_mv {
	position: relative;
	margin-inline: auto;
	max-width: 100%;
	width: 100%;
	margin-top: 0;
}
.bl_mv.mf_w-100 {
	width: 100%;
	margin: 0;
}
.bl_mv.mf_w-100 img {
	width: 100%;
}
.bl_mv.mf_w-1200 {
	max-width: 1200px;
	margin-inline: auto;
	width: 90%;
	position: static;
}
.bl_mv.mf_w-1200 img {
	width: 100%;
	height: auto;
}
.bl_mv.mf_w-1200:after {
	top: 0;
	bottom: auto;
	transform: translateY(0%);
}
@media (max-width: 768px) {
	.bl_mv {
		margin: 0;
		width: 100%;
	}
}
.bl_mv #slider {
	width: 100%;
	overflow: hidden;
	margin: 0 auto;
}
.bl_mv #slides {
	display: flex;
	transition: transform 0.5s;
}
.bl_mv #slides > div {
	min-width: 100%;
	text-align: center;
	aspect-ratio: 1800/771;
	width: 100%;
	overflow: hidden;
	position: relative;
}
.bl_mv #slides > div img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.bl_mv #dots {
	text-align: center;
	margin-top: 1rem;
}
.bl_mv #dots span {
	display: inline-block;
	width: 12px;
	height: 12px;
	margin: 0 6px;
	background: #ccc;
	cursor: pointer;
}
.bl_mv #dots span.active {
	background: #a82931;
}
.bl_mv .slider-arrow {
	display: none;
}
.bl_mv::after {
	content: '';
	display: block;
	width: min(20.8333333333vw, 400px);
	height: min(32.7083333333vw, 628px);
	background: url(../images/obj_a.webp) no-repeat;
	background-size: contain;
	background-position: top right;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: -1;
	left: 50%;
	transform: translateX(calc(50vw - 70%)) translateY(80%);
}
@media (max-width: 768px) {
	.bl_mv #dots {
		display: none;
	}
	.bl_mv .slider-arrow {
		display: block;
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		background: rgba(0, 0, 0, 0.6);
		color: #fff;
		padding: 6px 8px;
		border-radius: 50%;
		cursor: pointer;
		z-index: 10;
	}
	.bl_mv .slider-arrow.prev {
		left: 10px;
	}
	.bl_mv .slider-arrow.next {
		right: 10px;
	}
}
.bl_item-list {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1.875rem 1.25rem;
}
@media (max-width: 1440px) {
	.bl_item-list {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (max-width: 768px) {
	.bl_item-list {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (max-width: 450px) {
	.bl_item-list {
		grid-template-columns: repeat(1, 1fr);
	}
}
.bl_item-list figure {
	margin: 0;
	order: 1;
}
.bl_item-list li {
	display: flex;
	flex-direction: column;
}
@media (max-width: 450px) {
	.bl_item-list li {
		position: relative;
		padding-left: 40vw;
		padding-left: 0;
		position: relative;
		min-height: 36.2666666667vw;
	}
	.bl_item-list li img {
		width: 100%;
		margin-inline: auto;
		display: block;
	}
}
.bl_item-list h3 {
	order: 3;
	font-weight: 500;
	letter-spacing: 0.05em;
	margin: 0.25rem 0 0;
	font-size: 1rem;
}
@media (max-width: 450px) {
	.bl_item-list h3 {
		margin-left: 38.9333333333vw;
	}
}
.bl_item-list figure {
	width: 100%;
}

.bl_item-list figure a {
	width: 100%;
	aspect-ratio: 285/285;
	display: block;
}
@media (max-width: 450px) {
	.bl_item-list figure {
		width: 36.2666666667vw;
		position: absolute;
		left: 0;
		top: 0;
		height: 100%;
	}
	.bl_item-list figure a {
		width: 100%;
		aspect-ratio: 136/136;
		display: block;
	}
}
.bl_item-list figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.bl_item-list .bl_note {
	order: 2;
	font-size: 0.75rem;
	margin-top: 1.25em;
	display: flex;
	flex-wrap: wrap;
	gap: 0.25rem;
	align-items: center;
}
@media (max-width: 450px) {
	.bl_item-list .bl_note {
		margin-left: 38.9333333333vw;
	}
}
.bl_item-list .bl_note span {
	display: block;
	width: fit-content;
	padding: 0.25em 0.75em;
	color: #fff;
	margin-right: 0.75rem;
}
.bl_item-list .bl_note span a {
	color: #fff;
}
.bl_search-resuslt .bl_item-list .bl_note {
	order: 2;
	font-size: 0.75rem;
	margin-top: 1.25em;
	display: block;
	flex-wrap: wrap;
	gap: 0.25rem;
	align-items: center;
}
#top-goods {
	position: relative;
	padding-bottom: 5rem;
	overflow: visible;
}
#top-goods .background-band {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(calc(-50% - 60px)) scaleX(0);
	width: calc(100vw - 30px);
	height: 75%;
	z-index: 0;
	background: linear-gradient(to right, #ffe7a0 0%, #ffedb8 33%, #ffd7c1 66%, #ffbfab 100%);
	pointer-events: none;
	border-radius: 0 1.5rem 1.5rem 0;
	transform-origin: left;
	transition: transform 1s ease;
}
#top-goods.show-bg .background-band {
	transform: translateX(calc(-50% - 60px)) scaleX(1);
}
#top-goods > *:not(.background-band) {
	position: relative;
	z-index: 1;
}
#top-news {
	position: relative;
	padding-bottom: 3rem;
}
#top-news .background-band {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(calc(-50% - 60px)) scaleX(0);
	width: calc(100vw - 30px);
	height: 75%;
	z-index: 0;
	background: linear-gradient(to right, #ffe7a0 0%, #ffedb8 33%, #ffd7c1 66%, #ffbfab 100%);
	pointer-events: none;
	border-radius: 0 1.5rem 1.5rem 0;
	transform-origin: left;
	transition: transform 1s ease;
}
#top-news.show-bg .background-band {
	transform: translateX(calc(-50% - 60px)) scaleX(1);
}
#top-news > *:not(.background-band) {
	position: relative;
	z-index: 1;
}

.bl_top-event {
	margin-top: 6rem;
	position: relative;
}
@media (max-width: 450px) {
	.bl_top-event {
		margin-top: inherit;
	}
}
.bl_top-event:after {
	content: '';
	display: block;
	width: min(17.1875vw, 330px);
	height: min(27.65625vw, 531px);
	background: url(../images/obj_b.webp) no-repeat;
	position: absolute;
	background-size: contain;
	background-position: top left;
	left: 50%;
	top: 0;
	z-index: -1;
	position: absolute;
	left: 50%;
	transform: translateX(-50%) translateY(0%);
	width: 100vw;
	opacity: 0;
	transition: opacity 1s ease;
}
.bl_top-event.show-after::after {
	opacity: 1;
}
.bl_top-event .calendar-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin: 2rem auto 1rem;
	padding: 0 0;
	position: relative;
}
.bl_top-event .calendar-header .calendar-title {
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	font-size: 1.5rem;
	font-weight: bold;
	margin: 0;
}
.bl_top-event .calendar-header button {
	background: none;
	border: none;
	color: #333;
	font-size: 0.9rem;
	cursor: pointer;
	padding: 0.5rem;
	transition: color 0.3s;
}
.bl_top-event .calendar-header button:hover {
	color: #07c;
}
.bl_top-event .calendar-header button.prev-month {
	text-align: left;
}
.bl_top-event .calendar-header button.next-month {
	text-align: right;
}
.bl_top-event .bl_calendar {
	margin: 5rem auto;
}
.bl_top-event .bl_calendar h2 {
	text-align: center;
	font-size: 1.5rem;
	margin-bottom: 1rem;
}
.bl_top-event .bl_calendar .bl_calendar-grid {
	display: flex;
	gap: 2rem;
	flex-wrap: wrap;
	padding: 2rem;
	border: 2px solid #f5c769;
	border-radius: 16px;
	background: #fff;
}
@media (max-width: 768px) {
	.bl_top-event .bl_calendar .bl_calendar-grid {
		height: 23rem;
		overflow-y: scroll;
		display: block;
	}
}
.bl_top-event .bl_calendar .bl_calendar-grid .calendar-column {
	flex: 1;
	list-style: none;
	padding: 0;
}
@media (max-width: 768px) {
	.bl_top-event .bl_calendar .bl_calendar-grid .calendar-column {
		width: 100%;
	}
}
.bl_top-event .bl_calendar .bl_calendar-grid .calendar-column > li {
	display: flex;
	align-items: center;
	gap: 1rem;
	border-bottom: solid 1px #dde1ea;
	padding-block: 0.75rem;
}
.bl_top-event .bl_calendar .bl_calendar-grid .calendar-column > li .el_date {
	font-weight: bold;
	width: 3rem;
}
.bl_top-event .bl_calendar .bl_calendar-grid .calendar-column > li .el_day {
	width: 2rem;
	color: #000;
}
.bl_top-event .bl_calendar .bl_calendar-grid .calendar-column > li .el_day.sat {
	color: #0095ff;
}
.bl_top-event .bl_calendar .bl_calendar-grid .calendar-column > li .el_day.sun {
	color: red;
}
.bl_top-event .bl_calendar .bl_calendar-grid .calendar-column > li .el_event {
	font-size: 0.85rem;
	line-height: 1.8;
}
#top-features {
	position: relative;
	overflow: visible;
	padding-bottom: 6.25rem;
}
@media (max-width: 450px) {
	#top-features {
		padding-bottom: 0;
	}
}
#top-features .background-band-bnr {
	position: absolute;
	bottom: 0;
	right: 0%;
	transform: translateX(100%) scaleX(0);
	width: calc(100vw - 60px);
	height: 75%;
	z-index: 0;
	background: linear-gradient(to right, #fff6e8 0%, #ffeef2 33%, #f0e4f7 66%, #e5e9fa 100%);
	pointer-events: none;
	border-radius: 20px 0 0 20px;
	transform-origin: right;
	transition: transform 1s ease;
}
@media (max-width: 450px) {
	#top-features .background-band-bnr {
		height: 82%;
		bottom: 25vw;
	}
}
#top-features.show-bg .background-band-bnr {
	transform: translateX(5%) scaleX(1);
	width: 100vw;
	right: calc(50% - 50vw);
}
@media (max-width: 450px) {
	#top-features.show-bg .background-band-bnr {
		transform: translateX(18vw) scaleX(1);
		width: calc(100vw - 0px);
	}
}
#top-features > *:not(.background-band-bnr) {
	position: relative;
	z-index: 1;
}
.bl_bnr-list {
	display: flex;
	flex-wrap: wrap;
	gap: 3rem 1rem;
	justify-content: space-between;
}
.bl_bnr-list li {
	font-weight: bold;
	font-size: 1rem;
}
.bl_bnr-list li img {
	width: 100%;
}
.bl_bnr-list li.mf_item2 {
	width: calc(50% - 1rem);
}
@media (max-width: 450px) {
	.bl_bnr-list li.mf_item2 {
		width: 100%;
		text-align: center;
	}
}
.bl_bnr-list li.mf_item4 {
	width: calc(25% - 1rem);
}
@media (max-width: 768px) {
	.bl_bnr-list li.mf_item4 {
		width: calc(50% - 1rem);
	}
}
@media (max-width: 450px) {
	.bl_bnr-list li.mf_item4 {
		width: 100%;
	}
}
@media (max-width: 768px) {
	.bl_bnr-list li {
		width: 100%;
		text-align: center;
	}
}
.bl_bnr-list li img {
	margin-bottom: 0.5rem;
	box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.16);
}
@media (max-width: 768px) {
	.bl_bnr-list li img {
		width: 100%;
	}
}
.bl_btn01 {
	width: 235px;
	height: 50px;
	margin: 45px auto 0;
}
.bl_btn01.bl_btn-news-list a {
	padding-inline: 2em;
	max-width: 100%;
	width: fit-content;
	box-sizing: border-box;
	line-height: 1.4;
	text-align: center;
}
.bl_btn01 a {
	display: block;
	background: #a82931;
	border-radius: 25px;
	width: 100%;
	height: 100%;
	color: #fff;
	font-size: 0.875rem;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 700;
	position: relative;
	line-height: 1;
}
.bl_btn01 a:after {
	content: '';
	width: 9px;
	height: 14px;
	background: url(../images/Icon-ArrowRight-Small.svg) no-repeat;
	background-size: contain;
	position: absolute;
	right: 1rem;
	transition: 0.5s;
}
.bl_btn01 a:hover:after {
	right: 0.75rem;
}
.mf_cate-ptn01 {
	background: #a82931;
}
.mf_cate-ptn02 {
	background: #8c5383;
}
.mf_cate-ptn03 {
	background: #8c5383;
}
.mf_cate-ptn04 {
	background: #118ab2;
}
.bl_btn-online {
	display: block;
	position: fixed;
	right: 60px;
	bottom: 60px;
}
.bl_shop-list {
	margin: 0 auto;
	font-family: 'Noto Sans JP', sans-serif;
}
.bl_shop-list > h3 {
	font-size: 24px;
	margin-bottom: 10px;
}
.bl_shop-list > h3 span {
	font-size: 14px;
	color: #888;
	margin-left: 10px;
}
.bl_shop-list > p {
	font-size: 14px;
	margin-bottom: 30px;
	color: #666;
}
.area-tabs ul {
	display: flex;
	flex-wrap: wrap;
	list-style: none;
	padding: 0;
	margin: 3rem 0 0;
	border-bottom: 5px solid #3d3938;
}
@media (max-width: 768px) {
	.area-tabs ul {
		border-bottom: 0 !important;
		gap: 1rem;
		width: 85%;
		margin: 1rem auto;
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		place-items: center;
	}
}
.area-tabs li {
	padding: 10px 0;
	background: #e9e9e9;
	border-right: 1px solid #ccc;
	cursor: pointer;
	font-size: 14px;
	white-space: nowrap;
	width: 100px;
	text-align: center;
	border-radius: 10px 10px 0 0;
	margin-right: 10px;
	font-weight: bold;
}
@media (max-width: 768px) {
	.area-tabs li {
		border-radius: 10px;
		width: 20vw;
		max-width: 20vw;
		min-width: 75px;
		margin-right: 0;
		text-align: center;
	}
}
.area-tabs li.active {
	background: #3d3938;
	color: #fff;
	font-weight: bold;
}
.area-block {
	margin: 0 min(5.2083333333vw, 100px) 2.5rem;
}
@media (max-width: 450px) {
	.area-block {
		margin: 2rem 0 0;
	}
}
.area-title {
	background: #3d3938;
	color: #fff;
	width: 100px;
	height: 40px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 500;
	margin-bottom: 10px;
}
@media (max-width: 450px) {
	.area-title {
		font-size: 0.8125rem;
		width: 75px;
		height: 30px;
	}
}
.table-head {
	background: #3d3938;
	color: #fff;
	padding: 10px;
	font-weight: bold;
	text-align: center;
}
.mf_mc .table-head {
	display: flex;
}
.store-entry {
	padding: 1rem;
	padding-inline: min(3.90625vw, 75px);
}
.store-entry:nth-of-type(even) {
	background-color: #e9e9e9;
}
.store-entry address {
	font-style: normal;
	font-size: 0.875rem;
	display: flex;
}
@media (max-width: 768px) {
	.store-entry address {
		flex-direction: column;
	}
}
.store-entry address span {
	margin-inline: 1.5rem;
	margin: 0;
}
.store-entry address span:first-child {
	width: 7em;
	margin: 0;
}
.store-entry address span:nth-child(2) {
	flex: 1;
	white-space: pre-wrap;
	overflow-wrap: anywhere;
}
.store-entry address span:last-child {
	width: 13em;
	margin: 0;
}
.store-entry h4 {
	margin: 0 0 0.5rem;
	font-size: 1rem;
}
.store-entry time {
	text-align: center;
}
.store-entry.alt {
	background: #f9f9f9;
}
.store-entry .store-info {
	font-size: 14px;
}
.store-info p {
	margin: 2px 0;
}
.bl_cont {
	margin-bottom: 5.3125rem;
	width: 100%;
	padding-inline: 5%;
	box-sizing: border-box;
}
@media (max-width: 768px) {
	.bl_cont {
		width: 90%;
		margin-inline: auto;
	}
}
.bl_shop-list-area {
	background: #fff;
	box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.16);
	padding-block: 2.5rem 1rem;
}
@media (max-width: 450px) {
	.bl_shop-list-area {
		box-shadow: none;
	}
}
.toggle-icon {
	display: none;
}
@media (max-width: 450px) {
	.store-detail {
		max-height: 0;
		overflow: hidden;
		transition: max-height 0.4s ease;
	}
	.store-toggle {
		cursor: pointer;
		display: flex;
		justify-content: space-between;
		align-items: center;
		background: #333;
		color: #fff;
		padding: 10px;
		font-weight: bold;
	}
	.store-toggle .toggle-icon {
		font-weight: bold;
		margin-left: 10px;
		display: block;
	}
}
.area-block.mf_mc {
	margin-inline: min(1.3020833333vw, 25px);
}
.area-block.mf_mc ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2rem;
}
@media (max-width: 768px) {
	.area-block.mf_mc ul {
		grid-template-columns: repeat(1, 1fr);
	}
}
@media (max-width: 450px) {
	.area-block.mf_mc ul {
		border: none;
		gap: 0.5rem;
	}
}
.area-block.mf_mc .store-entry {
	border: solid 1px #3d3938;
	padding: 0;
	box-sizing: border-box;
	display: block;
}
@media (max-width: 768px) {
	.area-block.mf_mc .store-entry {
		border: none;
		box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.16);
	}
}
.area-block.mf_mc .store-entry:nth-of-type(even) {
	background: none;
}
.area-block.mf_mc .store-entry h4 {
	background: #3d3938;
	color: #fff;
	padding: 1rem;
	font-size: 1.25rem;
}
@media (max-width: 450px) {
	.area-block.mf_mc .store-entry h4 {
		margin-bottom: 0;
		font-size: 1rem;
	}
}
.area-block.mf_mc .store-entry .mf_flex {
	display: flex;
	gap: 1rem;
	padding: 1.5rem;
	flex-direction: row-reverse;
	container-type: inline-size;
}
@media (max-width: 450px) {
	.area-block.mf_mc .store-entry .mf_flex {
		flex-direction: column-reverse;
	}
}
.area-block.mf_mc .store-entry .bl_txt-area {
	flex: 1;
}
.area-block.mf_mc .store-entry figure {
	width: min(19.1666666667vw, 230px);
	margin: 0;
}
@media (max-width: 450px) {
	.area-block.mf_mc .store-entry figure {
		max-width: 100%;
		width: 100%;
		aspect-ratio: 299/193;
	}
	.area-block.mf_mc .store-entry figure img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
}
.area-block.mf_mc .store-entry figure img {
	width: 100%;
}
.area-block.mf_mc .store-entry address {
	line-height: 1.6;
	font-size: 1rem;
	margin-bottom: 1.5em;
}
@media (max-width: 450px) {
	.area-block.mf_mc .store-entry address {
		font-size: 0.8125rem;
	}
}
.area-block.mf_mc .store-entry dl {
	margin-bottom: 1.5em;
}
.area-block.mf_mc .store-entry dl > div {
	display: flex;
	font-size: 1rem;
	margin-bottom: 0.5rem;
	line-height: 1.4;
}
@media (max-width: 450px) {
	.area-block.mf_mc .store-entry dl > div {
		font-size: 0.8125rem;
	}
}
.area-block.mf_mc .store-entry dl > div dt {
	width: 6em;
}
.area-block.mf_mc .bl_sns {
	gap: 1rem;
	display: flex;
	width: 100%;
}
.area-block.mf_mc .bl_sns li:last-child {
	flex: 1;
	text-align: right;
}
.bl_special.mf_mc {
	background: #ede5e2;
	margin-bottom: 8rem;
	box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.16);
}
@media (max-width: 450px) {
	.bl_special.mf_mc {
		margin-inline: 0;
		width: 100%;
		margin-bottom: 4rem;
	}
}
.bl_special.mf_mc h2 {
	background: #2a641c;
	align-items: center;
	padding: 0.75rem;
	color: #fff;
	margin-bottom: 0;
	padding-left: 2.5rem;
}
.bl_special.mf_mc h2 span {
	margin-right: 0;
	line-height: 1;
	padding-bottom: 0;
	margin-right: 1rem;
}
.bl_special.mf_mc h3 {
	margin: 2rem;
	font-size: 1.25rem;
	font-weight: bold;
	line-height: 1.5;
}
.bl_special.mf_mc ul {
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	gap: 2rem;
	padding: 3rem 2rem 3rem;
}
@media (max-width: 450px) {
	.bl_special.mf_mc ul {
		grid-template-columns: repeat(1, 1fr);
	}
}
.bl_special.mf_mc .special-entry {
	padding: 0;
	box-sizing: border-box;
	background: #fff;
	box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.16);
	display: block;
}
.bl_special.mf_mc .special-entry h4 {
	background: #3d3938;
	color: #fff;
	padding: 1rem;
	margin: 0;
	font-size: 1.25rem;
	text-align: center;
}
.bl_special.mf_mc .special-entry .mf_flex {
	display: flex;
	gap: 1rem;
	padding: 0 2rem min(60000vw, 30px);
	flex-direction: row-reverse;
	container-type: inline-size;
}
@media screen and (max-width: 1024px) {
	.bl_special.mf_mc .special-entry .mf_flex {
		flex-direction: column-reverse;
	}
}
.bl_special.mf_mc .special-entry .mf_flex .bl_txt-area {
	flex: 1;
}
.bl_special.mf_mc .special-entry .mf_flex .bl_txt-area p {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 13px;
	line-height: 1.6923076923;
	margin: 0;
}
.bl_special.mf_mc .special-entry .mf_flex .bl_txt-area p + p {
	margin-top: 1.5em;
}
.bl_special.mf_mc .special-entry .mf_flex.mf_column {
	flex-direction: column;
}
.bl_special.mf_mc .special-entry .mf_flex.mf_column div {
	text-align: center;
}
.bl_special.mf_mc .special-entry .mf_flex.mf_column figure {
	display: flex;
	justify-content: center;
	gap: 1rem;
	width: auto;
	max-width: 100%;
	margin-bottom: 0;
}
@media screen and (max-width: 1024px) {
	.bl_special.mf_mc .special-entry .mf_flex.mf_column figure {
		flex-wrap: wrap;
	}
	.bl_special.mf_mc .special-entry .mf_flex.mf_column figure img {
		width: 47%;
	}
}
.bl_special.mf_mc .special-entry .mf_flex.mf_column figure img {
	max-width: 165px;
}
.bl_special.mf_mc .special-entry figure {
	max-width: 165px;
	margin: 0;
	width: 100%;
}
.bl_special.mf_mc .special-entry figure figcaption {
	visibility: hidden;
	width: 0;
	display: none;
}
@media screen and (max-width: 1024px) {
	.bl_special.mf_mc .special-entry figure figcaption {
		visibility: visible;
		display: block;
		width: auto;
	}
}
.bl_special.mf_mc .special-entry figure img {
	width: 100%;
}
.bl_special.mf_mc .special-entry address {
	line-height: 1.6;
	font-size: 1rem;
	margin-bottom: 1.5em;
}
.bl_special.mf_mc .special-entry dl {
	margin-bottom: 1.5em;
}
.bl_special.mf_mc .special-entry dl > div {
	font-size: 0.8125rem;
	margin-bottom: 2em;
	line-height: 1.8;
}
.bl_special.mf_mc .bl_sns {
	gap: 1rem;
	display: flex;
	width: 100%;
}
.bl_special.mf_mc .bl_sns li:last-child {
	flex: 1;
	text-align: right;
}
.bl_special.mf_mc.mf_pop h2 {
	background: #002fae;
}
@media screen and (max-width: 1024px) {
	.bl_special.mf_mc .special-entry .bl_txt-area {
		display: none;
		opacity: 0;
		transition: opacity 0.4s ease;
	}
	.bl_special.mf_mc .special-entry .bl_txt-area.active {
		display: block;
		opacity: 1;
	}
	.bl_special.mf_mc .special-entry figure {
		cursor: pointer;
		width: fit-content;
		margin-inline: auto;
		margin-bottom: 2rem;
	}
	.bl_special.mf_mc .special-entry figure img {
		margin-bottom: 1rem;
	}
	.bl_special.mf_mc .special-entry figure figcaption {
		font-size: 0.8125rem;
		text-align: center;
	}
	.bl_special.mf_mc .special-entry figure figcaption.hidden {
		display: none;
	}
}
.mf_pop .area-block {
	margin: 0 min(1.3020833333vw, 25px) 2.5rem;
}
.mf_pop .table-head div:first-child {
	width: min(18.75vw, 360px);
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
	.mf_pop .table-head div:first-child {
		width: 50%;
		font-size: min(3.7333333333vw, 16px);
	}
}
.mf_pop .table-head div:last-child {
	flex: 1;
}
@media screen and (max-width: 768px) {
	.mf_pop .table-head div:last-child {
		font-size: min(3.7333333333vw, 16px);
	}
}
.mf_pop .store-entry {
	display: flex;
	padding-inline: min(2.0833333333vw, 40px);
	align-items: center;
}
.mf_pop .store-entry > span {
	width: min(16.6666666667vw, 320px);
	text-align: center;
}
@media screen and (max-width: 768px) {
	.mf_pop .store-entry > span {
		width: 50%;
	}
}
.mf_pop .store-entry .store-info {
	flex: 1;
	padding-left: min(3.125vw, 60px);
	box-sizing: border-box;
}
.mf_pop-event {
	position: relative;
}
.mf_pop-event:after {
	content: '';
	display: block;
	width: min(17.1875vw, 330px);
	height: min(27.65625vw, 531px);
	background: url(../images/obj_b.webp) no-repeat;
	position: absolute;
	background-size: contain;
	background-position: top left;
	left: 50%;
	top: 0;
	z-index: -1;
	position: absolute;
	left: 50%;
	transform: translateX(-50%) translateY(0%);
	width: 100vw;
	opacity: 1;
	transition: opacity 1s ease;
}
.mf_pop-event .area-block {
	margin: 0 min(1.3020833333vw, 25px) 2.5rem;
}
.mf_pop-event .table-head {
	display: flex;
}
.mf_pop-event .table-head div:first-child {
	width: min(18.75vw, 360px);
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
	.mf_pop-event .table-head div:first-child {
		width: 50%;
		font-size: min(3.7333333333vw, 16px);
	}
}
.mf_pop-event .table-head div:last-child {
	flex: 1;
}
@media screen and (max-width: 768px) {
	.mf_pop-event .table-head div:last-child {
		font-size: min(3.7333333333vw, 16px);
	}
}
.mf_pop-event .store-entry {
	display: flex;
	padding-inline: min(2.0833333333vw, 40px);
	align-items: center;
}
@media screen and (max-width: 768px) {
	.mf_pop-event .store-entry {
		gap: 1rem;
	}
}
.mf_pop-event .store-entry > span {
	width: min(16.6666666667vw, 320px);
	text-align: center;
}
@media screen and (max-width: 768px) {
	.mf_pop-event .store-entry > span {
		width: 50%;
		font-size: 0.8125rem;
	}
}
.mf_pop-event .store-entry .store-info {
	flex: 1;
	padding-left: min(3.125vw, 60px);
	box-sizing: border-box;
}
@media screen and (max-width: 768px) {
	.mf_pop-event .store-entry .store-info {
		padding-left: 0;
		width: 50%;
	}
}
.bl_shop-list.mf_mc .store-entry address {
	display: flex;
}
@media screen and (max-width: 768px) {
	.bl_shop-list.mf_mc .store-entry address {
		flex-direction: column;
	}
}
.bl_shop-list.mf_mc .store-entry address span {
	margin: 0;
}
.bl_shop-list.mf_mc .store-entry address span:first-child {
	width: 7em;
	margin: 0;
}
.bl_shop-list.mf_mc .store-entry address span:nth-child(2) {
	flex: 1;
}
.bl_shop-list.mf_mc .store-entry address span:last-child {
	width: 13em;
	margin: 0;
}
.bl_shop-list.mf_mc .area-tabs ul {
	margin-bottom: 0;
	border-bottom: 5px solid #3b993f;
}
@media screen and (max-width: 450px) {
	.bl_shop-list.mf_mc .area-tabs ul {
		gap: 0.5rem;
	}
}
.bl_shop-list.mf_mc .area-tabs ul li {
	background: #ede5e2;
}
.bl_shop-list.mf_mc .area-tabs ul li.active {
	background: #3b993f;
}
@media screen and (max-width: 450px) {
	.bl_shop-list.mf_mc .table-head,
	.bl_shop-list.mf_mc .store-entry {
		grid-template-columns: 1.5fr 2fr;
	}
	.bl_shop-list.mf_mc .store-entry time {
		font-size: 0.8125rem;
	}
	.bl_shop-list.mf_mc .store-entry address {
		font-size: 0.75rem;
		margin-block: 0.5rem;
	}
	.bl_shop-list.mf_mc .store-entry address span {
		display: block;
		margin: 0;
	}
	.bl_shop-list.mf_mc .store-entry address strong {
		font-weight: normal;
		font-size: 0.875rem;
	}
}
.mf_mt-mc {
	margin-top: 8rem;
}
.bl_shop-list.mf_mc.mf_pop {
	position: relative;
}
.bl_shop-list.mf_mc.mf_pop > h2 {
	scroll-margin-top: 120px;
}
@media screen and (max-width: 450px) {
	.bl_shop-list.mf_mc.mf_pop > h2 {
		scroll-margin-top: 80px;
	}
}
.bl_shop-list.mf_mc.mf_pop:after {
	content: '';
	display: block;
	width: clamp(100px, 17vw, 350px);
	height: min(21.875vw, 420px);
	background: url(../images/Alex.webp) no-repeat;
	position: absolute;
	background-size: contain;
	background-position: top center;
	top: 0;
	z-index: 10;
	position: absolute;
	right: 0;
	transform: translateX(0%) translateY(-40%);
	opacity: 1;
	transition: opacity 1s ease;
}
.bl_shop-list.mf_mc.mf_pop .store-entry:nth-of-type(even) {
	background-color: #ede5e2;
}
.bl_shop-list.mf_mc.mf_pop .area-tabs ul {
	border-bottom: 5px solid #002fae;
}
.bl_shop-list.mf_mc.mf_pop .area-tabs ul li.active {
	background: #002fae;
}
.bl_onlineshop {
	background: #ede5e2;
	width: 100%;
	max-width: 100%;
	margin-bottom: 0;
}
.bl_onlineshop .el_inner {
	width: 90%;
	max-width: 1200px;
	margin-inline: auto;
	padding-top: 8rem;
}
.bl_onlineshop figure {
	margin: 6rem auto 0;
	text-align: center;
}
@media screen and (max-width: 450px) {
	.bl_onlineshop .el_inner {
		padding-top: 2rem;
	}
	.bl_onlineshop figure {
		margin-top: 2rem;
	}
	.bl_onlineshop img {
		width: 100%;
	}
}
.page-id-52 footer {
	padding: 0;
}
.page-id-52 footer .bl_wrapper {
	padding-top: 5rem;
	background: #ede5e2;
	width: 100%;
	max-width: 1920px;
	margin-inline: auto;
	padding-bottom: 8rem;
}
.page-id-52 footer small {
	padding: 0;
}
.page-id-52 footer span {
	display: block;
	padding: 1rem;
}
.page-id-52 footer span.mf_bcg-b {
	background: #000;
}
.page-id-52 footer:after {
	content: '';
	display: block;
	width: min(21.9791666667vw, 422px);
	height: min(26.875vw, 516px);
	background: url(../images/Enderman.webp) no-repeat;
	position: absolute;
	background-size: contain;
	background-position: top center;
	top: auto;
	bottom: 8rem;
	z-index: 10;
	position: absolute;
	right: 90px;
	transform: translateX(-0%) translateY(0%);
	opacity: 1;
	transition: opacity 1s ease;
}
@media screen and (max-width: 768px) {
	.page-id-52 footer {
		padding-top: 0;
		background: #ede5e2;
	}
	.page-id-52 footer .bl_wrapper {
		padding-bottom: 1rem;
	}
}

@media screen and (max-width: 450px) {
	.page-id-52 footer {
		padding-top: 0;
		background: #ede5e2;
	}
	.page-id-52 footer small {
		/*margin-top: 4rem;*/
	}
	.page-id-52 footer span {
		display: block;
		padding: 1rem;
	}
	.page-id-52 footer span.mf_bcg-b {
		background: #000;
		text-align: left;
		line-height: 1.6;
	}
}

.page-id-52 main {
	max-width: 1920px;
	margin-left: calc(50% - 960px);
	width: 100vw;
	margin-inline: auto;
	box-sizing: border-box;
}
@media (max-width: 768px) {
	.page-id-52 main {
		width: 100%;
	}
}
.page-id-52 .bl_mv {
	position: relative;
}
.page-id-52 .bl_mv:after {
	display: none;
}
@media (max-width: 768px) {
	.page-id-52 .bl_mv {
		width: 100%;
	}
	.page-id-52 .bl_mv img {
		width: 100%;
	}
}
.page-id-52 .bl_brn01 {
	position: absolute;
	bottom: 6.6666666667vw;
	left: 50%;
	transform: translateX(-50%);
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
	width: calc(500 / 1920 * 100vw);
	max-width: 500px;
}
@media (max-width: 768px) {
	.page-id-52 .bl_brn01 {
		width: 80%;
	}
}
.page-id-52 .bl_item-list li {
	background: #6b6562;
	color: #fff;
}
.page-id-52 .bl_item-list li a {
	color: #fff;
}
.page-id-52 .bl_item-list li h3 {
	margin: 1em;
}
@media (max-width: 450px) {
	.page-id-52 .bl_item-list li h3 {
		margin-left: 38.9333333333vw;
	}
}
.page-id-52 .bl_item-list li .bl_note {
	margin: 1rem 1em 0;
}
@media (max-width: 450px) {
	.page-id-52 .bl_item-list li .bl_note {
		margin-left: 38.9333333333vw;
	}
}
.page-id-52 .bl_top-event {
	position: relative;
	margin-bottom: 5.625rem;
}
@media (max-width: 768px) {
	.page-id-52 .bl_top-event {
		margin-bottom: 5vw;
	}
}
.page-id-52 .bl_top-event:after {
	content: '';
	display: block;
	width: min(10.46875vw, 201px);
	height: min(13.2291666667vw, 254px);
	background: url(../images/Creeper2.webp) no-repeat;
	position: absolute;
	background-size: contain;
	background-position: top center;
	top: auto;
	bottom: 0;
	z-index: 10;
	position: absolute;
	right: 0;
	transform: translateX(110%) translateY(30%);
	opacity: 1;
	transition: opacity 1s ease;
	left: auto;
}

@media (max-width: 1800px) {
	.page-id-52 .bl_top-event:after {
		transform: translateX(90%) translateY(100%);
	}

	.page-id-52 .bl_top-event {
		margin-bottom: 18rem;
	}
}

@media (max-width: 1700px) {
	.page-id-52 .bl_top-event:after {
		width: min(8vw, 201px);
		transform: translateX(0%) translateY(150%);
		right: 30px;
	}
}

@media (max-width: 1440px) {
	.page-id-52 .bl_top-event:after,
	.bl_shop-list.mf_mc.mf_pop:after,
	.page-id-52 footer:after {
		display: none;
	}
	.page-id-52 .bl_top-event {
		margin-bottom: 10vw;
	}
}
.page-id-52 .mf_bcg-01 {
	padding-bottom: 5.625rem;
	position: relative;
}
@media (max-width: 768px) {
	.page-id-52 .mf_bcg-01 {
		padding-bottom: 0;
	}
}
.page-id-52 .bl_concept {
	background: url(../images/haikei_mc01.webp) no-repeat;
	background-size: cover;
	background-position: right 80px top;
	padding-top: 1px;
	max-width: 100%;
	width: 100%;
	margin-top: 0;
}
@media (max-width: 768px) {
	.page-id-52 .bl_concept {
		background: url(../images/haikei_mc01_mob.webp) no-repeat;
		background-position: right top;
		background-size: cover;
	}
	.page-id-52 .bl_concept h2 span img {
		height: 9.3333333333vw;
	}
}
.page-id-52 .bl_concept .el_inner {
	width: 90%;
	max-width: 1200px;
	margin: 3rem auto;
	color: #fff;
	padding: 5rem 0;
	position: relative;
}
.page-id-52 .bl_concept .el_inner:after {
	content: '';
	display: block;
	width: min(11.3541666667vw, 218px);
	height: min(17.9166666667vw, 344px);
	background: url(../images/Steve2.webp) no-repeat;
	position: absolute;
	background-size: contain;
	background-position: top center;
	top: auto;
	bottom: 0;
	z-index: 10;
	left: 0;
	position: absolute;
	transform: translateX(0) translateY(40%);
	opacity: 1;
	transition: opacity 1s ease;
	left: auto;
	display: none;
}
.page-id-52 .bl_concept .bl_flex {
	display: flex;
	justify-content: space-between;
	gap: 1.5rem;
}
@media (max-width: 768px) {
	.page-id-52 .bl_concept .bl_flex {
		flex-direction: column;
	}
}
.page-id-52 .bl_concept figure {
	display: flex;
	flex-direction: column;
	gap: 1.5rem;
}
@media (max-width: 768px) {
	.page-id-52 .bl_concept figure {
		margin: auto;
		justify-content: center;
		align-items: center;
	}
	.page-id-52 .bl_concept figure img {
		width: 100%;
		height: auto;
	}
}
.page-id-52 .bl_concept .bl_txt-area {
	max-width: 580px;
	line-height: 2;
}
@media (max-width: 768px) {
	.page-id-52 .bl_concept .bl_txt-area {
		max-width: 100%;
	}
}
.bl_brn-fix {
	position: fixed;
	right: max(2rem, (100vw - 1920px)/2 + 1rem);
	bottom: 2rem;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	z-index: 100;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(8px);
	transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
}
@media (max-width: 768px) {
	.bl_brn-fix {
		gap: 0;
	}
	.bl_brn-fix img {
		width: 16vw;
		height: 16vw;
	}
}
@media (max-width: 768px) {
	.bl_brn-fix {
		gap: 0;
	}
	.bl_brn-fix img {
		width: 16vw;
		height: 16vw;
	}
}
.bl_brn-fix.is-visible {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
@media (prefers-reduced-motion: reduce) {
	.bl_brn-fix {
		transition: none;
	}
}
.gra-select .bl_concept {
	margin-top: 6rem;
}
@media (max-width: 768px) {
	.gra-select .bl_concept figure {
		width: 70%;
		margin-inline: auto;
		margin-top: 0;
		margin-bottom: 4rem;
	}
	.gra-select .bl_concept figure img {
		width: 100%;
		height: auto;
	}
	.gra-select .bl_concept .bl_flex {
		gap: 0.5rem;
    flex-direction: column;
	}
}
.gra-select .bl_flex {
	display: flex;
	justify-content: space-between;
	gap: 3rem;
}
@media (max-width: 450px) {
	.gra-select .bl_flex {
		flex-direction: column;
	}
}
.gra-select .bl_flex p {
	max-width: 580px;
	line-height: 2;
}
.gra-select .bl_shop-list .bl_flex {
	flex-direction: row-reverse;
	justify-content: flex-end;
	gap: 3rem;
	font-family: 'M PLUS 1', 'Montserrat', sans-serif;
}
@media (max-width: 768px) {
	.gra-select .bl_shop-list .bl_flex {
		flex-direction: column;
	}
	.gra-select .bl_shop-list .bl_flex img {
		width: 100%;
	}
}
.gra-select .bl_shop-list h3 {
	font-size: 1.25rem;
	font-weight: normal;
}
.gra-select .bl_shop-list dl div {
	display: flex;
	line-height: 1.25;
	margin-bottom: 0.5em;
}
.gra-select .bl_shop-list dt {
	width: 6em;
}
.bl_cate-list {
	display: flex;
  flex-wrap: wrap;
	gap: 1rem;
}
@media (max-width: 450px) {
	.bl_cate-list {
		flex-wrap: wrap;
	}
}
.bl_cate-list li {
	width: fit-content;
	text-align: center;
	line-height: 1;
	padding: 0.75em 1em;
	background: #e9e9e9;
	border-radius: 30px;
}
.bl_cate-list li.mf_current {
	background: #3d3938;
}
.bl_cate-list li.mf_current a {
	color: #fff;
}
.el_list-ttl {
	font-size: 1.5rem;
	margin-block: 1.5em 1em;
	line-height: 1;
	border-left: solid 4px #a82931;
	padding-left: 0.5rem;
}
.bl_paging {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 0.5rem;
	margin-top: 8rem;
}
.bl_paging li {
	width: 50px;
	height: 50px;
	border: solid 1px #ccc;
	border-radius: 4px;
}
.bl_paging li span {
	display: block;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.bl_paging li a {
	display: block;
	width: 100%;
	height: 100%;
	color: #a82931;
	display: flex;
	justify-content: center;
	align-items: center;
}
.bl_paging li.mf_current a {
	background: #a82931;
	color: #fff;
}
.bl_news {
	position: relative;
}
.bl_news:after {
	content: '';
	display: block;
	width: 20.8333333333vw;
	height: 32.7083333333vw;
	background: url(../images/obj_a.webp) no-repeat;
	background-size: contain;
	background-position: top right;
	position: absolute;
	right: -60px;
	top: 0;
	transform: translateY(-30%);
	z-index: -1;
}
.el_day.holiday {
	color: red !important;
}
.bl_news-note {
	display: flex;
	gap: 6rem;
}
.bl_news-note article {
	flex: 1;
	word-break: break-word;
	max-width: 820px;
}

@media (max-width: 768px) {
	.bl_news-note {
		flex-direction: column;
	}
}
.bl_news-note h1 {
	font-size: 1.5rem;
}
.bl_news-note .bl_news-note-head {
	display: flex;
	flex-direction: column-reverse;
	position: relative;
}
.bl_news-note .bl_news-note-head .bl_sns-list {
	position: absolute;
	display: flex;
	gap: 0.5rem;
	right: 0;
	top: 0;
}
.bl_news-note .bl_news-note-head .bl_sns-list img {
	width: 35px;
	height: 35px;
}
.bl_news-note .bl_news-note-head .bl_note {
	font-size: 1rem;
	margin-bottom: 3rem;
}
.bl_news-note .bl_news-note-head .bl_note span {
	color: #fff;
	padding: 0.25em 1.5em;
	font-size: 0.875rem;
	margin-right: 1rem;
}
.bl_news-note .bl_news-note-head .bl_note span a {
	color: #fff;
}
.bl_news-note figure.el_mv img {
	width: 100%;
	height: auto;
}
.bl_news-note p {
	line-height: 1.8;
}
.bl_news-note h2 {
	font-size: 1.3rem;
}
.bl_news-note .bl_btn-news-list a {
	width: fit-content;
	display: flex;
	height: 50px;
	align-items: center;
	font-weight: bold;
	color: #fff;
	padding-inline: 3em;
	background: #a82931;
	border-radius: 30px;
	margin-inline: auto;
	margin-top: 5rem;
	position: relative;
}
.bl_news-note .bl_btn-news-list a:after {
	content: '';
	width: 9px;
	height: 14px;
	background: url(../images/Icon-ArrowRight-Small.svg) no-repeat;
	background-size: contain;
	position: absolute;
	right: 1rem;
	transition: 0.5s;
}
.bl_event-note {
	display: flex;
	gap: 6rem;
}
.bl_event-note article {
	flex: 1;
}
.bl_event-note article dt {
	background: #000;
	color: #fff;
	font-size: 1rem;
	text-align: center;
	line-height: 1.875;
}
.bl_event-note article dd {
	font-size: 1.25rem;
	padding: min(1.1458333333vw, 22px);
	text-align: center;
}
@media (max-width: 768px) {
	.bl_event-note {
		flex-direction: column;
	}
}
.bl_event-note h1 {
	font-size: 1.5rem;
}
.bl_event-note .bl_event-note-head {
	display: flex;
	flex-direction: column-reverse;
	position: relative;
}
.bl_event-note .bl_event-note-head .bl_sns-list {
	position: absolute;
	display: flex;
	gap: 0.5rem;
	right: 0;
	top: 0;
}
.bl_event-note .bl_event-note-head .bl_sns-list img {
	width: 35px;
	height: 35px;
}
.bl_event-note .bl_event-note-head .bl_note {
	font-size: 1rem;
	margin-bottom: 3rem;
}
.bl_event-note .bl_event-note-head .bl_note span {
	color: #fff;
	padding: 0.25em 1.5em;
	font-size: 0.875rem;
	margin-right: 1rem;
}
@media (max-width: 768px) {
	.bl_event-note .bl_event-note-head .bl_note span {
		display: block;
		width: fit-content;
	}
}
.bl_event-note .bl_event-note-head .bl_note span a {
	color: #fff;
}
.bl_event-note figure.el_mv img {
	width: 100%;
	height: auto;
}
.bl_event-note p {
	line-height: 1.8;
}
.bl_event-note h2 {
	font-size: 1.3rem;
}
.bl_event-note .bl_btn-event-list a {
	width: fit-content;
	display: flex;
	height: 50px;
	align-items: center;
	font-weight: bold;
	color: #fff;
	padding-inline: 3em;
	background: #a82931;
	border-radius: 30px;
	margin-inline: auto;
	margin-top: 5rem;
	position: relative;
}
.bl_event-note .bl_btn-event-list a:after {
	content: '';
	width: 9px;
	height: 14px;
	background: url(../images/Icon-ArrowRight-Small.svg) no-repeat;
	background-size: contain;
	position: absolute;
	right: 1rem;
	transition: 0.5s;
}
aside .bl_item-list {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: min(1.5625vw, 30px);
	max-width: 285px;
}
@media (max-width: 768px) {
	aside .bl_item-list {
		grid-template-columns: repeat(2, 1fr);
		max-width: 100%;
	}
}
@media (max-width: 450px) {
	aside .bl_item-list {
		grid-template-columns: repeat(1, 1fr);
	}
}
aside .bl_item-list .bl_note {
	margin-top: 0.75em;
}
.bl_search01,
.bl_search02 {
	margin-bottom: 2rem;
	z-index: 100;
	position: relative;
}
.mf_fix01 {
	position: relative;
	z-index: 1000;
}
.mf_fix01.is-fixed {
	position: fixed;
	top: 120px;
	left: 0;
	right: 0;
	z-index: 1000;
	background: hsla(0, 0%, 100%, 0.8);
}
.mf_fix01.is-fixed .bl_search02 {
	width: 90%;
	max-width: 1200px;
	margin: 1rem auto;
}
@media (max-width: 768px) {
	.mf_fix01.is-fixed .bl_search02 {
		width: auto;
	}
}

.bl_search01 label,
.bl_search02 label {
	margin-bottom: 0.5rem;
	font-size: 1.25rem;
	margin-right: min(4.1666666667vw, 80px);
}
.bl_search02 label {
	display: block;
}
.bl_search01 input[type='text'],
.modal-content input[type='text'] {
	width: 100%;
	max-width: 360px;
	padding: 0.5rem 1rem;
	font-size: 1rem;
	border: 1px solid #ccc;
	border-radius: 6px;
	outline: none;
	transition: border-color 0.3s;
}
.bl_search01 input[type='text']:focus {
	border-color: #333;
}
.bl_search01 .search-field {
	position: relative;
	display: inline-block;
	width: min(18.75vw, 360px);
	line-height: 3;
}
@media (max-width: 768px) {
	.bl_search01 .search-field {
		display: block;
		width: 70vw;
		margin-top: 0.5rem;
	}
}
.bl_search01 input {
	width: 100%;
	height: 44px;
	padding-right: 44px;
	box-sizing: border-box;
}
.bl_search01 .search-icon {
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	width: 28px;
	height: 28px;
	display: grid;
	place-items: center;
	border: 0;
	padding: 0;
	background: rgba(0, 0, 0, 0);
	cursor: pointer;
}
.bl_search01 .search-icon img {
	display: block;
	width: 20px;
	height: 20px;
}
.bl_search02 button {
	display: inline-block;
	width: 40px;
	height: 40px;
	margin: 10px;
	font-size: 1rem;
	line-height: 40px;
	text-align: center;
	border: none;
	border-radius: 50%;
	background: #e0e0e0;
	color: #000;
	cursor: pointer;
	transition: all 0.2s ease-in-out;
}
.bl_search02 button.mf_subete {
	width: 6rem;
	border-radius: 20px;
}
.bl_search02 button:hover {
	background: #ccc;
}
.bl_search02 button.active {
	background: #333;
	color: #fff;
}
@media (max-width: 768px) {
	.bl_search02 {
		position: fixed;
		right: 0;
		display: flex;
		flex-direction: column;
		width: fit-content;
		bottom: 5px;
		gap: 0;
		background: hsla(0, 0%, 100%, 0.5);
	}
	.bl_search02 label {
		display: none;
	}
	.bl_search02 button {
		width: 30px;
		height: 30px;
		margin: 5px;
		font-size: 1rem;
		line-height: 30px;
		text-align: center;
		border: none;
		border-radius: 50%;
		background: #e0e0e0;
		color: #000;
		cursor: pointer;
		transition: all 0.2s ease-in-out;
	}
}
.bl_goods-cate-item-list {
	margin-top: 4rem;
	padding-bottom: 3rem;
}
@media (max-width: 768px) {
	.bl_goods-cate-item-list > div {
		margin-bottom: 2rem;
	}
}
.bl_goods-cate-item-list dt {
	font-size: 1.5rem;
	margin-block: 2rem 1rem;
}
@media (max-width: 768px) {
	.bl_goods-cate-item-list dt {
		font-size: min(1.2em, 24px);
		font-weight: bold;
		margin-block: 2rem 0.5rem;
	}
}
.bl_goods-cate-item-list dd ul {
	display: flex;
	flex-wrap: wrap;
	gap: 1.2rem;
}
@media (max-width: 768px) {
	.bl_goods-cate-item-list dd ul {
		justify-content: center;
	}
}
.bl_goods-cate-item-list dd li {
	max-width: 285px;
	width: 100%;
}
.bl_goods-cate-item-list dd a {
	display: flex;
	flex-direction: column-reverse;
}
.bl_goods-cate-item-list dd img {
	width: 100%;
	max-width: 285px;
	height: 100%;
	max-height: 122px;
	object-fit: cover;
	margin-bottom: 0.5rem;
}
.bl_goods-list-parts {
	position: relative;
}
.bl_goods-list-parts .background-band-bnr {
	position: absolute;
	bottom: 0;
	right: 0%;
	transform: translateX(100%) scaleX(0);
	width: calc(100vw - 60px);
	height: calc(100% - 10rem);
	z-index: -1;
	background: linear-gradient(to right, #fff6e8 0%, #ffeef2 33%, #f0e4f7 66%, #e5e9fa 100%);
	pointer-events: none;
	border-radius: 20px 0 0 20px;
	transform-origin: right;
	transition: transform 1s ease;
}
.bl_goods-list-parts .background-band-bnr {
	transform: translateX(24vw) scaleX(1);
}
.bl_goods-list #slider-cate {
	width: 100%;
	overflow: hidden;
	margin: 0 auto;
}
.bl_goods-list #slider {
	width: 100%;
	max-width: 100%;
	overflow: visible;
	position: relative;
	padding: 0 10vw;
	box-sizing: border-box;
}
.bl_goods-list #slides {
	display: flex;
	transition: transform 0.5s ease;
}
.bl_goods-list #slides > div {
	flex: 0 0 80%;
	margin: 0 10px;
	box-sizing: border-box;
	overflow: hidden;
}
.bl_goods-list #slides img {
	width: 100%;
	height: auto;
	display: block;
}
.bl_goods-list .slider-dots {
	text-align: center;
	margin-top: 1rem;
}
@media (max-width: 768px) {
	.bl_goods-list #slider {
		padding: 0;
		overflow: hidden;
	}
	.bl_goods-list #slides {
		gap: 0;
	}
	.bl_goods-list #slides > div {
		flex: 0 0 100%;
		margin: 0;
	}
}
.bl_rec .bl_inner {
	max-width: 1000px;
	margin-inline: auto;
}
@media (max-width: 768px) {
	.bl_rec .bl_inner {
		margin-left: 0;
	}
}
.bl_rec table {
	border-collapse: collapse;
}
.bl_rec h3 {
	font-size: 1.5rem;
}
.bl_rec th {
	font-size: 1rem;
	width: 20%;
	vertical-align: top;
	padding-block: 0.5rem;
	border-top: solid 1px #3d3938;
	text-align: left;
	border-bottom: solid 1px #3d3938;
	line-height: 2;
}
@media (max-width: 450px) {
	.bl_rec th {
		display: block;
		border-top: 0;
		border-bottom: 0;
	}
}
.bl_rec td {
	padding-block: 0.5rem;
	border-top: solid 1px #3d3938;
	line-height: 2;
	border-bottom: solid 1px #3d3938;
}
@media (max-width: 450px) {
	.bl_rec td {
		display: block;
	}
}
.recruit-form {
	max-width: 1000px;
	margin-inline: auto;
}
@media (max-width: 768px) {
	.recruit-form {
		margin-left: 0;
	}
}
.recruit-form input[type='text'],
.recruit-form input[type='email'],
.recruit-form input[type='tel'],
.recruit-form select {
	padding: 1rem;
	border-radius: 5px;
	border: solid 1px #3d3938;
	width: 100%;
	box-sizing: border-box;
}
.recruit-form .mf_name {
	max-width: 350px;
}
@media (max-width: 768px) {
	.recruit-form .mf_name {
		max-width: 100%;
	}
}
.recruit-form .mf_age select {
	width: 25%;
}
@media (max-width: 450px) {
	.recruit-form .mf_age select {
		width: 22%;
		padding: 1rem 0.5rem;
	}
}
.recruit-form textarea {
	min-height: 15rem;
	width: 100%;
	box-sizing: border-box;
	border-radius: 5px;
}
.recruit-form .form-row {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
	margin-bottom: 1.5em;
}
@media (max-width: 768px) {
	.recruit-form .form-row {
		flex-direction: column;
	}
}
.recruit-form .form-label {
	width: 30%;
	padding-right: 1em;
	font-weight: bold;
	position: relative;
	box-sizing: border-box;
}
@media (max-width: 768px) {
	.recruit-form .form-label {
		width: 100%;
	}
}
.recruit-form .form-label p {
	max-width: 235px;
	display: flex;
	align-items: center;
}
.recruit-form .form-label .required {
	display: inline-block;
	background: #a32222;
	color: #fff;
	font-size: 12px;
	padding: 2px 6px;
	margin-left: 0.5em;
	border-radius: 3px;
}
.recruit-form .form-control {
	width: 70%;
	box-sizing: border-box;
}
@media (max-width: 768px) {
	.recruit-form .form-control {
		width: 100%;
	}
}
.recruit-form .form-row:last-child .form-control {
	margin-inline: auto;
}
@media (max-width: 768px) {
	.recruit-form .form-row:last-child .form-control {
		width: 100%;
	}
}
.recruit-form .form-control select {
	margin-right: 0.5em;
	width: 6rem;
}
@media (max-width: 768px) {
	.recruit-form .form-control select {
		width: fit-content;
	}
}
.recruit-form .form-control .wpcf7-list-item {
	display: inline-block;
	margin-right: 1em;
}
.recruit-form textarea {
	height: 150px;
}
.recruit-form .wpcf7-submit {
	display: block;
	background: #a82931;
	border-radius: 25px;
	width: 100%;
	height: 100%;
	color: #fff;
	font-size: 0.875rem;
	display: flex;
	justify-content: center;
	align-items: center;
	font-weight: 700;
	position: relative;
	line-height: 1;
	width: 235px;
	height: 50px;
	margin-inline: auto;
	border: none;
}
.recruit-form .wpcf7-submit:hover {
	background: #7a1a1a;
}
.recruit-form input[type='file'] {
	margin-top: 0.5em;
}
.bl_about-granup .bl_mv.mf_w-100 {
	margin: 4rem 0;
	text-align: center;
}
.bl_about-granup .bl_mv.mf_w-100:after {
	display: none;
}
.bl_about-granup .bl_mv.mf_w-100 img {
	width: auto;
}
.bl_about-granup .bl_inner {
	margin-inline: auto;
	max-width: 1000px;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_inner {
		margin-left: 0;
	}
}
.bl_about-granup .bl_about {
	margin-bottom: 6rem;
}
.bl_about-granup .bl_about .bl_inner {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
}
.bl_about-granup .bl_about .bl_inner figure {
	max-width: 380px;
}
.bl_about-granup .bl_about .bl_inner figure img {
	width: 100%;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_about .bl_inner {
		flex-direction: column;
	}
	.bl_about-granup .bl_about .bl_inner figure {
		text-align: center;
		margin-inline: auto;
	}
}
.bl_about-granup .bl_about .bl_inner dl {
	max-width: 480px;
	line-height: 2;
	margin-top: 3rem;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_about .bl_inner dl {
		max-width: 100%;
	}
}
.bl_about-granup .bl_about .bl_inner dl .mf_fs-24 {
	font-size: 1.5rem;
	margin-bottom: 3em;
}
.bl_about-granup .bl_about .bl_inner dl .mf_name {
	font-size: 1.25rem;
	display: block;
	margin-top: 3em;
	text-align: right;
}
.bl_about-granup .bl_business {
	margin-bottom: 6rem;
}
.bl_about-granup .bl_business ul {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: min(2.34375vw, 45px);
	grid-auto-rows: auto auto 1fr;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_business ul {
		grid-template-columns: repeat(1, minmax(0, 1fr));
		gap: min(5.859375vw, 45px);
	}
}
.bl_about-granup .bl_business ul li {
	display: grid;
	grid-template-rows: subgrid;
	grid-row: span 3;
	max-width: 370px;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_business ul li {
		max-width: 100%;
	}
}
.bl_about-granup .bl_business ul li figure {
	text-align: center;
	margin: 0;
	grid-row: 1;
	text-align: center;
	margin: 0;
}
.bl_about-granup .bl_business ul li figure img {
	/*width: min(16.5625vw, 318px);*/
  width:100%;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_business ul li figure img {
		width: 90%;
	}
}
.bl_about-granup .bl_business ul li h3 {
	text-align: center;
	font-weight: normal;
	margin-block: 0;
	font-size: 20px;
	grid-row: 2;
	display: flex;
	justify-content: center;
	align-items: center;
}
.bl_about-granup .bl_business ul li p {
	flex: 1;
	display: block;
	grid-row: 3;
	margin: 0;
	line-height: 1.6;
}
.bl_about-granup .bl_flex {
	display: flex;
	justify-content: space-between;
	gap: 3rem;
}
@media (max-width: 450px) {
	.bl_about-granup .bl_flex {
		flex-direction: column;
	}
}
.bl_about-granup .bl_flex p {
	max-width: 580px;
	line-height: 2;
}
.bl_about-granup .bl_item-list h3 {
	font-size: 1rem;
}
.bl_about-granup .bl_shop-list {
	margin-top: 6rem;
}
.bl_about-granup .bl_shop-list .bl_flex {
	flex-direction: row-reverse;
	justify-content: flex-end;
	margin-inline: auto;
	gap: 3rem;
	max-width: 1000px;
}
.bl_about-granup .bl_shop-list .bl_flex figure {
	width: min(31.25vw, 382px);
}
.bl_about-granup .bl_shop-list .bl_flex figure img {
	width: 100%;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_shop-list .bl_flex {
		flex-direction: column-reverse;
		width: 100%;
		gap: 0;
		margin-bottom: 3rem;
	}
	.bl_about-granup .bl_shop-list .bl_flex figure {
		width: 100%;
	}
	.bl_about-granup .bl_shop-list .bl_flex figure img {
		width: 100%;
	}
}
.bl_about-granup .bl_shop-list h3 {
	font-size: 1.875rem;
	font-family: 'M PLUS 1', 'Montserrat', sans-serif;
	margin-inline: auto;
	max-width: 1000px;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_shop-list h3 {
		text-align: center;
		margin-bottom: 1rem;
	}
}
.bl_about-granup .bl_shop-list dl div {
	display: flex;
	line-height: 1.25;
	margin-bottom: 0.5em;
}
@media (max-width: 570px) {
	.bl_about-granup .bl_shop-list dl div {
		flex-direction: column;
		gap: 0.25rem;
		margin-bottom: 1rem;
	}
}
.bl_about-granup .bl_shop-list dt {
	width: 6em;
}
.bl_about-granup .bl_shop-list .bl_txt-area {
	flex: 1;
}
.bl_about-granup .bl_shop-list .bl_txt-area ul {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
	margin-inline: auto;
}
@media (max-width: 530px) {
	.bl_about-granup .bl_shop-list .bl_txt-area ul {
		justify-content: center;
		flex-direction: column;
		width: fit-content;
	}
}
.bl_about-granup .bl_shop-list .bl_txt-area ul li {
	width: 40%;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_shop-list .bl_txt-area ul li {
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: bold;
	}
}
@media (max-width: 530px) {
	.bl_about-granup .bl_shop-list .bl_txt-area ul li {
		width: fit-content;
	}
}
.bl_about-granup .bl_btn01 {
	width: 100%;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	gap: 2rem;
	align-items: center;
	height: auto;
}
@media (max-width: 530px) {
	.bl_about-granup .bl_btn01 {
		gap: 1rem;
		justify-content: center;
		margin-top: 1em;
	}
	.bl_about-granup .bl_btn01 span {
		display: none;
	}
}
.bl_about-granup .bl_btn01 a {
	width: fit-content;
	padding-inline: 3rem;
	height: 50px;
}
.bl_about-granup table {
	border-collapse: collapse;
	width: 100%;
}
.bl_about-granup h3 {
	font-size: 1.5rem;
}
.bl_about-granup th {
	font-size: 1rem;
	width: 20%;
	vertical-align: top;
	padding-block: 0.5rem;
	text-align: left;
	line-height: 2;
}
@media (max-width: 530px) {
	.bl_about-granup th {
		display: block;
		width: 100%;
		padding-bottom: 0;
	}
}
.bl_about-granup td {
	padding-block: 0.5rem;
	line-height: 2;
}
@media (max-width: 530px) {
	.bl_about-granup td {
		display: block;
		padding-top: 0;
	}
}
.bl_about-granup .el_map {
	margin-inline: auto;
	margin-top: 5rem;
	max-width: 1000px;
	box-sizing: border-box;
	display: block;
}
.bl_about-granup .el_map iframe {
	width: 100%;
}
@media (max-width: 768px) {
	.bl_about-granup .el_map iframe {
		height: 100%;
	}
}
@media (max-width: 768px) {
	.bl_about-granup .el_map {
		margin-left: 0;
		width: 100%;
		height: 70vw;
	}
}
.bl_about-granup .bl_recruit {
	margin-top: 6rem;
}
.bl_about-granup .bl_recruit .bl_inner {
	display: flex;
	gap: min(7.2916666667vw, 139px);
}
.bl_about-granup .bl_recruit .bl_inner figure {
	width: min(31.25vw, 382px);
}
.bl_about-granup .bl_recruit .bl_inner figure img {
	width: 100%;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_recruit .bl_inner {
		flex-direction: column;
		width: 100%;
	}
	.bl_about-granup .bl_recruit .bl_inner figure {
		width: 100%;
	}
	.bl_about-granup .bl_recruit .bl_inner figure img {
		width: 100%;
	}
}
.bl_about-granup .bl_recruit dl {
	max-width: 480px;
	line-height: 2;
	margin-top: 3rem;
}
@media (max-width: 768px) {
	.bl_about-granup .bl_recruit dl {
		max-width: 100%;
	}
}
.bl_about-granup .bl_recruit dt {
	font-size: 1.25rem;
	font-weight: bold;
	margin-bottom: 2em;
}
.bl_about-granup .bl_corp {
	margin-top: 6rem;
}
.bl_privacy {
	line-height: 2;
}
.bl_privacy h3 {
	margin-top: 5rem;
	margin-bottom: 2rem;
	font-weight: normal;
	font-size: 1.25rem;
}
.bl_privacy .bl_inner {
	max-width: 1000px;
	margin-inline: auto;
}
@media (max-width: 768px) {
	.bl_privacy .bl_inner {
		margin-left: 0;
	}
}
.bl_sietmap .bl_inner {
	max-width: 1000px;
	margin-inline: auto;
}
@media (max-width: 768px) {
	.bl_sietmap .bl_inner {
		margin-left: 0;
	}
}
.bl_sietmap h3.el_list-ttl {
	display: flex;
	flex-direction: row-reverse;
	justify-content: flex-end;
	font-size: 1rem;
	font-weight: normal;
	margin-top: 4rem;
	align-items: flex-end;
}

.bl_sietmap h3.el_list-ttl.mf_txt-long span {
	width: 5em;
}
.bl_sietmap h3.el_list-ttl span {
	font-size: 1.5rem;
	line-height: 1;
	font-weight: bold;
	margin-right: 1rem;
}
.bl_sietmap ul {
	display: flex;
	gap: 2em 5rem;
	margin-left: 3rem;
	margin-block: 3rem;
	flex-wrap: wrap;
}
@media (max-width: 450px) {
	.bl_sietmap ul {
		flex-direction: column;
		gap: 1rem;
		margin-top: 1.5rem;
	}
}
.bl_sietmap ul a {
	color: #0066c0;
}
.modal-container {
	display: none;
	position: fixed;
	z-index: 9999;
	inset: 0;
	background-color: rgba(0, 0, 0, 0.6);
	overflow-y: auto;
}
.modal-container.active {
	display: block;
}
.modal-body {
	background: #fff;
	margin: 60px auto;
	max-width: 800px;
	padding: 2rem;
	position: relative;
}
.modal-close {
	position: absolute;
	top: 10px;
	right: 15px;
	font-size: 1.5rem;
	cursor: pointer;
}
.sakuin-banner {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}
.sakuin-banner li {
	width: 45%;
	display: flex;
}
.sakuin-banner li:before {
	content: '■';
}
.bl_goods-cate-item-list dd li,
.bl_goods-cate-item-list > div {
	scroll-margin-top: 120px;
}
@media (max-width: 768px) {
	.bl_goods-cate-item-list dd li,
	.bl_goods-cate-item-list > div {
		scroll-margin-top: 80px;
		max-width: 100%;
		width: 85vw;
	}
	.bl_goods-cate-item-list dd li img,
	.bl_goods-cate-item-list > div img {
		width: 100%;
		max-width: 100%;
		max-height: 60vw;
	}
}
.bl_fixed {
	position: fixed;
	bottom: 10%;
	right: 5%;
	z-index: 1000;
}
.bl_fixed a {
	display: block;
}
@media (max-width: 768px) {
	.bl_fixed {
		bottom: 6%;
		right: 1%;
	}
	.bl_fixed img {
		width: 50px;
	}
}
.mf_bs01 {
	box-shadow: 0px 3px 6px 0 rgba(0, 0, 0, 0.16);
	padding-block: min(1.5625vw, 30px) min(0.6770833333vw, 13px);
}
.sp {
	display: none;
}
@media (max-width: 768px) {
	.sp {
		display: block;
	}
}
.el_event-titleline {
	display: flex;
	align-items: center;
	gap: 0.4rem;
	flex-wrap: wrap;
}
.el_event-title {
	font-weight: 700;
	line-height: 1.3;
}
.el_event-toggle {
	padding: 0;
	background: none;
	border: 0;
	cursor: pointer;
	text-decoration: underline;
	font: inherit;
}
.el_event-places {
	list-style: none;
	margin: 0.3rem 0 0 0.8rem;
	padding: 0;
}
.el_event-places li {
	margin: 0.15rem 0;
}
@media (max-width: 768px) {
	.bl_fixed {
		transition: opacity 0.3s ease;
		/*pointer-events: none;*/
	}
	.bl_fixed.is-visible {
		opacity: 1;
		pointer-events: auto;
	}
	.mf_fix01 {
		pointer-events: none;
		transition: opacity 0.3s ease;
		z-index: 1000;
		opacity: 0;
	}
	.mf_fix01.is-visible {
		opacity: 1;
		pointer-events: auto;
	}
}
.addr {
	white-space: pre-wrap;
	overflow-wrap: anywhere;
	word-break: break-word;
}
.single-kuji .bl_fixed,
.page-id-42 .bl_fixed,
.home .bl_fixed {
	opacity: 0;
	transition: opacity 1s ease;
}
.single-kuji .bl_fixed.is-visible,
.page-id-42 .bl_fixed.is-visible,
.home .bl_fixed.is-visible {
	opacity: 1;
}
.mf_kuji .bl_shop-list,
.bl_corp,
.bl_rec-form,
.bl_sietmap {
	position: relative;
}
.mf_kuji .bl_shop-list:after,
.bl_corp:after,
.bl_rec-form:after,
.bl_sietmap:after {
	content: '';
	display: block;
	width: min(17.1875vw, 330px);
	height: min(27.65625vw, 531px);
	background: url(../images/obj_b.webp) no-repeat;
	position: absolute;
	background-size: contain;
	background-position: top left;
	left: 50%;
	top: 0;
	z-index: -1;
	position: absolute;
	left: 50%;
	transform: translateX(-50%) translateY(0%);
	width: 100vw;
	opacity: 1;
	transition: opacity 1s ease;
}
.bl_sietmap:after {
	top: 60%;
}
.bl_rec-form {
	margin-top: min(4.7395833333vw, 91px);
}
.is-hidden {
	display: none !important;
}
.bl_btn01.mf_ta-c {
	justify-content: center;
}
.imgzoom-backdrop {
	position: fixed;
	inset: 0;
	display: none;
	align-items: center;
	justify-content: center;
	background: rgba(0, 0, 0, 0.7);
	z-index: 9999;
	opacity: 0;
	transition: opacity 0.2s ease;
	overscroll-behavior: contain;
	cursor: zoom-out;
}
.imgzoom-backdrop.is-open {
	display: flex;
	opacity: 1;
}
.imgzoom-backdrop img {
	max-width: min(90vw, 1200px);
	max-height: 90vh;
	border-radius: 12px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
	transform: scale(0.95);
	transition: transform 0.2s ease;
	user-select: none;
}
.imgzoom-backdrop.is-open img {
	transform: scale(1);
}
body.imgzoom-locked {
	overflow: hidden;
}
@media (prefers-reduced-motion: reduce) {
	.imgzoom-backdrop,
	.imgzoom-backdrop img {
		transition: none;
	}
}

.bl_year-filter-wrap {
	margin-bottom: 2em;
}

/* 外側のピル形 */
.bl_year-filter__label {
	display: inline-flex;
	align-items: stretch;
	border: 1px solid #ccc;
	border-radius: 10px;
	overflow: hidden; /* 角丸をそろえる */
	position: relative; /* 矢印用 */
}

/* 左側の黒いラベル */
.bl_year-filter__title {
	background: #000;
	color: #fff;
	padding: 0.5em 1em;
	display: flex;
	align-items: center;
	white-space: nowrap;
}

/* 右側のセレクト */
.bl_year-filter__select {
	border: none;
	padding: 0.5em 2.5em 0.5em 0.8em;
	font-size: 1rem;
	min-width: 9em;
	outline: none;
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	background: #fff;
}

/* ▼ セレクトの矢印（擬似要素） */
.bl_year-filter__label::after {
	content: '';
	position: absolute;
	right: 0.8em;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	width: 0.4em;
	height: 0.4em;
	border-right: 2px solid #555;
	border-bottom: 2px solid #555;
	pointer-events: none;
}

.bl_new-goods-item-list {
}

.bl_new-goods-item-list ul {
	display: flex;
	flex-wrap: wrap;
	gap: 1.2rem;
}

.bl_new-goods-item-list li {
	max-width: 285px;
	width: 100%;
}
.bl_new-goods-item-list a {
	display: flex;
	flex-direction: column-reverse;
}
.bl_new-goods-item-list img {
	width: 100%;
	max-width: 285px;
	height: 100%;
	max-height: 122px;
	object-fit: cover;
	margin-bottom: 0.5rem;
}
.bl_new-goods-item-list time {
	display: block;
	font-size: 0.8em;
}

@media (max-width: 768px) {
	.bl_new-goods-item-list ul {
	}
	.bl_new-goods-item-list img {
		max-width: 100%;
		max-height: 60vw;
		width: 100%;
	}
	.bl_new-goods-item-list li {
		max-width: 100%;
		/*width: 95%;*/
    width:47%;
	}
}
