#loc-module{--bg:#ffffff; --panel:#ffffff; --base:#e8e4e1; --base-stroke:#ffffff;
    --orange:#f54f00; --orange-glow:#ff8a4d; --text:#1c2331; --muted:#6b7280;
    --accent:#f54f00;}
#loc-module *{box-sizing:border-box}
#loc-module{background:var(--bg);
    color:var(--text);
    ;display:flex;flex-direction:column;align-items:center;padding:24px}
#loc-module h1{font-size:20px;font-weight:700;letter-spacing:.04em;margin-bottom:2px}
#loc-module .sub{color:var(--muted);font-size:12px;margin-bottom:18px}
#loc-module .wrap{display:flex;gap:24px;flex-wrap:wrap;justify-content:center;align-items:flex-start;width:100%;}
#loc-module .mapcard{background:var(--panel);border-radius:8px;padding:14px;
    flex:1 1 480px;min-width:320px}
#loc-module svg{width:100%;height:auto;display:block;overflow:visible}
#loc-module .pref{fill:var(--base);stroke:var(--base-stroke);stroke-width:.8;
    transition:fill .55s ease, filter .55s ease;cursor:default}
#loc-module .pref.on{fill:var(--orange)}
#loc-module .pref.pulse{animation:pop .6s ease}
#loc-module .island-base{fill:var(--base);stroke:var(--base-stroke);stroke-width:.8}
#loc-module .side{flex:0 1 300px;min-width:260px;display:flex;flex-direction:column;gap:14px}
#loc-module .stat{background:#fafbfc;border:1px solid #e6e9ef;border-radius:8px;padding:16px}
#loc-module .big{font-size:40px;font-weight:800;line-height:1;color:var(--orange)}
#loc-module .big small{font-size:16px;color:var(--muted);font-weight:600}
#loc-module .barwrap{height:9px;background:#eef0f4;border-radius:6px;overflow:hidden;margin-top:12px}
#loc-module .bar{height:100%;width:0;background:linear-gradient(90deg,#f54f00,#ff8a4d);transition:width 1s ease}
#loc-module .regions{display:flex;flex-direction:column;gap:7px;margin-top:4px}
#loc-module .region{font-size:14px;background:#f4f6f8;border-radius:6px;border:1px solid #e6e9ef;overflow:hidden}
#loc-module .rhead{display:flex;align-items:center;justify-content:space-between;
    padding:9px 11px 7px 11px;cursor:pointer;user-select:none}
#loc-module .rhead:hover{background:#eef1f4}
#loc-module .region .nm{display:flex;align-items:center;gap:8px}
#loc-module .caret{margin-left:2px;color:var(--muted);font-size:9px;transition:transform .2s}
#loc-module .region.open .caret{transform:rotate(90deg)}
#loc-module .dot{width:9px;height:9px;border-radius:50%;background:var(--base)}
#loc-module .region.done .rhead .dot{background:var(--orange);box-shadow:0 0 6px var(--orange-glow)}
#loc-module .region.done{border-color:#ffd9b3;background:#fff5ec}
#loc-module .region .cnt{color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600;}
#loc-module .region.done .cnt{color:#e06a10}
#loc-module .plist{display:none;flex-direction:column;gap:5px;padding:2px 11px 10px 11px}
#loc-module .region.open .plist{display:flex}
#loc-module .prefitem{display:flex;align-items:center;gap:7px;font-size:12px;color:var(--muted)}
#loc-module .prefitem .pdot{width:7px;height:7px;border-radius:50%;background:#cfd5de;flex:none;transition:background .4s}
#loc-module .prefitem.on{color:var(--text);font-weight:600}
#loc-module .prefitem.on .pdot{background:var(--orange);box-shadow:0 0 5px var(--orange-glow)}
#loc-module .prefitem .pcount{margin-left:auto;color:var(--muted);font-variant-numeric:tabular-nums;font-weight:600}
#loc-module .prefitem.on .pcount{color:var(--orange)}
#loc-module .prefitem.area-all .pcount{color:var(--text)}
#loc-module .prefitem.area-all.on .pcount{color:var(--orange)}
#loc-module .prefitem.area-all{font-weight:700;color:var(--text);padding-bottom:6px;margin-bottom:2px;border-bottom:1px solid #e6e9ef}
#loc-module .prefitem.area-all.on{color:var(--orange)}
#loc-module button{background:var(--orange);color:#ffffff;border:none;font-weight:700;font-size:14px;
    padding:11px;border-radius:6px;cursor:pointer;width:100%;transition:transform .1s}
