@charset "UTF-8";
html {
	color: var(--p2);
	font-family: var(--ja);
	font-feature-settings: "palt";
	font-optical-sizing: auto;
	font-size: 2.5641025641vw;
}
@media (min-width: 769px) {
	html {
		font-size: 0.75vw;
	}
}

img {
	height: auto;
	width: 100%;
}

:root {
	--w: #fff;
	--b: #000;
	--p1: #ff5b12;
	--p2: #005437;
	--p3: #1eb53a;
	--p4: #afe104;
	--p5: #02bef9;
	--p6: #006b54;
	--p7: #f7f4f2;
	--ja: "Noto Sans JP", sans-serif;
	--thin: 100;
	--exLight: 200;
	--light: 300;
	--regular: 400;
	--medium: 500;
	--sBold: 600;
	--bold: 700;
	--exBold: 800;
	--black: 900;
	--pc: 1600;
	--sp: 390;
	--sm: (max-width: 374px);
	--md: (max-width: 768px);
	--lg: (max-width: 1024px);
	--xl: (max-width: 1280px);
	--mx: (max-width: 1600px);
	--md-up: (min-width: 769px);
	--lg-up: (min-width: 1025px);
	--xl-up: (min-width: 1281px);
	--mx-up: (min-width: 1601px);
}

@media (min-width: 769px) {
	body {
		background-color: var(--p7);
	}
	body::before {
		background-color: var(--p1);
		content: "";
		display: block;
		height: 16px;
		inset: 0 0 auto;
		position: fixed;
		z-index: 9999;
	}
}

.wrapper {
	padding-block-start: 17.9487179487%;
}
@media (min-width: 769px) {
	.wrapper {
		align-items: start;
		display: grid;
		grid-template-areas: "menu contents aside" "menu footer aside";
		grid-template-columns: 1fr 33.125vw 1fr;
		grid-template-rows: repeat(2, auto);
		margin-block-start: 16px;
		padding-block-start: 0;
	}
}

.header {
	background-color: var(--w);
	inset: 0 0 auto;
	position: fixed;
	z-index: 9000;
}
@media (min-width: 769px) {
	.header {
		align-items: flex-end;
		background-color: transparent !important;
		grid-area: menu;
		inset-inline-start: auto;
		margin-inline: auto 9vw;
		padding-block: 5.25vw;
		padding-inline-start: 1.125vw;
		position: sticky;
		width: 19.375vw;
		z-index: auto;
	}
}
.header .head {
	align-items: center;
	aspect-ratio: 390/70;
	display: flex;
	justify-content: space-between;
}
@media (min-width: 769px) {
	.header .head {
		display: block;
	}
}
.header .head .trademark {
	margin-inline-start: 5.1282051282%;
	width: 38.9743589744%;
}
@media (min-width: 769px) {
	.header .head .trademark {
		margin-inline-start: 0;
		width: 100%;
	}
}
.header .head .menu {
	margin-inline-end: 7.1794871795%;
	width: 7.6923076923%;
}
@media (any-hover: hover) {
	.header .head .menu {
		transition: opacity 0.3s linear;
	}
	.header .head .menu:hover {
		opacity: 0.5;
	}
}
@media (min-width: 769px) {
	.header .head .menu {
		display: none;
	}
}
.header .body {
	align-items: center;
	display: flex;
	flex-direction: column;
	height: 0;
	opacity: 0;
	overflow: hidden;
}
@media (min-width: 769px) {
	.header .body {
		display: block;
		height: auto;
		opacity: 1;
	}
}
.header .body .index {
	padding-block: 9.7435897436% 15.3846153846%;
	width: 91.2820512821%;
}
@media (min-width: 769px) {
	.header .body .index {
		padding-block: 12.875vw 0vw;
		width: 18.25vw;
	}
}
.header .body .index .local {
	margin-inline: auto;
	width: 85.9550561798%;
}
@media (min-width: 769px) {
	.header .body .index .local {
		width: 100%;
	}
}
.header .body .index .local li {
	aspect-ratio: 306/38;
}
.header .body .index .local li:not(:first-of-type) {
	margin-block-start: 10.4575163399%;
}
.header .body .index .local li:has(img[src*="mn_txt_faq"]) {
	aspect-ratio: 306/42;
}
.header .body .index .local li:has(img[src*="mn_txt_faq"]) + li {
	margin-block-start: 9.1503267974%;
}
@media (min-width: 769px) {
	.header .body .index .local li {
		aspect-ratio: 292/26;
	}
	.header .body .index .local li:not(:first-of-type) {
		margin-block-start: 8.904109589%;
	}
	.header .body .index .local li:has(img[src*="mn_txt_faq"]) {
		aspect-ratio: 292/28;
	}
	.header .body .index .local li:has(img[src*="mn_txt_faq"]) + li {
		margin-block-start: 8.2191780822%;
	}
}
@media (any-hover: hover) {
	.header .body .index .local li a {
		transition: opacity 0.3s linear;
	}
	.header .body .index .local li a:hover {
		opacity: 0.5;
	}
}
.header .body .index .local li img {
	height: 100%;
	width: auto;
}
.header .body .index .shop {
	align-items: center;
	background-color: var(--p4);
	border-radius: 1.0256410256vw;
	display: flex;
	flex-direction: column;
	margin-block-start: 25.2808988764%;
	padding-block: 6.1797752809% 7.3033707865%;
}
@media (min-width: 769px) {
	.header .body .index .shop {
		display: none;
	}
}
.header .body .index .shop dt {
	color: var(--w);
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.12em;
	line-height: 1.2777777778;
}
.header .body .index .shop dd {
	background-color: var(--w);
	border-radius: 1.0256410256vw;
	margin-block-start: 2.808988764%;
	overflow: hidden;
	position: relative;
	width: 87.0786516854%;
}
@media (min-width: 769px) {
	.header .body .index .shop dd {
		border-radius: 4px;
	}
}
.header .body .index .shop dd:first-of-type {
	margin-block-start: 5.0561797753%;
}
.header .body .index .shop dd:has(span)::after {
	aspect-ratio: 88/22;
	background-color: rgba(0, 0, 0, 0.3);
	border-end-end-radius: 1.0256410256vw;
	color: var(--w);
	content: "Coming soon";
	display: flex;
	font-size: 1.2rem;
	font-weight: var(--sBold);
	inset-block-start: 0;
	inset-inline-start: 0;
	line-height: 1.9166666667;
	padding-inline: 1.935483871%;
	position: absolute;
	width: -moz-fit-content;
	width: fit-content;
}
@media (min-width: 769px) {
	.header .body .index .shop dd:has(span)::after {
		border-end-end-radius: 4px;
	}
}
.header .body .index .shop dd a,
.header .body .index .shop dd span {
	align-items: center;
	aspect-ratio: 310/70;
	display: flex;
	justify-content: center;
}
.header .body .index .shop dd a {
	position: relative;
}
.header .body .index .shop dd a::after {
	aspect-ratio: 14/14;
	background: url(../img/cmn_ico_blank.svg) no-repeat 0 0;
	background-size: contain;
	content: "";
	display: block;
	inset-block: auto;
	inset-inline-end: 0;
	margin-inline-end: 8.3870967742%;
	position: absolute;
	width: 4.5161290323%;
}
@media (any-hover: hover) {
	.header .body .index .shop dd a {
		transition: opacity 0.3s linear;
	}
	.header .body .index .shop dd a:hover {
		opacity: 0.5;
	}
}
.header .body .index .shop dd img {
	flex-shrink: 0;
	width: 45.8064516129%;
}
.header .body .index .media {
	display: flex;
	justify-content: center;
	margin-block-start: 16.8539325843%;
}
@media (min-width: 769px) {
	.header .body .index .media {
		display: none;
	}
}
.header .body .index .media li {
	width: 10.1123595506%;
}
.header .body .index .media li:not(:first-of-type) {
	margin-inline-start: 8.4269662921%;
}
@media (any-hover: hover) {
	.header .body .index .media li a {
		transition: opacity 0.3s linear;
	}
	.header .body .index .media li a:hover {
		opacity: 0.5;
	}
}
.header .body .close {
	align-items: flex-start;
	background-color: var(--p7);
	display: flex;
	flex-grow: 1;
	justify-content: center;
	opacity: 1;
	padding-block: 10.2564102564%;
	width: 100%;
}
@media (min-width: 769px) {
	.header .body .close {
		display: none;
	}
}
.header .body .close .button {
	width: 24.6153846154%;
}
@media (any-hover: hover) {
	.header .body .close .button {
		transition: filter 0.3s linear;
	}
	.header .body .close .button:hover {
		filter: brightness(1.4);
	}
}
.header.active {
	background-color: var(--w);
	height: 100%;
	inset: 0;
	overflow: auto;
	position: fixed;
	width: 100%;
	z-index: 9000;
}
.header.active .head {
	width: 100%;
}
.header.active .head .menu {
	background: url(../img/mn_btn_close.svg) no-repeat 50% 50%;
	background-size: contain;
}
.header.active .head .menu img {
	visibility: hidden;
}
.header.active .body {
	height: -moz-fit-content;
	height: fit-content;
	opacity: 1;
	transition: all 0.5s ease-in-out;
}

