@charset "UTF-8";
/* #style-foundation.scss
────────────── ༚༶⊰⟡⊱༶༚༺ */
/* foundation */
/*༻✿𝐂𝐒𝐒-Variables - Foundation
 * 変数管理
࿐༶⊰⟡⊱༶⊰⟡⊱༶⊰⟡⊱༶❀༶⊰⟡⊱༶⊰⟡⊱༶⊰⟡⊱༶༄ */
/* Animation - イージング関数
────────────── ༚༶⊰⟡⊱༶༚༺ */
:root {
		--linear: cubic-bezier(0, 0, 1, 1);
		--ease: cubic-bezier(0.25, 0.1, 0.25, 1);
		--ease-in: cubic-bezier(0.42, 0, 1, 1);
		--ease-out: cubic-bezier(0, 0, 0.58, 1);
		--ease-in-out: cubic-bezier(0.42, 0, 0.58, 1);
		--ease-in-sine: cubic-bezier(0.47, 0, 0.745, 0.715);
		--ease-out-sine: cubic-bezier(0.39, 0.575, 0.565, 1);
		--ease-in-out-sine: cubic-bezier(0.445, 0.05, 0.55, 0.95);
		--ease-in-quad: cubic-bezier(0.55, 0.085, 0.68, 0.53);
		--ease-out-quad: cubic-bezier(0.25, 0.46, 0.45, 0.94);
		--ease-in-out-quad: cubic-bezier(0.455, 0.03, 0.515, 0.955);
		--ease-in-cubic: cubic-bezier(0.55, 0.055, 0.675, 0.19);
		--ease-out-cubic: cubic-bezier(0.215, 0.61, 0.355, 1);
		--ease-in-out-cubic: cubic-bezier(0.645, 0.045, 0.355, 1);
		--ease-in-quart: cubic-bezier(0.895, 0.03, 0.685, 0.22);
		--ease-out-quart: cubic-bezier(0.165, 0.84, 0.44, 1);
		--ease-in-out-quart: cubic-bezier(0.77, 0, 0.175, 1);
		--ease-in-quint: cubic-bezier(0.755, 0.05, 0.855, 0.06);
		--ease-out-quint: cubic-bezier(0.23, 1, 0.32, 1);
		--ease-in-out-quint: cubic-bezier(0.86, 0, 0.07, 1);
		--ease-in-expo: cubic-bezier(0.95, 0.05, 0.795, 0.035);
		--ease-out-expo: cubic-bezier(0.19, 1, 0.22, 1);
		--ease-in-out-expo: cubic-bezier(1, 0, 0, 1);
		--ease-in-circ: cubic-bezier(0.6, 0.04, 0.98, 0.335);
		--ease-out-circ: cubic-bezier(0.075, 0.82, 0.165, 1);
		--ease-in-out-circ: cubic-bezier(0.785, 0.135, 0.15, 0.86);
		--ease-in-back: cubic-bezier(0.6, -0.28, 0.735, 0.045);
		--ease-out-back: cubic-bezier(0.175, 0.885, 0.32, 1.275);
		--ease-in-out-back: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

@media screen and (max-width: 743.9px) {
		/* data-cols, data-rows @(SP)
		────────────── ༚༶⊰⟡⊱༶༚༺ */
		/* data-cols */
		:root {
				--data-cols: 1;
		}
		:where([data-cols="1"], [data-cols_sp="1"]) {
				--data-cols: 1;
		}
		:where([data-cols="2"], [data-cols_sp="2"]) {
				--data-cols: 2;
		}
		:where([data-cols="3"], [data-cols_sp="3"]) {
				--data-cols: 3;
		}
		:where([data-cols="4"], [data-cols_sp="4"]) {
				--data-cols: 4;
		}
		:where([data-cols="5"], [data-cols_sp="5"]) {
				--data-cols: 5;
		}
		:where([data-cols="6"], [data-cols_sp="6"]) {
				--data-cols: 6;
		}
		:where([data-cols="7"], [data-cols_sp="7"]) {
				--data-cols: 7;
		}
		:where([data-cols="8"], [data-cols_sp="8"]) {
				--data-cols: 8;
		}
		:where([data-cols="9"], [data-cols_sp="9"]) {
				--data-cols: 9;
		}
		:where([data-cols="10"], [data-cols_sp="10"]) {
				--data-cols: 10;
		}
		:where([data-cols="11"], [data-cols_sp="11"]) {
				--data-cols: 11;
		}
		:where([data-cols="12"], [data-cols_sp="12"]) {
				--data-cols: 12;
		}
		/* data-rows */
		:root {
				--data-rows: 1;
		}
		:where([data-cols="1"], [data-rows_sp="1"]) {
				--data-rows: 1;
		}
		:where([data-cols="2"], [data-rows_sp="2"]) {
				--data-rows: 2;
		}
		:where([data-cols="3"], [data-rows_sp="3"]) {
				--data-rows: 3;
		}
		:where([data-cols="4"], [data-rows_sp="4"]) {
				--data-rows: 4;
		}
		:where([data-cols="5"], [data-rows_sp="5"]) {
				--data-rows: 5;
		}
		:where([data-cols="6"], [data-rows_sp="6"]) {
				--data-rows: 6;
		}
		:where([data-cols="7"], [data-rows_sp="7"]) {
				--data-rows: 7;
		}
		:where([data-cols="8"], [data-rows_sp="8"]) {
				--data-rows: 8;
		}
		:where([data-cols="9"], [data-rows_sp="9"]) {
				--data-rows: 9;
		}
		:where([data-cols="10"], [data-rows_sp="10"]) {
				--data-rows: 10;
		}
		:where([data-cols="11"], [data-rows_sp="11"]) {
				--data-rows: 11;
		}
		:where([data-cols="12"], [data-rows_sp="12"]) {
				--data-rows: 12;
		}
} /* ///@media (SP) */
@media print, screen and (min-width: 744px) {
		/* data-cols, data-rows @(PC)
		────────────── ༚༶⊰⟡⊱༶༚༺ */
		/* data-cols */
		:root {
				--data-cols: 1;
		}
		:where([data-cols="1"], [data-cols_pc="1"]) {
				--data-cols: 1;
		}
		:where([data-cols="2"], [data-cols_pc="2"]) {
				--data-cols: 2;
		}
		:where([data-cols="3"], [data-cols_pc="3"]) {
				--data-cols: 3;
		}
		:where([data-cols="4"], [data-cols_pc="4"]) {
				--data-cols: 4;
		}
		:where([data-cols="5"], [data-cols_pc="5"]) {
				--data-cols: 5;
		}
		:where([data-cols="6"], [data-cols_pc="6"]) {
				--data-cols: 6;
		}
		:where([data-cols="7"], [data-cols_pc="7"]) {
				--data-cols: 7;
		}
		:where([data-cols="8"], [data-cols_pc="8"]) {
				--data-cols: 8;
		}
		:where([data-cols="9"], [data-cols_pc="9"]) {
				--data-cols: 9;
		}
		:where([data-cols="10"], [data-cols_pc="10"]) {
				--data-cols: 10;
		}
		:where([data-cols="11"], [data-cols_pc="11"]) {
				--data-cols: 11;
		}
		:where([data-cols="12"], [data-cols_pc="12"]) {
				--data-cols: 12;
		}
		/* data-rows */
		:root {
				--data-rows: 1;
		}
		:where([data-cols="1"], [data-rows_pc="1"]) {
				--data-rows: 1;
		}
		:where([data-cols="2"], [data-rows_pc="2"]) {
				--data-rows: 2;
		}
		:where([data-cols="3"], [data-rows_pc="3"]) {
				--data-rows: 3;
		}
		:where([data-cols="4"], [data-rows_pc="4"]) {
				--data-rows: 4;
		}
		:where([data-cols="5"], [data-rows_pc="5"]) {
				--data-rows: 5;
		}
		:where([data-cols="6"], [data-rows_pc="6"]) {
				--data-rows: 6;
		}
		:where([data-cols="7"], [data-rows_pc="7"]) {
				--data-rows: 7;
		}
		:where([data-cols="8"], [data-rows_pc="8"]) {
				--data-rows: 8;
		}
		:where([data-cols="9"], [data-rows_pc="9"]) {
				--data-rows: 9;
		}
		:where([data-cols="10"], [data-rows_pc="10"]) {
				--data-rows: 10;
		}
		:where([data-cols="11"], [data-rows_pc="11"]) {
				--data-rows: 11;
		}
		:where([data-cols="12"], [data-rows_pc="12"]) {
				--data-rows: 12;
		}
} /* ///@media (PC) */
/*༻✿𝐂𝐒𝐒-Reset - Foundation
* リセット - 基礎スタイル初期化
࿐༶⊰⟡⊱༶⊰⟡⊱༶⊰⟡⊱༶❀༶⊰⟡⊱༶⊰⟡⊱༶⊰⟡⊱༶༄ */
/* ❀Box-sizing
────────────── ༚༶⊰⟡⊱༶༚༺ */
*,
*::before,
*::after {
		-webkit-box-sizing: border-box;
		        box-sizing: border-box;
		margin: 0;
		padding: 0;
		border-width: 0;
}

/* ❀HTML要素の基本リセット
────────────── ༚༶⊰⟡⊱༶༚༺ */
html {
		-webkit-text-size-adjust: 100%;
		-webkit-tap-highlight-color: transparent;
		height: 100%;
		min-height: 0vw;
}

body {
		margin: 0;
		font-stretch: normal;
		font-stretch: initial;
		font-size-adjust: initial;
}

/* ❀ブロック要素
────────────── ༚༶⊰⟡⊱༶༚༺ */
main,
address,
form,
figure,
figcaption {
		display: block;
		margin: 0;
}

address {
		font-style: inherit;
}

/* hr（区切り要素） */
hr {
		-webkit-box-sizing: content-box;
		        box-sizing: content-box;
		height: 0;
		margin: 0;
		clear: both;
		overflow: visible;
		border: 0;
		border-top-width: 1px;
		color: inherit;
}

/* ❀リスト系要素
────────────── ༚༶⊰⟡⊱༶༚༺ */
dl,
ul,
ol,
menu {
		margin: 0;
		padding: 0;
		list-style: none;
}

dt,
dd,
li,
menuitem {
		margin: 0;
		padding: 0;
		vertical-align: top;
		font-style: normal;
		font-weight: inherit;
}

/* ❀見出し系要素
────────────── ༚༶⊰⟡⊱༶༚༺ */
h1,
h2,
h3,
h4,
h5,
h6 {
		margin: 0;
		font-weight: inherit;
		font-size: inherit;
}

/* ❀テキスト要素
────────────── ༚༶⊰⟡⊱༶༚༺ */
/* br, wbr（改行） */
br,
wbr {
		font-size: 0;
}

/* nobr（word-break: keep-all;） */
nobr,
.nobr,
*:has(> wbr) {
		display: block;
		white-space: nowrap;
		-ms-word-break: break-all;
		-webkit-line-break: after-white-space;
		word-wrap: break-word;
		overflow-wrap: break-word;
		overflow-wrap: anywhere;
		word-break: keep-all;
}

/* テキスト */
p,
small,
em,
strong,
span,
b,
u,
s,
dfn,
abbr,
data,
time,
bdi,
bdo {
		margin: 0;
		padding: 0;
		font-style: normal;
		font-weight: inherit;
		text-decoration: none;
}

small {
		font-size: 80%;
}

/* sub, sup（上付き・下付きテキスト） */
sub,
sup {
		position: relative;
		display: inline-block;
		position: relative;
		width: 0.25em;
		font-size: 59%;
}

sup {
		top: -0.5em;
		vertical-align: super;
}

sub {
		right: 0.25em;
		bottom: -0.25em;
		vertical-align: sub;
}

/* i（inline-block） */
i {
		display: inline-block;
		margin: 0;
		padding: 0;
		font-style: normal;
		font-weight: inherit;
		text-decoration: none;
}

/* blockquote, q（引用） */
blockquote {
		display: block;
		margin: 0;
}

q {
		display: inline-block;
		margin: 0;
		padding: 0;
		font-style: normal;
		font-weight: inherit;
		text-decoration: none;
}

q::before,
q::after {
		content: "";
}

/* コード系要素 */
pre,
code,
kbd,
samp {
		font-size: inherit;
		font-family: "HackGen", monospace;
}

/* 数式系要素 */
math,
mtext,
mn,
mi,
mo,
mspace,
msup,
msub,
msubsup,
mover,
munder {
		margin: 0;
		padding: 0;
		font-style: normal;
		font-weight: inherit;
		text-decoration: none;
		white-space: nowrap;
}

math {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
		-webkit-box-align: center;
		    -ms-flex-align: center;
		        align-items: center;
		-webkit-box-pack: center;
		    -ms-flex-pack: center;
		        justify-content: center;
}

/* ruby（ルビ） ／ ins, del（挿入・削除） */
ruby,
rb,
rt,
rp,
ins,
del {
		margin: 0;
		padding: 0;
		font-style: normal;
		font-weight: inherit;
		text-decoration: none;
}

/* ❀画像・動画系要素
────────────── ༚༶⊰⟡⊱༶༚༺ */
picture,
svg,
img,
img[src$=".svg"],
video,
iframe,
embed,
object {
		display: inline-block;
		max-width: 100%;
		height: auto;
		background-size: cover;
		background-repeat: no-repeat;
		vertical-align: middle;
		shape-margin: 0.75pc;
		-o-object-fit: cover;
		object-fit: cover;
}

picture {
		overflow: hidden;
}

/* ❀テーブル系要素
────────────── ༚༶⊰⟡⊱༶༚༺ */
table {
		border-color: inherit;
}

caption,
th,
td {
		margin: 0;
		padding: 0;
		font-style: normal;
		font-weight: inherit;
		text-align: inherit;
		text-decoration: none;
		vertical-align: middle;
}

/* ❀フォーム系要素
────────────── ༚༶⊰⟡⊱༶༚༺ */
button,
input,
select,
optgroup,
datalist,
textarea {
		margin: 0;
		padding: 0;
		border-radius: 0;
		background: transparent;
		color: inherit;
		line-height: normal;
		font: inherit;
		text-align: inherit;
		text-transform: inherit;
		vertical-align: middle;
}

button,
[type=button],
[type=reset],
[type=submit] {
		cursor: pointer;
}

button:disabled,
[type=button]:disabled,
[type=reset]:disabled,
[type=submit]:disabled {
		cursor: default;
}

:-moz-focusring {
		outline: auto;
}

select:disabled {
		opacity: inherit;
}

option {
		padding: 0;
}

textarea {
		overflow: auto;
}

fieldset {
		min-width: 0;
		margin: 0;
}

fieldset,
legend {
		padding: 0;
}

progress {
		vertical-align: baseline;
}

[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
		height: auto;
}

[type=checkbox] {
		-webkit-appearance: checkbox;
		-moz-appearance: checkbox;
		appearance: checkbox;
}

[type=radio] {
		-webkit-appearance: radio;
		-moz-appearance: radio;
		appearance: radio;
}

[type=search] {
		outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
		-webkit-appearance: none;
		appearance: none;
}

::-webkit-file-upload-button {
		-webkit-appearance: button;
		appearance: button;
}

label[for] {
		cursor: pointer;
}

/* ❀インタラクティブ要素
────────────── ༚༶⊰⟡⊱༶༚༺ */
/* details, summary */
details,
summary {
		display: block;
		margin: 0;
		padding: 0;
		list-style: none;
}

summary::marker,
summary::-webkit-details-marker {
		display: none;
}

summary:focus {
		outline: none;
}

/* dialog */
dialog {
		margin: 0;
		padding: 0;
}

dialog:focus-visible {
		outline: none;
}

[contenteditable]:focus {
		outline: none;
}

/*༻✿𝐂𝐒𝐒-Primer - Foundation
* プライマー - 基礎スタイルの定義
࿐༶⊰⟡⊱༶⊰⟡⊱༶⊰⟡⊱༶❀༶⊰⟡⊱༶⊰⟡⊱༶⊰⟡⊱༶༄ */
/* ✿root
────────────── ༚༶⊰⟡⊱༶༚༺ */
:root {
		font-size: 100%;
		/* 1rlh = 1em ~ 1.14285714em	@media (w:360px ~ 1000px) */
		line-height: clamp(1em, 1em + (1vw - 3.6px) * 0.3571, 1.14285714em);
		/* rcap = ルート要素の font における 大文字 X の高さ（通常 1em）  ／ YTUC：大文字の高さ */
		/* rex  = ルート要素の font における 小文字 x の高さ（通常 0.5em）／ YTLC：小文字の高さ */
		/* rch  = ルート要素の font における 0 の幅（通常 0.5em）         ／ wdth ：文字の幅 */
		/* Base */
		--lh-base: clamp(1.66em, calc(1.66em + ((1vw - 3.6px) * 0.55)), 1.88em);
		--lts-base: clamp(0.01em, calc(0.01em + ((1vw - 3.6px) * 0.05)), 0.03em);
		--fz-base: clamp(0.875rem, calc(0.875rem + ((1vw - 3.6px) * 0.1563)), 0.9375rem);
		--fw-base: 400;
		/*  Fluid Responsive Rem（可変rem）：例）calc(var(--⅓fem) * 3) */
		--⅞fem: clamp(0.875rem, calc(0.875rem + ((1vw - 3.6px) * 0.3125)), 1rem);
		--⅚fem: clamp(0.8313rem, calc(0.8313rem + ((1vw - 3.6px) * 0.4172)), 1rem);
		--⅘fem: clamp(0.8rem, calc(0.8rem + ((1vw - 3.6px) * 0.5)), 1rem);
		--¾fem: clamp(0.75rem, calc(0.75rem + ((1vw - 3.6px) * 0.625)), 1rem);
		--⅔fem: clamp(0.6625rem, calc(0.6625rem + ((1vw - 3.6px) * 0.8438)), 1rem);
		--⅝fem: clamp(0.625rem, calc(0.625rem + ((1vw - 3.6px) * 0.9375)), 1rem);
		--⅗fem: clamp(0.6rem, calc(0.6rem + ((1vw - 3.6px) * 1)), 1rem);
		--½fem: clamp(0.5rem, calc(0.5rem + ((1vw - 3.6px) * 1.25)), 1rem);
		--⅖fem: clamp(0.4rem, calc(0.4rem + ((1vw - 3.6px) * 1.5)), 1rem);
		--⅜fem: clamp(0.375rem, calc(0.375rem + ((1vw - 3.6px) * 1.5625)), 1rem);
		--⅓fem: clamp(0.3313rem, calc(0.3313rem + ((1vw - 3.6px) * 1.6719)), 1rem);
		--¼fem: clamp(0.25rem, calc(0.25rem + ((1vw - 3.6px) * 1.875)), 1rem);
		--⅕fem: clamp(0.2rem, calc(0.2rem + ((1vw - 3.6px) * 2)), 1rem);
		--⅙fem: clamp(0.1625rem, calc(0.1625rem + ((1vw - 3.6px) * 2.0938)), 1rem);
		--⅛fem: clamp(0.125rem, calc(0.125rem + ((1vw - 3.6px) * 2.1875)), 1rem);
		--⅒fem: clamp(0.125rem, calc(0.125rem + ((1vw - 3.6px) * 2.1875)), 1rem);
		/* Fluid Responsive Rem（スマホの方が大きい）：例）calc(var(x1\.33fem) * 1) */
		--x1\.2fem: clamp(1rem, calc(1.2rem + ((1vw - 3.6px) * -0.5)), 1.2rem);
		--x1\.25fem: clamp(1rem, calc(1.25rem + ((1vw - 3.6px) * -0.625)), 1.25rem);
		--x1\.33fem: clamp(1rem, calc(1.3313rem + ((1vw - 3.6px) * -0.8281)), 1.3313rem);
		--x1\.5fem: clamp(1rem, calc(1.5rem + ((1vw - 3.6px) * -1.25)), 1.5rem);
		--x2fem: clamp(1rem, calc(2rem + ((1vw - 3.6px) * -2.5)), 2rem);
		--x3fem: clamp(1rem, calc(3rem + ((1vw - 3.6px) * -5)), 3rem);
		--x4fem: clamp(1rem, calc(4rem + ((1vw - 3.6px) * -7.5)), 4rem);
		/* Root font-size */
		--fz-xxxs: clamp(0.6250rem, calc(0.6250rem + ((1vw - 3.6px) * 0.1563)), 0.6875rem);
		--fz-xxs: clamp(0.6875rem, calc(0.6875rem + ((1vw - 3.6px) * 0.1563)), 0.75rem);
		--fz-xs: clamp(0.7500rem, calc(0.7500rem + ((1vw - 3.6px) * 0.1563)), 0.8125rem);
		--fz-sm: clamp(0.8125rem, calc(0.8125rem + ((1vw - 3.6px) * 0.1563)), 0.8750rem);
		--fz-ss: clamp(0.8750rem, calc(0.8750rem + ((1vw - 3.6px) * 0.1563)), 0.9375rem);
		--fz-rg: clamp(0.9375rem, calc(0.9375rem + ((1vw - 3.6px) * 0.1563)), 1rem);
		--fz-md: clamp(0.9563rem, calc(0.9563rem + ((1vw - 3.6px) * 0.2656)), 1.0625rem);
		--fz-sl: clamp(0.9750rem, calc(0.9750rem + ((1vw - 3.6px) * 0.3750)), 1.1250rem);
		--fz-ml: clamp(1rem, calc(1rem + ((1vw - 3.6px) * 0.4688)), 1.1875rem);
		--fz-lg: clamp(1.0250rem, calc(1.0250rem + ((1vw - 3.6px) * 0.7188)), 1.3125rem);
		--fz-xl: clamp(1.05rem, calc(1.05rem + ((1vw - 3.6px) * 1.1250)), 1.5rem);
		--fz-xxl: clamp(1.1rem, calc(1.1rem + ((1vw - 3.6px) * 1.4687)), 1.6875rem);
		--fz-xxxl: clamp(1.1375rem, calc(1.1375rem + ((1vw - 3.6px) * 1.8438)), 1.8750rem);
		--fz-sol: clamp(1.2313rem, calc(1.2313rem + ((1vw - 3.6px) * 2.0781)), 2.0625rem);
		--fz-ol: clamp(1.3250rem, calc(1.3250rem + ((1vw - 3.6px) * 2.3125)), 2.25rem);
		--fz-xol: clamp(1.4125rem, calc(1.4125rem + ((1vw - 3.6px) * 2.5625)), 2.4375rem);
		--fz-xxol: clamp(1.5rem, calc(1.5rem + ((1vw - 3.6px) * 2.8125)), 2.6250rem);
		--fz-xxxol: clamp(1.5875rem, calc(1.5875rem + ((1vw - 3.6px) * 3.0625)), 2.8125rem);
		--fz-skl: clamp(1.6688rem, calc(1.6688rem + ((1vw - 3.6px) * 3.3281)), 3rem);
		--fz-kl: clamp(1.7438rem, calc(1.7438rem + ((1vw - 3.6px) * 3.6094)), 3.1875rem);
		--fz-xkl: clamp(1.8250rem, calc(1.8250rem + ((1vw - 3.6px) * 3.8750)), 3.3750rem);
		--fz-xxkl: clamp(1.9rem, calc(1.9rem + ((1vw - 3.6px) * 4.1563)), 3.5625rem);
		--fz-xxxkl: clamp(1.9750rem, calc(1.9750rem + ((1vw - 3.6px) * 4.4375)), 3.75rem);
		--fz-sgl: clamp(2.0438rem, calc(2.0438rem + ((1vw - 3.6px) * 4.7344)), 3.9375rem);
		--fz-gl: clamp(2.1125rem, calc(2.1125rem + ((1vw - 3.6px) * 5.0313)), 4.1250rem);
		--fz-xgl: clamp(2.1813rem, calc(2.1813rem + ((1vw - 3.6px) * 5.3281)), 4.3125rem);
		--fz-xxgl: clamp(2.25rem, calc(2.25rem + ((1vw - 3.6px) * 5.6250)), 4.5rem);
		--fz-xxxgl: clamp(2.3125rem, calc(2.3125rem + ((1vw - 3.6px) * 5.9375)), 4.6875rem);
		--fz-shl: clamp(2.3750rem, calc(2.3750rem + ((1vw - 3.6px) * 6.25)), 4.8750rem);
		--fz-hl: clamp(2.4375rem, calc(2.4375rem + ((1vw - 3.6px) * 6.5625)), 5.0625rem);
		--fz-xhl: clamp(2.5rem, calc(2.5rem + ((1vw - 3.6px) * 6.8750)), 5.25rem);
		--fz-xxhl: clamp(2.5563rem, calc(2.5563rem + ((1vw - 3.6px) * 7.2031)), 5.4375rem);
		--fz-xxxhl: clamp(2.6188rem, calc(2.6188rem + ((1vw - 3.6px) * 7.5156)), 5.6250rem);
		--fz-sul: clamp(2.6750rem, calc(2.6750rem + ((1vw - 3.6px) * 7.8438)), 5.8125rem);
		--fz-ul: clamp(2.7250rem, calc(2.7250rem + ((1vw - 3.6px) * 8.1875)), 6rem);
		--fz-xul: clamp(2.7813rem, calc(2.7813rem + ((1vw - 3.6px) * 8.5156)), 6.1875rem);
		--fz-xxul: clamp(2.8313rem, calc(2.8313rem + ((1vw - 3.6px) * 8.8594)), 6.3750rem);
		--fz-xxxul: clamp(2.8875rem, calc(2.8875rem + ((1vw - 3.6px) * 9.1875)), 6.5625rem);
		--fz-smgl: clamp(2.9375rem, calc(2.9375rem + ((1vw - 3.6px) * 9.5313)), 6.75rem);
		--fz-mgl: clamp(2.9813rem, calc(2.9813rem + ((1vw - 3.6px) * 9.8906)), 6.9375rem);
		--fz-xmgl: clamp(3.0313rem, calc(3.0313rem + ((1vw - 3.6px) * 10.2344)), 7.1250rem);
		--fz-xxmgl: clamp(3.0813rem, calc(3.0813rem + ((1vw - 3.6px) * 10.5781)), 7.3125rem);
		--fz-xxxmgl: clamp(3.1250rem, calc(3.1250rem + ((1vw - 3.6px) * 10.9375)), 7.5rem);
}

/* ✿Body（.zaratan）基本設定
────────────── ༚༶⊰⟡⊱༶༚༺ */
:where(.zaratan) {
		position: relative;
		z-index: 0;
		width: 100%;
		max-width: 100%;
		min-height: min(100dvh, 100vh);
		overflow-x: hidden;
		/* 基本設定 */
		line-height: var(--lh-base);
		letter-spacing: var(--lts-base);
		font-size: var(--fz-base);
		font-weight: var(--fw-base, 400);
		background: var(--c-dominant, hsl(224, 6%, 100%));
		color: var(--c-dominant-900, hsl(224, 6%, 13%));
		/* スマホを横向きにしても文字が大きくならない */
		-ms-text-size-adjust: 100%;
		-webkit-text-size-adjust: 100%;
		/* フォントの特性設定 */
		-webkit-font-kerning: normal;
		        font-kerning: normal;
		-webkit-font-variant-ligatures: common-ligatures contextual;
		        font-variant-ligatures: common-ligatures contextual;
		-webkit-font-feature-settings: "palt";
		        font-feature-settings: "palt";
		/* 文章の折り返し指定 */
		overflow-wrap: anywhere;
		word-break: normal;
		line-break: strict;
		/* アンチエイリアス */
		-webkit-font-smoothing: auto;
		-moz-osx-font-smoothing: auto;
}

/* スマホではスクロールバー非表示 */
@media screen and (max-width: 743.9px) {
		:where(.zaratan) {
				scrollbar-width: none;
		}
		:where(.zaratan)::-webkit-scrollbar {
				display: none;
		}
}
/* bodyがスクロールバーでズレないようにする @(PC) */
@media print, screen and (min-width: 744px) {
		:where(.zaratan),
		:where(.zaratan.ov-hidden) {
				overflow-y: scroll;
		}
}
/* ✿Primer @scope (.zaratan)
࿐༶⊰⟡⊱༶⊰⟡⊱༶⊰⟡⊱༶❀༶⊰⟡⊱༶⊰⟡⊱༶⊰⟡⊱༶༄ */
@scope (.zaratan) {
		/* [data-style]形式の最適化 */
		:is([data-style_sp], [data-style_pc]) {
				contain: style;
		}
		/* 文字装飾スタイル
		────────────── ༚༶⊰⟡⊱༶༚༺ */
		/* .bold（太字） */
		.bold {
				font-weight: bold;
				font-variation-settings: "wght" 700;
		}
		/* .bolder（親要素よりも相対的に1つ太く） */
		.bolder {
				font-weight: bolder;
		}
		/* .underline（下線） */
		.underline {
				display: inline;
				text-decoration: underline solid currentColor;
				-webkit-text-decoration: underline solid currentColor;
				text-decoration-thickness: 1px;
				text-underline-offset: 5px;
		}
		/* .strike（取り消し線） */
		.strike {
				position: relative;
				text-decoration: line-through;
				text-decoration-style: solid;
				text-decoration-color: var(--c-dominant-900, hsl(224, 6%, 13%));
				text-decoration-thickness: 1px;
		}
		/* .italic（斜体） */
		.italic {
				font-style: italic;
		}
		/* マーカー */
		mark,
		.mark {
				/* bg : color | repeat | position */
				background: linear-gradient(60deg, hsla(50, 99%, 66%, 0.75), hsla(60, 99%, 66%, 0.75) 5em, hsla(60, 99%, 66%, 0.75) 80%, hsla(60, 99%, 66%, 0.25) 100%) no-repeat 50% 100%;
				background-size: 100% 50%;
		}
		/* 引用（BOX） */
		blockquote,
		.blockquote {
				background: var(--c-dominant-40, hsl(224, 6%, 96%));
		}
		/* 引用 */
		.quote {
				background: var(--c-dominant-40, hsl(224, 6%, 96%));
		}
		/* コード系スタイル */
		code,
		kbd,
		pre,
		samp {
				background: var(--c-dominant-100, hsl(224, 6%, 93%));
				border-radius: 4px;
				font-size: 88%;
				padding: 0.0625em 0.25em;
				font-family: var(--ff-monospace);
		}
		/* リンク系スタイル
		────────────── ༚༶⊰⟡⊱༶༚༺ */
		:where(:not(.wp-admin)) a {
				display: inline-block;
				vertical-align: middle;
				text-decoration: none;
				outline: none;
				color: inherit;
				-webkit-transition: all 0.3s ease-in;
				transition: all 0.3s ease-in;
		}
		:where(:not(.wp-admin)) :is([href], [onclick]) {
				cursor: pointer;
		}
		:where(:not(.wp-admin)) :is([href], [onclick]),
		:where(:not(.wp-admin)) :is([href], [onclick])::before,
		:where(:not(.wp-admin)) :is([href], [onclick])::after {
				-webkit-transition: all 0.3s ease-in;
				transition: all 0.3s ease-in;
		}
		/* :hover */
		@media (any-hover: hover) {
				:where(:not(.wp-admin)) :is([href], [onclick]):hover {
						opacity: 0.7;
				}
		}
		/* PCのときは電話リンク無効 */
		@media screen and (min-width: 744px) {
				:where(:not(.wp-admin)) [href^="tel:"] {
						pointer-events: none;
						cursor: default;
				}
		}
		/* フォームスタイル
		────────────── ༚༶⊰⟡⊱༶༚༺ */
		/* コンポーネント用変数 */
		:root {
				--cm-button-py: 0.5em;
				--cm-button-px: 1rem;
				--cm-badge-py: 0.375em;
				--cm-badge-px: 0.5rem;
				--cm-title-py: 0.375em;
				--cm-title-px: 1rem;
				--cm-label-py: 0.833em;
				--cm-label-px: 1rem;
				--cm-fieldset-py: 0.833em;
				--cm-fieldset-px: 1rem;
				--cm-input-hgt: 2.5em;
				--cm-input-py: 0.5em;
				--cm-input-px: 0.75rem;
				--cm-textarea-py: 0.5em;
				--cm-textarea-px: 0.5rem;
		}
		/* input, select, textarea */
		input:where([type=text],
		[type=date],
		[type=datetime-local],
		[type=email],
		[type=month],
		[type=password],
		[type=search],
		[type=tel],
		[type=time],
		[type=url],
		[type=week]),
		input:where([type=number]),
		select,
		textarea {
				max-width: 100%;
				border: 1px solid hsl(233, 13%, 84%);
				border-radius: 3px;
				background: var(--c-dominant, hsl(224, 6%, 100%));
				-webkit-box-shadow: inset 0 1px 1px hsla(0, 0%, 0%, 0.075);
				        box-shadow: inset 0 1px 1px hsla(0, 0%, 0%, 0.075);
				color: hsla(0, 0%, 0%, 0.7);
				font-size: var(--fz-base);
		}
		input:where([type=text],
		[type=date],
		[type=datetime-local],
		[type=email],
		[type=month],
		[type=password],
		[type=search],
		[type=tel],
		[type=time],
		[type=url],
		[type=week]) {
				/* height, padding */
				height: calc(var(--cm-input-hgt) + 2px);
				padding-block: calc(var(--cm-input-py) + var(--font-top-offset, 0em) / 2) calc(var(--cm-input-py) - var(--font-top-offset, 0em) / 2);
				padding-inline: calc(var(--cm-input-px));
		}
		input:where([type=number]) {
				/* height, padding */
				height: calc(var(--cm-input-hgt) + 2px);
				padding-block: calc(var(--cm-input-py) + var(--font-top-offset, 0em) / 2) calc(var(--cm-input-py) - var(--font-top-offset, 0em) / 2);
				padding-inline: calc(var(--cm-input-px) + 0.25em) calc(var(--cm-input-px) - 0.25em);
				text-align: center;
		}
		input:where([type=range]) {
				max-width: 100%;
				height: calc(0.375em + 2px);
				border: 1px solid hsl(233, 13%, 84%);
				border-radius: 999em;
				background: var(--c-secondary-30, hsl(224, 45%, 97%));
				-webkit-box-shadow: inset 0 1px 1px hsla(0, 0%, 0%, 0.075);
				        box-shadow: inset 0 1px 1px hsla(0, 0%, 0%, 0.075);
		}
		select {
				/* height, padding */
				height: calc(var(--cm-input-hgt) + 2px);
				padding-block: calc(var(--cm-input-py) - 0.05em + var(--font-top-offset, 0em) / 2) calc(var(--cm-input-py) - 0.05em - var(--font-top-offset, 0em) / 2);
				padding-inline: calc(var(--cm-input-px));
		}
		textarea {
				/* padding */
				padding-block: calc(var(--cm-textarea-py) + var(--font-top-offset, 0em) / 2) calc(var(--cm-textarea-py) - var(--font-top-offset, 0em) / 2);
				padding-inline: calc(var(--cm-textarea-px));
		}
		/* :placeholder-shown */
		input:where([type=text],
		[type=date],
		[type=datetime-local],
		[type=email],
		[type=month],
		[type=password],
		[type=search],
		[type=tel],
		[type=time],
		[type=url],
		[type=week]):-moz-placeholder, input:where([type=number]):-moz-placeholder, textarea:-moz-placeholder {
				background: var(--c-secondary-30, hsl(224, 45%, 97%));
				color: hsla(0, 0%, 0%, 0.26);
		}
		input:where([type=text],
		[type=date],
		[type=datetime-local],
		[type=email],
		[type=month],
		[type=password],
		[type=search],
		[type=tel],
		[type=time],
		[type=url],
		[type=week]):-ms-input-placeholder, input:where([type=number]):-ms-input-placeholder, textarea:-ms-input-placeholder {
				background: var(--c-secondary-30, hsl(224, 45%, 97%));
				color: hsla(0, 0%, 0%, 0.26);
		}
		input:where([type=text],
		[type=date],
		[type=datetime-local],
		[type=email],
		[type=month],
		[type=password],
		[type=search],
		[type=tel],
		[type=time],
		[type=url],
		[type=week]):placeholder-shown,
		input:where([type=number]):placeholder-shown,
		textarea:placeholder-shown,
		select.placeholder-shown {
				background: var(--c-secondary-30, hsl(224, 45%, 97%));
				color: hsla(0, 0%, 0%, 0.26);
		}
		/* :focus */
		input:where([type=number],
		[type=text],
		[type=date],
		[type=datetime-local],
		[type=email],
		[type=month],
		[type=password],
		[type=search],
		[type=tel],
		[type=time],
		[type=url],
		[type=week]):focus,
		input:where([type=number]):focus,
		select:focus,
		textarea:focus {
				background: var(--c-dominant, hsl(224, 6%, 100%));
				color: hsl(0, 0%, 0%);
		}
		/* ::placeholder */
		:is(input, textarea)::-moz-placeholder {
				color: rgba(0, 0, 0, 0.26);
		}
		:is(input, textarea)::-webkit-input-placeholder {
				color: rgba(0, 0, 0, 0.26);
		}
		/* ::placeholder:focus */
		:is(input, textarea):focus::-moz-placeholder {
				color: transparent;
		}
		:is(input, textarea):focus::-webkit-input-placeholder {
				color: transparent;
		}
		/* ラジオボタン・チェックボックス */
		input:where([type=radio],
		[type=checkbox]) {
				-ms-flex-negative: 0;
				    flex-shrink: 0;
				position: relative;
				top: -0.0625em;
				display: inline-block;
				accent-color: var(--c-primary-700, hsl(224, 50%, 33%));
				margin-right: 0.5em;
		}
		/* ラベル・ボタン */
		label {
				display: -webkit-inline-box;
				display: -ms-inline-flexbox;
				display: inline-flex;
				-webkit-box-align: center;
				    -ms-flex-align: center;
				        align-items: center;
				-ms-flex-wrap: wrap;
				    flex-wrap: wrap;
		}
		button {
				-webkit-appearance: none;
				   -moz-appearance: none;
				        appearance: none;
				border: none;
				outline: none;
		}
} /* ///@scope (.zaratan) */
/* lang 属性, font-family
────────────── ༚༶⊰⟡⊱༶༚༺ */
/* Body用 Root設定 */
.zaratan {
		--ff-gothic: "Noto Sans JP", sans-serif;
		--ff-mincho: "Yu Mincho", serif;
		--ff-rounded: "M PLUS Rounded 1c", sans-serif;
		--ff-monospace: "HackGen", monospace;
}

/* Macの場合だけ、ヒラギノ明朝指定（同時に指定すると、winで太さがおかしくなる） */
.zaratan.macos {
		--ff-hiragp: "Hiragino Kaku Gothic ProN", "Hiragino Sans";
		--ff-mincho: "Hiragino Mincho ProN", "Yu Mincho", serif;
}

/* ベース・ゴシック体
────────────── ༚༶⊰⟡⊱༶༚༺ */
/* ゴシック体／ベース */
.zaratan,
:where(.zaratan) :lang(ja-GP) {
		--font-top-offset: 0.07em;
		font-family: "YakuHanJP", "Roboto", "Kumbh Sans", var(--ff-gothic);
}

/* ヒラギノ */
:where(.zaratan) :lang(ja-HiraGP) {
		font-family: "YakuHanJP", var(--ff-hiragp), var(--ff-gothic);
}

/* 游ゴシック */
:where(.zaratan) :lang(ja-YuGP) {
		font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", sans-serif;
		font-weight: 500;
}

:where(.zaratan) :lang(ja-YuGP).bold,
:where(.zaratan) :lang(ja-YuGP) .bold {
		font-weight: 700;
}

/* ゴシック体／その他 */
:where(.zaratan) :lang(ja-NotoGP) {
		--font-top-offset: 0.07em;
		font-family: "YakuHanJP", "Roboto", "Noto Sans", var(--ff-gothic);
}

:where(.zaratan) :lang(ja-LatoGP) {
		font-family: "YakuHanJP", "Roboto", "Lato", var(--ff-gothic);
}

:where(.zaratan) :lang(ja-M1GP) {
		font-family: "YakuHanJP", "Lato", "M PLUS 1", sans-serif;
}

:where(.zaratan) :lang(ja-BizGP) {
		font-family: "YakuHanJP", "Roboto", "BIZ UDPGothic", sans-serif;
}

/* ゴシック体／縦書き */
:where(.zaratan) :lang(ja-VGP),
:where(.zaratan) :lang(ja-GensVGP) {
		font-family: "YakuHanJP", "Gen Shin Gothic", sans-serif;
}

/* サンセリフ体（英字）
────────────── ༚༶⊰⟡⊱༶༚༺ */
:where(.zaratan) :lang(en-GP),
:where(.zaratan) :lang(en-JostGP) {
		font-family: "YakuHanJP", "Jost", var(--ff-gothic);
}

:where(.zaratan) :lang(en-KumbGP) {
		font-family: "YakuHanJP", "Kumbh Sans", var(--ff-gothic);
}

:where(.zaratan) :lang(en-LatoGP) {
		font-family: "YakuHanJP", "Lato", var(--ff-gothic);
}

:where(.zaratan) :lang(en-HankGP) {
		font-family: "YakuHanJP", "Hanken Grotesk", var(--ff-gothic);
}

:where(.zaratan) :lang(en-OverGP) {
		font-family: "YakuHanJP", "Overused Grotesk", var(--ff-gothic);
}

:where(.zaratan) :lang(en-PopGP) {
		font-family: "YakuHanJP", "Poppins", var(--ff-gothic);
}

:where(.zaratan) :lang(en-SrcGP) {
		font-family: "YakuHanJP", "Source Sans Pro", var(--ff-gothic);
}

:where(.zaratan) :lang(en-GgleGP) {
		font-family: "YakuHanJP", "Google Sans", var(--ff-gothic);
}

:where(.zaratan) :lang(en-GgleFGP) {
		font-family: "YakuHanJP", "Google Sans Flex", var(--ff-gothic);
}

:where(.zaratan) :lang(en-NoblGP) {
		font-family: "YakuHanJP", "Nobel", "Urbanist", var(--ff-gothic);
}

:where(.zaratan) :lang(en-UrbnGP) {
		font-family: "YakuHanJP", "Urbanist", var(--ff-gothic);
}

:where(.zaratan) :lang(en-OnesGP) {
		font-family: "YakuHanJP", "Onest", var(--ff-gothic);
}

:where(.zaratan) :lang(en-HindGP) {
		font-family: "YakuHanJP", "Hind", var(--ff-gothic);
}

:where(.zaratan) :lang(en-RoboFGP) {
		font-family: "YakuHanJP", "Roboto Flex", var(--ff-gothic);
}

:where(.zaratan) :lang(en-SpecFGP) {
		font-family: "YakuHanJP", "Special Gothic", var(--ff-gothic);
}

:where(.zaratan) :lang(en-ZalaGP) {
		font-family: "YakuHanJP", "Zalando Sans", var(--ff-gothic);
}

:where(.zaratan) :lang(en-StackGP) {
		font-family: "YakuHanJP", "Stack Sans Text", var(--ff-gothic);
}

:where(.zaratan) :lang(en-ElmsGP) {
		font-family: "YakuHanJP", "Elms Sans", var(--ff-gothic);
}

:where(.zaratan) :lang(en-A1GP) {
		font-family: "YakuHanJP", "Gothic A1", var(--ff-gothic);
}

:where(.zaratan) :lang(en-OfitGP) {
		font-family: "YakuHanJP", "Outfit", var(--ff-gothic);
}

:where(.zaratan) :lang(en-MontGP) {
		font-family: "YakuHanJP", "Montserrat", var(--ff-gothic);
}

:where(.zaratan) :lang(en-RaleGP) {
		font-family: "YakuHanJP", "Raleway", var(--ff-gothic);
}

:where(.zaratan) :lang(en-DDinGP) {
		font-family: "YakuHanJP", "D-DIN-PRO", var(--ff-gothic);
}

/* Condensed
────────────── ༚༶⊰⟡⊱༶༚༺ */
:where(.zaratan) :lang(en-CN),
:where(.zaratan) :lang(en-DiniCN) {
		font-family: "YakuHanJP", "Dinish Condensed", var(--ff-gothic);
}

:where(.zaratan) :lang(en-OswaCN) {
		font-family: "YakuHanJP", "Oswald", var(--ff-gothic);
}

:where(.zaratan) :lang(en-BebaCN) {
		font-family: "YakuHanJP", "Bebas Neue", var(--ff-gothic);
}

:where(.zaratan) :lang(en-RoboCN) {
		font-family: "YakuHanJP", "Roboto Condensed", var(--ff-gothic);
}

:where(.zaratan) :lang(en-SpecCN) {
		font-family: "YakuHanJP", "Special Gothic Condensed One", var(--ff-gothic);
}

:where(.zaratan) :lang(en-LeagCN) {
		font-family: "YakuHanJP", "League Gothic", var(--ff-gothic);
}

:where(.zaratan) :lang(en-BarlCN) {
		font-family: "YakuHanJP", "Barlow Condensed", var(--ff-gothic);
}

/* 明朝体
────────────── ༚༶⊰⟡⊱༶༚༺ */
:where(.zaratan) :lang(ja-MP) {
		font-family: "YakuHanMP", var(--ff-mincho);
}

:where(.zaratan) :lang(ja-ShipMP) {
		font-family: "YakuHanMP", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(ja-ShipOMP) {
		font-family: "YakuHanMP", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(ja-NotoMP) {
		font-family: "YakuHanMP", "Noto Serif", "Noto Serif JP", serif;
}

:where(.zaratan) :lang(ja-BizMP) {
		font-family: "YakuHanMP", "Shippori Mincho B1", "BIZ UDPMincho", serif;
}

/* セリフ体（英字）
────────────── ༚༶⊰⟡⊱༶༚༺ */
:where(.zaratan) :lang(en-MP),
:where(.zaratan) :lang(en-CinzMP) {
		font-family: "YakuHanMP", "Cinzel", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(en-CrimMP) {
		font-family: "YakuHanMP", "Crimson Text", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(en-SrcMP) {
		font-family: "YakuHanMP", "Source Serif Pro", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(en-RuhlMP) {
		font-family: "YakuHanMP", "Frank Ruhl Libre", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(en-BaskMP) {
		font-family: "YakuHanMP", "Libre Baskerville", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(en-BodoMP) {
		font-family: "YakuHanMP", "Libre Bodoni", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(en-CaslMP) {
		font-family: "YakuHanMP", "Libre Caslon Display", "Libre Caslon Text", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(en-CormMP) {
		font-family: "YakuHanMP", "Cormorant Infant", "Cormorant Garamond", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(en-PrFrMP) {
		font-family: "YakuHanMP", "Prata", "Playfair Display", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(en-CardMP) {
		font-family: "YakuHanMP", "Cardo", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

:where(.zaratan) :lang(en-MarcMP) {
		font-family: "YakuHanMP", "Marcellus", "Shippori Mincho OTF", "Shippori Mincho", serif;
}

/* 筆記体（英字）
────────────── ༚༶⊰⟡⊱༶༚༺ */
:where(.zaratan) :lang(en-CS),
:where(.zaratan) :lang(en-DancCS) {
		font-family: "YakuHanMP", "Dancing Script", cursive;
}

:where(.zaratan) :lang(en-WateCS) {
		font-family: "YakuHanMP", "Waterfall", cursive;
}

:where(.zaratan) :lang(en-AlluCS) {
		font-family: "YakuHanMP", "Allura", cursive;
}

:where(.zaratan) :lang(en-TangCS) {
		font-family: "YakuHanMP", "Tangerine", cursive;
}

:where(.zaratan) :lang(en-VibeCS) {
		font-family: "YakuHanMP", "Great Vibes", cursive;
}

/* 丸文字（+ ジャギ防止）
────────────── ༚༶⊰⟡⊱༶༚༺ */
:where(.zaratan) :lang(ja-RP),
:where(.zaratan) :lang(ja-M1RP) {
		font-family: "YakuHanRP", "M PLUS Rounded 1c", sans-serif;
		-webkit-transform: rotate(0.03deg);
		-ms-transform: rotate(0.03deg);
		    transform: rotate(0.03deg);
}

:where(.zaratan) :lang(ja-LineRP) {
		font-family: "YakuHanRP", "LINE Seed JP_OTF", sans-serif;
}

:where(.zaratan) :lang(ja-MoboRP).fw-200 {
		font-family: "YakuHanRP", "モボ-ExtraLight", sans-serif;
}

:where(.zaratan) :lang(ja-MoboRP) {
		font-family: "YakuHanRP", "モボ-Regular", sans-serif;
}

:where(.zaratan) :lang(ja-MoboRP).fw-600 {
		font-family: "YakuHanRP", "モボ-SemiBold", sans-serif;
}

:where(.zaratan) :lang(ja-MoboRP).fw-700 {
		font-family: "YakuHanRP", "モボ-Bold", sans-serif;
}

:where(.zaratan) :lang(ja-SRetRP) {
		font-family: "YakuHanRP", "Shin Retro Maru Gothic", sans-serif;
}

/* 等幅フォント
────────────── ༚༶⊰⟡⊱༶༚༺ */
:where(.zaratan) :lang(ja-HackGP) {
		font-family: "HackGen", var(--ff-monospace);
}

:where(.zaratan) :lang(ja-NotoMonoGP) {
		font-family: "Noto Sans Mono CJK JP", var(--ff-monospace);
}

/* 記号用 */
:where(.zaratan) :lang(ja-NanuGP) {
		font-family: "Nanum Gothic", var(--ff-monospace);
}