/**
 * base.css — サイト全体の基盤スタイル
 *
 * Studio の汎用クラス（.box / .text / .section / .input …）は名前が一般的すぎて
 * WordPress のテーマ・プラグインと衝突するため、すべて an- 接頭辞を付けている。
 * Material Icons / Font Awesome のクラスは元のまま。
 *
 * 自動生成: node _research/emit-base.mjs（生成元: _archive/css/agreement.css）
 * 手で編集しない
 */

.material-icons {
	display: flex;
	font-family: Material Icons;
	font-size: 24px;
	font-style: normal;
	font-weight: 400;
	letter-spacing: normal;
	line-height: 1;
	text-transform: none;
	white-space: nowrap;
	word-wrap: normal;
	direction: ltr;
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}
.fa-solid, .fa-brands {
	-moz-osx-font-smoothing:grayscale;
	-webkit-font-smoothing:antialiased;
	display:inline-block;
	font-style:normal;
	font-variant:normal;
	line-height:1;
	text-rendering:auto;
}
.fa-solid {
	font-family:'Font Awesome 6 Free';
	font-weight:900;
}
.fa-brands {
	font-family:'Font Awesome 6 Brands';
	font-weight:400;
}
:root,:host {
	--fa-style-family-classic:'Font Awesome 6 Free';
	--fa-font-solid:normal 900 1em/1 'Font Awesome 6 Free';
	--fa-style-family-brands:'Font Awesome 6 Brands';
	--fa-font-brands:normal 400 1em/1 'Font Awesome 6 Brands';
}
.fa-instagram:before {
	content: "\f16d";
}
.fa-youtube:before {
	content: "\f167";
}
.fa-line:before {
	content: "\f3c0";
}
:root {
	--s-font-08975ce4:'Noto Sans JP','M PLUS Rounded 1c';
	--s-font-41a55b97:'Barlow Condensed';
}
html {
	height: 100%;
	padding: 0;
	margin: 0;
	scroll-behavior: smooth;
	-webkit-font-smoothing: antialiased;
}
body {
	display: block;
	min-height: 100vh;
	min-height: 100dvh;
	background: #fff;
	font-family: sans-serif;
	line-height: 1;
	transition: background 0.5s cubic-bezier(0.4, 0.4, 0, 1);
	padding: 0;
	margin: 0;
}
a {
	background: transparent;
	color: rgb(51, 51, 51);
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	border: none;
	text-decoration: none;
}
button {
	background: transparent;
	color: inherit;
	font-size: 100%;
	margin: 0;
	padding: 0;
	vertical-align: baseline;
	border: none;
}
button {
	pointer-events: all;
	cursor: pointer;
	user-select: none;
}
hr {
	border: 0;
	border-top: 1px solid #ccc;
	display: block;
	height: 1px;
	margin: 1em 0;
	padding: 0;
}
h1, h2, h3, h4, h5, h6 {
	color: rgb(51, 51, 51);
	line-height: 1;
}
.an-img, .an-box, .an-text, .an-frame, .an-section, .an-section-inner, .an-input, .an-toggle, .an-icon, .an-video, .an-video-container {
	border: 0;
	box-sizing: border-box;
	max-width: 100%;
	z-index: 0;
	position: relative;
	margin: 0;
	padding: 0;
	flex: none;
}
.an-img {
	height: auto;
}
.an-img, .an-box, .an-text, .an-frame, .an-section, .an-section-inner, .an-toggle, .an-icon, .an-video-container {
	transition: all 0.3s cubic-bezier(0.4, 0.4, 0, 1);
	transition-property: all, --g-angle, --g-color-0, --g-position-0, --g-color-1, --g-position-1, --g-color-2, --g-position-2, --g-color-3, --g-position-3, --g-color-4, --g-position-4, --g-color-5, --g-position-5, --g-color-6, --g-position-6, --g-color-7, --g-position-7, --g-color-8, --g-position-8, --g-color-9, --g-position-9, --g-color-10, --g-position-10, --g-color-11, --g-position-11;
	list-style: none;
	margin: 0;
	padding: 0;
	text-decoration: none;
	align-content: center;
}
.an-input, .an-select {
	font-family: inherit !important;
	font-size: inherit;
	font-style: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	line-height: inherit;
}
:where(textarea.an-input) {
	resize: vertical;
}
input[type="email"], input[type="tel"], input[type="text"], select, textarea {
	-webkit-appearance: none;
}
.an-input, .an-richText * {
	transition: all 0.3s cubic-bezier(0.4, 0.4, 0, 1);
	transition-property: all, --g-angle, --g-color-0, --g-position-0, --g-color-1, --g-position-1, --g-color-2, --g-position-2, --g-color-3, --g-position-3, --g-color-4, --g-position-4, --g-color-5, --g-position-5, --g-color-6, --g-position-6, --g-color-7, --g-position-7, --g-color-8, --g-position-8, --g-color-9, --g-position-9, --g-color-10, --g-position-10, --g-color-11, --g-position-11;
	list-style: none;
	margin: 0;
	padding: 0;
	text-decoration: none;
	align-content: normal;
	z-index: 0;
}
.an-input:where(textarea) {
	transition-property: background, border, border-radius, box-shadow, color, filter, opacity, outline, transform, translate, scale, rotate, --g-angle, --g-color-0, --g-position-0, --g-color-1, --g-position-1, --g-color-2, --g-position-2, --g-color-3, --g-position-3, --g-color-4, --g-position-4, --g-color-5, --g-position-5, --g-color-6, --g-position-6, --g-color-7, --g-position-7, --g-color-8, --g-position-8, --g-color-9, --g-position-9, --g-color-10, --g-position-10, --g-color-11, --g-position-11;
}
.an-richText s, .an-richText del, .an-richText u {
	text-decoration: revert;
}
.an-box, .an-frame, .an-section, .an-toggle, .an-video-container,
sd-carousel {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.an-img, .an-text, .an-icon {
	align-items: center;
	display: flex;
	flex-direction: row;
	justify-content: center;
	overflow-wrap: anywhere;
	word-break: break-word;
	z-index: 0;
}
.an-box::-webkit-scrollbar,
.an-toggle[data-toggle-closing] [data-show-toggle="open"], .an-toggle[open]:not([data-toggle-closing]) [data-show-toggle="close"], .an-toggle:not([open]):not([data-toggle-closing]) [data-show-toggle="open"],
.an-toggle[data-toggle-overlay]:not([open]):not([data-toggle-closing]) > [data-toggle-content],
.an-video-container[data-video-state="paused"] [data-video-label="pause"], .an-video-container[data-video-state="playing"] [data-video-label="play"],
img[data-sd-img-src] {
	display: none;
}
:where(table).an-box {
	display: table;
	max-width: none;
	min-width: max-content;
	flex-direction: unset;
	align-items: unset;
	align-content: unset;
}
:where(table.an-box) {
	border-collapse: collapse;
	border-spacing: 0;
}
:where(thead).an-box {
	display: table-header-group;
}
:where(tbody).an-box {
	display: table-row-group;
}
:where(tr).an-box {
	display: table-row;
}
:where(th).an-box, :where(td).an-box {
	display: table-cell;
}
:where(th.an-box, td.an-box) {
	text-align: left;
	vertical-align: middle;
	height: inherit;
}
:where(colgroup).an-box {
	display: table-column-group;
}
:where(col).an-box {
	display: table-column;
}
.an-richText * {
	border: 0;
	list-style: none;
	margin: 0;
	padding: 0;
	text-decoration: none;
	-webkit-font-smoothing: antialiased;
	-webkit-backface-visibility: hidden;
	box-sizing: border-box;
	word-spacing: 1px;
	backface-visibility: visible;
	color: inherit;
	font-family: inherit;
	font-size: inherit;
	font-style: inherit;
	font-weight: inherit;
	letter-spacing: inherit;
	line-height: inherit;
	text-align: inherit;
}
.an-richText h1 {
	font-size: 3em;
	font-weight: 700;
	margin: 20px 0;
}
.an-richText h2, .an-richText h3 {
	font-weight: 700;
	margin: 10px 0;
}
.an-richText h2 {
	font-size: 2em;
}
.an-richText h3 {
	font-size: 1em;
}
.an-richText h4, .an-richText h5, .an-richText h6 {
	display: block;
	font-size: 1em;
	margin: 10px 0;
}
.an-richText h4, .an-richText h5 {
	font-weight: 600;
}
.an-richText h6 {
	font-weight: 500;
}
.an-richText p {
	margin: 10px 0;
}
.an-richText > p {
	min-height: 1em;
}
.an-richText hr {
	border-top: 1px solid #ccc;
	margin: 10px 0;
}
.an-richText em {
	font-style: italic;
}
.an-richText > blockquote {
	border-left: 3px solid rgba(0, 0, 0, 0.15);
	font-style: italic;
	margin: 10px 0;
	padding: 10px 15px;
}
.an-richText strong {
	color: inherit;
	display: inline;
	font-family: inherit;
	font-weight: 900;
}
.an-richText > [data-type="table_of_contents"] .an-toc_list {
	margin: 0;
	padding: 0;
}
.an-richText > [data-type="table_of_contents"] .an-toc_item.an-toc_item--1 {
	margin: 0 0 16px 0;
	padding-left: 0;
}
.an-richText > [data-type="table_of_contents"] .an-toc_item.an-toc_item--2 {
	margin: 0 0 16px 0;
	padding-left: 2rem;
}
.an-richText > [data-type="table_of_contents"] .an-toc_item.an-toc_item--3 {
	margin: 0 0 16px 0;
	padding-left: 4rem;
}
.an-richText > [data-type="table_of_contents"] .an-toc_item > a {
	font-size: inherit;
	font-weight: inherit;
	color: currentColor;
	border: none;
	text-decoration: none;
}
.an-richText > [data-type="table_of_contents"] .an-toc_item {
	font-size: inherit;
	font-weight: inherit;
	color: currentColor;
	list-style: none;
	margin: 0 0 16px 0;
	padding-left: 2rem;
}
.an-richText > [data-type="table_of_contents"] {
	line-height: 1;
	list-style: none;
	padding: 24px 24px 8px;
	margin: 0;
	border-radius: 2px;
	font-size: 16px;
	background-color: #f5f5f5;
	text-decoration: underline;
	color: #616161;
}
.an-richText > [data-type="table"] p {
	white-space: pre-line;
	word-break: break-all;
}
.an-richText > [data-type="table"] {
	overflow-x: auto;
}
.an-richText table {
	table-layout: auto;
	border-collapse: collapse;
	border-spacing: unset;
	margin: 10px 0 10px 0;
	font-size: 14px;
	border: 1px solid #f2f2f2;
	color: #1a1a1a;
	line-height: 1.4;
}
.an-richText th {
	background: rgba(245, 245, 245, 0.5);
}
.an-richText th p, .an-richText td p,
.an-richText li > p {
	margin: 0;
}
.an-richText th, .an-richText td {
	min-width: 100px;
	max-width: 240px;
	border: 1px solid #f2f2f2;
	padding: 12px;
}
.an-richText p > code {
	background: #eee;
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 6px;
	display: inline;
	margin: 2px;
	padding: 0 5px;
}
.an-richText ol li {
	list-style: decimal;
	margin: 10px 0;
}
.an-richText ol,
.an-richText ul {
	margin: 0 0 0 20px;
	padding: 0;
	list-style: none;
}
.an-richText ul li {
	list-style: disc;
	margin: 10px 0;
}
.an-richText pre code {
	padding: 0;
	border: none;
}
.an-richText pre {
	margin: 20px 0 20px 0;
	padding: 25px 35px 25px 35px;
	background: #eeeeee;
	border-radius: 6px;
	white-space: pre-wrap;
	font-family: Menlo, Monaco, "Courier New", monospace;
}
.an-richText img, .an-richText video {
	height: auto;
	max-width: 100%;
	vertical-align: bottom;
}
.an-richText a {
	color: #007cff;
	display: inline;
	text-decoration: underline;
}
.an-richText [data-type="embed_code"] .an-height-adjuster .an-wrapper,
.an-richText [data-type="embed_code"] .an-height-adjuster {
	position: relative;
}
.an-richText [data-type="embed_code"] .an-height-adjuster .an-wrapper[style*='padding-top'] iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.an-richText [data-type="embed_code"] {
	position: relative;
	margin: 20px 0;
}
.an-richText {
	display: block;
	flex-direction: column;
	flex: none;
	word-break: break-word;
	-webkit-font-smoothing: antialiased;
	box-sizing: border-box;
	line-height: 1;
}
.an-section {
	width: 100%;
}
.an-section-inner {
	position: static;
}
dialog[open] {
	display: flex;
}
dialog::backdrop {
	background: transparent;
}
dialog {
	border: none;
	background-color: transparent;
	padding: 0;
	margin: 0;
	width: 100%;
	height: 100%;
	position: fixed;
	max-width: none;
	max-height: none;
	box-sizing: border-box;
	overflow: visible;
}
.an-modal-container {
	box-sizing: border-box;
	position: relative;
	width: 100%;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	pointer-events: none;
	z-index: 1;
}
.an-modal-container > * {
	pointer-events: auto;
}
.an-modal-backdrop {
	position: absolute;
	inset: 0;
	pointer-events: none;
	z-index: 0;
}
dialog[open][data-modal-transition-base]:not(.an-modal-ready) .an-modal-container * {
	transition: none !important;
}
dialog[open][data-modal-transition-base] > .an-modal-container,
dialog[open][data-modal-transition-base] > .an-modal-backdrop {
	opacity: 0;
}
dialog[open][data-modal-transition-base].an-modal-ready > .an-modal-container {
	opacity: 1;
	transform: none;
	transition: opacity 400ms cubic-bezier(.4,.4,0,1), transform 400ms cubic-bezier(.4,.4,0,1);
}
dialog[open][data-modal-transition-base].an-modal-ready > .an-modal-backdrop {
	opacity: 1;
	transition: opacity 400ms cubic-bezier(.4,.4,0,1);
}
dialog[data-modal-transition-base].an-modal-closing > .an-modal-container {
	opacity: 0;
	transition: opacity 400ms cubic-bezier(.4,.4,0,1), transform 400ms cubic-bezier(.4,.4,0,1);
}
dialog[data-modal-transition-base].an-modal-closing > .an-modal-backdrop {
	opacity: 0;
	transition: opacity 400ms cubic-bezier(.4,.4,0,1);
}
.an-image__bg-container {
	container-type: size;
	container-name: image-container;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: -2;
	border-radius: inherit;
	transition: inherit;
}
.an-image__bg-container::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-image: var(--img-current);
	background-position: 50%;
	background-size: cover;
	border-radius: inherit;
	transition-duration: inherit;
	transition-timing-function: inherit;
	transition-delay: inherit;
	transition-property:
    filter, backdrop-filter, opacity, color,
    background-color, background-position, background-size,
    border, border-color, border-width, border-radius,
    outline, outline-color, outline-width, outline-offset,
    box-shadow, text-shadow, transform, transform-origin,
    width, height, margin, padding,
    top, left, right, bottom, z-index, gap,
    letter-spacing, word-spacing, line-height, font-size, font-weight,
    clip-path;
}
.an-image--shift-1 .an-image__bg-container::before {
	--img-current: var(--img-middle);
}
.an-image--shift-2 .an-image__bg-container::before {
	--img-current: var(--img-regular);
}
.an-text {
	-webkit-font-smoothing: antialiased;
	position: relative;
	line-height: 1;
	word-spacing: 1px;
}
.an-frame {
	display: block;
	overflow: hidden;
	line-height: 1;
}
.an-frame > iframe {
	border: none;
	width: 100%;
	height: 100%;
}
.an-file {
	box-sizing: border-box;
	display: flex;
	align-items: center;
	flex-direction: row;
	word-break: break-word;
	overflow-wrap: anywhere;
	cursor: pointer;
	outline: 2px solid transparent;
	outline-offset: -1px;
	position: relative;
	font-family: inherit !important;
}
.an-file:focus-within {
	outline-color: rgba(56, 110, 220, 0.5);
}
.an-file > input[type='file'] {
	opacity: 0;
	position: absolute;
	pointer-events: none;
	inset: 0;
	width: 100%;
	height: 100%;
}
sd-video {
	display: block;
	overflow: hidden;
	object-fit: contain;
}
sd-video > video {
	display: block;
	max-width: 100%;
	max-height: 100%;
	object-fit: inherit;
}
.an-video-container {
	user-select: none;
}
.an-video-container[data-video-state="paused"] [data-video-label="play"], .an-video-container[data-video-state="playing"] [data-video-label="pause"] {
	display: inline;
}
sd-carousel:not([is-playing]) [slot="pause"], sd-carousel[is-playing] [slot="play"] {
	display: none !important;
}
sd-carousel :where([slot="prev"], [slot="next"], [slot="play-toggle"]) {
	cursor: pointer;
}
sd-loop-box {
	overflow: hidden !important;
}
sd-loop-box > .an-img {
	max-width: 100%;
	height: auto;
}
:root {
	--s-color-cdbe7768: #222222ff;
	--s-color-569d863a: #f6354bff;
	--s-color-f5ac8e2a: #f6f3f3ff;
	--s-color-16b8b9d6: rgb(255, 255, 255);
	--s-color-bf9200b8: #dbdbdbff;
	--s-color-11b485d5: #3773b7ff;
	--s-color-79a7df4e: rgba(255, 255, 255, 0.64);
	--s-color-8482409b: #ece5e5ff;
	--s-color-6c956454: #000000cc;
	--s-color-cb82353c: #0f9c7cff;
	--s-color-9c80d7ba: #e19797ff;
	--s-color-aab76478: #dfeaddff;
}
.an-text.an-title-xl {
	font-family:var(--an-font-jp);
	font-size:48px;
	font-weight:700;
	letter-spacing:0;
	line-height:1.3;
}
.an-text.an-title-l {
	font-family:var(--an-font-jp);
	font-size:32px;
	font-weight:700;
	letter-spacing:0;
	line-height:1.4;
}
.an-text.an-title-m {
	font-family:var(--an-font-jp);
	font-size:24px;
	font-weight:700;
	letter-spacing:0;
	line-height:1.4;
}
.an-text.an-paragraph-l {
	font-family:var(--an-font-jp);
	font-size:16px;
	font-weight:400;
	letter-spacing:0;
	line-height:1.5;
}
.an-text.an-paragraph-m {
	font-family:var(--an-font-jp);
	font-size:12px;
	font-weight:400;
	letter-spacing:0;
	line-height:1.4;
}
body {
	background:var(--an-color-white);
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
	dialog[open][data-modal-transition-base] > .an-modal-container, dialog[open][data-modal-transition-base].an-modal-ready > .an-modal-container, dialog[data-modal-transition-base].an-modal-closing > .an-modal-container {
		transition: none;
		opacity: 1;
		transform: none !important;
	}
	dialog[open][data-modal-transition-base] > .an-modal-backdrop, dialog[open][data-modal-transition-base].an-modal-ready > .an-modal-backdrop, dialog[data-modal-transition-base].an-modal-closing > .an-modal-backdrop {
		transition: none;
		opacity: 1;
	}
}

