:root {
	--aside-w: 40px;
	--img-max-w: 920px;
	--text-def-w: calc(var(--img-max-w)/2.6 * 1.6 - 12px);
	--img-def-w: calc(var(--img-max-w)/2.6 * 1 - 12px);
	--img-min-w: 180px;
}

/*----------------------*/
/*READER*/
/*----------------------*/
#reader {
	opacity: 1;
	pointer-events: auto;
	inset: 0;
	overflow-y: auto;
	overflow-x: hidden;
	-webkit-overflow-scrolling: touch;
	z-index: 99;
	display: none;
	background-color: transparent;
}

#reader::before {
	content: '';
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: #000000;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0) 90%, rgba(0, 0, 0, 1) 100%);
	z-index: 1;
	pointer-events: none;
}

#reader:has(.p-wrap.is-active),
#reader .p-wrap.is-active,
#reader:has(.p-popwrap.is-active),
#reader .p-popwrap.is-active {
	display: block;
	background-color: var(--color-bk);
}

/*FUNCTION BUTTON*/
#reader > .p-btn {
	position: fixed;
	top: var(--corner);
	right: var(--corner);
	z-index: 2;
	display: flex;
	column-gap: 1em;
}

#reader:has(.p-contents .p-section:last-of-type .p-page.is-show:last-child) .i-scroll,
#reader:has(.p-popwrap.is-active) .i-scroll {
	display: none;
}

/*CLOSE*/
#reader .p-wrap .i-close {
	width: var(--btn-w);
	display: block;
	margin: var(--pad-def) auto;
	padding: 1em;
	font-size: var(--fs-s);
	border: 1px solid var(--lcolor-w);
	background-image: none;
	border-radius: var(--icon-r);
}

body:has(.pswp--open) #reader .p-btn,
body:has(.pswp--open) #reader .p-scroll {
	display: none;
}

.i-backto[data-action*='_1'] {
	background-image: url(/source/icons/icon-backleft.svg);
}

/*----------------------*/
/*RUBY*/
/*----------------------*/
.rubyful-rt {
	font-size: var(--fs-xs);
	color: #e2e2e2;
	opacity: 1;
	font-weight: normal;
}

.p-text:has(.rubyful-rt:not(.hidden)) {
	line-height: 2.4em;
}

/*----------------------*/
/*LINK*/
/*----------------------*/
.p-text a[href] {
	align-items: center;
	position: relative;
	display: inline-flex;
}

.p-text a[href]::before {
	content: '';
	position: absolute;
	bottom: 0.1em;
	left: 0;
	height: 1px;
	width: 100%;
	background-color: var(--tcolor-w);
}

.p-text:has(.rubyful-rt:not(.hidden)) a[href]::before {
	bottom: 0.4em;
}

.p-page.full figcaption[linkable] {
	background: url(/source/icons/icon-link.svg) no-repeat center right 0.75em/1em;
}

