/* AITAID テーマ：固定ページ（情報公開・個人情報の取り扱い・お問い合わせ・About）の本文 */
.page-main { max-width: 860px; margin: 0 auto; padding: 72px 28px 0; }
.page-head { text-align: center; }
.page-label { font-family: "Quicksand", sans-serif; font-size: 14px; color: var(--red); letter-spacing: .12em; }
.page-title { margin-top: 6px; font-size: clamp(24px, 3vw, 32px); font-weight: 700; letter-spacing: .08em; line-height: 1.5; }

.page-body { margin-top: 48px; font-size: 15px; line-height: 1.95; letter-spacing: .03em; }
.page-body > * + * { margin-top: 16px; }
.page-body a { color: var(--red); font-weight: 700; }
.page-body a:hover { text-decoration: underline; }
.page-body h2 { margin-top: 64px; font-size: 20px; letter-spacing: .08em; scroll-margin-top: 24px; }
.page-body h2::before { content: ""; display: inline-block; width: 10px; height: 10px; border-radius: 50%; background: var(--red); margin-right: 10px; vertical-align: .15em; }
.page-body h3 { margin-top: 36px; font-size: 17px; letter-spacing: .06em; color: var(--red); }
.page-body ol, .page-body ul { padding-left: 1.6em; }
.page-body li + li { margin-top: 8px; }
.page-body .body p + p { margin-top: 10px; }
.page-body ul.plain, .page-body .sub { list-style: none; padding-left: 1em; }
.page-body dl { border: 3px solid var(--red); border-radius: 12px; overflow: hidden; }
.page-body dl > div { display: grid; grid-template-columns: 240px 1fr; padding: 16px 24px; font-size: 14px; }
.page-body dl > div:nth-child(odd) { background: #F8EEEE; }
.page-body dt { font-weight: 700; color: var(--red); }
.page-body .date { margin-top: 48px; text-align: right; font-size: 14px; }
.page-body .toc { display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.page-body .toc a { font-size: 13px; padding: 4px 14px; border-radius: 14px; background: #F3DCDB; text-decoration: none; }
.page-body .lead { font-size: 16px; text-align: center; }
.page-body .post-list { list-style: none; padding: 0; }
.page-body .post-list li { display: flex; justify-content: space-between; gap: 16px; padding: 12px 0; border-bottom: 1px solid #F0E3E3; }

/* About（MVV） */
.page-body .mvv-head { margin-top: 56px; text-align: center; font-family: "Quicksand", sans-serif; font-size: 14px; color: var(--red); letter-spacing: .1em; }
.page-body .mvv-copy { margin-top: 6px; text-align: center; font-size: clamp(22px, 2.6vw, 28px); font-weight: 700; line-height: 1.6; letter-spacing: .06em; }
.page-body .mvv-copy mark { background: linear-gradient(transparent 60%, rgba(172, 58, 57, .2) 60%); color: inherit; }
.page-body .values { list-style: none; padding: 0; border: 3px solid var(--red); border-radius: 12px; overflow: hidden; }
.page-body .values li { margin: 0; display: grid; grid-template-columns: 52px 220px 1fr; align-items: center; padding: 16px 24px; }
.page-body .values li:nth-child(odd) { background: #F8EEEE; }
.page-body .values .n { font-family: "Quicksand", sans-serif; font-size: 18px; color: var(--red); }
.page-body .values b { font-size: 16px; }
.page-body .values .d { font-size: 14px; color: #555; }

/* お問い合わせフォーム（Contact Form 7） */
.page-body .wpcf7 { margin-top: 32px; background: #F8EEEE; border-radius: 14px; padding: 36px 32px; }
.page-body .wpcf7 label { display: block; font-weight: 700; font-size: 14px; }
.page-body .wpcf7 p + p { margin-top: 20px; }
.page-body .wpcf7 input[type="text"], .page-body .wpcf7 input[type="email"], .page-body .wpcf7 input[type="tel"], .page-body .wpcf7 textarea {
	display: block; width: 100%; margin-top: 8px; padding: 12px 14px; font: inherit; font-weight: 400;
	border: 2px solid #E3CFCF; border-radius: 8px; background: #fff; color: var(--ink);
}
.page-body .wpcf7 input:focus, .page-body .wpcf7 textarea:focus { outline: none; border-color: var(--red); }
.page-body .wpcf7 textarea { min-height: 180px; }
.page-body .wpcf7 input[type="submit"] {
	display: block; margin: 8px auto 0; padding: 14px 48px; border: 0; border-radius: 999px;
	background: var(--red); color: #fff; font: inherit; font-weight: 700; letter-spacing: .1em; cursor: pointer;
}
.page-body .wpcf7 input[type="submit"]:hover { opacity: .88; }

.back { display: block; width: max-content; margin: 64px auto 0; color: var(--red); font-weight: 700; font-size: 14px; letter-spacing: .06em; }
.back:hover { text-decoration: underline; }

@media (max-width: 700px) {
	.page-main { padding-top: 48px; }
	.page-body dl > div { grid-template-columns: 1fr; padding: 14px 18px; }
	.page-body .values li { grid-template-columns: 40px 1fr; padding: 14px 16px; }
	.page-body .values .d { grid-column: 2; }
	.page-body .wpcf7 { padding: 28px 20px; }
}

/* ===== AITAIDについて（About）===== */
.page-body .about-lead { text-align: center; font-size: 17px; font-weight: 700; line-height: 2; letter-spacing: .06em; }
.page-body .mvv-row { margin-top: 72px; display: grid; grid-template-columns: 1fr 1.15fr; gap: 48px; align-items: center; }
.page-body .mvv-row.rev .mvv-pic { order: 2; }
.page-body .mvv-pic { margin: 0; aspect-ratio: 1; border-radius: 50%; background: #F3DCDB; display: flex; align-items: flex-end; justify-content: center; overflow: hidden; }
.page-body .mvv-pic img { display: block; height: 86%; width: auto; max-width: none; }
.page-body .mvv-pic.photo { border-radius: 14px; aspect-ratio: 4 / 3; align-items: stretch; }
.page-body .mvv-pic.photo img { width: 100%; height: 100%; object-fit: cover; }
.page-body .mvv-text > * + * { margin-top: 14px; }
.page-body .mvv-row .mvv-head, .page-body .mvv-row .mvv-copy { text-align: left; margin-top: 0; }
.page-body .mvv-row .mvv-copy { margin-top: 6px; }

.page-body .values-block { margin-top: 88px; background: var(--red); border-radius: 14px; padding: 48px 40px 40px; color: #fff; }
.page-body .values-block .mvv-head { margin-top: 0; color: #fff; opacity: .8; }
.page-body .values-block .mvv-copy { color: #fff; }
.page-body .values-block .values { margin-top: 28px; background: #fff; color: var(--ink); border: 0; }

.page-body .axes { margin-top: 88px; }
.page-body .axes-grid { margin-top: 28px; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.page-body .axis-box { border-radius: 14px; padding: 28px 28px 24px; }
.page-body .axis-box.b { background: #F3DCDB; }
.page-body .axis-box.p { background: var(--red); color: #fff; }
.page-body .axis-box h3 { margin-top: 0; color: inherit; font-size: 19px; }
.page-body .axis-box.b h3 { color: var(--red); }
.page-body .axis-box ul { margin-top: 12px; padding-left: 1.2em; font-size: 14px; }
.page-body .axis-box p { margin-top: 10px; font-size: 13px; opacity: .85; }

.page-body .about-links { margin-top: 64px; display: flex; flex-wrap: wrap; gap: 14px; justify-content: center; }
.page-body .about-links a { display: inline-block; padding: 14px 28px; border-radius: 999px; background: var(--red); color: #fff; text-decoration: none; letter-spacing: .06em; }
.page-body .about-links a.ghost { background: #fff; color: var(--red); border: 2px solid var(--red); }
.page-body .about-links a:hover { opacity: .88; text-decoration: none; }

@media (max-width: 700px) {
	.page-body .mvv-row { grid-template-columns: 1fr; gap: 24px; margin-top: 56px; }
	.page-body .mvv-row.rev .mvv-pic { order: 0; }
	.page-body .mvv-pic { width: 72%; margin: 0 auto; }
	.page-body .mvv-pic.photo { width: 100%; }
	.page-body .values-block { padding: 36px 16px 20px; }
	.page-body .axes-grid { grid-template-columns: 1fr; }
}