#loc-module button:active{transform:scale(.97)}
#loc-module .hint{color:var(--muted);font-size:11px;line-height:1.6}
#loc-module code{background:#f0f2f5;padding:1px 5px;border-radius:4px;color:#e06a10}
#loc-module /* ===== LOCATIONS store section ===== */
  .locations{width:100%;max-width:1000px;margin:56px auto 40px}
#loc-module .biz-tabs{display:flex;flex-direction:row;justify-content:center;gap:2px;margin:0 auto 20px;max-width:1000px;border-bottom:1px solid #e6e9ef;flex-wrap:nowrap;overflow-x:auto}
#loc-module .biz-tab{width:auto;background:none;border:none;border-bottom:2px solid transparent;padding:10px 22px;font-size:14px;font-weight:700;color:var(--muted);cursor:pointer;letter-spacing:.08em;font-family:inherit;white-space:nowrap}
#loc-module .biz-tab:hover{color:var(--text)}
#loc-module .biz-tab.active{color:var(--orange);border-bottom-color:var(--orange)}
#loc-module .loc-head{text-align:center;margin-bottom:22px}
#loc-module .loc-eyebrow{font-size:11px;letter-spacing:.22em;color:var(--orange);font-weight:700}
#loc-module .loc-title{font-size:34px;font-weight:800;letter-spacing:.06em;margin:2px 0 4px}
#loc-module .loc-sub{font-size:13px;color:var(--muted)}
#loc-module .loc-status{text-align:center;font-size:12px;color:var(--muted);margin-bottom:20px;min-height:16px;border-top:1px solid #ececec;border-bottom:1px solid #ececec;padding:13px 0}
#loc-module .loc-status b{color:var(--orange)}
#loc-module .clearfx{color:var(--orange);cursor:pointer;text-decoration:underline;font-weight:600}
#loc-module .filter-panel{max-width:1000px;margin:0 auto 14px;display:flex;flex-direction:column;gap:8px}
#loc-module .filter-row{display:flex;align-items:flex-start;gap:12px}
#loc-module .filter-label{flex:none;width:54px;font-size:12px;font-weight:700;color:var(--text);padding-top:6px}
#loc-module .chips{flex:1 1 auto;min-width:0;display:flex;flex-wrap:wrap;gap:8px}
#loc-module .chip{flex:none;width:auto;white-space:nowrap;font-size:11px;padding:4px 13px;border-radius:999px;border:1px solid #d8d4d0;background:#fff;color:var(--text);cursor:pointer;font-family:inherit;transition:all .15s}
#loc-module .chip:hover{border-color:var(--orange);color:var(--orange)}
#loc-module .chip.active{background:var(--orange);border-color:var(--orange);color:#fff}
#loc-module .store-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:20px}
#loc-module .store-card{border:1px solid #ece8e5;border-radius:8px;overflow:hidden;background:#fff;
    transition:transform .15s, box-shadow .15s}
#loc-module .store-card:hover{transform:translateY(-3px);box-shadow:0 12px 26px -14px rgba(0,0,0,.25)}
#loc-module .store-ph{position:relative;aspect-ratio:4/3;background:linear-gradient(135deg,#efece9,#e5e0dc);
    display:flex;align-items:center;justify-content:center;color:#c3bcb4}
#loc-module .store-ph svg{width:34px;height:34px}
#loc-module .biz-flag{position:absolute;top:8px;left:8px;width:22px;height:22px;border-radius:50%;
    display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:800;
    color:#fff;letter-spacing:0;box-shadow:0 1px 3px rgba(0,0,0,.2)}
#loc-module .flag-PRODUCE{background:#f54f00}
#loc-module .flag-DRESS{background:#c65a8f}
#loc-module .flag-RESTAURANT{background:#3f7d6e}
#loc-module .style-flags{position:absolute;top:8px;right:8px;display:flex;flex-direction:column;gap:3px;align-items:flex-end}
#loc-module .style-flag{background:rgba(255,255,255,.92);color:#5a5450;font-size:8px;font-weight:700;letter-spacing:.02em;padding:2px 6px;border-radius:4px;box-shadow:0 1px 2px rgba(0,0,0,.12);white-space:nowrap}
#loc-module .store-body{padding:12px 13px 15px}
#loc-module .store-badge{display:inline-block;font-size:10px;font-weight:700;color:var(--orange);
    background:#fdece3;border-radius:5px;padding:2px 7px;margin-bottom:7px}