/*--------------------*/
/*PART NAVI*/
/*--------------------*/
.p-list {
	--p: 8px;
	--i-s: 20px;
	width: var(--aside-w);
	height: auto;
	position: fixed;
	right: 20px;
	top: calc(50% + 30px);
	transform: translateY(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: calc(var(--p)*2);
	z-index: 1;
}

.p-list > li {
	font-size: 0;
	position: relative;
	transition: opacity 0.3s, height 0.3s;
	cursor: pointer;
}

.p-list > li.is-show {
	opacity: 1;
}

.p-list > li:empty {
	width: var(--p);
	height: var(--p);
	opacity: .6;
	background-color: white;
	border-radius: 8px;
}

.p-list > li.is-show:empty {
	width: calc(var(--p)*0.8);
	height: calc(var(--p)*3);
	opacity: 1;
}

.p-list > li:not(:empty) {
	opacity: 1;
}

.p-list > li:not(:empty):not(:last-of-type)::after {
	content: '';
	height: 0;
	width: 1px;
	display: block;
	margin: auto;
	transition: 0.5s;
	background-color: var(--black-checked);
	opacity: 0;
}

.p-list > li:not(:empty).is-show::after {
	margin-top: 16px;
	height: 32px;
	opacity: 1;
}

.p-list > li img {
	width: var(--i-s);
	height: auto;
}

/*--------------------*/
/*MAIN CONTENTS*/
/*--------------------*/
.p-wrap {
	width: 100%;
	height: auto;
	min-height: 100%;
	display: none;
	background-color: var(--color-bk);
	font-size: var(--fs-m);
}

.p-page h1,
.p-page h2,
.p-page h3,
.p-page p,
.p-page figure {
	transition: opacity 0.5s ease, transform 0.8s ease;
}

.p-page h1,
.p-page h2,
.p-page h3 {
	text-align: center;
}

.p-page svg text {
	font-size: var(--fs-s);
}

/*--------------------*/
/*PAGE*/
/*--------------------*/
.p-page {
	width: 100%;
	max-width: 100%;
	overflow-x: hidden;
	min-height: 80dvh;
	padding: var(--pad-def) var(--pad-side);
	display: flex;
	flex-direction: column;
}

.p-page > * {
	opacity: .3;
	transition: opacity 0.5s ease, transform 0.8s ease;
}

.p-page h1,
.p-page h2,
.p-page h3 {
	opacity: 0;
}

.p-page.is-show > *,
.p-page.is-show + .p-page.rel > *,
.p-page.is-show + .p-page.more > *,
.p-page.is-show h1,
.p-page.is-show h2,
.p-page.is-show h3 {
	opacity: 1;
}

.p-page .p-text,
.p-page .p-img {
	max-width: var(--text-max-w);
}

/*TEXTS--------------*/
.p-text {
	line-height: 1.8em;
	text-align: left;
}

/*NOTES--------------*/
.p-text span:not([class]) {
	display: block;
	margin-top: 0.75em;
	font-size: var(--fs-xs);
	line-height: 1.5em;
}

.p-text:has(.rubyful-rt:not(.hidden)) span {
	line-height: 2.4em;
}

/*IMAGES--------------*/
.p-page .p-img figure {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0.5em;
}

.p-page .p-img img,
.p-page .p-img svg,
.p-page .p-img video {
	transform: scale(0.95);
	transform-origin: center;
	transition: transform 0.8s ease;
	transition-delay: 0.25s;
}

.p-page .p-img img,
.p-page .p-img video {
	border-radius: var(--img-r);
}

.p-page.full .p-img img,
.p-page.full .p-img svg,
.p-page.full .p-img video {
	transform: scale(1.05);
	border-radius: 0;
}

.p-page.is-show .p-img img,
.p-page.is-show .p-img svg,
.p-page.is-show .p-img video {
	transform: scale(1);
}

/*POSTER SIGN--------------*/
.p-page.title:has(.p-poster) {
	height: 100dvh;
}

.p-poster {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr;
	grid-template-rows: 1fr;
	place-items: center;
}

.p-poster > * {
	width: 100%;
	height: 40dvh;
	grid-column: 1;
	grid-row: 1;
	object-fit: contain;
}

.p-poster > img:first-of-type {
	opacity: .4;
}

.p-poster > img:last-of-type {
	animation: 1.5s ease-in-out 0s infinite alternate partsign;
}

@keyframes partsign {
	from {
		transform: translateY(-40px);
	}

	to {
		transform: translateY(-20px);
	}
}

/*TITLE PAGE--------------*/
.p-page.title {
	align-items: center;
	justify-content: center;
	gap: 2em;
	position: relative;
	overflow: visible;
}

@keyframes downsign {
	from {
		transform: translateY(0.25em);
	}

	to {
		transform: translateY(-0.25em);
	}
}

.p-page.title h1 {
	transition: opacity 0.8s ease, transform 1s ease;
}

.p-page.title h1 {
	transform: translateY(-0.5em);
}

.p-page.title h2,
.p-page.title h3 {
	transform: translateY(0.5em);
}

.p-page.title h2 + h3 {
	transform: translateY(-1em);
}

.p-page.title.is-show h1,
.p-page.title.is-show h2,
.p-page.title.is-show h3,
.p-page.title:has(+.p-page.is-show) h1,
.p-page.title:has(+.p-page.is-show) h2,
.p-page.title:has(+.p-page.is-show) h3 {
	transform: translateY(0);
	opacity: 1;
}

.p-page.title h1 + h2,
.p-page.title h2 + h3 {
	position: relative;
}

.p-page.title h1 + h2::before,
.p-page.title h2 + h3::before {
	content: '';
	width: 2em;
	height: 2px;
	position: absolute;
	top: calc(-1em + 2px);
	left: calc(50% - 1em);
	background-color: var(--tcolor-w);
	border-radius: 2em;
	transition: transform 0.5s ease;
	transition-delay: 0.5s;
	transform: scaleX(0);
	opacity: 0;
}

.p-page.title.is-show h1 + h2::before,
.p-page.title.is-show h2 + h3::before,
.p-page.title:has(+.p-page.is-show) h1 + h2::before,
.p-page.title:has(+.p-page.is-show) h2 + h3::before {
	transform: scaleX(1);
	opacity: 1;
}

#partA .p-page.simple h1 + h2::before,
#partA .p-page.simple h2 + h3::before {
	display: none;
}

