body {
	background: #e4f4fd;
}
#wrapper {
	position: relative;
	width: 100%;
	margin: 0 auto;
	margin-top: 84px;
	/* background: #fff */
}
section {
	position: relative;
}
.content-box {
	text-align: center;
}
.rel {
	position: relative;
}
.abs {
	position: absolute;
}
.zen {
	font-family: "Zen Maru Gothic", sans-serif;
}
.weight-800 {
	font-weight: 800;
}
.weight-900 {
	font-weight: 900;
}
.tr-y {
	transform: translateY(-50%); 
}
.tr-x {
	transform: translateX(-50%); 
}
.tr-xy {
	transform: translateY(-50%) translateX(-50%); 
}
.comment {
	font-size: 16px;
	text-align: left;
	line-height: 1.7;
	width: 90.63%;
	color: #604c3f;
	margin: 0 auto;
	font-weight: 700;
}
.comment.large {
	font-size: 22px;
}
.comment.abs {
	transform: translateY(0%) translateX(-50%);
	left: 50%;
}
.comment p {
	text-indent: -1em;
	padding-left: 1em;
}
.comment p span {
	font-weight: 900;
	color: #db3a58;
}
.img-box img {
	width: 100%;
}
.center {
	text-align: center;
}
.mi-a {
	margin-inline: auto;
}
.sec-ttl-box {
	text-align: center;
	margin-bottom: 2.34%;
	padding: 0 5px;
}
.sp-only {
	display: none;
}
#bottom-btn-box {
	position: fixed;
	bottom: 0;
	left: 50%;
	z-index: 10;
	padding: 0;
	height: 140px;
	background-color: rgba(255, 255, 255, 0.6);
	transform: translateY(0%) translateX(-50%);
	width: 100vw;
	text-align: center;
	display: flex !important;
	align-items: center;
	gap: 20px;
	justify-content: center;
	z-index: 20;
}
.bottom-btn {
	margin: 0;
}
.top-btn {
	position: fixed;
	bottom: 10px;
	right: 10px;
	padding: 0;
	border: none;
	font-size: 16px;
	cursor: pointer;
	display: none;
	transition: opacity 0.3s ease-in-out;
	background: none;
	z-index: 99;
}
.top-btn.show {
	display: block;
	opacity: 1;
}

a.img-box {
	display: block;
}
.tab-buttons {
	display: flex;
}
.tab-buttons .img-box:hover {
	cursor: pointer;
}
.tab-content {
	display: none;
}
.tab-content.show {
	display: block;
}
#tagcopy:hover {
	cursor: pointer;
}
#receipt .top-btn, 
#brand .top-btn, 
#quiz:has(.tab-content[data-tab="1"].show) .top-btn,
#goods .top-btn {
	bottom: 160px;
}
#receipt #footer,
#brand #footer,
#quiz:has(.tab-content[data-tab="1"].show) #footer,
#goods #footer {
padding-bottom: 30% !important;
}
@media screen and (min-width: 768px) {
	#wrapper {
		max-width: 640px;
	}
	a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
	}
}
@media screen and (max-width: 767px) {
	#receipt #footer,
	#brand #footer,
	#quiz:has(.tab-content[data-tab="1"].show) #footer,
	#goods #footer {
		padding-bottom: 40% !important;
	}

	body::-webkit-scrollbar {
		display: none;
	}
	#wrapper {
		margin-top: 13.13%;
	}
	.comment {
		font-size: 2.5vw;
	}
	.comment.large {
		font-size: 3.44vw;
	}
	#bottom-btn-box {
		width: 100%;
		text-align: center;
		height: auto;
		gap: 3.13%;
		padding: 3.15% 0;
	}
	.top-btn {
		width: 12%;
		bottom: 1.56vw;
		right: 1.56%;
	}
	#receipt .top-btn, 
	#brand .top-btn, 
	#goods .top-btn {
		bottom: 25vw;
	}
}

