#hfw-slot{max-width:1180px;margin:0 auto;padding:28px 16px 6px;box-sizing:border-box}
#hfw-slot:empty{display:none}
#hwv{--ink:#14213d;--sub:#5b6576;--line:#e3e7ee;--s1:#1560d4;--s2:#3f9df3;--s3:#8fd0ff;position:relative;display:block;background:#fff;border-radius:22px;overflow:hidden;box-shadow:0 1px 2px rgba(16,24,40,.06),0 18px 40px -18px rgba(16,24,40,.45);color:var(--ink);text-align:left;font-feature-settings:"palt";line-height:1.5;box-sizing:border-box;margin:0 0 8px}
#hwv *,#hwv *:before,#hwv *:after{box-sizing:border-box}
#hwv p{margin:0;padding:0}
#hwv[data-sky=clear]{--s1:#0f5bd1;--s2:#2f8cf0;--s3:#7cc6ff}
#hwv[data-sky=cloud]{--s1:#3d4d66;--s2:#63748e;--s3:#9aa9bd}
#hwv[data-sky=rain]{--s1:#16264a;--s2:#28436f;--s3:#4f6f9c}
#hwv[data-sky=nrain]{--s1:#0b1330;--s2:#1a2a52;--s3:#34507a}
#hwv[data-sky=snow]{--s1:#4d6d96;--s2:#7894b8;--s3:#b7cae2}
#hwv[data-sky=thunder]{--s1:#211845;--s2:#3b2d6e;--s3:#5a4a93}
#hwv[data-sky=night]{--s1:#070f2b;--s2:#16215a;--s3:#2c3a86}
#hwv[data-sky=dusk]{--s1:#2b3280;--s2:#8c4a8e;--s3:#f08a4b}

/* ヒーロー */
#hwv .hwv__hero{position:relative;background:linear-gradient(135deg,var(--s1) 0%,var(--s2) 55%,var(--s3) 100%);color:#fff;padding:20px 24px 24px;transition:background .6s}
#hwv .hwv__hero:after{content:"";position:absolute;right:-80px;top:-120px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,0) 65%);pointer-events:none}
#hwv .hwv__bar1{position:relative;z-index:1;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
#hwv .hwv__ttl{font-size:15px;font-weight:900;letter-spacing:.06em}
#hwv .hwv__clk{font-size:12.5px;font-weight:700;opacity:.85;font-feature-settings:"tnum"}
#hwv .hwv__loc{margin-left:auto;display:flex;gap:8px;align-items:center}
#hwv .hwv__selw{position:relative;display:inline-block}
#hwv .hwv__selw:after{content:"";position:absolute;right:12px;top:50%;width:7px;height:7px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-70%) rotate(45deg);pointer-events:none}
#hwv .hwv__pref{-webkit-appearance:none;appearance:none;height:36px;margin:0;border:1.5px solid rgba(255,255,255,.55);background:rgba(255,255,255,.16);color:#fff;border-radius:99px;padding:0 32px 0 16px;font-size:14px;font-weight:800;font-family:inherit;cursor:pointer;backdrop-filter:blur(4px)}
#hwv .hwv__pref option{color:#14213d}
#hwv .hwv__geo{height:36px;margin:0;border:0;background:#fff;color:var(--s1);border-radius:99px;padding:0 14px 0 11px;font-size:13px;font-weight:900;font-family:inherit;cursor:pointer;display:inline-flex;align-items:center;gap:4px;box-shadow:0 4px 12px -4px rgba(0,0,0,.35)}
#hwv .hwv__geo.is-busy{opacity:.6}
#hwv .hwv__main{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:24px;align-items:center;margin-top:14px}
#hwv .hwv__big{display:flex;align-items:flex-start;gap:10px;line-height:1}
#hwv .hwv__ico{font-size:54px;line-height:1;filter:drop-shadow(0 4px 8px rgba(0,0,0,.25));margin-top:8px}
#hwv .hwv__tv{font-size:88px;font-weight:900;letter-spacing:-.04em;line-height:.95;font-feature-settings:"tnum";text-shadow:0 4px 18px rgba(0,0,0,.18)}
#hwv .hwv__tu{font-style:normal;font-size:24px;font-weight:800;opacity:.9;margin-top:8px}
#hwv .hwv__cond{font-size:21px;font-weight:900;margin-top:10px!important}
#hwv .hwv__desc{font-size:13px;font-weight:600;opacity:.88;margin-top:2px!important;min-height:1.5em}
#hwv .hwv__hl{display:flex;gap:8px;margin-top:12px!important;flex-wrap:wrap}
#hwv .hwv__chip{display:inline-flex;align-items:baseline;gap:6px;border-radius:99px;padding:5px 14px;font-size:12px;font-weight:800;background:rgba(255,255,255,.18);border:1px solid rgba(255,255,255,.35)}
#hwv .hwv__chip b{font-size:18px;font-weight:900;font-feature-settings:"tnum"}
#hwv .hwv__chip.is-hi b{color:#ffd0b8}
#hwv .hwv__chip.is-lo b{color:#cfe6ff}
#hwv .hwv__scene{margin:0;padding:0}
#hwv .hwv__cv{display:block;width:100%;height:auto;aspect-ratio:256/88;image-rendering:pixelated;border-radius:16px;border:3px solid rgba(255,255,255,.4);box-shadow:0 12px 26px -12px rgba(0,0,0,.55);background:#1b2540}
#hwv .hwv__cap{margin-top:8px;font-size:12px;font-weight:700;color:rgba(255,255,255,.9);text-align:right}
#hwv .hwv__cap a{color:#fff;text-decoration:underline;text-underline-offset:3px}
#hwv.is-load .hwv__tv,#hwv.is-load .hwv__ico{opacity:.5}
#hwv.is-err .hwv__tv{opacity:.6}

