/* サフィール羽黒 確認用 v2 / このCSSは追記用。既存CSSを置き換えない。 */
:is(#sf-facility,.sf-facility){--hg-ink:#2D3748;--hg-green:#5DCCB8;--hg-paper:#FCF9F8;--hg-line:#E2E8F0;--hg-rust:#2D3748;--hg-coral:#FF8C94;--hg-yellow:#FFD966;color:var(--hg-ink);background:#fff;font-family:'Noto Sans JP','Yu Gothic',Meiryo,sans-serif;font-size:18px;line-height:1.9;isolation:isolate;overflow-wrap:anywhere;max-width:100%;}
:is(#sf-facility,.sf-facility),:is(#sf-facility,.sf-facility) *{box-sizing:border-box;}
:is(#sf-facility,.sf-facility) .hg-wrap>*{min-width:0;}
:is(#sf-facility,.sf-facility) :where(h1,h2,h3,p,ul,figure,dl,dd){margin:0;padding:0;}
:is(#sf-facility,.sf-facility) :where(h1,h2,h3){color:var(--hg-ink);background:none!important;border:0!important;box-shadow:none!important;font-weight:700;letter-spacing:.035em;text-align:left!important;}
:is(#sf-facility,.sf-facility) :where(h1,h2,h3)::before,:is(#sf-facility,.sf-facility) :where(h1,h2,h3)::after{content:none!important;display:none!important;}
:is(#sf-facility,.sf-facility) h1{padding:0!important;font-size:24px;line-height:1.5;}
:is(#sf-facility,.sf-facility) h2{padding:0!important;font-size:clamp(26px,3vw,36px);line-height:1.55;margin:0 0 30px!important;}
:is(#sf-facility,.sf-facility) h3{padding:0!important;font-size:22px;line-height:1.6;margin:0 0 16px!important;}
:is(#sf-facility,.sf-facility) p{font-size:18px;line-height:1.95;margin:0 0 18px;}
:is(#sf-facility,.sf-facility) li{font-size:18px;line-height:1.85;}
:is(#sf-facility,.sf-facility) .hg-wrap{width:min(1120px,calc(100% - 64px));margin:0 auto;}
:is(#sf-facility,.sf-facility) .hg-narrow{max-width:880px;}
:is(#sf-facility,.sf-facility) .hg-section{padding:88px 0;margin:0;}
:is(#sf-facility,.sf-facility) .hg-tint{background:var(--hg-paper);}
:is(#sf-facility,.sf-facility) .hg-kicker{font-size:16px;font-weight:700;letter-spacing:.10em;color:var(--hg-ink);margin-bottom:18px;}
:is(#sf-facility,.sf-facility) .hg-hero{position:relative;background:var(--hg-paper);padding:64px 0 60px;border-bottom:1px solid var(--hg-line);}
:is(#sf-facility,.sf-facility) .hg-hero-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:46px;align-items:center;}
:is(#sf-facility,.sf-facility) .hg-name{display:block;font-size:25px;letter-spacing:.12em;margin-bottom:28px;}
:is(#sf-facility,.sf-facility) .hg-catch{display:block;font-size:clamp(38px,4vw,54px);line-height:1.5;letter-spacing:.06em;font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:700;margin-bottom:24px;}
:is(#sf-facility,.sf-facility) .hg-lead{font-size:20px;}
:is(#sf-facility,.sf-facility) .hg-tags{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:24px 0;}
:is(#sf-facility,.sf-facility) .hg-tags li{padding:5px 12px;border:1px solid #9cae9d;border-radius:4px;font-size:16px;background:#fff9;}
:is(#sf-facility,.sf-facility) .hg-photo{width:100%;min-width:0;min-height:240px;aspect-ratio:4/3;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:24px;background:repeating-linear-gradient(45deg,#e9e8dd,#e9e8dd 1px,#f2f0e6 1px,#f2f0e6 14px);border:1px dashed #8b9d8e;color:#4c6359;text-align:center;border-radius:6px;}
:is(#sf-facility,.sf-facility) .hg-photo span{font-size:18px;font-weight:700;}
:is(#sf-facility,.sf-facility) .hg-photo .hg-photo-mark{font-size:38px;line-height:1;font-weight:400;}
:is(#sf-facility,.sf-facility) .hg-photo small{font-size:16px;}
:is(#sf-facility,.sf-facility) .hg-hero-photo{aspect-ratio:4/5;min-height:480px;border-radius:150px 150px 6px 6px;}
:is(#sf-facility,.sf-facility) .hg-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin:28px 0 12px;}
:is(#sf-facility,.sf-facility) button{font:inherit;font-size:18px;font-weight:700;border:0;border-radius:5px;padding:16px 22px;background:var(--hg-coral);color:var(--hg-ink);min-height:56px;}
:is(#sf-facility,.sf-facility) button:disabled{opacity:1;cursor:default;}
:is(#sf-facility,.sf-facility) .hg-phone{display:flex;flex-direction:column;line-height:1.55;}
:is(#sf-facility,.sf-facility) .hg-phone span,:is(#sf-facility,.sf-facility) .hg-phone small{font-size:16px;}
:is(#sf-facility,.sf-facility) .hg-phone strong{font-size:27px;white-space:nowrap;letter-spacing:.035em;}
:is(#sf-facility,.sf-facility) .hg-review-note{font-size:16px;line-height:1.75;color:#625747;margin:12px 0 0;}
:is(#sf-facility,.sf-facility) .hg-intro{max-width:780px;}
:is(#sf-facility,.sf-facility) .hg-intro h2{margin-bottom:30px!important;}
:is(#sf-facility,.sf-facility) .hg-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
:is(#sf-facility,.sf-facility) .hg-feature{padding:28px;background:#fff;border-top:3px solid var(--hg-coral);border-radius:0 0 6px 6px;}
:is(#sf-facility,.sf-facility) .hg-number{display:block;color:var(--hg-rust);font-size:19px;font-weight:700;margin-bottom:14px;}
:is(#sf-facility,.sf-facility) .hg-feature p{margin-bottom:0;}
:is(#sf-facility,.sf-facility) .hg-salon{background:#FCF9F8;}
:is(#sf-facility,.sf-facility) .hg-split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;}
:is(#sf-facility,.sf-facility) .hg-small{font-size:16px;}
:is(#sf-facility,.sf-facility) .hg-section-intro{margin-bottom:8px;}
:is(#sf-facility,.sf-facility) .hg-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 24px;margin-top:32px;}
:is(#sf-facility,.sf-facility) .hg-gallery figure{min-width:0;}
:is(#sf-facility,.sf-facility) .hg-gallery .hg-photo{min-height:180px;}
:is(#sf-facility,.sf-facility) figcaption{font-size:18px;line-height:1.7;margin-top:14px;font-weight:700;}
:is(#sf-facility,.sf-facility) figcaption>span{font-size:16px;color:var(--hg-rust);margin-right:10px;}
:is(#sf-facility,.sf-facility) .hg-fee-box{max-width:880px;margin:0 auto;padding:38px 44px;background:#fff;border:1px solid var(--hg-line);border-radius:8px;}
:is(#sf-facility,.sf-facility) .hg-fee-head{text-align:center;}
:is(#sf-facility,.sf-facility) .hg-campaign{display:inline-block;background:var(--hg-green);color:#fff;padding:7px 18px;font-size:18px;font-weight:700;}
:is(#sf-facility,.sf-facility) .hg-fee-head p{margin:12px 0 26px;}
:is(#sf-facility,.sf-facility) .hg-fee-summary{display:flex;align-items:center;justify-content:center;gap:24px;text-align:center;}
:is(#sf-facility,.sf-facility) .hg-fee-summary>div{display:flex;flex-direction:column;}
:is(#sf-facility,.sf-facility) .hg-fee-summary span{font-size:18px;}
:is(#sf-facility,.sf-facility) .hg-fee-summary strong{font-size:44px;line-height:1.5;color:var(--hg-rust);font-variant-numeric:tabular-nums;}
:is(#sf-facility,.sf-facility) .hg-fee-summary small{font-size:22px;margin-left:4px;}
:is(#sf-facility,.sf-facility) .hg-fee-summary .hg-normal{font-size:34px;color:#52635b;}
:is(#sf-facility,.sf-facility) .hg-fee-arrow{font-size:28px!important;}
:is(#sf-facility,.sf-facility) .hg-saving{text-align:center;background:#FFF0F1;color:#2D3748;padding:10px;margin:20px 0 28px;}
:is(#sf-facility,.sf-facility) .hg-saving strong{font-size:24px;}
:is(#sf-facility,.sf-facility) .hg-fees{width:100%;border-collapse:collapse;font-size:18px;table-layout:fixed;margin:0;}
:is(#sf-facility,.sf-facility) .hg-fees caption{text-align:left;font-weight:700;margin-bottom:12px;}
:is(#sf-facility,.sf-facility) .hg-fees th,:is(#sf-facility,.sf-facility) .hg-fees td{padding:14px 12px;border:1px solid var(--hg-line);font-size:18px;vertical-align:middle;line-height:1.6;}
:is(#sf-facility,.sf-facility) .hg-fees th{text-align:left;font-weight:700;background:#FCF9F8;}
:is(#sf-facility,.sf-facility) .hg-fees thead th{text-align:center;color:var(--hg-ink);background:var(--hg-green);}
:is(#sf-facility,.sf-facility) .hg-fees td{text-align:right;white-space:nowrap;background:#fff;font-variant-numeric:tabular-nums;}
:is(#sf-facility,.sf-facility) .hg-fees tbody tr:last-child>*{font-weight:700;background:#F0FDFB;}
:is(#sf-facility,.sf-facility) .hg-entry{margin:24px 0 18px;padding-bottom:18px;border-bottom:1px solid var(--hg-line);}
:is(#sf-facility,.sf-facility) .hg-entry strong{display:inline-block;margin-left:12px;font-size:24px;}
:is(#sf-facility,.sf-facility) .hg-notes{padding-left:1.3em;margin:0;}
:is(#sf-facility,.sf-facility) .hg-notes li{font-size:16px;margin-bottom:8px;}
:is(#sf-facility,.sf-facility) .hg-review-box{padding:18px 22px;border:1px dashed #a38d69;background:#fffbf2;margin-top:26px;}
:is(#sf-facility,.sf-facility) .hg-review-box strong{font-size:16px;}
:is(#sf-facility,.sf-facility) .hg-review-box p{font-size:16px;margin:6px 0 0;line-height:1.8;}
:is(#sf-facility,.sf-facility) .hg-faq{border-top:1px solid var(--hg-line);}
:is(#sf-facility,.sf-facility) details{border-bottom:1px solid var(--hg-line);padding:0;}
:is(#sf-facility,.sf-facility) summary{display:flex;align-items:baseline;gap:18px;padding:22px 4px;cursor:pointer;font-size:19px;font-weight:700;line-height:1.7;list-style:none;}
:is(#sf-facility,.sf-facility) summary::-webkit-details-marker{display:none;}
:is(#sf-facility,.sf-facility) summary:focus-visible{outline:3px solid var(--hg-rust);outline-offset:3px;}
:is(#sf-facility,.sf-facility) .hg-q{color:var(--hg-ink);flex:0 0 38px;}
:is(#sf-facility,.sf-facility) .hg-plus{margin-left:auto;color:var(--hg-ink);flex-shrink:0;}
:is(#sf-facility,.sf-facility) details[open] .hg-plus{transform:rotate(45deg);}
:is(#sf-facility,.sf-facility) .hg-answer{padding:0 36px 22px 60px;}
:is(#sf-facility,.sf-facility) .hg-answer p{margin:0;}
:is(#sf-facility,.sf-facility) .hg-overview-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:start;}
:is(#sf-facility,.sf-facility) .hg-overview>div{display:grid;grid-template-columns:110px 1fr;gap:20px;padding:16px 0;border-bottom:1px solid #cbd5c9;}
:is(#sf-facility,.sf-facility) dt{font-weight:700;font-size:18px;}
:is(#sf-facility,.sf-facility) dd{font-size:18px;}
:is(#sf-facility,.sf-facility) .hg-map{min-height:300px;background:#F0FDFB;border:1px dashed #8b9d8e;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:24px;margin-bottom:28px;}
:is(#sf-facility,.sf-facility) .hg-map>span{font-size:42px;}
:is(#sf-facility,.sf-facility) .hg-map strong{font-size:22px;}
:is(#sf-facility,.sf-facility) .hg-map p{font-size:16px;margin:12px 0 0;}
:is(#sf-facility,.sf-facility) .hg-social{max-width:740px;text-align:center;border:1px solid var(--hg-line);padding:40px;border-radius:8px;}
:is(#sf-facility,.sf-facility) .hg-social h2{text-align:center!important;margin-bottom:18px!important;}
:is(#sf-facility,.sf-facility) .hg-status{display:inline-block;padding:5px 24px;border-radius:30px;background:#FFD966;font-size:16px;}
:is(#sf-facility,.sf-facility) .hg-contact{background:#FCF9F8;border-top:4px solid var(--hg-green);}
:is(#sf-facility,.sf-facility) .hg-contact .hg-actions{gap:30px;}
@media(max-width:1000px){:is(#sf-facility,.sf-facility) .hg-hero-grid{gap:28px;}:is(#sf-facility,.sf-facility) .hg-feature-grid,:is(#sf-facility,.sf-facility) .hg-gallery{grid-template-columns:repeat(2,minmax(0,1fr));}:is(#sf-facility,.sf-facility) .hg-hero-photo{min-height:420px;}:is(#sf-facility,.sf-facility) .hg-overview-grid{gap:30px;}}
@media(max-width:760px){:is(#sf-facility,.sf-facility) .hg-wrap{width:calc(100% - 40px);}:is(#sf-facility,.sf-facility) .hg-section{padding:56px 0;}:is(#sf-facility,.sf-facility) .hg-hero{padding:34px 0 40px;}:is(#sf-facility,.sf-facility) .hg-hero-grid,:is(#sf-facility,.sf-facility) .hg-split,:is(#sf-facility,.sf-facility) .hg-overview-grid{grid-template-columns:1fr;}:is(#sf-facility,.sf-facility) .hg-hero-grid{gap:30px;}:is(#sf-facility,.sf-facility) .hg-catch{font-size:clamp(34px,7.6vw,46px);letter-spacing:.025em;}:is(#sf-facility,.sf-facility) .hg-name{font-size:23px;margin-bottom:18px;}:is(#sf-facility,.sf-facility) .hg-kicker{font-size:16px;letter-spacing:.035em;}:is(#sf-facility,.sf-facility) .hg-hero-photo{min-height:260px;aspect-ratio:4/3;border-radius:80px 80px 6px 6px;}:is(#sf-facility,.sf-facility) .hg-feature-grid,:is(#sf-facility,.sf-facility) .hg-gallery{grid-template-columns:1fr;}:is(#sf-facility,.sf-facility) .hg-feature{padding:26px;}:is(#sf-facility,.sf-facility) .hg-actions{gap:16px;align-items:stretch;}:is(#sf-facility,.sf-facility) button{width:100%;}:is(#sf-facility,.sf-facility) .hg-phone{width:100%;}:is(#sf-facility,.sf-facility) .hg-split{gap:28px;}:is(#sf-facility,.sf-facility) .hg-salon .hg-photo{order:2;}:is(#sf-facility,.sf-facility) .hg-fee-box{padding:26px 16px;}:is(#sf-facility,.sf-facility) .hg-fee-summary{flex-direction:column;gap:10px;}:is(#sf-facility,.sf-facility) .hg-fee-arrow{transform:rotate(90deg);}:is(#sf-facility,.sf-facility) .hg-fee-summary strong{font-size:42px;}:is(#sf-facility,.sf-facility) .hg-fee-summary .hg-normal{font-size:30px;}:is(#sf-facility,.sf-facility) .hg-fees th,:is(#sf-facility,.sf-facility) .hg-fees td{font-size:16px;padding:12px 6px;}:is(#sf-facility,.sf-facility) .hg-fees th:first-child{width:33%;}:is(#sf-facility,.sf-facility) .hg-entry strong{display:block;margin-left:0;}:is(#sf-facility,.sf-facility) .hg-review-box{padding:16px;}:is(#sf-facility,.sf-facility) summary{gap:10px;font-size:18px;padding:20px 0;}:is(#sf-facility,.sf-facility) .hg-q{flex-basis:34px;}:is(#sf-facility,.sf-facility) .hg-answer{padding:0 0 20px 0;}:is(#sf-facility,.sf-facility) .hg-overview>div{grid-template-columns:90px 1fr;gap:16px;}:is(#sf-facility,.sf-facility) .hg-social{width:calc(100% - 40px);padding:28px 20px;}:is(#sf-facility,.sf-facility) .hg-contact .hg-actions{gap:16px;}}
@media print{:is(#sf-facility,.sf-facility) .hg-section{padding:28px 0;}:is(#sf-facility,.sf-facility) .hg-wrap{width:100%;}:is(#sf-facility,.sf-facility) .hg-hero-grid{grid-template-columns:1fr;}:is(#sf-facility,.sf-facility) .hg-hero-photo{display:none;}:is(#sf-facility,.sf-facility) details .hg-answer{display:block;}:is(#sf-facility,.sf-facility) .hg-feature,:is(#sf-facility,.sf-facility) figure,:is(#sf-facility,.sf-facility) details{break-inside:avoid;}:is(#sf-facility,.sf-facility) button{display:none;}}

/* v2 指定のサフィールカラーパレットと横幅いっぱいのヒーロー */
:is(#sf-facility,.sf-facility){--hg-tag-nursing:#5DCCB8;--hg-tag-home:#FF8C94;--hg-tag-special:#5DCCB8;--hg-tag-day:#FFD966;--hg-tag-care:#FFD966;}
:is(#sf-facility,.sf-facility) .hg-type{display:inline-block;background:var(--hg-tag-home);color:var(--hg-ink);padding:4px 10px;border-radius:4px;letter-spacing:0;}
:is(#sf-facility,.sf-facility) .hg-hero{padding:68px 0 72px;min-height:700px;position:relative;overflow:hidden;background:var(--hg-paper);}
:is(#sf-facility,.sf-facility) .hg-hero-grid{display:block;position:static;}
:is(#sf-facility,.sf-facility) .hg-hero-copy{position:relative;z-index:2;max-width:640px;}
:is(#sf-facility,.sf-facility) .hg-hero::after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,rgba(252,249,248,.99) 0%,rgba(252,249,248,.96) 40%,rgba(252,249,248,.3) 75%);pointer-events:none;}
:is(#sf-facility,.sf-facility) .hg-hero-photo{position:absolute;inset:0;width:100%;height:100%;min-height:0;aspect-ratio:auto;border-radius:0;border:0;display:flex;justify-content:flex-end;align-items:flex-end;padding:40px;z-index:0;background:repeating-linear-gradient(45deg,#D7F2EC,#D7F2EC 1px,#ECF9F6 1px,#ECF9F6 20px);}
:is(#sf-facility,.sf-facility) .hg-hero-photo>*{position:relative;z-index:3;max-width:340px;}
:is(#sf-facility,.sf-facility) .hg-hero-photo .hg-photo-mark{display:none;}
:is(#sf-facility,.sf-facility) .hg-tags li{border-color:#5DCCB8;background:#fff;}
:is(#sf-facility,.sf-facility) .hg-number{display:inline-block;border-bottom:4px solid var(--hg-yellow);}
:is(#sf-facility,.sf-facility) .hg-saving{border-left:4px solid var(--hg-coral);}
:is(#sf-facility,.sf-facility) .hg-campaign{background:var(--hg-yellow);color:var(--hg-ink);}
:is(#sf-facility,.sf-facility) .hg-fee-summary strong{color:var(--hg-ink);}
:is(#sf-facility,.sf-facility) .hg-fee-summary>div:last-child strong{background:linear-gradient(transparent 70%,#FF8C94 70%);}
:is(#sf-facility,.sf-facility) .hg-photo:not(.hg-hero-photo){background:repeating-linear-gradient(45deg,#E2E8F0,#E2E8F0 1px,#FCF9F8 1px,#FCF9F8 14px);border-color:#a3b4ba;color:var(--hg-ink);}
@media(max-width:760px){:is(#sf-facility,.sf-facility) .hg-hero{padding:36px 0 140px;min-height:0;}:is(#sf-facility,.sf-facility) .hg-hero-photo{padding:24px 20px;min-height:0;aspect-ratio:auto;}:is(#sf-facility,.sf-facility) .hg-hero::after{background:linear-gradient(180deg,rgba(252,249,248,.98) 0%,rgba(252,249,248,.97) 75%,rgba(252,249,248,.25) 100%);}:is(#sf-facility,.sf-facility) .hg-hero-photo>*{max-width:100%;}:is(#sf-facility,.sf-facility) .hg-hero-photo span{font-size:16px;}}

/* 標準ブロックと編集画面の共通調整 */
:is(#sf-facility,.sf-facility) .wp-block-group{margin-bottom:0;}
:is(#sf-facility,.sf-facility) .wp-block-group__inner-container{width:100%;}
:is(#sf-facility,.sf-facility) .hg-hero.wp-block-cover{display:block;min-height:640px;padding:64px 0!important;}
:is(#sf-facility,.sf-facility) .hg-hero .wp-block-cover__inner-container{position:relative;z-index:2;color:var(--hg-ink);}
:is(#sf-facility,.sf-facility) .hg-hero .wp-block-cover__background{z-index:0;}
:is(#sf-facility,.sf-facility) .hg-hero .wp-block-cover__image-background{z-index:0;}
:is(#sf-facility,.sf-facility) .hg-hero::after{z-index:1;}
:is(#sf-facility,.sf-facility) .hg-hero h1{font-size:clamp(38px,4vw,54px);line-height:1.5;color:var(--hg-ink);text-shadow:none;}
:is(#sf-facility,.sf-facility) p.hg-name{font-size:25px;font-weight:700;}
:is(#sf-facility,.sf-facility) p.hg-catch{font-size:clamp(38px,4vw,54px);}
:is(#sf-facility,.sf-facility) .hg-hero p.hg-type{margin:0 0 14px;}
:is(#sf-facility,.sf-facility) .hg-cta-label{padding:16px 22px;background:var(--hg-coral);font-size:18px;font-weight:700;border-radius:5px;margin:0;}
:is(#sf-facility,.sf-facility) .hg-phone p{margin:0;font-size:16px;line-height:1.55;}
:is(#sf-facility,.sf-facility) .hg-phone p.hg-phone-number{font-size:27px;}
:is(#sf-facility,.sf-facility) .hg-photo{width:100%;}
:is(#sf-facility,.sf-facility) .hg-photo .wp-block-image{width:100%;margin:0;}
:is(#sf-facility,.sf-facility) .hg-photo img{display:block;width:100%;height:auto;box-shadow:none;border-radius:6px;}
:is(#sf-facility,.sf-facility) .hg-photo:has(img){display:block;aspect-ratio:auto;min-height:0;padding:0;border:0;background:none;}
:is(#sf-facility,.sf-facility) .hg-photo:has(img) .hg-photo-note{display:none;}
:is(#sf-facility,.sf-facility) .hg-photo-note{font-size:16px;margin:0;}
:is(#sf-facility,.sf-facility) .hg-caption{font-weight:700;margin:14px 0 0;}
:is(#sf-facility,.sf-facility) .hg-gallery-item{min-width:0;}
:is(#sf-facility,.sf-facility) .hg-fees table{width:100%;table-layout:fixed;border-collapse:collapse;}
:is(#sf-facility,.sf-facility) .hg-fees figcaption{font-size:16px;text-align:left;margin:10px 0 0;font-weight:400;}
:is(#sf-facility,.sf-facility) .hg-fee-summary p{margin:0;}
:is(#sf-facility,.sf-facility) .hg-fee-summary .hg-normal strong{font-size:34px;}
:is(#sf-facility,.sf-facility) .hg-fee-summary .hg-campaign-amount strong{font-size:44px;}
:is(#sf-facility,.sf-facility) .hg-faq summary{display:list-item;list-style:revert;color:var(--hg-ink);padding:22px 8px;}
:is(#sf-facility,.sf-facility) .hg-faq summary::-webkit-details-marker{display:revert;}
:is(#sf-facility,.sf-facility) .hg-faq details>p{padding:0 8px 24px;margin:0;}
:is(#sf-facility,.sf-facility) .hg-overview-native{margin:0;}
:is(#sf-facility,.sf-facility) .hg-overview-native table{border-collapse:collapse;width:100%;table-layout:fixed;}
:is(#sf-facility,.sf-facility) .hg-overview-native th,:is(#sf-facility,.sf-facility) .hg-overview-native td{font-size:18px;line-height:1.85;padding:14px 10px;border:0;border-bottom:1px solid var(--hg-line);text-align:left;vertical-align:top;background:none;}
:is(#sf-facility,.sf-facility) .hg-overview-native th{width:30%;font-weight:700;}
:is(#sf-facility,.sf-facility) .hg-social{width:100%;}
:is(#sf-facility,.sf-facility) .hg-map p{margin:8px 0;}
@media(max-width:760px){:is(#sf-facility,.sf-facility) .hg-hero.wp-block-cover{min-height:0;padding:36px 0 48px!important;}:is(#sf-facility,.sf-facility) .hg-hero h1{font-size:clamp(34px,7.6vw,46px);}:is(#sf-facility,.sf-facility) .hg-cta-label{width:100%;text-align:center;}:is(#sf-facility,.sf-facility) .hg-fee-summary .hg-normal strong{font-size:30px;}:is(#sf-facility,.sf-facility) .hg-fee-summary .hg-campaign-amount strong{font-size:42px;}:is(#sf-facility,.sf-facility) .hg-overview-native th,:is(#sf-facility,.sf-facility) .hg-overview-native td{padding:12px 6px;font-size:18px;}}
/* エディターの追加ボタンを隠さず、フロントと共通の色・文字だけを適用 */
.editor-styles-wrapper :is(#sf-facility,.sf-facility) .block-editor-block-list__layout{max-width:none;}

/* 編集時はWordPressがアンカーIDを編集用IDへ変える場合もクラスで適用する */
.editor-styles-wrapper .sf-facility .hg-feature-grid:has(> .block-editor-inner-blocks),
.editor-styles-wrapper .sf-facility .hg-gallery:has(> .block-editor-inner-blocks),
.editor-styles-wrapper .sf-facility .hg-split:has(> .block-editor-inner-blocks),
.editor-styles-wrapper .sf-facility .hg-overview-grid:has(> .block-editor-inner-blocks){display:block;}
.editor-styles-wrapper .sf-facility .hg-feature-grid>.block-editor-inner-blocks>.block-editor-block-list__layout,
.editor-styles-wrapper .sf-facility .hg-gallery>.block-editor-inner-blocks>.block-editor-block-list__layout{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;}
.editor-styles-wrapper .sf-facility .hg-split>.block-editor-inner-blocks>.block-editor-block-list__layout,
.editor-styles-wrapper .sf-facility .hg-overview-grid>.block-editor-inner-blocks>.block-editor-block-list__layout{display:grid;grid-template-columns:1fr 1fr;gap:32px;}
@media(max-width:1000px){.editor-styles-wrapper .sf-facility .hg-feature-grid>.block-editor-inner-blocks>.block-editor-block-list__layout,.editor-styles-wrapper .sf-facility .hg-gallery>.block-editor-inner-blocks>.block-editor-block-list__layout{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:760px){.editor-styles-wrapper .sf-facility .hg-feature-grid>.block-editor-inner-blocks>.block-editor-block-list__layout,.editor-styles-wrapper .sf-facility .hg-gallery>.block-editor-inner-blocks>.block-editor-block-list__layout,.editor-styles-wrapper .sf-facility .hg-split>.block-editor-inner-blocks>.block-editor-block-list__layout,.editor-styles-wrapper .sf-facility .hg-overview-grid>.block-editor-inner-blocks>.block-editor-block-list__layout{grid-template-columns:1fr;}}

/* 0.1.2 SWELLの施設ページだけ外枠を画面幅にする。100vwは使わない。 */
.sf-facility-page #content.l-content,
.sf-facility-page .l-content{
  display:block!important;float:none!important;width:100%!important;max-width:none!important;
  margin:0!important;padding:0!important;
}
.sf-facility-page #main_content.l-mainContent,
.sf-facility-page .l-mainContent,
.sf-facility-page .l-mainContent__inner{
  float:none!important;flex:none!important;width:100%!important;max-width:none!important;
  margin:0!important;padding:0!important;box-sizing:border-box!important;
}
.sf-facility-page .l-mainContent .post_content{
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;
}
.sf-facility-page #sidebar,
.sf-facility-page .l-sidebar{display:none!important;}
.sf-facility-page .l-mainContent .c-pageTitle,
.sf-facility-page .l-mainContent .p-articleHead{display:none!important;}
.sf-facility-page #sf-facility{width:100%!important;max-width:none!important;margin:0!important;}
.sf-facility-page #sf-facility .hg-wrap{margin-inline:auto!important;}
/* 本文の横幅を保ち、ヒーロー背景のみが外枠いっぱいに広がる */
.sf-facility-page #sf-facility .hg-hero{width:100%!important;max-width:none!important;margin:0!important;}

/* 0.1.3 標準グループの旧形式の内側ラッパーにもレイアウトを適用 */
:is(#sf-facility,.sf-facility) :is(.hg-feature-grid,.hg-gallery){--sf-cols:3;--sf-grid-gap:24px;}
:is(#sf-facility,.sf-facility) .hg-gallery{--sf-grid-gap:32px 24px;}
:is(#sf-facility,.sf-facility) .hg-split{--sf-cols:2;--sf-grid-gap:56px;}
:is(#sf-facility,.sf-facility) .hg-overview-grid{--sf-cols:2;--sf-grid-gap:48px;}
:is(#sf-facility,.sf-facility) :is(.hg-feature-grid,.hg-gallery,.hg-split,.hg-overview-grid){
  grid-template-columns:repeat(var(--sf-cols),minmax(0,1fr))!important;gap:var(--sf-grid-gap)!important;
}
:is(#sf-facility,.sf-facility) :is(.hg-feature-grid,.hg-gallery,.hg-split,.hg-overview-grid):has(> .wp-block-group__inner-container){display:block!important;}
:is(#sf-facility,.sf-facility) :is(.hg-feature-grid,.hg-gallery,.hg-split,.hg-overview-grid)> .wp-block-group__inner-container{
  display:grid!important;grid-template-columns:repeat(var(--sf-cols),minmax(0,1fr))!important;
  gap:var(--sf-grid-gap)!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;align-items:stretch;
}
:is(#sf-facility,.sf-facility) :is(.hg-feature-grid,.hg-gallery,.hg-split,.hg-overview-grid)> .wp-block-group__inner-container>*{
  min-width:0!important;margin:0!important;max-width:100%;
}
:is(#sf-facility,.sf-facility) :is(.hg-actions,.hg-fee-summary){--sf-flex-direction:row;--sf-flex-gap:24px;}
:is(#sf-facility,.sf-facility) :is(.hg-actions,.hg-fee-summary):has(> .wp-block-group__inner-container){display:block!important;}
:is(#sf-facility,.sf-facility) :is(.hg-actions,.hg-fee-summary)> .wp-block-group__inner-container{
  display:flex!important;flex-direction:var(--sf-flex-direction)!important;flex-wrap:wrap;
  gap:var(--sf-flex-gap)!important;align-items:center;justify-content:inherit;
  width:100%!important;max-width:none!important;margin:0!important;padding:0!important;
}
:is(#sf-facility,.sf-facility) :is(.hg-actions,.hg-fee-summary)> .wp-block-group__inner-container>*{margin:0!important;min-width:0;}
:is(#sf-facility,.sf-facility) .hg-actions .hg-cta-label{flex:0 1 auto;}
@media(max-width:1000px){:is(#sf-facility,.sf-facility) :is(.hg-feature-grid,.hg-gallery){--sf-cols:2;}}
@media(max-width:760px){
 :is(#sf-facility,.sf-facility) :is(.hg-feature-grid,.hg-gallery,.hg-split,.hg-overview-grid){--sf-cols:1;--sf-grid-gap:24px;}
 :is(#sf-facility,.sf-facility) :is(.hg-actions,.hg-fee-summary){--sf-flex-direction:column;--sf-flex-gap:16px;}
 :is(#sf-facility,.sf-facility) .hg-actions>.wp-block-group__inner-container{align-items:stretch;}
}

/* 0.1.4 Instagramカード自体の位置を編集画面・フロント共通で中央へ */
:is(#sf-facility,.sf-facility) .hg-social{
  width:100%!important;max-width:740px!important;margin-inline:auto!important;
}

/* 0.1.5 実画像がある枠だけ、仮画像の斜線・高さ・余白を解除する */
:is(#sf-facility,.sf-facility) .hg-photo:not(.hg-hero-photo):has(img[src]:not([src=""])){
  display:block!important;background:none!important;border:0!important;padding:0!important;
  min-height:0!important;height:auto!important;aspect-ratio:auto!important;align-self:start!important;
}
:is(#sf-facility,.sf-facility) .hg-photo:not(.hg-hero-photo):has(img[src]:not([src=""]))>.wp-block-group__inner-container{
  background:none!important;min-height:0!important;height:auto!important;margin:0!important;padding:0!important;
}
:is(#sf-facility,.sf-facility) .hg-photo:not(.hg-hero-photo):has(img[src]:not([src=""])) .wp-block-image{
  margin:0!important;padding:0!important;line-height:0;
}
:is(#sf-facility,.sf-facility) .hg-photo:not(.hg-hero-photo):has(img[src]:not([src=""])) .hg-photo-note{display:none!important;}

/* 0.1.6 見学・電話は標準ボタン。施設ページ内の専用クラスだけに適用 */
:is(#sf-facility,.sf-facility) .sf-contact-actions .sf-cta-buttons{margin:0!important;padding:0;display:flex;gap:0;}
:is(#sf-facility,.sf-facility) .sf-contact-actions .wp-block-button{margin:0;}
:is(#sf-facility,.sf-facility) .sf-contact-actions .wp-block-button__link{
 display:inline-flex;align-items:center;justify-content:center;min-height:60px;padding:16px 24px;gap:10px;
 border:0;border-radius:8px;box-shadow:none;text-decoration:none!important;
 font-family:inherit;font-size:18px;font-weight:700;line-height:1.5;color:#fff!important;
 white-space:normal;overflow-wrap:anywhere;transition:filter .15s;
}
:is(#sf-facility,.sf-facility) .sf-visit-button .wp-block-button__link{background:var(--hg-green)!important;}
:is(#sf-facility,.sf-facility) .sf-phone-button .wp-block-button__link{background:var(--hg-coral)!important;font-size:18px;letter-spacing:.025em;}
:is(#sf-facility,.sf-facility) .sf-contact-actions a:hover{filter:brightness(.95);}
:is(#sf-facility,.sf-facility) .sf-contact-actions a:focus-visible{outline:3px solid var(--hg-ink);outline-offset:4px;}
:is(#sf-facility,.sf-facility) .sf-contact-actions .hg-phone{gap:6px;}
@media(max-width:760px){
 :is(#sf-facility,.sf-facility) .sf-contact-actions .sf-cta-buttons,
 :is(#sf-facility,.sf-facility) .sf-contact-actions .wp-block-button,
 :is(#sf-facility,.sf-facility) .sf-contact-actions .wp-block-button__link{width:100%;}
}

/* 0.1.7 高さ・文字サイズを統一し、装飾の線アイコンを追加 */
:is(#sf-facility,.sf-facility) .sf-contact-actions .wp-block-button__link::before{content:"";display:block;position:static;width:22px;height:22px;flex:0 0 22px;background:transparent center/contain no-repeat;border:0;transform:none;}
:is(#sf-facility,.sf-facility) .sf-visit-button .wp-block-button__link::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Crect%20x%3D%223%22%20y%3D%225%22%20width%3D%2218%22%20height%3D%2216%22%20rx%3D%223%22%2F%3E%3Cpath%20d%3D%22M7%203v4M17%203v4M3%2010h18M8%2014h.01M12%2014h.01M16%2014h.01M8%2017h.01M12%2017h.01%22%2F%3E%3C%2Fsvg%3E");}
:is(#sf-facility,.sf-facility) .sf-phone-button .wp-block-button__link::before{background-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22white%22%20stroke-width%3D%221.7%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M22%2016.9v3a2%202%200%200%201-2.2%202%2019.8%2019.8%200%200%201-8.6-3.1%2019.5%2019.5%200%200%201-6-6%2019.8%2019.8%200%200%201-3.1-8.7A2%202%200%200%201%204.1%202h3a2%202%200%200%201%202%201.7c.1%201%20.4%202%20.7%202.9a2%202%200%200%201-.5%202.1L8%2010a16%2016%200%200%200%206%206l1.3-1.3a2%202%200%200%201%202.1-.5c.9.3%201.9.6%202.9.7a2%202%200%200%201%201.7%202Z%22%2F%3E%3C%2Fsvg%3E");}