/* -------------------------
header
---------------------------- */
#header {
	position: fixed;
	top: 0;
	z-index: 999;
	width: 100%;
	height: 89px;
	background: url(../images/common/h_bg.png);
	background-repeat: no-repeat;
	background-size: cover;
	box-shadow: 0 2px 25px 0px rgba(0, 0, 0, 0.25);
}
#header .h-inner {
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	display: flex;
	height: 100%;
	justify-content: center;
	align-items: center;
}
.h-btn-box {
	position: absolute;
	top: 50%;
	right: 3.44%;
	transform: translateY(-50%);
}
.h-btn-box:hover {
	cursor: pointer;
	opacity: .7;
}
#h-btn:hover {
	opacity: .7;
}
#sp-menu {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	z-index: 998;
	text-align: center;
	transition: right 0.3s ease-in-out;
	background: #fffefa;
	background-repeat: repeat;
	margin-top: 84px;
	z-index: 9999;
	inset: 0;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}
#sp-menu::-webkit-scrollbar {
	display: none;
}
#sp-menu.active {
	opacity: 1;
	visibility: visible;
	pointer-events: auto;
}
#sp-menu .sec-inner {
	padding: 7.81% 0;
}
#sp-menu #menu-sp-nav + #menu-sp-nav {
	margin-top: 3.91%;
}
body.menu-open {
	overflow: auto;
}
.menu-sp-ttl {
	margin: 0 auto 0 0;
}
@media screen and (min-width: 768px) {
	#header {
		max-width: 640px;
	}
	#sp-menu {
		max-width: 640px;
		left: calc(50% - 320px);
	}
}
@media screen and (max-width: 767px) {
	body.menu-open {
		background: #dceee4;
	}
	#header {
		max-width: 100%;
		height: 14.22vw;
	}
	#sp-menu {
		margin-top: 13.13%;
		padding-bottom: 20%;
	}
	#sp-menu .sec-inner {
		padding-bottom: calc(14vw + 8.69%);
	}
	#sp-menu .menu-list {
		margin: 0 auto;
	}
	.h-btn-box img {
		width: 100%;
	}
}
/* -------------------------
mv
---------------------------- */

/* -------------------------
footer
---------------------------- */
#footer {
	background-image: url(../images/common/bg_02.png);
	background-position: top center;
	background-size: cover;
	position: relative;
	z-index: 10;
}
.f-sns {
	display: flex;
	justify-content: center;
	gap: 20px;
	align-items: center;
}
.f-sns a {
	margin: 0;
}
.copy-txt:hover {
	opacity: .7;
	cursor: pointer;
}
@media screen and (max-width: 767px) {
	#footer {
		padding-bottom: 15.25% !important;
	}
	.f-sns {
		gap: 4.69%;
	}
}

