
    :root{--ink:#3a2e25;--muted:#6f6254;--line:#e7dccb;--cream:#f6efe4;--accent:#9a6b3d;--deep:#4b3a2b;--olive:#7a8456}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;background:#fffdf9;line-height:1.75}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #c8924f;outline-offset:3px}.wrap{max-width:1160px;margin:auto;padding:0 24px}.topbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:24px;min-height:92px}.brand{font-family:Georgia,serif;font-size:25px;line-height:1.25;letter-spacing:.045em;font-weight:700}.brand small{display:block;font-family:inherit;font-size:12px;font-weight:400;letter-spacing:.13em;color:var(--accent);margin-top:4px}.nav{width:100%;padding-bottom:18px;display:flex;flex-wrap:wrap;gap:18px;font-size:13px;font-weight:700}.nav a:hover,.footnav a:hover{color:var(--accent)}.hero{min-height:430px;display:grid;place-items:center;background:radial-gradient(circle at 82% 22%,rgba(236,214,176,.55) 0 9%,transparent 24%),radial-gradient(circle at 12% 88%,rgba(122,132,86,.45) 0 12%,transparent 30%),linear-gradient(160deg,#c9b08c 0%,#a88761 42%,#7f6446 72%,#5a4532 100%);color:#fff;text-align:center;padding:52px 24px}.hero-inner{max-width:760px}.eyebrow{font-size:13px;letter-spacing:.17em;font-weight:700}.hero h1{font-family:Georgia,"Hiragino Mincho ProN",serif;font-size:clamp(32px,4vw,54px);line-height:1.45;margin:16px 0;text-shadow:0 2px 12px rgba(40,26,16,.25)}.hero p{font-size:17px;line-height:1.9;margin:0}.ad-notice{font-size:12px;line-height:1.6;margin:16px 0 0}.section{padding:76px 0}.section.alt{background:var(--cream)}.section h2{font-family:Georgia,"Hiragino Mincho ProN",serif;font-size:clamp(25px,3vw,34px);line-height:1.45;text-align:center;margin:0 0 16px}.lead{max-width:760px;margin:0 auto 34px;text-align:center;color:var(--muted)}.lead p{margin:0 0 12px}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{display:block;background:#fff;border:1px solid var(--line);box-shadow:0 8px 22px rgba(75,58,43,.06);transition:transform .18s,box-shadow .18s}.card:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(75,58,43,.14)}.card-art{height:180px}.card-body{padding:20px 22px 24px}.card h3{margin:0 0 6px;font-size:18px}.card p{margin:0;color:var(--muted);font-size:14px}.button{display:inline-block;background:var(--accent);color:#fff;border-radius:3px;padding:10px 24px;font-weight:700;margin-top:12px}.footer{background:var(--deep);color:#fff;padding:40px 0 22px}.footnav{display:flex;gap:22px;flex-wrap:wrap;font-size:13px}.footer a:hover{color:#ead7bd}@media(max-width:900px){.topbar{display:block;padding-top:20px;padding-bottom:18px}.nav{margin-top:18px;gap:13px}.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.wrap{padding:0 18px}.nav{font-size:12px;gap:10px}.hero{min-height:340px}.hero p{font-size:14px}.section{padding:54px 0}.cards{grid-template-columns:1fr}.card-art{height:150px}}

.nav,.footnav{display:flex;flex-wrap:wrap;gap:0;align-items:center;line-height:2.2}.nav a,.footnav a{white-space:nowrap}.nav-divider{margin:0 8px;font-weight:400;opacity:.6}.article-list{max-width:880px;margin:26px auto 0;background:#fff}.post{display:grid;grid-template-columns:80px minmax(0,1fr);gap:20px;border:0;border-bottom:1px dashed #d3c4ad;padding:14px 0;max-width:none;margin:0;background:#fff}.post:last-child{border-bottom:0}.post-image{width:80px;height:80px;min-height:0;display:block}.post-body{padding:0;min-width:0}.post-body h3{font-size:17px;line-height:1.5;margin:0 0 8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;overflow:hidden;text-decoration:underline;text-underline-offset:3px}.post-body p{font-size:14px;line-height:1.65;margin:0;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:var(--muted)}.article-list .post{background:transparent}@media(max-width:620px){.nav-divider{margin:0 5px}.post{grid-template-columns:72px minmax(0,1fr);gap:12px;padding:12px 0}.post-image{width:72px;height:72px;min-height:0}.post-body h3{font-size:15px;margin-bottom:5px;-webkit-line-clamp:2}.post-body p{font-size:12px;line-height:1.5;-webkit-line-clamp:2}}
.section.wrap{padding-left:24px;padding-right:24px}@media(max-width:620px){.section.wrap{padding-left:18px;padding-right:18px}}
.hero.has-photo .eyebrow,.hero.has-photo h1,.hero.has-photo p{text-shadow:0 1px 3px rgba(30,20,12,.55),0 2px 14px rgba(30,20,12,.45)}