/*--------------------*/
/*PAGE LAYOUT*/
/*--------------------*/

/*ROW--------------*/
.p-page.row {
	justify-content: center;
	align-items: center;
}

.p-page.row .p-img {
	width: 100%;
	margin-top: 2em;
}

.p-page.row .p-img img,
.p-page.row .p-img svg,
.p-page.row .p-img video {
	width: fit-content;
	height: var(--img-min-w);
	object-fit: contain;
}

/*COLUMN--------------*/
.p-page.column,
.p-page.half {
	flex-direction: row;
	align-items: center;
	justify-content: center;
	gap: 24px;
}

.p-page.column .p-text,
.p-page.half .p-text {
	max-width: var(--text-def-w);
	flex: 1.6;
}

.p-page.column .p-img,
.p-page.half .p-img {
	max-width: var(--img-def-w);
	flex: 1;
	overflow: hidden;
}

.p-page.column .p-img a,
.p-page.half .p-img a {
	width: 100%;
	height: 100%;
}

.p-page.column .p-img img,
.p-page.column .p-img svg,
.p-page.half .p-img img,
.p-page.half .p-img svg {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/*HALF--------------*/
.p-page.half {
	padding-right: var(--aside-w);
}

.p-page.half .p-img {
	max-width: 50%;
	flex: 1.6;
}

/*SIMPLE--------------*/
.p-page.simple {}

/*FULL--------------*/
.p-page.full {
	width: 100%;
	height: 100dvh;
	display: grid;
	position: relative;
}

.p-page.full .p-text {
	width: max-content;
	max-width: var(--text-def-w);
	align-self: center;
	z-index: 1;
	text-shadow: 0px 0px 8px black;
}

.p-page.full .p-img figcaption {
	position: absolute;
	right: calc(var(--aside-w) + 2em);
	bottom: calc(var(--pad-def) * 2);
	margin: 0 1em;
	z-index: 1;
}

.p-page.full .p-img {
	width: 100%;
	max-width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	display: flex;
	place-items: center;
	overflow: hidden;
}

.p-page.full .p-img img,
.p-page.full .p-img svg,
.p-page.full .p-img video {
	width: 100dvw;
	height: 100dvh;
	object-fit: cover;
}

/*with link*/
.p-page.full.withlink .p-img figcaption {
	padding: 0.5em 2em 0.5em 1em;
	border-radius: var(--icon-r);
	border: 1px solid var(--lcolor-w);
	cursor: pointer;
	margin: 0;
}

.p-page.full.withlink.video .p-img figcaption {
	background-color: rgba(0, 0, 0, .3);
}

/*SUMMERY--------------*/
.p-page.more .p-img,
.p-page.sum .p-img {
	--img-w: var(--img-min-w);
	width: 100%;
	gap: 16px;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(var(--img-w), 1fr));
}

