body {
	--font-mincho: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;;
	background: #f6efe3;
}
.mincho {
	font-family: var(--font-mincho);
}
#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: #000;
	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: #fff;
	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="quiz-tab-01"].show) .top-btn,
#goods .top-btn {
	bottom: 160px;
}
#receipt #footer,
#quiz #footer,
#brand #footer,
#quiz:has(.tab-content[data-tab="quiz-tab-01"].show) #footer,
#goods #footer {
padding-bottom: 30% !important;
}
#wrapper {
	max-width: 640px;
}
@media screen and (min-width: 768px) {
	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;
}
#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: 5%;
	right: 3.44%;
}
:has(#sp-menu.active) .h-btn-box {
	top: calc(5% - 2px);
}
.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: #000;
	text-align: center;
	font-size: 24px;
	text-align: center;
}
#footer {
	background: url(../images/common/f_bg_01.png) no-repeat center center / cover;
}
.f-tel-groups {
	margin: 0 auto;
	background: #fff;
}
@media screen and (max-width: 767px) {
	#close02 .close-txt {
		font-size: 3.75vw;
	}
}
#mv {
	margin-top: -2px;
}
@media screen and (max-width: 767px) {
	#mv {
		margin-top: 0;
	}
}
/* -------------------------
top
---------------------------- */
#top #section01 {
	background: url(../images/top/section_01_bg.png) no-repeat top center / cover;
}
#top .section-campaign-group-box:nth-child(1) .section-campaign-group-box-list {
	padding-bottom: 41.5625%;
}
#top :is(.section-campaign-group-box:nth-child(2), .section-campaign-group-box:nth-child(3)) .section-campaign-group-box-list {
	padding-bottom: 24.6875%;
}
#top .section-campaign-group-box:nth-child(4) .section-campaign-group-box-list {
	padding-bottom: 50.625%;
}
#top .section-campaign-group-box:nth-child(5) .section-campaign-group-box-list {
	padding-bottom: 22.65625%;
}
#top #top07 {
  background-image: -moz-linear-gradient( 90deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -webkit-linear-gradient( 90deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -ms-linear-gradient( 90deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
}
#top .section-challenge-box {
	position: relative;
	width: 90.625%;
	margin: auto;
	background-color: #fff;
}
#top .section-challenge-box-border {
	position: absolute;
	inset: 0;
	z-index: 1;
	background-image: -moz-linear-gradient( 90deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
	background-image: -webkit-linear-gradient(90deg, rgb(157, 127, 68) 0%, rgb(205, 179, 103) 19%, rgb(253, 230, 138) 44%, rgb(157, 127, 69) 100%);
	background-image: -ms-linear-gradient( 90deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
}
#top .section-challenge-box-bg {
	position: absolute;
	inset: 0;
	z-index: 2;
	padding: 1.20689655%;
	background-color: #fff;
}
.section-challenge-box-bg-inner {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}
#top .section-challenge-box-deco-01,
#top .section-challenge-box-deco-02,
#top .section-challenge-box-deco-03,
#top .section-challenge-box-deco-04 {
	position: absolute;
	z-index: 3;
	width: 18px;
	height: 18px;
	margin-inline: auto;
	background: no-repeat center center url(../images/top/nazotoki_deco_01.png);
	background-size: contain;
}
#top .section-challenge-box-deco-01 {
	top: 0;
	left: 0;
	rotate: 90deg;
}
#top .section-challenge-box-deco-02 {
	top: 0;
	right: 0;
	rotate: -90deg;
}
#top .section-challenge-box-deco-03 {
	bottom: 0;
	left: 0;
}
#top .section-challenge-box-deco-04 {
	bottom: 0;
	right: 0;
}
#top .section-challenge-box-deco-02,
#top .section-challenge-box-deco-04 {
	background-image: url(../images/top/nazotoki_deco_02.png);
}

