:root{--cream:#f2ead8;--ivory:#ece2ca;--paper:#f7f2e6;--ink:#1f1b15;--ink-soft:#3a3328;--forest:#2a3d2a;--moss:#4a5d3a;--rust:#b5532a;--rust-deep:#8f3f1d;--sun:#d9a441;--honey:#c48a3b;--stone:#8a7d64;--stone-soft:#a99c81;--line:#d8cdb0;--line-soft:#e4dbc4;--serif-jp:"Noto Serif JP",serif;--sans-jp:"Noto Sans JP",system-ui,sans-serif;--num:"Noto Sans JP",system-ui,sans-serif;--radius:4px;--radius-lg:10px;--shadow-sm:0 1px 3px rgba(40,30,10,.08),0 1px 2px rgba(40,30,10,.06);--shadow-md:0 8px 24px rgba(40,30,10,.10);--shadow-lg:0 24px 60px rgba(40,30,10,.16);--maxw:1240px}[data-theme=modern]{--bg:#f4f2ee;--bg-2:#ffffff;--surface:#ffffff;--surface-2:#f4f2ee;--text:#1c1a17;--text-2:#524d44;--text-3:#8d8579;--accent:#b5532a;--accent-2:#2a3d2a;--accent-ink:#ffffff;--brand-bar:#1c1a17;--hd-font:var(--sans-jp);--body-font:var(--sans-jp);--ui-font:var(--sans-jp);--card-bg:#ffffff;--hairline:#e6e2da}*{box-sizing:border-box}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--body-font);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}::selection{background:var(--accent);color:var(--accent-ink)}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 24px}.kicker{font-size:11px;letter-spacing:.22em;color:var(--accent);font-weight:700}.eyebrow,.kicker{font-family:var(--ui-font);text-transform:uppercase}.eyebrow{font-size:12px;letter-spacing:.16em;color:var(--text-3)}.num{font-family:var(--num);font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hairline{height:1px;background:var(--hairline);border:0;margin:0}.clamp-2{-webkit-line-clamp:2}.clamp-2,.clamp-3{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.clamp-3{-webkit-line-clamp:3}.cat-tech{--c:#3b6ea5}.cat-camp{--c:#4a5d3a}.cat-travel{--c:#b5532a}.cat-food{--c:#c48a3b}.cat-news{--c:#7a4b8f}.btn{font-family:var(--ui-font);font-weight:600;font-size:14px;border-radius:999px;padding:11px 22px;display:inline-flex;align-items:center;gap:8px;transition:.16s;border:1px solid transparent;line-height:1}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px)}.btn-ghost{border-color:var(--hairline);color:var(--text);background:var(--surface)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.btn-sm{padding:7px 14px;font-size:13px}.tag{font-family:var(--ui-font);font-size:11px;letter-spacing:.06em;font-weight:600;padding:4px 10px;border-radius:999px;background:var(--surface-2);color:var(--text-2);display:inline-flex;align-items:center;gap:6px}.tag .dot{width:7px;height:7px;border-radius:50%;background:var(--c,var(--accent))}.adslot{position:relative;background:repeating-linear-gradient(45deg,var(--surface-2) 0 10px,transparent 10px 20px);border:1px dashed var(--hairline);border-radius:var(--radius);display:flex;align-items:center;justify-content:center;color:var(--text-3);font-family:var(--ui-font);font-size:11px;letter-spacing:.14em;text-transform:uppercase;min-height:90px;overflow:hidden}.adslot:before{content:"AD · Google AdSense"}.adslot[data-label]:before{content:attr(data-label)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@keyframes fadeUp{0%{transform:translateY(8px)}to{transform:none}}.fade-up{animation:fadeUp .4s ease}.lift{transition:transform .18s,box-shadow .18s}.lift:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.brandbar{background:var(--brand-bar);color:var(--cream);height:30px;font-family:var(--ui-font);font-size:12px}.brandbar,.brandbar .wrap{display:flex;align-items:center}.brandbar .wrap{justify-content:space-between;width:100%}.brandbar a{color:var(--sun)}.mainnav{position:sticky;top:0;z-index:50;height:64px;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--hairline)}.mainnav .wrap{justify-content:space-between;height:100%;gap:20px}.lockup,.mainnav .wrap{display:flex;align-items:center}.lockup{gap:10px}.wordmark{font-family:var(--sans-jp);font-weight:900;font-size:24px;line-height:1;letter-spacing:-.01em}.wordmark .so{color:var(--accent)}.brand-sub{font-size:9px;letter-spacing:.12em;color:var(--text-3)}.topnav{display:flex;align-items:center;gap:22px;font-family:var(--ui-font);font-weight:600;font-size:15px}.topnav a{position:relative;padding:4px 0;color:var(--text-2);white-space:nowrap}.topnav a.active{color:var(--accent)}.topnav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-6px;height:2px;background:var(--accent)}.iconbtn{width:38px;height:38px;border-radius:50%;border:1px solid var(--hairline);display:inline-flex;align-items:center;justify-content:center;background:var(--surface)}.langtoggle{background:none;color:var(--cream);font-family:var(--ui-font);font-size:12px;cursor:pointer}.hero{background:var(--bg-2);padding:56px 0 40px}.hero-lead{text-align:center;max-width:760px;margin:0 auto 36px}.hero-lead h1{font-family:var(--hd-font);font-weight:700;font-size:clamp(30px,4vw,46px);line-height:1.25;margin:10px 0 12px}.hero-lead p{color:var(--text-2);font-size:18px;line-height:1.7;margin:0}.hero-grid{display:grid;grid-template-columns:1.7fr 1fr;gap:28px}.section{padding:40px 0}.section-head{display:flex;align-items:baseline;justify-content:space-between;margin-bottom:20px}.section-head h2{font-family:var(--hd-font);font-weight:700;font-size:26px;margin:0}.cat-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.feed-grid{display:grid;grid-template-columns:1fr 320px;gap:28px}.feed-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.card{background:var(--card-bg);border:1px solid var(--hairline);border-radius:var(--radius-lg);overflow:hidden;transition:.18s;display:flex;flex-direction:column}.card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.card .body{padding:14px 16px 18px;display:flex;flex-direction:column;gap:8px}.card h3{font-family:var(--hd-font);font-weight:600;font-size:18.5px;line-height:1.4;margin:0}.card .meta{font-size:12px;color:var(--text-3)}.cover{aspect-ratio:16/9;background:var(--surface-2);position:relative}.cat-card{background:var(--card-bg);border:1px solid var(--hairline);border-radius:var(--radius-lg);overflow:hidden;transition:.18s}.cat-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.cat-card .cover{aspect-ratio:auto;height:84px}.cat-card .body{padding:12px 14px}.rank-row{display:grid;grid-template-columns:36px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--hairline)}.rank-row .n{font-family:var(--num);font-weight:800;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-size:26px;color:var(--accent);line-height:1}.rank-row h4{font-family:var(--hd-font);font-weight:600;font-size:15px;line-height:1.4;margin:0 0 4px}.sidebar-box{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius-lg);padding:18px;margin-bottom:20px}.article-body{overflow-wrap:break-word}.page-lead{padding:50px 0 20px}.page-lead h1{font-family:var(--hd-font);font-weight:700;font-size:clamp(28px,3.4vw,42px);margin:8px 0 12px}@media (max-width:1080px){.article-layout,.feed-grid{grid-template-columns:1fr!important}.article-layout aside{position:static!important}.header-cta{display:none!important}}@media (max-width:860px){.hero-grid{grid-template-columns:1fr!important}.cat-grid{grid-template-columns:repeat(2,1fr)!important}.topnav{display:none!important}.footer-cols{grid-template-columns:1fr 1fr!important}}@media (max-width:680px){.wrap{padding-left:16px!important;padding-right:16px!important}.feed-cards{grid-template-columns:1fr!important}.cat-grid{grid-template-columns:repeat(2,1fr)!important}}@media (prefers-reduced-motion:reduce){.fade-up{animation:none}}.hx{--ray:#b5532a;--disc:#b5532a;--tech:#3b6ea5;--camp:#4a5d3a;--travel:#b5532a;--food:#c48a3b;--news:#7a4b8f}.hx .topband{position:relative;overflow:hidden;background:var(--bg)}.hx .daybreak{left:0;right:0;z-index:0;pointer-events:none}.hx .daybreak,.hx .daybreak svg{position:absolute;top:0;height:100%}.hx .daybreak svg{left:50%;transform:translateX(-50%);width:1760px;max-width:none;display:block}.hx .ray{transform-box:fill-box;transform-origin:top right;transform:scaleX(.05);opacity:0;animation:hxRayrise .8s cubic-bezier(.16,.84,.3,1) forwards}@keyframes hxRayrise{to{transform:scaleX(1);opacity:1}}.hx .masthead{position:relative;z-index:2;background:transparent}.hx .masthead .wrap{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-top:22px;padding-bottom:16px}.hx .mh-left{display:flex;align-items:center;gap:13px}.hx .mh-disc{flex:0 0 auto;display:flex}.hx .mh-kicker{display:flex;flex-direction:column;line-height:1.15}.hx .mh-kicker .k{font-size:11px;font-weight:700;letter-spacing:.16em;color:var(--accent);text-transform:uppercase}.hx .mh-kicker .t{font-size:15px;font-weight:700;color:var(--text);letter-spacing:.01em}.hx .mh-date{text-align:right;line-height:1.2}.hx .mh-date .d{font-size:18px;color:var(--text);letter-spacing:.01em}.hx .mh-date .d .num{font-size:21px}.hx .mh-date .l{font-size:10px;font-weight:600;letter-spacing:.22em;color:var(--text-3);text-transform:uppercase;margin-top:3px}.hx .rust-rule{position:relative;z-index:2;height:2px;background:var(--accent);border-radius:2px}.hx .hx-hero{position:relative;z-index:2;padding:30px 0 8px;background:transparent}.hx .hx-lead{max-width:920px;margin-bottom:26px}.hx .hx-lead h1{font-size:46px;font-weight:900;letter-spacing:-.025em;line-height:1.14;margin:0 0 10px}.hx .hx-lead h1 .echo{display:block;font-size:16px;font-weight:500;letter-spacing:.04em;color:var(--text-3);margin-top:12px;line-height:1.3}.hx .hx-lead p{margin:0;font-size:14.5px;color:var(--text-2);max-width:680px;line-height:1.7}.hx .ima{display:inline-block;background:var(--accent);color:var(--accent-ink);font-weight:900;line-height:1;border-radius:6px;padding:.06em .16em .12em;margin:0 .02em;box-shadow:0 4px 14px -6px rgba(181,83,42,.55);transform:translateY(.02em)}.hx .hx-grid{display:grid;grid-template-columns:minmax(380px,1.02fr) minmax(0,1.32fr);gap:30px;align-items:stretch}.hx .index{display:flex;flex-direction:column}.hx .index-head{display:flex;align-items:baseline;justify-content:space-between;padding-bottom:11px;margin-bottom:4px;border-bottom:1.5px solid var(--text)}.hx .index-head .lbl{font-size:13px;font-weight:800;letter-spacing:.04em}.hx .index-head .lbl .en{font-weight:500;letter-spacing:.14em;margin-left:8px}.hx .index-head .lbl .en,.hx .index-head .total-tag{color:var(--text-3);font-size:10px;text-transform:uppercase}.hx .index-head .total-tag{font-weight:600;letter-spacing:.16em}.hx .index-rows{display:flex;flex-direction:column;flex:1 1}.hx .irow{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;padding:14px 4px;border-bottom:1px solid var(--hairline);position:relative;transition:background .18s;color:var(--text);flex:1 1;min-height:58px}.hx .irow:before{content:"";position:absolute;top:6px;bottom:6px;left:27px;width:1px;background:var(--hairline)}.hx .irow:hover{background:rgba(28,26,23,.022)}.hx .irow:hover:before{background:var(--cat);opacity:.5}.hx .irow:hover .ir-name{color:var(--cat)}.hx .ir-chip{width:11px;align-self:stretch;border-radius:3px;background:var(--cat);min-height:40px}.hx .ir-body{min-width:0;padding-left:17px;display:flex;flex-direction:column}.hx .ir-name{font-size:23px;font-weight:700;letter-spacing:.01em;line-height:1.1;color:var(--text);transition:color .18s}.hx .ir-name .en{font-size:11px;font-weight:600;letter-spacing:.1em;color:var(--text-3);margin-left:9px;text-transform:uppercase}.hx .ir-desc{font-size:12px;color:var(--text-2);margin-top:3px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hx .ir-go{justify-self:end;display:flex;align-items:center;color:var(--text-3);transition:color .2s,transform .2s}.hx .ir-go svg{display:block}.hx .irow:hover .ir-go{color:var(--cat);transform:translateX(4px)}.hx .index-cap{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 4px 2px;margin-top:4px;border-top:2px solid var(--text);color:var(--text);transition:color .18s}.hx .index-cap .ic-lbl{font-size:14px;font-weight:800;letter-spacing:.02em;display:inline-flex;align-items:baseline;gap:9px}.hx .index-cap .ic-lbl .en{font-size:10px;font-weight:500;letter-spacing:.14em;color:var(--text-3);text-transform:uppercase}.hx .index-cap .ic-arrow{display:flex;align-items:center;color:var(--accent);transition:transform .2s}.hx .index-cap:hover{color:var(--accent)}.hx .index-cap:hover .ic-arrow{transform:translateX(4px)}.hx .feature{display:flex;flex-direction:column;background:var(--surface);border-radius:var(--radius-lg);border:1px solid var(--hairline);box-shadow:0 1px 2px rgba(28,26,23,.04),0 14px 34px -18px rgba(28,26,23,.16)}.hx .feat-cover,.hx .feature{position:relative;overflow:hidden}.hx .feat-cover{aspect-ratio:16/9.4;background:var(--cat);display:block}.hx .feat-cover img{width:100%;height:100%;object-fit:cover}.hx .feat-cover:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(28,26,23,0) 40%,rgba(28,26,23,.06))}.hx .feat-tag{position:absolute;top:14px;left:14px;z-index:2;display:inline-flex;align-items:center;gap:7px;background:var(--cat);color:#fff;font-size:11.5px;font-weight:800;letter-spacing:.04em;padding:6px 12px 6px 10px;border-radius:999px;box-shadow:0 4px 12px rgba(28,26,23,.22)}.hx .feat-tag .dot{width:6px;height:6px;border-radius:50%;background:rgba(255,255,255,.9)}.hx .feat-pick{position:absolute;top:14px;right:14px;z-index:2;font-size:10px;font-weight:700;letter-spacing:.2em;color:#fff;background:rgba(28,26,23,.5);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);padding:6px 11px;border-radius:999px;text-transform:uppercase}.hx .feat-body{padding:22px 26px 24px}.hx .feat-body h2{margin:0;font-size:28px;font-weight:900;letter-spacing:-.01em;line-height:1.32;color:var(--text)}.hx .feat-body .en{display:block;margin-top:9px;font-size:13.5px;font-weight:500;color:var(--text-2);line-height:1.45;letter-spacing:.01em}.hx .feat-meta{display:flex;align-items:center;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--hairline);font-size:13px;color:var(--text-2)}.hx .feat-meta .by{font-weight:700;color:var(--text)}.hx .feat-meta .sep{width:3px;height:3px;border-radius:50%;background:var(--text-3)}.hx .feat-meta .read{color:var(--text-3);font-weight:500}.hx .feat-meta .read .num{color:var(--text-2);font-size:14px}.hx .feat-meta .go{margin-left:auto;font-size:12.5px;font-weight:700;color:var(--accent);display:inline-flex;align-items:center;gap:5px}.hx .feat-meta .go svg{transition:transform .2s}.hx .feature:hover .feat-meta .go svg{transform:translateX(3px)}.hx .fade-up{animation:hxFadeUp .5s cubic-bezier(.22,.61,.36,1) both}.hx .d1{animation-delay:.04s}.hx .d2{animation-delay:.09s}.hx .d3{animation-delay:.14s}@keyframes hxFadeUp{0%{transform:translateY(9px);opacity:.001}to{transform:translateY(0);opacity:1}}@media (max-width:1080px){.hx .hx-grid{grid-template-columns:1fr;gap:26px}.hx .index{order:1}.hx .feature{order:2}.hx .irow{flex:0 0 auto;min-height:0}.hx .ir-name{font-size:25px}}@media (max-width:860px){.hx .hx-lead h1{font-size:36px}.hx .feat-body h2{font-size:24px}}@media (max-width:760px){.hx .masthead .wrap{padding-top:18px;padding-bottom:14px}.hx .mh-date .d{font-size:15px}.hx .mh-date .d .num{font-size:17px}.hx .hx-hero{padding:24px 0 4px}.hx .hx-lead h1{font-size:30px}.hx .hx-lead h1 .echo{font-size:14px}.hx .daybreak svg{width:1100px}}@media (max-width:680px){.hx .index-head{flex-wrap:wrap;gap:4px}.hx .ir-name{font-size:21px}.hx .feat-body{padding:18px 18px 20px}.hx .feat-body h2{font-size:21px}}@media (max-width:430px){.hx .mh-kicker .k{font-size:10px;letter-spacing:.1em}.hx .mh-kicker .t{font-size:13px}.hx .ir-desc{font-size:11px}.hx .feat-meta{flex-wrap:wrap;gap:8px}.hx .feat-meta .go{margin-left:0;flex-basis:100%;margin-top:2px}}@media (prefers-reduced-motion:reduce){.hx *{animation:none!important;transition:none!important}.hx .ray{transform:none;opacity:1}}