/*! 大阪石材 墓地・霊園ファインダー（[reien_finder]）
 *  .rs- 接頭辞のクラスのみ。サイト既存CSSとは衝突しません。 */
.rs{--rs-navy:#003b89;--rs-navy-d:#273558;--rs-yellow:#fbf95f;--rs-beige:#f8f6ec;--rs-line:#e2e2e2;--rs-txt:#555;
  --rs-head:"GENJ","GenJyuuGothic","源柔ゴシック","Hiragino Kaku Gothic StdN","Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic","YuGothic","Meiryo",sans-serif;
  margin-top:20px;padding-top:60px;border-top:1px solid var(--rs-line);color:var(--rs-txt);font-size:14px;line-height:1.7;scroll-margin-top:10px}
.rs *,.rs *::before,.rs *::after{box-sizing:border-box}
.rs [hidden]{display:none!important}
.rs-tit{font-family:var(--rs-head);font-size:30px;font-weight:900;color:#000;line-height:1.5;margin:0 0 8px}
.rs-tit em{font-style:normal;color:var(--rs-navy)}
.rs-lead{font-size:15px;margin:0 0 26px}
.rs-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.rs-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:0 18px;border:1px solid transparent;border-radius:0;cursor:pointer;
  font:inherit;font-weight:700;text-decoration:none;line-height:1.3;transition:background-color .15s,color .15s,border-color .15s}
