
:root { --bg:#fdfaf5; --text:#4a4038; --accent:#c9a87c; --soft:#f3ece1; }
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:"Hiragino Mincho ProN","Yu Mincho",serif; background:var(--bg); color:var(--text); line-height:2; }
header { text-align:center; padding:60px 20px 40px; background:linear-gradient(180deg,#f7efe2,#fdfaf5); }
header h1 { font-size:2.2em; letter-spacing:0.3em; color:#a8845a; font-weight:normal; }
header p { margin-top:12px; color:#8a7a68; font-size:0.95em; letter-spacing:0.1em; }
.container { max-width:720px; margin:0 auto; padding:40px 24px 80px; }
.card { background:#fff; border-radius:12px; padding:28px 30px; margin-bottom:24px; box-shadow:0 2px 8px rgba(160,130,90,0.08); }
.card a { color:#7a5c3e; text-decoration:none; font-size:1.15em; }
.card a:hover { text-decoration:underline; }
.card .date { color:#b0a08c; font-size:0.85em; margin-bottom:6px; }
.card .excerpt { margin-top:10px; font-size:0.92em; color:#6e6155; }
article h1 { font-size:1.6em; color:#7a5c3e; margin-bottom:8px; font-weight:normal; line-height:1.6; }
article .date { color:#b0a08c; font-size:0.9em; margin-bottom:36px; }
article h2 { font-size:1.2em; color:#a8845a; margin:44px 0 16px; padding-bottom:8px; border-bottom:1px solid var(--soft); font-weight:normal; }
article p { margin-bottom:1.4em; }
.back { display:inline-block; margin-top:48px; color:#a8845a; text-decoration:none; }
.back:hover { text-decoration:underline; }
footer { text-align:center; padding:40px 20px; color:#b0a08c; font-size:0.85em; border-top:1px solid var(--soft); }
.notice { background:var(--soft); border-radius:10px; padding:18px 22px; font-size:0.88em; color:#8a7a68; margin-bottom:36px; }
