:root{--canvas:#fff;--soft:#f7f7f7;--tint-50:#fdf0e6;--tint-100:#fbe3d1;--tint-200:#f6cdaf;--hairline:#ebebec;--hairline-strong:#d8d9da;--primary:#e8773c;--primary-press:#d9682a;--on-primary:#0a1f33;--accent-text:#a93f0b;--navy:#0a1f33;--ink:#0a1f33;--body:#364452;--muted:#566370;--link:#a93f0b;--error:#de2828;--radius-control:8px;--radius-card:8px;--radius-panel:16px;--gutter:16px;--max-list:1120px;--max-detail:720px;--font:"Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Noto Sans CJK JP", "Yu Gothic UI", "Yu Gothic", Meiryo, system-ui, sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--canvas);color:var(--body);font-family:var(--font);margin:0;font-size:16px;font-weight:400;line-height:1.7}h1,h2,h3{color:var(--ink);font-feature-settings:"palt";letter-spacing:.01em;text-wrap:balance;word-break:auto-phrase;margin:0 0 8px;font-weight:700;line-height:1.4}.n,.meta,.list-bar,.hours,.tel-btn{font-variant-numeric:tabular-nums}h1{font-size:28px}h2{margin-top:32px;font-size:22px}h3{font-size:18px}p{margin:0 0 12px}a{color:var(--link)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.wrap{max-width:var(--max-list);padding:0 var(--gutter);margin:0 auto}.wrap--detail{max-width:var(--max-detail)}.skip{background:var(--canvas);padding:8px 12px;position:absolute;top:0;left:-9999px}.skip:focus{z-index:10;top:8px;left:8px}.site-header{border-bottom:1px solid var(--hairline)}.site-header .wrap{justify-content:space-between;align-items:center;min-height:64px;display:flex}.brand{align-items:center;padding:4px 0;display:inline-flex}.brand img{width:auto;height:52px;display:block}.site-nav{gap:16px;font-size:14px;display:flex}.site-nav a{color:var(--body);align-items:center;min-height:44px;display:inline-flex}.site-footer{background:var(--navy);color:#d6dee6;margin-top:56px;padding:28px 0 36px;font-size:14px}.footer-nav{border-bottom:1px solid #ffffff2e;flex-wrap:wrap;gap:4px 20px;margin-bottom:16px;padding-bottom:12px;display:flex}.footer-nav a{align-items:center;min-height:44px;display:inline-flex}.site-footer p{max-width:60em;margin-bottom:8px}.site-footer a{color:#fff}main{padding-bottom:8px}.page-head{padding:24px 0 8px}.lead{color:var(--body);max-width:40em;font-size:16px}.breadcrumb{color:var(--muted);padding-top:16px;font-size:14px}.breadcrumb a{color:var(--muted)}.entry-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin:0;padding:0;list-style:none;display:grid}.entry-grid a{min-height:56px;color:var(--ink);border:1px solid var(--hairline-strong);border-radius:var(--radius-card);background:var(--canvas);justify-content:space-between;align-items:center;gap:8px;padding:8px 16px;font-weight:700;text-decoration:none;display:flex}.entry-grid a:hover{background:var(--tint-50)}.entry-grid--wide{grid-template-columns:1fr}.entry-grid .n{color:var(--muted);white-space:nowrap;font-size:14px;font-weight:400}.region-block{margin-top:16px}.region-block h3{color:var(--ink);margin:0 0 8px;font-size:16px}.panel{background:var(--tint-50);border-radius:var(--radius-panel);margin:24px 0;padding:16px 20px}.panel--soft{background:var(--soft)}.panel h2,.panel h3{margin-top:0}.list-bar{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:4px 12px;margin:16px 0 0;font-size:14px;display:flex}.list-bar strong{color:var(--ink);font-size:18px}.card-list{grid-template-columns:minmax(0,1fr);gap:12px;margin:16px 0 0;padding:0;list-style:none;display:grid}.shop-card{border:1px solid var(--hairline-strong);border-radius:var(--radius-card);background:var(--canvas);flex-direction:column;gap:8px;padding:16px;display:flex}.shop-card--basic{background:var(--soft)}.shop-card__head{align-items:flex-start;gap:12px;display:flex}.shop-card__title{flex:1;min-width:0}.shop-card h3{overflow-wrap:anywhere;margin:0 0 4px;font-size:18px;line-height:1.4}.shop-card h3 a{color:var(--ink);text-decoration:none}.shop-card h3 a:hover{text-decoration:underline}.shop-card p{margin:0}.shop-card .place{color:var(--muted);font-size:14px}.face{background:var(--tint-100);width:44px;height:44px;color:var(--accent-text);border-radius:12px;flex:none;place-items:center;display:grid}.face svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:26px;height:26px}.face--paw svg{fill:currentColor;stroke:none}.shop-card--basic .face{background:var(--hairline);color:var(--muted)}.shop-card__tags{flex-wrap:wrap;gap:4px 6px;margin:0;padding:0;list-style:none;display:flex}.tag{background:var(--tint-200);color:var(--navy);border-radius:9999px;padding:1px 10px;font-size:13px;font-weight:700;line-height:1.4}.tag small{margin-left:4px;font-size:12px;font-weight:400}.tag--unconfirmed{background:var(--soft);color:var(--muted);border:1px dashed var(--hairline-strong);font-weight:400}.tag--vet{color:#0b3f7a;background:#e8f0fb}.shop-card__tags .badge{padding:1px 10px;font-size:13px}.shop-card__facts{border-top:1px solid var(--hairline);flex-direction:column;gap:6px;padding-top:8px;display:flex}.size-chips{flex-wrap:wrap;gap:4px 6px;margin:0;padding:0;list-style:none;display:flex}.size-chip{border:1px solid var(--hairline-strong);background:var(--canvas);color:var(--body);border-radius:6px;padding:1px 8px;font-size:13px;line-height:1.4}.hours{color:var(--body);font-size:14px}.hours .k{color:var(--muted);margin-right:4px;font-size:13px}.tel-btn{box-sizing:border-box;overflow-wrap:anywhere;border-radius:var(--radius-control);border:2px solid var(--primary);max-width:100%;min-height:44px;color:var(--accent-text);align-items:center;gap:6px;padding:0 14px;font-weight:700;text-decoration:none;display:inline-flex}.tel-btn:hover{background:var(--tint-50)}.sibling{color:var(--body);background:var(--tint-50);border-radius:8px;padding:6px 10px;font-size:13px}.shop-card .meta{color:var(--muted);flex-wrap:wrap;justify-content:space-between;gap:2px 12px;margin-top:auto;font-size:13px;display:flex}.chips{flex-wrap:wrap;gap:6px;margin:8px 0;padding:0;list-style:none;display:flex}.chip a{color:inherit;text-decoration:none}.chip{border:1px solid var(--hairline-strong);color:var(--body);background:var(--canvas);border-radius:9999px;align-items:center;padding:2px 10px;font-size:14px;line-height:1.4;display:inline-flex}.chip--unconfirmed{border-style:dashed}.badge{background:var(--tint-100);color:var(--navy);border-radius:9999px;align-items:center;gap:4px;padding:2px 10px;font-size:14px;font-weight:700;display:inline-flex}.badge--basic{background:var(--soft);color:var(--muted);border:1px solid var(--hairline-strong);font-weight:400}.detail-table{border-collapse:collapse;width:100%;margin:16px 0}.detail-table th,.detail-table td{text-align:left;vertical-align:top;border-bottom:1px solid var(--hairline);padding:12px 0}.detail-table th{width:8.5em;color:var(--muted);padding-right:12px;font-size:14px;font-weight:700}.reg-lines span{display:block}.src{color:var(--muted);margin-top:2px;font-size:14px;display:block}.sources{color:var(--muted);font-size:14px}.sources ul{word-break:break-all;margin:4px 0 0;padding-left:1.2em}.notice{background:var(--tint-50);border-radius:var(--radius-panel);margin:16px 0;padding:12px 16px}.btn{border:1px solid var(--primary);border-radius:var(--radius-control);background:var(--primary);min-height:44px;color:var(--on-primary);font:inherit;cursor:pointer;justify-content:center;align-items:center;padding:8px 20px;font-weight:700;text-decoration:none;display:inline-flex}.btn:hover{background:var(--primary-press);border-color:var(--primary-press)}.btn--sub{background:var(--soft);border-color:var(--hairline-strong);color:var(--accent-text)}.btn--sub:hover{background:var(--tint-50);border-color:var(--hairline-strong)}.search-form{margin:8px 0 0}.search-form>details>summary{cursor:pointer;min-height:48px;color:var(--ink);background:var(--soft);border:1px solid var(--hairline-strong);border-radius:var(--radius-control);align-items:center;padding:0 16px;font-weight:700;display:flex}.search-form>details[open]>summary{background:var(--tint-50);border-color:var(--primary);border-bottom-right-radius:0;border-bottom-left-radius:0}.search-form>details>summary::marker{color:var(--accent-text)}.search-form>details[open]{padding-bottom:8px}.search-form .count{color:var(--muted);font-size:14px;font-weight:400}.field{margin:12px 0}.field label,.inline-search label{color:var(--ink);margin-bottom:4px;font-size:14px;font-weight:700;display:block}input[type=search],input[type=email],input[type=url],input[type=text],input[type=tel],textarea,select{border:1px solid var(--hairline-strong);border-radius:var(--radius-control);width:100%;min-height:44px;font:inherit;color:var(--body);background:var(--canvas);padding:8px 12px}textarea{resize:vertical;min-height:8em;line-height:1.6}select{appearance:auto}input[aria-invalid=true],textarea[aria-invalid=true],select[aria-invalid=true]{border-color:var(--error);border-width:2px}.form-error{color:var(--error);margin:4px 0 0;font-size:14px;font-weight:700}.form-error:before{content:"⚠ "}.error-summary{border:2px solid var(--error);border-radius:var(--radius-card);color:var(--body);margin:16px 0;padding:12px 16px}.error-summary ul{margin:4px 0 0;padding-left:1.2em}.error-summary a{color:var(--error)}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.report-cta{color:var(--muted);margin:24px 0 8px;font-size:14px}.report-cta .btn{margin-top:8px}.draft-banner{border:2px dashed var(--navy);background:var(--tint-50);border-radius:var(--radius-card);margin:16px 0;padding:12px 16px;font-size:14px}.draft-banner strong{color:var(--navy);display:block}.unset{border:1px dashed var(--error);border-radius:var(--radius-control);color:var(--ink);background:var(--canvas);padding:0 8px;font-size:14px;display:inline-block}.unset strong{color:var(--error);margin-right:4px}.legal h2{margin-top:28px;font-size:20px}.legal h3{margin-top:16px;font-size:16px}.legal ol,.legal ul{padding-left:1.4em}.legal li{margin-bottom:6px}.help{color:var(--muted);margin:4px 0 0;font-size:14px}fieldset{border:0;margin:16px 0;padding:0}legend{color:var(--ink);margin-bottom:4px;padding:0;font-size:14px;font-weight:700}.check-grid{grid-template-columns:repeat(2,1fr);gap:4px 8px;display:grid}.check-grid--1{grid-template-columns:1fr}.check{align-items:center;gap:8px;min-height:44px;display:flex}.check input{width:20px;height:20px;accent-color:var(--primary);flex:none}.check .n{color:var(--muted);font-size:14px}.region-group{border-top:1px solid var(--hairline);padding:4px 0}.region-group summary{cursor:pointer;min-height:44px;color:var(--body);align-items:center;font-weight:400;display:flex}.actions{flex-wrap:wrap;gap:8px;margin:16px 0 8px;display:flex}.actions .btn{flex:160px}.inline-search-row{gap:8px;display:flex}.inline-search-row input{flex:1}.inline-search{margin-bottom:12px}.chips--active .chip{gap:6px;padding-right:4px}.chip-remove{min-width:28px;min-height:28px;color:var(--muted);justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.pager{justify-content:space-between;align-items:center;gap:8px;margin:24px 0 0;font-size:14px;display:flex}@media (width>=480px){.entry-grid{grid-template-columns:repeat(3,1fr)}.entry-grid--wide{grid-template-columns:repeat(2,1fr)}.check-grid{grid-template-columns:repeat(3,1fr)}}@media (width>=768px){h1{font-size:32px}.entry-grid,.entry-grid--wide,.check-grid{grid-template-columns:repeat(4,1fr)}.check-grid--1{grid-template-columns:1fr 1fr}.card-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){h1{font-size:36px}.card-list{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.check-grid--counts{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}.map-block{margin:24px 0}.map-frame{border:1px solid var(--hairline-strong);border-radius:var(--radius-panel);background:var(--soft);width:100%;height:320px;display:block}.map-note{color:var(--muted);margin-top:8px;font-size:13px}.route{margin:16px 0 0;padding:0;list-style:none;position:relative}.route:before{content:"";background:var(--hairline-strong);width:2px;position:absolute;top:14px;bottom:14px;left:15px}.stop{padding:0 0 24px 48px;position:relative}.stop:last-child{padding-bottom:0}.stop .pin{fill:var(--primary);position:absolute;top:4px;left:16px;transform:translate(-50%)}.stop .pin circle{fill:#fff}.stop--s .pin{width:16px;height:22px}.stop--m .pin{width:22px;height:30px}.stop--l .pin{width:30px;height:40px}.stop__body h3{align-items:baseline;gap:8px;margin:0 0 8px;font-size:16px;display:flex}.stop__body h3 .n{color:var(--muted);font-variant-numeric:tabular-nums;font-size:14px;font-weight:400}.hero{background:var(--navy);color:#fff;margin-bottom:8px;padding:28px 0 24px}.hero h1{color:#fff;max-width:18em;margin:0 0 8px;font-size:26px;line-height:1.35}.hero__lead{color:#d6dee6;max-width:34em;margin:0 0 16px}.hero__search label{color:#fff;margin-bottom:4px;font-size:14px;font-weight:700;display:block}.hero__search input[type=search]{border-color:#0000}.hero__links-label{color:#d6dee6;margin:16px 0 6px;font-size:14px}.hero__links{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.hero__links a{color:#fff;border:1px solid #ffffff80;border-radius:9999px;align-items:center;min-height:44px;padding:0 16px;font-weight:700;text-decoration:none;display:inline-flex}.hero__links a:hover{background:#ffffff1f}.hero a:focus-visible,.hero button:focus-visible,.hero input:focus-visible{outline-color:#fff}@media (width>=768px){.hero h1{font-size:34px}.hero{padding:40px 0 36px}}.contact-actions{flex-wrap:wrap;gap:8px;margin:12px 0 0;display:flex}.group-h{border-bottom:2px solid var(--navy);margin:24px 0 0;padding-bottom:4px;font-size:18px}.group-h+.detail-table{margin-top:0}.shop-card--quiet .face{background:var(--hairline);color:var(--navy)}.shop-card--quiet .tag{background:var(--soft);color:var(--navy);border:1px solid var(--hairline-strong)}.shop-card--quiet .tel-btn{border-color:var(--navy);color:var(--navy)}.article--quiet .group-h{border-bottom-color:var(--hairline-strong)}.article--quiet .tel-btn{border-color:var(--navy);color:var(--navy)}.pf{border:1px solid var(--hairline-strong);border-radius:var(--radius-card);margin:16px 0;padding:8px 16px 16px}.pf legend{padding:0 8px;font-size:16px}.lbl{color:var(--ink);margin:0 0 4px;font-size:14px;font-weight:700}.sub{color:var(--muted);margin:12px 0 4px;font-size:14px;font-weight:400;display:block}.hours-grid{gap:6px;margin:4px 0;display:grid}.hours-grid .hours-row{grid-template-columns:2em 1fr;align-items:center;gap:8px;margin:0;font-weight:700;display:grid}.hours-grid .hours-row span{color:var(--ink);font-size:16px}.price-row{grid-template-columns:1.4fr 1fr;gap:8px;margin-bottom:8px;display:grid}.vac-grid{gap:8px;display:grid}.vac-grid label{color:var(--ink);gap:4px;font-size:14px;font-weight:700;display:grid}.preview dl{grid-template-columns:8em 1fr;gap:8px 12px;margin:0;display:grid}.preview dt{color:var(--muted);font-size:14px;font-weight:700}.preview dd{overflow-wrap:anywhere;margin:0}@media (width>=768px){.hours-grid{grid-template-columns:1fr 1fr}.vac-grid{grid-template-columns:repeat(3,1fr)}}.tagline{color:var(--ink);background:var(--tint-50);border-radius:var(--radius-card);margin:12px 0;padding:12px 16px;font-size:16px}.src-link{margin-top:2px;font-size:13px;display:block}