/* 4つの数字 */
#hwv .hwv__stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:18px 24px 0;margin-top:-2px}
#hwv .hwv__s{--c:#8a93a3;position:relative;display:grid;grid-template-columns:40px minmax(0,1fr);grid-template-rows:auto auto;column-gap:10px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:12px 14px;min-width:0}
#hwv .hwv__si{grid-row:1/3;width:40px;height:40px;border-radius:12px;background:var(--c);color:#fff;display:flex;align-items:center;justify-content:center}
#hwv .hwv__si svg{width:22px;height:22px}
#hwv .hwv__sl{font-size:11.5px;font-weight:800;color:var(--sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#hwv .hwv__sn{position:absolute;right:10px;top:10px;display:inline-block;padding:0 7px;border-radius:99px;background:var(--c);color:#fff;font-size:10.5px;line-height:1.6}
#hwv .hwv__sn:empty{display:none}
#hwv .hwv__s b{font-size:24px;font-weight:900;line-height:1.1;color:var(--ink);font-feature-settings:"tnum";white-space:nowrap}
#hwv .hwv__s b em{font-style:normal;font-size:12px;font-weight:800;color:var(--sub);margin-left:3px}

/* 1時間ごと */
#hwv .hwv__sec{padding:20px 24px 0}
#hwv .hwv__h{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;font-size:15px;font-weight:900;color:var(--ink);margin-bottom:10px!important}
#hwv .hwv__h span{font-size:11.5px;font-weight:600;color:#8a93a3}
#hwv .hwv__hrs{position:relative;overflow-x:auto;overflow-y:hidden;-webkit-overflow-scrolling:touch;scroll-behavior:smooth;border:1px solid var(--line);border-radius:16px;background:#fbfcfe;scrollbar-width:thin}
#hwv .hwv__hrs:focus{outline:2px solid var(--s2);outline-offset:2px}
#hwv .hwv__hrin{position:relative}
#hwv .hwv__hrsvg{position:absolute;left:0;top:64px;pointer-events:none;z-index:1;overflow:visible}
#hwv .hwv__hrl{display:flex;list-style:none;margin:0!important;padding:0!important}
#hwv .hwv__hr{flex:0 0 62px;width:62px;display:flex;flex-direction:column;align-items:center;padding:10px 0 0;margin:0!important;list-style:none;border-right:1px solid #eef1f5;position:relative}
#hwv .hwv__hr:before{display:none!important}
#hwv .hwv__hr:last-child{border-right:0}
#hwv .hwv__hr.is-past{opacity:.5}
#hwv .hwv__hr.is-now{background:#14213d;color:#fff;opacity:1}
#hwv .hwv__hrh{font-size:11.5px;font-weight:800;color:var(--sub);height:18px}
#hwv .hwv__hr.is-now .hwv__hrh{color:#ffc94a}
#hwv .hwv__hri{font-size:24px;line-height:1;height:30px;display:flex;align-items:center}
#hwv .hwv__hrg{display:block;height:38px}
#hwv .hwv__hrt{font-size:16px;font-weight:900;color:var(--ink);line-height:1.2;font-feature-settings:"tnum"}
#hwv .hwv__hr.is-now .hwv__hrt{color:#fff}
#hwv .hwv__hrp{position:relative;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;width:100%;height:46px;margin-top:2px}
#hwv .hwv__hrp i{display:block;width:22px;border-radius:5px 5px 0 0;background:#2f7fe0}
#hwv .hwv__hrp em{display:block;text-align:center;font-style:normal;font-size:10.5px;font-weight:800;color:#b3bcc9;line-height:1.3;margin-bottom:2px}
#hwv .hwv__hrp.is-on em{color:#1f5fb8}
#hwv .hwv__hr.is-now .hwv__hrp.is-on em{color:#9cc8ff}
#hwv .hwv__hr.is-now .hwv__hrp i{background:#5aa2ff}
#hwv .hwv__hrw{display:block;width:100%;height:7px}