.rs-btn--navy{background:var(--rs-navy);color:#fff}
.rs-btn--navy:hover{background:#002a63}
/* テーマの a:link 指定に負けないよう、リンク型ボタンの文字色を固定 */
.rs a.rs-btn--navy,.rs a.rs-btn--navy:link,.rs a.rs-btn--navy:visited,.rs a.rs-btn--navy:hover,.rs a.rs-btn--navy:focus{color:#fff}
.rs-btn--line{background:#fff;border-color:var(--rs-line);color:var(--rs-navy-d)}
.rs-btn--line:hover{border-color:var(--rs-navy)}
.rs a.rs-btn--line,.rs a.rs-btn--line:link,.rs a.rs-btn--line:visited,.rs a.rs-btn--line:hover{color:var(--rs-navy-d)}

.rs-search{display:flex;gap:8px;max-width:640px;margin-bottom:24px}
.rs-search input{flex:1;min-width:0;min-height:48px;padding:0 14px;border:1px solid #bbb;border-radius:0;font:inherit;font-size:16px;color:#000;background:#fff}
.rs-search input:focus{border-color:var(--rs-navy);outline:2px solid var(--rs-navy);outline-offset:-1px}
.rs-search .rs-btn{min-height:48px;padding:0 24px;flex:none}

.rs-finder{display:grid;gap:24px;grid-template-columns:minmax(0,1fr)}
@media (min-width:900px){.rs-finder{grid-template-columns:minmax(0,400px) minmax(0,1fr);align-items:start}}
.rs-panel{background:#fff;border:1px solid var(--rs-line);padding:20px;min-width:0}
.rs-panel-tit{font-family:var(--rs-head);font-size:17px;font-weight:700;color:#000;margin:0 0 12px;padding-left:10px;border-left:4px solid var(--rs-navy);line-height:1.4}

.rs-map{display:block;width:100%;max-width:360px;height:auto;margin:0 auto}
.rs-area{cursor:pointer;outline:none}
.rs-area polygon{fill:#dfe8f3;stroke:#fff;stroke-width:2;stroke-linejoin:round;transition:fill .15s}
.rs-area:nth-of-type(even) polygon{fill:#cfdcec}
.rs-area:hover polygon{fill:#b9cde5}
.rs-area:focus-visible polygon{stroke:var(--rs-navy-d);stroke-width:3}
.rs-area[aria-pressed="true"] polygon{fill:var(--rs-yellow);stroke:var(--rs-navy);stroke-width:4}
.rs-area.is-zero polygon{fill:#eeeeee}
.rs-map text{pointer-events:none;text-anchor:middle;fill:var(--rs-navy-d)}
.rs-map .rs-lbl{font-family:var(--rs-head);font-size:14px;font-weight:700}
.rs-map .rs-cnt{font-size:11px;fill:#555}
.rs-area[aria-pressed="true"] text{fill:#000}
.rs-map .rs-sea{font-size:12px;fill:#8da5c4;letter-spacing:.3em}
.rs-map-hint{text-align:center;font-size:12px;color:#777;margin:6px 0 0}

.rs-group{margin-bottom:14px;min-width:0}
.rs-group-label{font-size:13px;font-weight:700;color:#000;margin-bottom:4px}
.rs-group-label small{font-weight:400;color:#777;margin-left:6px}
.rs-chips{display:flex;flex-wrap:wrap;gap:8px;padding:2px}
.rs-chip{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:0 14px;border:1px solid var(--rs-line);border-radius:0;background:#fff;color:#000;
  cursor:pointer;white-space:nowrap;font:inherit;font-size:14px;transition:background-color .15s,border-color .15s}
.rs-chip:hover{border-color:var(--rs-navy)}
.rs-chip .rs-n{font-size:12px;color:#666;background:var(--rs-beige);padding:0 7px;line-height:1.7}
.rs-chip[aria-pressed="true"]{background:var(--rs-navy);border-color:var(--rs-navy);color:#fff}
.rs-chip[aria-pressed="true"] .rs-n{background:rgba(255,255,255,.2);color:#fff}
.rs-chip.is-zero:not([aria-pressed="true"]){opacity:.45}
.rs-type-note{font-size:12px;color:#777;margin:4px 0 0}
.rs-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;border-top:1px dashed var(--rs-line);padding-top:12px;margin-top:6px}
.rs-sum{font-size:13px;color:#666;min-width:0}

.rs-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:30px 0 14px;scroll-margin-top:10px}
.rs-count{font-family:var(--rs-head);font-size:17px;font-weight:700;color:#000}
.rs-count b{color:var(--rs-navy);font-size:26px;margin:0 3px}
.rs-sort{display:flex;align-items:center;gap:8px;font-size:14px}
.rs-sort select{min-height:44px;padding:0 10px;border:1px solid #bbb;border-radius:0;background:#fff;font:inherit;color:#000}
.rs-cards{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(min(100%,250px),1fr));list-style:none;margin:0;padding:0}
.rs-card{background:#fff;border:1px solid var(--rs-line);border-top:3px solid var(--rs-navy);padding:16px;display:flex;flex-direction:column;gap:6px;min-width:0;animation:rs-fade .25s ease-out both}
@keyframes rs-fade{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}
.rs-card-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.rs-badge{font-size:12px;font-weight:700;padding:1px 8px;border:1px solid;line-height:1.6;white-space:nowrap}
.rs-badge--yes{color:#fff;background:var(--rs-navy);border-color:var(--rs-navy)}
.rs-badge--no{color:#777;border-color:#bbb}
.rs-badge--eitai{color:#2f5d50;background:#eef5f2;border-color:#7fa99b}
.rs-works{margin:2px 0 0;border-top:1px dashed var(--rs-line);padding-top:6px}
.rs-works summary{cursor:pointer;display:flex;align-items:center;min-height:44px;font-size:13px;font-weight:700;color:var(--rs-navy-d);list-style:none}
.rs-works summary::-webkit-details-marker{display:none}
.rs-works summary::before{content:"＋";color:var(--rs-navy);margin-right:6px}
.rs-works[open] summary::before{content:"－"}
.rs-works ol{margin:0 0 4px;padding:0 0 0 1.6em;font-size:13px;line-height:1.9;max-height:220px;overflow-y:auto}
.rs-works a{color:var(--rs-navy-d)}
.rs-place{font-size:12px;color:#666}
.rs-name{font-family:var(--rs-head);font-size:17px;font-weight:700;color:#000;line-height:1.5;margin:0}
.rs-meta{font-size:12px;color:#777;margin:0}
.rs-card-btns{display:grid;grid-template-columns:1fr;gap:8px;margin-top:auto;padding-top:8px}
.rs-card-btns .rs-btn{font-size:13px;padding:0 10px}
.rs-ext::after{content:"";width:9px;height:9px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg);margin-left:2px}
.rs-more{display:flex;justify-content:center;margin-top:20px}
.rs-more .rs-btn{min-width:260px}
.rs-empty{background:#fff;border:1px dashed #bbb;padding:40px 16px;text-align:center}
.rs-empty h4{font-family:var(--rs-head);font-size:19px;color:#000;margin:0 0 8px}
.rs-empty p{margin:0 0 16px;color:#666}
@media (max-width:1000px) and (min-width:641px){
  .rs-finder{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .rs-map{max-width:300px}
}
@media (max-width:640px){
  .rs{padding-top:44px}
  .rs-search input{font-size:16px}
  .rs-tit{font-size:23px}
  .rs-lead{font-size:14px}
  .rs-search .rs-btn{padding:0 16px}
  .rs-panel{padding:16px}
  .rs-chips{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:6px;scroll-snap-type:x proximity}
  .rs-chip{flex:none;scroll-snap-align:start}
}
@media (prefers-reduced-motion:reduce){
  .rs *,.rs *::before,.rs *::after{animation:none!important;transition:none!important}
}

