/* v8 スマホ（〜1099px）：同じ思想を一列で。15px未満は作らない */
body{font-size:17px;line-height:2}
.wm-reader{padding:0}
.wm2-layout-single,.wm2-layout-main,.wm2-sheet,.wm2-sheet__pad,.wm2-stage{padding:0;margin:0}

/* 扉：写真の下から紙へ溶け、題名を重ねる */
.wm2-hero{position:relative;min-height:88vh;display:grid;grid-template-rows:1fr auto;align-items:end;isolation:isolate}
.wm2-hero__media{position:absolute;inset:0;z-index:-1}
.wm2-hero__media img{width:100%;height:100%;object-fit:cover;object-position:center 25%}
.wm2-hero__body{padding:200px 20px 22px;background:linear-gradient(to top,var(--paper) 0,rgba(243,234,214,.96) 30%,rgba(243,234,214,.55) 58%,transparent 100%)}
.wm2-hero h1{font-size:33px;line-height:1.38;word-break:auto-phrase;text-wrap:balance}
.wm2-hero h1::after{content:"";display:block;width:48px;height:1px;background:var(--gold);margin:20px 0 16px}
.wm2-hero__hook{font-size:18px;line-height:1.85;color:var(--ink-2)}
.wm2-hero__credit{padding:0 20px 18px;font-size:15px;color:var(--ink-3);background:var(--paper)}

/* 概要 */
.wm2-dossier{margin:36px 20px 0;padding:0 0 36px;border-bottom:1px solid var(--ink)}
.wm2-dossier__title{font-size:15px;margin:26px 0 12px}
.wm2-dossier__summary .wm2-dossier__title{margin-top:0}
.wm2-dossier__summary p:not(.wm2-dossier__title){font-size:18px;line-height:1.95}
.wm2-dossier__mystery{list-style:none;padding:0;counter-reset:q}
.wm2-dossier__mystery li{counter-increment:q;position:relative;padding:12px 0 12px 40px;border-top:1px solid var(--hair);font-size:17px;line-height:1.7}
.wm2-dossier__mystery li::before{content:counter(q,upper-roman);position:absolute;left:0;top:11px;font-family:var(--serif);font-size:18px;color:var(--gold)}
.wm2-dossier__facts dl{display:grid;grid-template-columns:4.5em 1fr;gap:0 14px;font:15px/1.7 var(--sans);margin-top:8px}
.wm2-dossier__facts dt{color:var(--ink-3);padding:8px 0;border-top:1px solid var(--hair)}
.wm2-dossier__facts dd{padding:8px 0;border-top:1px solid var(--hair)}

/* 目次：たたむ */
.wm2-chapters{margin-top:22px;border-top:1px solid var(--hair)}
.wm2-chapters summary{padding:14px 0;font-size:15px;letter-spacing:.2em}
.wm2-chapters summary::after{content:"＋";float:right;color:var(--gold)}
.wm2-chapters details[open] summary::after{content:"－"}
.wm2-chapters li{margin:0}
.wm2-chapters a{display:block;padding:10px 0;font:400 15px/1.6 var(--sans);border-top:1px solid var(--hair)}

/* 章 */
.wm2-section-frame{margin:0 20px;padding:56px 0 8px;border:0}
.wm2-head{margin-bottom:26px}
.wm2-section-frame>.wm2-head::before{font-size:44px;margin-bottom:10px}
.wm2-head h2{font-size:27px;line-height:1.45;word-break:auto-phrase}
.wm2-section-frame>.wm2-head h2::after{margin-top:16px}
.wm2-head__lead{margin-top:14px;font-size:17px;color:var(--ink-2)}
.wm2-prose p{margin-bottom:1.3em}

/* 図版 */
.wm2-figure{margin:32px 0}.wm2-section-frame>.wm2-figure{margin:32px -20px}
.wm2-figure img{width:100%;max-height:72vh;object-fit:cover}
.wm2-figure figcaption{padding:10px 20px 0;font-size:15px;line-height:1.7}
.wm2-figure--bleed{margin:40px 0}.wm2-figure--bleed figcaption{padding:10px 20px 0}