.where {
	display: none;
}
@media (min-width: 769px) {
	.where {
		display: block;
		grid-area: aside;
		inset-block-start: 0;
		inset-inline-start: 0;
		margin-inline-start: 5.375vw;
		padding-block: 12.875vw;
		position: sticky;
		width: 23vw;
	}
	.where .shop {
		align-items: center;
		background-color: var(--p1);
		border-radius: 4px;
		display: flex;
		flex-direction: column;
		padding-block: 10.8695652174% 11.9565217391%;
	}
	.where .shop::before {
		aspect-ratio: 310/44;
		background: url(../img/whr_txt_where.svg) no-repeat 50% 0;
		background-size: contain;
		content: "";
		display: block;
		width: 84.2391304348%;
	}
	.where .shop dt {
		color: var(--w);
		font-size: 1.33rem;
		font-weight: bold;
		letter-spacing: 0.12em;
		line-height: 1.2777777778;
		margin-block-start: 3.8709677419%;
		text-align: center;
	}
	.where .shop dd {
		background-color: var(--w);
		border-radius: 4px;
		margin-block-start: 2.5806451613%;
		overflow: hidden;
		position: relative;
		width: 84.2391304348%;
	}
	.where .shop dd:first-of-type {
		margin-block-start: 9.0322580645%;
	}
	.where .shop dd:has(span)::after {
		aspect-ratio: 88/22;
		background-color: rgba(0, 0, 0, 0.3);
		border-end-end-radius: 4px;
		color: var(--w);
		content: "Coming soon";
		display: flex;
		font-size: 1.2rem;
		font-weight: var(--sBold);
		inset-block-start: 0;
		inset-inline-start: 0;
		line-height: 1.9166666667;
		padding-inline: 1.935483871%;
		position: absolute;
		width: -moz-fit-content;
		width: fit-content;
	}
	.where .shop dd a,
	.where .shop dd span {
		align-items: center;
		aspect-ratio: 310/70;
		display: flex;
		justify-content: center;
	}
	.where .shop dd a {
		position: relative;
	}
	.where .shop dd a::after {
		aspect-ratio: 14/14;
		background: url(../img/cmn_ico_blank.svg) no-repeat 0 0;
		background-size: contain;
		content: "";
		display: block;
		inset-block: auto;
		inset-inline-end: 0;
		margin-inline-end: 8.3870967742%;
		position: absolute;
		width: 4.5161290323%;
	}
}
@media (min-width: 769px) and (any-hover: hover) {
	.where .shop dd a {
		transition: opacity 0.3s linear;
	}
	.where .shop dd a:hover {
		opacity: 0.5;
	}
}
@media (min-width: 769px) {
	.where .shop dd img {
		flex-shrink: 0;
		width: 45.8064516129%;
	}
}

.footer {
	background-color: var(--w);
	padding-block-end: 10.2564102564%;
}
@media (min-width: 769px) {
	.footer {
		grid-area: footer;
	}
}
.footer:has(.index)::before {
	aspect-ratio: 390/9;
	background-color: var(--p1);
	content: "";
	display: block;
	margin-block-end: 13.8461538462%;
}
.footer .index {
	margin-inline: auto;
	width: 84.6153846154%;
}
.footer .index .local li {
	aspect-ratio: 330/28;
}
.footer .index .local li:not(:first-of-type) {
	margin-block-start: 7.2727272727%;
}
.footer .index .local li:has(img[src*="ft_txt_faq"]) {
	aspect-ratio: 330/32;
}
.footer .index .local li:has(img[src*="ft_txt_faq"]) + li {
	margin-block-start: 6.0606060606%;
}
@media (any-hover: hover) {
	.footer .index .local li a {
		transition: opacity 0.3s linear;
	}
	.footer .index .local li a:hover {
		opacity: 0.5;
	}
}
.footer .index .local li img {
	height: 100%;
	width: auto;
}
.footer .index .global {
	border-block: solid 1px var(--p4);
	margin-block-start: 15.1515151515%;
	padding-block: 10.303030303% 11.5151515152%;
}
.footer .index .global li {
	font-size: 1.4rem;
	font-weight: var(--medium);
	letter-spacing: -0.02em;
	line-height: 1.5714285714;
}
.footer .index .global li:not(:first-of-type) {
	margin-block-start: 6.6666666667%;
}
@media (any-hover: hover) {
	.footer .index .global li a {
		transition: opacity 0.3s linear;
	}
	.footer .index .global li a:hover {
		opacity: 0.5;
	}
}
.footer .index + .media {
	margin-block-start: 18.1818181818%;
}
.footer .media {
	display: flex;
	justify-content: center;
	margin: 27.1794871795% auto 0;
	width: 84.6153846154%;
}
.footer .media li {
	width: 10.9090909091%;
}
.footer .media li:not(:first-of-type) {
	margin-inline-start: 9.0909090909%;
}
@media (any-hover: hover) {
	.footer .media li a {
		transition: opacity 0.3s linear;
	}
	.footer .media li a:hover {
		opacity: 0.5;
	}
}
.footer .rights {
	margin: 11.7948717949% auto 0;
	width: 82.0512820513%;
}