/* -------------------------
close
---------------------------- */
#close01 :is(.copy-txt, .f-sns) {
	display: none;
}
#close01 section {
	background-image: url(../images/common/bg_03.png);
	background-position: top center;
	background-size: cover;
}
#close02 {
	height: 100%;
	background: #fff;
}
#close02 #wrapper {
	margin: 0 auto;
	background: #fff;
}
#close02 .close02 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: 100vh;
}
#close02 .close-txt {
	color: #604c3f;
	text-align: center;
	font-size: 24px;
	text-align: center;
}
#footer {
	background-color: #ffe9af;
}
@media screen and (max-width: 767px) {
	#close02 .close-txt {
		font-size: 3.75vw;
	}
}
/* -------------------------
top
---------------------------- */
#top .top_content {
	background-image: url(../images/top/bg_01.png);
	background-position: top center;
	background-size: cover;
	
}
#top .top_content02 {
	background-image: url(../images/top/bg_02.png);
	background-position: top center;
	background-size: cover;
	
}
#top #section01 {
	background-color: #fff1cb;
}
#top .section-intro,
#top .section-app-box {
	border-radius: 20px;
	background-color: #fff;
}
@media screen and (max-width: 767px) {
	#top .section-intro,
	#top .section-app-box {
		border-radius: 10px;
	}
}
#top .section-intro-group:not(:first-child),
#top .section-intro-inquiry {
	margin-top: 5.89285714%;
}
#top .section-intro-ttl {
	margin-bottom: 8.33333333%;
}
#top .section-intro-inquiry-list li {
	margin-top: 8.33333333%;
}
#top .section-intro-inquiry-list-tel {
	margin-top: 4.16666667%;
}
#top #section02 {
	background-color: #fbe0e8;
}
#top #section03 {
	background-color: #fffbcf;
}
#top #section04 {
	background-color: #d1f0fb;
}
#top #top07,
#top #top08,
#top #top09 {
	background-color: #fff1cb;
}
#top .section-app-img-02 {
	margin-block: 6.07142857% 4.28571429%;
}
#top .section-app-btn {
	margin-top: 4.28571429%;
}
#top .section-wrapping-ttl {
	margin-bottom: 7.14285714%;
}
#top .section-wrapping-img {
	margin-block: 2.5%;
}
#top .section-wrapping-btn:not(:last-child) {
	margin-block: 4.28571429%;
}
#top .section-firework-img-02 {
	margin-block: 7.14285714%;
}
/* -------------------------
receipt
---------------------------- */
#receipt #section01 {
	z-index: 2;
	background-color: #fbe0e8;
}
#receipt #section02 {
	z-index: 3;
	background-color: #fff1cb;
}
#receipt #section03 {
	background-color: #fbe0e8;
}
#receipt #section04 {
	background-color: #fff1cb;
}
#receipt .swiper-box {
	position: absolute;
	left: 50%;
	top: 0%;
	transform: translateX(-50%);
	width: 100%;
	transition: left 0.5s ease-in-out;
	aspect-ratio: 480 / 360;
	height: auto;
	top: 24.3%;
}
#receipt .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 40px;
	justify-content: center;
	bottom: unset;
	top: unset;
	left: unset;
	width: unset;
}
#receipt .swiper-pagination-bullet {
	width: 28px;
	height: auto;
	aspect-ratio: 1 / 1;
	background: unset;
	background-image: url(../images/receipt/bullet.png);
	background-repeat: no-repeat;
	opacity: 1;
	border-radius: 0;
	margin: 0 !important;
	transition: transform 0.3s;
	background-size: 100% 100%;
}
#receipt .swiper-pagination-bullet-active {
	background-image: url(../images/receipt/active_bullet.png);
	background-repeat: no-repeat;
}
#receipt #custom-prev-receipt-0 {
	top: 43.5%;
	transform: translateY(-50%);
	cursor: pointer;
	width: 12.5%;
	height: auto;
	aspect-ratio: 1 / 1;
	left: -6.7%;
	z-index: 2;
}
#receipt #custom-next-receipt-0 {
	top: 43.5%;
	transform: translateY(-50%);
	cursor: pointer;
	width: 12.5%;
	height: auto;
	aspect-ratio: 1 / 1;
	right: -6.7%;
	z-index: 2;
}

