:root{--planner-ink:#17352b;--planner-leaf:#2f6b4f;--planner-mist:#edf2eb;--planner-sand:#f5f0e7;--planner-gold:#b98242}.plannerApp{color:var(--planner-ink);background:#f8f6f1;min-height:100vh;padding:92px clamp(20px,5vw,78px) 100px}.plannerApp .breadcrumbs{max-width:1440px;margin:0 auto 38px}.plannerIntro{color:#fff;background:#17352b;grid-template-columns:.88fr 1.12fr;max-width:1440px;min-height:570px;margin:auto;display:grid;overflow:hidden}.plannerIntro>div{align-self:center;padding:clamp(40px,6vw,92px)}.plannerIntro h1,.resultHero h1{font-family:var(--font-serif,"Yu Mincho",serif);letter-spacing:-.045em;margin:20px 0 26px;font-size:clamp(42px,6vw,84px);line-height:1.08}.plannerIntro p{color:#d9e3dc;max-width:520px;font-size:17px;line-height:2}.plannerIntro ul{flex-wrap:wrap;gap:9px;margin:32px 0 0;padding:0;list-style:none;display:flex}.plannerIntro li{border:1px solid #ffffff36;border-radius:99px;padding:8px 13px;font-size:12px}.plannerIntro img{object-fit:cover;width:100%;height:100%;min-height:570px}.eyebrow{letter-spacing:.18em;text-transform:uppercase;font-size:11px;font-weight:800}.wizardShell{background:#fff;grid-template-columns:280px 1fr;max-width:1260px;margin:72px auto 0;display:grid;box-shadow:0 22px 70px #20372b13}.wizardShell>aside{background:var(--planner-mist);padding:44px 36px}.wizardShell>aside>p{letter-spacing:.18em;font-size:10px;font-weight:800}.wizardShell>aside ol{margin:36px 0 80px;padding:0;list-style:none}.wizardShell>aside li{color:#708077;border-bottom:1px solid #17352b18;grid-template-columns:36px 1fr;align-items:center;gap:10px;padding:14px 0;display:grid}.wizardShell>aside li b{font-size:11px}.wizardShell>aside li.active{color:var(--planner-ink);font-weight:800}.wizardShell>aside li.done b:after{content:" ✓"}.wizardShell>aside>div{border-top:1px solid #17352b28;gap:7px;padding-top:20px;display:grid}.wizardShell>aside>div strong{font-size:26px}.wizardShell>aside>div span{color:#61736a;font-size:12px}.wizardShell form{flex-direction:column;min-height:690px;padding:clamp(34px,5vw,70px);display:flex}.wizardHead span{letter-spacing:.18em;color:var(--planner-leaf);font-size:10px;font-weight:800}.wizardHead h2{font-family:var(--font-serif,"Yu Mincho",serif);margin:15px 0 10px;font-size:clamp(30px,4vw,52px);line-height:1.2}.wizardHead p{color:#68776f}.fieldGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:42px;display:grid}.fieldGrid label,.fieldGrid fieldset{border:0;gap:9px;margin:0;padding:0;font-size:12px;font-weight:700;display:grid}.fieldGrid input:not([type=checkbox]),.fieldGrid select,.fieldGrid textarea{color:#17352b;width:100%;font:inherit;background:#fff;border:1px solid #cdd5cf;border-radius:0;padding:14px 15px}.fieldGrid input[type=range]{accent-color:var(--planner-leaf);border:0;padding:10px 0}.fieldGrid output{float:right;color:var(--planner-leaf)}.fieldGrid .check{border:1px solid #cdd5cf;flex-direction:row;align-self:end;align-items:center;padding:14px;display:flex}.fieldGrid .check input{accent-color:var(--planner-leaf)}.fieldGrid .wide,.fieldGrid fieldset{grid-column:1/-1}.segmented{grid-template-columns:repeat(4,1fr);gap:7px;display:grid}.segmented button,.interestGrid button{color:var(--planner-ink);cursor:pointer;background:#fff;border:1px solid #cdd5cf;padding:15px 10px;font-weight:700}.segmented button.selected,.interestGrid button[aria-pressed=true]{background:var(--planner-ink);color:#fff;border-color:var(--planner-ink)}.interestGrid{grid-template-columns:repeat(4,1fr);gap:9px;margin-top:38px;display:grid}.interestGrid button{text-align:left;gap:10px;min-height:78px;display:grid}.interestGrid button span{opacity:.55;font-size:9px}.reviewGrid{grid-template-columns:1fr 1fr;gap:14px;margin-top:42px;display:grid}.reviewGrid article{background:var(--planner-mist);padding:24px}.reviewGrid span{letter-spacing:.15em;font-size:9px}.reviewGrid b{margin:12px 0;font-size:18px;display:block}.reviewGrid p{color:#68776f;margin:0;font-size:12px}.wizardActions{justify-content:flex-end;gap:10px;margin-top:auto;padding-top:40px;display:flex}.wizardActions button,.resultActions button,.resultActions a{border:1px solid var(--planner-ink);color:var(--planner-ink);cursor:pointer;background:#fff;padding:14px 22px;font-weight:800;text-decoration:none}.wizardActions button:last-child{background:var(--planner-ink);color:#fff;min-width:180px}.wizardActions button:disabled{opacity:.4}.plannerTrust{color:#68776f;border-top:1px solid #d4d6d0;justify-content:space-between;gap:30px;max-width:1260px;margin:24px auto 0;padding:20px 0;font-size:12px;display:flex}.plannerTrust p{max-width:800px}.plannerTrust a{color:var(--planner-ink);font-weight:800}.resultView{background:#f7f4ed}.resultHero{color:#fff;background:#17352b;grid-template-columns:1fr 260px;align-items:end;gap:50px;max-width:1440px;margin:auto;padding:clamp(46px,6vw,90px);display:grid}.resultHero p{color:#d5e2db}.routeStat{border-left:1px solid #ffffff32;gap:7px;padding-left:35px;display:grid}.routeStat strong{margin-top:18px;font-size:38px}.routeStat small,.routeStat span{color:#c4d1ca;font-size:11px}.resultActions{background:#fff;flex-wrap:wrap;max-width:1440px;margin:0 auto 18px;padding:14px;display:flex}.resultActions button,.resultActions a{border-color:#d3dad5;padding:10px 14px;font-size:11px}.plannerStatus{background:#fff4d9;max-width:1440px;margin:0 auto 18px;padding:14px 18px;font-size:12px}.planOverview{grid-template-columns:1.35fr .65fr;gap:20px;max-width:1440px;margin:54px auto;display:grid}.mapPanel{background:#dce7df;padding:18px}.mapCanvas{background:radial-gradient(at 52% 48%,#b7cbb9 0 31%,#0000 32%),linear-gradient(145deg,#a9cdd0,#d8e7dd);min-height:460px;position:relative;overflow:hidden}.mapCanvas:after{content:"";border:2px dashed #315d4770;border-radius:50% 42% 55% 45%;position:absolute;inset:8% 30% 9% 38%;transform:rotate(-11deg)}.mapPin{z-index:2;color:#17352b;align-items:center;gap:7px;text-decoration:none;display:flex;position:absolute;transform:translate(-50%,-50%)}.mapPin b{color:#fff;background:#17352b;border-radius:50%;place-items:center;width:27px;height:27px;font-size:11px;display:grid}.mapPin span{white-space:nowrap;background:#fff;padding:5px 7px;font-size:10px;font-weight:800}.mapLabel{letter-spacing:.18em;color:#447176;font-size:9px;position:absolute;top:18%;right:5%}.mapLabel.pacific{inset:auto auto 18% 4%}.planOverview aside{background:#fff;padding:42px}.planOverview aside h2,.timeline>header h2,.plannerDetails h2,.plannerNotice h2,.plannerFaq h2{font-family:var(--font-serif,"Yu Mincho",serif);font-size:clamp(28px,3vw,44px);line-height:1.25}.planOverview aside p,.planOverview aside li{color:#617168;font-size:13px;line-height:1.9}.planOverview aside a{color:var(--planner-ink);font-weight:800}.timeline{max-width:1260px;margin:90px auto}.timeline>header{margin-bottom:38px}.dayCard{background:#fff;grid-template-columns:360px 1fr;margin-bottom:18px;display:grid}.dayImage{min-height:400px;position:relative}.dayImage img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.dayImage span{background:#fff;padding:8px 11px;font-size:10px;font-weight:900;position:absolute;top:20px;left:20px}.dayBody{padding:38px 44px}.dayBody>p{letter-spacing:.13em;color:var(--planner-leaf);font-size:11px;font-weight:800}.dayBody h3{font-family:var(--font-serif,"Yu Mincho",serif);margin:9px 0 22px;font-size:32px}.driveLine{background:var(--planner-mist);justify-content:space-between;padding:12px 15px;font-size:11px;display:flex}.dayBody dl{margin:24px 0}.dayBody dl div{border-top:1px solid #e1e3df;grid-template-columns:55px 1fr;padding:12px 0;display:grid}.dayBody dt{font-size:11px;font-weight:800}.dayBody dd{margin:0;font-size:13px;line-height:1.7}.dayTips{grid-template-columns:repeat(3,1fr);gap:8px;display:grid}.dayTips p{background:var(--planner-sand);margin:0;padding:13px;font-size:11px;line-height:1.7}.dayTips b{margin-bottom:5px;display:block}.attractionMeta{flex-wrap:wrap;gap:8px;margin-top:18px;display:flex}.attractionMeta span,.attractionMeta a{color:#4f6259;border:1px solid #d9ddd9;padding:7px 9px;font-size:10px;text-decoration:none}.plannerDetails{grid-template-columns:1.2fr .8fr .8fr;gap:18px;max-width:1260px;margin:80px auto;display:grid}.plannerDetails>article{background:#fff;padding:32px}.plannerDetails h3{margin:26px 0 10px;font-size:15px}.plannerDetails h3 small{color:#6e7d75}.plannerDetails ol{padding:0;list-style:none}.plannerDetails ol li{border-top:1px solid #eceeea;justify-content:space-between;gap:15px;padding:9px 0;font-size:12px;display:flex}.plannerDetails ol span{color:#78857e}.costBreakdown div{border-bottom:1px solid #e5e7e3;justify-content:space-between;padding:12px 0;display:flex}.costBreakdown div:last-child{font-size:20px;font-weight:900}.plannerDetails>article>p,.plannerDetails a{font-size:11px;line-height:1.8}.plannerDetails a{color:#17352b;font-weight:800}.checkList{padding:0;list-style:none}.checkList li{border-bottom:1px solid #e5e7e3;padding:9px 0;font-size:12px}.checkList input{accent-color:#17352b;margin-right:9px}.plannerNotice{background:#e7ece5;max-width:1260px;margin:auto;padding:42px}.plannerNotice p{max-width:900px;line-height:1.9}.plannerNotice div{gap:18px;display:flex}.plannerNotice a{color:#17352b;font-weight:800}.plannerFaq{color:#fff;background:#17352b;padding:80px clamp(20px,10vw,160px)}.plannerFaq>p,.plannerFaq>h2,.plannerFaq>details{max-width:900px;margin-left:auto;margin-right:auto}.plannerFaq details{border-top:1px solid #ffffff32;padding:20px 0}.plannerFaq summary{cursor:pointer;font-weight:800}.plannerFaq details p{color:#d0dcd5;line-height:1.8}@media (max-width:900px){.plannerApp{padding:78px 16px 70px}.plannerIntro,.wizardShell,.resultHero,.planOverview,.dayCard,.plannerDetails{grid-template-columns:1fr}.plannerIntro img{min-height:360px}.wizardShell>aside{display:none}.wizardShell form{min-height:720px}.interestGrid{grid-template-columns:repeat(2,1fr)}.resultHero{gap:15px}.routeStat{border-top:1px solid #ffffff32;border-left:0;padding:15px 0 0}.dayImage{min-height:300px}.plannerDetails{gap:10px}}@media (max-width:620px){.fieldGrid,.reviewGrid{grid-template-columns:1fr}.segmented{grid-template-columns:1fr 1fr}.fieldGrid fieldset,.fieldGrid .wide{grid-column:auto}.plannerIntro h1,.resultHero h1{font-size:40px}.wizardShell form{padding:28px 20px}.dayBody{padding:26px 20px}.dayTips{grid-template-columns:1fr}.resultActions button,.resultActions a{text-align:center;flex:1;min-width:110px}.planOverview aside{padding:28px 22px}.plannerNotice div{flex-direction:column}.plannerTrust{display:block}}@media print{header.siteHeader,footer,.resultActions,.plannerFaq,.breadcrumbs{display:none!important}.plannerApp{background:#fff;padding:0}.resultHero{break-after:page}.dayCard{break-inside:avoid}.plannerDetails{grid-template-columns:1fr 1fr}.plannerNotice{display:none}}.plannerApp.resultView{padding-top:42px}.resultView .breadcrumbs{margin-bottom:24px;padding:10px 0}.resultView .resultHero{grid-template-columns:minmax(0,1fr) 260px;height:auto;min-height:420px}.resultView .resultHero h1{font-size:clamp(42px,5vw,68px)}@media (max-width:900px){.plannerApp.resultView{padding-top:32px}.resultView .resultHero{grid-template-columns:1fr;min-height:0;padding:42px 34px}.resultView .resultHero h1{font-size:clamp(36px,8vw,52px)}}@media (max-width:620px){.plannerApp.resultView{padding-top:22px}.resultView .breadcrumbs{margin-bottom:16px}.resultView .resultHero{padding:34px 22px}.resultView .resultHero h1{margin:14px 0 18px;font-size:36px;line-height:1.16}.resultView .routeStat strong{margin-top:8px;font-size:30px}}.planOverview{grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr)}.mapPanel{background:#132f29;padding:16px;position:relative;box-shadow:0 24px 70px #17352b20}.mapPanel:before{content:"ROUTE OVERVIEW  /  推奨ルート";color:#dce8e2;letter-spacing:.18em;padding:8px 6px 18px;font-size:10px;font-weight:900;display:block}.mapCanvas{isolation:isolate;background-color:#b8d2d4;background-image:linear-gradient(#ffffff28 1px,#0000 1px),linear-gradient(90deg,#ffffff28 1px,#0000 1px),linear-gradient(145deg,#9dc4c9,#d8e7df);background-size:52px 52px,52px 52px,100% 100%;border:1px solid #ffffff45;min-height:520px}.mapCanvas:before{content:"";z-index:-1;clip-path:polygon(37% 0,52% 3%,58% 13%,69% 17%,71% 25%,86% 34%,82% 43%,94% 55%,83% 63%,73% 62%,62% 75%,56% 89%,44% 100%,40% 87%,28% 78%,25% 63%,14% 54%,18% 42%,6% 31%,17% 24%,23% 11%);filter:drop-shadow(0 13px 18px #17352b42);background:linear-gradient(145deg,#d5dfc9 0%,#96b47e 46%,#6e9367 100%);position:absolute;inset:4% 17% 5% 19%}.mapCanvas:after{z-index:-1;opacity:.62;filter:blur(1px);border:0;border-left:5px solid #e2e7d3;border-radius:50%;inset:12% 31% 11% 35%;transform:rotate(-20deg)}.mapPin{z-index:3;filter:drop-shadow(0 5px 8px #17352b3d);gap:8px;transition:transform .2s}:is(.mapPin:hover,.mapPin:focus-visible){z-index:5;transform:translate(-50%,-50%)scale(1.08)}.mapPin b{border:3px solid #fff;width:32px;height:32px;box-shadow:0 0 0 2px #17352b}.mapPin span{border-left:3px solid var(--planner-gold);padding:7px 9px;font-weight:900;box-shadow:0 5px 18px #17352b24}.mapLabel{color:#315e65;background:#dff0efb8;padding:6px 8px;font-weight:800;top:15%;right:4%}.mapLabel.pacific{bottom:16%;left:3%}.planOverview aside{border-top:5px solid var(--planner-gold)}@media (max-width:900px){.planOverview{grid-template-columns:1fr}.mapCanvas{min-height:480px}}@media (max-width:620px){.mapPanel{padding:10px}.mapPanel:before{padding:6px 4px 14px}.mapCanvas{background-size:38px 38px,38px 38px,100% 100%;min-height:400px}.mapPin span{padding:5px 7px}.mapLabel{font-size:7px}.mapCanvas:before{inset:5% 10% 5% 12%}}.resultView .planOverview{grid-template-columns:minmax(0,860px);justify-content:center}.resultView .mapPanel{display:none}.resultView .planOverview aside{padding:clamp(30px,5vw,58px)}.optimizer{color:#fff;break-before:page;background:#17352b;max-width:1260px;margin:80px auto}.optimizer>header{justify-content:space-between;align-items:end;gap:32px;padding:clamp(32px,5vw,62px);display:flex}.optimizer>header h2{font-family:var(--font-serif,"Yu Mincho",serif);margin:12px 0;font-size:clamp(30px,4vw,52px)}.optimizer>header p{color:#cad9d0;max-width:760px;line-height:1.8}.optimizerStart{color:#17352b;cursor:pointer;white-space:nowrap;background:#f5f0e7;border:0;padding:16px 24px;font-weight:900}.optimizerBody{color:#17352b;background:#edf2eb;padding:clamp(20px,4vw,52px)}.healthHero{background:#fff;border-top:5px solid #2f6b4f;grid-template-columns:auto 1fr;align-items:center;gap:32px;padding:clamp(24px,4vw,42px);display:grid}.scoreRing{aspect-ratio:1;border-radius:50%;place-items:center;width:142px;display:grid}.scoreRing>div{aspect-ratio:1;text-align:center;background:#fff;border-radius:50%;place-content:center;width:112px;display:grid}.scoreRing strong{font-size:49px;line-height:.9}.scoreRing span{color:#67766f;font-size:11px}.healthHero h3{font-family:var(--font-serif,"Yu Mincho",serif);margin:8px 0;font-size:clamp(24px,3vw,36px)}.healthHero p,.healthHero small{color:#68776f;font-size:11px;line-height:1.7}.scoreBoard{grid-template-columns:repeat(7,1fr);gap:8px;margin-top:12px;display:grid}.score{text-align:left;color:#17352b;cursor:pointer;background:#fff;border:0;grid-template-columns:1fr auto;gap:12px;padding:18px;display:grid}.score span{font-size:10px;font-weight:800}.score span small{color:#78847e;margin-top:4px;display:block}.score b{font-size:23px}.score i{grid-column:1/-1;height:4px}.score em{color:#65746c;grid-column:1/-1;font-size:9px;font-style:normal;line-height:1.6}.factorPanel{background:#fff;margin-top:8px;padding:24px}.factorPanel h3{font-family:var(--font-serif,"Yu Mincho",serif);margin-top:0}.factorPanel>div{border-top:1px solid #e1e7e2;grid-template-columns:46px 1fr;gap:12px;padding:11px 0;display:grid}.factorPanel>div>b{color:#235e48;background:#e0eee5;place-items:center;display:grid}.factorPanel>div>b.negative{color:#903e32;background:#f3dfda}.factorPanel span{gap:3px;display:grid}.factorPanel small{color:#69776f}.healthSummary{grid-template-columns:1fr 1fr;gap:10px;margin-top:12px;display:grid}.healthSummary article{background:#dfe8df;padding:22px}.healthSummary article+article{background:#f0e1dc}.healthSummary h3{margin-top:0}.healthSummary p{margin:6px 0;font-size:11px;line-height:1.65}.optimizerToolbar{align-items:center;gap:9px;margin:28px 0 12px;display:flex}.optimizerToolbar button,.whatIf button,.optimizerSave button,.priorityControl button{color:#17352b;cursor:pointer;background:#fff;border:1px solid #bfcac2;padding:10px 13px;font-weight:800}.optimizerToolbar button:disabled{opacity:.45}.optimizerToolbar span{color:#68776f;margin-left:auto;font-size:11px}.priorityControl{background:#dfe8df;align-items:center;gap:7px;margin-bottom:14px;padding:12px;display:flex}.priorityControl b{margin-right:auto;font-size:11px}.priorityControl button.active{color:#fff;background:#17352b;border-color:#17352b}.suggestionGrid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.suggestionGrid article{background:#fff;border:2px solid #0000;padding:28px;position:relative}.suggestionGrid article.priority-critical{border-top-color:#a63f35}.suggestionGrid article.priority-high{border-top-color:#b98242}.suggestionGrid article.applied{border-color:#2f6b4f}.suggestionGrid article.rejected{opacity:.58}.suggestionTop{align-items:center;gap:9px;display:flex}.suggestionIcon{font-size:28px}.suggestionTop b{color:#fff;background:#17352b;padding:5px 7px;font-size:9px}.priority-critical .suggestionTop b{background:#a63f35}.suggestionTop small{color:#64736b;margin-left:auto}.suggestionGrid h3{font-family:var(--font-serif,"Yu Mincho",serif);margin:13px 0 9px;font-size:24px}.suggestionGrid article>p{color:#607068;font-size:12px;line-height:1.8}.actionBox{background:#f5f0e7;margin:15px 0;padding:13px}.actionBox b{font-size:10px}.actionBox p{margin:5px 0 0;font-size:11px;line-height:1.65}.suggestionGrid dl{background:#e5e9e5;grid-template-columns:1fr 1fr;gap:1px;display:grid}.suggestionGrid dl div{background:#f7f5f0;padding:11px}.suggestionGrid dt{color:#728078;font-size:9px}.suggestionGrid dd{margin:4px 0 0;font-size:11px;font-weight:800}.affected{font-size:9px!important}.suggestionGrid footer{align-items:center;gap:8px;margin-top:18px;display:flex}.suggestionGrid footer button{color:#fff;cursor:pointer;background:#17352b;border:1px solid #17352b;padding:11px;font-weight:800}.suggestionGrid footer button+button,.suggestionGrid footer b+button{color:#17352b;background:#fff}.comparePanel{grid-template-columns:1fr 1fr;gap:12px;margin-top:40px;display:grid}.comparePanel>div{background:#fff;padding:30px}.comparePanel>div+div{background:#dfe8df}.comparePanel h3{font-family:var(--font-serif,"Yu Mincho",serif);font-size:28px}.comparePanel strong{font-size:45px}.comparePanel p:last-child{color:#617168;font-size:11px}.whatIf{grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;display:grid}.whatIf>div{background:#fff;padding:28px}.whatIf h3{font-family:var(--font-serif,"Yu Mincho",serif);font-size:25px}.whatIf>div>div{flex-wrap:wrap;gap:7px;display:flex}.whatIf button{font-size:10px}.whatIf [role=status]{background:#f5f0e7;padding:14px;font-size:12px;line-height:1.7}.optimizerSave{color:#fff;background:#17352b;flex-wrap:wrap;align-items:end;gap:8px;margin-top:12px;padding:22px;display:flex}.optimizerSave label{gap:6px;font-size:10px;display:grid}.optimizerSave input{border:0;padding:11px}.optimizerSave p{width:100%;margin:5px 0 0;font-size:11px}.liveNote{color:#68776f;margin:18px 0 0;font-size:10px;line-height:1.8}@media (max-width:1100px){.scoreBoard{grid-template-columns:repeat(4,1fr)}}@media (max-width:800px){.suggestionGrid{grid-template-columns:1fr}.scoreBoard{grid-template-columns:repeat(2,1fr)}}@media (max-width:700px){.optimizer>header{display:block}.optimizerStart{width:100%;margin-top:20px}.healthHero,.healthSummary,.comparePanel,.whatIf{grid-template-columns:1fr}.scoreRing{margin:auto}.optimizerToolbar,.priorityControl{flex-wrap:wrap}.optimizerToolbar span,.priorityControl b{width:100%;margin-left:0}.optimizerSave button{flex:1}.suggestionGrid article{padding:22px}}@media (max-width:420px){.scoreBoard{grid-template-columns:1fr}.healthHero{text-align:center}}@media print{.optimizerStart,.optimizerToolbar,.optimizerSave button,.whatIf button,.suggestionGrid footer,.priorityControl{display:none!important}.optimizer{margin:0}.optimizerBody{padding:20px}}
