/* サイト共通の小さな見た目調整（全ページで読み込み） */
/* フッターの「今日の天気」（harita-footer-weather の #hfw-slot）を本文の外枠（#contents）と同じ幅にそろえる（2026-10-02） */
@media (min-width:1200px){
  html body #hfw-slot{width:clamp(1200px,94%,1460px);max-width:none;padding-left:0;padding-right:0}
}
@media (max-width:760px){
  html body #hfw-slot{padding-left:15px;padding-right:15px}
}
/* 天気の見出し行：時計の横に「この先の天気」（5日分）を並べる（2026-10-02） */
#hwv .hwv__bar1{flex-wrap:nowrap}
#hwv .hwv__bar1 > .hwv__ttl,#hwv .hwv__bar1 > .hwv__clk,#hwv .hwv__bar1 > .hwv__loc{flex:none;white-space:nowrap}
#hwv .hwk__d.is-cut{display:none}
#hwv .hwk{display:flex;align-items:center;gap:10px;flex:1 1 auto;min-width:0;margin:0 14px;overflow:hidden}
#hwv .hwk[hidden]{display:none}
#hwv .hwk__lb{flex:none;font-size:11px;font-weight:800;letter-spacing:.06em;color:rgba(255,255,255,.85);border-left:3px solid rgba(255,255,255,.6);padding-left:7px;line-height:1.3}
#hwv .hwk__row{display:flex;gap:6px;min-width:0;overflow:hidden}
#hwv .hwk__d{flex:none;display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);border-radius:99px;padding:4px 10px 4px 8px;color:#fff;font-size:12px;line-height:1.2;white-space:nowrap;backdrop-filter:blur(2px)}
#hwv .hwk__d.is-tmr{background:rgba(255,255,255,.26);border-color:rgba(255,255,255,.5)}
#hwv .hwk__day{font-weight:800;font-size:11.5px}
#hwv .hwk__ic{font-size:16px;line-height:1}
#hwv .hwk__t{display:inline-flex;gap:4px;font-variant-numeric:tabular-nums;font-weight:800}
#hwv .hwk__hi{color:#ffd2c2}
#hwv .hwk__lo{color:#cfe4ff}
#hwv .hwk__pp{font-size:11px;font-weight:700;color:rgba(255,255,255,.85)}
#hwv .hwk__pp.is-wet{color:#bfe3ff}
@media (max-width:760px){
  #hwv .hwv__bar1{flex-wrap:wrap}
  #hwv .hwk{order:5;flex:1 1 100%;margin:8px 0 0;overflow-x:auto;scrollbar-width:none}
  #hwv .hwk::-webkit-scrollbar{display:none}
  #hwv .hwk__row{overflow:visible}
  #hwv .hwk__d.is-cut{display:inline-flex}
}
/* 天気：「現場に送る」カード（2026-10-02） */
#hwv.hws-on .hwv__foot .hwv__share,#hwv.hws-on .hwv__foot .hwv__copy{display:none!important}
#hwv .hws{margin:18px 24px 12px;border:1px solid #cfe0f5;border-radius:16px;background:linear-gradient(180deg,#f3f8ff,#fff);overflow:hidden;box-shadow:0 10px 24px -18px rgba(31,111,209,.6)}
#hwv .hws__hd{display:flex;gap:12px;align-items:center;padding:14px 18px;background:linear-gradient(120deg,#1f6fd1,#1a56a8);color:#fff}
#hwv .hws__ic{flex:none;display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.18);font-size:20px}
#hwv .hws__tt{display:grid;gap:2px;min-width:0}
#hwv .hws__tt b{font-size:17px;font-weight:800;letter-spacing:.02em;color:#fff}
#hwv .hws__tt span{font-size:12.5px;color:rgba(255,255,255,.88);line-height:1.5}
#hwv .hws__body{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px;padding:16px 18px;align-items:start}
#hwv .hws__pvw{min-width:0;display:grid;gap:6px}
#hwv .hws__pvl{font-size:11.5px;font-weight:800;color:#1a56a8;letter-spacing:.06em}
#hwv .hws__pv{margin:0;white-space:pre-wrap;word-break:break-all;font-family:inherit;font-size:13px;line-height:1.7;color:#1b2333;background:#fff;border:1px dashed #b9cfee;border-radius:10px;padding:10px 12px;max-height:190px;overflow:auto;user-select:all}
#hwv .hws__btns{display:grid;gap:8px}
#hwv .hws__b{display:flex;align-items:center;gap:10px;border-radius:12px;padding:11px 14px;font-size:14.5px;font-weight:800;text-decoration:none!important;cursor:pointer;border:1px solid transparent;font-family:inherit;line-height:1.3;transition:transform .15s,box-shadow .15s}
#hwv .hws__b:hover{transform:translateY(-1px);box-shadow:0 8px 16px -10px rgba(0,0,0,.4)}
#hwv .hws__bi{flex:none;display:grid;place-items:center;min-width:34px;height:26px;border-radius:7px;font-size:12px;font-weight:900;padding:0 6px}
#hwv .hws__line{background:#06C755;color:#fff!important}
#hwv .hws__line .hws__bi{background:#fff;color:#06C755}
#hwv .hws__mail{background:#1f6fd1;color:#fff!important}
#hwv .hws__mail .hws__bi{background:rgba(255,255,255,.2);color:#fff;font-size:15px}
#hwv .hws__other{background:#fff;color:#1b2333;border-color:#cfd8e6}
#hwv .hws__other .hws__bi{background:#eef2f7;color:#1b2333;font-size:15px}
#hwv .hws__copy{background:#fff;color:#1b2333;border-color:#cfd8e6}
#hwv .hws__copy .hws__bi{background:#eef2f7;color:#1b2333;font-size:15px}
#hwv .hws.is-wait .hws__b{opacity:.5;pointer-events:none}
#hwv .hws__msg{margin:0;padding:0 18px;max-height:0;overflow:hidden;font-size:13px;font-weight:700;color:#0f7a55;transition:max-height .25s,padding .25s}
#hwv .hws__msg.is-on{max-height:60px;padding:0 18px 14px}
@media (max-width:760px){
  #hwv .hws{margin:14px 16px 10px}
  #hwv .hws__hd{padding:12px 14px}
  #hwv .hws__tt b{font-size:15.5px}
  #hwv .hws__body{grid-template-columns:minmax(0,1fr);padding:12px 14px;gap:12px}
  #hwv .hws__btns{grid-template-columns:1fr 1fr}
  #hwv .hws__b{font-size:13.5px;padding:10px 10px;gap:8px}
  #hwv .hws__pv{max-height:150px;font-size:12.5px}
}
@media (prefers-reduced-motion:reduce){#hwv .hws__b,#hwv .hws__msg{transition:none}}
/* 天気：カードのデザインを統一してグレードアップ（2026-10-02） */
html body #hwv{--hc-line:#e2e8f0;--hc-sh:0 1px 2px rgba(16,24,40,.06),0 16px 32px -22px rgba(20,33,61,.55)}
html body #hwv .hwv__h{position:relative;padding-left:12px!important;font-size:16px;letter-spacing:.02em}
html body #hwv .hwv__h:before{content:"";position:absolute;left:0;top:3px;height:18px;width:4px;border-radius:3px;background:linear-gradient(#e07a3c,#c2521f)}
html body #hwv .hwv__h span{font-size:12px;color:#7b8597}

/* 数値の4枚 */
html body #hwv .hwv__stats{gap:12px;padding-top:20px}
html body #hwv .hwv__s{overflow:hidden;border-radius:16px;padding:16px 16px 14px;border:1px solid color-mix(in srgb,var(--c) 26%,var(--hc-line));background:linear-gradient(160deg,color-mix(in srgb,var(--c) 13%,#fff) 0%,#fff 62%);box-shadow:var(--hc-sh);grid-template-columns:48px minmax(0,1fr);column-gap:12px;transition:transform .15s,box-shadow .15s}
html body #hwv .hwv__s:before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,var(--c),color-mix(in srgb,var(--c) 55%,#fff))}
html body #hwv .hwv__s:hover{transform:translateY(-2px);box-shadow:0 1px 2px rgba(16,24,40,.06),0 20px 34px -20px rgba(20,33,61,.6)}
html body #hwv .hwv__si{width:48px;height:48px;border-radius:14px;background:linear-gradient(145deg,rgba(255,255,255,.28),rgba(0,0,0,.14)),var(--c);box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 6px 14px -6px var(--c)}
html body #hwv .hwv__si svg{width:24px;height:24px}
html body #hwv .hwv__sl{font-size:12px;color:#4a5568;letter-spacing:.03em}
html body #hwv .hwv__s b{font-size:28px;letter-spacing:-.01em}
html body #hwv .hwv__s b em{font-size:12.5px}
html body #hwv .hwv__sn{top:0;right:0;border-radius:0 15px 0 12px;padding:2px 11px 3px;font-size:11px;font-weight:900;letter-spacing:.06em;box-shadow:0 4px 10px -6px var(--c)}

/* 1時間ごとの天気 */
html body #hwv .hwv__sec{margin:16px 24px 0;padding:16px 16px 14px;background:#fff;border:1px solid var(--hc-line);border-radius:16px;box-shadow:var(--hc-sh)}
html body #hwv .hwv__hrs{border-radius:12px;background:linear-gradient(#fbfcfe,#f5f8fc)}
html body #hwv .hwv__hr.is-now{background:linear-gradient(#1d3157,#14213d);box-shadow:0 0 0 1px #14213d}

/* 暑さ指数 */
html body #hwv .hwv__wb{margin:16px 24px 0;border-radius:16px;border-color:var(--hc-line);box-shadow:var(--hc-sh)}
html body #hwv .hwv__wbhd{position:relative;background-image:linear-gradient(120deg,rgba(255,255,255,.16),rgba(255,255,255,0) 45%,rgba(0,0,0,.10))!important}
html body #hwv .hwv__wbbd{background:linear-gradient(#fff,#fbfcfe)}
html body #hwv .hwv__bar{border-radius:9px;box-shadow:inset 0 1px 2px rgba(0,0,0,.08)}

/* 気温と雨量 */
html body #hwv .hwv__more.is-open{margin:16px 24px 0;padding:16px 16px 8px;background:#fff;border:1px solid var(--hc-line);border-radius:16px;box-shadow:var(--hc-sh)}

/* 現場に送る */
html body #hwv .hws{box-shadow:var(--hc-sh);border-color:#cfe0f5}

@media (max-width:760px){
  html body #hwv .hwv__stats{gap:10px;padding-top:14px}
  html body #hwv .hwv__s{padding:14px 12px 12px;grid-template-columns:38px minmax(0,1fr);column-gap:9px}
  html body #hwv .hwv__si{width:38px;height:38px;border-radius:11px}
  html body #hwv .hwv__si svg{width:20px;height:20px}
  html body #hwv .hwv__s b{font-size:22px}
  html body #hwv .hwv__sl{font-size:11px}
  html body #hwv .hwv__sec{margin:14px 12px 0;padding:12px 10px 10px}
  html body #hwv .hwv__wb{margin:14px 12px 0}
  html body #hwv .hwv__more.is-open{margin:14px 12px 0;padding:12px 10px 6px}
  html body #hwv .hws{margin:14px 12px 10px}
}
@media (prefers-reduced-motion:reduce){html body #hwv .hwv__s{transition:none}}