#receipt .accordion-header-receipt img {
	cursor: pointer;
	transition: opacity 0.3s;
}
#receipt .accordion-content-receipt {
	position: relative;
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.5s ease-in-out;
}
#receipt .accordion-content-receipt.open {
	margin-top: -2.56%;
	margin-bottom: 8.57142857%;
}
#receipt .accordion-content-receipt img {
	width: 100%;
	display: block;
}
#receipt .accordion-content-receipt .close {
	bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 16% !important;
    position: absolute;
    height: 0.9%;
}
#receipt .accordion-content-receipt .close:hover {
	cursor: pointer;
}
#receipt .acd-wrapper {
	max-width: 87.5%;
	margin: 0 auto;
	padding: 3px;
	border-radius: 20px;
	background-color: #fdf4f7;
}
#receipt .acd-wrapper .acd-inner {
	border: 3px dashed #462e31;
	border-radius: 20px;
}
#receipt .bottom-btn {
	width: 400px;
}
@media screen and (max-width: 767px) {
	#receipt #custom-prev-receipt-0,
	#receipt #custom-next-receipt-0 {
		width: 12.5%;
	}
	#receipt .swiper-pagination-bullet {
		width: 5.835%;
		height: auto;
	}
	#receipt .swiper-pagination {
		gap: 6.25vw;
	}
	#receipt .bottom-btn {
		width: 62.5vw;
	}

	#receipt .acd-wrapper {
		border-radius: 14px;
	}
	#receipt .acd-wrapper .acd-inner {
		border-radius: 14px;
	}
}
/* -------------------------
quiz
---------------------------- */
#quiz #quiz-tab-buttons {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 4.0625%;
}
#quiz #quiz-tab-buttons::before {
	display: block;
	content: "";
	position: absolute;
	z-index: 2;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #fff;
}
#quiz #quiz-tab-buttons .img-box {
	margin: 0;
}
#quiz #section01,
#quiz .section-pink {
	z-index: 2;
	background-color: #fbe0e8;
}
#quiz #section02 {
	background-image: url(../images/quiz/bg_02.png);
	background-position: top center;
	background-size: cover;
	background-repeat: repeat-y;
	z-index: 3;
}
#quiz .tab-content:nth-child(1) .swiper-box {
	position: absolute;
	left: 50%;
	top: 0%;
	transform: translateX(-50%);
	width: 100%;
	transition: left 0.5s ease-in-out;
	height: auto;
	top: 16.7%;
}
#quiz .tab-content:nth-child(2) .swiper-box {
	position: absolute;
	z-index: 2;
	left: 50%;
	top: 0%;
	transform: translateX(-50%);
	width: 100%;
	transition: left 0.5s ease-in-out;
	height: auto;
	top: 14.31980907%;
}
#quiz .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 40px;
	justify-content: center;
	bottom: unset;
	top: unset;
	left: unset;
	width: unset;
}
#quiz .swiper-pagination-bullet {
	width: 28px;
	height: auto;
	aspect-ratio: 1 / 1;
	background: unset;
	background-image: url(../images/quiz/bullet.png);
	background-repeat: no-repeat;
	opacity: 1;
	border-radius: 0;
	margin: 0 !important;
	transition: transform 0.3s;
	background-size: 100% 100%;
}
#quiz .swiper-pagination-bullet-active {
	background-image: url(../images/quiz/active_bullet.png);
	background-repeat: no-repeat;
}
#quiz .custom-prev-quiz-0 {
	top: 43.5%;
	transform: translateY(-50%);
	cursor: pointer;
	width: 12.5%;
	height: auto;
	aspect-ratio: 1 / 1;
	left: -6.7%;
	z-index: 2;
}
#quiz .custom-next-quiz-0 {
	top: 43.5%;
	transform: translateY(-50%);
	cursor: pointer;
	width: 12.5%;
	height: auto;
	aspect-ratio: 1 / 1;
	right: -6.7%;
	z-index: 2;
}
#quiz .tab-content:nth-child(2) .custom-prev-quiz-1 {
	top: 43.5%;
	transform: translateY(-50%);
	cursor: pointer;
	width: 10.71428571%;
	height: auto;
	aspect-ratio: 1 / 1;
	z-index: 2;
	left: 4.6875%;
}
#quiz .tab-content:nth-child(2) .custom-next-quiz-1 {
	top: 43.5%;
	transform: translateY(-50%);
	cursor: pointer;
	width: 10.71428571%;
	height: auto;
	aspect-ratio: 1 / 1;
	z-index: 2;
	right: 4.6875%;
}
#quiz #quiz01,
#quiz #quiz02 {
	background-color: #fff1cb;
}
#quiz .first-application-01-text {
	color: #462e31;
	font-weight: bold;
}
#quiz .first-application-01-text .black {
	font-weight: 900;
	color: #bc1e26;
}
#quiz #section03 {
	background-color: #fff1cb;
}
#quiz:has(.tab-content:nth-child(2).show) #bottom-btn-box {
	display: none !important;
}
@media screen and (max-width: 767px) {
	#quiz .custom-prev-quiz-0,
	#quiz .custom-next-quiz-0 {
		width: 12.5%;
	}
	#quiz .swiper-pagination-bullet {
		width: 5.835%;
		height: auto;
	}
	#quiz .swiper-pagination {
		gap: 6.25vw;
	}
	#quiz .bottom-btn {
		width: 62.5vw;
	}
}
/* -------------------------
sns
---------------------------- */
#sns #sns-tab-buttons {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 4.0625%;
}
#sns #sns-tab-buttons::before {
	display: block;
	content: "";
	position: absolute;
	z-index: 2;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #fff;
}
#sns #sns-tab-buttons .img-box {
	margin: 0;
}

