/* 固定ページ（このサイトについて・プライバシーポリシー・お問い合わせ） */
.page{max-width:820px;margin:0 auto;padding:24px 20px 80px}
.page .breadcrumbs{font-size:12px;color:var(--muted);margin-bottom:14px}
.page h1{font-size:28px;margin:6px 0 10px;line-height:1.3}
.page .lead{color:#53635c;margin:0 0 22px}
.page-card{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;box-shadow:0 6px 18px rgba(28,64,48,.05)}
.page h2{font-size:18px;margin:30px 0 10px;padding-left:12px;border-left:4px solid var(--green);line-height:1.4}
.page-card > h2:first-child{margin-top:0}
.page p{margin:0 0 12px}
.page ul,.page ol{margin:0 0 14px;padding-left:1.4em}
.page li{margin-bottom:6px}
.page a:not(.btn){color:var(--green-dark);text-decoration:underline;text-underline-offset:3px}
.page dl.kv{display:grid;grid-template-columns:9em 1fr;gap:8px 14px;margin:0 0 14px}
.page dl.kv dt{font-weight:800}.page dl.kv dd{margin:0}
.page .date{font-size:12px;color:var(--muted);margin-top:24px}
.page-links{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:22px;font-size:13px}

/* お問い合わせフォーム */
.contact-form{display:grid;gap:16px;margin-top:16px}
.form-row label{display:block;font-weight:800;font-size:14px;margin-bottom:6px}
.form-row .req{display:inline-block;margin-left:8px;padding:1px 7px;border-radius:6px;background:#e5566d;color:#fff;font-size:11px;font-weight:800;vertical-align:1px}
.form-row input,.form-row select,.form-row textarea{width:100%;border:1px solid #cfdad3;border-radius:12px;padding:12px 14px;background:#fff;color:var(--ink);font:inherit}
.form-row textarea{min-height:180px;resize:vertical}
.form-row input:focus,.form-row select:focus,.form-row textarea:focus{outline:0;border-color:var(--green);box-shadow:0 0 0 3px rgba(47,143,91,.12)}
.hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-submit-btn{height:52px;border:0;border-radius:14px;background:var(--green);color:#fff;font-weight:900;font-size:15px}
.form-submit-btn:disabled{background:#a9c7b6;cursor:not-allowed}
.form-status{margin:0;font-size:14px;min-height:1.4em}
.form-status.ok{color:var(--green-dark);font-weight:800}
.form-status.err{color:#c0392b;font-weight:800}
@media(max-width:620px){.page{padding:16px 14px 70px}.page h1{font-size:23px}.page-card{padding:18px}.page dl.kv{grid-template-columns:1fr;gap:2px}.page dl.kv dd{margin-bottom:8px}}
