.spc-visit{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#103e56;line-height:1.7;margin:32px 0;padding:24px;background:#f5f8fa;border:1px solid #dce3e7;border-radius:6px}.spc-visit *{box-sizing:border-box}.spc-visit h2{font-size:24px;background:none;color:#103e56;padding:0;border:0;margin:0 0 16px}.spc-visit h3{font-size:20px;margin:30px 0 12px;padding:0;border:0}.spc-visit h2:before,.spc-visit h2:after,.spc-visit h3:before,.spc-visit h3:after{display:none}.spc-visit p{margin:12px 0 20px}.spc-visit a{color:#17618a;text-decoration:underline;overflow-wrap:anywhere}.spc-visit small{display:block;font-size:12px;line-height:1.6;color:#536a78;margin:5px 0}.spc-visit-nav{display:flex;flex-wrap:wrap;gap:12px 24px;margin:20px 0 26px}.spc-compare-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:end}.spc-compare-filters label{display:flex;flex-direction:column;gap:6px;font-size:14px}.spc-compare-filters input,.spc-compare-filters select,.spc-compare-filters button{font:inherit;font-size:16px;min-height:44px;width:100%;padding:9px 10px;background:#fff;border:1px solid #b9c8d0;border-radius:4px;color:#103e56}.spc-compare-filters button{cursor:pointer}.spc-visit .spc-visit-note{font-size:13px;color:#526b79;margin-top:18px}.spc-compare-count{font-weight:700}.spc-visit-scroll{overflow:auto;background:#fff;max-width:100%;margin:16px 0}.spc-visit table{border-collapse:collapse;width:100%;min-width:760px;table-layout:auto;font-size:14px}.spc-visit caption{text-align:left;padding:12px;font-size:13px;color:#526b79}.spc-visit th,.spc-visit td{vertical-align:top;text-align:left;padding:16px 14px;border:1px solid #dce3e7}.spc-visit thead th{background:#edf2f5;font-weight:600;white-space:nowrap}.spc-compare tbody th{min-width:185px;font-weight:600}.spc-compare td:nth-child(2),.spc-compare td:nth-child(3){min-width:130px}.spc-compare td:nth-child(4){min-width:210px}.spc-compare td:nth-child(5){min-width:170px}.spc-visit td p{margin-top:0}.spc-visit td>a{display:block;margin-bottom:12px}.spc-visit .spc-visit-button{display:inline-block;background:#f39a38;color:#fff;text-decoration:none;padding:11px 14px;border-radius:4px;font-weight:700;text-align:center}.spc-visit-fees{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin:18px 0}.spc-visit-fees>div{background:#fff;border:1px solid #dce3e7;padding:16px;border-radius:4px}.spc-visit-fees dd{margin:8px 0 0;font-size:24px;font-weight:700}.spc-visit-facility table{min-width:540px}.spc-visit :focus-visible{outline:3px solid #38a1db;outline-offset:3px}.spc-visit [hidden]{display:none!important}.spc-visit [data-day]{margin-bottom:10px}@media(max-width:700px){.spc-visit{padding:18px 12px;margin:24px 0}.spc-visit h2{font-size:21px}.spc-compare-filters{grid-template-columns:repeat(2,minmax(0,1fr))}.spc-visit-nav{gap:10px 16px}.spc-visit-fees{gap:10px}.spc-visit th,.spc-visit td{padding:12px}.spc-visit-fees dd{font-size:22px}}@media(max-width:370px){.spc-compare-filters{grid-template-columns:1fr}}
.spc-visit.spc-visit-facility table{min-width:0;table-layout:fixed}.spc-visit.spc-visit-facility th:first-child{width:29%}.spc-visit.spc-visit-facility th,.spc-visit.spc-visit-facility td{overflow-wrap:anywhere;white-space:normal}
.spc-visit,.spc-visit [id],[id^="facility-payment-"],#spc-existing-facilities{scroll-margin-top:96px}
/* SWELLのthead白文字を引き継がない。今回追加した表だけに限定する。 */
.spc-visit table thead th{color:#000}

/* 施設紹介は既存の白・本文グレー・淡いオレンジに合わせ、独立した大きなカードにしない。 */
/* SWELLは投稿内の末尾要素を0pxにするため、投稿本文内では同じ余白を明示する。 */
.spc-visit.spc-visit-facility,.post_content .spc-visit.spc-visit-facility{font-family:inherit;color:#333;background:#fff;border:0;border-radius:0;padding:0;margin:72px 0!important}
.spc-visit-facility .spc-visit-content{position:relative;display:flow-root}
.spc-visit-facility h2{font-size:20px;line-height:1.5;color:#333;text-align:center;margin:0 0 12px!important}
.spc-visit-facility h3{font-size:18px;line-height:1.5;color:#333;margin:24px 0 12px}
.spc-visit-facility p{font-size:15px;margin:12px 0 16px}
.spc-visit-facility a{color:#79501e;text-decoration:underline;text-underline-offset:3px}
.spc-visit-facility small,.spc-visit-facility .spc-visit-note{color:#666}
.spc-visit-facility .spc-visit-nav{justify-content:center;gap:6px 18px;margin:12px 0 18px;font-size:14px}
.spc-visit-facility .spc-visit-fees{gap:12px;margin:12px 0}
.spc-visit-facility .spc-visit-fees>div{background:var(--color-orange-light,#fff1df);border:0;padding:12px;border-radius:4px}
.spc-visit-facility .spc-visit-fees dd{font-size:21px;margin-top:4px}
.spc-visit-facility th,.spc-visit-facility td{border-color:#e4e0da;color:#333}
.spc-visit-facility table thead th{background:var(--color-orange-light,#fff1df);color:#000}
.spc-visit-facility .spc-visit-toggle{display:block;width:100%;min-height:44px;padding:10px 8px;border:0;border-top:1px solid #eee;border-bottom:1px solid #eee;border-radius:0;background:#fff;color:#555;font:inherit;font-size:14px;font-weight:600;text-align:center;cursor:pointer}
.spc-visit-facility .spc-visit-toggle::after{content:'⌄';display:inline-block;margin-left:8px;color:var(--color-orange-dark,#d97f1c)}
.spc-visit-facility .spc-visit-toggle[aria-expanded="true"]::after{content:'⌃'}
.spc-visit-facility .spc-visit-toggle:hover{background:var(--color-orange-light,#fff1df);color:#333}
/* ユーザー指定の「下端をぼかす」開閉表示。装飾用ではなく、続きがあることを示すフェード。 */
.spc-visit-facility.is-collapsed .spc-visit-content{max-height:clamp(160px,calc(33vh - 44px),300px);max-height:clamp(160px,calc(33svh - 44px),300px);overflow:hidden;overflow:clip}
.spc-visit-facility.is-collapsed .spc-visit-content::after{content:'';position:absolute;inset:auto 0 0;height:64px;background:linear-gradient(to bottom,rgba(255,255,255,0),#fff 90%);backdrop-filter:blur(1px);pointer-events:none}
.spc-visit-facility :focus-visible{outline-color:var(--color-orange-dark,#d97f1c)}
@media(max-width:700px){.spc-visit-facility h2{font-size:18px}.spc-visit-facility .spc-visit-toggle{font-size:13px}}
@media print{.spc-visit-facility.is-collapsed .spc-visit-content{max-height:none;overflow:visible}.spc-visit-facility.is-collapsed .spc-visit-content::after,.spc-visit-facility .spc-visit-toggle{display:none!important}}
@media print{.spc-visit{padding:0;border:0;background:#fff}.spc-compare-filters,.spc-visit-nav{display:none}.spc-visit-scroll{overflow:visible}.spc-visit table{min-width:0;table-layout:fixed;font-size:10px}.spc-visit th,.spc-visit td{padding:5px;min-width:0!important;white-space:normal!important;overflow-wrap:anywhere}.spc-visit small{font-size:10px}}