#sns #section01 {
	background-color: #fbe0e8;
	z-index: 2;
}
#sns #section02 {
	background-color: #fff1cb;
	z-index: 3;
}
#sns #section02::before {
	content: "";
	position: absolute;
	left: 50%;
	top: 0%;
	transform: translateX(-50%) translateY(-50%);
	background-image: url(../images/sns/bg_02_item.png);
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	height: auto;
	aspect-ratio: 640 / 75;
}
#sns #section03 {
	background-color: #fbe0e8;
}
#sns .accordion-header-sns img {
	cursor: pointer;
	transition: opacity 0.3s;
}
#sns .accordion-content-sns {
	position: relative;
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.5s ease-in-out;
}
#sns .accordion-content-sns.open {
	margin-bottom: 7.3%;
}
#sns .accordion-content-sns img {
	width: 100%;
	display: block;
}
#sns .accordion-content-sns .close {
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 21% !important;
    position: absolute;
    height: 0.5%;
}
#sns .accordion-content-sns .close:hover {
	cursor: pointer;
}
#sns .section-application-sns-wrapper {
	max-width: 87.5%;
	margin: 0 auto;
	padding: 3px;
	border-radius: 20px;
	background-color: #fffef2;
}
#sns .section-application-sns-inner {
	border: 3px dashed #462e31;
	border-radius: 20px;
	padding-block: 7.3%;
}
#sns .section-application-sns-title-01 {
	margin-bottom: 7.3%;
}
#sns .section-application-sns-title-02 {
	margin-top: 14.6%;
}
#sns .section-application-sns-comming-soon {
	margin-block: 48.9%;
}
#sns .acd-wrapper {
	max-width: 87.5%;
	margin: 0 auto;
	padding: 3px;
	border-radius: 20px;
	background-color: #fdf4f7;
}
#sns .acd-wrapper .acd-inner {
	border: 3px dashed #462e31;
	border-radius: 20px;
}
.accordion-content-sns-link {
	width: 66% !important;
    height: 0.6%;
    left: 0;
    bottom: 0.9% !important;
}
@media screen and (max-width: 767px) {
	#sns .section-application-sns-wrapper,
	#sns .section-application-sns-inner {
		border-radius: 14px;
	}
}
/* -------------------------
tento
---------------------------- */
#tento .section-intro-box {
	border-radius: 20px;
	background-color: #fff;
}
#tento #section01 {
	background-color: #fff1cb;
	z-index: 2;
}
#tento #section02 {
	background-color: #fbe0e8;
	z-index: 2;
}
#tento .swiper-box {
	position: absolute;
	left: 50%;
	top: 0%;
	transform: translateX(-50%);
	width: 100%;
	transition: left 0.5s ease-in-out;
	aspect-ratio: 480 / 360;
	height: auto;
	top: 34.3%;
}
#tento .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 40px;
	justify-content: center;
	bottom: unset;
	top: unset;
	left: unset;
	width: unset;
}
#tento .swiper-pagination-bullet {
	width: 28px;
	height: auto;
	aspect-ratio: 1 / 1;
	background: unset;
	background-image: url(../images/tento/bullet.png);
	background-repeat: no-repeat;
	opacity: 1;
	border-radius: 0;
	margin: 0 !important;
	transition: transform 0.3s;
	background-size: 100% 100%;
}
#tento .swiper-pagination-bullet-active {
	background-image: url(../images/tento/active_bullet.png);
	background-repeat: no-repeat;
}
#tento #custom-prev-tento-0 {
	top: 43.5%;
	transform: translateY(-50%);
	cursor: pointer;
	width: 12.5%;
	height: auto;
	aspect-ratio: 1 / 1;
	left: -6.7%;
	z-index: 2;
}
#tento #custom-next-tento-0 {
	top: 43.5%;
	transform: translateY(-50%);
	cursor: pointer;
	width: 12.5%;
	height: auto;
	aspect-ratio: 1 / 1;
	right: -6.7%;
	z-index: 2;
}
@media screen and (max-width: 767px) {
	#tento .section-intro-box {
		border-radius: 14px;
	}
	#tento #custom-prev-tento-0,
	#tento #custom-next-tento-0 {
		width: 12.5%;
	}
	#tento .swiper-pagination-bullet {
		width: 5.835%;
		height: auto;
	}
	#tento .swiper-pagination {
		gap: 6.25vw;
	}
}

