/* 見本ページ（Japan-Fit Review）の本文スタイル */
.doc { max-width: 46rem; margin: 0 auto; padding: 4rem 1.5rem 5rem; }
.doc .kicker { font-size: .78rem; letter-spacing: .14em; text-transform: uppercase; color: var(--shu); font-family: system-ui, sans-serif; }
.doc h1 { font-size: clamp(1.9rem, 4vw, 2.6rem); line-height: 1.25; margin: .8rem 0 1.6rem; }
.doc h2 { font-size: 1.35rem; line-height: 1.35; margin: 3.4rem 0 1rem; padding-top: 1.6rem; border-top: 1px solid var(--line); }
.doc h3 { font-size: 1.08rem; line-height: 1.45; margin: 2.4rem 0 .8rem; }
.doc h4 { font-size: .98rem; margin: 1.8rem 0 .6rem; }
.doc p { line-height: 1.85; margin: 0 0 1.25rem; }
.doc ul, .doc ol { line-height: 1.85; margin: 0 0 1.4rem; padding-left: 1.3rem; }
.doc li { margin: 0 0 .55rem; }
.doc blockquote { margin: 1.8rem 0; padding: 1.1rem 1.4rem; background: var(--card); border-left: 2px solid var(--shu); box-shadow: var(--shadow); }
.doc blockquote p { margin: 0; font-size: .95rem; color: var(--ink-soft); }
.doc hr { border: 0; border-top: 1px solid var(--line); margin: 2.6rem 0; }
.doc a { color: var(--ink); text-decoration: underline; text-decoration-color: var(--shu); text-underline-offset: .18em; }
.doc a:hover { color: var(--shu); }
.doc code { font-size: .88em; background: var(--paper-2); padding: .1em .35em; border-radius: 3px; }
.doc strong { font-weight: 650; }
.table-scroll { overflow-x: auto; margin: 1.6rem 0; }
.doc table { border-collapse: collapse; width: 100%; font-size: .9rem; }
.doc th, .doc td { text-align: left; vertical-align: top; padding: .6rem .8rem; border-bottom: 1px solid var(--line); }
.doc th { font-size: .78rem; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-soft); }
.doc-hero { padding: 3rem 0 0; }
.doc-hero img { display: block; width: 100%; max-width: 46rem; margin: 0 auto; height: auto; border: 1px solid var(--line); box-shadow: var(--shadow); }
@media (max-width: 640px) { .doc { padding: 2.6rem 1.15rem 3.5rem; } }
