
*{box-sizing:border-box}
body{margin:0;font-family:-apple-system,'Hiragino Kaku Gothic ProN','Meiryo',sans-serif;color:#2b2b2b;line-height:1.85;background:#faf8f5}
.site{display:flex;align-items:center;gap:12px;padding:14px 20px;background:#fff;border-bottom:1px solid #eee;position:sticky;top:0;z-index:5}
.site .brand{font-weight:700;color:#b5651d;text-decoration:none;font-size:1.05rem}
.badge{font-size:.72rem;background:#ffe9d6;color:#b5651d;padding:2px 8px;border-radius:10px}
.lang{margin-left:auto;background:#b5651d;color:#fff;text-decoration:none;font-weight:700;font-size:.85rem;padding:6px 16px;border-radius:20px;white-space:nowrap}
.lang:hover{background:#9c5518}
.hero{min-height:340px;display:flex;align-items:center;background-size:cover;background-position:center;color:#fff}
.hero div{max-width:780px;margin:0 auto;padding:40px 24px}
.hero h1{font-size:2rem;margin:0 0 12px;line-height:1.4}
.hero p{font-size:1.05rem;margin:0 0 20px}
.cta{display:inline-block;background:#b5651d;color:#fff;padding:12px 22px;border-radius:8px;text-decoration:none;font-weight:700}
.grid{max-width:980px;margin:0 auto;padding:36px 20px}
.grid h2{border-left:5px solid #b5651d;padding-left:12px}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:18px;margin-top:18px}
.card{display:block;background:#fff;border:1px solid #eee;border-radius:12px;padding:18px;text-decoration:none;color:inherit;transition:.15s;box-shadow:0 1px 3px rgba(0,0,0,.04)}
.card:hover{transform:translateY(-3px);box-shadow:0 6px 18px rgba(0,0,0,.08)}
.card h3{margin:0 0 8px;color:#b5651d}
.card p{margin:0;font-size:.92rem;color:#555}
.pages{margin-top:26px;text-align:center}
.pages a{color:#b5651d}
.article{max-width:760px;margin:0 auto;padding:28px 20px 60px}
.article h1{font-size:1.7rem;line-height:1.4;border-bottom:2px solid #f0e6da;padding-bottom:12px}
.article h2{margin-top:2em;border-left:5px solid #b5651d;padding-left:12px}
.article h3{margin-top:1.6em;color:#9c5518}
.article figure{margin:1.4em 0}
.article img.photo{display:block;width:100%;height:auto;border-radius:10px;margin:10px 0;box-shadow:0 2px 10px rgba(0,0,0,.08)}
.article figcaption{font-size:.86rem;color:#777;text-align:center;margin-top:4px}
.article figcaption p{margin:0}
.article blockquote{background:#fff;border-left:4px solid #e7c9a9;margin:1.2em 0;padding:12px 16px;border-radius:6px;color:#444;font-size:.95rem}
.article table{border-collapse:collapse;width:100%;margin:1em 0;font-size:.92rem}
.article th,.article td{border:1px solid #e3dccf;padding:8px 10px;text-align:left}
.article th{background:#f6efe5}
.article a{color:#b5651d}
.back a{color:#888;text-decoration:none;font-size:.9rem}
footer{text-align:center;padding:30px 20px;color:#999;font-size:.82rem;border-top:1px solid #eee;margin-top:40px}