.p-page.more .p-img figure > *,
.p-page.sum .p-img figure > * {
	display: block;
}

.p-page.more .p-img a:has(img),
.p-page.sum .p-img a:has(img) {
	min-width: 100%;
}

.p-page.more .p-img figure img,
.p-page.sum .p-img figure img {
	width: 100%;
	height: auto;
	max-height: none;
	aspect-ratio: 4/3;
	object-fit: cover;
	object-position: bottom;
	display: block;
	background-color: black;
}

/*--------------------*/
/*RELATIVE PART*/
/*--------------------*/
.rel {
	min-height: auto;
	padding-top: calc(var(--pad-def) * 0.25);
}

.rel:has(+.more) {
	padding-bottom: calc(var(--pad-def) * 0.25);
}

.p-popwrap .rel {
	padding: 1em 0;
}

.p-popwrap .rel p[data-action] {}

.rel > * {
	margin-left: auto;
}

.rel p {
	width: fit-content;
}

.rel p[data-action]::before {
	content: '# ';
}

.rel p[data-action] {
	border: 1px solid var(--lcolor-w);
	padding: 0.5em 1em;
}

.p-contents .i-close:active,
.rel p[data-action]:active,
.p-page.full.withlink .p-img figcaption:active {
	background-color: var(--hcolor-k);
}

/*--------------------*/
/*READ DETAIL*/
/*--------------------*/
.p-page.more {
	--gap: 36px;
	min-height: auto;
	align-items: center;
	gap: var(--gap);
	padding: var(--pad-def) var(--pad-side);
	position: relative;
	transition: 0.5s;
}

/*border*/
.p-page.more::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 90%;
	max-width: calc(var(--text-max-w) + var(--pad-side) * 2);
	height: calc(100% - var(--pad-def));
	transform: translate(-50%, -50%);
	border: 1px solid var(--lcolor-w);
	pointer-events: none;
	opacity: 0;
}

/*title*/
.p-page.more .more-tit {
	width: 100%;
	font-size: var(--fs-s);
	font-weight: bold;
	display: inline-flex;
	align-items: center;
}

.p-page.more .more-tit:has(~.p-text) {
	width: auto;
}

.p-page.more .more-tit:has(+.que) {
	margin-top: 2em;
	margin-bottom: -1.5em;
}

.more-tit .aibtn {
	font-size: var(--fs-xs);
	vertical-align: middle;
	border-radius: var(--icon-r);
	background-color: var(--tcolor-w);
	color: var(--tcolor-k);
	padding: 0.25em 0.75em;
	margin-left: 1em;
}

/*button*/
.p-page.more > .i-more {
	order: 3;
	padding: 1em;
	min-width: var(--btn-w);
	margin: 0 auto;
}

.p-page.more > .i-more span {
	justify-content: center;
}

.p-page.more > .i-more span::before {
	display: none;
}

.p-page.more > .i-more span:after {
	content: '';
	width: 1rem;
	height: 1rem;
	margin-left: 0.25rem;
	background: center right/100% url(/source/icons/icon-more.svg) no-repeat;
}

.p-page.more > .i-more span:last-of-type {
	font-size: 0;
}

.p-page.more > .i-more span:last-of-type::after {
	margin-left: 0;
	background-image: url(/source/icons/icon-close.svg);
}

.p-page.more > .i-more:not(:has(input:checked)) span:last-of-type {
	display: none;
}

.p-page.more > .i-more:has(input:checked) span:first-of-type {
	position: absolute;
	top: var(--pad-def);
	left: 50dvw;
	transform: translateX(-50%);
	pointer-events: none;
	user-select: text;
}