#top .section-challenge-box-bg-inner-border {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 2px;
	height: 100%;
}
#top .section-challenge-box-bg-inner-border-top,
#top .section-challenge-box-bg-inner-border-bottom {
	display: block;
	position: absolute;
	right: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background-image: linear-gradient(100deg, #d7bd6e 0%, #f0dfa0 50%, #c1a65f 100%);
}
#top .section-challenge-box-bg-inner-border-bottom {
	bottom: 0;
}
#top .section-challenge-intro {
	padding-block: 6.55172414% 5.17241379%;
}
#top .section-challenge-toc {
	margin-inline: 5.17241379%;
	margin-bottom: 11.03448276%;
	padding: 5.17241379%;
	background-color: #e6e0d3;
}
#top .section-challenge-toc-links a:not(:first-child) {
	margin-top: 6.08695652%;
}
#top #toc-02,
#top #toc-03 {
	padding-top: 10.34482759%;
}
#top #toc-02 > .tab-content {
	padding-inline: 5.17241379%;
}
#top #episode-tab-buttons {
	position: relative;
	align-items: flex-end;
	justify-content: center;
	gap: 0.86206897%;
}
#top #episode-tab-buttons::after,
#top #nazotoki-tab-buttons::after {
	display: block;
	content: "";
	position: absolute;
	z-index: 3;
	right: calc(1.20689655% + 2px);
	bottom: 0;
	left: calc(1.20689655% + 2px);
	height: 3px;
  background-image: -moz-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -webkit-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -ms-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
}
#top .episode-tab-btn {
	margin: 0 !important;
	width: 29.31034483% !important;
}
#top .app-tab-buttons {
	position: relative;
	align-items: flex-end;
	justify-content: space-between;
	margin: auto;
}
#top .app-tab-btn {
	margin: 0 !important;
	width: 49.03846154% !important;
}
#top .app-tab-content {
	position: relative;
	margin: auto;
	margin-top: -2px;
	background-image: -moz-linear-gradient( 90deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
	background-image: -webkit-linear-gradient(90deg, rgb(157, 127, 68) 0%, rgb(205, 179, 103) 19%, rgb(253, 230, 138) 44%, rgb(157, 127, 69) 100%);
	background-image: -ms-linear-gradient( 90deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
}
#top .app-tab-content::before {
	display: block;
	content: "";
	position: absolute;
	inset: 2px;
	z-index: 1;
	background: #fff;
}
#top .app-tab-content .img-box {
	position: relative;
	z-index: 2;
	width: 88.46153846% !important;
	margin: auto;
	padding-block: 5.76923077%;
}
#top .app-tab-content iframe {
	display: block;
	width: 100%;
	height: auto;
	aspect-ratio: 315 / 560;
}
#top .answer-form-box {
	width: 89.65517241%;
	margin: auto;
	padding-block: 5.17241379% 2.24137931%;
	padding-inline: 5.17241379%;
	background: #e6e0d3;
}
#top .answer-form-input {
	margin-block: 16px 13px;
}
#top .answer-form-input input {
	width: 100%;
	padding: 3.79310345% 5.17241379%;
	border: 1px solid #000;
	box-sizing: border-box;
	font-size: 2rem;
}
@media screen and (max-width: 767px) {
	#top .answer-form-input input {
		font-size: 1.4rem;
	}
}
#top .answer-form-input input::placeholder {
	color: rgb(153, 153, 153);
}
#top .answer-form-btn {
	display: block;
	margin: auto;
	padding: 0;
	border: none;
	background: transparent;
	transition: .3s all ease-in-out;
}
#top .answer-form-btn:hover {
	opacity: 0.7;
}
.answer-modal {
	display: none;
	position: fixed;
	inset: 0;
	z-index: 9999;
	background: rgba(0, 0, 0, 0.6);
	align-items: center;
	justify-content: center;
	padding: 24px; /* 画面端ギリギリに張り付かないように余白を確保 */
}
.answer-modal.show {
	display: flex;
}
.answer-modal-inner {
	background: #fff;
	border-radius: 12px;
	padding: 24px;
	max-width: 80%;
	max-height: 100%; /* 親(.answer-modal)のpaddingを引いた高さが上限になる */
	overflow-anchor: none; /* ← スクロール位置の自動補正を無効化 */
	overflow-y: auto; /* 収まらない場合はここだけスクロール */
	-webkit-overflow-scrolling: touch; /* iOSでの慣性スクロール */
	text-align: center;
	box-sizing: border-box;
}
:has(.answer-modal.show) #header {
	display: none;
}
.answer-modal-close {
	width: 100%;
	border: 1px solid #000;
	margin-top: 16px;
	padding: 8px 16px;
	font-size: 1.8rem;
	background: #fff;
	transition: .3s all ease-in-out;
}
.answer-modal-close:hover {
	opacity: .7;
}
#top #nazotoki-tab-buttons {
	position: relative;
	align-items: flex-end;
	justify-content: center;
	gap: 3.44827586%;
	margin-block: 5.17241379%;
}
#top .nazotoki-tab-btn {
	margin: 0 !important;
	width: 43.10344828% !important;
}
#top .nazotoki-hint-list-item {
	margin-top: 5.17241379%;
}
#top .nazotoki-hint-list-item-acd {
	position: relative;
	width: 89.65517241%;
	margin-inline: auto;
}
#top .nazotoki-hint-list-item-acd-box {
	position: absolute;
	inset: 0;
	z-index: 3;
	border: 1px solid transparent;
	pointer-events: none;
}
#top .nazotoki-hint-list-item-acd-box::before {
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: 1px; /* borderの太さ */
	background: linear-gradient(100deg, #d7bd6e 0%, #c1a65f 100%);
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
}
#top .nazotoki-hint-list-item-acd-box-inner {
	position: absolute;
	inset: 0;
	margin: 0.96153846%;
	z-index: 1;
	border: 1px solid transparent;
}
#top .nazotoki-hint-list-item-acd-box-inner::before {
	content: '';
	position: absolute;
	inset: 0;
	z-index: 3;
	border-radius: inherit;
	padding: 1px; /* borderの太さ */
	background: linear-gradient(100deg, #d7bd6e 0%, #c1a65f 100%);
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
}
#top .nazotoki-hint-list-item-acd-inner {
	position: relative;
	z-index: 2;
}
#top .nazotoki-hint-list-item-acd-header {
	position: relative;
	z-index: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 68px;
  background-image: -moz-linear-gradient( 10deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -webkit-linear-gradient( 10deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -ms-linear-gradient( 10deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
}
#top .nazotoki-hint-list-item-acd-header::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	right: 5.19230769%;
	bottom: 0;
	width: 16px;
	height: 17px;
	margin: auto;
	background: url(../images/top/nazotoki_hint_plus.png) no-repeat center center / contain;
}
#top .nazotoki-hint-list-item-acd-header.is-active::before {
	background-image: url(../images/top/nazotoki_hint_minus.png);
}
#top .nazotoki-hint-list-item-acd-body {
	padding-block: 3.84615385% 6.92307692%;
}
#top .nazotoki-note {
	margin-top: 5.17241379%;
	padding-bottom: 6.89655172%;
}
#top #section02 {
	padding-block: 9.375% 6.875%;
	background: url(../images/top/section_02_bg.png) no-repeat top center / cover;
}

