:root{--ink:#171717;--brown:#5b3a28;--brown-dark:#3a2a1f;--cream:#f8f4ec;--line:#e6d8c8;--muted:#746e63;--yellow:#ffd84b}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:130px}
body{margin:0;color:var(--ink);background:#fff;font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;line-height:1.8}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto}

/* 固定ヘッダーの下にパンくずと本文を配置 */
.site-breadcrumb{padding-top:135px!important}
.page-container{max-width:1120px;margin:0 auto;padding:32px 32px 100px}
.page-container>.breadcrumb{max-width:900px;margin:0 auto 28px;padding:0;display:flex;flex-wrap:wrap;align-items:center;gap:8px;color:var(--muted);font-size:12px}
.page-container>.breadcrumb a:hover{color:var(--ink);text-decoration:underline}
.article{max-width:900px;margin:0 auto}

/* 記事タイトル */
.article-header{margin-bottom:34px}
.article-category{display:inline-flex;margin:0 0 14px;padding:5px 12px;border-radius:999px;background:var(--yellow);font-size:12px;font-weight:700;line-height:1.4}
.article-header h1{margin:0 0 18px;font-family:Arial,"Yu Gothic",sans-serif;font-size:clamp(30px,5vw,46px);line-height:1.35;letter-spacing:.01em}
.article-lead{margin:0;color:#565148;font-size:17px;line-height:1.9}
.article-meta{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:18px;color:var(--muted);font-size:12px}

/* メイン画像 */
.hero{margin:36px 0 40px;overflow:hidden;border-radius:12px;background:var(--cream);aspect-ratio:16/9}
.hero img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}

/* 結論・目次 */
.toc{margin:28px 0;padding:24px 26px;border:1px solid var(--line);border-radius:12px;background:var(--cream)}
.toc-title{margin:0 0 12px;color:var(--brown-dark);font-family:Arial,sans-serif;font-size:13px;font-weight:700;letter-spacing:.08em}
.toc ol,.toc ul{margin:0;padding-left:1.45em;display:flex;flex-direction:column;gap:8px}
.toc li{font-size:15px;line-height:1.7}
.toc a:hover{text-decoration:underline}

/* 本文 */
.article-section{margin:54px 0 0;font-size:16px;line-height:2}
.article-section h2{margin:0 0 22px;padding:16px 22px;border:1px solid var(--brown);border-radius:10px;color:#fffdf8;background-color:var(--brown);background-image:linear-gradient(90deg,rgba(255,232,196,.10),transparent 25%,rgba(35,18,8,.18) 53%,transparent 78%,rgba(255,232,196,.07)),repeating-linear-gradient(176deg,rgba(255,236,208,.045) 0 1px,rgba(30,14,6,.05) 1px 3px,transparent 3px 8px);font-size:25px;line-height:1.55}
.article-section h3{margin:34px 0 12px;font-size:20px;line-height:1.6}
.article-section p{margin:0 0 1.35em}
.article-section ul,.article-section ol{margin:1em 0 1.5em;padding-left:1.5em}
.article-section li{margin:.35em 0}
.point-box{margin:26px 0;padding:22px 24px;border:1px solid var(--line);border-left:5px solid #d9823b;border-radius:10px;background:var(--cream)}
.point-title{margin:0 0 8px!important;color:var(--brown-dark);font-family:Arial,sans-serif;font-size:13px;font-weight:800;letter-spacing:.08em}
.summary-list{padding:20px 24px 20px 44px!important;border:1px solid var(--line);border-radius:10px;background:var(--cream)}

/* FAQ */
#faq{margin:20px 0 0}
#faq details{margin:0!important;padding:0!important;border:0!important;border-bottom:1px solid var(--line)!important;border-radius:0!important;background:#fff!important}
#faq details:first-child{border-top:1px solid var(--line)!important}
#faq summary{position:relative;display:flex;gap:9px;align-items:flex-start;padding:16px 34px 16px 30px!important;font-size:16px!important;line-height:1.7;list-style:none}
#faq summary::before{content:"Q."!important;position:absolute!important;left:2px!important;top:16px!important;color:#d9823b!important;font-weight:800}
#faq summary::after{content:"＋";position:absolute;right:4px;top:16px;color:var(--brown-dark);font-weight:400}
#faq details[open] summary::after{content:"−"}
#faq .faq-a{margin:0!important;padding:0 4px 18px 30px!important;border:0!important;color:#4d4942!important;font-size:15px!important;line-height:1.9}

/* 筆者 */
.author-box{display:flex;align-items:center;gap:24px;margin:58px 0 0;padding:26px;border:1px solid var(--line);border-radius:12px;background:var(--cream)}
.author-box .author-image{flex:none;width:92px;height:92px;border-radius:50%;object-fit:cover;background:#fff}
.author-box .author-label{margin:0 0 2px;color:var(--muted);font-size:11px;letter-spacing:.16em}
.author-box h2{margin:0 0 8px;padding:0;border:0;background:none;color:var(--ink);font-size:22px}
.author-box p{margin:0 0 10px;font-size:14px;line-height:1.8}
.author-box a{font-size:13px;font-weight:700;text-decoration:underline}

/* 関連記事 */
.related{margin:54px 0 0;padding-top:28px;border-top:1px solid var(--line)}
.related>h2{margin:0 0 18px;font-size:23px}
.related-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.related-card{display:grid;grid-template-columns:120px 1fr;gap:16px;min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:10px;background:#fff}
.related-card>img{width:120px;height:100%;min-height:110px;object-fit:cover}
.related-card>div{align-self:center;padding:14px 14px 14px 0}
.related-card span{color:var(--muted);font-size:11px}
.related-card h3{margin:4px 0 0;font-size:15px;line-height:1.55}
.related-card:hover{background:var(--cream)}

/* 新規記事用フッター */
.site-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:18px;margin:0;padding:44px max(24px,calc((100% - 1120px)/2));border-top:1px solid var(--line);background:#f4f1ea}
.site-footer>a{font-family:Arial,sans-serif;font-size:18px;font-weight:700}
.site-footer .footer-links{display:flex;flex-wrap:wrap;gap:18px;font-size:13px}
.site-footer p{width:100%;margin:4px 0 0;color:var(--muted);font-size:12px}

@media(max-width:720px){
  html{scroll-padding-top:96px}
  .site-breadcrumb{padding-top:96px!important}
  .page-container{padding:24px 18px 72px}
  .page-container>.breadcrumb{margin-bottom:22px;font-size:11px}
  .article-header h1{font-size:28px}
  .article-lead{font-size:15px}
  .hero{margin:28px 0 30px;border-radius:8px}
  .toc{margin:22px 0;padding:18px}
  .toc li{font-size:14px}
  .article-section{margin-top:42px;font-size:15px}
  .article-section h2{padding:13px 16px;font-size:21px}
  .point-box{padding:18px}
  .author-box{align-items:flex-start;gap:16px;padding:20px}
  .author-box .author-image{width:72px;height:72px}
  .related-grid{grid-template-columns:1fr}
  .related-card{grid-template-columns:104px 1fr}
  .related-card>img{width:104px;min-height:100px}
  .site-footer{padding:38px 20px}
}

@media(max-width:430px){
  .author-box{display:block}
  .author-box .author-image{margin-bottom:12px}
  .related-card{grid-template-columns:96px 1fr}
  .related-card>img{width:96px}
}