#loc-module .store-ja{font-size:14px;font-weight:700;line-height:1.35;margin-bottom:3px}
#loc-module .store-en{font-size:11px;color:var(--muted);letter-spacing:.02em}
#loc-module .store-card.hide{display:none}
#loc-module .prefitem{cursor:pointer}
/* #loc-module .prefitem:hover{color:var(--orange)} */
#loc-module .prefitem.filtering{color:var(--orange);font-weight:700}
#loc-module .prefitem.filtering .pdot{background:var(--orange);box-shadow:0 0 5px var(--orange-glow)}
@keyframes pop{40%{fill:#ffb380}100%{fill:var(--orange)}}
#loc-module{max-width:none;margin:0;padding:0;background:none;display:block}
#loc-module .wrap{margin:0 auto;align-items:flex-start}
#loc-module .side{justify-content:flex-start}
#loc-module .mapcard svg{max-height:600px}
#loc-module .filter-panel{max-width:none;width:100%;margin:0 0 18px}
#loc-module .loc-status{max-width:none;margin:0 0 24px;border-top-color:#aca294;border-bottom-color:#aca294;line-height:2.2}
#loc-module .p-locations__excerpts-item{position:relative}
#loc-module .loc-biz-icon{position:absolute;right:0;top:0;z-index:2;width:30px;height:30px;display:block}
#loc-module .p-locations__excerpts-item.hide{display:none!important}
#loc-module .biz-flag,#loc-module .style-flags{display:none}
#loc-module .loc-empty{width:100%;text-align:center;padding:48px 0;color:#6b7280;font-size:14px}
#loc-module .filter-label{font-weight:400}
#loc-module .chip,#loc-module .chip.active{font-weight:400}
#loc-module .stat.loc-total{display:flex; justify-content:center; align-items:center; background:#f54f00;border:0;border-radius:0;color:#fff;text-align:center;padding:18px 16px}
#loc-module .loc-total__label{position:relative; top:3px;font-size:13px;letter-spacing:.05em;color:#fff; line-height:1;}
#loc-module .loc-total__num{position:relative; font-family: "Libre Baskerville", serif; font-size:40px;font-weight:500; line-height:1; top:-2px; color:#fff;margin:0 8px;vertical-align:middle}
#loc-module .stat:not(.loc-total){background:#aca294;border:0;border-radius:0;color:#fff}
#loc-module .region,#loc-module .region.done{background:#e8e4e1;border:0;border-radius:0;color:var(--text)}
#loc-module .rhead:hover{background:#ded9d5}
#loc-module .loc-presence-en{font-family: 'Vanitas'; font-weight: 500;font-size:22px;letter-spacing:.18em;text-align:center;color:#fff;line-height:1.4;margin:2px 0 6px}
#loc-module .loc-regions-head{text-align:center;line-height:1.9;margin-bottom:12px;font-size:13px;letter-spacing : 1.4px;color:#fff;font-weight: 600;}
#loc-module .loc-regions-sub{font-size:11px}
#loc-module .plist{gap:11px;padding-bottom:13px}
#loc-module .prefitem,#loc-module .prefitem.on,#loc-module .prefitem.area-all,#loc-module .prefitem.area-all.on{font-weight:400}
#loc-module .prefitem .pcount,#loc-module .prefitem.area-all .pcount{font-weight:600}
#loc-module .prefitem.area-all{padding-top:7px;padding-bottom:12px;margin-bottom:5px}
#loc-module .prefitem.area-all{border-bottom-color:#aca294}
#loc-module .prefitem.area-all.on{color:var(--text)}
#loc-module .prefitem.area-all.filtering,#loc-module .prefitem.area-all.on.filtering{color:var(--orange)}
#loc-module .prefitem .pdot,#loc-module .rhead .dot{display:none}
@media (max-width:767px){
#loc-module .filter-row{flex-direction:column;gap:7px}
#loc-module .filter-label{width:auto;padding-top:0}
#loc-module .filter-panel,#loc-module .loc-status{padding-left:6.511vw;padding-right:6.511vw}
#loc-module .chip{font-size:10px;padding:4px 11px}
}
.p-page__header-tabs .c-contents-tabs__item{font-family: 'Vanitas'; font-weight: 500; cursor:pointer;letter-spacing: 0.24em;}
@media (max-width:767px){
.p-page__header-tabs .c-contents-tabs__item{font-size: 3.5vw;}
}
.loc-header-row{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;flex-wrap:wrap}
.loc-header-lead{font-size:13px;letter-spacing:.12em;line-height:1.8;margin:0 0 8px}
#loc-module .loc-maparea{padding-top:12px;padding-bottom:50px}
#loc-module .pref,#loc-module .island-base{stroke-width:.5}
#loc-module .prefitem{cursor:default}
/* #loc-module .prefitem:hover{color:var(--muted)} */
#loc-module .prefitem.area-all:hover{color:var(--text)}
#loc-module .loc-count{margin:0 0 20px;padding-bottom:12px;font-size:13px;letter-spacing:.04em;border-bottom:solid 1px #d3c3b4;}
#loc-module .loc-count__num{font-size:26px;font-weight:700;color:var(--orange)}
#loc-module .loc-count__unit{font-size:15px;font-weight:700;color:var(--orange)}
#loc-module .loc-count__label{font-size:15px;color:#000000;font-weight: 600;}
#loc-module .chip.active:not(.is-all)::before{content:'\2713';margin-right:5px;font-weight:700}
#loc-module .loc-kwbox{border:1px solid #d3c3b4;border-radius:10px;background:#efecea;margin:2px 0 50px}
#loc-module .loc-kwbox.is-tight{margin-bottom:20px}
#loc-module .loc-kwbox__head{width:100%;display:flex;align-items:center;gap:9px;background:none;border:0;cursor:pointer;font-family:inherit;font-size:13px;font-weight:700;color:var(--text);padding:13px 18px;text-align:left}
#loc-module .loc-kwbox__head>span{white-space:nowrap;flex:none}
#loc-module .loc-kwbox__icon{flex:none;width:15px;height:15px;color:var(--text)}
#loc-module .loc-kwbox__caret{margin-left:auto;flex:none;width:12px;height:8px;color:#8c7f6f;transition:transform .2s}
#loc-module .loc-kwbox.open .loc-kwbox__caret{transform:rotate(180deg)}
#loc-module .loc-kwbox__body{display:none;padding:2px 18px 16px}
#loc-module .loc-kwbox.open .loc-kwbox__body{display:block}
#loc-module .loc-selected{background:#f6f4f3;border:0;border-radius:0;color:#201716;display:flex;flex-wrap:wrap;align-items:center;gap:4px 0;padding:15px 18px;margin:20px 0 50px;font-size:12px;line-height:1.9}
#loc-module .loc-selected__label{font-weight:700;color:#201716;margin-right:12px;white-space:nowrap}
#loc-module .loc-selected__items{color:#201716}
#loc-module .loc-selected__x{color:#727171;margin:0 8px}
#loc-module .loc-selected__count{color:var(--orange);font-weight:700;margin-left:auto;white-space:nowrap}
#loc-module .loc-selected__clear{color:#727171;text-decoration:underline;cursor:pointer;white-space:nowrap;margin-left:14px}

#loc-module .island-base.none{display: none;}
#loc-module .island-base.okinawa{transform: scale(3.2); transform-origin: 414px 330px;}
#loc-module  #pref-okinawa {transform: scale(3.2); transform-origin: 414px 330px;}
#loc-module .island-base.hawaii{transform: scale(0.9);transform-origin: -170px 40px;}
#loc-module #pref-hawaii{transform: scale(0.9); transform-origin: -170px 40px;}
#loc-module .island-base.vietnam{transform: scale(0.7); transform-origin: 10px 170px;}
#loc-module #pref-vietnam{transform: scale(0.7); transform-origin: 10px 170px;}

@media (max-width:767px){
.loc-header-row{display:block}
.loc-header-lead{margin:10px 0 0;font-size:12px;letter-spacing:.06em}
#loc-module .mapcard svg{max-height:none}
#loc-module .loc-maparea{padding-bottom:0}
#loc-module .loc-count{margin-left:6.511vw;margin-right:6.511vw;padding-left:0;padding-right:0;padding-bottom:10px;}
#loc-module .loc-kwbox,#loc-module .loc-selected{margin-left:6.511vw;margin-right:6.511vw}
#loc-module .loc-selected__count{margin-left:0}
}
.p-page .p-other-business{margin-top:0}
.p-location-banner{display:none}