/* 暑さ指数 */
#hwv .hwv__wb{--lv:#23945a;margin:20px 24px 0;border-radius:18px;overflow:hidden;border:1px solid var(--line)}
#hwv .hwv__wb[hidden]{display:none!important}
#hwv .hwv__wbhd{display:flex;align-items:center;gap:14px;flex-wrap:wrap;background:var(--lv);color:#fff;padding:14px 18px}
#hwv .hwv__wb[data-lv="2"] .hwv__wbhd{color:#2a2000}
#hwv .hwv__wbv{display:flex;align-items:baseline;gap:10px}
#hwv .hwv__wbk{font-size:12.5px;font-weight:900;letter-spacing:.04em;display:flex;flex-direction:column;line-height:1.3}
#hwv .hwv__wbk i{font-style:normal;font-size:11px;font-weight:700;opacity:.85}
#hwv .hwv__wbv b{font-size:40px;font-weight:900;line-height:1;font-feature-settings:"tnum"}
#hwv .hwv__wblv{font-size:17px;font-weight:900;background:rgba(255,255,255,.22);border:2px solid rgba(255,255,255,.7);border-radius:99px;padding:3px 16px}
#hwv .hwv__wb[data-lv="2"] .hwv__wblv{border-color:rgba(42,32,0,.45);background:rgba(255,255,255,.35)}
#hwv .hwv__wbpk{margin-left:auto;font-size:12.5px;font-weight:800;display:flex;align-items:baseline;gap:6px}
#hwv .hwv__wbpk b{font-size:18px;font-weight:900}
#hwv .hwv__wbbd{padding:14px 18px 16px;background:#fff}
#hwv .hwv__wbact{font-size:14.5px;font-weight:800;color:var(--ink);line-height:1.6}
#hwv .hwv__wbspan{font-size:13px;color:#3a4458;margin-top:6px!important;line-height:1.6}
#hwv .hwv__bar{position:relative;display:flex;height:24px;border-radius:8px;overflow:visible;margin-top:12px}
#hwv .hwv__seg{display:flex;align-items:center;justify-content:center;opacity:.35}
#hwv .hwv__seg:first-child{border-radius:8px 0 0 8px}
#hwv .hwv__seg:last-of-type{border-radius:0 8px 8px 0}
#hwv .hwv__seg.is-on{opacity:1}
#hwv .hwv__seg i{font-style:normal;font-size:10.5px;font-weight:900;color:#fff;white-space:nowrap}
#hwv .hwv__mk{position:absolute;top:-5px;bottom:-5px;width:6px;margin-left:-3px;border-radius:3px;background:#14213d;box-shadow:0 0 0 2px #fff}
#hwv .hwv__law{margin-top:12px!important;font-size:12.5px;line-height:1.7;color:#5c2410;background:#fff3ec;border-left:4px solid #e8701a;border-radius:8px;padding:10px 12px}
#hwv .hwv__law b{display:block;font-size:12px;font-weight:900;color:#c2410c}
#hwv .hwv__law a{color:#c2410c;font-weight:800}