.p-page.more > .i-more:has(input:checked) span:first-of-type,
.p-page.more > .i-more:not(:has(input:checked)) span:last-of-type,
.p-section:has(.p-page.more > .i-more input:checked) + .p-section::before {
	display: none;
}

/*--------------------*/
/*QUESTIONS*/
/*--------------------*/
.p-page .que {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5em 1em;
}

.textlink,
.p-page .que li a {
	text-decoration: underline;
	text-underline-offset: 0.25em;
}

.p-page.more > *:not(.i-more) {
	max-width: var(--text-max-w);
}

.p-page.more:not(:has(.i-more input:checked)) {
	gap: 0;
	padding-top: calc(var(--pad-def) * 0.5);
}

.p-page.more .i-more:has(input:checked) {
	margin-top: 32px;
	min-width: 0;
}

.p-page.more:has(.i-more input:checked) {
	padding-top: calc(var(--pad-def) * 1.5);
}

.p-page.more:has(.i-more input:checked)::after {
	opacity: 1;
}

.p-page.more:not(:has(.i-more input:checked)) > *:not(.i-more) {
	opacity: 0;
	display: none;
}

/*--------------------*/
/*Z PART*/
/*--------------------*/
#reader:has(.p-popwrap.is-active) .p-scroll,
#reader:has(#partZ.is-active) #openPart,
#reader:has(#partL.is-active) .p-btn .i-close {
	display: none;
}

.p-popwrap {
	width: 100dvw;
	min-height: 100%;
	display: none;
}

.p-popwrap > * {
	min-height: 100%;
	min-width: 100%;
	display: none;
	position: absolute;
	visibility: hidden;
	pointer-events: none;
	align-items: center;
	justify-content: center;
}

.p-popwrap > .is-show {
	visibility: visible;
	pointer-events: auto;
}

.p-popwrap > .p-page.is-show {
	display: flex;
}

.p-popwrap > .p-section.is-show {
	display: block;
}

.p-popwrap > .p-page {
	opacity: 1;
}

.p-popwrap .p-section .p-page.title {
	min-height: 100dvh;
}

.p-popwrap > .p-page h2 {
	font-size: var(--fs-l);
	margin-bottom: 16px;
	text-align: left;
}

.p-popwrap > .p-page .p-text {
	max-width: var(--text-def-w);
}

.p-popwrap > .p-page .p-img {
	overflow: hidden;
}

.p-popwrap > .p-page .p-img img {
	object-fit: contain !important;
}

/*--------------------*/
/*SPECIAL*/
/*--------------------*/
.p-page[data-p="A-06_1"] .p-img {
	justify-content: center;
}

.p-page[data-p="A-06_1"] .p-img img {
	height: 70dvh;
	width: 70dvw;
	object-fit: contain;
}

#partA .p-page.simple h2 {
	font-size: var(--fs-xs);
	background-color: var(--color-key);
	padding: 0.5em 0.8em;
	border-radius: 0.5em;
}

#partA .p-page h3 {
	font-size: var(--fs-xl);
}

#partA .p-page.title:has(h2 + h3)::before {
	display: none;
}

.p-page[data-p="B-06_2"] {
	--exh: min(58vw, 48em);
	min-height: auto;
	grid-template-columns: 1fr auto 1fr;
	overflow: visible;
	padding-bottom: var(--exh);
}

.p-page[data-p="B-06_2"] .p-text {
	grid-column: 2/3;
	width: 80vw;
	max-width: 50em;
}

.p-page[data-p="B-06_2"] .p-img {
	height: auto;
	top: auto;
	bottom: 0;
}

.p-page[data-p="B-06_2"] .p-img img {
	object-fit: contain;
	height: auto;
	min-height: auto;
}

.p-section[data-p="B-06"] ~ .i-close {
	margin-top: 0 !important;
}


.p-page[data-p="B-06_2"] .p-img figcaption {
	bottom: calc(var(--exh) * 0.5 - 2em);
}

.p-page[data-p="C-02_2"] .p-img img {
	height: 200px;
}

