.rpcases{--rp-yellow:#ffdf65;--rp-teal:#008b83;--rp-ink:#263f38;--rp-cream:#fffaf0;color:var(--rp-ink);background:#faf9f6;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9;overflow-wrap:anywhere;padding-bottom:72px}
.rpcases *{box-sizing:border-box}.rpcases h1,.rpcases h2,.rpcases h3,.rpcases p,.rpcases figure,.rpcases dl,.rpcases dd{margin:0}.rpcases a{color:inherit;text-decoration:none}.rpcases a:focus-visible{outline:3px solid #007a74;outline-offset:5px}.rpcases-wrap{width:min(1160px,calc(100% - 48px));margin:0 auto}.rpcases-hero{background:var(--rp-cream);border-bottom:8px solid var(--rp-yellow);position:relative}.rpcases-hero-inner{display:flex;align-items:center;justify-content:space-between;gap:40px;padding:54px 0}.rpcases .rpcases-eyebrow{font-size:13px;letter-spacing:.12em;font-weight:700;color:var(--rp-teal);margin-bottom:12px}.rpcases-hero h1{font-size:clamp(28px,3.3vw,42px);line-height:1.55;letter-spacing:.04em;font-weight:800}.rpcases .rpcases-lead{margin-top:20px;font-size:16px}.rpcases-hero-art{width:300px;flex-shrink:0;text-align:center}.rpcases-hero-art svg{width:220px;height:179px;display:block;margin:0 auto 8px}.rpcases-hero-art span{font-size:13px;font-weight:700}.rpcases-breadcrumb{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:#6e756f;padding:22px 0 36px}.rpcases-breadcrumb a{text-decoration:underline;text-underline-offset:3px}.rpcases-index{padding:0 0 32px}.rpcases-section-heading{margin:4px 0 24px}.rpcases-section-heading h2{font-size:26px;line-height:1.6;font-weight:700}.rpcases-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:30px}.rpcases-filters a{padding:8px 20px;background:#fff;border:1px solid #d8dcd4;border-radius:999px;font-size:14px;font-weight:700;transition:background .2s}.rpcases-filters a:hover{background:#fff2bb}.rpcases-filters a[aria-current=page]{background:var(--rp-ink);color:#fff;border-color:var(--rp-ink)}.rpcases-result-count{font-size:14px;margin-bottom:18px!important;color:#68736d}.rpcases-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.rpcases-card{background:#fff;border:1px solid #e5e6df;border-radius:18px;overflow:hidden;box-shadow:0 5px 0 #e7e4d9}.rpcases-card-link{display:flex;height:100%;flex-direction:column}.rpcases-card-image{aspect-ratio:4/3;background:#f4f0e5;overflow:hidden}.rpcases .rpcases-photo{display:block;width:100%;height:auto;max-width:100%;border:0}.rpcases-card-image .rpcases-photo{width:100%;height:100%;object-fit:cover;transition:transform .25s}.rpcases-card-link:hover .rpcases-card-image img{transform:scale(1.025)}.rpcases-card-content{padding:24px;display:flex;flex:1;flex-direction:column}.rpcases-tags{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.rpcases-tags span,.rpcases-tags a{background:#e8f5ef;color:#17645a;border-radius:5px;font-size:12px;padding:3px 9px;font-weight:700}.rpcases-card h3{font-size:20px;line-height:1.65;font-weight:700}.rpcases .rpcases-location{font-size:14px;color:#607166;margin-top:10px}.rpcases-card-excerpt{font-size:14px;margin-top:12px!important}.rpcases-card-facts{margin-top:18px!important;font-size:13px;border-top:1px dashed #ddd}.rpcases-card-facts div{display:flex;gap:12px;padding-top:8px}.rpcases-card-facts dt{min-width:32px;color:#68736d}.rpcases-card-facts dd{font-weight:700}.rpcases-card-more{font-size:14px;color:var(--rp-teal);font-weight:700;margin-top:auto;padding-top:20px}.rpcases-placeholder{display:flex;align-items:center;justify-content:center;flex-direction:column;height:100%;font-weight:700}.rpcases-placeholder svg{width:120px;height:98px}.rpcases-empty{border:1px solid #e3e2d9;background:white;border-radius:20px;text-align:center;padding:36px 24px 42px}.rpcases-empty-art svg{width:100px;height:82px;margin-bottom:12px}.rpcases-empty h3{font-size:23px;font-weight:700;margin-bottom:14px}.rpcases-empty p{color:#66736b;font-size:15px}.rpcases .rpcases-text-link{display:inline-block;color:var(--rp-teal);text-decoration:underline;margin-top:16px}.rpcases-cta{margin-top:44px;padding:38px 24px;text-align:center;background:#fff4c9;border-radius:20px;border-top:6px solid var(--rp-yellow)}.rpcases-cta h2{font-size:26px;line-height:1.65;margin-bottom:12px;font-weight:700}.rpcases-cta p{font-size:14px}.rpcases .rpcases-button{display:inline-block;margin-top:24px;padding:16px 32px;background:#ff7166;color:#fff;border-radius:9px;box-shadow:0 4px 0 #cd5048;font-weight:700;font-size:16px}.rpcases .rpcases-button:hover{background:#ed6158}.rpcases-mobile{display:none}.rpcases-detail{max-width:1000px}.rpcases-detail-header{padding:4px 0 30px}.rpcases-detail-header h1{font-size:clamp(26px,3vw,38px);line-height:1.6;font-weight:800}.rpcases-cover{margin-bottom:42px!important;background:#f1ede4;border-radius:20px;overflow:hidden}.rpcases-cover .rpcases-photo{max-height:680px;object-fit:contain}.rpcases-block{margin:0 0 42px}.rpcases-block h2{font-size:24px;line-height:1.6;font-weight:700;margin-bottom:22px;padding:10px 18px;border-left:6px solid var(--rp-teal);background:#ffed9e;border-radius:0 8px 8px 0}.rpcases-facts{background:#fff;border:1px solid #e2e4db;border-radius:12px;overflow:hidden}.rpcases-facts div{display:grid;grid-template-columns:180px 1fr;border-bottom:1px solid #e2e4db}.rpcases-facts div:last-child{border-bottom:0}.rpcases-facts dt{background:#f6f4ea;padding:16px 22px;font-weight:700}.rpcases-facts dd{padding:16px 22px}.rpcases-story{background:#fff;border-radius:12px;padding:24px 28px}.rpcases-story p+p{margin-top:1em}.rpcases-point{border:1px solid #d5e6db}.rpcases-compare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.rpcases-comparison{background:white;border-radius:12px;overflow:hidden;border:1px solid #dedfd6}.rpcases-comparison>figcaption{display:flex;align-items:center;gap:12px;padding:12px 18px;background:#eeece5;font-weight:700}.rpcases-comparison>figcaption span{font-size:13px;letter-spacing:.1em}.rpcases-after>figcaption{background:var(--rp-teal);color:#fff}.rpcases-comparison .rpcases-photo{aspect-ratio:4/3;object-fit:contain;background:#f5f3ed}.rpcases-comparison p{padding:14px 18px;font-size:14px;text-align:center}.rpcases-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rpcases-gallery .rpcases-photo{aspect-ratio:4/3;object-fit:contain;background:#f0eee7;border-radius:10px}.rpcases-gallery figcaption{padding:10px 0;font-size:13px}.rpcases-body{background:#fff;padding:28px;border-radius:12px}.rpcases-body p{margin-bottom:1.2em}.rpcases-body img{height:auto;max-width:100%}.rpcases-body h2,.rpcases-body h3{margin:1.5em 0 .8em}.rpcases-body ul,.rpcases-body ol{padding-left:1.6em;margin:1em 0}.rpcases-body ul{list-style:disc}.rpcases-body ol{list-style:decimal}.rpcases-body a{color:#007a74;text-decoration:underline}.rpcases-back{text-align:center;margin:32px 0!important}.rpcases .rpcases-outline-button{display:inline-block;padding:12px 32px;border:2px solid var(--rp-teal);color:var(--rp-teal);border-radius:8px;background:white;font-weight:700}.rpcases-pagination{margin:36px 0}.rpcases-pagination ul{list-style:none;display:flex;gap:10px;flex-wrap:wrap;justify-content:center;padding:0}.rpcases-pagination a,.rpcases-pagination span{display:block;padding:7px 15px;background:white;border:1px solid #ddd;border-radius:7px}.rpcases-pagination .current{background:var(--rp-ink);color:white}.rpcases-pagination .dots{border:0;background:transparent}
@media(max-width:900px){.rpcases-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.rpcases-hero-art{width:220px}.rpcases-hero-art svg{width:180px;height:146px}.rpcases-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.rpcases{font-size:15px;padding-bottom:40px}.rpcases-wrap{width:calc(100% - 32px)}.rpcases-hero-inner{padding:30px 0;gap:12px;align-items:flex-start}.rpcases-hero h1{font-size:26px}.rpcases-hero-art{display:none}.rpcases .rpcases-lead{font-size:14px;line-height:1.9;margin-top:14px}.rpcases-breadcrumb{padding:18px 0 26px;font-size:11px}.rpcases-section-heading h2{font-size:22px}.rpcases-filters{gap:8px;margin-bottom:24px}.rpcases-filters a{font-size:12px;padding:7px 13px}.rpcases-grid{grid-template-columns:1fr;gap:24px}.rpcases-card-content{padding:20px}.rpcases-empty{padding:26px 16px 32px}.rpcases-empty h3{font-size:20px}.rpcases-cta{padding:28px 16px;margin-top:30px}.rpcases-cta h2{font-size:22px}.rpcases .rpcases-button{font-size:14px;padding:14px 18px}.rpcases-mobile{display:block}.rpcases-detail-header h1{font-size:26px}.rpcases-block{margin-bottom:30px}.rpcases-block h2{font-size:21px;padding:9px 12px;margin-bottom:18px}.rpcases-facts div{grid-template-columns:104px 1fr}.rpcases-facts dt,.rpcases-facts dd{padding:12px}.rpcases-compare{grid-template-columns:1fr;gap:20px}.rpcases-gallery{gap:12px}.rpcases-story,.rpcases-body{padding:20px}.rpcases-cover{border-radius:12px;margin-bottom:30px!important}}

/* Grouped construction filters remain visible above area and prefecture filters. */
.rpcases-filter-groups{display:block}
.rpcases-filter-row{display:grid;grid-template-columns:100px minmax(0,1fr);gap:18px;padding:12px 0;border-bottom:1px solid #e4e5dd}
.rpcases-filter-parent{border-right:2px solid #e4dfcf;padding-right:14px;display:flex;align-items:flex-start}
.rpcases-filter-parent a{width:100%;text-align:center}
.rpcases-filter-children{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-start}
.rpcases-filters a{display:inline-block;text-decoration:none}
.rpcases-area-panel{background:#fffdf6;border:1px solid #e4dfcf;border-radius:12px;padding:20px;margin:24px 0 30px}
.rpcases-area-panel h3{font-size:17px;margin:0 0 12px;color:var(--rp-ink)}
.rpcases-area-panel .rpcases-filters{margin-bottom:0}
.rpcases-prefecture-panel{border-top:1px solid #e4dfcf;margin-top:18px;padding-top:18px}
.rpcases-filter-summary{font-size:14px;color:#35574f;margin:16px 0 0}
@media(max-width:600px){.rpcases-filter-row{grid-template-columns:78px minmax(0,1fr);gap:10px}.rpcases-filter-parent{padding-right:8px}.rpcases-filter-parent a{padding:7px 5px}.rpcases-area-panel{padding:16px}.rpcases-filter-children{gap:6px}}

/* Area and prefecture links use underlines instead of pills. */
.rpcases-area-panel .rpcases-filters{gap:8px 20px}
.rpcases-area-panel .rpcases-filters a{background:transparent;border:0;border-radius:0;padding:8px 2px;color:var(--rp-ink);text-decoration:underline;text-decoration-color:#a9b8af;text-decoration-thickness:1px;text-underline-offset:6px}
.rpcases-area-panel .rpcases-filters a:hover{background:transparent;color:var(--rp-teal);text-decoration-color:currentColor}
.rpcases-area-panel .rpcases-filters a[aria-current=page]{background:transparent;color:var(--rp-teal);border:0;text-decoration-color:currentColor;text-decoration-thickness:3px}

.rpcases-filter-groups a[aria-pressed=true]{background:var(--rp-ink);color:#fff;border-color:var(--rp-ink)}
.rpcases-filter-groups a[data-rpcases-type]{touch-action:manipulation;user-select:none}
.rpcases .rpcases-multi-help{font-size:13px;color:#607166;margin:0 0 12px}
