/* =========================================================
   v1.0.89 保守リファクタリング済み
   - 未使用の旧店舗UIルールを削除
   - 現行UIのセレクタだけを維持
========================================================= */
/* v1.0.4 店舗詳細入力・30時対応営業時間・系列店舗 */
.tm-store-settings-fields{grid-template-columns:repeat(2,minmax(0,1fr))}
.tm-store-settings-fields .tm-field-wide{grid-column:1/-1}
.tm-store-settings-fields select{
  display:block;
  width:100%;
  min-height:46px;
  margin-top:7px;
  border:1px solid #cfd8e5;
  border-radius:13px;
  background:#fff;
  padding:10px 36px 10px 13px;
  color:#111827;
  outline:none;
}
.tm-store-settings-fields select:focus{border-color:#60a5fa;box-shadow:0 0 0 3px rgba(96,165,250,.16)}
.tm-store-settings-fields small{display:block;margin-top:8px;color:#64748b;font-size:11px;font-weight:500;line-height:1.65}
.tm-business-hours-wrap{padding:18px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}
.tm-field-title{display:block;margin-bottom:12px;color:#334155;font-size:13px;font-weight:800}
.tm-business-hours{display:flex;align-items:flex-end;gap:13px}
.tm-time-field{flex:1;min-width:0}
.tm-time-field>span:first-child{display:block;margin-bottom:7px;color:#64748b;font-size:12px;font-weight:800}
.tm-time-select{display:grid;grid-template-columns:minmax(70px,1fr) auto minmax(70px,1fr) auto 48px;align-items:center;gap:7px}
.tm-time-select select{margin:0;text-align:center;font-size:17px;font-weight:800;font-variant-numeric:tabular-nums}
.tm-time-select b{color:#64748b;font-size:18px}
.tm-time-select em{display:grid;place-items:center;min-height:46px;border:1px solid #e2e8f0;border-radius:10px;background:#f1f5f9;color:#94a3b8;font-style:normal;font-weight:800}
.tm-time-arrow{padding-bottom:13px;color:#64748b;font-size:12px;font-weight:800}
.tm-open24-check{display:flex!important;align-items:center;gap:8px;min-height:46px;padding:0 14px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;white-space:nowrap}
.tm-open24-check input{width:18px!important;height:18px;margin:0!important}
.tm-time-select select:disabled{opacity:.55;background:#e8edf3}


@media(max-width:900px){
  
  .tm-business-hours{align-items:stretch;flex-direction:column}
  .tm-time-arrow{padding:0;text-align:center}
  .tm-open24-check{align-self:flex-start}
}
@media(max-width:782px){
  .tm-store-settings-fields{grid-template-columns:1fr}
  .tm-store-settings-fields .tm-field-wide{grid-column:auto}
  
  
  
  .tm-time-select{grid-template-columns:minmax(60px,1fr) auto minmax(60px,1fr) auto 44px}
}


/* v1.0.8 日本地図・店舗条件検索 */


.tm-store-search-reset{flex:0 0 auto;min-height:42px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#334155;padding:0 16px;font-weight:800}
.tm-store-search-reset:hover{background:#f8fafc}


.tm-japan-map{display:grid;place-items:center;min-height:390px;padding:10px 0}
.tm-japan-map-svg{width:min(100%,460px);height:auto;overflow:visible}
.tm-map-region{cursor:pointer;outline:none}
.tm-map-region path,.tm-map-region circle{fill:#d7e4f5;stroke:#fff;stroke-width:5;paint-order:stroke;transition:transform .16s ease,fill .16s ease,filter .16s ease;transform-box:fill-box;transform-origin:center}
.tm-map-region text{fill:#334155;font-size:15px;font-weight:900;text-anchor:middle;dominant-baseline:middle;pointer-events:none;transition:fill .16s ease}
.tm-map-region:hover path,.tm-map-region:hover circle,.tm-map-region:focus-visible path,.tm-map-region:focus-visible circle{fill:#9fc0ed;filter:drop-shadow(0 5px 7px rgba(37,99,235,.18));transform:translateY(-2px)}
.tm-map-region.is-selected path,.tm-map-region.is-selected circle{fill:#2563eb;filter:drop-shadow(0 7px 9px rgba(37,99,235,.25));transform:translateY(-2px)}
.tm-map-region.is-selected text{fill:#fff}
.tm-map-region:focus-visible{filter:drop-shadow(0 0 3px rgba(37,99,235,.75))}
.tm-map-region.is-empty{cursor:default;opacity:.42;filter:grayscale(.35)}
.tm-map-region.is-empty:hover path,.tm-map-region.is-empty:hover circle,.tm-map-region.is-empty:focus-visible path,.tm-map-region.is-empty:focus-visible circle{transform:none;filter:none}
.tm-map-connector{fill:none;stroke:#bac9dd;stroke-width:4;stroke-linecap:round;stroke-dasharray:5 8;pointer-events:none}
.tm-region-current{margin:0;text-align:center;color:#64748b;font-size:13px}
.tm-region-current strong{color:#1d4ed8;font-size:16px}


.tm-store-no-results{grid-column:1/-1;display:grid;gap:8px;place-items:center;min-height:240px;padding:30px;border:1px dashed #cbd5e1;border-radius:22px;background:#fff;color:#64748b;text-align:center}
.tm-store-no-results strong{color:#1e293b;font-size:18px}

@media(max-width:980px){
  
  
  .tm-japan-map{min-height:350px}
}
@media(max-width:782px){
  
  
  
  
  
  .tm-store-search-reset{min-height:38px;padding:0 12px;font-size:11px}
  
  .tm-japan-map{min-height:290px;padding:0}
  
  
  
  
  
  
}
@media(max-width:420px){
  
  .tm-store-search-reset{align-self:flex-end}
  .tm-japan-map-svg{width:100%}
  .tm-map-region text{font-size:13px}
}


/* =========================================================
   v1.0.12 店舗検索・店舗詳細（参考サイト形式／テーマ内蔵）
========================================================= */
.tm-reference-store-page{width:min(100%,1080px);margin:0 auto;padding-bottom:32px}
.tm-reference-search-card,.tm-reference-results-section,.tm-reference-store-detail{border:1px solid #e4e8ef;border-radius:22px;background:#fff;box-shadow:0 14px 40px rgba(15,23,42,.07);overflow:hidden}
.tm-reference-search-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:24px 26px;border-bottom:1px solid #eceff4;background:#fff}
.tm-reference-search-heading>div>span,.tm-reference-results-head span{display:block;margin-bottom:5px;color:#ff5f70;font-size:10px;font-weight:900;letter-spacing:.16em}
.tm-reference-search-heading h2,.tm-reference-results-head h3{margin:0;color:#181d27;font-size:27px;line-height:1.25}
.tm-reference-search-heading p{margin:8px 0 0;color:#6f7785;font-size:13px;line-height:1.7}
.tm-reference-reset{flex:0 0 auto;min-height:40px;padding:0 15px;border:1px solid #d8dde5;border-radius:8px;background:#fff;color:#505866;font-size:12px;font-weight:800;cursor:pointer}
.tm-reference-reset:hover{background:#f7f8fa}


.tm-reference-map-stage{min-height:390px}
.tm-reference-area-view-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px}
.tm-reference-map-guide{margin:0;color:#687180;font-size:12px}
.tm-reference-area-view-toggle{display:inline-flex;align-items:center;gap:4px;padding:4px;border:1px solid #dde2e9;border-radius:10px;background:#f7f9fc}
.tm-reference-area-view-toggle button{min-height:34px;padding:0 13px;border:0;border-radius:7px;background:transparent;color:#687180;font-size:11px;font-weight:900;cursor:pointer}
.tm-reference-area-view-toggle button.is-active{background:#fff;color:#e6465b;box-shadow:0 2px 7px rgba(15,23,42,.10)}
.tm-reference-region-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;width:min(100%,720px);margin:18px auto 0}
.tm-reference-region-list button{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:54px;padding:10px 14px;border:1px solid transparent;border-radius:10px;background:#fff;color:#303845;font-weight:900;cursor:pointer;transition:border-color .16s ease,background .16s ease,transform .16s ease,box-shadow .16s ease,filter .16s ease}
.tm-reference-region-list button small{font-size:10px;font-weight:700;opacity:.8;color:inherit}
.tm-reference-region-list button:hover{transform:translateY(-2px);filter:brightness(.98);box-shadow:0 5px 13px rgba(15,23,42,.10)}
.tm-reference-region-list button[data-region-list=""]{border-color:#ff7c8c;background:#fff;color:#e94459}
.tm-reference-region-list button[data-region-list="hokkaido"]{border-color:#9286e8;background:#eeeafd;color:#5547aa}
.tm-reference-region-list button[data-region-list="tohoku"]{border-color:#5d9fea;background:#e8f3ff;color:#2868ae}
.tm-reference-region-list button[data-region-list="kanto"]{border-color:#48cda7;background:#e6fbf5;color:#167b60}
.tm-reference-region-list button[data-region-list="chubu"]{border-color:#55cdd5;background:#e8fbfc;color:#177981}
.tm-reference-region-list button[data-region-list="kinki"]{border-color:#e9c85e;background:#fff7d5;color:#795d00}
.tm-reference-region-list button[data-region-list="chugoku"]{border-color:#ed927d;background:#fff0eb;color:#9b4938}
.tm-reference-region-list button[data-region-list="shikoku"]{border-color:#e9ad43;background:#fff4d9;color:#805700}
.tm-reference-region-list button[data-region-list="kyushu"]{border-color:#ee6469;background:#ffe9ea;color:#a42f35}
.tm-reference-region-list button.is-selected{box-shadow:0 0 0 2px currentColor inset,0 6px 14px rgba(15,23,42,.10);filter:saturate(1.12)}
.tm-reference-region-list button.is-empty{cursor:default;opacity:.45;filter:grayscale(.35);box-shadow:none}
.tm-reference-region-list button.is-empty:hover{transform:none;filter:grayscale(.35);box-shadow:none}
.tm-reference-map{position:relative;width:min(100%,640px);height:320px;margin:18px auto 0;transform-origin:top center}
.tm-reference-region,.tm-reference-all{position:absolute;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:2px solid transparent;border-radius:9px;box-shadow:2px 3px 9px rgba(15,23,42,.12);font-weight:900;line-height:1.15;cursor:pointer;transition:transform .16s ease,filter .16s ease,box-shadow .16s ease}
.tm-reference-region span,.tm-reference-all span{font-size:14px}
.tm-reference-region small,.tm-reference-all small{font-size:10px;font-weight:700;opacity:.86}
.tm-reference-region:hover,.tm-reference-all:hover{transform:translateY(-3px);filter:brightness(.98);box-shadow:3px 7px 16px rgba(15,23,42,.16)}
.tm-reference-region.is-selected,.tm-reference-all.is-active{outline:4px solid rgba(255,83,103,.18);box-shadow:0 0 0 2px #ff5367,3px 7px 16px rgba(255,83,103,.22)}
.tm-reference-region.is-empty{cursor:default;opacity:.42;filter:grayscale(.35);box-shadow:none}
.tm-reference-region.is-empty:hover{transform:none;filter:grayscale(.35);box-shadow:none}
.tm-r-hokkaido{top:0;left:500px;width:110px;height:62px;background:#9f94f4;color:#fff}
.tm-r-tohoku{top:74px;left:506px;width:94px;height:75px;background:#65aaf7;color:#fff}
.tm-r-kanto{top:162px;left:494px;width:110px;height:65px;background:#52dfb7;color:#263238}
.tm-r-chubu{top:147px;left:370px;width:104px;height:80px;background:#70dfe6;color:#263238}
.tm-r-kinki{top:168px;left:272px;width:82px;height:60px;background:#ffe29a;color:#3b3b3b}
.tm-r-chugoku{top:167px;left:158px;width:98px;height:55px;background:#f6a48f;color:#fff}
.tm-r-shikoku{top:238px;left:164px;width:92px;height:48px;background:#f8c45e;color:#3b3b3b}
.tm-r-kyushu{top:221px;left:38px;width:108px;height:68px;background:#f56f73;color:#fff}
.tm-reference-all{top:25px;left:38px;width:120px;height:62px;border-color:#ff6d7e;background:#fff;color:#ff5367}
.tm-reference-pref-stage{min-height:390px;padding:0 4px}
.tm-reference-map-back{min-height:38px;padding:0 13px;border:1px solid #d9dee7;border-radius:8px;background:#fff;color:#56606f;font-size:12px;font-weight:800;cursor:pointer}
.tm-reference-pref-stage h3{margin:22px 0 14px;color:#202632;font-size:18px}
.tm-reference-pref-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tm-reference-pref-grid button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:8px 12px;border:1px solid #d9dee7;border-radius:8px;background:#fff;color:#303845;font-weight:800;cursor:pointer}
.tm-reference-pref-grid button small{color:#8991a0;font-size:10px}
.tm-reference-pref-grid button:hover,.tm-reference-pref-grid button.is-selected{border-color:#ff6375;background:#fff2f4;color:#e83f55}
.tm-reference-pref-grid button.is-empty{cursor:default;opacity:.42;background:#f7f8fa;color:#8a929e;border-color:#e2e6ec}
.tm-reference-pref-grid button.is-empty:hover{border-color:#e2e6ec;background:#f7f8fa;color:#8a929e}
.tm-reference-municipality-stage{min-height:300px}
.tm-reference-municipality-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.tm-reference-selected{margin:14px 0 0;padding:11px 14px;border-radius:8px;background:#f7f8fa;color:#657080;font-size:12px}
.tm-reference-selected strong{color:#252c37}


.tm-reference-results-section{margin-top:22px;padding:24px 26px}
.tm-reference-results-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}
.tm-reference-results-head p{margin:0;color:#626b78;font-size:13px}
.tm-reference-results-head strong{color:#ff5367;font-size:24px}
.tm-store-result-head-side{display:flex;align-items:center;justify-content:flex-end;gap:14px;flex-wrap:wrap}
.tm-store-result-sort{display:flex;align-items:center;gap:7px;flex-wrap:wrap;padding:6px;border:1px solid #e3e7ed;border-radius:12px;background:#fff;box-shadow:0 4px 12px rgba(15,23,42,.05)}
.tm-store-result-sort[hidden]{display:none!important}
.tm-store-result-sort>span{margin:0 2px 0 4px!important;color:#7a8492!important;font-size:11px!important;font-weight:800!important;letter-spacing:0!important}
.tm-store-result-sort button{min-height:34px;padding:6px 12px;border:1px solid #d7dde5;border-radius:9px;background:#f7f8fa;color:#4b5563;font-size:12px;font-weight:800;cursor:pointer}
.tm-store-result-sort button.is-active{border-color:#ff5f70;background:#ff5f70;color:#fff;box-shadow:0 4px 10px rgba(255,95,112,.22)}
.tm-store-option-legend{display:flex;align-items:center;gap:10px;flex-wrap:wrap;color:#56606d;font-size:10px;font-weight:800}
.tm-store-option-legend span{display:inline-flex;align-items:center;gap:4px;white-space:nowrap}
.tm-store-option-legend i{display:block;width:10px;height:10px;border-radius:2px;border:1px solid transparent}
.tm-store-option-legend i.is-required{background:#ffd9e1;border-color:#e6395b}
.tm-store-option-legend i.is-optional{background:#dbeafe;border-color:#3b82f6}
.tm-store-option-legend i.is-possible{background:#d9f7e6;border-color:#22a06b}
.tm-store-option-legend i.is-consider{background:#ffe3ad;border-color:#f59e0b}
.tm-store-option-legend i.is-ng{background:#dfe3e8;border-color:#6b7280}
.tm-store-option-legend-inline{margin-top:6px;gap:8px;opacity:.68;font-size:9px;font-weight:700}
.tm-store-option-legend-inline i{width:8px;height:8px;border-radius:1px}
.tm-store-result-body .tm-store-option-legend-inline{margin-bottom:2px}
.tm-reference-detail-copy .tm-store-option-legend-inline{margin-top:7px}
.tm-reference-result-grid{display:grid;grid-template-columns:1fr;gap:16px}
.tm-store-result-card{display:grid;grid-template-columns:180px minmax(0,1fr);min-height:190px;border:1px solid #e0e4ea;border-radius:14px;background:#fff;overflow:hidden;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.tm-store-result-card:hover,.tm-store-result-card:focus-visible{transform:translateY(-3px);border-color:#ff9aa6;box-shadow:0 12px 24px rgba(15,23,42,.10);outline:none}
.tm-store-result-media{display:flex;flex-direction:column;background:linear-gradient(145deg,#f7f8fb,#eef1f5);min-width:0}
.tm-store-result-image{display:grid;place-items:center;flex:1;min-height:122px;padding:8px;overflow:hidden}
.tm-store-result-image img{display:block;width:100%;height:100%;object-fit:contain}
.tm-store-result-image span{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:#fff;color:#ff5367;font-size:26px;font-weight:900}
.tm-store-result-caption{padding:10px 12px 12px;border-top:1px solid #e8edf3;background:#fff}
.tm-store-result-caption h3{margin:0 0 6px;color:#1d2430;font-size:15px;line-height:1.35;overflow-wrap:anywhere}
.tm-store-result-meta-line{display:flex;align-items:center;gap:7px;min-width:0;max-width:100%;overflow:hidden;white-space:nowrap}
.tm-store-result-sb,.tm-store-result-location{margin:0;color:#707986;font-size:11px;line-height:1.5;white-space:nowrap}
.tm-store-result-location{display:flex;align-items:center;gap:4px;min-width:0;overflow:hidden}
.tm-store-result-location span{flex:0 0 auto}
.tm-store-result-location b{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:500}
.tm-store-result-sb{flex:0 0 auto;color:#4e5968}
.tm-store-result-body{display:flex;flex-direction:column;padding:16px}
.tm-store-result-notices{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 8px}
.tm-store-result-tags{display:flex;flex-wrap:wrap;gap:5px;min-height:21px}
.tm-store-result-tags span{display:inline-flex;align-items:center;min-height:21px;padding:2px 8px;border-radius:999px;background:#fff0f2;color:#d93b50;font-size:10px;font-weight:800}
.tm-store-result-public{display:grid;gap:7px;margin:10px 0 11px}
.tm-store-result-public-inline{display:flex;flex-wrap:wrap;gap:6px;align-items:center}

.tm-store-result-chip-item{display:inline-flex;align-items:center;min-height:24px;padding:4px 8px;border:1px solid #d9dee7;border-radius:999px;background:#fff;color:#313947;font-size:11px;font-weight:800;line-height:1.35;max-width:100%;overflow-wrap:anywhere}

.tm-store-result-chip-item.is-notice{border-color:#e7b6bd;background:#fff0f2;color:#a33443}
.tm-store-result-chip-item.is-room{border-color:#bcd7ef;background:#f4f9ff;color:#245a8d}
.tm-store-result-chip-item.is-required{border-color:#e6395b;background:#ffd9e1;color:#9f1239}
.tm-store-result-chip-item.is-optional{border-color:#3b82f6;background:#eaf3ff;color:#1d4ed8}
.tm-store-result-chip-item.is-possible{border-color:#22a06b;background:#e9faef;color:#137044}
.tm-store-result-chip-item.is-consider{border-color:#f59e0b;background:#ffe3ad;color:#8a4b00}
.tm-store-result-chip-item.is-ng{border-color:#b9c0c8;background:#eef1f4;color:#41474f}
.tm-store-result-chip-item.is-condition{border-color:#ebcbe0;background:#fff2fb;color:#7b4068}
.tm-store-result-body dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 12px;margin:0}
.tm-store-result-body dl div{min-width:0}
.tm-store-result-body dl .is-wide{grid-column:1/-1}
.tm-store-result-body dt{color:#8a929e;font-size:10px;font-weight:800}
.tm-store-result-body dd{margin:2px 0 0;color:#39414e;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}


.tm-reference-store-detail{padding:26px}
.tm-store-detail-actions{display:flex;align-items:center;justify-content:space-between;gap:10px}
.tm-store-detail-back{min-height:40px;padding:0 14px;border:1px solid #d9dee7;border-radius:8px;background:#fff;color:#505968;font-size:12px;font-weight:900;cursor:pointer}
.tm-store-detail-edit{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:0 15px;border:1px solid #2271b1;border-radius:8px;background:#2271b1;color:#fff!important;font-size:12px;font-weight:900;text-decoration:none!important;box-shadow:0 5px 14px rgba(34,113,177,.18)}
.tm-store-detail-edit:hover{background:#135e96;border-color:#135e96;color:#fff!important}
.tm-reference-detail-hero{display:grid;grid-template-columns:260px minmax(0,1fr);gap:28px;align-items:center;margin:22px 0 28px;padding:22px;border:1px solid #e3e7ed;border-radius:15px;background:#fff}
.tm-reference-detail-logo{display:grid;place-items:center;aspect-ratio:4/3;padding:12px 14px;border-radius:12px;background:linear-gradient(145deg,#f4f6f9,#eceff4);overflow:hidden}
.tm-reference-detail-logo img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}
.tm-reference-detail-logo span{display:grid;place-items:center;width:92px;height:92px;border-radius:50%;background:#fff;color:#ff5367;font-size:34px;font-weight:900}
.tm-reference-detail-copy h2{margin:10px 0 8px;color:#171d27;font-size:28px;line-height:1.25}
.tm-reference-detail-inline-display{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-top:12px}
.tm-reference-detail-copy p{margin:0;color:#687281;line-height:1.75;white-space:pre-wrap}

.tm-reference-detail-section{margin-top:26px}
.tm-reference-section-title{display:flex;align-items:center;gap:13px;margin-bottom:14px;padding:15px 18px;background:repeating-linear-gradient(135deg,#fafafa,#fafafa 4px,#f7f7f7 4px,#f7f7f7 8px)}
.tm-reference-section-title>span{width:8px;align-self:stretch;background:#ff7584}
.tm-reference-section-title h3,.tm-reference-section-title h2{margin:0;color:#252b35;font-size:19px}
.tm-reference-detail-table{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-top:1px solid #e2e6ec;border-left:1px solid #e2e6ec}
.tm-reference-detail-table>div{display:grid;grid-template-columns:128px minmax(0,1fr);min-height:54px;border-right:1px solid #e2e6ec;border-bottom:1px solid #e2e6ec}
.tm-reference-detail-table>div.is-wide{grid-column:1/-1}
.tm-reference-detail-table dt{display:flex;align-items:flex-start;padding:16px 13px;background:#f7f8fa;color:#4e5765;font-size:12px;font-weight:900}
.tm-reference-detail-table dd{margin:0;padding:16px;color:#303844;font-size:13px;line-height:1.7;overflow-wrap:anywhere}
.tm-reference-detail-table a{color:#2563eb;text-decoration:underline}
.tm-store-detail-chat{width:100%;min-height:52px;margin-top:24px;border:0;border-radius:9px;background:#36b66b;color:#fff;font-size:15px;font-weight:900;cursor:pointer}


.tm-reference-series-image{display:grid;place-items:center;aspect-ratio:16/9;background:#f0f2f5;overflow:hidden}
.tm-reference-series-image img{width:100%;height:100%;object-fit:cover}
.tm-reference-series-image span{font-size:28px;font-weight:900;color:#ff5367}


@media (max-width:900px){
  .tm-reference-result-grid{grid-template-columns:1fr}
  .tm-reference-detail-hero{grid-template-columns:220px minmax(0,1fr)}
  
}
@media (max-width:700px){
  .tm-reference-search-card,.tm-reference-results-section,.tm-reference-store-detail{border-radius:16px}
  .tm-reference-search-heading{padding:18px 15px}
  .tm-reference-search-heading h2,.tm-reference-results-head h3{font-size:22px}
  .tm-reference-results-head{align-items:flex-start}
  .tm-store-result-head-side{gap:8px}
  .tm-store-option-legend{gap:7px;font-size:9px}
  .tm-reference-search-heading p{font-size:11px}
  .tm-reference-reset{min-height:36px;padding:0 10px;font-size:10px}
  
  
  .tm-reference-map-stage{min-height:325px;overflow:hidden}
  .tm-reference-area-view-head{align-items:flex-start;flex-direction:column}
  .tm-reference-area-view-toggle{align-self:stretch;display:grid;grid-template-columns:1fr 1fr}
  .tm-reference-area-view-toggle button{width:100%}
  .tm-reference-region-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px}
  .tm-reference-region-list button{min-height:48px;padding:8px 10px;font-size:12px}
  .tm-reference-map{width:340px;height:245px;margin-top:15px;transform:scale(.88)}
  .tm-reference-region span,.tm-reference-all span{font-size:11px}
  .tm-r-hokkaido{left:264px;right:auto;width:72px;height:50px}
  .tm-r-tohoku{top:58px;left:267px;right:auto;width:64px;height:60px}
  .tm-r-kanto{top:127px;left:266px;right:auto;width:74px;height:52px}
  .tm-r-chubu{top:116px;left:190px;right:auto;width:68px;height:64px}
  .tm-r-kinki{top:132px;left:124px;right:auto;width:56px;height:49px}
  .tm-r-chugoku{top:132px;left:46px;right:auto;width:68px;height:45px}
  .tm-r-shikoku{top:188px;left:84px;right:auto;width:68px;height:40px}
  .tm-r-kyushu{top:190px;left:0;width:76px;height:55px}
  .tm-reference-all{top:20px;left:8px;width:86px;height:50px}
  .tm-reference-pref-stage{min-height:325px}
  .tm-reference-pref-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .tm-reference-results-section{padding:18px 13px}
  .tm-store-result-card{grid-template-columns:144px minmax(0,1fr);min-height:176px}
  .tm-store-result-image{min-height:108px;padding:6px}
  .tm-store-result-caption{padding:9px 10px 10px}
  .tm-store-result-caption h3{font-size:14px}
  .tm-store-result-sb,.tm-store-result-location{font-size:10px}
  .tm-store-result-body{padding:13px}
  
  .tm-store-result-chip-item{min-height:23px;padding:4px 7px;font-size:10px}
  .tm-reference-store-detail{padding:16px 13px}
  .tm-reference-detail-hero{grid-template-columns:1fr;gap:16px;margin:18px 0 22px;padding:14px}
  .tm-reference-detail-logo{aspect-ratio:4/3;padding:10px 12px}
  .tm-reference-detail-copy h2{font-size:23px}
  .tm-reference-section-title{padding:12px 13px}
  .tm-reference-section-title h3,.tm-reference-section-title h2{font-size:16px}
  .tm-reference-detail-table{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-reference-detail-table>div{grid-column:auto;grid-template-columns:88px minmax(0,1fr)}
  .tm-reference-detail-table>div.is-wide{grid-column:1/-1}
  .tm-reference-detail-table dt{padding:11px 10px;border-bottom:0;font-size:11px}
  .tm-reference-detail-table dd{padding:11px 10px;font-size:12px}
  
}
@media (max-width:420px){
  .tm-reference-search-heading{flex-direction:column}
  .tm-reference-reset{align-self:flex-end}
  .tm-store-result-card{grid-template-columns:1fr}
  .tm-store-result-media{border-bottom:1px solid #edf1f5}
  .tm-store-result-image{min-height:138px}
  .tm-store-result-public-inline{gap:4px}
  
  .tm-store-result-body dl{grid-template-columns:1fr}
  .tm-store-result-body dl .is-wide{grid-column:1}
}

/* =========================================================
   v1.0.14 店舗検索を4つのアコーディオンへ統合
========================================================= */
.tm-store-search-accordion-list{background:#fff}
.tm-store-search-accordion{border-bottom:1px solid #e7eaf0;background:#fff}
.tm-store-search-accordion:first-child{border-top:0}
.tm-store-search-accordion summary{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:64px;padding:0 26px;color:#252c37;font-size:15px;font-weight:900;cursor:pointer;list-style:none;transition:background .16s ease,color .16s ease}
.tm-store-search-accordion summary::-webkit-details-marker{display:none}
.tm-store-search-accordion summary:hover{background:#fafbfc}
.tm-store-search-accordion[open] summary{background:#fff7f8;color:#e6465b}
.tm-store-search-accordion-title{display:flex;align-items:center;min-width:0;line-height:1.45}
.tm-store-search-accordion summary b{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid #d7dce4;border-radius:50%;background:#fff;color:#687180;font-size:16px;line-height:1}
.tm-store-search-accordion[open] summary b{border-color:#ff9aa6;color:#e6465b}
.tm-store-search-accordion-body{padding:22px 26px 26px;border-top:1px solid #f0f1f4;background:#fff}
.tm-store-search-accordion-body .tm-reference-map-stage,.tm-store-search-accordion-body .tm-reference-pref-stage{min-height:360px}
.tm-store-number-filter-grid label{display:flex;flex-direction:column;gap:8px;color:#3a4350;font-size:12px;font-weight:800}
.tm-store-number-filter-grid input{width:100%;height:46px;border:1px solid #cfd5de;border-radius:8px;background:#fff;padding:0 12px;color:#252c37;font-size:14px;outline:none;transition:border-color .16s ease,box-shadow .16s ease}
.tm-store-number-filter-grid input:focus{border-color:#ff7f90;box-shadow:0 0 0 3px rgba(255,95,112,.14)}
.tm-store-number-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.tm-store-number-filter-grid label>span{font-size:13px}
.tm-store-number-filter-grid small{color:#7b8492;font-size:10px;font-weight:500;line-height:1.6}


.tm-store-target-range-wrap{padding:18px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}
.tm-store-target-range-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tm-store-target-range-grid label{display:flex;flex-direction:column;gap:7px}
.tm-store-target-range-grid label span{color:#475569;font-size:11px;font-weight:800}
.tm-store-target-range-grid input{width:100%;height:42px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:0 11px}

@media(max-width:700px){
  .tm-store-search-accordion summary{min-height:58px;padding:0 15px;font-size:14px}
  .tm-store-search-accordion-body{padding:16px 13px 20px}
  .tm-store-search-accordion-body .tm-reference-map-stage,.tm-store-search-accordion-body .tm-reference-pref-stage{min-height:310px}
  
  .tm-store-number-filter-grid{grid-template-columns:1fr;gap:13px}
  .tm-store-target-range-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:420px){
  .tm-store-target-range-grid{grid-template-columns:1fr}
}


/* =========================================================
   v1.0.15 店舗検索条件UI調整
========================================================= */
.tm-store-choice-button-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.tm-store-choice-button{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:46px;padding:9px 12px;border:1px solid #d7dce5;border-radius:10px;background:#fff;color:#333c49;font-size:12px;font-weight:800;cursor:pointer;transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease}
.tm-store-choice-button small{flex:0 0 auto;color:#8a93a0;font-size:9px;font-weight:700}
.tm-store-choice-button:hover,.tm-store-choice-button:focus-visible{border-color:#ff9ba7;outline:none;box-shadow:0 0 0 3px rgba(255,95,112,.1)}
.tm-store-choice-button.is-selected{border-color:#ff566a;background:#ff566a;color:#fff;box-shadow:0 8px 18px rgba(255,86,106,.2)}
.tm-store-choice-button.is-selected small{color:#fff}
.tm-store-number-filter-grid-three{grid-template-columns:repeat(3,minmax(0,1fr))}
.tm-store-pay-filter{display:flex;flex-direction:column;gap:8px;color:#3a4350;font-size:12px;font-weight:800}
.tm-store-pay-filter>span{color:#3a4350;font-size:13px;font-weight:800}
.tm-store-pay-filter input{width:100%;height:46px;border:1px solid #cfd5de;border-radius:8px;background:#fff;padding:0 12px;color:#252c37;font-size:14px;outline:none;transition:border-color .16s ease,box-shadow .16s ease}
.tm-store-pay-filter input:focus{border-color:#ff7f90;box-shadow:0 0 0 3px rgba(255,95,112,.14)}
.tm-store-pay-filter small{color:#7b8492;font-size:10px;font-weight:500;line-height:1.6}
.tm-store-inline-choice-buttons{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.tm-store-inline-choice-buttons button{min-height:42px;border:1px solid #d6dce5;border-radius:9px;background:#fff;color:#4a5360;font-size:12px;font-weight:900;cursor:pointer}
.tm-store-inline-choice-buttons button.is-selected{border-color:#ff566a;background:#ff566a;color:#fff}


.tm-store-work-preferences-setting{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:10px 0}
.tm-store-work-preferences-setting>span{flex:0 0 100%;font-size:11px;font-weight:800}
.tm-store-work-preferences-setting label{display:flex;flex-direction:row;align-items:center;gap:5px;font-size:12px}
.tm-store-target-range-grid select{width:100%;height:42px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:0 11px}

@media (max-width:900px){
  .tm-store-choice-button-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tm-store-number-filter-grid-three{grid-template-columns:1fr 1fr}
  .tm-store-pay-filter{grid-column:1/-1}
}
@media (max-width:700px){
  .tm-store-choice-button-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .tm-store-choice-button{min-height:44px;padding:8px 10px;font-size:11px}
  .tm-store-number-filter-grid-three{grid-template-columns:1fr}
  .tm-store-pay-filter{grid-column:1}
  .tm-store-search-accordion summary{padding:0 15px}
  .tm-store-search-accordion-body{padding:18px 15px 22px}
}


/* =========================================================
   v1.0.16 業種連動の単価・時給検索
========================================================= */
.tm-store-pay-filter[hidden]{display:none!important}
.tm-store-number-filter-grid-three.is-pay-hidden{grid-template-columns:repeat(2,minmax(0,1fr))}
.tm-store-business-button-grid .tm-store-choice-button span{min-width:0;overflow-wrap:anywhere}
@media(max-width:700px){
  .tm-store-business-button-grid .tm-store-choice-button{align-items:center}
  .tm-store-business-button-grid .tm-store-choice-button span{line-height:1.35}
}

/* =========================================================
   v1.0.17 業種グループ化・複数選択／複数アコーディオン
========================================================= */
.tm-store-business-groups{display:grid;gap:20px}
.tm-store-business-group{display:grid;gap:10px;padding:0 0 18px;border-bottom:1px solid #edf0f4}
.tm-store-business-group:last-child{padding-bottom:0;border-bottom:0}
.tm-store-business-group h3{margin:0;color:#4a5360;font-size:13px;font-weight:900;letter-spacing:.03em}
.tm-store-business-group .tm-store-choice-button-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.tm-store-business-group:nth-child(2) .tm-store-choice-button-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.tm-store-business-group:last-child .tm-store-choice-button-grid{grid-template-columns:minmax(180px,1fr);max-width:260px}
.tm-store-choice-button[aria-pressed="true"]{border-color:#ff566a;background:#ff566a;color:#fff;box-shadow:0 8px 18px rgba(255,86,106,.2)}
.tm-store-choice-button[aria-pressed="true"] small{color:#fff}
@media(max-width:980px){
  .tm-store-business-group .tm-store-choice-button-grid,
  .tm-store-business-group:nth-child(2) .tm-store-choice-button-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:700px){
  .tm-store-business-groups{gap:16px}
  .tm-store-business-group{gap:8px;padding-bottom:14px}
  .tm-store-business-group .tm-store-choice-button-grid,
  .tm-store-business-group:nth-child(2) .tm-store-choice-button-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-store-business-group:last-child .tm-store-choice-button-grid{grid-template-columns:1fr;max-width:none}
}

/* =========================================================
   v1.0.19 リアルタイム検索・固定検索ボタン
========================================================= */
#tm-store-directory-view{padding-bottom:94px}
.tm-store-live-search-bar{
  position:fixed;
  left:50%;
  bottom:calc(var(--tm-footer-height) + env(safe-area-inset-bottom) + 12px);
  z-index:490;
  width:min(760px,calc(100% - 32px));
  transform:translateX(-50%);
  pointer-events:none;
}
.tm-store-live-search-button{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  width:100%;
  min-height:58px;
  padding:10px 20px;
  border:0;
  border-radius:16px;
  background:#ff566a;
  color:#fff;
  box-shadow:0 12px 30px rgba(255,86,106,.34),0 3px 10px rgba(15,23,42,.12);
  font-size:15px;
  font-weight:900;
  letter-spacing:.01em;
  cursor:pointer;
  pointer-events:auto;
  transition:transform .15s ease,box-shadow .15s ease,background .15s ease;
}
.tm-store-live-search-button strong{font-size:24px;line-height:1}
.tm-store-live-search-button:hover{background:#fa455b;transform:translateY(-1px);box-shadow:0 15px 34px rgba(255,86,106,.38),0 4px 12px rgba(15,23,42,.14)}
.tm-store-live-search-button:active{transform:translateY(0)}
.tm-store-live-search-button:focus-visible{outline:3px solid rgba(255,86,106,.28);outline-offset:3px}

@media(max-width:782px){
  #tm-store-directory-view{padding-bottom:84px}
  .tm-store-live-search-bar{
    bottom:calc(var(--tm-footer-height) + env(safe-area-inset-bottom) + 8px);
    width:calc(100% - 20px);
  }
  .tm-store-live-search-button{min-height:54px;border-radius:14px;font-size:14px}
  .tm-store-live-search-button strong{font-size:22px}
}


/* =========================================================
   v1.0.20 検索UI・希望勤怠・業種別こだわり条件
========================================================= */

.tm-store-number-filter-grid select,.tm-store-pay-filter select{width:100%;height:46px;border:1px solid #cfd5de;border-radius:8px;background:#fff;padding:0 12px;color:#252c37;font-size:14px;outline:none;transition:border-color .16s ease,box-shadow .16s ease}
.tm-store-number-filter-grid select:focus,.tm-store-pay-filter select:focus{border-color:#ff7f90;box-shadow:0 0 0 3px rgba(255,95,112,.14)}
.tm-store-attendance-quick-filter{display:grid;grid-template-columns:auto minmax(260px,420px);align-items:center;justify-content:space-between;gap:18px;padding:18px 26px;border-bottom:1px solid #e7eaf0;background:#fff}
.tm-store-attendance-quick-title{font-size:14px;font-weight:900;color:#252c37}
.tm-store-attendance-quick-filter .tm-store-inline-choice-buttons{width:100%}
.tm-store-attendance-quick-filter .tm-store-inline-choice-buttons button{min-height:44px}
.tm-store-attendance-quick-filter .tm-store-inline-choice-buttons button[aria-pressed="true"]{border-color:#ff566a;background:#ff566a;color:#fff}
.tm-store-condition-tag-groups{display:grid;gap:18px}
.tm-store-condition-tag-note{margin:0;color:#7a8390;font-size:12px;line-height:1.7}
.tm-store-condition-tag-group{display:grid;gap:10px;padding-bottom:16px;border-bottom:1px solid #edf0f4}
.tm-store-condition-tag-group:last-of-type{padding-bottom:0;border-bottom:0}
.tm-store-condition-tag-group[hidden]{display:none!important}
.tm-store-condition-tag-group h3{margin:0;color:#394352;font-size:13px;font-weight:900}
.tm-store-condition-tag-buttons{display:flex;flex-wrap:wrap;gap:9px}
.tm-store-condition-tag-buttons button{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:8px 13px;border:1px solid #d7dce5;border-radius:999px;background:#fff;color:#3d4653;font-size:12px;font-weight:800;cursor:pointer;transition:.16s ease}
.tm-store-condition-tag-buttons button small{color:#9098a4;font-size:9px}
.tm-store-condition-tag-buttons button:hover,.tm-store-condition-tag-buttons button:focus-visible{border-color:#ff9ba7;outline:none;box-shadow:0 0 0 3px rgba(255,95,112,.1)}
.tm-store-condition-tag-buttons button.is-selected{border-color:#ff566a;background:#ff566a;color:#fff;box-shadow:0 7px 16px rgba(255,86,106,.18)}
.tm-store-condition-tag-buttons button.is-selected small{color:#fff}
.tm-store-condition-tag-empty{margin:0;padding:11px 13px;border-radius:10px;background:#f7f8fa;color:#9299a3;font-size:11px}
.tm-store-free-text-filter{display:flex;flex-direction:column;gap:8px;color:#3a4350;font-size:12px;font-weight:800}
.tm-store-free-text-filter input{width:100%;height:46px;border:1px solid #cfd5de;border-radius:8px;background:#fff;padding:0 12px;color:#252c37;font-size:14px;outline:none}
.tm-store-free-text-filter input:focus{border-color:#ff7f90;box-shadow:0 0 0 3px rgba(255,95,112,.14)}
.tm-store-live-search-button{background:rgba(255,86,106,.74);box-shadow:0 8px 20px rgba(255,86,106,.18),0 2px 6px rgba(15,23,42,.08);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.tm-store-live-search-button:hover{background:rgba(250,69,91,.84);box-shadow:0 10px 24px rgba(255,86,106,.23),0 3px 8px rgba(15,23,42,.1)}
.tm-store-condition-tags-setting{padding:18px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}
.tm-store-condition-tags-setting>p{margin:7px 0 14px;color:#64748b;font-size:11px;line-height:1.65}
.tm-store-condition-tags-setting-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.tm-store-condition-tags-setting-grid label{display:flex;flex-direction:column;gap:7px}
.tm-store-condition-tags-setting-grid label:last-child{grid-column:1/-1}
.tm-store-condition-tags-setting-grid label span{color:#475569;font-size:11px;font-weight:800}
.tm-store-condition-tags-setting-grid textarea{width:100%;min-height:90px;border:1px solid #cbd5e1;border-radius:10px;background:#fff;padding:10px 11px;resize:vertical}
@media(max-width:700px){
  .tm-store-attendance-quick-filter{grid-template-columns:1fr;gap:10px;padding:15px}
  .tm-store-condition-tags-setting-grid{grid-template-columns:1fr}
  .tm-store-condition-tags-setting-grid label:last-child{grid-column:1}
  .tm-store-condition-tag-buttons{gap:7px}
  .tm-store-condition-tag-buttons button{min-height:38px;padding:7px 11px;font-size:11px}
}

/* =========================================================
   v1.0.21 検索導線・こだわり条件・フリースペース調整
========================================================= */
.tm-store-condition-tag-prompt{
  margin:0;
  padding:14px 16px;
  border:1px dashed #d8dee8;
  border-radius:12px;
  background:#f8fafc;
  color:#7b8492;
  font-size:12px;
  line-height:1.7;
  text-align:center;
}
.tm-store-condition-tag-prompt[hidden]{display:none!important}
.tm-store-free-text-standalone{
  padding:18px 26px 22px;
  border-top:1px solid #e7eaf0;
  background:#fff;
}
.tm-store-free-text-standalone .tm-store-free-text-filter span{
  color:#252c37;
  font-size:14px;
  font-weight:900;
}
.tm-store-live-search-bar{
  opacity:.82;
  transition:opacity .18s ease,transform .18s ease;
}
.tm-store-live-search-bar.is-scrolling{
  opacity:.5;
}
.tm-store-live-search-actions{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  width:100%;
}
.tm-store-live-search-button{
  min-width:0;
  min-height:50px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.44);
  border-radius:13px;
  box-shadow:0 5px 14px rgba(15,23,42,.10);
  font-size:13px;
  line-height:1.25;
  backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);
  transition:background .16s ease,box-shadow .16s ease,opacity .16s ease;
}
.tm-store-live-search-button strong{
  font-size:18px;
  line-height:1;
}
.tm-store-live-search-button b{
  margin-left:3px;
  font-size:15px;
  font-weight:800;
  line-height:1;
}
.tm-store-live-result-button{
  background:rgba(255,86,106,.62);
  color:#fff;
}
.tm-store-condition-return-button{
  background:rgba(71,85,105,.58);
  color:#fff;
}
.tm-store-result-list-button{
  background:rgba(37,99,235,.62);
  color:#fff;
}
.tm-store-live-result-button:hover,
.tm-store-live-result-button:focus-visible{
  background:rgba(255,86,106,.76);
  box-shadow:0 6px 16px rgba(255,86,106,.16);
  transform:none;
}
.tm-store-condition-return-button:hover,
.tm-store-condition-return-button:focus-visible{
  background:rgba(71,85,105,.72);
  box-shadow:0 6px 16px rgba(15,23,42,.14);
  transform:none;
}
.tm-store-result-list-button:hover,
.tm-store-result-list-button:focus-visible{
  background:rgba(37,99,235,.78);
  box-shadow:0 6px 16px rgba(37,99,235,.18);
  transform:none;
}
.tm-store-live-search-button:active{
  opacity:.88;
  transform:none;
}
.tm-store-result-list-modal[hidden]{display:none!important}
.tm-store-result-list-modal{position:fixed;inset:0;z-index:720;display:grid;place-items:center;padding:24px}
.tm-store-result-list-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.tm-store-result-list-panel{position:relative;z-index:1;width:min(620px,100%);max-height:min(70vh,680px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #dce2ea;border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(15,23,42,.24)}
.tm-store-result-list-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 20px;border-bottom:1px solid #e8edf3;background:#fff}
.tm-store-result-list-head>div>span{display:block;margin-bottom:3px;color:#ff5367;font-size:9px;font-weight:900;letter-spacing:.16em}
.tm-store-result-list-head h3{margin:0;color:#1d2430;font-size:20px;line-height:1.3}
.tm-store-result-list-close{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:0;border:1px solid #d7dde6;border-radius:50%;background:#fff;color:#596474;font-size:22px;line-height:1;cursor:pointer}
.tm-store-result-list-items{display:grid;gap:8px;padding:14px;overflow:auto;overscroll-behavior:contain}
.tm-store-result-list-item{display:grid;grid-template-columns:32px minmax(0,1fr) 24px;gap:10px;align-items:center;width:100%;min-height:58px;padding:10px 12px;border:1px solid #e1e6ed;border-radius:12px;background:#fff;color:#243041;text-align:left;cursor:pointer;transition:border-color .15s ease,background .15s ease,transform .15s ease}
.tm-store-result-list-item:hover,.tm-store-result-list-item:focus-visible{border-color:#ff9aa6;background:#fff8f9;outline:none;transform:translateY(-1px)}
.tm-store-result-list-number{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:#f1f5f9;color:#556171;font-size:11px;font-weight:900}
.tm-store-result-list-copy{min-width:0;display:grid;gap:3px}
.tm-store-result-list-copy strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;line-height:1.35}
.tm-store-result-list-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#7b8491;font-size:10px;font-weight:600}
.tm-store-result-list-item>b{color:#ff5367;font-size:15px;text-align:center}
.tm-store-result-list-empty{margin:0;padding:26px 16px;color:#76808d;text-align:center;font-size:13px}
body.tm-store-result-list-open{overflow:hidden}

@media(max-width:700px){
  .tm-store-free-text-standalone{padding:16px 15px 19px}
  .tm-store-live-search-actions{gap:6px}
  .tm-store-live-search-button{
    min-height:48px;
    padding:7px 8px;
    border-radius:12px;
    font-size:11px;
  }
  .tm-store-live-search-button strong{font-size:17px}
  .tm-store-live-search-button b{font-size:13px}
  .tm-store-result-list-modal{align-items:end;padding:12px 10px calc(var(--tm-footer-height) + env(safe-area-inset-bottom) + 10px)}
  .tm-store-result-list-panel{width:100%;max-height:66vh;border-radius:16px}
  .tm-store-result-list-head{padding:14px 15px}
  .tm-store-result-list-head h3{font-size:18px}
  .tm-store-result-list-items{padding:10px}
  .tm-store-result-list-item{min-height:54px;padding:9px 10px}
}

/* =========================================================
   v1.0.22 業種系統を常時表示する列レイアウトへ復帰
========================================================= */
.tm-store-business-selection{display:grid;gap:16px}
.tm-store-business-selection .tm-store-business-note{margin:0;color:#7a8390;font-size:12px;line-height:1.7}
.tm-store-business-group[data-business-group-section="health"] .tm-store-choice-button-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.tm-store-business-group[data-business-group-section="esthe"] .tm-store-choice-button-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
.tm-store-business-group[data-business-group-section="drink"] .tm-store-choice-button-grid,
.tm-store-business-group[data-business-group-section="other"] .tm-store-choice-button-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:520px}
.tm-store-business-group[data-business-group-section="stream"] .tm-store-choice-button-grid{grid-template-columns:minmax(180px,260px)}
@media(max-width:980px){
  .tm-store-business-group[data-business-group-section] .tm-store-choice-button-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .tm-store-business-group[data-business-group-section="drink"] .tm-store-choice-button-grid,
  .tm-store-business-group[data-business-group-section="other"] .tm-store-choice-button-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}
}
@media(max-width:700px){
  .tm-store-business-selection{gap:13px}
  .tm-store-business-group[data-business-group-section] .tm-store-choice-button-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tm-store-business-group[data-business-group-section="stream"] .tm-store-choice-button-grid{grid-template-columns:1fr}
}


/* =========================================================
   v1.0.24 配信系ボタン幅・改行修正
========================================================= */
/*
 * 配信系は1項目だけですが、他の系統と同じ2カラム基準の幅に揃えます。
 * 過去版の last-child / レスポンシブ指定との競合をここで明示的に解消します。
 */
.tm-store-business-group[data-business-group-section="stream"] .tm-store-choice-button-grid{
  width:100%;
  max-width:520px!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}
.tm-store-business-group[data-business-group-section="stream"] .tm-store-choice-button{
  width:100%;
  min-width:0;
}
.tm-store-business-group[data-business-group-section="stream"] .tm-store-choice-button span{
  white-space:nowrap;
  word-break:keep-all;
  overflow-wrap:normal;
}
@media(max-width:700px){
  .tm-store-business-group[data-business-group-section="stream"] .tm-store-choice-button-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    max-width:none!important;
  }
}

/* =========================================================
   v1.0.25 業種追加・0件ボタン非表示
========================================================= */
.tm-store-business-empty{
  margin:0;
  padding:14px 16px;
  border-radius:12px;
  background:#f7f9fc;
  color:#7a8390;
  font-size:13px;
  line-height:1.7;
}

/* =========================================================
   v1.0.26 範囲検索・こだわり条件の含む／含まない
========================================================= */
.tm-store-condition-mode{
  display:inline-grid;
  grid-template-columns:1fr 1fr;
  width:min(100%,320px);
  gap:4px;
  padding:4px;
  border:1px solid #dfe4eb;
  border-radius:12px;
  background:#f6f8fb;
}
.tm-store-condition-mode[hidden]{display:none!important}
.tm-store-condition-mode button{
  min-height:38px;
  border:0;
  border-radius:9px;
  background:transparent;
  color:#6b7280;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
}
.tm-store-condition-mode button.is-active[data-condition-mode="include"]{
  background:#fff;
  color:#e43f54;
  box-shadow:0 3px 10px rgba(15,23,42,.08);
}
.tm-store-condition-mode button.is-active[data-condition-mode="exclude"]{
  background:#475569;
  color:#fff;
  box-shadow:0 3px 10px rgba(15,23,42,.12);
}
.tm-store-condition-tag-buttons button{position:relative}
.tm-store-condition-tag-buttons button.is-included{
  border-color:#ff566a;
  background:#ff566a;
  color:#fff;
  box-shadow:0 7px 16px rgba(255,86,106,.18);
}
.tm-store-condition-tag-buttons button.is-excluded{
  border-color:#64748b;
  background:#64748b;
  color:#fff;
  box-shadow:0 7px 16px rgba(71,85,105,.16);
}
.tm-store-condition-tag-buttons button.is-included small,
.tm-store-condition-tag-buttons button.is-excluded small{color:#fff}
.tm-store-condition-tag-buttons button.is-included::after,
.tm-store-condition-tag-buttons button.is-excluded::after{
  display:inline-flex;
  align-items:center;
  min-height:18px;
  padding:1px 6px;
  border-radius:999px;
  background:rgba(255,255,255,.22);
  color:#fff;
  font-size:9px;
  line-height:1;
}
.tm-store-condition-tag-buttons button.is-included::after{content:"含む"}
.tm-store-condition-tag-buttons button.is-excluded::after{content:"含まない"}

.tm-store-target-range-grid-lines{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
.tm-store-target-range-line{
  display:grid;
  grid-template-columns:minmax(92px,auto) auto minmax(90px,1fr) auto minmax(90px,1fr) auto;
  align-items:center;
  gap:8px;
  min-width:0;
}
.tm-store-target-range-line strong{color:#334155;font-size:12px}
.tm-store-target-range-line>span,
.tm-store-target-range-line>em,
.tm-store-target-range-line>b{color:#64748b;font-size:11px;font-style:normal;font-weight:700;white-space:nowrap}
.tm-store-target-range-line input,
.tm-store-target-range-line select{
  width:100%;
  min-width:0;
  height:42px;
  border:1px solid #cbd5e1;
  border-radius:10px;
  background:#fff;
  padding:0 11px;
}
.tm-store-target-pay-line{grid-template-columns:minmax(92px,auto) minmax(90px,.7fr) minmax(90px,1fr) auto minmax(90px,1fr) auto}
@media(max-width:700px){
  .tm-store-target-range-line,
  .tm-store-target-pay-line{
    grid-template-columns:minmax(82px,auto) 1fr auto 1fr auto;
  }
  .tm-store-target-range-line>span{display:none}
  .tm-store-target-pay-line select{grid-column:2/-1}
  .tm-store-condition-mode{width:100%}
}


/* v1.0.44 店舗詳細タイプ */
.tm-store-detail-type-setting{padding:16px;border:1px solid #dbe5f1;border-radius:16px;background:#f8fafc}
.tm-store-detail-type-buttons{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:10px}
.tm-store-detail-type-buttons label{margin:0}
.tm-store-detail-type-buttons input{position:absolute;opacity:0;pointer-events:none}
.tm-store-detail-type-buttons span{display:flex;align-items:center;justify-content:center;min-height:46px;padding:8px;border:1px solid #cbd5e1;border-radius:12px;background:#fff;color:#334155;font-weight:800;text-align:center;cursor:pointer}
.tm-store-detail-type-buttons input:checked+span{border-color:#ff6b7c;background:#fff3f5;color:#e94359;box-shadow:0 0 0 1px rgba(233,67,89,.15) inset}
@media(max-width:782px){.tm-store-detail-type-buttons{grid-template-columns:repeat(2,minmax(0,1fr))}.tm-store-detail-type-buttons label:last-child{grid-column:1/-1}}


/* v1.0.47 店舗更新情報 */
.tm-store-updates-section{border-color:#f2d5da;background:linear-gradient(180deg,#fff,#fffafb)}
.tm-store-update-groups{display:grid;grid-template-columns:1fr;gap:14px}
.tm-store-update-group{min-width:0;border:1px solid #e6e9ef;border-radius:16px;background:#fff;overflow:hidden}
.tm-store-update-group h4{margin:0;padding:12px 14px;border-bottom:1px solid #eef1f5;background:#f8fafc;color:#172033;font-size:14px}
.tm-store-update-group.is-notice{border:2px solid #ef6675;background:#fff8f9;box-shadow:0 8px 22px rgba(190,24,48,.10)}
.tm-store-update-group.is-notice h4{display:flex;align-items:center;gap:7px;border-bottom:1px solid #f7c8ce;background:#ffe8eb;color:#b42335;font-weight:900}
.tm-store-update-group.is-notice h4::before{content:"⚠️";font-size:16px;line-height:1}
.tm-store-update-group.is-notice .tm-store-update-public-list{background:#fff8f9}
.tm-store-update-group.is-notice .tm-store-update-public-item{padding:15px 16px}
.tm-store-update-group.is-notice .tm-store-update-public-item p{color:#7f1d2d;font-weight:800}
.tm-store-update-public-list{display:grid;gap:0}
.tm-store-update-public-item{padding:13px 14px;border-top:1px dashed #edf0f4}
.tm-store-update-public-item:first-child{border-top:0}
.tm-store-update-public-item p{margin:0;color:#334155;font-size:13px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}


.tm-store-update-public-item small{display:block;color:#94a3b8;font-size:10px}
.tm-store-update-public-item.is-photo-item{padding:14px}
@media(max-width:600px){.tm-store-update-groups{grid-template-columns:1fr;gap:10px}.tm-store-update-group.is-work-details{grid-column:1/-1}}


/* v1.0.55 稼働明細：投稿日順アコーディオン・写真スライダー */
.tm-store-update-group.is-work-details{grid-column:1/-1}
.tm-store-update-public-list.is-work-details-list{display:grid;gap:10px;padding:10px;background:#fff}
.tm-store-work-accordion{border:1px solid #e5eaf1;border-radius:14px;background:#fff;overflow:hidden}
.tm-store-work-accordion>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;min-height:54px;padding:12px 14px;list-style:none;cursor:pointer;background:#f8fafc;color:#172033;font-weight:800}
.tm-store-work-accordion>summary::-webkit-details-marker{display:none}
.tm-store-work-accordion>summary b{position:relative;display:block;width:28px;height:28px;border-radius:50%;background:#fff;border:1px solid #dbe3ed;color:transparent;font-size:0;line-height:0}
.tm-store-work-accordion>summary b::before{content:"";position:absolute;left:50%;top:50%;width:6px;height:6px;border-right:2px solid #64748b;border-bottom:2px solid #64748b;transform:translate(-50%,-62%) rotate(45deg);transform-origin:center;transition:transform .18s ease}
.tm-store-work-accordion[open]>summary b::before{transform:translate(-50%,-38%) rotate(225deg)}
.tm-store-work-summary-main{display:flex;align-items:center;gap:8px;min-width:0;white-space:nowrap}
.tm-store-work-summary-date{font-size:13px;white-space:nowrap}
.tm-store-work-summary-count{display:inline-flex;align-items:center;flex:0 0 auto;padding:4px 9px;border-radius:999px;background:#fff;color:#64748b;font-size:11px;font-weight:800;white-space:nowrap}
.tm-store-work-accordion-body{padding:12px 14px 14px;border-top:1px solid #edf1f5}
.tm-store-work-accordion-body>p{margin:12px 0 0;color:#334155;font-size:13px;line-height:1.75;white-space:pre-wrap;overflow-wrap:anywhere}
.tm-store-work-slider{position:relative;max-width:760px;margin:0 auto}
.tm-store-work-slider-stage{position:relative;width:100%;overflow:hidden;border-radius:14px;background:#f4f6f8;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.tm-store-work-slider-slide{display:none;margin:0;width:100%;aspect-ratio:4/3;background:#f4f6f8;cursor:zoom-in}
.tm-store-work-slider-slide.is-active{display:grid;place-items:center}
.tm-store-work-slider-slide img{display:block;width:100%;height:100%;max-height:620px;object-fit:contain;-webkit-user-drag:none;pointer-events:none}
.tm-store-work-slider-arrow{position:absolute;top:50%;z-index:2;display:grid;place-items:center;width:42px;height:42px;margin-top:-21px;border:1px solid rgba(255,255,255,.75);border-radius:50%;background:rgba(15,23,42,.58);color:#fff;font-size:30px;line-height:1;cursor:pointer;backdrop-filter:blur(4px)}
.tm-store-work-slider-arrow.is-prev{left:10px}
.tm-store-work-slider-arrow.is-next{right:10px}
.tm-store-work-slider-dots{display:flex;justify-content:center;flex-wrap:wrap;gap:7px;margin-top:10px}
.tm-store-work-slider-dot{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:#cbd5e1;cursor:pointer;transition:width .16s ease,background .16s ease}
.tm-store-work-slider-dot.is-active{width:22px;background:#ff6b7c}
@media(max-width:600px){
  .tm-store-work-accordion>summary{grid-template-columns:minmax(0,1fr) auto;gap:8px;padding:11px 12px}
  .tm-store-work-summary-main{gap:6px;overflow:hidden}
  .tm-store-work-summary-date{overflow:hidden;text-overflow:ellipsis}
  .tm-store-work-accordion>summary b{grid-column:2}
  .tm-store-work-accordion-body{padding:10px}
  .tm-store-work-slider-arrow{width:36px;height:36px;margin-top:-18px;font-size:26px}
  .tm-store-work-slider-arrow.is-prev{left:7px}.tm-store-work-slider-arrow.is-next{right:7px}
}

/* v1.0.57 店舗詳細表示の簡素化 */
.tm-reference-detail-main-title h2{font-size:21px}
.tm-reference-detail-main-section .tm-reference-detail-table>div:empty{display:none}
@media(max-width:700px){
  .tm-reference-detail-main-title h2{font-size:18px}
  .tm-reference-detail-table>div{min-height:0}
  .tm-reference-detail-table dt{align-items:center;background:#f7f8fa}
}

/* =========================================================
   v1.0.62 店舗詳細テーブル・検索タグ表示調整
========================================================= */
.tm-reference-detail-copy h2{margin-bottom:10px}

.tm-reference-detail-main-section .tm-reference-detail-table{
  border-left:0;
  border-right:0;
}
.tm-reference-detail-main-section .tm-reference-detail-table>div{
  border-right:0;
}
.tm-reference-detail-main-section .tm-reference-detail-table dt{
  background:#fffbc7;
  color:#30343b;
}
.tm-reference-detail-main-section .tm-reference-detail-table dd{
  white-space:normal;
}
@media(max-width:700px){
  .tm-reference-detail-main-section .tm-reference-detail-table dt{background:#fffbc7}
}

/* =========================================================
   v1.0.76 検索固定バー3ボタン・店舗リスト追加
========================================================= */


.tm-store-display-chip-item{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 10px;
  border:1px solid #d9dee7;
  border-radius:999px;
  background:#fff;
  color:#313947;
  font-size:12px;
  font-weight:700;
  line-height:1.45;
}

.tm-store-display-chip-item.is-room{border-color:#bcd7ef;background:#f4f9ff;color:#245a8d}

.tm-store-display-chip-item.is-required{border-color:#e6395b;background:#ffd9e1;color:#9f1239}
.tm-store-display-chip-item.is-optional{border-color:#3b82f6;background:#eaf3ff;color:#1d4ed8}
.tm-store-display-chip-item.is-possible{border-color:#22a06b;background:#e9faef;color:#137044}
.tm-store-display-chip-item.is-consider{border-color:#f59e0b;background:#ffe3ad;color:#8a4b00}
.tm-store-display-chip-item.is-ng{border-color:#b9c0c8;background:#eef1f4;color:#41474f}
.tm-store-display-chip-item.is-condition{border-color:#ebcbe0;background:#fff2fb;color:#7b4068}
.tm-store-display-chip-item.is-spec{border-color:#c9d4e3;background:#f4f7fb;color:#42566e}
.tm-store-display-chip-item.is-pay{border-color:#b9d8c4;background:#f0faf3;color:#2f6b42}
.tm-store-display-chip-item.is-attendance{border-color:#d3c8ea;background:#f7f3ff;color:#5c478c}
@media(max-width:700px){
  
  .tm-store-display-chip-item{min-height:28px;padding:5px 9px;font-size:11px}
}

/* =========================================================
   v1.0.77 店舗保存ボタン
========================================================= */
.tm-store-result-save-row{display:flex;justify-content:flex-end;margin:0 0 9px}
.tm-store-save-button{display:inline-flex;align-items:center;justify-content:center;min-height:32px;padding:5px 12px;border:1px solid #b9c7d8;border-radius:999px;background:#fff;color:#405064;font-size:11px;font-weight:900;line-height:1.2;cursor:pointer;transition:background .16s ease,border-color .16s ease,color .16s ease,transform .16s ease}
.tm-store-save-button:hover{transform:translateY(-1px);border-color:#ff8e9c;color:#d83f53}
.tm-store-save-button.is-saved{border-color:#df5368;background:#df5368;color:#fff;box-shadow:0 5px 14px rgba(223,83,104,.18)}
.tm-store-save-button:disabled{opacity:.55;cursor:wait;transform:none}
.tm-store-detail-action-right{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.tm-store-detail-actions .tm-store-save-button{min-height:40px;padding:7px 15px;border-radius:8px}
@media(max-width:700px){
  .tm-store-result-save-row{margin-bottom:7px}
  .tm-store-save-button{min-height:30px;padding:4px 10px;font-size:10px}
  .tm-store-detail-actions{align-items:flex-start}
  .tm-store-detail-action-right{gap:6px}
}

/* =========================================================
   v1.0.88 右下固定ツール幅の完全統一
========================================================= */
.tm-store-detail-fixed-tools{
  --tm-store-detail-tool-width:124px;
  position:fixed;
  right:18px;
  bottom:calc(var(--tm-footer-height) + env(safe-area-inset-bottom) + 14px);
  z-index:492;
  display:flex;
  flex-direction:column;
  align-items:stretch;
  width:var(--tm-store-detail-tool-width);
  min-width:var(--tm-store-detail-tool-width);
  max-width:var(--tm-store-detail-tool-width);
  gap:8px;
  pointer-events:none;
}
.tm-store-detail-index-button,
.tm-store-detail-copy-button,
.tm-store-detail-fixed-save,
.tm-store-detail-staff-switch,
.tm-store-detail-fixed-edit{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1fr) 18px;
  align-items:center;
  box-sizing:border-box;
  width:100%!important;
  min-width:100%!important;
  max-width:100%!important;
  flex:0 0 auto;
  min-height:46px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.72);
  border-radius:13px;
  color:#fff;
  box-shadow:0 7px 20px rgba(15,23,42,.16);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-size:12px;
  font-weight:900;
  line-height:1;
  text-align:left;
  cursor:pointer;
  opacity:.76;
  transition:opacity .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease;
  pointer-events:auto;
}
.tm-store-detail-index-button span,
.tm-store-detail-copy-button span,
.tm-store-detail-fixed-save span,
.tm-store-detail-staff-switch span,
.tm-store-detail-fixed-edit span{min-width:0;white-space:nowrap}
.tm-store-detail-index-button b,
.tm-store-detail-copy-button b,
.tm-store-detail-fixed-save b,
.tm-store-detail-staff-switch b,
.tm-store-detail-fixed-edit b{display:grid;place-items:center;width:18px;height:18px;font-size:15px;line-height:1;text-align:center}
.tm-store-detail-index-button{background:rgba(55,112,225,.90)}
.tm-store-detail-copy-button{background:rgba(71,85,105,.88)}
.tm-store-detail-fixed-save{border-color:rgba(225,83,103,.80);background:rgba(255,255,255,.94);color:#d53d55}
.tm-store-detail-fixed-save.is-saved{border-color:rgba(190,54,76,.92);background:rgba(190,54,76,.94);color:#fff;box-shadow:0 8px 22px rgba(190,54,76,.25)}
.tm-store-detail-staff-switch{background:rgba(124,58,237,.90)}
.tm-store-detail-fixed-edit{background:rgba(15,118,110,.90);text-decoration:none!important}
.tm-store-detail-index-button.is-page-scrolling,
.tm-store-detail-copy-button.is-page-scrolling,
.tm-store-detail-fixed-save.is-page-scrolling,
.tm-store-detail-staff-switch.is-page-scrolling,
.tm-store-detail-fixed-edit.is-page-scrolling{opacity:.24}
.tm-store-detail-index-button:hover,.tm-store-detail-index-button:focus-visible{opacity:.94;background:rgba(29,78,216,.97);outline:none;box-shadow:0 10px 28px rgba(37,99,235,.25);transform:translateY(-1px)}
.tm-store-detail-copy-button:hover,.tm-store-detail-copy-button:focus-visible{opacity:.94;background:rgba(30,41,59,.97);outline:none;box-shadow:0 10px 28px rgba(15,23,42,.24);transform:translateY(-1px)}
.tm-store-detail-fixed-save:hover,.tm-store-detail-fixed-save:focus-visible{opacity:.98;background:#fff5f7;outline:none;transform:translateY(-1px)}
.tm-store-detail-fixed-save.is-saved:hover,.tm-store-detail-fixed-save.is-saved:focus-visible{background:rgba(176,43,66,.98);color:#fff}
.tm-store-detail-staff-switch:hover,.tm-store-detail-staff-switch:focus-visible{opacity:.96;background:rgba(109,40,217,.98);outline:none;transform:translateY(-1px)}
.tm-store-detail-fixed-edit:hover,.tm-store-detail-fixed-edit:focus-visible{opacity:.96;background:rgba(13,148,136,.98);color:#fff!important;outline:none;transform:translateY(-1px)}
.tm-store-detail-index-modal[hidden]{display:none!important}
.tm-store-detail-index-modal{position:fixed;inset:0;z-index:730;display:grid;place-items:center;padding:24px}
.tm-store-detail-index-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.42);backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}
.tm-store-detail-index-panel{position:relative;z-index:1;width:min(620px,100%);max-height:min(72vh,720px);display:flex;flex-direction:column;overflow:hidden;border:1px solid #dce2ea;border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(15,23,42,.25)}
.tm-store-detail-index-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 19px;border-bottom:1px solid #e8edf3;background:#fff}
.tm-store-detail-index-head>div>span{display:block;margin-bottom:3px;color:#2563eb;font-size:9px;font-weight:900;letter-spacing:.16em}
.tm-store-detail-index-head h3{margin:0;color:#1d2430;font-size:20px;line-height:1.3}
.tm-store-detail-index-close{display:grid;place-items:center;flex:0 0 38px;width:38px;height:38px;padding:0;border:1px solid #d7dde6;border-radius:50%;background:#fff;color:#596474;font-size:22px;line-height:1;cursor:pointer}
.tm-store-detail-index-items{display:block;flex:1 1 auto;min-height:0;padding:14px;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;scrollbar-gutter:stable}
.tm-store-detail-index-group{display:block;min-height:0;margin:0 0 12px;overflow:hidden;border:1px solid #e1e6ed;border-radius:13px;background:#fff}
.tm-store-detail-index-group:last-child{margin-bottom:0}
.tm-store-detail-index-parent{display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:10px;align-items:center;flex:0 0 auto;width:100%;min-height:48px;padding:11px 13px;border:0;border-bottom:1px solid #e8edf3;background:#f8fafc;color:#202938;text-align:left;font-size:13px;font-weight:900;cursor:pointer}
.tm-store-detail-index-parent b{color:#2563eb;text-align:center}
.tm-store-detail-index-children{display:grid;grid-template-columns:1fr;min-height:0;overflow:visible}
.tm-store-detail-index-children button{display:grid;grid-template-columns:minmax(0,1fr) 22px;gap:10px;align-items:center;width:100%;min-height:43px;padding:9px 13px 9px 28px;border:0;border-bottom:1px solid #eef2f6;background:#fff;color:#465264;text-align:left;font-size:12px;font-weight:700;cursor:pointer}
.tm-store-detail-index-children button:last-child{border-bottom:0}
.tm-store-detail-index-parent:hover,.tm-store-detail-index-parent:focus-visible,.tm-store-detail-index-children button:hover,.tm-store-detail-index-children button:focus-visible{background:#fff7f8;outline:none;color:#d93b50}
.tm-store-detail-index-children button b{color:#9aa4b1;text-align:center}
.tm-store-detail-index-target{scroll-margin-top:100px}
body.tm-store-detail-index-open{overflow:hidden}
@media(max-width:700px){
  .tm-store-detail-fixed-tools{--tm-store-detail-tool-width:104px;right:10px;bottom:calc(var(--tm-footer-height) + env(safe-area-inset-bottom) + 10px);gap:6px}
  .tm-store-detail-index-button,.tm-store-detail-copy-button,.tm-store-detail-fixed-save,.tm-store-detail-staff-switch,.tm-store-detail-fixed-edit{min-height:52px;padding:0 10px;border-radius:12px;font-size:10px}
  .tm-store-detail-index-modal{align-items:end;padding:12px 10px calc(var(--tm-footer-height) + env(safe-area-inset-bottom) + 10px)}
  .tm-store-detail-index-panel{width:100%;max-height:68vh;border-radius:16px}
  .tm-store-detail-index-head{padding:14px 15px}
  .tm-store-detail-index-head h3{font-size:18px}
  .tm-store-detail-index-items{padding:10px;min-height:0}
  .tm-store-detail-index-parent{min-height:46px;padding:10px 11px}
  .tm-store-detail-index-children button{min-height:41px;padding:8px 11px 8px 23px;font-size:11px}
}

/* =========================================================
   v1.0.83 スマホ店舗詳細1項目縦表示・系列見出し整理
========================================================= */

@media(max-width:700px){
  /* 最新情報は注意事項・SBを含め1項目1列 */
  .tm-store-update-groups{grid-template-columns:1fr!important;gap:10px}
  .tm-store-update-group,
  .tm-store-update-group.is-work-details{grid-column:1/-1}

  /* 店舗詳細は「項目名 → 内容」の2段を1項目ずつ縦並び */
  .tm-reference-detail-main-section .tm-reference-detail-table{
    grid-template-columns:1fr!important;
    border-top:1px solid #e2e6ec;
    border-left:0;
  }
  .tm-reference-detail-main-section .tm-reference-detail-table>div,
  .tm-reference-detail-main-section .tm-reference-detail-table>div.is-wide{
    grid-column:1/-1!important;
    grid-template-columns:1fr!important;
    width:100%;
    border-right:0;
    border-bottom:1px solid #e2e6ec;
  }
  .tm-reference-detail-main-section .tm-reference-detail-table dt{
    display:flex;
    width:100%;
    min-height:48px;
    padding:13px 16px;
    align-items:center;
    border-bottom:1px solid #e2e6ec;
    background:#fffbc7;
    font-size:12px;
  }
  .tm-reference-detail-main-section .tm-reference-detail-table dd{
    width:100%;
    padding:15px 16px 18px;
    font-size:13px;
    line-height:1.75;
    background:#fff;
  }

}

/* =========================================================
   v1.0.95 店舗詳細 スタッフ用タブ簡素化
========================================================= */
.tm-store-detail-audience-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:18px 0 20px;padding:6px;border:1px solid #d9e0e9;border-radius:12px;background:#eef2f7}
.tm-store-detail-audience-tabs button{min-height:48px;border:1px solid transparent;border-radius:8px;background:transparent;color:#657080;font-size:13px;font-weight:900;cursor:pointer;transition:background .18s ease,color .18s ease,box-shadow .18s ease,border-color .18s ease}
.tm-store-detail-audience-tabs button.is-active{border-color:#2563eb;background:#2563eb;color:#fff;box-shadow:0 5px 14px rgba(37,99,235,.22)}
.tm-store-staff-page{display:grid;gap:16px;scroll-margin-top:24px}
.tm-store-staff-page-head{padding:22px 24px;border:1px solid #dfe5ed;border-radius:14px;background:#fff}
.tm-store-staff-page-head>span{display:block;margin-bottom:5px;color:#2563eb;font-size:10px;font-weight:900;letter-spacing:.16em}
.tm-store-staff-page-head h2{margin:0;color:#182233;font-size:25px;line-height:1.25}
.tm-store-staff-page-head p{margin:8px 0 0;color:#7a8492;font-size:12px;line-height:1.7}
.tm-store-staff-page-empty>p{margin:0;padding:22px;border:1px dashed #cfd7e2;border-radius:12px;background:#fff;color:#7a8492;text-align:center}
.tm-store-staff-view-tabs{display:flex;align-items:stretch;gap:8px;overflow-x:auto;padding:8px;border:1px solid #dfe4eb;border-radius:12px 12px 0 0;background:#f3f6fa;scrollbar-width:thin}
.tm-store-staff-view-tabs button{flex:1 0 150px;min-height:50px;padding:10px 14px;border:1px solid #d8e0ea;border-radius:8px;background:#fff;color:#6b7686;font-size:13px;font-weight:900;cursor:pointer;white-space:nowrap;transition:background .16s ease,color .16s ease,border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.tm-store-staff-view-tabs button:hover,.tm-store-staff-view-tabs button:focus-visible{border-color:#93b4ef;background:#eef5ff;color:#2358a8;outline:none}
.tm-store-staff-view-tabs button.is-active{border-color:#1d4ed8;background:#2563eb;color:#fff;box-shadow:0 5px 14px rgba(37,99,235,.25);transform:translateY(-1px)}
.tm-store-staff-view-panels{border:1px solid #dfe4eb;border-top:0;border-radius:0 0 12px 12px;background:#fff;overflow:hidden}
.tm-store-staff-view-panel{padding:20px 18px}
.tm-store-staff-view-panel[hidden]{display:none!important}
.tm-store-staff-copy-source{min-height:130px;padding:16px;border:1px solid #dce8f6;border-radius:10px;background:#f5faff;color:#283548;font-size:13px;line-height:1.8;overflow-wrap:anywhere}
.tm-store-staff-empty-text,.tm-store-staff-empty{color:#8a94a3}
.tm-store-detail-fixed-tools[hidden]{display:none!important}
.tm-store-staff-fixed-tools{--tm-store-staff-tool-width:124px;position:fixed;right:18px;bottom:calc(var(--tm-footer-height) + env(safe-area-inset-bottom) + 14px);z-index:494;display:flex;flex-direction:column;align-items:stretch;width:var(--tm-store-staff-tool-width);gap:8px;pointer-events:none}
.tm-store-staff-fixed-copy,.tm-store-staff-fixed-save,.tm-store-staff-fixed-switch,.tm-store-staff-fixed-edit,.tm-store-staff-fixed-top{display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;box-sizing:border-box;width:100%;min-height:46px;padding:0 13px;border:1px solid rgba(255,255,255,.75);border-radius:13px;color:#fff;box-shadow:0 7px 20px rgba(15,23,42,.16);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-size:12px;font-weight:900;text-align:left;cursor:pointer;pointer-events:auto;transition:opacity .18s ease,background .18s ease,transform .18s ease}
.tm-store-staff-fixed-copy{background:rgba(37,99,235,.92)}
.tm-store-staff-fixed-save{border-color:rgba(225,83,103,.80);background:rgba(255,255,255,.94);color:#d53d55}
.tm-store-staff-fixed-save.is-saved{border-color:rgba(190,54,76,.92);background:rgba(190,54,76,.94);color:#fff;box-shadow:0 8px 22px rgba(190,54,76,.25)}
.tm-store-staff-fixed-switch{background:rgba(124,58,237,.90)}
.tm-store-staff-fixed-edit{background:rgba(15,118,110,.90);text-decoration:none!important}
.tm-store-staff-fixed-top{background:rgba(71,85,105,.88)}
.tm-store-staff-fixed-copy b,.tm-store-staff-fixed-save b,.tm-store-staff-fixed-switch b,.tm-store-staff-fixed-edit b,.tm-store-staff-fixed-top b{display:grid;place-items:center;width:18px;height:18px;font-size:15px;line-height:1}
.tm-store-staff-fixed-copy:hover,.tm-store-staff-fixed-copy:focus-visible{background:rgba(29,78,216,.98);outline:none;transform:translateY(-1px)}
.tm-store-staff-fixed-save:hover,.tm-store-staff-fixed-save:focus-visible{background:#fff5f7;color:#d53d55;outline:none;transform:translateY(-1px)}
.tm-store-staff-fixed-save.is-saved:hover,.tm-store-staff-fixed-save.is-saved:focus-visible{background:rgba(176,43,66,.98);color:#fff}
.tm-store-staff-fixed-switch:hover,.tm-store-staff-fixed-switch:focus-visible{background:rgba(109,40,217,.98);outline:none;transform:translateY(-1px)}
.tm-store-staff-fixed-edit:hover,.tm-store-staff-fixed-edit:focus-visible{background:rgba(13,148,136,.98);color:#fff!important;outline:none;transform:translateY(-1px)}
.tm-store-staff-fixed-top:hover,.tm-store-staff-fixed-top:focus-visible{background:rgba(30,41,59,.97);outline:none;transform:translateY(-1px)}
@media(max-width:700px){
  .tm-store-detail-audience-tabs{margin:14px 0 16px;padding:5px;gap:5px}
  .tm-store-detail-audience-tabs button{min-height:44px;font-size:12px}
  .tm-store-staff-page{gap:14px}
  .tm-store-staff-page-head{padding:17px 15px}
  .tm-store-staff-page-head h2{font-size:21px}
  .tm-store-staff-view-tabs{gap:6px;padding:6px}
  .tm-store-staff-view-tabs button{flex-basis:120px;min-height:46px;padding:9px 12px;font-size:12px}
  .tm-store-staff-view-panel{padding:14px 12px}
  .tm-store-staff-copy-source{min-height:110px;padding:13px;font-size:12px}
  .tm-store-staff-fixed-tools{--tm-store-staff-tool-width:104px;right:10px;bottom:calc(var(--tm-footer-height) + env(safe-area-inset-bottom) + 10px);gap:6px}
  .tm-store-staff-fixed-copy,.tm-store-staff-fixed-save,.tm-store-staff-fixed-switch,.tm-store-staff-fixed-edit,.tm-store-staff-fixed-top{min-height:52px;padding:0 10px;border-radius:12px;font-size:10px}
}


/* =========================================================
   v1.0.96 PC業種ボタンの潰れ防止
========================================================= */
@media(min-width:701px){
  .tm-store-business-group[data-business-group-section] .tm-store-choice-button-grid,
  .tm-store-business-group .tm-store-choice-button-grid,
  .tm-store-business-group:nth-child(2) .tm-store-choice-button-grid{
    width:100%;
    max-width:none;
    grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  }
  .tm-store-business-button-grid .tm-store-choice-button{
    width:100%;
    min-width:0;
    min-height:52px;
    padding:10px 14px;
  }
  .tm-store-business-button-grid .tm-store-choice-button span{
    white-space:normal;
    word-break:keep-all;
    overflow-wrap:anywhere;
    line-height:1.4;
  }
}

/* =========================================================
   v1.0.100 スマホ店舗詳細ツールを右側縦タブ化
   PCは既存デザインを維持
========================================================= */
@media(max-width:700px){
  .tm-store-detail-fixed-tools,
  .tm-store-staff-fixed-tools{
    --tm-store-detail-tool-width:42px;
    --tm-store-staff-tool-width:42px;
    right:0;
    bottom:calc(var(--tm-footer-height) + env(safe-area-inset-bottom) + 8px);
    width:42px;
    gap:4px;
    align-items:stretch;
  }
  .tm-store-detail-index-button,
  .tm-store-detail-copy-button,
  .tm-store-detail-fixed-save,
  .tm-store-detail-staff-switch,
  .tm-store-detail-fixed-edit,
  .tm-store-staff-fixed-copy,
  .tm-store-staff-fixed-save,
  .tm-store-staff-fixed-switch,
  .tm-store-staff-fixed-edit,
  .tm-store-staff-fixed-top{
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    width:42px!important;
    min-width:42px!important;
    max-width:42px!important;
    min-height:72px;
    padding:6px 3px;
    gap:4px;
    border-radius:10px 0 0 10px;
    font-size:9px;
    text-align:center;
  }
  .tm-store-detail-index-button span,
  .tm-store-detail-copy-button span,
  .tm-store-detail-fixed-save span,
  .tm-store-detail-staff-switch span,
  .tm-store-detail-fixed-edit span,
  .tm-store-staff-fixed-copy span,
  .tm-store-staff-fixed-save span,
  .tm-store-staff-fixed-switch span,
  .tm-store-staff-fixed-edit span,
  .tm-store-staff-fixed-top span{
    writing-mode:vertical-rl;
    text-orientation:upright;
    letter-spacing:.04em;
    line-height:1.05;
    white-space:nowrap;
  }
  .tm-store-detail-index-button b,
  .tm-store-detail-copy-button b,
  .tm-store-detail-fixed-save b,
  .tm-store-detail-staff-switch b,
  .tm-store-detail-fixed-edit b,
  .tm-store-staff-fixed-copy b,
  .tm-store-staff-fixed-save b,
  .tm-store-staff-fixed-switch b,
  .tm-store-staff-fixed-edit b,
  .tm-store-staff-fixed-top b{
    width:15px;
    height:15px;
    font-size:12px;
  }
}
@media(max-width:700px){
  .tm-store-detail-index-button span{font-size:0}
  .tm-store-detail-index-button span::after{content:"リスト";font-size:9px}
  .tm-store-detail-fixed-save span{font-size:0}
  .tm-store-detail-fixed-save span::after{content:"保存";font-size:9px}
  .tm-store-detail-fixed-save.is-saved span::after{content:"保存済"}
}

/* =========================================================
   v1.0.107 最短予定日：店舗単位集約＋複数コメント
========================================================= */
.tm-store-earliest-public{display:grid;gap:9px}
.tm-store-earliest-public-line{display:flex;align-items:center;justify-content:space-between;gap:14px}
.tm-store-earliest-public-line strong{color:#20352a;font-size:14px;line-height:1.5}
.tm-store-earliest-public-line span{flex:0 0 auto;max-width:45%;padding:6px 10px;border-radius:999px;background:#fff1cb;color:#74520b;font-size:11px;font-weight:900;line-height:1.4;overflow-wrap:anywhere}
.tm-store-earliest-public>p{margin:0;padding:10px 12px;border-left:3px solid #6ab38d;background:#f7fcf9;color:#435247!important;font-weight:500!important}
@media(max-width:600px){
  .tm-store-earliest-public-line{align-items:flex-start;flex-direction:column;gap:7px}
  .tm-store-earliest-public-line span{max-width:100%}
}

/* =========================================================
   v1.0.114 系列店舗・最新情報カード視認性整理
========================================================= */
.tm-store-updates-section{
  border-color:#d6dee9;
  background:#f1f5f9;
}
.tm-store-update-groups{gap:12px}
.tm-store-update-group{
  border:1px solid #cbd5e1;
  background:#fff;
  box-shadow:0 5px 14px rgba(15,23,42,.06);
}
.tm-store-update-group h4{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:46px;
  padding:12px 15px;
  border-bottom:1px solid #d9e1eb;
  background:#eaf0f6;
  color:#172033;
  font-weight:900;
}
.tm-store-update-group h4::before{display:inline-grid;place-items:center;width:24px;height:24px;flex:0 0 24px;border-radius:8px;background:#fff;font-size:14px;line-height:1}
.tm-store-update-group.is-notice{border:2px solid #e65b6b;background:#fff6f7;box-shadow:0 6px 18px rgba(190,24,48,.11)}
.tm-store-update-group.is-notice h4{border-bottom-color:#efb6be;background:#ffdfe4;color:#a91f32}
.tm-store-update-group.is-notice h4::before{content:"⚠️";background:#fff3f5}
.tm-store-update-group.is-sb{border-color:#8dc6e8}
.tm-store-update-group.is-sb h4{background:#e3f3fc;color:#165477}
.tm-store-update-group.is-sb h4::before{content:"💸"}
.tm-store-update-group.is-earliest_date{border-color:#96d1ae}
.tm-store-update-group.is-earliest_date h4{background:#e7f6ed;color:#276744}
.tm-store-update-group.is-earliest_date h4::before{content:"📅"}
.tm-store-update-group.is-campaign{border-color:#e7bc78}
.tm-store-update-group.is-campaign h4{background:#fff1d8;color:#7d5310}
.tm-store-update-group.is-campaign h4::before{content:"🎁"}
.tm-store-update-group.is-work-details{border-color:#9eb8e3}
.tm-store-update-group.is-work-details h4{background:#eaf1fc;color:#2d558f}
.tm-store-update-group.is-work-details h4::before{content:"📸"}
.tm-store-update-public-list{background:#fff}
.tm-store-update-public-item{background:#fff}

.tm-reference-series-section{border-color:#cbd5e1;background:#f4f7fa}
.tm-series-store-cards{display:grid;gap:10px}
.tm-series-store-card{
  position:relative;
  display:grid;
  gap:9px;
  padding:14px 16px;
  border:1px solid #c8d3df;
  border-radius:13px;
  background:#fff;
  box-shadow:0 4px 12px rgba(15,23,42,.05);
  cursor:pointer;
  transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease;
  scroll-margin-top:18px;
}
.tm-series-store-card:hover,.tm-series-store-card:focus-visible{transform:translateY(-2px);border-color:#8ba9c7;box-shadow:0 7px 16px rgba(15,23,42,.08);outline:none}
.tm-series-store-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto 22px;gap:8px;align-items:center}
.tm-series-store-card-head strong{color:#172033;font-size:15px;line-height:1.4;overflow-wrap:anywhere}
.tm-series-store-card-head span{padding:4px 8px;border-radius:999px;background:#eef3f8;color:#5a6675;font-size:10px;font-weight:800;white-space:nowrap}
.tm-series-store-card-head b{color:#9aa6b4;font-size:20px;text-align:right}
.tm-series-store-card-info{display:flex;flex-wrap:wrap;gap:6px 14px}
.tm-series-store-card-info p{display:flex;align-items:flex-start;gap:5px;margin:0;color:#596575;font-size:11px;line-height:1.55;overflow-wrap:anywhere}
.tm-series-store-card-info p i{font-style:normal;flex:0 0 auto}
.tm-series-store-card-info .is-meta{display:flex;align-items:center;gap:6px;max-width:100%;white-space:nowrap}
.tm-series-store-card-info .is-meta>span{display:inline-flex;align-items:center;gap:4px;min-width:0}
.tm-series-store-card-info .is-meta .is-location{min-width:0}
.tm-series-store-card-info .is-meta .is-sb{flex:0 0 auto;color:#315d78}
.tm-series-meta-separator{flex:0 0 auto;color:#a0a9b4;font-weight:900}
.tm-series-store-card-info .is-notice{flex-basis:100%;padding:7px 9px;border-radius:8px;background:#fff0f2;color:#a3283a;font-weight:800}
@media(max-width:640px){
  .tm-series-store-card{padding:12px}
  .tm-series-store-card-head{grid-template-columns:minmax(0,1fr) 20px}
  .tm-series-store-card-head span{grid-row:2;grid-column:1;justify-self:start}
  .tm-series-store-card-head b{grid-row:1/3;grid-column:2}
  .tm-series-store-card-info{display:grid;gap:5px}
}


/* =========================================================
   v1.0.116 固定ツール収納＋系列所在地/SB同列表示
========================================================= */
.tm-store-detail-fixed-tools,
.tm-store-staff-fixed-tools{
  transition:width .18s ease,min-width .18s ease,max-width .18s ease;
}
.tm-store-tools-toggle{
  display:grid;
  place-items:center;
  align-self:flex-end;
  box-sizing:border-box;
  width:34px;
  min-width:34px;
  max-width:34px;
  height:30px;
  min-height:30px;
  padding:0;
  border:1px solid rgba(148,163,184,.7);
  border-radius:10px;
  background:rgba(255,255,255,.94);
  color:#526071;
  box-shadow:0 5px 16px rgba(15,23,42,.13);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font-size:20px;
  font-weight:900;
  line-height:1;
  cursor:pointer;
  pointer-events:auto;
  transition:background .16s ease,color .16s ease,transform .16s ease;
}
.tm-store-tools-toggle:hover,.tm-store-tools-toggle:focus-visible{background:#f3f6fa;color:#1f2937;outline:none;transform:translateX(-1px)}
.tm-store-detail-fixed-tools.is-collapsed,
.tm-store-staff-fixed-tools.is-collapsed{
  width:34px!important;
  min-width:34px!important;
  max-width:34px!important;
  gap:0!important;
}
.tm-store-detail-fixed-tools.is-collapsed>:not(.tm-store-tools-toggle),
.tm-store-staff-fixed-tools.is-collapsed>:not(.tm-store-tools-toggle){display:none!important}
@media(max-width:700px){
  .tm-store-tools-toggle{
    width:34px;
    min-width:34px;
    max-width:34px;
    height:34px;
    min-height:34px;
    margin-right:4px;
    border-radius:10px 0 0 10px;
    font-size:20px;
  }
  .tm-store-detail-fixed-tools.is-collapsed,
  .tm-store-staff-fixed-tools.is-collapsed{
    width:38px!important;
    min-width:38px!important;
    max-width:38px!important;
  }
  .tm-series-store-card-info .is-meta{width:100%;gap:5px;font-size:10px;white-space:nowrap}
  .tm-series-store-card-info .is-meta .is-location{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .tm-series-store-card-info .is-meta .is-sb{white-space:nowrap}
}

/* =========================================================
   v1.0.121 説明文整理・系列業種タブ・固定ツール開閉調整
========================================================= */
.tm-series-business-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin:0 0 12px;
}
.tm-series-business-tabs button{
  min-height:32px;
  padding:6px 12px;
  border:1px solid #c7d2df;
  border-radius:999px;
  background:#fff;
  color:#526071;
  font-size:11px;
  font-weight:800;
  line-height:1.2;
  cursor:pointer;
}
.tm-series-business-tabs button.is-active{
  border-color:#477ee8;
  background:#eaf1ff;
  color:#2458be;
  box-shadow:0 3px 10px rgba(37,99,235,.12);
}
.tm-series-store-card[hidden],
.tm-series-store-card.is-series-filtered-out{
  display:none!important;
}
.tm-store-tools-toggle{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0!important;
  background:rgba(255,255,255,.68);
  opacity:.72;
  text-align:center;
}
.tm-store-tools-toggle>span{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  margin:0;
  padding:0;
  line-height:1;
  text-align:center;
  transform:none;
}
.tm-store-tools-toggle:hover,
.tm-store-tools-toggle:focus-visible{
  background:rgba(255,255,255,.88);
  opacity:.94;
  transform:none;
}
@media(max-width:700px){
  .tm-series-business-tabs{
    flex-wrap:nowrap;
    overflow-x:auto;
    margin-right:-2px;
    padding:0 2px 3px 0;
    scrollbar-width:none;
  }
  .tm-series-business-tabs::-webkit-scrollbar{display:none}
  .tm-series-business-tabs button{flex:0 0 auto}
  .tm-store-tools-toggle{margin-right:4px}
}


/* =========================================================
   v1.0.142 スマホ検索結果：保存ボタンを店舗名段へ移動
========================================================= */
.tm-store-result-caption-head{display:block;min-width:0}
.tm-store-result-caption-save{display:none}
@media(max-width:520px){
  .tm-store-result-caption-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px}
  .tm-store-result-caption-head h3{min-width:0;margin:0;color:#1d2430;font-size:14px;line-height:1.35;overflow-wrap:anywhere}
  .tm-store-result-caption-save{display:flex;align-items:center;justify-content:flex-end;flex:0 0 auto}
  .tm-store-result-caption-save .tm-store-save-button{min-height:32px;padding:4px 10px;font-size:10px;white-space:nowrap}
  .tm-store-result-body>.tm-store-result-save-row{display:none}
  .tm-store-result-body{padding-top:11px}
  .tm-store-result-caption{padding-top:10px;padding-bottom:10px}
  .tm-store-result-meta-line{margin-top:5px}
}