@media (min-resolution: 1.5dppx) {
	.an-image--horizontal .an-image__bg-container::before,
	.an-image--vertical .an-image__bg-container::before {
		--img-current: var(--img-small);
	}
}

@media (min-resolution: 1.5dppx) {
	@container (aspect-ratio < 1) and (width < 300px) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (aspect-ratio < 0.5) and (width < 300px) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (300px <= width) and (aspect-ratio >= 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (300px <= width < 500px) and (aspect-ratio < 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (300px <= width < 500px) and (aspect-ratio < 0.5) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (500px <= width) and (aspect-ratio >= 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (500px <= width < 901px) and (aspect-ratio < 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (901px <= width) {
		.an-image--horizontal .an-image__bg-container::before,
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (aspect-ratio < 0.25) and (width < 300px) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (300px <= width < 500px) and (aspect-ratio >= 0.5) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (300px <= width < 500px) and (aspect-ratio < 0.25) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (500px <= width < 901px) and (aspect-ratio >= 0.5) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (min-resolution: 1.5dppx) {
	@container (500px <= width < 901px) and (aspect-ratio < 0.5) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	.an-image--horizontal .an-image__bg-container::before,
	.an-image--vertical .an-image__bg-container::before {
		--img-current: var(--img-small);
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (aspect-ratio < 1) and (width < 400px) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (aspect-ratio < 0.5) and (width < 400px) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (400px <= width) and (aspect-ratio >= 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (400px <= width < 667px) and (aspect-ratio < 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (400px <= width < 667px) and (aspect-ratio < 0.5) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (667px <= width) and (aspect-ratio >= 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (667px <= width < 1201px) and (aspect-ratio < 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (1201px <= width) {
		.an-image--horizontal .an-image__bg-container::before,
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (aspect-ratio < 0.25) and (width < 400px) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (400px <= width < 667px) and (aspect-ratio >= 0.5) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (400px <= width < 667px) and (aspect-ratio < 0.25) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (667px <= width < 1201px) and (aspect-ratio >= 0.5) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (min-resolution: 1dppx) and (max-resolution: 1.5dppx) {
	@container (667px <= width < 1201px) and (aspect-ratio < 0.5) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (max-resolution: 1dppx) {
	.an-image--horizontal .an-image__bg-container::before,
	.an-image--vertical .an-image__bg-container::before {
		--img-current: var(--img-small);
	}
}

@media (max-resolution: 1dppx) {
	@container (aspect-ratio < 1) and (width < 600px) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (aspect-ratio < 0.5) and (width < 600px) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (600px <= width) and (aspect-ratio >= 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (600px <= width < 1000px) and (aspect-ratio < 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (600px <= width < 1000px) and (aspect-ratio < 0.5) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (1000px <= width) and (aspect-ratio >= 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (1000px <= width < 1801px) and (aspect-ratio < 1) {
		.an-image--horizontal .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (1801px <= width) {
		.an-image--horizontal .an-image__bg-container::before,
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (aspect-ratio < 0.25) and (width < 600px) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (600px <= width < 1000px) and (aspect-ratio >= 0.5) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-middle);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (600px <= width < 1000px) and (aspect-ratio < 0.25) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (1000px <= width < 1801px) and (aspect-ratio >= 0.5) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-regular);
		}
	}
}

@media (max-resolution: 1dppx) {
	@container (1000px <= width < 1801px) and (aspect-ratio < 0.5) {
		.an-image--vertical .an-image__bg-container::before {
			--img-current: var(--img-origin);
		}
	}
}

@container (min-width: 600px) {
	.an-image--shift-1 .an-image__bg-container::before {
		--img-current: var(--img-regular);
	}
	.an-image--shift-2 .an-image__bg-container::before {
		--img-current: var(--img-origin);
	}
}

@container (min-width: 1000px) {
	.an-image--shift-1 .an-image__bg-container::before {
		--img-current: var(--img-origin);
	}
}

/**
 * Font Awesome のグリフ定義。
 * 全ページ横断で集約（1ページだけでは使用アイコンの一部が漏れるため）。
 * fa-x-twitter / fa-facebook-f はコラム機能で新規追加した共有ボタン用で、
 * 元サイトには存在しないため公式コードポイントを直接指定している。
 */
.fa-briefcase:before { content: "\f0b1"; }
.fa-building:before { content: "\f1ad"; }
.fa-facebook-f:before { content: "\f39e"; }
.fa-hand-holding-heart:before { content: "\f4be"; }
.fa-money-bill:before { content: "\f0d6"; }
.fa-window-restore:before { content: "\f2d2"; }
.fa-x-twitter:before { content: "\e61b"; }
.fa-yen-sign:before { content: "\f157"; }
