:root{--text: #2a2724;--muted: #857d6d;--accent: #a8131a;--accent-soft: #c6454c;--bg: #f1ead9;--paper: #faf6ec;--surface: #fffdf6;--border: #e3dac8;--shadow: rgba(52, 42, 28, .07);--th-bg: #f0e9d8;--point-bg: #f7f0df;--point-border: #e2d5b8;--point-title: #8a6a1f;--warning-bg: #f8ece7;--warning-border: #e5cabc;--warning-title: #a8131a;--steps-bg: #eef0e6;--steps-border: #d2d6c0;--steps-title: #5a6b3c;--gourmet-bg: #f6efdd;--gourmet-border: #e4d7b9;--gourmet-title: #8a5a1c;--gourmet-strong: #7a4a10;--gourmet-divider: #ddd0b0;--shimmer-a: #ece4d2;--shimmer-b: #e2d9c5;--icon-chip: transparent;--washi: url(/brand/washi-light.jpg)}@media(prefers-color-scheme:dark){:root{--text: #eae5d9;--muted: #9d968a;--accent: #d4565c;--accent-soft: #b04046;--bg: #1e1e1e;--paper: #262523;--surface: #2d2b28;--border: #413e38;--shadow: rgba(0, 0, 0, .45);--th-bg: #2f2d29;--point-bg: #2c2820;--point-border: #4c4430;--point-title: #d8ac5e;--warning-bg: #2f2422;--warning-border: #5a3a35;--warning-title: #e0837e;--steps-bg: #262a22;--steps-border: #414a38;--steps-title: #a3b585;--gourmet-bg: #2b2820;--gourmet-border: #4a4128;--gourmet-title: #d8ac5e;--gourmet-strong: #e0b96f;--gourmet-divider: #4a4128;--shimmer-a: #2c2a26;--shimmer-b: #343129;--icon-chip: #ece5d5;--washi: url(/brand/washi-dark.jpg)}}*{box-sizing:border-box}body{margin:0;color:var(--text);background-color:var(--bg);background-image:var(--washi);background-size:480px;font-family:Hiragino Sans,Yu Gothic,Noto Sans JP,sans-serif;line-height:1.9}.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--accent);z-index:60;pointer-events:none}.navbar{position:sticky;top:0;z-index:50;transition:background .25s ease,box-shadow .25s ease}.navbar.nav-scrolled{background-color:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px);box-shadow:0 1px 0 var(--border),0 4px 14px var(--shadow)}.nav-inner{max-width:1160px;margin:0 auto;padding:.55rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem}.nav-brand{display:flex;align-items:center;gap:.5rem;text-decoration:none;min-width:0}.nav-brand img{width:30px;height:30px;object-fit:contain}@media(prefers-color-scheme:dark){.nav-logo{filter:invert(.92)}}.nav-name{font-family:Shippori Mincho B1,Hiragino Mincho ProN,serif;font-weight:700;font-size:1.12rem;letter-spacing:.22em;color:var(--text)}.nav-en{font-size:.62rem;letter-spacing:.14em;color:var(--muted);text-transform:uppercase;white-space:nowrap;margin-left:.2rem}.nav-links{display:flex;align-items:center;gap:1.3rem;font-size:.86rem}.nav-links a{color:var(--text);text-decoration:none}.nav-links a:hover{color:var(--accent)}.nav-contact{border:1px solid var(--accent);color:var(--accent)!important;border-radius:999px;padding:.22rem .85rem}.nav-contact:hover{background:var(--accent);color:#fff!important}.nav-links a,.nav-name{white-space:nowrap}@media(max-width:1000px){.nav-en{display:none}.nav-links{gap:1rem}}@media(max-width:720px){.nav-links{gap:.7rem;font-size:.78rem}}@media(max-width:560px){.nav-contact,.nav-about{display:none}.nav-inner{padding:.5rem .9rem}}main{max-width:780px;margin:.75rem auto 2.5rem;padding:2.25rem 2.5rem 3.25rem;background:var(--paper);border:1px solid var(--border);border-radius:20px;box-shadow:0 10px 34px var(--shadow),0 1px #fff9 inset}main.wide{max-width:min(1160px,94vw);padding:2.25rem clamp(1.25rem,3.5vw,3rem) 3.25rem}@media(prefers-color-scheme:dark){main{box-shadow:0 10px 34px var(--shadow)}}a{color:var(--accent)}h1,h2,h3{font-family:Shippori Mincho B1,Hiragino Mincho ProN,Yu Mincho,serif;font-weight:700}h1{font-size:1.75rem;line-height:1.5;letter-spacing:.01em}h2{position:relative;font-size:1.34rem;line-height:1.5;margin-top:3rem;padding-bottom:.55rem;border-bottom:1px solid var(--border)}h2:after{content:"";position:absolute;left:0;bottom:-1px;width:4.5rem;height:3px;border-radius:2px;background:var(--accent)}img{max-width:100%;height:auto;border-radius:8px}article img{background:linear-gradient(100deg,var(--shimmer-a) 40%,var(--shimmer-b) 50%,var(--shimmer-a) 60%);background-size:200% 100%;animation:shimmer 1.4s infinite linear;opacity:0;transition:opacity .5s ease}article img.loaded{opacity:1;animation:none;background:none}@keyframes shimmer{0%{background-position:130% 0}to{background-position:-30% 0}}table{border-collapse:separate;border-spacing:0;width:100%;margin:1.5rem 0;font-size:.92rem;border:1px solid var(--border);border-radius:12px;overflow:hidden;box-shadow:0 1px 6px var(--shadow);background:var(--surface)}th,td{border:0;border-bottom:1px solid var(--border);padding:.6rem .85rem;text-align:left}tr:last-child th,tr:last-child td{border-bottom:0}th{background:var(--th-bg);font-weight:600;white-space:nowrap}.reveal{opacity:0;transform:translateY(14px);transition:opacity .6s ease,transform .6s ease}.reveal-in{opacity:1;transform:none}.box-point .box-title{--wa-icon: url(/brand/icons/chochin.png)}.box-warning .box-title{--wa-icon: url(/brand/icons/wagasa.png)}.box-steps .box-title{--wa-icon: url(/brand/icons/zori.png)}.gourmet-title{--wa-icon: url(/brand/icons/wan.png)}.box{margin:1.5rem 0;padding:1rem 1.25rem;border-radius:12px;font-size:.95rem}.box p:last-child{margin-bottom:0}.box-title{font-weight:700;margin:0 0 .5rem;display:flex;align-items:center;gap:.4rem}.box-title:before,.gourmet-title:before{content:"";display:inline-block;width:1.75em;height:1.75em;flex:0 0 auto;vertical-align:-.3em;background:var(--icon-chip) var(--wa-icon) center / 82% no-repeat;border-radius:50%}.box-summary{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:0 12px 12px 0}.box-summary .box-title{color:var(--accent);--wa-icon: url(/brand/icons/shiori.png)}.box-summary ul{margin:0;padding-left:1.1rem}.box-summary li{margin:.3rem 0}.box-point{background:var(--point-bg);border:1px solid var(--point-border)}.box-point .box-title{color:var(--point-title)}.box-warning{background:var(--warning-bg);border:1px solid var(--warning-border)}.box-warning .box-title{color:var(--warning-title)}.box-steps{background:var(--steps-bg);border:1px solid var(--steps-border)}.box-steps .box-title{color:var(--steps-title)}.spot-card{margin:2rem 0;border:1px solid var(--border);border-radius:14px;overflow:hidden;background:var(--surface);box-shadow:0 2px 10px var(--shadow)}.spot-media{margin:0}.spot-media img{width:100%;aspect-ratio:16 / 8;object-fit:cover;display:block;border-radius:0}.spot-body{margin:0;padding:1rem 1.25rem 1.1rem;font-size:.95rem}.spot-head{margin:0 0 .4rem;display:flex;align-items:center;gap:.55rem}.spot-tag{font-size:.72rem;font-weight:600;color:#fff;background:var(--accent);border-radius:999px;padding:.15rem .6rem;white-space:nowrap}.spot-name{font-weight:700;font-size:1.08rem}.spot-body p{margin:.4rem 0}.spot-credit,.spot-credit a{color:var(--muted);font-size:.72rem;text-align:right}.gourmet{margin:2rem 0;padding:1.1rem 1.25rem .6rem;background:var(--gourmet-bg);border:1px solid var(--gourmet-border);border-radius:14px}.gourmet-title{margin:0 0 .4rem;font-weight:700;color:var(--gourmet-title)}.gourmet ul{list-style:none;padding:0;margin:0}.gourmet li{padding:.65rem .2rem;border-top:1px dashed var(--gourmet-divider);margin:0}.gourmet li:first-child{border-top:none}.gourmet li strong{color:var(--gourmet-strong)}.pickup{margin:2rem 0;padding:1.15rem 1.35rem 1.05rem;background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:14px;box-shadow:0 2px 10px var(--shadow);font-size:.95rem}.pickup-head{margin:0 0 .5rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.pickup-badge{font-size:.72rem;font-weight:700;color:#fff;background:linear-gradient(120deg,var(--accent),var(--accent-soft));border-radius:999px;padding:.18rem .65rem;white-space:nowrap}.pickup-title{font-weight:700;font-size:.92rem}.pickup ol{list-style:none;margin:.3rem 0 .6rem;padding:0;counter-reset:pick}.pickup ol li{padding:.45rem .2rem;border-top:1px dashed var(--border)}.pickup ol li:first-child{border-top:none}.pickup ol li:before{content:"壱";font-family:Shippori Mincho B1,serif;font-weight:700;color:var(--accent);margin-right:.55em}.pickup ol li:nth-child(2):before{content:"弐"}.pickup ol li:nth-child(3):before{content:"参"}.pickup>p:last-child{margin:.4rem 0 0}.pickup>p:last-child a{display:inline-block;margin-left:.25rem;font-weight:700;color:var(--accent)}.gallery{display:flex;gap:.75rem;overflow-x:auto;margin:2rem 0;padding-bottom:.5rem;scroll-snap-type:x mandatory}.gallery p{display:contents}.gallery img{flex:0 0 78%;width:78%;aspect-ratio:3 / 2;object-fit:cover;border-radius:12px;box-shadow:0 2px 8px var(--shadow);scroll-snap-align:start}.gallery-credit{font-size:.72rem;color:var(--muted);margin:-1.4rem 0 2rem;text-align:right}.gallery-credit a{color:var(--muted)}.map-embed{height:340px;margin:2rem 0;border-radius:14px;border:1px solid var(--border);overflow:hidden;box-shadow:0 2px 10px var(--shadow);background:var(--th-bg)}.map-embed+.map-hint,.map-hint{font-size:.75rem;color:var(--muted);margin:-1.4rem 0 2rem}.map-embed:empty:before{content:"地図を読み込んでいます…";display:grid;place-items:center;height:100%;color:var(--muted);font-size:.85rem}.video-embed{margin:2rem 0}.video-embed iframe{width:100%;aspect-ratio:16 / 9;border:0;border-radius:14px;display:block;background:#000}.video-caption{margin:.35rem 0 0;font-size:.78rem;color:var(--muted)}.h2-wa:before{content:"";display:inline-block;width:1.5em;height:1.5em;margin-right:.45em;vertical-align:-.3em;background:var(--icon-chip) var(--h2i) center / 85% no-repeat;border-radius:50%}.stats{margin:1.75rem 0}.stats ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.stats li{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:.85rem .6rem .7rem;text-align:center;font-size:.78rem;color:var(--muted);line-height:1.55;box-shadow:0 1px 6px var(--shadow);margin:0}.stats li p{margin:0}.stats li strong{display:block;font-family:Shippori Mincho B1,serif;font-size:1.45rem;color:var(--accent);line-height:1.3;margin-bottom:.15rem}.timeline{margin:2rem 0;padding:1.1rem 1.35rem .9rem;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 6px var(--shadow)}.timeline-title{margin:0 0 .5rem;font-weight:700;display:flex;align-items:center;gap:.4rem}.timeline-title:before{content:"";width:1.75em;height:1.75em;flex:0 0 auto;background:var(--icon-chip) url(/brand/icons/zori.png) center / 82% no-repeat;border-radius:50%}.timeline ul{list-style:none;margin:0;padding:0 0 0 .45rem}.timeline li{position:relative;margin:0;padding:.5rem 0 .5rem 1.5rem;border-left:2px solid var(--border);font-size:.95rem}.timeline li:last-child{border-left-color:transparent}.timeline li:before{content:"";position:absolute;left:-7px;top:1em;width:10px;height:10px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 3px var(--surface),0 0 0 4px var(--accent)}.timeline li p{margin:0}.timeline li strong{color:var(--accent);font-family:Shippori Mincho B1,serif;margin-right:.35em}.route{margin:2rem 0;padding:1.1rem 1.35rem .75rem;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 6px var(--shadow)}.route-head{display:flex;align-items:center;gap:.7rem;margin:0 0 .55rem;font-family:Shippori Mincho B1,serif;font-weight:700}.route-node{background:var(--th-bg);border:1px solid var(--border);border-radius:999px;padding:.16rem .9rem}.route-node.route-dest{background:var(--accent);color:#fff;border-color:var(--accent)}.route-arrow{color:var(--accent);font-weight:700}.route ul{list-style:none;margin:0;padding:0}.route li{padding:.55rem .15rem;border-top:1px dashed var(--border);font-size:.92rem;margin:0}.route li:first-child{border-top:none}.route li p{margin:0}.route li strong{color:var(--accent);display:inline-block;min-width:6em}.tabs-widget{margin:2rem 0;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 1px 6px var(--shadow);overflow:hidden}.tab-bar{display:flex;border-bottom:1px solid var(--border);background:var(--th-bg)}.tab-btn{flex:1;border:0;background:transparent;padding:.6rem;font-family:inherit;font-size:.88rem;color:var(--muted);cursor:pointer;border-bottom:2.5px solid transparent}.tab-btn-active{color:var(--accent);font-weight:700;border-bottom-color:var(--accent);background:var(--surface)}.tab-panel{display:none;padding:.9rem 1.25rem;font-size:.95rem}.tab-panel.tab-active{display:block}.tabs-widget:not(:has(.tab-bar)) .tab-panel{display:block;border-top:1px dashed var(--border)}.voice{margin:1.9rem 0;display:grid;grid-template-columns:58px 1fr;gap:.15rem .7rem;align-items:start}.voice:before{content:"";grid-row:1 / span 2;width:58px;height:58px;border-radius:50%;background:var(--icon-chip) url(/brand/logo-enso-line.png) center / 68% no-repeat;background-color:var(--surface);border:1px solid var(--border)}.voice-name{grid-column:2;margin:0;font-size:.72rem;color:var(--muted)}.voice p:not(.voice-name){grid-column:2;margin:0;background:var(--th-bg);border:1px solid var(--border);border-radius:2px 14px 14px;padding:.65rem .95rem;font-size:.93rem}@media(prefers-color-scheme:dark){.voice:before{background-color:var(--icon-chip)}}.box-avoid{background:var(--warning-bg);border:1px dashed var(--warning-border)}.box-avoid .box-title{color:var(--warning-title);--wa-icon: url(/brand/icons/wagasa.png)}.box-favorite{position:relative;background:var(--surface);border:1px solid var(--border);overflow:hidden}.box-favorite .box-title{color:var(--accent);font-family:Shippori Mincho B1,serif;--wa-icon: url(/brand/icons/camera.png)}.box-favorite p:not(.box-title){padding-right:58px}.box-favorite:after{content:"";position:absolute;right:10px;bottom:8px;width:50px;height:52px;background:url(/brand/rakkan.png) center / contain no-repeat;opacity:.85;transform:rotate(-4deg);pointer-events:none}.checklist{margin:2rem 0;padding:1rem 1.25rem .8rem;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 6px var(--shadow)}.checklist-title{margin:0 0 .3rem;font-weight:700;display:flex;align-items:center;gap:.4rem}.checklist-title:before{content:"";width:1.75em;height:1.75em;flex:0 0 auto;background:var(--icon-chip) url(/brand/icons/shiori.png) center / 82% no-repeat;border-radius:50%}.checklist ul{list-style:none;margin:0;padding:0}.checklist li{display:flex;align-items:center;gap:.6rem;padding:.45rem .1rem;border-top:1px dashed var(--border);margin:0;font-size:.93rem}.checklist li:first-child{border-top:none}.checklist li p{margin:0}.check-box{width:1.75em;height:1.75em;flex:0 0 auto;border:1.5px solid var(--muted);border-radius:6px;background:transparent;cursor:pointer;display:grid;place-items:center;padding:0;color:transparent;font-size:.9em}.check-box.on{background:var(--accent);border-color:var(--accent);color:#fff}.check-box.on:before{content:"✓";font-weight:700}.checklist li.checked{color:var(--muted);text-decoration:line-through}.seasons{margin:2rem 0;border:1px solid var(--border);border-radius:14px;overflow:hidden;box-shadow:0 1px 6px var(--shadow);background:var(--surface);font-size:.9rem}.season-row{display:grid;grid-template-columns:4.6em 1fr auto;align-items:center;gap:.6rem;padding:.5rem .95rem;border-top:1px solid var(--border);margin:0}.season-row:first-child{border-top:none}.s-month{font-family:Shippori Mincho B1,serif;font-weight:700}.s-level{font-size:.72rem;border-radius:999px;padding:.12rem .6rem;white-space:nowrap}.season-row.s-lv3{background:color-mix(in srgb,var(--accent) 8%,var(--surface))}.s-lv3 .s-level{background:var(--accent);color:#fff}.s-lv2 .s-level{background:var(--th-bg);border:1px solid var(--border)}.season-row.s-lv1{color:var(--muted)}.s-lv1 .s-level{color:var(--muted);border:1px dashed var(--border)}.clothing{margin:2rem 0;padding:1rem 1.25rem .7rem;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 6px var(--shadow);font-size:.92rem}.clothing-title{margin:0 0 .35rem;font-weight:700;display:flex;align-items:center;gap:.4rem}.clothing-title:before{content:"";width:1.75em;height:1.75em;flex:0 0 auto;background:var(--icon-chip) url(/brand/icons/wagasa.png) center / 82% no-repeat;border-radius:50%}.clothing-row{display:grid;grid-template-columns:7em 6.5em 1fr;gap:.6rem;align-items:center;padding:.5rem .1rem;border-top:1px dashed var(--border);margin:0}.clothing-row:first-of-type{border-top:none}.c-when{font-weight:700}.c-temp{text-align:center;font-size:.8rem;background:linear-gradient(120deg,#5a7fae24,#c24f5a24);border:1px solid var(--border);border-radius:999px;padding:.12rem .45rem;white-space:nowrap}.meter{display:flex;align-items:center;gap:.55rem;margin:.9rem 0;font-size:.88rem}.meter-label{font-weight:700}.meter-dots{display:inline-flex;gap:.22rem}.meter-dots .dot{color:color-mix(in srgb,var(--muted) 30%,transparent);font-size:.82em}.meter-dots .dot.on{color:var(--accent)}.meter-num{color:var(--muted);font-size:.78rem}.choose{margin:2rem 0;padding:1.1rem 1.25rem 1.2rem;background:var(--surface);border:1px solid var(--border);border-radius:14px;box-shadow:0 1px 6px var(--shadow)}.choose-title{margin:0 0 .6rem;font-weight:700;display:flex;align-items:center;gap:.4rem}.choose-title:before{content:"";width:1.75em;height:1.75em;flex:0 0 auto;background:var(--icon-chip) url(/brand/icons/sensu.png) center / 82% no-repeat;border-radius:50%}.choose-q{margin:0 auto 1.05rem;text-align:center;font-family:Shippori Mincho B1,serif;font-weight:700;background:var(--th-bg);border:1px solid var(--border);border-radius:12px;padding:.55rem 1rem;max-width:32em;position:relative}.choose-q:after{content:"";position:absolute;left:50%;bottom:-8px;width:13px;height:13px;background:var(--th-bg);border-right:1px solid var(--border);border-bottom:1px solid var(--border);transform:translate(-50%) rotate(45deg)}.choose-branch{cursor:pointer;transition:border-color .15s,box-shadow .15s,opacity .2s,transform .15s;user-select:none}.choose-branch:hover{border-color:var(--accent);transform:translateY(-1px)}.choose-branch:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.choose.is-picked .choose-branch:not(.is-on){opacity:.45}.choose-branch.is-on{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent) inset;background:var(--surface)}.choose-result{margin:.9rem 0 0;text-align:center;font-size:.9rem;color:var(--accent);font-weight:700;min-height:1.4em}.choose-hint{margin:.6rem 0 0;text-align:center;font-size:.78rem;color:var(--muted)}.choose.is-picked .choose-hint{display:none}.choose-branches{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;margin:0}.choose-branch{display:flex;flex-direction:column;gap:.3rem;border:1px solid var(--border);border-radius:12px;padding:.75rem .9rem;background:var(--paper)}.choose-badge{align-self:flex-start;font-size:.72rem;font-weight:700;border-radius:999px;padding:.12rem .65rem;color:#fff}.choose-badge.yes{background:var(--accent)}.choose-badge.no{background:var(--muted)}.choose-label{font-weight:700;font-family:Shippori Mincho B1,serif}.choose-desc{font-size:.85rem;color:var(--muted)}.faq-item{margin:.7rem 0;border:1px solid var(--border);border-radius:12px;background:var(--surface);box-shadow:0 1px 6px var(--shadow)}.faq-item summary{cursor:pointer;padding:.7rem 1rem;font-weight:700;list-style:none;display:flex;gap:.55rem;align-items:center}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";margin-left:auto;color:var(--accent);font-weight:700;transition:transform .2s ease;flex:0 0 auto}.faq-item[open] summary:after{transform:rotate(45deg)}.faq-q{color:#fff;background:var(--accent);border-radius:50%;width:1.5em;height:1.5em;flex:0 0 auto;display:grid;place-items:center;font-size:.8em}.faq-item>*:not(summary){margin:0 0 .8rem;padding:0 1.1rem 0 2.6rem;font-size:.93rem}.gallery img:nth-of-type(2n){flex-basis:58%;width:58%}@media(max-width:480px){.stats ul{gap:.5rem}.stats li strong{font-size:1.12rem}.choose-branches{grid-template-columns:1fr}.clothing-row{grid-template-columns:6em 1fr}.clothing-row .c-wear{grid-column:1 / -1;color:var(--muted)}.season-row{grid-template-columns:3.6em 1fr auto}}@media(max-width:480px){.site-header{padding:1.6rem 1rem .9rem}main{margin:.25rem .5rem 1.5rem;padding:1.25rem 1rem 2.25rem;border-radius:14px}h1{font-size:1.45rem}h2{font-size:1.18rem}body{line-height:1.85}.gallery img{flex-basis:88%;width:88%}}.site-footer{max-width:780px;margin:0 auto;padding:0 1.5rem 2.25rem;color:var(--muted);font-size:.85rem;text-align:center}.footer-kasumi{width:min(420px,70%);opacity:.45;margin:0 auto .25rem;display:block}.footer-nav{display:flex;flex-wrap:wrap;justify-content:center;gap:.4rem 1.4rem;margin-bottom:.5rem;font-size:.82rem}.footer-nav a{color:var(--muted);text-decoration:none}.footer-nav a:hover{color:var(--accent);text-decoration:underline}
