:root{
  --th-bg:#f7f4ef;--th-paper:#fff;--th-ink:#514b45;--th-text:#6c655e;
  --th-accent:#94765b;--th-line:#ddd3c8;--th-soft:#fbf8f3;
}
body.th-page{background:var(--th-bg);color:var(--th-text);}
.th-breadcrumb{max-width:1180px;margin:.8rem auto;padding:0 5vw;font-size:.85rem;}
.th-breadcrumb a{color:#766e67;text-decoration:none}
.th-section{padding:clamp(58px,7vw,100px) 5vw;background:#fff}
.th-section:nth-of-type(even){background:#faf7f2}
.th-inner{width:min(980px,100%);margin:0 auto}
.th-section-title{text-align:center;margin-bottom:2.2rem;color:var(--th-ink);font-family:"Noto Serif JP","Yu Mincho",serif;font-size:clamp(1.55rem,3vw,2.5rem)}
.th-section-title small{display:block;margin-top:.5rem;font-family:inherit;font-size:.72rem;letter-spacing:.2em;color:var(--th-accent);font-weight:400}
.th-lead{font-size:clamp(1rem,1.25vw,1.15rem);line-height:2.15;text-align:center}
.th-intro-image{display:block;max-width:min(850px,100%);max-height:520px;object-fit:contain;margin:0 auto 2rem}
.th-timeline{display:grid;gap:1rem}
.th-card{display:grid;grid-template-columns:190px 1fr;gap:1.5rem;padding:1.25rem;background:#fff;border:1px solid var(--th-line);border-radius:14px;text-decoration:none;color:inherit;box-shadow:0 5px 18px rgba(70,55,40,.04)}
.th-card:hover{transform:translateY(-1px)}
.th-card-image{width:100%;height:130px;object-fit:contain;background:var(--th-soft);border-radius:9px}
.th-card-date{font-size:.76rem;letter-spacing:.08em;color:var(--th-accent)}
.th-card h3{margin:.35rem 0 .25rem;color:var(--th-ink);font-family:"Noto Serif JP","Yu Mincho",serif;font-weight:500;font-size:1.24rem}
.th-card-sub{margin:0 0 .55rem;font-size:.88rem;color:#7a7169}
.th-card p{margin:0;line-height:1.75;font-size:.9rem}
.th-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--th-line);border:1px solid var(--th-line)}
.th-fact{background:#fff;padding:1.1rem 1.2rem}
.th-fact b{display:block;color:var(--th-accent);font-size:.7rem;letter-spacing:.12em;margin-bottom:.35rem}
.th-fact span{color:var(--th-ink);line-height:1.75}
.th-story{font-size:clamp(1rem,1.15vw,1.12rem);line-height:2.15}
.th-chapter-image{display:block;max-width:min(860px,100%);max-height:560px;object-fit:contain;margin:0 auto}
.th-video{width:100%;background:#111;border-radius:12px;display:block}
.th-video-links{display:flex;justify-content:flex-end;gap:1rem;margin-top:.8rem;font-size:.85rem}
.th-video-links a{color:var(--th-accent)}
.th-coming{padding:4rem 1rem;text-align:center;border:1px solid var(--th-line);background:var(--th-soft)}
.th-like-box{display:flex;align-items:center;justify-content:center;gap:.7rem;margin:0 auto 2.1rem}
.th-like-button{appearance:none;border:1px solid #b89477;background:#fff;color:#7f624b;border-radius:999px;padding:.65rem 1.15rem;font:inherit;cursor:pointer}
.th-like-button.is-done{background:#f3ebe4}
.th-like-count{font-size:1.35rem;color:var(--th-ink)}
.th-like-label{font-size:.82rem;color:#8a8179}
.th-comment-form{margin:0 auto 1.3rem;max-width:780px}
.th-comment-form label{display:block;margin-bottom:.5rem;color:var(--th-ink);font-weight:600}
.th-comment-form label small{font-weight:400;color:#8d847c}
.th-comment-row{display:grid;grid-template-columns:1fr auto;gap:.5rem}
.th-comment-row input{min-width:0;padding:.8rem .9rem;border:1px solid var(--th-line);border-radius:8px;font-size:16px;background:#fff}
.th-comment-row button{border:0;border-radius:8px;padding:0 1.2rem;background:#6f665e;color:#fff;font:inherit}
.th-honeypot{position:absolute!important;left:-9999px!important}
.th-form-message{min-height:1.4em;font-size:.82rem;color:#7d6d60}
.th-comments{max-width:780px;margin:0 auto;max-height:360px;overflow:auto;border-top:1px solid var(--th-line)}
.th-comment{padding:.9rem .2rem;border-bottom:1px solid #ebe4dc}
.th-comment time{display:block;font-size:.7rem;color:#a0978f;margin-bottom:.25rem}
.th-comment p{margin:0;line-height:1.7;color:#615b55}
.th-no-comments{text-align:center;color:#9a9189;padding:1.2rem}
.th-adjacent{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;align-items:center;margin-top:2.2rem}
.th-adjacent a{color:#75695f;text-decoration:none}
.th-adjacent .next{text-align:right}
.th-archive-link{text-align:center}
.th-archive-link a{display:inline-block;border:1px solid var(--th-line);padding:.8rem 1.25rem;border-radius:999px;color:#655d56;text-decoration:none}
@media(max-width:700px){
  .th-card{grid-template-columns:105px 1fr;gap:.9rem;padding:.9rem}
  .th-card-image{height:92px}
  .th-card p{display:none}
  .th-card h3{font-size:1rem}
  .th-facts{grid-template-columns:1fr}
  .th-comment-row{grid-template-columns:1fr}
  .th-comment-row button{padding:.75rem}
  .th-adjacent{grid-template-columns:1fr}
  .th-adjacent .next{text-align:left}
}
