:root{color-scheme:light;--paper:#faf7f0;--surface:#fffefa;--ink:#362c24;--sub:#746c61;--line:#e7dfd1;--teal:#306d63;--soft:#eaf2eb;--rust:#ac4e2c;--rust-soft:#f8ede4}
*{box-sizing:border-box}html{scroll-padding-bottom:100px}body{margin:0;background:#f1eee7;color:var(--ink);font:14px/1.75 -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif}#family-store-detail button,#family-store-detail input,#family-store-detail select{font:inherit}#family-store-detail button,#family-store-detail a,#family-store-detail summary{touch-action:manipulation}#family-store-detail button,#family-store-detail summary{cursor:pointer}#family-store-detail button:disabled{cursor:default}#family-store-detail a{color:var(--teal)}#family-store-detail a:focus-visible,#family-store-detail button:focus-visible,#family-store-detail input:focus-visible,#family-store-detail select:focus-visible,#family-store-detail summary:focus-visible{outline:3px solid #cb8b45;outline-offset:3px}#family-store-detail [hidden]{display:none!important}#family-store-detail .sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:-90px;left:10px;z-index:100;background:var(--surface);padding:10px}.skip:focus{top:10px}
#family-store-detail{padding:18px 12px 110px;color-scheme:light}#family-store-detail .ks-phone{box-shadow:0 10px 35px #44301c10;overflow:clip}#family-store-detail a{text-decoration:none}#family-store-detail .ks-brand{display:block}#family-store-detail .ks-brandlogo{width:158px;background:transparent}#family-store-detail .ks-title h1{font-size:30px;line-height:1.4;font-weight:750;letter-spacing:-.7px;margin:0;color:var(--ink);overflow-wrap:anywhere}#family-store-detail .ks-story h2{font-size:23px;line-height:1.65;font-weight:650;letter-spacing:-.5px;color:var(--ink);margin:12px 0}#family-store-detail .ks-section>h2,#family-store-detail .ks-photos>h2{font-size:20px;line-height:1.5;letter-spacing:-.5px;font-weight:700;margin:6px 0 18px;color:var(--ink)}#family-store-detail .ks-photos>h2{font-size:23px;margin-bottom:18px}#family-store-detail .ks-record>h3{font-size:14px;line-height:1.6;margin:12px 0 7px;font-weight:650}#family-store-detail .ks-ratinggrid .ks-review{text-decoration:none;color:var(--ink)}#family-store-detail .unknown-score{font-size:26px;letter-spacing:0}#family-store-detail .ks-sitemenu nav a{font-size:11px;line-height:1.6;min-height:40px;padding:8px 0;text-align:left;color:var(--sub)}#family-store-detail .ks-persistent{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:min(440px,100%);z-index:50;padding-bottom:max(10px,env(safe-area-inset-bottom));border-left:1px solid var(--line);border-right:1px solid var(--line)}#family-store-detail .ks-savednote{min-height:15px}#family-store-detail .ks-booking{text-decoration:none}#family-store-detail .booking-choice{display:block;width:100%;border:1px solid var(--line);border-radius:7px;padding:10px;margin-top:6px;text-align:left;color:var(--teal);background:var(--paper);font-size:12px}#family-store-detail .booking-choice.booking-first{background:var(--rust);border-color:var(--rust);color:var(--surface);font-weight:650;padding:13px 10px}#family-store-detail .unavailable{opacity:.65;font-size:12px}#family-store-detail .ks-reclink{display:block;color:var(--ink)}#family-store-detail .ks-reclink:after{content:'→'}#family-store-detail .ks-links{gap:7px}#family-store-detail .external-chip{display:flex;align-items:center;gap:5px;font-size:11px;padding:9px 10px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--teal);min-height:40px}#family-store-detail .inline-link{display:inline-block;font-size:12px;padding:7px 0;color:var(--teal)}#family-store-detail .ks-recordempty,#family-store-detail .empty-record{color:var(--sub);font-size:13px}#family-store-detail .live-map{height:220px;border:1px solid var(--line);border-radius:11px;overflow:hidden;background:var(--soft)}#family-store-detail .live-map iframe{width:100%;height:100%;border:0;display:block}#family-store-detail .menu-toggle{width:40px;height:40px;border:1px solid var(--line);border-radius:50%;color:var(--sub);background:var(--paper)}#family-store-detail .menu-panel{background:var(--surface);border-bottom:1px solid var(--line);padding:12px 24px;display:grid;grid-template-columns:1fr 1fr;gap:4px 15px}#family-store-detail .menu-panel a{color:var(--ink);padding:10px 0;font-size:12px}#family-store-detail .ks-visitphotos .ks-thumb{position:relative;padding:0;display:block}#family-store-detail .ks-visitphotos .ks-thumb img{width:100%;height:100%;object-fit:cover;display:block}#family-store-detail .ks-visitphotos .ks-thumb>span{position:absolute;bottom:0;background:var(--surface);font-size:10px;width:100%;padding:5px}
#family-store-detail .listing-shell{max-width:440px}#family-store-detail .home-hero,#family-store-detail .search-intro{padding:32px 24px 25px}#family-store-detail .home-hero h1,#family-store-detail .search-intro h1{font-size:30px;line-height:1.5;letter-spacing:-.8px;margin:9px 0 12px;font-weight:750}#family-store-detail .home-hero>p,#family-store-detail .search-intro>p{color:var(--sub);margin:0 0 23px}#family-store-detail .search-input{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:7px 7px 7px 14px;max-width:660px}#family-store-detail .search-input input{width:100%;min-width:0;border:0;background:transparent;color:var(--ink);font-size:16px;padding:9px 0;outline-offset:4px}#family-store-detail .search-input button{background:var(--teal);color:var(--surface);border:0;border-radius:8px;min-height:44px;min-width:60px;padding:8px 12px;font-weight:600}#family-store-detail .home-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;max-width:660px}#family-store-detail .primary-button,#family-store-detail .secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:5px;border:1px solid var(--line);border-radius:9px;padding:12px 16px;font-size:13px;min-height:44px;font-weight:600}#family-store-detail .primary-button{background:var(--rust);color:var(--surface)}#family-store-detail .secondary-button{background:var(--surface);color:var(--teal)}#family-store-detail .home-actions>*{flex:1}#family-store-detail .home-section{padding:28px 24px;border-top:1px solid var(--line)}#family-store-detail .home-section h2{font-size:22px;line-height:1.5;margin:6px 0 19px;letter-spacing:-.5px}#family-store-detail .home-section>p{color:var(--sub);font-size:13px}#family-store-detail .section-more{display:block;text-align:right;color:var(--teal);font-size:13px;font-weight:600;padding:12px 0 0}#family-store-detail .meal-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}#family-store-detail .meal-card{min-width:0;background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:18px}#family-store-detail .meal-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}#family-store-detail .meal-heading>div{min-width:0}#family-store-detail .meal-heading h2{font-size:19px;line-height:1.4;margin:4px 0 5px;letter-spacing:-.3px;overflow-wrap:anywhere}#family-store-detail .meal-heading h2 a{color:var(--ink)}#family-store-detail .ks-category{font-size:11px;color:var(--teal);font-weight:600}#family-store-detail .meal-access{font-size:11px;color:var(--sub)}#family-store-detail .save-icon{border:1px solid var(--line);background:var(--surface);color:var(--rust);border-radius:50%;width:36px;height:36px;flex-shrink:0;font-size:20px;padding:0}#family-store-detail .save-icon[aria-pressed=true]{background:var(--soft);color:var(--teal)}#family-store-detail .meal-welcome{font-size:12px;color:var(--teal);margin-top:14px;font-weight:600}#family-store-detail .meal-welcome small{display:inline-block;color:var(--sub);font-size:10px;font-weight:400;margin-left:5px}#family-store-detail .meal-story{border-radius:10px;background:var(--rust-soft);padding:15px;margin:12px 0}#family-store-detail .meal-story>small,#family-store-detail .meal-kids>small{font-size:10px;color:var(--rust);letter-spacing:1px;font-weight:600}#family-store-detail .meal-story>p{font-size:17px;line-height:1.65;margin:5px 0 0;font-weight:650}#family-store-detail .meal-kids{margin-top:12px;border-top:1px solid var(--line);padding-top:10px;font-size:12px}#family-store-detail .meal-kids>small{display:block;margin-bottom:4px}#family-store-detail .meal-drinks{font-size:11px;color:var(--sub);margin:0 0 12px}#family-store-detail .meal-tags{display:flex;flex-wrap:wrap;gap:5px}#family-store-detail .meal-tags span{font-size:10px;background:var(--paper);border-radius:4px;padding:3px 7px;color:var(--sub)}#family-store-detail .meal-detail{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:13px 0 0;margin-top:14px;font-size:12px;font-weight:600;color:var(--teal)}#family-store-detail .area-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}#family-store-detail .area-grid a{padding:16px;border:1px solid var(--line);border-radius:11px;background:var(--surface);color:var(--ink)}#family-store-detail .area-grid strong{font-size:14px;font-weight:600;display:block}#family-store-detail .area-grid span{display:block;font-size:11px;color:var(--teal);margin-top:5px}#family-store-detail .site-bottom{position:fixed;bottom:0;left:50%;transform:translateX(-50%);z-index:40;display:grid;grid-template-columns:repeat(4,1fr);width:min(440px,100%);border:1px solid var(--line);background:var(--surface);padding:8px 8px max(8px,env(safe-area-inset-bottom));gap:4px}#family-store-detail .site-bottom a{display:flex;align-items:center;justify-content:center;flex-direction:column;font-size:10px;color:var(--sub);padding:5px 2px;border-radius:8px;min-height:45px}#family-store-detail .site-bottom a>span{font-size:17px;line-height:1.2}#family-store-detail .site-bottom .active{background:var(--soft);color:var(--teal);font-weight:600}
#family-store-detail .search-intro{max-width:760px}#family-store-detail .search-filters{margin-top:13px;background:var(--surface);border:1px solid var(--line);border-radius:11px;font-size:13px}#family-store-detail .search-filters>summary{display:flex;justify-content:space-between;align-items:center;padding:14px;list-style:none;color:var(--ink);min-height:48px}#family-store-detail .search-filters>summary::-webkit-details-marker{display:none}#family-store-detail .filter-body{padding:0 14px 15px;display:grid;grid-template-columns:1fr 1fr;gap:15px}#family-store-detail .filter-body>label{font-size:11px;color:var(--sub);min-width:0}#family-store-detail .filter-body select{display:block;width:100%;margin-top:5px;padding:9px;border:1px solid var(--line);border-radius:8px;background:var(--paper);color:var(--ink);font-size:13px}#family-store-detail .filter-body fieldset{grid-column:1/-1;border:0;padding:0;margin:0;min-width:0}#family-store-detail .filter-body legend{font-size:11px;color:var(--sub);margin-bottom:7px}#family-store-detail .filter-chips{display:flex;gap:6px;flex-wrap:wrap}#family-store-detail .filter-chip{display:block;position:relative}#family-store-detail .filter-chip input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}#family-store-detail .filter-chip span{display:block;border:1px solid var(--line);background:var(--paper);color:var(--sub);padding:8px 10px;font-size:11px;border-radius:7px;min-height:38px}#family-store-detail .filter-chip input:checked+span{border-color:var(--teal);background:var(--soft);color:var(--teal)}#family-store-detail .filter-chip input:focus-visible+span{outline:3px solid #cb8b45;outline-offset:2px}#family-store-detail .filter-body .primary-button{grid-column:1/-1;background:var(--teal);border-color:var(--teal);color:var(--surface)}#family-store-detail .search-results{padding:0 24px 30px}#family-store-detail .result-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 0 13px}#family-store-detail .result-heading h2{font-size:17px;margin:0;font-weight:600}#family-store-detail .result-heading label{font-size:10px;color:var(--sub)}#family-store-detail .result-heading select{padding:8px 5px;border:1px solid var(--line);border-radius:7px;background:var(--surface);font-size:11px;color:var(--sub);margin-left:5px;max-width:150px}#family-store-detail .active-filters{display:flex;gap:7px;flex-wrap:wrap;margin-top:12px}#family-store-detail .active-filters button{padding:5px 9px;background:var(--soft);border:0;border-radius:7px;font-size:11px;color:var(--teal);min-height:33px}#family-store-detail .view-switch{display:flex;gap:5px;background:var(--line);border-radius:9px;padding:4px;margin:0 0 15px;max-width:360px}#family-store-detail .view-switch button{flex:1;background:transparent;color:var(--sub);border:0;padding:8px;border-radius:6px;font-size:12px}#family-store-detail .view-switch button[aria-pressed=true]{background:var(--surface);color:var(--teal);font-weight:600}#family-store-detail .pagination{display:flex;gap:6px;align-items:center;justify-content:center;flex-wrap:wrap;margin:20px 0 12px}#family-store-detail .pagination button{width:38px;height:38px;border:1px solid var(--line);border-radius:7px;background:var(--surface);color:var(--sub);padding:0}#family-store-detail .pagination button[aria-current=page]{background:var(--teal);color:var(--surface)}#family-store-detail .pagination button:disabled{opacity:.4}#family-store-detail #map-canvas{height:420px;border:1px solid var(--line);border-radius:12px;overflow:hidden}#family-store-detail #no-results{padding:30px 12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;font-size:13px;color:var(--sub)}#family-store-detail .map-popup-link{color:var(--teal);font-weight:600}
@media all{#family-store-detail .meal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}#family-store-detail .area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media all{#family-store-detail{padding:0 0 100px}#family-store-detail .ks-phone{border-radius:0;box-shadow:none;border-top:0;border-bottom:0}#family-store-detail .meal-grid{grid-template-columns:1fr}#family-store-detail .home-hero,#family-store-detail .search-intro{padding:25px 20px 20px}#family-store-detail .home-hero h1,#family-store-detail .search-intro h1{font-size:27px}#family-store-detail .home-section{padding:25px 18px}#family-store-detail .home-section h2{font-size:21px}#family-store-detail .search-results{padding:0 16px 25px}#family-store-detail .meal-card{padding:18px}#family-store-detail .area-grid a{padding:13px}#family-store-detail .home-actions>*{font-size:12px;padding:11px 8px}#family-store-detail .menu-panel{padding:10px 20px}#family-store-detail .search-input input{font-size:16px}#family-store-detail .live-map{height:210px}}
@media(max-width:380px){#family-store-detail .ks-title h1{font-size:27px}#family-store-detail .ks-story h2{font-size:20px}#family-store-detail .ks-section>h2{font-size:19px}#family-store-detail .ks-photos>h2{font-size:21px}#family-store-detail .home-hero,#family-store-detail .search-intro{padding-left:17px;padding-right:17px}#family-store-detail .home-hero h1,#family-store-detail .search-intro h1{font-size:25px}#family-store-detail .filter-body{gap:10px}#family-store-detail .meal-heading h2{font-size:18px}#family-store-detail .meal-story>p{font-size:17px}#family-store-detail .result-heading select{max-width:135px}#family-store-detail .result-heading label{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Common touch and text behavior, including narrow mobile widths. */
#family-store-detail .save-icon{width:44px;height:44px}
#family-store-detail .menu-toggle{width:44px;height:44px;flex-shrink:0}
#family-store-detail .ks-sitemenu nav a{min-height:44px}
#family-store-detail textarea{font:inherit}
#family-store-detail :is(main,section,article,form,fieldset){min-width:0}
#family-store-detail img{max-width:100%}

/* Existing area and category images travel with their destination links. */
#family-store-detail .area-grid .area-photo-card{padding:0;overflow:hidden;display:block}
#family-store-detail .area-photo-card img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
#family-store-detail .area-photo-card .area-copy{display:block;padding:12px;margin:0;color:var(--ink)}
#family-store-detail .area-photo-card strong{font-size:15px}
#family-store-detail .area-photo-card small{display:block;font-size:11px;color:var(--sub);margin-top:4px;line-height:1.6}
#family-store-detail .feature-image-card{display:block;border-radius:14px;overflow:hidden;background:var(--surface);border:1px solid var(--line);color:var(--ink)}
#family-store-detail .feature-image-card img{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;max-height:420px}
#family-store-detail .feature-image-card>span{display:block;padding:16px;font-size:13px;line-height:1.8}
#family-store-detail .feature-image-card b{display:block;color:var(--teal);text-align:right;margin-top:8px;font-size:12px}

#family-store-detail .meal-address{font-size:11px;line-height:1.7;color:var(--sub);margin:7px 0 0;white-space:normal;overflow-wrap:anywhere}#family-store-detail .ks-info dd{white-space:normal;overflow-wrap:anywhere}

#family-store-detail .listing-breadcrumb{padding:18px 24px 0;display:flex;flex-wrap:wrap;gap:8px;font-size:11px;color:var(--teal)}
#family-store-detail .listing-city-links,#family-store-detail .area-city-links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
#family-store-detail .listing-city-links a,#family-store-detail .area-city-links a{font-size:12px;background:var(--soft);color:var(--teal);padding:10px 12px;border-radius:8px;min-height:40px}
#family-store-detail .area-directory{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
#family-store-detail .area-directory-card{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:18px;min-width:0}
#family-store-detail .area-directory-title{display:flex;align-items:center;justify-content:space-between;gap:12px;color:var(--ink)}
#family-store-detail .area-directory-title strong{font-size:18px}#family-store-detail .area-directory-title span{font-size:12px;color:var(--teal)}
@media all{#family-store-detail .area-directory{grid-template-columns:1fr}#family-store-detail .listing-breadcrumb{padding-left:20px;padding-right:20px}#family-store-detail .search-intro h1{overflow-wrap:anywhere}}

/* 2026-10-27 冒頭3ブロック・注釈（SAさん指示） */
.kt-notice{margin:12px 0 0;padding:10px 12px;border-radius:8px;background:#fff6e5;border:1px solid #f0c98a;color:#7a4a00;font-size:12.5px;line-height:1.6;font-weight:600}
.kt-first{padding:18px;display:grid;gap:12px;background:var(--rust-soft,#fbf1ea)}
.kt-first>div{background:#fff;border-radius:10px;padding:14px 15px}
.kt-first p{margin:6px 0 0;font-size:15px;line-height:1.7;font-weight:600}
.kt-first .kt-kidsfood span{display:block;font-size:11px;color:var(--sub,#777);margin-top:4px}
.kt-three{display:grid;gap:8px;margin:12px 0}
.kt-three>div{border-radius:10px;padding:11px 13px;background:var(--rust-soft,#fbf1ea)}
.kt-three .kt-kidsok{background:#eaf5f1}
.kt-three small{font-size:10px;letter-spacing:1px;font-weight:650;color:var(--rust,#b5542c)}
.kt-three .kt-kidsok small{color:var(--teal,#2e7d6b)}
.kt-three p{margin:4px 0 0;font-size:13px;line-height:1.6;font-weight:600}
.kt-picks{margin:6px 0 0;padding-left:1.4em;font-size:15px;line-height:1.8;font-weight:650}
.kt-three .kt-picks{font-size:13.5px;line-height:1.7}
.kt-drink{font-size:13px!important;font-weight:500!important}
.kt-parentline{color:#999}
.kt-kidsok p{margin:0!important;font-weight:500!important}
.kt-first .kt-kidsok p{font-size:14px}
/* 2026-10-27 カードのジャンルを目立たせる */
.ks-category.kt-genre{display:inline-block;font-size:12px;font-weight:700;color:#fff!important;background:var(--teal,#2e7d6b);border-radius:999px;padding:3px 10px;margin-bottom:6px}
.ks-category.kt-genre:empty{display:none}

/* 2026-10-27 キッズメニュー確認リンク */#family-store-detail .kt-kidscheck{font-size:12px;color:var(--sub);margin:10px 0 6px}#family-store-detail .kt-kidslinks{display:flex;flex-wrap:wrap;gap:7px}

/* 2026-10-27 SAさん指示: TOP冒頭の設備・条件から探す */
#family-store-detail .home-facility{margin-top:14px;max-width:660px}#family-store-detail .home-facility-label{font-size:12px;color:var(--sub);margin:0 0 7px;font-weight:600}#family-store-detail .home-facility .secondary-button{width:100%;margin-top:9px}
/* 2026-10-27 最終チェック: PR表記・トップのほかのエリア */
#family-store-detail .ks-adnote{display:flex;align-items:center;gap:6px;margin:6px 0 8px;font-size:11px;color:var(--sub)}
#family-store-detail .ks-pr{display:inline-block;border:1px solid var(--sub);border-radius:3px;padding:0 4px;font-size:10px;line-height:1.5;font-weight:700;color:var(--sub)}
#family-store-detail .ks-prnote{font-size:11px;color:var(--sub);margin:10px 0 4px}
#family-store-detail .home-area-links{margin-top:12px}
/* 2026-10-27 最終チェック（中・低）: 文字の大きさ・押しやすさ・ラベル */
#family-store-detail :is(.site-bottom a,.filter-chip span,.meal-access,.meal-tags span,.meal-welcome small,.ks-category,.meal-drinks,.ks-adnote,.ks-prnote){font-size:12px}
#family-store-detail .filter-chip span{min-height:44px;display:flex;align-items:center}
#family-store-detail :is(.listing-city-links a,.area-city-links a){min-height:44px;display:inline-flex;align-items:center}
#family-store-detail .kt-parentline{color:var(--ink)}
#family-store-detail .kt-first .kt-kidsok .ks-storylabel{margin-bottom:4px}
#family-store-detail .ks-fixlink{display:inline-block;margin-top:10px}
#family-store-detail .ks-closednear{padding-left:1.2em;line-height:1.9}

/* 15: お知らせを小さな文字に */
#family-store-detail .ks-title .kt-notice{background:none;border:0;padding:0;margin:6px 0 0;font-size:12px;line-height:1.5;font-weight:400;color:var(--sub)}

/* ロゴの横に「in 千葉」 */
#family-store-detail .ks-brand{display:flex;align-items:flex-end;gap:8px}
#family-store-detail .ks-brandin{color:var(--ks-teal);font-size:15px;font-weight:700;letter-spacing:.5px;line-height:1;padding-bottom:4px;white-space:nowrap}
/* 2026-10-28 2回目チェック73: 予約先の一覧を閉じるボタン */
#family-store-detail .ks-bookingclose{display:block;width:100%;min-height:44px;margin-top:8px;border:0;background:none;color:var(--sub);font:inherit;font-size:13px;text-decoration:underline;cursor:pointer}
/* 2026-10-28 2回目チェック22: 文字は12px以上、押すところは高さ44px以上にそろえる（見た目の色・配置は変えない） */
html body #family-store-detail .ks-sectionlabel,html body #family-store-detail .ks-eyebrow,html body #family-store-detail .eyebrow,html body #family-store-detail .small,html body #family-store-detail .meal-card small,html body #family-store-detail .kt-three small,html body #family-store-detail .meal-address,html body #family-store-detail .ks-note,html body #family-store-detail .ks-storylabel,html body #family-store-detail .ks-reviewcount,html body #family-store-detail .ks-photolink,html body #family-store-detail .external-chip,html body #family-store-detail .ks-recgenre,html body #family-store-detail .ks-reckids,html body #family-store-detail .ks-recaccess,html body #family-store-detail .ks-reclabel,html body #family-store-detail .ks-savednote,html body #family-store-detail .featuretag,html body #family-store-detail .cat,html body #family-store-detail .required,html body #family-store-detail .optional,html body #family-store-detail .cm-counter,html body #family-store-detail .ks-breadcrumb,html body #family-store-detail .ks-breadcrumb span,html body #family-store-detail .ks-sitemenu nav a,html body #family-store-detail .search-filters label,html body #family-store-detail .search-filters legend,html body #family-store-detail .result-tools label,html body #family-store-detail details.faq>summary,html body #family-store-detail .home-hero small,html body #family-store-detail .ks-visitphotos .ks-thumb>span{font-size:12px}
html body #family-store-detail .ks-breadcrumb a,html body #family-store-detail .breadcrumb a,html body #family-store-detail .crumbs a{display:inline-flex;align-items:center;min-height:44px}
html body #family-store-detail .meal-detail,html body #family-store-detail .section-more,html body #family-store-detail .inline-link,html body #family-store-detail .pagination button,html body #family-store-detail .view-switch button,html body #family-store-detail .ks-equipment dd a[href^="tel:"]{display:inline-flex;align-items:center;min-height:44px}
html body #family-store-detail .pagination button{min-width:44px}
html body #family-store-detail .result-heading label{font-size:12px}
/* 2026-10-28 2回目チェック50: 選ばれていない「リスト／MAP」の文字も読みやすい濃さに */
html body #family-store-detail .view-switch button[aria-pressed="false"]{color:var(--ink)}
/* 2026-10-28 2回目チェック51: 予約ボタンがない店は、♡ボタンを横いっぱいに */
html body #family-store-detail .ks-actionrow>.ks-savewide:only-child{grid-column:1/-1;width:100%;flex:1 1 100%}
html body #family-store-detail .view-switch button{justify-content:center}
html body #family-store-detail .eyebrow,html body #family-store-detail .featuretag,html body #family-store-detail .cat,html body #family-store-detail .required,html body #family-store-detail .optional,html body #family-store-detail .small,html body #family-store-detail .ks-reclabel,html body #family-store-detail .ks-reclink span,html body #family-store-detail .home-section small,html body #family-store-detail .listing-breadcrumb,html body #family-store-detail .listing-breadcrumb a,html body #family-store-detail .ks-sitemenu small{font-size:12px!important}
html body #family-store-detail .listing-breadcrumb a,html body #family-store-detail .breadcrumb a{display:inline-flex;align-items:center;min-height:44px}
html body #family-store-detail .ks-mapheading span{font-size:12px}
html body #family-store-detail .featuremeta span,html body #family-store-detail .tags span{font-size:12px!important}
/* 2026-10-28 2回目チェック #60・#45: トップのほかのエリアに主な市町の名前／320幅で言葉の途中で折り返さない */
#family-store-detail .home-area-links a{flex-direction:column;align-items:flex-start;justify-content:center;line-height:1.35}
#family-store-detail .home-area-links a small{font-size:12px;color:var(--sub);font-weight:400}
@media (max-width:359px){#family-store-detail .home-hero h1{font-size:22px;letter-spacing:-.5px}}
@media (max-width:359px){#family-store-detail .site-bottom a{white-space:nowrap;letter-spacing:-.04em}}
/* 2026-10-28 3回目チェック（SEOのプロ5名・UIのプロ5名）SAさん「全部、公開前に直して」 */
/* パンくず: 記号と文字の高さをそろえる（UI2）・1文字のエリア名も押しやすく（UI3） */
html body #family-store-detail .listing-breadcrumb,html body #family-store-detail .ks-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;column-gap:6px;row-gap:0}
html body #family-store-detail .breadcrumb a,html body #family-store-detail .ks-breadcrumb a,html body #family-store-detail .listing-breadcrumb a,html body #family-store-detail .crumbs a{display:inline-block;min-height:0;padding:12px 2px;min-width:44px;text-align:center;line-height:20px}
html body #family-store-detail .breadcrumb{line-height:44px}
/* 小さい文字を12pxに（UI2・UI3） */
html body #family-store-detail :is(.kt-first .kt-kidsfood span,.ks-ataglance small,.ks-menu b span,.ks-menu div>span,.req,.cm-chip,.cm-stats small,.cm-mypostmeta,.cm-postcta small,.cm-storehead small,.cm-photoadd small,.cm-counter,.cm-codebox small,.cm-hello small,.cm-adminphoto label,.ks-record small,.ks-recordmeta,.ks-recordmeta span,.ks-photothumb span,.ks-visitphotohead span){font-size:12px}
/* 入力欄: iPhoneで勝手に拡大されないよう16px（UI4）・枠の色を濃く（UI3） */
html body #family-store-detail :is(input:not([type=checkbox]):not([type=radio]),select,textarea),html body #family-store-detail .result-heading select{font-size:16px;border-color:#8c7c66}
html body #family-store-detail input[type=checkbox],html body #family-store-detail input[type=radio]{accent-color:var(--teal);outline-color:#8c7c66}
html body #family-store-detail :is(a,button,input,select,textarea,summary,label):focus-visible{outline:3px solid #a5662a;outline-offset:2px}
html body #family-store-detail .sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
/* 押せる高さを44pxに（UI2） */
html body #family-store-detail :is(.result-heading select,.filter-body select,.active-filters button,.cm-report,.cm-cancel,.cm-logout,[data-report],.cm-photogrid button){min-height:44px}
/* 文中のリンクに下線（UI3） */
html body #family-store-detail :is(.cm-terms,.contact-note,form p,.ks-note,.lead) a:not([class]){text-decoration:underline;text-underline-offset:2px}
/* 下のタブ: 同じ形の絵（UI2） */
html body #family-store-detail .site-bottom .nav-icon{display:block;width:22px;height:22px;margin-bottom:2px}
/* トップのエリア: 12枚を同じ大きさに（UI2） */
html body #family-store-detail .area-nophoto .area-tile{display:flex;align-items:center;justify-content:center;aspect-ratio:4/3;background:linear-gradient(135deg,#e9f1ec,#f6eadb);color:var(--teal);font-weight:700;font-size:15px;text-align:center;padding:12px;line-height:1.5}
html body #family-store-detail .area-photo-card small{font-size:12px}
/* 店ページ: 最初の画面の予算と設備（UI5）・下の「もっと見る」（UI1） */
html body #family-store-detail .ks-quick{margin:8px 0 0;font-size:14px;font-weight:600;color:var(--ink)}
html body #family-store-detail .ks-quicktags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 0}
html body #family-store-detail .ks-quicktags span{font-size:12px;padding:4px 9px;border-radius:99px;background:var(--soft);color:var(--teal);font-weight:600}
html body #family-store-detail .ks-morelinks{display:flex;flex-direction:column;gap:2px;margin-top:16px}
html body #family-store-detail .ks-morelinks a{display:flex;align-items:center;min-height:44px;font-weight:600}
/* 店名の最後の行が1〜2文字にならないように（UI2）・矢印だけが次の行に落ちないように */
html body #family-store-detail :is(h1,h2,.ks-rec strong){text-wrap:balance}
html body #family-store-detail :is(.ks-photolink,.section-more,.meal-detail,.area-grid span){text-wrap:pretty}
/* 地図: 吹き出しのリンクを押しやすく、地図は画面の4割まで（UI4） */
html body #family-store-detail .map-popup-link,.leaflet-popup-content .map-popup-link{display:inline-block;padding:10px 4px;min-height:44px;font-size:15px;font-weight:600}
html body #family-store-detail #map-canvas{height:min(42vh,420px)}
/* エリア・検索の一覧: 表示の速さ（SEO5） */
html body #family-store-detail #search-cards>.meal-card{content-visibility:auto;contain-intrinsic-size:auto 600px}
/* 0件のとき */
html body #family-store-detail #no-results .secondary-button{margin-top:10px;min-height:44px}
/* 設備ボタン: 選んだら✓（UI3） */
html body #family-store-detail .filter-chip input:checked+span::before{content:"✓ "}
/* マイページ: 保存を解除したときの「元に戻す」（UI4） */
.kt-undo{position:fixed;left:50%;bottom:84px;transform:translateX(-50%);z-index:60;background:#362c24;color:#fff;border-radius:10px;padding:8px 8px 8px 14px;display:flex;align-items:center;gap:10px;font-size:14px;box-shadow:0 4px 16px rgba(0,0,0,.2)}
.kt-undo button{min-height:44px;padding:0 14px;border:0;border-radius:8px;background:#fff;color:#362c24;font-weight:700;font-size:14px}
html body #family-store-detail .map-count{max-width:calc(100% - 70px)}
/* 店カードの予算（UI5）・投稿写真が1〜2枚のとき（UI2）・見出しと角丸をそろえる（UI2） */
html body #family-store-detail .meal-budget{font-size:12px;color:var(--sub);margin:4px 0 0}
html body #family-store-detail .ks-thumbs1{grid-template-columns:1fr}
html body #family-store-detail .ks-thumbs2{grid-template-columns:1fr 1fr}
html body #family-store-detail .ks-thumbs1 .ks-photothumb,html body #family-store-detail .ks-thumbs2 .ks-photothumb{grid-row:auto;grid-column:auto}
html body #family-store-detail .meal-card h2{font-size:19px}
html body #family-store-detail :is(.primary-button,.secondary-button,.ks-booking,.detailbtn,.cm-submit){border-radius:10px}
html body #family-store-detail .ks-breadcrumb{column-gap:4px}
html body #family-store-detail .ks-breadcrumb a{min-width:0;padding:12px 0}
html body #family-store-detail .ks-title h1{text-wrap:wrap}
/* 2026-10-30 エリアが11になったので、最後の1枚は横いっぱいにして1枚だけ残らないようにする */
html body #family-store-detail .area-grid>.area-photo-card:last-child:nth-child(odd){grid-column:1/-1}
html body #family-store-detail .area-grid>.area-photo-card:last-child:nth-child(odd) img{aspect-ratio:2/1}