/* -------------------------
receipt
---------------------------- */
#receipt #main {
	background: #fff;
}
#receipt #section01 {
	position: relative;
	background: url(../images/receipt/section_01_bg.png) no-repeat top center / cover;
}
#receipt #section01::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-image: linear-gradient(100deg, #d7bd6e 0%, #f0dfa0 50%, #c1a65f 100%);
}
#receipt #section02 {
	background: url(../images/receipt/section_02_bg.png) no-repeat top center / cover;
}
#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 img {
	width: 100%;
	display: block;
}
#receipt .accordion-content-receipt .close {
	bottom: 0.65%;
	left: 50%;
	transform: translateX(-50%);
	width: 16% !important;
	position: absolute;
	height: 0.9%;
}
#receipt .accordion-content-receipt .close:hover {
	cursor: pointer;
}
#receipt .acd-inner {
	position: absolute;
	inset: 0;
}
#receipt .acd-inner::before {
	transition: .3s all ease-in-out;
	content: '';
	position: absolute;
	inset: 5px;
	border-radius: inherit;
	padding: 1px; /* この値が border の太さになる */
	background: linear-gradient(
		100deg,
		rgb(157, 127, 68) 0%,
		rgb(205, 179, 103) 19%,
		rgb(253, 230, 138) 44%,
		rgb(157, 127, 69) 100%
	);

	/* 内側をくり抜いて、枠線部分だけ見せる */
	-webkit-mask:
		linear-gradient(#fff 0 0) content-box,
		linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;

	pointer-events: none; /* クリックを下の要素に通す */
}
#receipt .acd-wrapper {
	position: relative;
	margin: 0 auto;
	/* padding: 0.86206897%; */
}
.section-application-box {
	position: relative;
	width: 90.625%;
	margin: auto;
	background-color: #fff;
}
.section-application-box-border {
	position: absolute;
	inset: 0;
	z-index: 1;
	background-image: -moz-linear-gradient( 90deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
	background-image: -webkit-linear-gradient(90deg, rgb(157, 127, 68) 0%, rgb(205, 179, 103) 19%, rgb(253, 230, 138) 44%, rgb(157, 127, 69) 100%);
	background-image: -ms-linear-gradient( 90deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
}
.section-application-box-bg {
	position: absolute;
	inset: 2px;
	z-index: 2;
	padding: 0.86206897%;
	background-color: #fff;
}
.section-application-box-bg-inner {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}
.section-application-box-bg-inner {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}
.section-application-box-deco-01,
.section-application-box-deco-02,
.section-application-box-deco-03,
.section-application-box-deco-04 {
	position: absolute;
	z-index: 3;
	width: 18px;
	height: 18px;
	margin-inline: auto;
	background: no-repeat center center url(../images/top/nazotoki_deco_01.png);
	background-size: contain;
}
.section-application-box-deco-01 {
	top: 0;
	left: 0;
	rotate: 90deg;
}
.section-application-box-deco-02 {
	top: 0;
	right: 0;
	rotate: -90deg;
}
.section-application-box-deco-03 {
	bottom: 0;
	left: 0;
}
.section-application-box-deco-04 {
	bottom: 0;
	right: 0;
}
.section-application-box-deco-02,
.section-application-box-deco-04 {
	background-image: url(../images/top/nazotoki_deco_02.png);
}

.section-application-box-bg-inner-border {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 2px;
	height: 100%;
}
.section-application-box-bg-inner-border-top,
.section-application-box-bg-inner-border-bottom {
	display: block;
	position: absolute;
	right: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background-image: linear-gradient(100deg, #d7bd6e 0%, #f0dfa0 50%, #c1a65f 100%);
}
.section-application-box-bg-inner-border-bottom {
	bottom: 0;
}
.section-application-box-inner {
	position: relative;
	z-index: 2;
	padding-block: 6.89655172%;
}
@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 #section01 {
	position: relative;
	background: url(../images/quiz/section_01_bg.png) no-repeat top center / cover;
}
#quiz #section02 {
	position: relative;
	background: #fff url(../images/quiz/section_02_bg.png) no-repeat top center / cover;
}
#quiz #section01::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-image: linear-gradient(100deg, #d7bd6e 0%, #f0dfa0 50%, #c1a65f 100%);
}
#quiz:has(.tab-content:nth-child(2).show) #bottom-btn-box {
	display: none !important;
}
#quiz #quiz-tab-buttons,
#sns #sns-tab-buttons {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 3.125%;
}
#quiz #quiz-tab-buttons::before,
#sns #sns-tab-buttons::before {
	display: block;
	content: "";
	position: absolute;
	z-index: 3;
	right: 0;
	bottom: 0;
	left: 0;
	height: 3px;
  background-image: -moz-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -webkit-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -ms-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
}
#quiz #quiz-tab-buttons .img-box {
	margin: 0;
}
#quiz 
#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(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: 33.77759267%;
}
#quiz .tab-content:nth-child(2) .swiper-quiz::before {
	transition: .3s all ease-in-out;
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: 3px;
	background: linear-gradient(0deg, rgb(157, 127, 68) 0%, rgb(205, 179, 103) 19%, rgb(253, 230, 138) 44%, rgb(157, 127, 69) 100%);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
}
#quiz .tab-content:nth-child(2) .swiper-slide img {
	aspect-ratio: 400 / 560;
	object-fit: contain;
}
#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;
}
@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 .twitter-tweet {
	width: 90% !important;
	margin: 6% auto 0 !important;
}
#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: 3;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #fff;
}
#sns #sns-tab-buttons .img-box {
	margin: 0;
}
#sns #section01 {
	position: relative;
	background: url(../images/sns/section_bg_01.png) no-repeat top center / cover;
	z-index: 2;
}
#sns #section01::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-image: linear-gradient(100deg, #d7bd6e 0%, #f0dfa0 50%, #c1a65f 100%);
}
#sns #section02 {
	background: #fff url(../images/sns/section_bg_02.png) no-repeat top center / cover;
	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;
}
#sns .tab-content:nth-child(1) .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: 7.69636268%;
}
#sns .tab-content:nth-child(1) .swiper-sns::before {
	transition: .3s all ease-in-out;
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: 3px;
	background: linear-gradient(0deg, rgb(157, 127, 68) 0%, rgb(205, 179, 103) 19%, rgb(253, 230, 138) 44%, rgb(157, 127, 69) 100%);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
}
#sns .tab-content:nth-child(1) .swiper-slide {
	width: 100% !important;
}
#sns .tab-content:nth-child(1) .swiper-slide img {
	aspect-ratio: 520 / 390;
	object-fit: contain;
}
#sns .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 3.84615385%;
	justify-content: center;
	bottom: unset;
	top: unset;
	left: unset;
	width: unset;
}
#sns .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%;
}
#sns .swiper-pagination-bullet-active {
	background-image: url(../images/quiz/active_bullet.png);
	background-repeat: no-repeat;
}
#sns .custom-prev-sns-0 {
	top: 43.5%;
	transform: translateY(-50%) translateX(-50%);
	cursor: pointer;
	width: 9.61538462%;
	height: auto;
	aspect-ratio: 1 / 1;
	left: 2.5%;
	z-index: 2;
}
#sns .custom-next-sns-0 {
	top: 43.5%;
	transform: translateY(-50%) translateX(50%);
	cursor: pointer;
	width: 9.61538462%;
	height: auto;
	aspect-ratio: 1 / 1;
	right: 2.5%;
	z-index: 2;
}
#sns .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%;
}
#sns .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%;
}
#sns .section-application-box:last-child .section-application-box-inner {
	padding-block: 0;
}
#sns .acd-btn {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 14.65vw;
	min-height: 100px;
	max-height: 140px;
}
#sns .acd-btn .acd-btn-icon {
	display: block;
	position: absolute;
	top: 0;
	right: 5.17241379%;
	bottom: 0;
	width: 16px;
	height: 16px;
	margin: auto;
}
#sns .acd-btn .acd-btn-icon::before,
#sns .acd-btn .acd-btn-icon::after {
	display: block;
	content: "";
	position: absolute;
	inset: 0;
	width: 100%;
	height: 3px;
	margin: auto;
	background-color: #000;
}
#sns .acd-btn .acd-btn-icon::after {
	rotate: 90deg;
}
#sns .acd-btn.is-active .acd-btn-icon::after {
	display: none;
}
#sns .acd-content {
	padding-bottom: 6.89655172%;
}
#sns .acd-content .close {
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 21% !important;
	position: absolute;
	height: 0.5%;
}
@media screen and (max-width: 767px) {
	#sns .section-application-sns-wrapper,
	#sns .section-application-sns-inner {
		border-radius: 14px;
	}
	#sns .acd-btn .acd-btn-icon::before,
	#sns .acd-btn .acd-btn-icon::after {
		height: 2px;
	}
}
/* -------------------------
tento
---------------------------- */
#tento .section-intro-box {
	border-radius: 20px;
	background-color: #fff;
}
#tento #section01 {
	position: relative;
	background: url(../images/tento/section_01_bg.png) no-repeat top center / cover;
	z-index: 2;
}
#tento #section02 {
	background: #fff url(../images/tento/section_02_bg.png) no-repeat top center / cover;
	z-index: 2;
}
#tento #tento-tab-buttons {
	position: relative;
	display: flex;
	align-items: flex-end;
	justify-content: center;
	gap: 4.0625%;
}
#tento #tento-tab-buttons::before {
	display: block;
	content: "";
	position: absolute;
	z-index: 3;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-image: -moz-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
	background-image: -webkit-linear-gradient(0deg, rgb(157, 127, 68) 0%, rgb(205, 179, 103) 19%, rgb(253, 230, 138) 44%, rgb(157, 127, 69) 100%);
	background-image: -ms-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
}
#tento #tento-tab-buttons .img-box {
	margin: 0;
}
#tento .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: 7.69636268%;
}
#tento .tab-content:nth-child(2) .swiper-tento::before {
	transition: .3s all ease-in-out;
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: 3px;
	background: linear-gradient(0deg, rgb(157, 127, 68) 0%, rgb(205, 179, 103) 19%, rgb(253, 230, 138) 44%, rgb(157, 127, 69) 100%);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
}
#tento .tab-content:nth-child(2) .swiper-slide {
	width: 100% !important;
}
#tento .tab-content:nth-child(2) .swiper-slide img {
	aspect-ratio: 520 / 390;
	object-fit: contain;
}
#tento .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 3.84615385%;
	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/red_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/red_active_bullet.png);
	background-repeat: no-repeat;
}
#tento .custom-prev-tento-0 {
	top: 43.5%;
	transform: translateY(-50%) translateX(-50%);
	cursor: pointer;
	width: 9.61538462%;
	height: auto;
	aspect-ratio: 1 / 1;
	left: 2.5%;
	z-index: 2;
}
#tento .custom-next-tento-0 {
	top: 43.5%;
	transform: translateY(-50%) translateX(50%);
	cursor: pointer;
	width: 9.61538462%;
	height: auto;
	aspect-ratio: 1 / 1;
	right: 2.5%;
	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: 4.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: url(../images/tento/section_01_bg.png) no-repeat top center / cover;
	position: relative;
	z-index: 2;
}
#brand #section01::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-image: linear-gradient(100deg, #d7bd6e 0%, #f0dfa0 50%, #c1a65f 100%);
}
#brand #section02 {
	background: #fff url(../images/tento/section_02_bg.png) no-repeat top center / cover;
	position: relative;
	z-index: 2;
}
#brand #section02::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-image: linear-gradient(100deg, #d7bd6e 0%, #f0dfa0 50%, #c1a65f 100%);
}
#brand #section01 > * {
	z-index: 3;
}
#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 .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 #section01 {
	position: relative;
	background: url(../images/goods/section_01_bg.png) no-repeat top center / cover;
	z-index: 2;
}
#goods #section01::before,
#goods #section02::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 3px;
  background-image: -moz-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -webkit-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -ms-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
}
#goods #section02 {
	position: relative;
	background: #fff url(../images/goods/section_02_bg.png) no-repeat top center / cover;
	z-index: 2;
}
#goods .swiper-box {
	position: relative;
	width: 90.625%;
	margin: 0 auto;
}
#goods .swiper-goods {
	background-color: #fff;
}
#goods .swiper-goods::before {
	transition: .3s all ease-in-out;
	content: '';
	position: absolute;
	inset: 0;
	border-radius: inherit;
	padding: 3px;
	background: linear-gradient(0deg, rgb(157, 127, 68) 0%, rgb(205, 179, 103) 19%, rgb(253, 230, 138) 44%, rgb(157, 127, 69) 100%);
	-webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
	-webkit-mask-composite: xor;
	mask-composite: exclude;
	pointer-events: none;
}
#goods .swiper-slide {
	width: 100% !important;
	padding: 5.17241379%;
}
#goods .swiper-slide img {
	aspect-ratio: 580 / 435;
	object-fit: contain;
}
#goods .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 3.84615385%;
	justify-content: center;
	bottom: unset;
	top: unset;
	left: unset;
	width: unset;
}
#goods .swiper-pagination-bullet {
	width: 28px;
	height: auto;
	aspect-ratio: 1 / 1;
	background: unset;
	background-image: url(../images/goods/orange_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/orange_active_bullet.png);
	background-repeat: no-repeat;
}
#goods #goods05 .swiper-pagination-bullet {
	background-image: url(../images/goods/green_bullet.png);
}
#goods #goods05 .swiper-pagination-bullet-active {
	background-image: url(../images/goods/green_active_bullet.png);
}
#goods [id^="custom-prev-goods-"] {
	top: 43.5%;
	transform: translateY(-50%) translateX(-50%);
	cursor: pointer;
	width: 9.61538462%;
	height: auto;
	aspect-ratio: 1 / 1;
	left: 2.5%;
	z-index: 2;
}
#goods [id^="custom-next-goods-"] {
	top: 43.5%;
	transform: translateY(-50%) translateX(50%);
	cursor: pointer;
	width: 9.61538462%;
	height: auto;
	aspect-ratio: 1 / 1;
	right: 2.5%;
	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 {
	}
}
/* -------------------------
itemlist
---------------------------- */
:is(#itemlist) :is(.copy-txt, .f-sns) {
	display: none;
}