@media screen and (max-width: 575px){
	:has(#bottom-btn-box) .top-btn {
		bottom: 0 !important;
		padding-bottom: 25%;
	}

	#bottom-btn-box .bottom-btn {
		width: 80%;
	}
}
/* -------------------------
brand
---------------------------- */
#brand .section-intro-box {
	border-radius: 20px;
	background-color: #fff;
}
#brand #section01 {
	background: #fff1cb;
	position: relative;
	z-index: 2;
}
#brand #section01::before {
	display: block;
    content: "";
    width: 100%;
    height: 62.8%;
    position: absolute;
	z-index: 2;
    right: 0;
    bottom: 0;
    left: 0;
    background: #fbe0e8;
}
#brand #section01 > * {
	z-index: 3;
}
#brand #section02 {
	background-color: #d1f0fb;
	z-index: 2;
}
#brand #section03 {
	background: #fff1cb;
}
#brand .bottom-btn {
	width: 400px;
}
#brand #fixed-side-btn-box {
	position: fixed;
	z-index: 999;
	top: 0;
	right: 0;
	bottom: 140px;
	top: 0;
	bottom: -5%;
	margin-block: auto;
	width: 14.0625%;
	display: flex;
	flex-direction: column;
    align-items: flex-end;
	justify-content: flex-start;
	pointer-events: none;
}
#brand #fixed-side-btn-box a {
	display: block;
 }
#brand #fixed-side-btn-box .img-box {
	width: 100% !important;
	max-width: 90px;
	margin: 0;
	pointer-events: auto;
}
#brand #fixed-side-btn-box .img-box:nth-child(2) {
	margin-top: -5%;
}

#brand #fixed-side-btn-box .img-box img {
	height: 100%;
	object-fit: contain;
	object-position: right;
}
#brand #fixed-side-btn-box a {
	width: 100%;
	height: 100%;
}
@media screen and (max-height: 800px) and (min-width: 768px) {
	#brand #fixed-side-btn-box {
		gap: 10px;
	}
	#brand #fixed-side-btn-box a {
		height: 100%;
	}
	#brand #fixed-side-btn-box .img-box {
		height: calc(40% - 140px / 2);
	}
}
@media screen and (max-width: 767px) {
	#brand #footer {
		padding-bottom: 40% !important;
	}
	#brand .bottom-btn {
		width: 62.5vw;
	}
	#brand .section-intro-box {
		border-radius: 20px;
		background-color: #fff;
	}
	#brand #fixed-side-btn-box {
		top: 0;
        bottom: auto;
        padding-top: 14%;
	}
}
@media screen and (min-width: 767px) and (min-aspect-ratio: 16/9) and (max-height: 900px) {
	#brand #fixed-side-btn-box .img-box {
		height: 20vh;
	}
}
@media screen and (max-width: 767px) and (min-aspect-ratio: 517/671) {
	#brand #fixed-side-btn-box .img-box {
		height: 20vh;
	}
}
/* -------------------------
goods
---------------------------- */
#goods .section-intro-box {
	border-radius: 20px;
	background-color: #fff;
}
#goods #section01 {
	background-color: #d1f0fb;
	z-index: 2;
}
#goods #section02 {
	background-color: #fff1cb;
	z-index: 2;
}
#goods .swiper-box {
	position: absolute;
	left: 50%;
	top: 0%;
	transform: translateX(-50%);
	width: 100%;
	transition: left 0.5s ease-in-out;
	aspect-ratio: 480 / 360;
	height: auto;
	top: 0;
}
#goods .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 40px;
	justify-content: center;
	bottom: unset;
	top: unset;
	left: unset;
	width: unset;
	margin-inline: -7.14285714%;
}
#goods .swiper-pagination-bullet {
	width: 28px;
	height: auto;
	aspect-ratio: 1 / 1;
	background: unset;
	background-image: url(../images/goods/bullet.png);
	background-repeat: no-repeat;
	opacity: 1;
	border-radius: 0;
	margin: 0 !important;
	transition: transform 0.3s;
	background-size: 100% 100%;
}
#goods .swiper-pagination-bullet-active {
	background-image: url(../images/goods/active_bullet.png);
	background-repeat: no-repeat;
}
#goods [id^="custom-prev-goods-"] {
	top: calc(50% - 6.25%);
	transform: translateY(-50%);
	cursor: pointer;
	width: 10.71428571%;
	height: auto;
	aspect-ratio: 1 / 1;
	left: -1.78571429%;
	z-index: 2;
}
#goods [id^="custom-next-goods-"] {
	top: calc(50% - 6.25%);
	transform: translateY(-50%);
	cursor: pointer;
	width: 10.71428571%;
	height: auto;
	aspect-ratio: 1 / 1;
	right: -1.78571429%;
	z-index: 2;
}
@media screen and (max-width: 767px) {
	#goods .section-intro-box {
		border-radius: 14px;
	}
	#goods [id^="custom-prev-goods-"],
	#goods [id^="custom-next-goods-"] {
		width: 10.71428571%;
	}
	#goods .swiper-pagination-bullet {
		width: 5.835%;
		height: auto;
	}
	#goods .swiper-pagination {
		gap: 4.25vw;
	}
	#goods .bottom-btn {
		width: 62.5vw;
	}
}
/* -------------------------
itemlist
---------------------------- */
:is(#itemlist) :is(.copy-txt, .f-sns) {
	display: none;
}