/* 囲み */
.wm2-theories,.wm2-question,.wm2-callout,.wm2-note,.wm2-panel--dark,.wm2-conflict,.wm2-document,.wm2-location{margin:40px 0;padding:24px 0}
.wm2-theory-card{padding:20px 0}
.wm2-theory-card>h3::before{font-size:18px}
.wm2-theory-card h3{font-size:22px;line-height:1.45;margin-bottom:12px}
.wm2-theory-card__can>span,.wm2-theory-card__cannot>span{display:block;font-size:15px;margin:12px 0 4px}
.wm2-theory-card p{font-size:16px;line-height:1.85;color:var(--ink-2)}
.wm2-question .wm2-head h2,.wm2-callout .wm2-head h2,.wm2-note h2{font-size:24px;margin-bottom:16px}
.wm2-question__item{padding:20px 0}
.wm2-question__num{font-size:32px;margin-bottom:8px}
.wm2-question__item .wm2-title{font-size:19px;line-height:1.6;margin-bottom:10px}
.wm2-question__item p:not(.wm2-title){font-size:16px;line-height:1.85;color:var(--ink-2)}
.wm2-callout p{margin-top:1em}
.wm2-note ul{padding-left:1.1em;margin-top:10px}.wm2-note li{margin:10px 0}

/* 引用 */
.wm2-quote{margin:40px 0;padding:28px 0 0 10px}
.wm2-quote::before{font-size:110px;left:-6px;top:-18px}
.wm2-quote blockquote{font-size:23px;line-height:1.7}
.wm2-quote cite{font-size:15px;margin-top:12px}

/* 対立 */
.wm2-conflict .wm2-title{font-size:15px;margin-bottom:8px}
.wm2-conflict blockquote{font-size:19px;line-height:1.7;padding-left:14px;margin:6px 0 10px}
.wm2-conflict cite{display:block;font:15px var(--sans);color:var(--ink-3);font-style:normal}
.wm2-conflict__vs{margin:18px 0;font-size:15px}
.wm2-conflict__note{margin-top:16px;padding-top:14px;border-top:1px solid var(--hair);font-size:16px;color:var(--ink-2)}

/* 数字 */
.wm2-panel--dark h3{font-family:var(--sans);font-weight:500;font-size:15px;letter-spacing:.16em;color:var(--red);margin-bottom:18px}
.wm2-stats{gap:12px;text-align:left}
.wm2-stat__value{font-size:34px}.wm2-unit{font-size:16px;margin-left:2px}
.wm2-stat__note{display:block;font-size:15px;margin-top:8px}

/* 資料・地図 */
.wm2-document h3{font-size:22px;line-height:1.45;margin-bottom:10px}
.wm2-document__desc{font-size:16px;line-height:1.85;color:var(--ink-2);margin-bottom:16px}
.wm2-document__img>span{display:block;font-size:15px;margin-top:8px}
.wm2-location figcaption{font-size:15px;margin-top:10px}
.wm2-location__notes{margin-top:14px}
.wm2-pin-note{font-size:16px;padding:10px 0;border-top:1px solid var(--hair)}

