/* 歯科診療時間くらべ 追加スタイル(regional-ds 1.0.0 の上に重ねる。ジャンル定義 design.css_file)
   共通 CSS の緑系の色は build.mjs が design.recolor で藍色へ付け替える。ここでは「時計の文字盤・昼から夜へ移る空」の世界観(曜日×時間の表・時刻の等幅数字・文字盤の円)を足す。
   診療時間エンジン(hours-core.js / app-hours.js)の画面部品: .hoursQ(検索パネル)・.hoursTable(曜日別の表)・.cityHours(市区町村の内訳) */
.brandname{font-weight:800;letter-spacing:.02em}
.resultTitle{font-size:18px}
.resultMeta{margin:7px 0 0;font-size:13px;line-height:1.7;color:var(--muted);font-weight:650}
/* 地域トップの帯: 昼から夜へ移る空と、文字盤の円 */
.regionTop{background:radial-gradient(circle at 92% 18%,rgba(255,208,90,.34) 0 7%,transparent 7.4%),radial-gradient(circle at 92% 18%,transparent 0 17%,rgba(42,39,102,.09) 17.4% 17.9%,transparent 18.2%),linear-gradient(180deg,#e4e1f6 0%,var(--base) 100%)}
.eyebrow::before{background:#ff9f68;box-shadow:0 0 0 5px #ffe28a}
.prefStamp{color:#d7d4ee}
.tag.on{background:#ffe9a8;color:#3a2f00;border-color:#f0cf66}
.chip.active,.chip[aria-pressed=true]{background:#ffe28a;border-color:#f0c640;color:#2d2400}
.resultCard,.card,.findBox,.pDataCard,.filterSide .body{border-radius:18px}
/* 診療時間の検索パネル */
.hoursQ{border-top:0;padding-top:4px}
.hoursQTitle{font-size:13px!important;letter-spacing:0!important;color:var(--deep)!important;margin-bottom:8px!important;padding:8px 10px;border-radius:10px;background:linear-gradient(90deg,#ffe28a,#ffd05a);display:inline-block}
.hqLabel{display:block;font-size:12px;font-weight:800;color:var(--ink);margin:10px 0 4px}
.hqField{min-height:46px!important;padding:0 11px!important}
.hqField select:disabled{opacity:.55}
.hqDef{margin-top:10px;font-size:12px;line-height:1.7;color:var(--muted)}
.hqDef summary{cursor:pointer;font-weight:800;color:var(--deep);min-height:44px;display:flex;align-items:center}
.hqDef ul{margin:6px 0 0;padding-left:18px}
/* 曜日別の診療時間の表 */
.hoursTable td,.hoursTable th{font-variant-numeric:tabular-nums}
.hoursTable td strong{font-weight:800;color:var(--deep);letter-spacing:.02em}
.hoursTable th[scope=row]{background:#ecebf8;color:var(--deep)}
.hoursTable tr:nth-child(6) th[scope=row],.hoursTable tr:nth-child(7) th[scope=row],.hoursTable tr:nth-child(8) th[scope=row]{background:#ffe9a8;color:#3a2f00}
.hoursWarn{margin:10px 0 0;padding:10px 12px;border-radius:10px;background:#fff6dc;border:1px solid #f0cf66;color:#3a2f00;font-size:13px;line-height:1.7;font-weight:650}
.hoursBySubject{margin-top:12px;font-size:13px}
.hoursBySubject summary{cursor:pointer;font-weight:800;color:var(--deep);min-height:44px;display:flex;align-items:center}
/* 市区町村ページの診療時間の内訳 */
.cityHours{margin:0 0 22px;padding:18px 20px;border-radius:18px;background:var(--paper);border:1px solid var(--line)}
.cityHours h2{margin:0 0 6px;font-size:16px}
.cityHours p{margin:0 0 12px;font-size:14px;color:var(--muted)}
.cityHoursList{list-style:none;margin:0;padding:0;display:flex;gap:10px;flex-wrap:wrap}
.cityHoursList a{display:flex;align-items:baseline;gap:6px;padding:10px 14px;border-radius:12px;background:#ecebf8;color:var(--deep);text-decoration:none;font-size:13px;font-weight:700;min-height:44px;align-items:center}
.cityHoursList a strong{font-size:20px;font-variant-numeric:tabular-nums}
.cityHoursList a:hover{background:#ffe28a}
.portal{--a0:#cfd2f0;--a1:#e0d3f3;--a2:#f6e3a8;--a3:#f6cdb4;--a4:#d9dff3;--a5:#c9d6e8}
.pNotice{background:#1f1d47;color:#ece9ff}
.pChooser,.pMapBox{border-radius:26px}
/* スマホ(700px 以下)でも装飾の円(太陽と文字盤の輪)を右上の隅に小さく残す。文字(濃い藍)との重なりはコントラスト検査で確認 */
@media (max-width:700px){.regionTop{background:radial-gradient(circle at 95% 5%,rgba(255,208,90,.38) 0 9%,transparent 9.4%),radial-gradient(circle at 95% 5%,transparent 0 19%,rgba(42,39,102,.12) 19.4% 20%,transparent 20.4%),linear-gradient(180deg,#e4e1f6 0%,var(--base) 100%)}}
/* 条件の取り消し(×)は 44px 以上 */
.chip.pill{padding:0 0 0 14px}
.chip.pill button{min-width:44px;min-height:44px}
/* 地域トップの帯: 時刻のワンタップ検索(昼・午後・夜・午前の色の縁) */
.quickTimes{margin-top:22px;max-width:760px}
.qtTitle{margin:0 0 8px;font-size:13px;font-weight:800;color:var(--deep)}
.quickTimes ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.quickTime{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:8px;align-items:baseline;min-height:64px;padding:9px 12px 9px 14px;border-radius:14px;background:#fffffe;border:1px solid var(--line);border-left:7px solid #ffd05a;color:var(--ink);text-decoration:none}
.quickTimes li:nth-child(2) .quickTime{border-left-color:#ff9f68}
.quickTimes li:nth-child(3) .quickTime{border-left-color:#2a2766}
.quickTimes li:nth-child(4) .quickTime{border-left-color:#ffe9a8}
.qtLabel{font-size:16px;font-weight:800;font-variant-numeric:tabular-nums;color:var(--deep)}
.qtNote{font-size:12px;font-weight:700;color:var(--muted);text-align:right}
.qtCount{grid-column:1/-1;font-size:13px;color:var(--muted);font-variant-numeric:tabular-nums}
.qtCount strong{font-size:18px;color:var(--ink)}
.quickTime:hover{background:#ffe28a;border-color:#f0c640}
.quickTime:hover .qtCount,.quickTime:hover .qtNote{color:#2d2400}
.qtFoot{margin:8px 0 0;font-size:12px;line-height:1.7;color:var(--muted)}
@media (max-width:700px){.quickTimes ul{grid-template-columns:repeat(2,minmax(0,1fr))}.qtLabel{font-size:15px}}
/* 全国版の地図タイル: 時間帯(昼・夕・夜)の色。県内で平日19時以降も診療する医院の割合を 3 等分(build.mjs が実データから計算) */
.pTile.tb0,.pLegend i.tb0{background:#ffe9a8;color:#2d2400}
.pTile.tb1,.pLegend i.tb1{background:#ffb98a;color:#3a1d00}
.pTile.tb2,.pLegend i.tb2{background:#4b46b0;color:#fff}
.pLegend i.tb0,.pLegend i.tb1,.pLegend i.tb2{border:1px solid rgba(255,255,255,.55)}
a.pTile.tb2:hover,a.pTile.tb2.sel{color:#1f1d47}
.pLegend.bands{grid-template-columns:1fr;gap:5px}
.pMapBandNote{margin:9px 0 0;font-size:13px;line-height:1.6;color:#dcd9f3;max-width:23em}