.p-section[data-p*="C-04"] ~ .p-section .p-img figcaption {
	display: none;
}

.p-img figure:has(img[src*="D-05-03"]) {
	display: grid;
	gap: 0;
	grid-template-columns: repeat(2, 1fr);
}

.p-img figure:has(img[src*="D-05-03"]) img {
	width: 50%;
}

.p-img figure:has(img[src*="D-05-03"]) figcaption {
	grid-column: 1/-1;
	text-align: center;
}

.p-popwrap .p-page[data-p="Z-07"] {
	justify-content: flex-end;
	gap: 1em;
	padding-bottom: calc(var(--pad-def)*0.5);
}

.p-page[data-p="Z-07"] .p-img {
	display: block;
	height: auto;
	position: relative;
}

.p-page[data-p="Z-07"] .p-img img {
	width: 100%;
	height: calc(100dvh - 15em);
	object-fit: cover !important;
	object-position: bottom;
	position: fixed;
	left: 0;
	top: 0;
}

.p-page[data-p="Z-07"] .p-text {
	max-width: var(--text-max-w);
}

.p-page[data-p="Z-07"] .p-img figure {
	width: var(--btn-w);
	margin: auto;
	border-radius: var(--icon-r);
}

.p-page[data-p="Z-07"] .p-img figure:has(figcaption:active) {
	background-color: var(--hcolor-k);
}

.p-page[data-p="Z-07"] .p-img figcaption {
	display: inline-flex;
	position: sticky;
	padding: 1em 2em 1em 1em !important;
	border: none !important;
}

.p-page[data-p="Z-07"] .p-img figcaption::before {
	content: '';
	position: absolute;
	top: 0;
	left: calc(50% - var(--btn-w) * 0.5);
	width: var(--btn-w);
	height: calc(100% - 2px);
	border: 1px solid var(--lcolor-w);
	border-radius: var(--icon-r);
}

@media (hover: hover) {

	.p-contents .i-close:hover,
	.rel p[data-action]:hover,
	.p-page.full.withlink .p-img figcaption:hover,
	.p-page[data-p="Z-07"] .p-img figure:has(figcaption:hover) {
		background-color: var(--hcolor-k);
	}

}

