
:root{--brown:#5b2a14;--brown2:#7a3c1c;--gold:#c28a3a;--cream:#fbf5e8;--paper:#fffdf7;--ink:#3a2412;--mute:#7a6652;--line:#e3d3b4}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.75 "Yu Gothic UI","Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif}
img{max-width:100%;display:block}a{color:inherit}ul{margin:0;padding:0;list-style:none}
svg{width:1em;height:1em;display:inline-block;vertical-align:-.12em}
.nw-wrap{max-width:1160px;margin:0 auto;padding:0 18px}
/* header */
.nw-head{position:sticky;top:0;z-index:50;background:linear-gradient(#5b2a14,#4a2010);color:#fff;box-shadow:0 2px 8px rgba(40,15,5,.35)}
.nw-head-in{max-width:1280px;margin:0 auto;display:flex;align-items:center;gap:18px;padding:8px 18px;min-height:62px}
.nw-brand{display:flex;align-items:center;gap:10px;text-decoration:none;color:#fff;flex:none}
.nw-brand svg{width:56px;height:32px}.nw-brand-t{display:flex;flex-direction:column;line-height:1.15}
.nw-brand-t b{font:700 20px/1.1 Georgia,"Times New Roman",serif;letter-spacing:.02em}.nw-brand-t small{font-size:11px;opacity:.9;letter-spacing:.1em}
.nw-nav{flex:1}.nw-nav>ul{display:flex;gap:4px;justify-content:center;align-items:center}
.nw-nav a,.nw-dd-btn{display:inline-flex;align-items:center;gap:3px;color:#fff;text-decoration:none;font:600 14.5px/1 inherit;padding:10px 12px;border-radius:8px;border:1px solid transparent;background:none;cursor:pointer;white-space:nowrap}
.nw-nav a:hover,.nw-dd-btn:hover{background:rgba(255,255,255,.12)}
.nw-nav a.is-on{border-color:#e0b25a;color:#ffe3a6}
.nw-dd{position:relative}.nw-sub{display:none;position:absolute;left:0;top:100%;min-width:200px;background:#fffaf0;border:1px solid var(--line);border-radius:10px;box-shadow:0 8px 20px rgba(40,15,5,.3);padding:6px;z-index:60}
.nw-dd.open .nw-sub{display:block}.nw-sub a{color:var(--ink);display:block;font-weight:600;padding:9px 12px}.nw-sub a:hover{background:#f3e5c6}
.nw-cta{flex:none;display:inline-flex;align-items:center;gap:7px;background:linear-gradient(#f2d189,#dfae4d);color:#4a2308;font-weight:700;text-decoration:none;padding:9px 16px;border-radius:999px;font-size:14.5px}
.nw-burger{display:none;margin-left:auto;background:none;border:0;padding:10px;cursor:pointer}.nw-burger span{display:block;width:24px;height:2.5px;background:#fff;margin:5px 0;border-radius:2px}
/* hero */
.nw-hero{background:#f6ecd5;border-bottom:1px solid var(--line);position:relative;overflow:hidden}
.nw-hero:after{content:"";position:absolute;right:0;top:0;bottom:0;width:min(52%,720px);background:url(news-banner.webp) right center/cover no-repeat;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 38%);mask-image:linear-gradient(90deg,transparent 0,#000 38%)}
.nw-hero-in{position:relative;z-index:1;max-width:1160px;margin:0 auto;padding:30px 18px 26px}
.nw-hero-t{display:flex;gap:16px;align-items:center}.nw-hero-t i{font-size:68px;color:var(--brown2);flex:none;line-height:0}
.nw-hero h1{margin:0;font:800 46px/1.15 "Yu Gothic UI","Hiragino Sans",Meiryo,sans-serif;color:var(--brown);letter-spacing:.04em}
.nw-hero p{margin:6px 0 0;color:#5c4430;font-size:16px}
/* chips */
.nw-chips{display:flex;gap:10px;overflow-x:auto;padding:18px 0 8px;scrollbar-width:none}.nw-chips::-webkit-scrollbar{display:none}
.nw-chip{flex:none;display:inline-flex;align-items:center;gap:10px;border:1.5px solid #d7bd86;background:#fffaf0;color:var(--brown);border-radius:999px;padding:8px 20px 8px 16px;cursor:pointer;font:inherit}
.nw-chip i{font-size:24px;line-height:0}.nw-chip span{display:flex;flex-direction:column;text-align:left;line-height:1.2}.nw-chip b{font-size:15px}.nw-chip small{font-size:11px;color:var(--mute)}
.nw-chip.is-on{background:linear-gradient(#7a3c1c,#5b2a14);color:#fff;border-color:#5b2a14}.nw-chip.is-on small{color:#f0d9b0}
/* layout */
.nw-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:28px;align-items:start;margin-top:16px}
.nw-feat{display:grid;grid-template-columns:1.05fr 1fr;background:var(--paper);border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:0 2px 10px rgba(90,50,20,.08)}
.nw-feat-img{position:relative;display:block;min-height:260px}.nw-feat-img img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.nw-badge{position:absolute;left:14px;top:14px;z-index:2;background:linear-gradient(#7a3c1c,#5b2a14);color:#fff;font:700 14px/1 inherit;padding:8px 14px;border-radius:7px;display:inline-flex;gap:6px;align-items:center}.nw-badge svg{color:#ffd45e}
.nw-feat-b{padding:22px 24px;display:flex;flex-direction:column;justify-content:center;gap:8px}
.nw-feat-b h2{margin:0;font-size:27px;line-height:1.4;font-weight:800}.nw-feat-b h2 a{text-decoration:none}.nw-feat-b p{margin:0;color:#4e3b2a}
.nw-meta{display:flex;align-items:center;gap:10px;font-size:14px;color:#4a3626}
.nw-pill{display:inline-block;background:#a56a24;color:#fff;font-size:12px;font-weight:700;padding:3px 12px;border-radius:999px;line-height:1.5}
.nw-c-event{background:#a8452a}.nw-c-info{background:#2f6f8f}.nw-c-report{background:#3f7d4b}.nw-c-notice{background:#6d4aa0}.nw-c-season{background:#a56a24}
.nw-btn{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;background:linear-gradient(#7a3c1c,#5b2a14);color:#fff;text-decoration:none;font-weight:700;padding:11px 22px;border-radius:9px;box-shadow:0 2px 6px rgba(60,25,8,.3)}
.nw-sec-h{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:30px 0 14px;border-bottom:2px solid #c9a55f;padding-bottom:8px}
.nw-sec-h h2{margin:0;font-size:24px;color:var(--brown);display:flex;align-items:center;gap:8px}.nw-sec-h h2 svg{font-size:34px;color:#b9822f}
.nw-all{color:#8a2d1a;font-weight:700;text-decoration:none;font-size:14.5px}
.nw-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.nw-cards-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.nw-card{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 2px 8px rgba(90,50,20,.06)}
.nw-card-img{display:block;aspect-ratio:2/1;overflow:hidden;background:#e8dcc0}.nw-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.nw-card:hover .nw-card-img img{transform:scale(1.04)}
.nw-card-b{padding:12px 14px 14px;display:flex;flex-direction:column;gap:6px;flex:1}
.nw-card h3{margin:0;font-size:17px;line-height:1.45;font-weight:800}.nw-card h3 a{text-decoration:none}.nw-card p{margin:0;font-size:13.5px;line-height:1.65;color:#5a4634}
.nw-more{margin-top:auto;color:#8a2d1a;font-weight:700;font-size:14px;text-decoration:none}
.nw-empty{background:var(--paper);border:1px dashed var(--line);border-radius:10px;padding:26px;text-align:center;color:var(--mute)}
/* aside */
.nw-aside{display:flex;flex-direction:column;gap:16px}
.nw-search{display:flex;border:1px solid #d7bd86;border-radius:8px;overflow:hidden;background:#fffdf7}.nw-search input{flex:1;border:0;background:none;padding:12px 14px;font:inherit;min-width:0;outline:none}.nw-search button{border:0;background:var(--brown2);color:#fff;width:54px;font-size:22px;cursor:pointer}
.nw-box{background:var(--paper);border:1px solid var(--line);border-radius:12px;overflow:hidden}.nw-box h3{margin:0;font-size:17px;padding:10px 14px;display:flex;align-items:center;gap:8px}
.nw-pop h3{background:linear-gradient(#7a3c1c,#5b2a14);color:#fff}.nw-pop h3 svg{color:#ffd45e;font-size:22px}
.nw-pop li+li{border-top:1px solid #eadcbf}.nw-pop a{display:flex;gap:10px;align-items:center;padding:10px 12px;text-decoration:none;font-weight:700;font-size:14.5px;line-height:1.45}.nw-pop img{width:82px;height:52px;object-fit:cover;border-radius:6px;flex:none}
.nw-sub-box{padding-bottom:14px;background:#fbf0d6}.nw-sub-box h3{color:var(--brown)}.nw-sub-box p{margin:0 14px 10px;font-size:13.5px}.nw-sub-box form{margin:0 14px;display:flex;flex-direction:column;gap:8px}
.nw-sub-box input{border:1px solid #d7bd86;border-radius:7px;padding:10px 12px;font:inherit;background:#fff}.nw-sub-box button{border:0;border-radius:8px;background:linear-gradient(#7a3c1c,#5b2a14);color:#fff;font:700 16px/1 inherit;padding:13px;cursor:pointer}
.nw-sns{padding:12px 14px;text-align:center}.nw-sns h3{padding:0 0 10px;justify-content:center;font-size:15px}.nw-sns-r{display:flex;justify-content:center;gap:16px}.nw-sns-r a{font-size:38px;line-height:0}
/* article */
.nw-crumb{font-size:13px;color:var(--mute);padding:16px 0 0}.nw-crumb a{text-decoration:none;color:#8a2d1a}
.nw-art{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:26px 30px 30px}
.nw-art h1{margin:10px 0 14px;font-size:30px;line-height:1.45;font-weight:800;color:var(--brown)}
.nw-art-hero{width:100%;border-radius:10px;margin:0 0 16px;aspect-ratio:16/8;object-fit:cover}
.nw-lead{font-size:17px;font-weight:700;color:#4e3b2a;border-left:4px solid var(--gold);padding-left:12px;margin:0 0 18px}
.nw-art-body h2{font-size:21px;margin:26px 0 8px;padding-bottom:5px;border-bottom:2px solid #e3c88f;color:var(--brown)}
.nw-art-body p{margin:0 0 12px}.nw-art-body ul{list-style:disc;padding-left:1.4em;margin:0 0 14px}.nw-art-body li{margin:4px 0}
.nw-rel{margin-top:24px;background:#fbf0d6;border:1px solid #ecd7a5;border-radius:10px;padding:14px 18px}.nw-rel h3{margin:0 0 6px;font-size:16px}.nw-rel ul{display:flex;flex-wrap:wrap;gap:8px 18px}.nw-rel a{color:#8a2d1a;font-weight:700;text-decoration:none}
.nw-ask{margin-top:20px;text-align:center;background:linear-gradient(#fff6df,#f8e8c0);border:1px solid #e6cd93;border-radius:12px;padding:16px}.nw-ask p{margin:2px 0 10px}.nw-ask .nw-btn{align-self:auto}
.nw-src{margin:6px 0 0;font-size:12.5px;color:var(--mute)}
.nw-srcbox{margin:22px 0 0;padding:10px 14px;background:#fffaf0;border:1px dashed var(--line);border-radius:10px;font-size:14px;color:var(--mute)}
.nw-srcbox a{color:#8a2d1a;font-weight:700;word-break:break-all}
.nw-soon{background:var(--paper);border:1px solid var(--line);border-radius:14px;padding:40px 20px;text-align:center;color:var(--mute)}
.nw-draft{background:#b3261e;color:#fff;text-align:center;font:700 14px/1 sans-serif;padding:10px}
.nw-back{margin:18px 0 0}.nw-back a{color:#8a2d1a;font-weight:700;text-decoration:none}
/* footer */
.nw-foot{margin-top:44px;background:#4a2010;color:#f3e3c4;padding:26px 0 18px;font-size:14px}.nw-foot a{color:#ffe3a6}.nw-foot p{margin:6px 0}
.nw-foot-grid{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.nw-foot ul{display:flex;flex-wrap:wrap;gap:6px 18px;max-width:420px}.nw-copy{opacity:.7;margin-top:14px!important;font-size:12px}
/* responsive */
@media(max-width:1020px){.nw-grid{grid-template-columns:1fr}.nw-aside{display:grid;grid-template-columns:1fr 1fr;gap:16px}.nw-aside .nw-search{grid-column:1/-1}.nw-cards-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){
 .nw-burger{display:block}.nw-cta span{display:none}.nw-cta{padding:10px 12px;font-size:20px}
 .nw-nav{display:none;position:absolute;left:0;right:0;top:100%;background:#4a2010;padding:8px 14px 14px;max-height:calc(100vh - 62px);overflow:auto;border-top:1px solid rgba(255,255,255,.15)}
 .nw-head.open .nw-nav{display:block}.nw-nav>ul{flex-direction:column;align-items:stretch;gap:0}.nw-nav a,.nw-dd-btn{width:100%;padding:13px 8px;border-radius:0;border-bottom:1px solid rgba(255,255,255,.12);justify-content:space-between}
 .nw-sub{position:static;display:none;background:rgba(255,255,255,.06);border:0;box-shadow:none;padding:0 0 0 10px}.nw-sub a{color:#fff}.nw-sub a:hover{background:rgba(255,255,255,.1)}
 .nw-head-in{gap:8px}.nw-brand-t b{font-size:16px}.nw-brand svg{width:46px}
}
@media(max-width:720px){
 .nw-hero:after{width:60%;opacity:.28}
 .nw-hero-in{padding:20px 16px 18px}.nw-hero-t i{font-size:44px}.nw-hero h1{font-size:30px}.nw-hero p{font-size:13px;max-width:15em}
 .nw-feat{grid-template-columns:1fr}.nw-feat-img{min-height:0;aspect-ratio:16/9}.nw-feat-b{padding:16px}.nw-feat-b h2{font-size:21px}
 .nw-cards,.nw-cards-3{grid-template-columns:1fr}.nw-card{flex-direction:row}.nw-card-img{aspect-ratio:auto;width:38%;flex:none}.nw-card-img img{position:static}
 .nw-card-b{padding:10px 12px}.nw-card h3{font-size:15.5px}.nw-card p{display:none}
 .nw-aside{grid-template-columns:1fr}.nw-art{padding:18px 16px 22px}.nw-art h1{font-size:23px}.nw-sec-h h2{font-size:20px}
 .nw-wrap{padding:0 14px}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}
