/* ===== ノート（/notes/）専用スタイル 2026-11-02 ===== */
/* 既存の style.css は変更せず、このファイルだけで記事ページの見た目を作る */

.page-head .nt-ph{position:relative;z-index:2;margin:0;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(56px,9vw,112px);line-height:1;color:var(--cream)}
.page-head .nt-ph-title{position:relative;z-index:2;margin:0;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:clamp(56px,9vw,112px);line-height:1;color:var(--cream)}

body.theme-geo section.sec-light.nt-sec{background:#ffffff !important;color:#101623;padding:72px 6vw 96px}
.nt-wrap{max-width:1240px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 380px;gap:56px;align-items:start}
@media(max-width:1000px){.nt-wrap{grid-template-columns:1fr;gap:48px}}

/* 記事ヘッダー */
.nt-head{display:flex;flex-direction:column;gap:20px;padding-bottom:28px;border-bottom:1px solid #e6dfcf;margin-bottom:28px}
.nt-tags{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.nt-sec .nt-tags span{display:inline-block !important;height:auto !important;min-height:0 !important;margin:0 !important;font-size:12px;color:#8a6418;border:1px solid #b98a2e;padding:6px 12px;line-height:1.4}
.nt-sec .nt-tags span.nt-series{font-family:'JetBrains Mono',monospace;letter-spacing:.16em;color:#fff;background:#071633;border-color:#071633}
.nt-title{margin:0;font-family:'Shippori Mincho',serif;font-weight:700;font-size:clamp(26px,3.4vw,40px);line-height:1.55;letter-spacing:.04em;color:#071633}
.nt-meta{margin:0;display:flex;flex-wrap:wrap;gap:8px 32px;font-size:13px}
.nt-meta div{display:flex;gap:10px}
.nt-meta dt{font-family:'JetBrains Mono',monospace;letter-spacing:.16em;color:#8a6418}
.nt-meta dd{margin:0;color:#3d4659}
.nt-lead p{margin:0 0 14px;font-size:16px;line-height:2.1;color:#2a3140}
.nt-asof{color:#5a6273}

/* 本文 */
.nt-main{min-width:0}
.nt-block{padding-top:56px;margin-top:56px;border-top:1px dashed #b98a2e}
.nt-lead + .nt-block{border-top:none;margin-top:24px;padding-top:0}
.nt-eyebrow{margin:0 0 6px;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.24em;color:#8a6418}
.nt-h2{margin:0 0 36px;font-family:'Shippori Mincho',serif;font-weight:700;font-size:30px;letter-spacing:.06em;color:#071633}
.nt-main p{margin:0 0 16px;font-size:16px;line-height:2.1;color:#2a3140}
.nt-q{padding:40px 0 24px;border-top:1px solid #e6dfcf}
.nt-h2 + .nt-q{border-top:none;padding-top:0}
.nt-q h3,.nt-h3{margin:0 0 18px;font-family:'Shippori Mincho',serif;font-weight:700;font-size:23px;line-height:1.6;color:#071633}
.nt-h3{font-size:21px;margin-top:32px}
.nt-q h3{display:flex;align-items:baseline;gap:18px}
.nt-qno{flex:none;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:44px;line-height:1;color:#b98a2e}
.nt-mark{color:#071633;background:linear-gradient(transparent 62%,#f3e4bd 62%)}

.nt-vers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #d9c9a3;margin:8px 0 22px}
.nt-vers div{padding:18px 8px;text-align:center;background:#faf7f0;border-right:1px solid #d9c9a3}
.nt-vers div:last-child{border-right:none}
.nt-vers span{display:block;font-size:12px;color:#5a6273}
.nt-vers strong{font-family:'JetBrains Mono',monospace;font-size:22px;color:#071633}
@media(max-width:560px){.nt-vers{grid-template-columns:repeat(2,minmax(0,1fr))}.nt-vers div:nth-child(2){border-right:none}.nt-vers div:nth-child(-n+2){border-bottom:1px solid #d9c9a3}}

.nt-table-wrap{overflow-x:auto;border:1px solid #d9c9a3;margin:8px 0 22px}
.nt-table{width:100%;min-width:560px;border-collapse:collapse;font-size:14px;line-height:1.8}
.nt-table thead th{background:#071633;color:#d8b25f;text-align:left;padding:14px 16px;font-weight:700}
.nt-table tbody th{text-align:left;font-weight:700;color:#071633}
.nt-table tbody th,.nt-table td{padding:14px 16px;border-bottom:1px solid #e6dfcf;color:#2a3140;vertical-align:top}
.nt-table tbody tr:nth-child(even){background:#faf7f0}
.nt-table tbody tr:last-child th,.nt-table tbody tr:last-child td{border-bottom:none}

.nt-check{list-style:none;margin:8px 0 22px;padding:0;border:1px solid #d9c9a3;background:#faf7f0}
.nt-check li{position:relative;padding:16px 20px 16px 50px;border-bottom:1px solid #e6dfcf;font-size:15px;line-height:1.8;color:#101623}
.nt-check li:last-child{border-bottom:none}
.nt-check li::before{content:"";position:absolute;left:20px;top:22px;width:16px;height:16px;border:1.5px solid #b98a2e;background:#fff}

.nt-code{margin:8px 0 18px;padding:16px 20px;background:#071633;border-left:3px solid #d8b25f;overflow-x:auto}
.nt-code code{font-family:'JetBrains Mono',monospace;font-size:14px;color:#d8b25f}

.nt-case{margin-top:40px;padding:32px 36px;background:#071633;border-top:3px solid #b98a2e}
.nt-case .nt-eyebrow{color:#d8b25f}
.nt-case h3{margin:0 0 12px;font-family:'Shippori Mincho',serif;font-weight:700;font-size:21px;line-height:1.6;color:#f2f2f2}
.nt-main .nt-case p{color:#d9dee8;margin:0}

.nt-faq details{border:1px solid #d9c9a3;background:#faf7f0;padding:20px 24px;margin-bottom:14px}
.nt-faq summary{cursor:pointer;font-weight:700;font-size:16px;line-height:1.8;color:#071633}
.nt-faq details p{margin:12px 0 0;font-size:15px;line-height:2}

.nt-src{padding-top:40px;margin-top:40px;border-top:1px solid #e6dfcf}
.nt-src h2,.nt-next h2{margin:0 0 16px;font-family:'JetBrains Mono',monospace;font-weight:500;font-size:13px;letter-spacing:.24em;color:#8a6418}
.nt-src ul{margin:0;padding-left:20px;font-size:14px;line-height:1.8;color:#2a3140}
.nt-src li{margin-bottom:10px}
.nt-src a,.nt-main p a{color:#8a6418}

.nt-next{padding-top:40px;margin-top:40px;border-top:1px solid #e6dfcf}
.nt-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}
.nt-card{display:flex;flex-direction:column;gap:12px;min-height:180px;padding:22px;background:#0c2148;border:1px solid rgba(216,178,95,.45);color:#f2f2f2;text-decoration:none;transition:transform .3s,box-shadow .3s}
a.nt-card:hover{transform:translateY(-3px);box-shadow:0 18px 36px rgba(7,22,51,.25);color:#f2f2f2}
.nt-card .nt-c-top{display:flex;justify-content:space-between;gap:8px;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.18em;color:#d8b25f}
.nt-card .nt-c-top em{font-style:normal;font-family:'Noto Sans JP',sans-serif;letter-spacing:0;color:#d9dee8}
.nt-card .nt-c-title{font-family:'Shippori Mincho',serif;font-weight:700;font-size:16px;line-height:1.8}
.nt-card .nt-c-btm{margin-top:auto;font-family:'JetBrains Mono',monospace;font-size:12px;letter-spacing:.2em;color:#d8b25f}
.nt-card.is-soon{background:#f4f1ea;border-color:#d9c9a3;color:#5a6273}
.nt-card.is-soon .nt-c-top,.nt-card.is-soon .nt-c-btm{color:#8a6418}
.nt-card.is-soon .nt-c-top em{color:#5a6273}
.nt-card.is-soon .nt-c-title{color:#3d4659}

/* 相談フォーム（右カラム）: サイト共通の .cform（白カード）をそのまま使う */
.nt-aside{position:sticky;top:96px}
@media(max-width:1000px){.nt-aside{position:static}}
.nt-formcard{display:flex;flex-direction:column;gap:6px}
.nt-formcard .nt-eyebrow{color:#8a6418;margin:0}
.nt-formcard h2{margin:0;font-family:'Shippori Mincho',serif;font-weight:700;font-size:22px;line-height:1.6;color:#071633}
.nt-formcard .nt-fnote{margin:0 0 14px;font-size:13px;line-height:1.8;color:#3d4659}
.nt-formcard .cform{gap:16px;box-shadow:0 18px 44px rgba(4,14,36,.12)}
.nt-formcard .cform fieldset{margin:0;padding:0;border:none;display:grid;gap:2px}
.nt-formcard .cform legend{padding:0 0 6px;font-size:12px;font-weight:700;letter-spacing:.15em;color:#8a6519}
.nt-formcard .cform legend i,.nt-formcard .cform label i{font-style:normal;color:#c34a4a;margin-left:4px}
.nt-formcard .cform .nt-radio{display:flex;align-items:center;gap:10px;min-height:36px;font-size:14px;font-weight:500;letter-spacing:0;color:#101623}
body.tb-pro .nt-formcard .cform input[type=radio],body.tb-pro .nt-formcard .cform input[type=checkbox]{appearance:auto;-webkit-appearance:auto;width:18px;height:18px;min-width:18px;margin:0;padding:0;background:transparent;border:none;box-shadow:none;border-radius:50%;accent-color:#071633;cursor:pointer;flex:none}
body.tb-pro .nt-formcard .cform input[type=checkbox]{border-radius:3px}
body.tb-pro .nt-formcard .cform input[type=radio]:focus,body.tb-pro .nt-formcard .cform input[type=checkbox]:focus{background:transparent;box-shadow:none;outline:2px solid #b98a2e;outline-offset:2px}
.nt-formcard .cform .nt-radio{cursor:pointer}
.nt-formcard .cform .nt-radio:has(input:checked){color:#071633;font-weight:700}
.nt-formcard .cform input:not([type=radio]):not([type=checkbox]),.nt-formcard .cform textarea{width:100%;box-sizing:border-box}
.nt-formcard .cform .nt-hint{display:block;margin-top:6px;font-size:12px;font-weight:400;letter-spacing:0;color:#5a6273}
body.tb-pro .nt-formcard .cform .btn.gold{justify-content:center;width:100%;background:#071633 !important;color:#f2f2f2 !important;border-color:#071633 !important}
body.tb-pro .nt-formcard .cform .btn.gold:hover{background:#0c2148 !important}

/* 一覧ページ */
.nt-promise{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;margin:0 0 64px;padding:0;list-style:none}
.nt-promise li{padding:22px 24px;border:1px solid #d9c9a3;background:#faf7f0;display:flex;flex-direction:column;gap:6px}
.nt-promise b{font-family:'JetBrains Mono',monospace;font-size:12px;color:#8a6418}
.nt-promise strong{font-size:16px;color:#071633}
.nt-promise span{font-size:14px;line-height:1.8;color:#3d4659}
.nt-intro{max-width:780px;margin:0 0 64px;font-size:16px;line-height:2.1;color:#2a3140}
.nt-listwrap{max-width:1240px;margin:0 auto}
.nt-series{margin-bottom:64px}
.nt-series h2,.nt-all h2{margin:0 0 8px;font-family:'Shippori Mincho',serif;font-weight:700;font-size:26px;color:#071633}
.nt-series > p{margin:0 0 24px;font-size:15px;line-height:2;color:#2a3140}

/* CTA帯 */
.nt-cta-in{max-width:1240px;margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:28px;position:relative;z-index:2}
.nt-cta-in .nt-eyebrow{color:#d8b25f}
.nt-cta-in .nt-cta-t{margin:0 0 10px;font-family:'Shippori Mincho',serif;font-weight:700;font-size:clamp(22px,2.6vw,30px);line-height:1.6;color:#f2f2f2}
.nt-cta-in .nt-cta-d{margin:0;font-size:15px;line-height:1.9;color:#d9dee8}