@media only screen and (max-width: 768px) {
	:root {
		--pad-side: 6vw;
		--aside-w: 6vw;
	}

	.p-page .p-btn {
		flex-direction: column;
	}

	#reader > .p-btn {
		column-gap: 0.75em;
	}

	#reader .p-btn .i-close {
		padding-right: 1.5em;
	}

	#reader .p-wrap .i-close {
		width: calc(100% - var(--pad-side) * 2);
		margin-top: 20vh;
	}

	#reader .p-btn .i-close span,
	#openPart span {
		display: none;
	}

	#openPart {
		padding-right: 1.5em;
	}

	.p-list {
		--p: 5px;
		left: 0;
	}

	.p-list > li {
		width: var(--p);
		height: var(--p);
		opacity: .6;
		background-color: white;
		border-radius: 8px;
	}

	.p-list > li:not(:empty) {
		opacity: .6;
	}

	.p-list > li.is-show {
		width: calc(var(--p)*0.8);
		height: calc(var(--p)*3);
		opacity: 1;
	}

	.p-list > li img,
	.p-list > li:not(:empty):not(:last-of-type)::after,
	.p-list > li:not(:empty).is-show::after {
		display: none;
	}

	.p-page {
		padding: var(--scorll-b) var(--pad-side);
	}

	.p-popwrap .p-page {
		padding-top: 33vw;
		min-height: 100% !important;
	}

	.p-popwrap .p-page.column > * {
		flex: none;
	}

	.p-page:not(.more),
	.p-page:has(+.rel):not(.full),
	.p-page:has(+.more):not(.full):not(.rel) {
		min-height: auto;
	}

	.p-page.more:not(:has(.i-more input:checked)) {
		padding-top: var(--pad-def);
	}

	.p-page.rel {
		min-height: auto;
		padding: var(--pad-def) var(--pad-side);
	}

	.p-poster > * {
		width: 95%;
		height: auto;
	}

	.p-page:nth-of-type(odd) {
		/*		background-color: gray;*/
	}

	.p-page h1,
	.p-page h2,
	.p-page h3 {
		max-width: 100%;
		word-break: normal;
		overflow-wrap: break-word;
		text-wrap: pretty;
	}

	.p-page h2,
	.p-page h3 {
		align-self: flex-start;
		text-align: left;
	}

	.p-page h2 br,
	.p-page h3 br {
		display: none;
	}

	#partA .p-page.simple h2 {
		margin-bottom: -2em;
	}

	.p-page.title h1 + h2::before,
	.p-page.title h2 + h3::before {
		width: 1.5em;
		top: calc(-1em + 1px);
		left: 0.25em;
		transform-origin: left;
	}

	.p-page.title:has(.p-poster) {
		min-height: 100svh;
	}

	.p-page.title:not(:has(.p-poster)) {
		text-align: left;
		justify-content: flex-end;
	}

	.p-page.title:not(:has(.p-poster)):has(+ .p-page) {
		padding-bottom: 0;
	}

	.p-page.title:not(:has(.p-poster)):has(+ .p-page.full) {
		padding-bottom: 2em;
	}

	.p-page.title:not(:has(.p-poster)) + .p-page {
		padding-top: 1.5em;
	}

	.p-page.row .p-img img,
	.p-page.row .p-img svg,
	.p-page.row .p-img a,
	.p-page.row .p-img a,
	.p-page.row .p-img video {
		width: 100%;
		height: auto;
	}

	.p-page.column,
	.p-page.half {
		flex-direction: column;
	}

	.p-page.column .p-img,
	.p-page.half .p-img {
		max-width: 100%;
	}

	.p-page.half .p-img {
		width: 100%;
	}

	.p-popwrap > .p-page .p-text,
	.p-page.full .p-text {
		width: 100%;
		max-width: 100%;
	}

	.p-page .p-img figcaption {
		text-align: center;
	}

	.p-page.full:not(.withlink) .p-img figcaption {
		max-width: calc(100% - var(--pad-side) * 2);
		right: auto;
		left: var(--pad-side);
		text-align: left;
	}

	.p-page .p-img figcaption br {
		display: none;
	}

	.p-page.sum .p-img {
		margin-top: 1em;
		grid-template-columns: repeat(auto-fill, minmax(100%, 1fr));
	}

	.p-page.sum .p-img figure {
		justify-content: center;
		width: 100%;
	}

	.p-page.sum .p-img figure img {
		max-height: 100%;
		width: 100%;
		max-width: 100%;
	}

	.p-page.sum .p-img figure figcaption {
		text-align: center;
	}

	.p-page.more {
		font-size: var(--fs-m);
		gap: 24px;
	}

	.p-page.more .p-img {
		gap: 2em;
	}

	.p-page.more .p-img figure img {
		aspect-ratio: unset;
		object-position: center;
	}

	.p-page.more::after {
		width: 85%;
	}

	.p-page.more > * {
		width: 90% !important;
	}

	.p-page.more > .i-more {
		min-width: 85%;
	}

	.p-page[data-p="A-06_1"] {
		height: auto;
	}

	.p-page[data-p="A-06_1"] .p-img {
		position: relative;
	}

	.p-page[data-p="A-06_1"] .p-img figure,
	.p-page[data-p="A-06_1"] .p-img img {
		height: auto;
		min-width: 100%;
	}

	.p-page[data-p="A-06_1"] .p-img figcaption {
		position: relative;
		right: 0;
		top: 0;
		align-self: flex-end;
	}

	.p-page[data-p="B-06_2"] .p-img figcaption {
		bottom: 10%;
	}

	.p-page[data-p*="E-04"] .p-img {
		min-width: 100%;
		background-color: gray;
	}

	.p-page[data-p="Z-07"] .p-img img {
		height: 60svh;
	}
}