/* 結び・出典 */
.wm2-coda{margin:64px 0 0}
.wm2-coda>img{height:60vh;-webkit-mask-image:linear-gradient(to bottom,#000 60%,transparent 100%);mask-image:linear-gradient(to bottom,#000 60%,transparent 100%)}
.wm2-coda__body{margin:-40px 20px 0;padding:0 0 56px}
.wm2-coda__body p{font-size:20px;line-height:2;margin-bottom:1em}
.wm2-coda__credit{font-size:15px;margin-top:18px}
.wm2-endmatter{margin:0 20px;padding:32px 0 64px;font-size:15px;line-height:1.8}
.wm2-endmatter>h2{font-size:15px;font-family:var(--sans);letter-spacing:.3em;color:var(--ink-3);margin-bottom:22px}
.wm2-source-group{margin-top:22px}
.wm2-source-group h3{font-size:15px;margin-bottom:8px}
.wm2-source-group ul{list-style:none;padding:0}
.wm2-source-group li{padding:8px 0;border-top:1px solid var(--hair)}
.wm2-archive-credits{margin-top:32px;border-top:1px solid var(--ink);padding-top:14px}
.wm2-archive-credits summary{font-size:15px}
.wm2-archive-credits__grid>div{display:grid;grid-template-columns:72px 1fr;gap:2px 14px;padding:12px 0;border-top:1px solid var(--hair)}
.wm2-archive-credits__grid img{grid-row:span 2;width:72px;height:72px;object-fit:cover}

.wm2-sheet__pad>:is(.wm2-note,.wm2-callout,.wm2-question,.wm2-figure--bleed){margin-left:20px;margin-right:20px}
/* v9 スマホ追加 */
.wm2-hero::before{left:0;top:0;font-size:15px}
.wm2-sheet__pad>:is(.wm2-note,.wm2-callout,.wm2-figure--bleed){margin-left:20px;margin-right:20px}.wm2-sheet__pad>.wm2-question{margin-left:0;margin-right:0;padding:48px 20px}
.wm2-question__num{font-size:44px}
.wm2-figure>.wm2-photo-print::before{inset:10px -8px -10px 8px}

/* 本番の外枠＋全部品（スマホ） */
.post_content .wm-reader{font-size:17px;line-height:2}
.wm2-chapters>p{padding:14px 0}
.wm2-spec,.wm2-timeline,.wm2-margin-note,.wm2-interlude,.wm2-pull,.wm2-photo-pair,.wm2-photo-grid,.wm2-evidence-board,.wm2-person,.wm2-reading,.wm2-editorial-split,.wm2-clock,.wm2-panel:not(.wm2-panel--dark),.wm-site-ad{margin:32px 0}
.wm2-spec{font-size:15px;line-height:1.75}
.wm2-timeline__item{padding:0 0 22px 22px}
.wm2-timeline__time{font-size:24px}
.wm2-timeline__body{font-size:16px;line-height:1.85}
.wm2-timeline__body strong{font-size:18px;color:var(--ink)}
.wm2-margin-note{padding:16px 0;font-size:16px;line-height:1.85}
.wm2-interlude{padding:8px 0;font-size:20px;line-height:1.8}
.wm2-pull{padding:22px 0;font-size:24px;line-height:1.6}
.wm2-photo-pair,.wm2-photo-grid,.wm2-evidence-board,.wm2-person,.wm2-reading,.wm2-editorial-split{grid-template-columns:1fr;gap:24px}
.wm2-photo-break{margin:40px 0}
.wm2-photo-break>img{max-height:64vh}
.wm2-photo-break__body{padding:22px 0 0}
.wm2-photo-break__body h2{font-size:24px;line-height:1.5;margin-bottom:10px}
.wm2-photo-break__body p{font-size:17px;line-height:1.95}
.wm2-photo-break figcaption{padding:10px 0 0;font-size:15px}
:is(.wm2-evidence-board__item,.wm2-reading__item) h3,.wm2-person .wm2-title{font-size:20px;line-height:1.5}
:is(.wm2-evidence-board__item,.wm2-reading__item,.wm2-person__card) p{font-size:16px;line-height:1.85}
.wm2-person__role{font-size:15px}
.wm2-clock,.wm2-panel:not(.wm2-panel--dark){padding:18px 0}
.wm2-clock__tick{padding:12px 0;font-size:16px;line-height:1.8}
.wm2-num{font-size:26px}
.wm2-document__lines li{font-size:16px;line-height:1.8}
.wm-site-ad{padding:20px 0}
.post_content .wm-site-ad__title{font-size:20px}
.wm-site-ad__body p{font-size:16px;line-height:1.8}
/* 額装のずらしが画面の右端を越えないように */
.wm-reader{overflow-x:clip}

/* 本番補正：スマホの固定ヘッダー（約80px）に肩書きが隠れない位置へ */
.wm2-hero{--site-header-h:80px}
.wm2-hero::before{top:var(--site-header-h)}

/* 夜の帯の中の回答は明るい文字に（寸法側の ink-2 指定より後に置く） */
.wm2-question .wm2-question__item p:not(.wm2-title){color:color-mix(in srgb,var(--night-ink) 78%,transparent)}
/* v9の型の色を寸法側の金より優先（見本と同じ見え方） */
.wm-reader .wm2-hero h1::after{background:var(--accent)}
.wm-reader .wm2-dossier .wm2-dossier__mystery>li::before{color:var(--accent)}

/* 長い欧文クレジットが扉・結びの幅を押し広げないように（狭い画面では単位の途中でも折る） */
.wm2-hero,.wm2-hero__body,.wm2-coda,.wm2-coda__body{min-width:0}
.wm2-hero{grid-template-columns:minmax(0,1fr)}
.wm2-hero__credit,.wm2-coda__credit,figcaption{overflow-wrap:anywhere}
.wm2-hero__credit .wm2-credit-unit,.wm2-coda__credit .wm2-credit-unit,figcaption .wm2-credit-unit{white-space:normal}