#itemlist #section-01 {
	background-color: #fbe0e8;
	position: relative;
}
#itemlist #section-02 {
	background: #fff;
	background-size: 100%;
}
#itemlist .accordion {
	border-radius: 20px;
	background: #fdf4f7;
}
#itemlist .item-accordion-header {
	cursor: pointer;
	transition: .3s;
	position: relative;
}
#itemlist .item-accordion-header::after {
	content: "";
	position: absolute;
	background-image: url(../images/itemlist/acd_icon.png);
	background-repeat: no-repeat;
	width: 26px;
	height: auto;
	aspect-ratio: 1 / 1;
	right: 5%;
	top: 50%;
	background-size: cover;
	transform: translateY(-50%) translateX(-50%);
	transition: transform .25s ease;
}
#itemlist .item-accordion-header.is-open::after {
	transform: translateY(-50%) translateX(-50%) rotate(-180deg);
}
#itemlist .item-accordion-content {
	display: none;
	position: relative;
	left: 49.6%;
	bottom: 0%;
	width: 93.45794393%;
	text-align: left;
	z-index: 100;
	margin-top: -3%;
	padding-block: 6% 8%;
	border-bottom-right-radius: 20px;
	border-bottom-left-radius: 20px;
	transform: translateY(0%) translateX(-50%);
	background-color: #fff;
}
#itemlist .item-accordion-content.open {
	display: block;
}
#itemlist .item-accordion-content li {
	padding: 5% 9.69%;
	line-height: 1.2;
	color: #604c3f;
	font-size: 22px;
	font-weight: 700;
}
#itemlist .name {
	margin-top: 3%;
}
#itemlist .item-accordion-content li:hover{
	background-color: #e5e5e5;
	cursor: pointer;
}
#itemlist #sec-01 .cat-content.open {
	display: block;
}
#itemlist .cat-content .ttl {
	text-align: center;
	color: #604c3f;
	font-weight: 700;
	margin: 3.5% 0;
	font-size: 26px;
}
#itemlist .item-box {
	padding: 3.5% 0;
	font-size: 22px;
	font-weight: 600;
	color: #604c3f;
	border-bottom: 2px solid #604c3f;
}

#itemlist .item-name-box {
	width: 100%;
}

#itemlist .item-main-row {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 20px;
}

#itemlist .name {
	margin-top: 3%;
	flex: 1;
	min-width: 0;
}

#itemlist .item-content02 {
	flex-shrink: 0;
	white-space: nowrap;
}
#itemlist .accordion-box .accordion-item + .accordion-item {
	margin-top: 3.58%;
}
#itemlist .accordion .comment {
	width: 90%;
	left: 50%;
	bottom: 6%;
}
#itemlist .cat-content {
	width: 87.5%;
	margin: 0 auto;
	padding-top: 6.25%;
}
#itemlist .class-badge {
	text-align: center;
	font-weight: 900;
	font-size: 36px;
	color: #604c3f;
	line-height: 1;
	font-family: "游明朝 Medium", "Yu Mincho Medium", "YuMincho Medium", "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", serif;
}
#itemlist .period {
	margin-top: 1.5%;
	font-size: 0.8em;
	line-height: 1.4;
	font-weight: 700;
}
#itemlist .itemlist-btn {
	text-align: center;
	padding-bottom: 3.75%;
}
#itemlist .cat-content:has(.item-box) + .itemlist-btn {
	margin-top: 10%;
}
#itemlist #footer {
	margin-top: 0;
}
.class-badge img { display:block; width:100%; height:auto; }