.contents {
	background-color: var(--w);
}
@media (min-width: 769px) {
	.contents {
		grid-area: contents;
	}
}
.contents.home {
	background-color: var(--p7);
}
.contents.home .theme .lead {
	margin-block-start: 3.0769230769%;
}
.contents.home .theme .lead .text {
	font-size: 1.8rem;
	font-weight: var(--medium);
	letter-spacing: 0.02em;
	line-height: 2.1111111111;
	margin-inline: auto;
	width: 81.5384615385%;
}
.contents.home .theme .lead .text:first-of-type {
	margin-block-start: 7.1794871795%;
}
.contents.home .theme .lead .trademark {
	display: block;
	margin: 10.2564102564% auto 0;
	width: 86.6666666667%;
}
.contents.home .lineup {
	margin-block-start: 24.6153846154%;
}
.contents.home .lineup .usp {
	background-color: var(--p6);
	padding-block-end: 10.2564102564%;
}
.contents.home .lineup .usp .label {
	aspect-ratio: 390/396;
	position: relative;
}
.contents.home .lineup .usp .label img {
	inset-block-end: 0;
	inset-inline: 0;
	position: absolute;
	width: 100%;
}
.contents.home .lineup .usp .point {
	display: grid;
	gap: 2.5641025641vw;
	grid-template-areas: "a b" "c d";
	grid-template-columns: repeat(2, 1fr);
	grid-template-rows: repeat(2, 1fr);
	margin-block-start: 6.6666666667%;
	margin-inline: auto;
	width: 87.6923076923%;
}
@media (min-width: 769px) {
	.contents.home .lineup .usp .point {
		gap: 13.5897435897px;
	}
}
.contents.home .lineup .usp .point li {
	align-items: center;
	background-color: var(--p4);
	border-radius: 1.0256410256vw;
	display: flex;
	font-size: 2rem;
	font-weight: bold;
	height: 100%;
	justify-content: center;
	letter-spacing: 0.02em;
	line-height: 1.2;
	padding: 9.3567251462% 6.432748538%;
	text-align: center;
}
@media (min-width: 769px) {
	.contents.home .lineup .usp .point li {
		border-radius: 4px;
	}
}
.contents.home .lineup .usp .point li:nth-of-type(1) {
	grid-area: a;
}
.contents.home .lineup .usp .point li:nth-of-type(2) {
	grid-area: b;
}
.contents.home .lineup .usp .point li:nth-of-type(3) {
	grid-area: c;
}
.contents.home .lineup .usp .point li:nth-of-type(4) {
	grid-area: d;
}
.contents.home .lineup .item {
	margin-block-start: 17.9487179487%;
}
.contents.home .lineup .item .lead {
	color: var(--p1);
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.06em;
	line-height: 2;
	margin: 3.5897435897% auto 0;
	text-align: center;
	width: -moz-fit-content;
	width: fit-content;
}
.contents.home .lineup .item .lead::after {
	background-color: var(--p1);
	content: "";
	display: block;
	height: 1px;
	margin-block-start: -0.45em;
}
.contents.home .lineup .item .label {
	margin: 2.0512820513% auto 0;
	width: 89.7435897436%;
}
.contents.home .lineup .item .label dt {
	color: var(--p2);
	font-size: 2.4rem;
	font-weight: bold;
	letter-spacing: 0.08em;
	line-height: 1.1666666667;
	text-align: center;
}
.contents.home .lineup .item .label dd {
	background-color: var(--p2);
	border-radius: 0.7692307692vw;
	color: var(--w);
	font-size: 1.7rem;
	font-weight: bold;
	letter-spacing: 0.06em;
	margin: 5.1428571429% auto 0;
	padding: 2.2857142857% 4.5714285714%;
	width: -moz-fit-content;
	width: fit-content;
}
@media (min-width: 769px) {
	.contents.home .lineup .item .label dd {
		border-radius: 3px;
	}
}
.contents.home .lineup .item .volume {
	margin: 0.5128205128% auto 0;
	text-align: center;
	width: 89.7435897436%;
}
.contents.home .lineup .item .volume dt,
.contents.home .lineup .item .volume dd {
	color: var(--p2);
	display: inline-block;
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: 0.06em;
	line-height: 2;
}
.contents.home .lineup .item .volume dd {
	margin-inline-start: 0.3em;
}
.contents.home .lineup .item .button {
	background-color: var(--p1);
	margin: 2.0512820513% auto 0;
	position: relative;
	width: 88.2051282051%;
}
@media (any-hover: hover) {
	.contents.home .lineup .item .button {
		transition: filter 0.3s linear;
	}
	.contents.home .lineup .item .button:hover {
		filter: brightness(1.4);
	}
}
.contents.home .lineup .item .button:first-of-type {
	margin-block-start: 8.2051282051%;
}
.contents.home .lineup .item .button button {
	align-items: center;
	aspect-ratio: 344/62;
	color: var(--w);
	display: flex;
	font-size: 2rem;
	font-weight: bold;
	justify-content: center;
	letter-spacing: 0.02em;
	line-height: 1.8;
	padding-inline: 20.3488372093%;
	position: relative;
	width: 100%;
	z-index: 2;
}
.contents.home .lineup .item .button::before {
	aspect-ratio: 1/1;
	background: url(../img/prd_ico_open.svg) no-repeat 50% 50%;
	background-size: cover;
	content: "";
	display: block;
	inset-block: 0;
	inset-inline-end: 0;
	inset-inline-end: 8.7209302326%;
	margin-block: auto;
	position: absolute;
	width: 4.6511627907%;
	z-index: 1;
}
.modal {
	background-color: var(--w);
	border-radius: 1.0256410256vw;
	margin-inline: auto;
	opacity: 0;
	overflow: hidden;
	padding: 0;
	transition: opacity 0.3s linear;
	width: 93.3333333333vw;
}
@media (min-width: 769px) {
	.modal {
		border-radius: 4px;
		width: 494.6666666667px;
	}
}
.modal .close {
	align-items: center;
	aspect-ratio: 364/70;
	background-color: var(--p7);
	display: flex;
	justify-content: center;
}
.modal .close button {
	width: 25.8241758242%;
}
@media (any-hover: hover) {
	.modal .close button {
		transition: filter 0.3s linear;
	}
	.modal .close button:hover {
		filter: brightness(1.4);
	}
}
.modal.buying .dealer {
	align-items: center;
	background-color: var(--p4);
	display: flex;
	flex-direction: column;
	padding-block: 10.4395604396% 13.7362637363%;
}
.modal.buying .dealer .text {
	color: var(--p2);
	font-size: 2.4rem;
	font-weight: bold;
	letter-spacing: 0.1em;
	margin-block-end: 5.4945054945%;
	text-align: center;
}
.modal.buying .dealer .list {
	width: 85.1648351648%;
}
.modal.buying .dealer .list dt {
	border-block-end: solid 3px var(--p2);
	color: var(--p2);
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.04em;
	padding-block-end: 0.2em;
	text-align: center;
}
.modal.buying .dealer .list dd {
	background-color: var(--w);
	border-radius: 1.0256410256vw;
	overflow: hidden;
	position: relative;
}
@media (min-width: 769px) {
	.modal.buying .dealer .list dd {
		border-radius: 4px;
	}
}
.modal.buying .dealer .list dd:not(:first-child) {
	margin-block-start: 6.8493150685%;
}
.modal.buying .dealer .list dd:has(span)::after {
	aspect-ratio: 88/22;
	background-color: rgba(0, 0, 0, 0.3);
	border-end-end-radius: 1.0256410256vw;
	color: var(--w);
	content: "Coming soon";
	display: flex;
	font-size: 1.2rem;
	font-weight: var(--sBold);
	inset-block-start: 0;
	inset-inline-start: 0;
	line-height: 1.9166666667;
	padding-inline: 4.1095890411%;
	position: absolute;
	width: -moz-fit-content;
	width: fit-content;
}
@media (min-width: 769px) {
	.modal.buying .dealer .list dd:has(span)::after {
		border-end-end-radius: 4px;
	}
}
.modal.buying .dealer .list dd a,
.modal.buying .dealer .list dd span {
	align-items: center;
	aspect-ratio: 2.4333333333;
	display: flex;
	justify-content: center;
}
.modal.buying .dealer .list dd a {
	position: relative;
}
.modal.buying .dealer .list dd a::after {
	aspect-ratio: 14/14;
	background: url(../img/cmn_ico_blank.svg) no-repeat 0 0;
	background-size: contain;
	content: "";
	display: block;
	inset-block-end: 0;
	inset-inline-end: 0;
	margin-block-end: 6.1643835616%;
	margin-inline-end: 6.1643835616%;
	position: absolute;
	width: 6.1643835616%;
}
@media (any-hover: hover) {
	.modal.buying .dealer .list dd a {
		transition: opacity 0.3s linear;
	}
	.modal.buying .dealer .list dd a:hover {
		opacity: 0.5;
	}
}
.modal.buying .dealer .list dd img {
	flex-shrink: 0;
	width: 75.3424657534%;
}
.modal.buying .dealer .list dd img[src$="yahoo.webp"] {
	width: 80.8219178082%;
}
.modal.buying .dealer .list li {
	background-color: var(--w);
	border-radius: 1.0256410256vw;
	overflow: hidden;
	position: relative;
}
@media (min-width: 769px) {
	.modal.buying .dealer .list li {
		border-radius: 4px;
	}
}
.modal.buying .dealer .list li:not(:first-child) {
	margin-block-start: 3.2258064516%;
}
.modal.buying .dealer .list li:has(span)::after {
	aspect-ratio: 88/22;
	background-color: rgba(0, 0, 0, 0.3);
	border-end-end-radius: 1.0256410256vw;
	color: var(--w);
	content: "Coming soon";
	display: flex;
	font-size: 1.2rem;
	font-weight: var(--sBold);
	inset-block-start: 0;
	inset-inline-start: 0;
	line-height: 1.9166666667;
	padding-inline: 1.935483871%;
	position: absolute;
	width: -moz-fit-content;
	width: fit-content;
}
@media (min-width: 769px) {
	.modal.buying .dealer .list li:has(span)::after {
		border-end-end-radius: 4px;
	}
}
.modal.buying .dealer .list li a,
.modal.buying .dealer .list li span {
	align-items: center;
	aspect-ratio: 4.4285714286;
	display: flex;
	justify-content: center;
}
.modal.buying .dealer .list li a {
	position: relative;
}
.modal.buying .dealer .list li a::after {
	aspect-ratio: 14/14;
	background: url(../img/cmn_ico_blank.svg) no-repeat 0 0;
	background-size: contain;
	content: "";
	display: block;
	inset-block: auto;
	inset-inline-end: 0;
	margin-inline-end: 8.3870967742%;
	position: absolute;
	width: 4.5161290323%;
}
@media (any-hover: hover) {
	.modal.buying .dealer .list li a {
		transition: opacity 0.3s linear;
	}
	.modal.buying .dealer .list li a:hover {
		opacity: 0.5;
	}
}
.modal.buying .dealer .list li img {
	flex-shrink: 0;
	width: 45.8064516129%;
}
.modal.buying .dealer .list li img[src$="yahoo.webp"] {
	width: 57.4193548387%;
}
.modal.buying .dealer .capacity {
	display: grid;
	grid-template-areas: "text text text" "cp1 . cp2";
	grid-template-columns: 47.0967741935% auto 47.0967741935%;
	grid-template-rows: repeat(2, auto);
	width: 85.1648351648%;
}
.modal.buying .dealer .capacity .text {
	grid-area: text;
	margin-block-end: 9.6774193548%;
}
.modal.buying .dealer .capacity .cp1 {
	grid-area: cp1;
	width: auto;
}
.modal.buying .dealer .capacity .cp2 {
	grid-area: cp2;
	width: auto;
}
.modal.buying .dealer .more {
	background-color: var(--p2);
	border-radius: 1.0256410256vw;
	margin-block-start: 9.8901098901%;
	overflow: hidden;
	width: 85.1648351648%;
}
@media (min-width: 769px) {
	.modal.buying .dealer .more {
		border-radius: 4px;
	}
}
@media (any-hover: hover) {
	.modal.buying .dealer .more {
		transition: filter 0.3s linear;
	}
	.modal.buying .dealer .more:hover {
		filter: brightness(1.4);
	}
}
.modal.buying .dealer .more a {
	align-items: center;
	aspect-ratio: 310/70;
	color: var(--w);
	-moz-column-gap: 8.3870967742%;
	column-gap: 8.3870967742%;
	display: flex;
	font-size: 2rem;
	font-weight: bold;
	justify-content: space-between;
	letter-spacing: 0.06em;
	line-height: 1.8;
	padding-inline: 10.3225806452%;
	width: 100%;
}
@media (min-width: 769px) {
	.modal.buying .dealer .more a {
		font-size: 1.6rem;
	}
}
.modal.buying .dealer .more a::after {
	aspect-ratio: 16/8;
	background: url(../img/cmn_ico_anchor.svg) no-repeat 0 0;
	background-size: cover;
	content: "";
	display: block;
	flex-shrink: 0;
	width: 6.5040650407%;
}
.modal.detail .ingredients {
	color: var(--p2);
	margin-inline: auto;
	padding-block: 10.989010989%;
	width: 85.7142857143%;
}
.modal.detail .ingredients .name {
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.08em;
	line-height: 1.4;
	text-align: center;
}
@media (min-width: 769px) {
	.modal.detail .ingredients .name {
		font-size: 1.6rem;
	}
}
.modal.detail .ingredients .list {
	font-size: 0;
	margin-block-start: 7.0512820513%;
}
.modal.detail .ingredients .list dt {
	display: inline;
	font-size: 1.6rem;
	font-weight: var(--medium);
	letter-spacing: 0.08em;
	line-height: 1.5;
}
@media (min-width: 769px) {
	.modal.detail .ingredients .list dt {
		font-size: 1.28rem;
	}
}
.modal.detail .ingredients .list dd {
	display: inline;
	font-size: 1.6rem;
	font-weight: var(--medium);
	letter-spacing: 0.08em;
	line-height: 1.5;
}
@media (min-width: 769px) {
	.modal.detail .ingredients .list dd {
		font-size: 1.28rem;
	}
}

