.shop-card{background:#fff;border:2px solid #00358f;border-radius:12px;flex-direction:column;transition:transform .15s,box-shadow .15s;display:flex;overflow:hidden;box-shadow:4px 4px #00358f24}.shop-card:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #00358f38}.shop-card__media{aspect-ratio:4/3;background:#f4f3f2;border-bottom:2px solid #00358f;display:block;position:relative}.shop-card__img{object-fit:cover}.shop-card__placeholder{color:#00358f40;justify-content:center;align-items:center;font-size:48px;display:flex;position:absolute;inset:0}.shop-card__body{flex-direction:column;gap:6px;padding:14px 16px 16px;display:flex}.shop-card__category{color:#fff;background:#ba0614;border-radius:9999px;align-self:flex-start;padding:2px 8px;font-size:14px;line-height:16px}.shop-card__name{font-size:18px;font-weight:700;line-height:22px;font-family:var(--font-plus-jakarta),"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",YuGothic,Meiryo,"Noto Sans JP",sans-serif;color:#00358f;margin:0}.shop-card__name a{color:inherit;text-decoration:none}.shop-card__name a:hover{text-decoration:underline}.shop-card__kana{color:#747684;margin:0;font-size:14px}.shop-card__meta{border-top:1px dashed #c3c6d5;flex-direction:column;gap:4px;margin:8px 0 0;padding:8px 0 0;list-style:none;display:flex}.shop-card__meta-item{color:#434653;gap:8px;font-size:14px;line-height:18px;display:flex}.shop-card__meta-label{color:#747684;flex-shrink:0;width:40px}
.shop-list__grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:20px;display:grid}.shop-list__empty{text-align:center;color:#747684;border:2px dashed #c3c6d5;border-radius:12px;padding:48px 16px}.shop-list__empty--category{flex-direction:column;align-items:center;gap:16px;padding:56px 16px;display:flex}.shop-list__empty-text{margin:0}.shop-list__empty-link{color:#747684;border:1px solid #c3c6d5;border-radius:999px;padding:10px 20px;font-size:.875rem;transition:border-color .2s,color .2s}.shop-list__empty-link:hover{color:#00358f;border-color:#00358f}
.shop-search{flex-direction:column;gap:20px;display:flex}.shop-search__controls{background:#fff;border:2px solid #00358f;border-radius:12px;flex-wrap:wrap;gap:16px;padding:20px;display:flex;box-shadow:4px 4px #00358f24}.shop-search__field{flex-direction:column;gap:6px;min-width:160px;display:flex}.shop-search__field--grow{flex:240px}.shop-search__label{color:#00358f;font-size:14px;font-weight:700}.shop-search__input,.shop-search__select{color:#1c1d23;background:#fff;border:1px solid #c3c6d5;border-radius:8px;height:40px;padding:0 12px;font-size:16px}.shop-search__input:focus,.shop-search__select:focus{outline-offset:1px;outline:2px solid #00358f}.shop-search__result-bar{justify-content:space-between;align-items:center;gap:16px;display:flex}.shop-search__count{color:#747684;font-size:16px}.shop-search__count strong{color:#ba0614;font-size:24px}.shop-search__reset{color:#00358f;cursor:pointer;background:#fff;border:1px solid #00358f;border-radius:8px;padding:8px 16px;font-size:14px}.shop-search__reset:hover{color:#fff;background:#00358f}.shop-search__more-wrap{justify-content:center;display:flex}.shop-search__more{color:#fff;cursor:pointer;background:#00358f;border:none;border-radius:8px;padding:12px 32px;font-size:16px;font-weight:700;transition:opacity .2s}.shop-search__more:hover{opacity:.9}
.shops-list-page{background:#fcfbf9;min-height:100vh}.shops-list-page__main{padding:40px 0 80px}.shops-list-page__container{width:min(1160px,100% - 40px);margin:0 auto}.shops-list-page__head{text-align:center;margin-bottom:28px}.shops-list-page__eyebrow{letter-spacing:.18em;color:#ba0614;margin:0 0 6px;font-size:14px;font-weight:700}.shops-list-page__title{color:#00358f;margin:0 0 12px;font-size:clamp(24px,4vw,36px);font-weight:800}.shops-list-page__desc{color:#747684;margin:0;font-size:16px}.shops-list-page__desc strong{color:#ba0614;font-size:18px}