.class-badge--iyakuhin { width: 13.44%; }
.class-badge--keshouhin { width: 13.75%; }
.class-badge--shokuhin { width: 9.06%; }
.class-badge--nichiyouhin { width: 13.28%; }
@media screen and (max-width: 767px) {
	#itemlist .accordion {
		background-size: 100%;
	}
	#itemlist .item-accordion-header::after {
		width: 4.063vw;
	}
	#itemlist .item-accordion-content li {
		font-size: 3.75vw;
	}
	#itemlist .item-box {
		font-size: 3.51vw;
	}
	#itemlist .item-content02 {
		font-size: 3.906vw;
	}
	#itemlist .cat-content .ttl {
		font-size: 4.1vw;
	}
	#itemlist .class-badge {
		font-size: 5.625vw;
	}
	#itemlist .period {
		font-size: 3.125vw;
	}
	#itemlist .item-accordion-content {
		border-bottom-right-radius: 14px;
		border-bottom-left-radius: 14px;
	}
}
/* -------------------------
app
---------------------------- */
:is(#app, #exchange_1000) :is(#header, #sp-menu, .copy-txt, .f-sns) {
	display: none;
}
#app #wrapper {
	margin-top: 0;
}
#app #footer {
	padding-top: 6.25% !important;
}
#app #section01 {
	background: #fff1cb;
	z-index: 2;
}
#app #section02 {
	background: #fbe0e8;
	z-index: 2;
}
/* -------------------------
exchange_1000
---------------------------- */
#exchange_1000 header {
	display: none;
	opacity: 0;
	pointer-events: none;
}
#exchange_1000 #wrapper {
	margin-top: 0;
}
#exchange_1000 #section01 {
	background: #fff1cb;
}
/* -------------------------
exchange_brand
---------------------------- */
#exchange_brand #section02 {
	background: #fbe0e8;
}
#exchange_brand header {
	display: none;
	opacity: 0;
	pointer-events: none;
}
#exchange_brand :is(.copy-txt, .f-sns, .f-tel-groups) {
	display: none;
}
#exchange_brand #footer {
	padding-top: 0 !important;
	padding-bottom: 21.25% !important;
	background: #fff1cb;
}
#exchange_brand #footer .img-box {
	margin-top: 0 !important;
}
#exchange_brand #wrapper {
	margin-top: 0;
}
#exchange_brand #section01 {
	z-index: 2;
}
#exchange_brand .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 40px;
	justify-content: center;
	bottom: unset;
	top: unset;
	left: unset;
	width: unset;
	position: relative;
}
#exchange_brand .swiper-pagination-bullet {
	width: 28px;
	height: auto;
	aspect-ratio: 1 / 1;
	background: unset;
	background-image: url(../images/exchange_brand/bullet.png);
	background-repeat: no-repeat;
	opacity: 1;
	border-radius: 0;
	margin: 0 !important;
	transition: transform 0.3s;
	background-size: 100% 100%;
}
#exchange_brand .swiper-pagination-bullet-active {
	background-image: url(../images/exchange_brand/active_bullet.png);
	background-repeat: no-repeat;
}
@media screen and (max-width: 767px) {
	#exchange_brand .swiper-pagination-bullet {
		width: 5.835%;
		height: auto;
	}
	#exchange_brand .swiper-pagination {
		gap: 6.25vw;
	}
}
/* -------------------------
brand_joken
---------------------------- */
#brand_joken header,
#brand_joken footer {
	display: none;
	opacity: 0;
	pointer-events: none;
}
#brand_joken #wrapper {
	margin-top: 0;
}

.section-firework-text {
	font-size: 14px;
	letter-spacing: -0.08em;
	line-height: 1.85;
}
@media screen and (max-width: 767px) {
	.section-firework-text {
		font-size: 2.1vw;
	}
}