/* グラフ・フッター */
#hwv .hwv__more{margin:14px 24px 0;border-radius:14px;background:#f5f7fa;border:0}
#hwv .hwv__more>summary{list-style:none;cursor:pointer;padding:12px 16px;font-size:13.5px;font-weight:800;color:var(--ink);display:flex;align-items:center;justify-content:space-between}
#hwv .hwv__more>summary::-webkit-details-marker{display:none}
#hwv .hwv__more>summary:after{content:"+";width:22px;height:22px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:15px}
#hwv .hwv__more[open]>summary:after{content:"−"}
#hwv .hwv__chart{padding:4px 12px 12px}
#hwv .hwv__foot{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:18px 24px 0}
#hwv .hwv__cta{display:inline-flex;align-items:center;gap:10px;background:#14213d;color:#fff!important;text-decoration:none!important;font-size:14px;font-weight:900;border-radius:99px;padding:12px 22px;box-shadow:0 8px 18px -10px rgba(20,33,61,.8)}
#hwv .hwv__cta span{display:inline-flex;width:22px;height:22px;border-radius:50%;background:#B87333;align-items:center;justify-content:center;font-size:12px}
#hwv .hwv__btn{height:42px;margin:0;border:1.5px solid #cfd6e1;background:#fff;color:var(--ink);border-radius:99px;padding:0 18px;font-size:13.5px;font-weight:800;font-family:inherit;cursor:pointer}
#hwv .hwv__btn:hover,#hwv .hwv__geo:hover{filter:brightness(.97)}
#hwv .hwv__share{background:#1f6fd1;border-color:#1f6fd1;color:#fff}
#hwv .hwv__note{padding:12px 24px 20px;font-size:11px;color:#8a93a3;line-height:1.6}
#hwv .hwv__toast{position:absolute;left:50%;top:14px;transform:translate(-50%,-10px);z-index:5;background:#14213d;color:#fff;font-size:13px;font-weight:800;border-radius:99px;padding:8px 18px;opacity:0;pointer-events:none;transition:.25s;white-space:nowrap;max-width:92%;overflow:hidden;text-overflow:ellipsis}
#hwv .hwv__toast.on{opacity:1;transform:translate(-50%,0)}

@media (max-width:760px){
  #hfw-slot{padding:20px 10px 4px}
  #hwv{border-radius:18px}
  #hwv .hwv__hero{padding:16px 16px 18px}
  #hwv .hwv__loc{margin-left:0;width:100%}
  #hwv .hwv__selw{flex:1}
  #hwv .hwv__pref{width:100%}
  #hwv .hwv__main{grid-template-columns:1fr;gap:14px}
  #hwv .hwv__ico{font-size:44px}
  #hwv .hwv__tv{font-size:72px}
  #hwv .hwv__cond{font-size:18px}
  #hwv .hwv__cap{text-align:left}
  #hwv .hwv__stats{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px 12px 0;gap:8px}
  #hwv .hwv__s{grid-template-columns:34px minmax(0,1fr);padding:10px;column-gap:8px}
  #hwv .hwv__si{width:34px;height:34px;border-radius:10px}
  #hwv .hwv__si svg{width:19px;height:19px}
  #hwv .hwv__s b{font-size:20px}
  #hwv .hwv__sec{padding:18px 12px 0}
  #hwv .hwv__wb{margin:16px 12px 0}
  #hwv .hwv__wbhd{padding:12px 14px;gap:10px}
  #hwv .hwv__wbv b{font-size:34px}
  #hwv .hwv__wbpk{margin-left:0;width:100%}
  #hwv .hwv__wbbd{padding:12px 14px 14px}
  #hwv .hwv__seg i{font-size:9px}
  #hwv .hwv__more{margin:12px 12px 0}
  #hwv .hwv__foot{padding:16px 12px 0;gap:8px}
  #hwv .hwv__cta{width:100%;justify-content:center}
  #hwv .hwv__btn{flex:1}
  #hwv .hwv__note{padding:10px 12px 16px}
}
@media (prefers-reduced-motion:reduce){#hwv .hwv__hero{transition:none}#hwv .hwv__hrs{scroll-behavior:auto}}
#hwv .hwv__more.is-open{margin:16px 24px 0;padding:14px 12px 4px;border-radius:14px;background:#fbfcfe;border:1px solid var(--line)}
#hwv .hwv__more.is-open .hwv__h{padding:0 4px}
#hwv .hwv__more.is-open .hwv__chart{padding:0}
@media (max-width:760px){#hwv .hwv__more.is-open{margin:14px 12px 0}}
