/* エンジェルナンバー 型A — Numéro系ミニマル・エディトリアル（白×黒・明朝）
   サンプル本文の旧クラス名(.tldr/.numerology/.cta/.diag/.faq/.rel/.btn 等)を白×黒で再定義。 */
:root{ --p:#141414; --p6:#333333; --p05:#f6f6f6; --a:#141414; --a6:#333333; --t:#141414; --m:#8a8a8a; }

/* breadcrumb */
.u-breadcrumbs{font-size:11px;letter-spacing:.14em;color:var(--mu);margin:18px 0 0}
.u-breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem;margin:0;padding:0}
.u-breadcrumbs li::after{content:"/";margin-left:.4rem;color:var(--line)}
.u-breadcrumbs li:last-child::after{content:""}
.u-breadcrumbs a{color:var(--mu)}

/* hero / head */
.an-head{padding-top:6px}
.an-head .eyebrow{display:block;margin-top:34px;font-size:12px;letter-spacing:.44em;color:var(--tx);padding-left:.44em}
.an-head .hnum{font-family:var(--serif);font-size:140px;line-height:1.02;letter-spacing:.02em;margin:2px 0;color:var(--tx)}
.an-title{font-family:var(--serif);font-size:27px;line-height:1.55;font-weight:600;margin:6px 0 0}
.an-sub{color:var(--mu);font-size:15px;margin-top:12px;letter-spacing:.03em}
.byline{margin-top:16px;font-size:12.5px;color:var(--mu)}
.byline .badge{border:1px solid var(--line);padding:2px 9px;font-size:11px;letter-spacing:.08em;color:var(--tx)}
.byline .dot{display:inline-block;width:3px;height:3px;border-radius:50%;background:var(--mu);vertical-align:middle;margin:0 9px}
.rule{border:0;border-top:1px solid var(--line);margin:28px 0}

/* body */
.an-body{font-size:15.5px}
.an-body>*+*{margin-top:1.15em}
.an-body p{line-height:2.0}
.an-body h2{font-family:var(--serif);font-size:21px;font-weight:600;margin:54px 0 16px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.an-body h3{font-family:var(--serif);font-size:16.5px;font-weight:600;margin:30px 0 4px}
.an-body a{text-decoration:underline;text-underline-offset:3px}
.an-body ul,.an-body ol{padding-left:1.3em}
.an-body blockquote{margin:1.2em 0;padding:.2rem 0 .2rem 1.1rem;border-left:2px solid var(--tx);color:#444}

/* TL;DR（結論） */
.tldr{border:1px solid var(--line);border-top:2px solid var(--tx);padding:18px 20px;background:#fff}
.tldr h2{all:unset;display:block;font-family:var(--serif);font-weight:700;font-size:15px;margin-bottom:.5em}
.tldr ul{margin:.4em 0 0;padding-left:1.2em}
.tldr li{margin:.2em 0}

/* 数秘ブレイクダウン */
.numerology{background:#fafafa;border:1px solid var(--line);padding:20px 22px}
.numerology h2{all:unset;display:block;font-family:var(--serif);font-weight:700;font-size:16px;margin-bottom:.5em}
.numerology b{font-weight:700}
.numerology .calc{font-family:var(--serif);font-size:22px;font-weight:700;margin:.4em 0;letter-spacing:.02em}

/* table（早見表） */
.an-body table{width:100%;border-collapse:collapse;font-size:14.5px}
.an-body th,.an-body td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top}
.an-body th{background:#fafafa;font-weight:600;white-space:nowrap}

/* CTA（無料鑑定） */
.cta{margin:56px 0;text-align:center;padding:38px 20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cta h3{font-family:var(--serif);font-weight:600;font-size:18px;margin:0 0 8px}
.cta p{color:var(--mu);font-size:14px;margin:0 auto 18px;max-width:42ch}
.btn,.u-btn{display:inline-block;padding:13px 34px;background:var(--ac);color:var(--acText,#fff);font-size:13.5px;letter-spacing:.12em;border-radius:2px;text-decoration:none}
.btn:hover,.u-btn:hover{opacity:.82;text-decoration:none}

/* 簡易診断 */
.diag{border:1px solid var(--line);padding:22px;margin:42px 0}
.diag h3{font-family:var(--serif);margin:0 0 6px;font-size:16px}
.diag .row{display:flex;gap:.5rem;flex-wrap:wrap;margin:.8em 0}
.diag input,.diag select{padding:9px 10px;border:1px solid var(--line);border-radius:2px;font-size:14px}
.note{font-size:12px;color:var(--mu)}

/* FAQ */
.faq{margin:0}
.faq dt{font-family:var(--serif);font-weight:600;margin-top:18px;padding-top:18px;border-top:1px solid var(--line);font-size:15.5px}
.faq dt:first-child{border-top:0;padding-top:0;margin-top:0}
.faq dd{margin:.4em 0 0;font-size:14.5px;line-height:1.9}

/* 関連番号 */
.rel{display:flex;flex-wrap:wrap;gap:.5rem;margin:.6rem 0}
.rel a{display:inline-block;padding:8px 16px;border:1px solid var(--line);font-family:var(--serif);font-size:15px;color:var(--tx)}
.rel a:hover{border-color:var(--tx);opacity:1}

/* 監修プロフィール */
.prof{display:flex;gap:1rem;align-items:flex-start;border-top:1px solid var(--line);padding-top:20px;margin-top:34px}
.prof .av{width:48px;height:48px;border-radius:50%;background:#f0f0f0;flex:0 0 auto}
.tag{color:var(--mu);font-weight:600}
small.src{color:var(--mu);font-size:11.5px}

/* 任意のアイキャッチ画像 */
.hero{width:100%;border:1px solid var(--line);margin:0 0 1.4rem}

/* archive（一覧/早見表ハブ） */
.an-archive{padding-top:6px}
.an-archive .eyebrow{display:block;margin-top:30px;font-size:12px;letter-spacing:.44em;padding-left:.44em}
.an-archive h1{font-family:var(--serif);font-size:30px;margin:6px 0 0}
.an-list{list-style:none;margin:24px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.an-list li{background:#fff}
.an-list a{display:flex;flex-direction:column;gap:4px;padding:18px;height:100%}
.an-list a:hover{background:#fafafa;opacity:1}
.an-list .n{font-family:var(--serif);font-size:28px}
.an-list .t{font-size:12px;color:var(--mu);line-height:1.5}