#itemlist #section-01 {
	background: url(../images/itemlist/section_01_bg.png) no-repeat top center / cover;
	position: relative;
	z-index: 12;
}
#itemlist #section-02 {
	background: #fff;
	background-size: 100%;
}
#itemlist .accordion {
}
#itemlist .item-accordion-header {
	cursor: pointer;
	transition: .3s;
	position: relative;
}
#itemlist .item-accordion-header::after {
	content: "";
	position: absolute;
	background: url(../images/itemlist/acd_icon.png) no-repeat center center / contain;
	width: 17px;
	height: 9px;
	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: -6px;
	padding-block: 6% 8%;
	transform: translateY(0%) translateX(-50%);
  box-shadow: 0px 3px 20px 0px rgba(0, 0, 0, 0.2);
	background: #fff;
}
#itemlist .item-accordion-content.open {
	display: block;
}
#itemlist .item-accordion-content li {
	padding: 5% 9.69%;
	line-height: 1.2;
	color: #000;
	font-size: 22px;
	font-weight: 700;
	font-family: var(--font-mincho);
}
#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: #000;
	font-weight: 700;
	margin: 3.5% 0;
	font-size: 26px;
	font-family: var(--font-mincho);
}
#itemlist .item-box {
	padding: 3.5% 0;
	font-size: 22px;
	font-weight: 600;
	color: #000;
	border-bottom: 2px solid #604c3f;
	font-family: var(--font-mincho);
}