.mfp-bg {
	background-color: var(--p2);
	opacity: 0;
	transition: opacity 0.3s linear;
}
.mfp-ready .modal {
	opacity: 1;
}
.mfp-ready.mfp-bg {
	opacity: 0.6;
}
.mfp-removing .modal {
	opacity: 0;
}
.mfp-removing.mfp-bg {
	opacity: 0;
}

.contents.home .lineup .usp + .item {
	margin-block-start: 24.1025641026%;
}
.contents.home .features {
	background-color: var(--p4);
	margin-block-start: 31.2820512821%;
	padding-block: 35.8974358974% 20.5128205128%;
}
.contents.home .features .package {
	display: flex;
	flex-direction: column-reverse;
	margin-block-start: 9.2307692308%;
}
.contents.home .features .package figcaption {
	margin: 0 auto 8.2051282051%;
	width: 91.2820512821%;
}
.contents.home .features .point {
	background-color: var(--w);
	border-radius: 1.0256410256vw;
	margin: 13.8461538462% auto 0;
	padding: 12.8205128205% 4.8717948718% 11.7948717949%;
	position: relative;
	width: 93.3333333333%;
}
@media (min-width: 769px) {
	.contents.home .features .point {
		border-radius: 4px;
	}
}
.contents.home .features .point:first-of-type {
	margin-block-start: 25.1282051282%;
}
.contents.home .features .point.pnt01 {
	padding-block-start: 15.3846153846%;
}
.contents.home .features .point.pnt03 {
	padding-block-end: 6.1538461538%;
}
.contents.home .features .point::before {
	aspect-ratio: 364/50;
	background: no-repeat 50% 0;
	background-size: contain;
	content: "";
	display: block;
	inset-block-start: 0;
	inset-inline: 0;
	margin-block-start: -6.5934065934%;
	position: absolute;
}
.contents.home .features .point.pnt01::before {
	background-image: url(../img/ftr_txt_point01.svg);
}
.contents.home .features .point.pnt02::before {
	background-image: url(../img/ftr_txt_point02.svg);
}
.contents.home .features .point.pnt03::before {
	background-image: url(../img/ftr_txt_point03.svg);
}
.contents.home .features .point.pnt04::before {
	background-image: url(../img/ftr_txt_point04.svg);
}
.contents.home .features .point .title {
	color: var(--p2);
	font-size: 3.6rem;
	font-weight: bold;
	letter-spacing: 0.02em;
	line-height: 1.2222222222;
	text-align: center;
}
.contents.home .features .point .title:has(span) {
	margin-block-start: -4.2944785276%;
}
.contents.home .features .point .title span {
	display: inline-block;
	position: relative;
}
.contents.home .features .point .title span sup {
	font-size: 1.2rem;
	font-weight: var(--medium);
	inset-block-start: 1.2em;
	inset-inline-end: 0.3em;
	position: absolute;
}
.contents.home .features .point .text {
	font-size: 1.6rem;
	font-weight: var(--medium);
	letter-spacing: 0.14em;
	line-height: 1.625;
}
.contents.home .features .point .text:first-of-type {
	margin-block-start: 6.1349693252%;
}
.contents.home .features .point .text sup {
	font-size: 1rem;
}
.contents.home .features .point .note {
	display: flex;
	font-size: 1.2rem;
	letter-spacing: 0.14em;
	line-height: 1.3333333333;
	margin-block-start: 3.6809815951%;
}
.contents.home .features .point .note::before {
	content: "※";
}
.contents.home .features .point .image {
	display: block;
	margin-block-start: 6.1349693252%;
}
.contents.home .features .point .aside {
	padding-block-start: 9.2024539877%;
}
.contents.home .features .point .aside a {
	aspect-ratio: 326/110;
	display: block;
	position: relative;
	z-index: 1;
}
.contents.home .features .point .aside a img {
	transition: transform 0.05s linear;
	width: 96.9325153374%;
}
.contents.home .features .point .aside a::after {
	aspect-ratio: 316/100;
	background-color: var(--p1);
	content: "";
	display: block;
	inset-block-end: 0;
	inset-inline-end: 0;
	position: absolute;
	transition: opacity 0.05s linear;
	width: 96.9325153374%;
	z-index: -1;
}
.contents.home .features .point .aside a:active img {
	transform: translate(2.5641025641vw, 2.5641025641vw);
}
@media (min-width: 769px) {
	.contents.home .features .point .aside a:active img {
		transform: translate(0.625vw, 0.625vw);
	}
}
.contents.home .features .point .aside a:active::after {
	opacity: 0;
}
@media (any-hover: hover) {
	.contents.home .features .point .aside a {
		transition: filter 0.3s linear;
	}
	.contents.home .features .point .aside a:hover {
		filter: brightness(1.4);
	}
}
.contents.home .story {
	background-color: var(--w);
	padding: 24.1025641026% 0 30.7692307692%;
}
.contents.home .story a {
	aspect-ratio: 340/206;
	display: block;
	margin-inline: auto;
	position: relative;
	width: 87.1794871795%;
	z-index: 1;
}
.contents.home .story a img {
	inset-block-end: 0;
	inset-inline-end: 0;
	margin-block-end: 2.9411764706%;
	margin-inline-end: 2.9411764706%;
	position: absolute;
	transition: transform 0.05s linear;
}
.contents.home .story a::after {
	aspect-ratio: 330/182;
	background-color: var(--p1);
	content: "";
	display: block;
	inset-block-end: 0;
	inset-inline-end: 0;
	position: absolute;
	transition: opacity 0.05s linear;
	width: 97.0588235294%;
	z-index: -1;
}
.contents.home .story a:active img {
	transform: translate(2.5641025641vw, 2.5641025641vw);
}
@media (min-width: 769px) {
	.contents.home .story a:active img {
		transform: translate(0.625vw, 0.625vw);
	}
}
.contents.home .story a:active::after {
	opacity: 0;
}
@media (any-hover: hover) {
	.contents.home .story a {
		transition: opacity 0.3s linear;
	}
	.contents.home .story a:hover {
		opacity: 0.7;
	}
}
.contents.home .information {
	padding-block: 17.9487179487% 29.2307692308%;
}
.contents.home .information section {
	position: relative;
	z-index: 1;
}
.contents.home .information section:not(:first-of-type) {
	margin-block-start: 29.2307692308%;
}
.contents.home .information section::after {
	background-color: var(--p1);
	content: "";
	display: block;
	height: 0;
	inset-block-start: 0;
	inset-inline-start: 0;
	margin-block-start: 7.6923076923%;
	padding-block-start: 34.8717948718%;
	position: absolute;
	width: 82.0512820513%;
	z-index: -1;
}
.contents.home .information section.howto::after {
	margin-block-start: 22.0512820513%;
	width: 86.6666666667%;
}
.contents.home .information section.review::after {
	inset-inline-end: 0;
	width: 100%;
}
.contents.home .information section.faq::after {
	margin-block-start: 18.9743589744%;
}
.contents.home .information section.news::after {
	inset-inline: auto 0;
}
.contents.home .information section .title {
	aspect-ratio: 390/58;
	text-align: center;
}
.contents.home .information section .title:has(img[src*="fq_txt_title"]) {
	aspect-ratio: 390/64;
}
.contents.home .information section .title:has(img[src*="hwt_txt_title"]) {
	padding-inline-end: 6.1538461538%;
	text-align: right;
}
.contents.home .information section .title:has(img[src*="rvw_txt_title"]) {
	aspect-ratio: 390/52;
}
.contents.home .information section .title:has(img[src*="nws_txt_title"]) {
	padding-inline-start: 7.6923076923%;
	text-align: left;
}
.contents.home .information section .title img {
	height: 100%;
	width: auto;
}
.contents.home .information .howto {
	padding-block-start: 13.8461538462%;
}
.contents.home .information .howto .prop {
	background-color: var(--w);
	margin-block-start: 10.2564102564%;
	margin-inline: auto 0;
	padding-block-start: 8.2051282051%;
	width: 92.3076923077%;
}
.contents.home .information .howto .prop::after {
	aspect-ratio: 360/10;
	background-color: var(--p3);
	content: "";
	display: block;
	margin-block-start: 10%;
}
.contents.home .information .howto .step li:not(:first-of-type) {
	margin-block-start: 8.3333333333%;
}
.contents.home .information .howto .step img {
	display: block;
}
.contents.home .information .howto .step img[src*="hwt_img_step01"] {
	width: 86.6666666667%;
}
.contents.home .information .howto .step img[src*="hwt_img_step02"] {
	margin-inline: auto 0;
	width: 91.6666666667%;
}
.contents.home .information .howto .step figcaption {
	font-size: 1.6rem;
	font-weight: var(--medium);
	letter-spacing: 0.08em;
	line-height: 1.5;
	margin-block-start: 4.4444444444%;
	width: 72.2222222222%;
}
.contents.home .information .howto .step figcaption:has(+ img[src*="hwt_img_step01"]) {
	background: var(--b);
}
.contents.home .information .howto .step img[src*="hwt_img_step01"] + figcaption {
	padding-inline-start: 8.3333333333%;
}
.contents.home .information .howto .step img[src*="hwt_img_step02"] + figcaption {
	margin-inline: auto 0;
	padding-inline-end: 5.5555555556%;
}
.contents.home .information .howto .dr {
	align-items: flex-start;
	display: flex;
	justify-content: space-between;
	margin: 8.3333333333% auto 0;
	width: 83.3333333333%;
}
.contents.home .information .howto .dr dl {
	display: flex;
	flex-direction: column;
	width: 46.6666666667%;
}
.contents.home .information .howto .dr dl dt {
	border-block-end: solid 1px var(--p2);
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: 0.04em;
	line-height: 1.2857142857;
	padding-block-end: 3.3333333333%;
	text-align: center;
}
.contents.home .information .howto .dr dl dd {
	align-items: center;
	display: flex;
	font-size: 1.4rem;
	font-weight: var(--medium);
	justify-content: center;
	letter-spacing: 0.04em;
	line-height: 1.2857142857;
	margin-block-start: 2.6666666667%;
	min-height: 2.5714285714em;
}
.contents.home .information .howto .note {
	margin: 4.4444444444% auto 0;
	width: 83.3333333333%;
}
.contents.home .information .howto .note li {
	display: flex;
	font-size: 1.2rem;
	letter-spacing: 0.04em;
	line-height: 1.3333333333;
}
.contents.home .information .howto .note li::before {
	content: "※";
}
.contents.home .information .review {
	margin-block-start: 32.8205128205% !important;
}
.contents.home .information .review .frame {
	margin-block-start: 10.7692307692%;
}
.contents.home .information .review .frame.swiper-initialized {
	position: relative;
}
.contents.home .information .review .list:not(.swiper-wrapper) {
	align-items: center;
	display: flex;
	flex-direction: column;
	padding-block-end: 4.6153846154%;
}
.contents.home .information .review .list li {
	display: flex;
	flex-direction: column;
	height: auto;
	width: 76.9230769231vw;
}
@media (min-width: 769px) {
	.contents.home .information .review .list li {
		width: 25.5vw;
	}
}
.contents.home .information .review .list li:not(.swiper-slide):not(:first-of-type) {
	margin-block-start: 10.2564102564%;
}
.contents.home .information .review .list li.swiper-slide {
	margin-inline: 2.5641025641%;
}
.contents.home .information .review .list li::before {
	aspect-ratio: 300/10;
	content: "";
	display: block;
}
.contents.home .information .review .list li dl {
	background-color: var(--w);
	height: 100%;
	padding: 5.3333333333% 8% 36.6666666667%;
	position: relative;
	z-index: 1;
}
@media (min-width: 769px) {
	.contents.home .information .review .list li dl {
		padding: 5.3921568627% 7.8431372549% 36.7647058824%;
	}
}
.contents.home .information .review .list li dl::after {
	aspect-ratio: 55/158;
	background: no-repeat 0 0;
	background-size: contain;
	content: "";
	display: block;
	inset-block-end: 0;
	inset-inline-end: 0;
	margin-inline-end: 6.6666666667%;
	position: absolute;
	width: 18.3333333333%;
	z-index: -1;
}
.contents.home .information .review .list li dl dt {
	font-size: 1.6rem;
	font-weight: var(--medium);
	letter-spacing: 0.04em;
	line-height: 1.75;
}
.contents.home .information .review .list li dl dd {
	font-size: 1.4rem;
	font-weight: var(--medium);
	letter-spacing: 0.04em;
	line-height: 2;
	margin-block-start: 5.3333333333%;
}
.contents.home .information .review .list li.mnt::before {
	background-color: var(--p3);
}
.contents.home .information .review .list li.mnt dl::after {
	background-image: url(../img/rvw_img_package01.webp);
}
.contents.home .information .review .list li.icy::before {
	background-color: var(--p5);
}
.contents.home .information .review .list li.icy dl::after {
	background-image: url(../img/rvw_img_package02.webp);
}
.contents.home .information .review .arrow {
	aspect-ratio: 12/24;
	inset-block: 0;
	margin-block: auto;
	position: absolute;
	width: 3.0769230769%;
	z-index: 2;
}
@media (any-hover: hover) {
	.contents.home .information .review .arrow {
		transition: opacity 0.3s linear;
	}
	.contents.home .information .review .arrow:hover {
		opacity: 0.5;
	}
}
.contents.home .information .review .arrow.prev {
	inset-inline-start: 0;
	margin-inline-start: 5.1282051282%;
}
.contents.home .information .review .arrow.next {
	inset-inline-end: 0;
	margin-inline-end: 5.1282051282%;
}
.contents.home .information .review .dots {
	display: flex;
	justify-content: center;
	margin-block-start: 4.6153846154%;
}
.contents.home .information .review .dots li {
	aspect-ratio: 6/6;
	background-color: var(--p4);
	cursor: pointer;
	margin-inline: 1.0256410256%;
	overflow: hidden;
	text-indent: 100%;
	width: 1.5384615385%;
}
.contents.home .information .review .dots li[aria-current="true"] {
	background-color: var(--p2);
}
.contents.home .information .review .note {
	-moz-column-gap: 5.1282051282%;
	column-gap: 5.1282051282%;
	display: flex;
	justify-content: center;
	margin: 7.6923076923% auto 0;
	width: 89.7435897436%;
}
.contents.home .information .review .note dt,
.contents.home .information .review .note dd {
	font-size: 1rem;
	font-weight: normal;
	letter-spacing: 0.1em;
	line-height: 1.6;
}
.contents.home .information .review .note dd {
	display: flex;
}
.contents.home .information .review .note dd::before {
	content: "※";
}
.contents.home .information .faq {
	margin-block-start: 17.9487179487% !important;
	padding-block-start: 11.2820512821%;
}
.contents.home .information .faq .list {
	background-color: var(--p7);
	margin: 8.7179487179% auto 0;
	width: 92.3076923077%;
}
.contents.home .information .faq .list .qa {
	background-color: var(--w);
}
.contents.home .information .faq .list .qa:not(:first-of-type) {
	margin-block-start: 1.3888888889%;
}
.contents.home .information .faq .list .qa .q {
	align-items: stretch;
	-moz-column-gap: 5%;
	column-gap: 5%;
	cursor: pointer;
	display: flex;
	padding: 3.8888888889%;
}
@media (any-hover: hover) {
	.contents.home .information .faq .list .qa .q {
		transition: opacity 0.3s linear;
	}
	.contents.home .information .faq .list .qa .q:hover {
		opacity: 0.5;
	}
}
.contents.home .information .faq .list .qa .q::before {
	aspect-ratio: 24/39;
	background: url(../img/fq_ico_q.svg) no-repeat 0 0;
	background-size: contain;
	content: "";
	display: block;
	flex-shrink: 0;
	width: 7.2289156627%;
}
.contents.home .information .faq .list .qa .q span {
	align-self: center;
	flex-grow: 1;
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: 0.08em;
	line-height: 1.375;
}
.contents.home .information .faq .list .qa .q::after {
	background: url(../img/fq_ico_open.svg) no-repeat 0 50%;
	background-size: 61.5384615385% auto;
	content: "";
	display: block;
	flex-shrink: 0;
	width: 7.8313253012%;
}
.contents.home .information .faq .list .qa.open .q::after {
	background-image: url(../img/fq_ico_close.svg);
}
.contents.home .information .faq .list .qa .a {
	padding: 1.1111111111% 6.1111111111% 8.3333333333% 15%;
}
.contents.home .information .faq .list .qa .a P {
	font-size: 1.4rem;
	font-weight: var(--medium);
	letter-spacing: 0.04em;
	line-height: 1.5714285714;
}
.contents.home .information .faq .list.init .qa:nth-of-type(n + 4) {
	display: none;
}
.contents.home .information .faq .list .close {
	display: none;
	margin: 10% auto 0;
	width: 26.6666666667%;
}
.contents.home .information .faq .more {
	display: none;
	margin: 9.2307692308% auto 0;
	width: 23.5897435897%;
}
@media (any-hover: hover) {
	.contents.home .information .faq .more {
		transition: opacity 0.3s linear;
	}
	.contents.home .information .faq .more:hover {
		opacity: 0.5;
	}
}
.contents.home .information .faq .more button {
	width: 100%;
}
.contents.home .information .shop {
	margin: 9.7435897436% auto 0;
	padding-block-start: 11.2820512821%;
	position: relative;
	width: 84.6153846154%;
	z-index: 1;
}
.contents.home .information .shop .open {
	background-color: var(--p2);
	display: none;
	opacity: 1;
	overflow: hidden;
	transition: all 0.3s linear;
}
.contents.home .information .shop .open.active {
	height: 0;
	opacity: 0;
}
@media (any-hover: hover) {
	.contents.home .information .shop .open {
		transition: opacity 0.3s linear;
	}
	.contents.home .information .shop .open:hover {
		opacity: 0.5;
	}
}
.contents.home .information .shop .open .button {
	align-items: center;
	aspect-ratio: 330/70;
	color: var(--w);
	-moz-column-gap: 7.8787878788%;
	column-gap: 7.8787878788%;
	display: flex;
	font-size: 2rem;
	font-weight: bold;
	justify-content: space-between;
	letter-spacing: 0.02em;
	line-height: 1.8;
	padding-inline: 7.8787878788%;
	width: 100%;
}
.contents.home .information .shop .open .button::after {
	aspect-ratio: 16/16;
	background: url(../img/prd_ico_open.svg) no-repeat 50% 50%;
	background-size: cover;
	content: "";
	display: block;
	flex-shrink: 0;
	width: 4.8484848485%;
}
.contents.home .information .shop .prop {
	display: none;
}
.contents.home .information .shop .prop .body {
	background-color: var(--w);
	padding-block: 8.4848484848%;
}
.contents.home .information .shop .prop .body .label {
	font-size: 2rem;
	font-weight: bold;
	letter-spacing: 0.02em;
	line-height: 1.8;
	margin-inline: auto;
	text-align: center;
	width: 83.6363636364%;
}
.contents.home .information .shop .prop .body .list {
	margin: 6.0606060606% auto 0;
	width: 83.6363636364%;
}
.contents.home .information .shop .prop .body .list:first-of-type {
	margin-block-start: 6.0606060606%;
}
.contents.home .information .shop .prop .body .list li {
	border-block-end: solid 1px var(--p3);
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 0.02em;
	line-height: 2;
	padding-block: 2.8985507246% 2.1739130435%;
	text-align: center;
}
.contents.home .information .shop .prop .body .list li:first-of-type {
	padding-block-start: 0;
}
.contents.home .information .shop .prop .body .note {
	margin: 8.4848484848% auto 0;
	width: 83.6363636364%;
}
.contents.home .information .shop .prop .body .note li {
	display: flex;
	font-size: 1.2rem;
	letter-spacing: 0.02em;
	line-height: 1.3333333333;
}
.contents.home .information .shop .prop .body .note li::before {
	content: "※";
	flex-shrink: 0;
}
.contents.home .information .shop .prop .close {
	margin-block-start: 7.8787878788%;
	text-align: center;
}
.contents.home .information .shop .prop .close .button {
	display: inline-block;
	width: 29.0909090909%;
}
.contents.home .information .news .topics {
	align-items: center;
	background-color: var(--w);
	display: flex;
	flex-direction: column;
	margin: 10.2564102564% auto 0;
	padding-block: 8.7179487179% 11.2820512821%;
	width: 92.3076923077%;
}
.contents.home .information .news .topics .topic {
	width: 83.3333333333%;
}
.contents.home .information .news .topics .topic:not(:first-of-type) {
	margin-block-start: 3.3333333333%;
}
.contents.home .information .news .topics .topic dt {
	font-size: 1.4rem;
	font-weight: bold;
	letter-spacing: -0.02em;
}
.contents.home .information .news .topics .topic dd {
	font-size: 1.6rem;
	font-weight: var(--medium);
	letter-spacing: -0.02em;
	line-height: 1.375;
	margin-block-start: 1.3333333333%;
	word-break: break-all;
}
.contents.home .information .news .topics .topic dd + dd {
	margin-block-start: 0;
}
.contents.home .information .news .topics .topic dd a {
	text-decoration-color: var(--p3);
	text-decoration-line: underline;
	text-decoration-thickness: 2px;
	text-underline-offset: 0.2em;
}
@media (any-hover: hover) {
	.contents.home .information .news .topics .topic dd a {
		transition: opacity 0.3s linear;
	}
	.contents.home .information .news .topics .topic dd a:hover {
		opacity: 0.5;
	}
}
.contents.home .information .news .topics .topic::after {
	aspect-ratio: 300/2;
	background-color: var(--p3);
	content: "";
	display: block;
	margin-block-start: 6%;
}
.contents:not(.home) {
	padding-block: 17.4358974359% 25.641025641%;
	position: relative;
	z-index: 1;
}
.contents:not(.home)::before {
	aspect-ratio: 390/116;
	background-color: var(--p4);
	border-block-end: solid 8.2051282051vw var(--p1);
	box-sizing: content-box;
	content: "";
	display: block;
	inset-block-start: 0;
	inset-inline: 0;
	position: absolute;
	width: 100%;
	z-index: -1;
}
@media (min-width: 769px) {
	.contents:not(.home)::before {
		border-block-end-width: 51.641025641px;
	}
}
.contents:not(.home) .title {
	color: var(--p6);
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: 0.04em;
	line-height: 2.25;
	padding: 0 5.1282051282%;
}
.contents:not(.home) .title::before {
	aspect-ratio: 350/134;
	background: no-repeat 0 0;
	background-size: auto 100%;
	content: "";
	display: block;
	margin-block-end: 0.5714285714%;
	width: 100%;
}
.contents:not(.home) .title span {
	display: inline-block;
}
.contents:not(.home) .back {
	margin: 24.1025641026% auto 0;
	width: 51.7948717949%;
}
@media (any-hover: hover) {
	.contents:not(.home) .back a {
		transition: opacity 0.3s linear;
	}
	.contents:not(.home) .back a:hover {
		opacity: 0.5;
	}
}
.contents.story .title {
	padding-block-end: 45.641025641%;
	position: relative;
	z-index: 1;
}
.contents.story .title::before {
	background-image: url(../img/ttl_txt_story.svg);
}
.contents.story .title::after {
	aspect-ratio: 390/252;
	background: url(../img/hst_bg_story.webp) no-repeat 0 100%;
	background-size: contain;
	content: "";
	display: block;
	inset-block-end: 0;
	inset-inline: 0;
	position: absolute;
	width: 100%;
	z-index: -1;
}
.contents.story .story {
	margin: 9.2307692308% auto 0;
	width: 89.7435897436%;
}
.contents.story .story .foreword {
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 1.5;
	margin-inline: 1.7142857143%;
}
.contents.story .story .foreword sup {
	font-size: 0.5em;
	inset-block-start: -1em;
}
.contents.story .story .text {
	font-size: 1.6rem;
	font-weight: var(--medium);
	letter-spacing: 0.08em;
	line-height: 1.875;
	margin: 8.5714285714% 2.8571428571% 0;
}
.contents.story .story .text:first-of-type {
	margin-block-start: 7.4285714286%;
}
.contents.story .story .note {
	display: flex;
	font-size: 1.2rem;
	letter-spacing: 0.08em;
	line-height: 1.3333333333;
	margin: 8.5714285714% 2.8571428571% 0;
}
.contents.story .story .note::before {
	content: "※";
}
.contents.story .story .developer {
	background-color: var(--p7);
	border-radius: 1.0256410256vw;
	margin-block-start: 16.5714285714%;
	padding: 8%;
}
@media (min-width: 769px) {
	.contents.story .story .developer {
		border-radius: 4px;
	}
}
.contents.story .story .developer .name {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	margin-block-start: -0.5714285714%;
}
.contents.story .story .developer .name .photo {
	margin-block-start: 2.0547945205%;
	width: 43.1506849315%;
}
.contents.story .story .developer .name .caption {
	width: 51.3698630137%;
}
.contents.story .story .developer .name .caption dl {
	display: flex;
	flex-direction: column-reverse;
	width: 100%;
}
.contents.story .story .developer .name .caption dl dd {
	font-size: 1.2rem;
	font-weight: bold;
	letter-spacing: 0.04em;
	line-height: 2.1666666667;
}
.contents.story .story .developer .text {
	font-size: 1.4rem;
	letter-spacing: 0.08em;
	line-height: 1.8571428571;
	margin: 9.1428571429% 0 0;
}
.contents.story .story .developer .name + .text {
	margin-block-start: 8.5714285714%;
}
.contents.mechanism::before {
	aspect-ratio: 390/86;
}
.contents.mechanism .title::before {
	aspect-ratio: 350/64;
	background-image: url(../img/ttl_txt_mechanism.svg);
}
.contents.mechanism .text {
	font-size: 1.6rem;
	font-weight: var(--medium);
	letter-spacing: 0.08em;
	line-height: 1.875;
	margin-inline: 6.2857142857%;
}
.contents.mechanism .text:first-of-type {
	margin-block-start: 10.8571428571%;
}
.contents.mechanism .steps {
	margin: 21.5384615385% auto 0;
	padding-block-end: 3.5897435897%;
	width: 85.641025641%;
}
.contents.mechanism .steps li:not(:first-of-type) {
	background: url(../img/stp_bg_line.svg) no-repeat 0 0;
	background-size: contain;
	margin-block-start: 15.5688622754%;
	padding-block-start: 19.1616766467%;
}
.contents.mechanism .steps li .number {
	aspect-ratio: 334/44;
	text-align: center;
}
.contents.mechanism .steps li .number img {
	height: 100%;
	width: auto;
}
.contents.mechanism .steps li .pict {
	display: flex;
	flex-direction: column-reverse;
	justify-content: center;
}
.contents.mechanism .steps li .pict img {
	margin-block-start: 5.9880239521%;
}
.contents.mechanism .steps li .pict figcaption {
	font-size: 1.6rem;
	font-weight: bold;
	letter-spacing: 0.08em;
	line-height: 1.5;
	margin-block-start: 5.3892215569%;
	text-align: center;
}
