:root{--steel: #e6eaee;--door: #ffffff;--ink: #17212b;--muted: #56636f;--rule: #c5ced6;--rule-strong: #8e9aa5;--tenji: #f2be00;--tenji-soft: #fff4c7;--go: #0b7a5b;--go-soft: #e3f3ec;--stop: #b3261e;--radius: 4px;--radius-sm: 2px;--fs-xs: .8125rem;--fs-sm: .9375rem;--fs-md: 1rem;--fs-lg: 1.25rem;--fs-xl: 1.5625rem;--fs-2xl: 1.953rem;--font: "BIZ UDPGothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic UI", "Meiryo", sans-serif;--color-accent: var(--ink);--color-marker-muted: #9aa5af}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--steel);color:var(--ink);font-family:var(--font);font-size:var(--fs-md);line-height:1.75;font-feature-settings:"palt" 1}button,input,select,textarea{font:inherit;color:inherit}a{color:var(--ink);text-decoration-thickness:2px;text-underline-offset:3px;text-decoration-color:var(--tenji)}a:hover{text-decoration-color:var(--ink)}:focus-visible{outline:3px solid var(--tenji);outline-offset:2px}h1,h2,h3,strong{line-height:1.4;font-weight:700;word-break:auto-phrase}h2{font-size:var(--fs-xl);margin:40px 0 14px}h3{font-size:var(--fs-lg);margin:28px 0 10px}p{margin:0 0 1em}@media (prefers-reduced-motion: reduce){*,*:before,*:after{transition:none!important;animation:none!important}}.app-container{max-width:1120px;margin:0 auto;padding:0 20px 56px}html{overflow-x:clip}.app-header{position:relative;isolation:isolate;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px 20px;margin:0 0 28px;padding:14px 0;color:#fff}.app-header:before{content:"";position:absolute;z-index:-1;top:0;bottom:0;left:50%;width:100vw;transform:translate(-50%);background:var(--ink)}.app-header h1{margin:0;font-size:var(--fs-lg);letter-spacing:.04em}.app-title-link{display:inline-flex;align-items:center;gap:12px;color:#fff;text-decoration:none}.app-title-link:before{content:"";flex:none;width:22px;height:22px;background:linear-gradient(var(--tenji),var(--tenji)) 12px 0 / 10px 10px no-repeat,linear-gradient(#fff,#fff) 0 0 / 10px 10px no-repeat,linear-gradient(#fff,#fff) 0 12px / 10px 10px no-repeat,linear-gradient(#fff,#fff) 12px 12px / 10px 10px no-repeat}.header-controls{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap}.view-toggle,.lang-switcher{display:inline-flex;border:1px solid rgba(255,255,255,.45);border-radius:var(--radius);overflow:hidden}.view-toggle button,.lang-switcher a{display:inline-block;border:0;background:transparent;color:#fff;padding:6px 14px;font-size:var(--fs-xs);font-weight:700;text-decoration:none;cursor:pointer}.view-toggle button+button,.lang-switcher a+a{border-left:1px solid rgba(255,255,255,.45)}.view-toggle button.active,.lang-switcher a.active{background:var(--tenji);color:var(--ink)}.app-main{margin-bottom:8px}.search-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:stretch;margin-bottom:20px;padding:14px;background:var(--door);border:1px solid var(--rule);border-radius:var(--radius)}.search-bar input,.search-bar select,.sort-control select,.page-search-input,.contact-form input,.contact-form select,.contact-form textarea{padding:10px 12px;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--door);font-size:var(--fs-sm)}.search-bar input:focus,.search-bar select:focus,.sort-control select:focus,.page-search-input:focus,.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:3px solid var(--tenji);outline-offset:0;border-color:var(--ink)}.search-bar input{flex:1 1 220px}@media (min-width: 900px){.search-bar{flex-wrap:nowrap}.search-bar select,.search-bar input{min-width:0}.search-bar select{flex:0 1 160px}.search-bar button{flex:none}}.search-bar button,.contact-form button{padding:10px 22px;border:1px solid var(--ink);border-radius:var(--radius);background:var(--ink);color:#fff;font-weight:700;cursor:pointer}.search-bar button:hover,.contact-form button:hover{background:#2c3a47}.search-bar .reset-btn{background:var(--door);color:var(--ink);border-color:var(--rule-strong)}.search-bar .reset-btn:hover{background:var(--steel)}.page-search-input{display:block;width:100%;margin-bottom:20px;padding:14px 16px;font-size:var(--fs-md)}.result-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:12px}.result-count,.sort-control{font-size:var(--fs-sm);color:var(--muted)}.sort-control{display:inline-flex;align-items:center;gap:8px}.sort-control select{padding:6px 10px}.map-container{height:480px;width:100%;border:1px solid var(--rule-strong);border-radius:var(--radius);overflow:hidden}.locker-marker-pin{display:block}.locker-marker-pin-matched .locker-pin-fill{fill:var(--ink)}.locker-marker-pin-muted{opacity:.6}.locker-marker-pin-muted .locker-pin-fill{fill:var(--color-marker-muted)}.leaflet-container{font-family:var(--font)}.leaflet-popup-content-wrapper{border-radius:var(--radius)}.leaflet-popup-content{font-size:var(--fs-sm);line-height:1.6}.leaflet-popup-content button{margin-top:6px;padding:6px 12px;border:0;border-radius:var(--radius);background:var(--ink);color:#fff;font-size:var(--fs-xs);font-weight:700;cursor:pointer}.leaflet-control-zoom a{color:var(--ink)!important}.locker-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule)}.locker-card{padding:16px 4px 16px 16px;border-bottom:1px solid var(--rule);border-left:4px solid transparent;background:var(--door);cursor:pointer}.locker-card:hover,.locker-card:focus-visible{border-left-color:var(--tenji)}.locker-card-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.locker-card-name{font-weight:700}.locker-card-price{font-weight:700;white-space:nowrap;padding-right:12px}.locker-card-address{font-size:var(--fs-sm);color:var(--muted);margin:2px 0 8px}.locker-card-tags{display:flex;gap:6px;flex-wrap:wrap}.tag{display:inline-block;padding:2px 8px;border:1px solid var(--rule-strong);border-radius:var(--radius-sm);font-size:var(--fs-xs);line-height:1.6;color:var(--ink);background:var(--door)}.area-grid{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));border-top:1px solid var(--rule);border-left:1px solid var(--rule)}.area-card{display:flex;justify-content:space-between;align-items:baseline;gap:8px;height:100%;padding:14px 16px;background:var(--door);border-right:1px solid var(--rule);border-bottom:1px solid var(--rule);text-decoration:none;color:var(--ink)}.area-card:hover{background:var(--tenji-soft)}.area-card-name{font-weight:700}.area-card .tag,.area-card-note{border:0;padding:0;background:none;font-size:var(--fs-xs);color:var(--muted)}.page-lead{max-width:72ch;margin:0 0 20px;color:var(--muted)}.data-source-credit{margin-top:28px;font-size:var(--fs-xs);color:var(--muted)}.back-to-areas{display:inline-block;margin-bottom:16px;font-size:var(--fs-sm)}.no-lockers-yet-message{padding:16px 18px;margin-bottom:16px;background:var(--door);border:1px dashed var(--rule-strong);border-radius:var(--radius);color:var(--muted)}.empty-message,.loading-message{padding:40px 20px;text-align:center;color:var(--muted)}.error-message{color:var(--stop);font-weight:700}.station-insight{max-width:76ch}.station-insight p,.station-insight li{line-height:1.85}.station-insight ul{margin:0 0 1em;padding-left:1.2em}.detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;background:#17212b8c}.detail-panel{position:relative;width:100%;max-width:520px;max-height:88vh;overflow-y:auto;padding:28px 28px 24px;background:var(--door);border-top:6px solid var(--tenji);border-radius:var(--radius)}.detail-panel h2{margin:0 36px 6px 0;font-size:var(--fs-lg)}.detail-close{position:absolute;top:12px;right:12px;width:36px;height:36px;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--door);font-size:1.1rem;line-height:1;cursor:pointer}.detail-close:hover{background:var(--steel)}.detail-address{margin:2px 0;color:var(--muted);font-size:var(--fs-sm)}.detail-hours{display:inline-block;margin:10px 0;padding:2px 10px;border:1px solid var(--rule-strong);border-radius:var(--radius-sm);font-size:var(--fs-xs);font-weight:700}.gmaps-link{display:inline-block;margin:4px 0;padding:8px 14px;border:1px solid var(--ink);border-radius:var(--radius);font-size:var(--fs-sm);font-weight:700;text-decoration:none}.gmaps-link:hover{background:var(--tenji-soft)}.detail-sign-name{font-size:var(--fs-sm);color:var(--muted)}.size-table,.guide-table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}.size-table{margin:16px 0}.size-table th,.size-table td,.guide-table th,.guide-table td{padding:8px 10px;border-bottom:1px solid var(--rule);text-align:left}.size-table thead th,.guide-table thead th{border-bottom:2px solid var(--ink);font-size:var(--fs-xs);color:var(--muted)}.size-table-empty,.detail-updated{font-size:var(--fs-sm);color:var(--muted)}.detail-disclaimer{margin-top:14px;padding-top:10px;border-top:1px solid var(--rule);font-size:var(--fs-xs);color:var(--muted)}.ad-slot{display:flex;align-items:center;justify-content:center;min-height:60px;margin:16px 0}.ad-slot-label{font-size:var(--fs-xs);color:var(--muted)}.legal-page,.guide-page{max-width:76ch}.legal-page p,.legal-page li,.guide-page p,.guide-page li{line-height:1.9}.legal-page ul,.guide-page ul{margin:0 0 1em;padding-left:1.2em}.legal-page li+li,.guide-page li+li{margin-top:6px}.legal-updated{font-size:var(--fs-xs);color:var(--muted)}.guide-index{list-style:none;padding:0;border-top:1px solid var(--rule)}.guide-index li{padding:14px 0;border-bottom:1px solid var(--rule)}.guide-table-wrap{overflow-x:auto;margin:14px 0 20px}.guide-table{min-width:420px}.guide-table th,.guide-table td{white-space:nowrap}.guide-station-list{list-style:none;padding-left:0!important}.guide-station-qty{color:var(--muted);font-size:var(--fs-xs)}.contact-form{display:flex;flex-direction:column;gap:14px;max-width:560px;margin:16px 0 10px}.contact-form label{display:flex;flex-direction:column;gap:5px;font-size:var(--fs-sm);font-weight:700}.contact-form label span em{font-style:normal;font-weight:400;color:var(--muted)}.contact-form textarea{resize:vertical}.contact-form button{align-self:flex-start}.contact-form-note{margin:-8px 0 0;font-size:var(--fs-xs);color:var(--muted)}.contact-form-error{color:var(--stop)}.site-footer{max-width:1120px;margin:48px auto 0;padding:22px 20px 36px;border-top:1px solid var(--rule-strong);font-size:var(--fs-xs);color:var(--muted);line-height:2.2}.site-footer a{color:var(--ink)}@media (max-width: 640px){.app-container{padding:0 14px 40px}.app-header{padding:12px 0}h2{font-size:var(--fs-lg);margin-top:32px}.map-container{height:380px}.search-bar select{flex:1 1 140px}.detail-panel{padding:24px 18px 20px}}.station-hero{margin-bottom:8px}.station-hero-visual{position:relative;display:flex;align-items:flex-end;min-height:140px;background:var(--ink);border-radius:var(--radius) var(--radius) 0 0;overflow:hidden}.station-hero.has-photo .station-hero-visual{height:clamp(220px,30vw,340px)}.station-hero-visual img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.station-hero.has-photo .station-hero-visual:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#17212be0,#17212b59 45%,#17212b00 75%)}.station-hero-title{position:relative;z-index:1;padding:20px 24px;color:#fff}.station-hero-title h2{margin:0;font-size:clamp(2rem,5vw,3.05rem);line-height:1.2;letter-spacing:.02em}.station-hero-pref{display:inline-block;margin-bottom:4px;color:#fff;font-size:var(--fs-sm)}.station-facts{display:grid;grid-template-columns:repeat(4,1fr);margin:0;background:var(--door);border:1px solid var(--rule);border-top:0}.station-facts>div{padding:14px 18px;border-right:1px solid var(--rule)}.station-facts>div:last-child{border-right:0}.station-facts dt{font-size:var(--fs-xs);color:var(--muted)}.station-facts dd{margin:2px 0 0;font-weight:700;line-height:1.5}.photo-credit{margin:6px 0 0;font-size:var(--fs-xs);color:var(--muted);text-align:right}.size-wall h2{margin-top:36px}.size-wall-bank{display:flex;align-items:stretch;margin:0;padding:24px 16px 0;list-style:none;background:var(--door);border:1px solid var(--rule);border-radius:var(--radius);overflow-x:auto}.size-wall-slot{flex:0 1 132px;min-width:0;display:flex;flex-direction:column}.size-wall-door-area{display:flex;align-items:flex-end;min-height:var(--wall-h, 172px);padding:0 10px;border-bottom:3px solid var(--ink)}.size-wall-door{position:relative;width:100%;background:var(--steel);border:2px solid var(--rule-strong);border-bottom:0;border-radius:3px 3px 0 0}.size-wall-door.is-suitcase{background:var(--tenji);border-color:var(--ink)}.size-wall-door.is-unknown{background:transparent;border-style:dashed}.size-wall-handle{position:absolute;top:50%;right:10px;width:4px;height:40%;max-height:18px;transform:translateY(-50%);background:var(--rule-strong);border-radius:2px}.size-wall-door.is-suitcase .size-wall-handle{background:var(--ink)}.size-wall-label{display:flex;flex-direction:column;padding:10px 10px 18px;font-size:var(--fs-xs);line-height:1.6}.size-wall-label strong{font-size:var(--fs-sm)}.size-wall-fit{margin-top:4px;font-weight:700}.size-wall-fit.is-suitcase{align-self:flex-start;padding:0 4px;background:var(--tenji-soft);box-shadow:inset 0 -3px 0 var(--tenji)}.size-wall-note{max-width:82ch;margin:10px 0 0;font-size:var(--fs-xs);color:var(--muted)}.locations-heading{margin-top:44px}.tag-fit{font-weight:700}.tag-fit.is-suitcase{background:var(--tenji);border-color:var(--tenji)}@media (max-width: 760px){.station-facts{grid-template-columns:repeat(2,1fr)}.station-facts>div:nth-child(2n){border-right:0}.station-facts>div:nth-child(-n+2){border-bottom:1px solid var(--rule)}.station-hero-title{padding:16px}.size-wall-bank{padding:18px 6px 0}.size-wall-slot{flex:1 1 0}.size-wall-door-area{padding:0 4px}.size-wall-label{padding:8px 4px 14px}.size-wall-handle{right:5px}}.page-heading{margin-top:8px;font-size:var(--fs-2xl)}.luggage-tool{margin:24px 0 8px;padding:20px 22px 22px;background:var(--door);border:1px solid var(--rule);border-top:6px solid var(--tenji);border-radius:var(--radius)}.luggage-tool h3{margin-top:0}.luggage-preset-label{margin:0 0 8px;font-size:var(--fs-sm);color:var(--muted)}.luggage-presets{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;margin-bottom:18px}.luggage-preset{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;text-align:left;background:var(--door);border:1px solid var(--rule-strong);border-radius:var(--radius);cursor:pointer}.luggage-preset span{font-size:var(--fs-xs);color:var(--muted)}.luggage-preset:hover{border-color:var(--ink)}.luggage-preset.is-active{background:var(--tenji);border-color:var(--ink)}.luggage-preset.is-active span{color:var(--ink)}.luggage-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:10px}.luggage-form label{display:flex;flex-direction:column;gap:4px;font-size:var(--fs-xs);font-weight:700}.luggage-form input{width:7.5em;padding:10px 12px;border:1px solid var(--rule-strong);border-radius:var(--radius);background:var(--door);font-size:var(--fs-md)}.luggage-form input:focus{outline:3px solid var(--tenji);outline-offset:0;border-color:var(--ink)}.luggage-form button{padding:10px 20px;border:1px solid var(--ink);border-radius:var(--radius);background:var(--ink);color:#fff;font-weight:700;cursor:pointer}.luggage-result{margin-top:20px;padding-top:16px;border-top:1px solid var(--rule)}.luggage-result-summary{font-size:var(--fs-lg);font-weight:700;line-height:1.5}.luggage-result-note{font-size:var(--fs-xs);color:var(--muted)}.luggage-result details{border-top:1px solid var(--rule)}.luggage-result details:last-of-type{border-bottom:1px solid var(--rule)}.luggage-result summary{padding:10px 2px;font-weight:700;cursor:pointer}.luggage-result details ul{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:4px 20px;margin:0 0 14px;padding:0;list-style:none}.luggage-result details li{display:flex;justify-content:space-between;gap:10px;font-size:var(--fs-sm)}.luggage-result details li span{color:var(--muted);white-space:nowrap}.luggage-page section>ul{padding-left:1.2em}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.home-hero h2{max-width:22em;margin:12px 0;font-size:clamp(1.75rem,4.2vw,2.6rem);line-height:1.3}.home-hero .page-lead{color:var(--ink)}.home-entries ul{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:8px 0 0;padding:0;list-style:none}.entry-door{position:relative;display:flex;flex-direction:column;gap:6px;height:100%;min-height:132px;padding:18px 34px 18px 18px;background:var(--door);border:2px solid var(--rule-strong);border-radius:var(--radius);color:var(--ink);text-decoration:none}.entry-door:after{content:"";position:absolute;top:50%;right:14px;width:4px;height:26px;transform:translateY(-50%);background:var(--rule-strong);border-radius:2px}.entry-door strong{font-size:var(--fs-lg);line-height:1.35}.entry-door span{font-size:var(--fs-sm);color:var(--muted);line-height:1.6}.entry-door:hover{border-color:var(--ink)}.entry-door.is-primary{background:var(--tenji);border-color:var(--ink)}.entry-door.is-primary span{color:var(--ink)}.entry-door.is-primary:after{background:var(--ink)}.home-rankings{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:44px}.home-rankings h3{margin:0 0 4px;padding-top:12px;border-top:3px solid var(--ink);font-size:var(--fs-md)}.home-ranking-lead{margin:0 0 10px;font-size:var(--fs-xs);color:var(--muted);line-height:1.6}.home-rankings ol{margin:0;padding-left:1.6em}.home-rankings li{padding:3px 0;border-bottom:1px solid var(--rule);font-size:var(--fs-sm)}.home-rankings li span{float:right;color:var(--muted)}.home-about{max-width:76ch}.airport{margin-top:28px;padding-top:4px;border-top:3px solid var(--ink)}.airport h3{margin-top:12px}.airport-stations{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;margin:0;padding:0;list-style:none}.airport-stations>li{padding:14px 16px;background:var(--door);border:1px solid var(--rule);border-radius:var(--radius);font-weight:700}.airport-stations ul{margin:6px 0 0;padding-left:1.1em;font-weight:400;font-size:var(--fs-sm)}@media (max-width: 900px){.home-entries ul{grid-template-columns:repeat(2,1fr)}.home-rankings{grid-template-columns:1fr;gap:8px}}.area-card{flex-wrap:wrap}.size-card-fit{flex-basis:100%;color:var(--ink);font-weight:700}.station-rows{margin:0;padding:0;list-style:none;border-top:1px solid var(--rule)}.station-rows li{display:flex;flex-wrap:wrap;justify-content:space-between;gap:2px 16px;padding:10px 4px;border-bottom:1px solid var(--rule)}.station-rows a{font-weight:700}.station-rows span{font-size:var(--fs-sm);color:var(--muted)}