#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 .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;
}
#top:is(.after-20261116) :is(.copy-txt, .f-sns, #h-btn) {
	display: none;
}
:is(#app, #exchange_1000) #footer,
body:is(.after-20261116) #footer {
	padding-block: 12.5% 10.9375% !important;
	background-image: url(../images/common/f_bg_02.png);
}
#app #wrapper {
	margin-top: 0;
}
#app #section01 {
	position: relative;
	background: url(../images/app/section_01_bg.png) no-repeat top center / cover;
}
#app #section02 {
	position: relative;
	background: #fff url(../images/app/section_02_bg.png) no-repeat top center / cover;
}
#app #section01::before,
#app #section02::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-image: linear-gradient(100deg, #d7bd6e 0%, #f0dfa0 50%, #c1a65f 100%);
}
/* -------------------------
exchange_1000
---------------------------- */
#exchange_1000 header {
	display: none;
	opacity: 0;
	pointer-events: none;
}
#exchange_1000 #wrapper {
	margin-top: 0;
}
#exchange_1000 #section01 {
	position: relative;
	background: url(../images/exchange_1000/section_01_bg.png) no-repeat top center / cover;
	z-index: 2;
}
#exchange_1000 #section01::before {
	display: block;
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 3px;
  background-image: -moz-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -webkit-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
  background-image: -ms-linear-gradient( 0deg, rgb(157,127,68) 0%, rgb(205,179,103) 19%, rgb(253,230,138) 44%, rgb(157,127,69) 100%);
}
/* -------------------------
exchange_brand
---------------------------- */
#exchange_brand #section01 {
	position: relative;
	background: #fff url(../images/exchange_brand/section_01_bg.png) no-repeat top center / cover;
	z-index: 2;
}
#exchange_brand #section02 {
	background: #fff url(../images/exchange_brand/section_02_bg.png) no-repeat top center / cover;
	z-index: 2;
}
#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 {
	display: none;
	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: 3.44827586%;
	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/tento/red_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/tento/red_active_bullet.png);
    background-repeat: no-repeat;
}
#exchange_brand .intro-comment {
	font-size: 14px;
	line-height: 1.1428571429;
}
#exchange_brand .intro-comment p {
	text-indent: 0;
	padding-left: 0;
}
@media screen and (max-width: 767px) {
	#exchange_brand .swiper-pagination-bullet {
		width: 5.835%;
		height: auto;
	}
	#exchange_brand .swiper-pagination {
		gap: 6.25vw;
	}
	#exchange_brand .intro-comment {
		font-size: 2vw;
	}
}
/* -------------------------
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;
	}
}
