.ei-funeral{--ef-ink:#243d35;--ef-green:#263f33;--ef-gold:#a98e5b;--ef-paper:#f8f7f2;--ef-line:#e6e1d6;color:var(--ef-ink);background:#fff;font-family:"Noto Serif JP","Yu Mincho",YuMincho,"Hiragino Mincho ProN",serif;line-height:1.85;overflow:hidden}
.ei-funeral *{box-sizing:border-box}.ei-funeral h1,.ei-funeral h2,.ei-funeral h3,.ei-funeral p,.ei-funeral figure{margin:0}.ei-funeral a{text-decoration:none}.ef-wrap{width:min(100% - 36px,1120px);margin-inline:auto}.ef-mobile-only{display:none}
.ef-hero{position:relative;isolation:isolate;min-height:clamp(510px,48vw,660px);display:flex;align-items:center;color:#fff;background:#1c3029}.ef-hero:before{content:"";position:absolute;inset:0;z-index:-2;background-image:var(--ef-hero-image);background-size:cover;background-position:center 49%;filter:brightness(1.12) saturate(.96);transform:scale(1.002)}.ef-hero:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(11,30,23,.23) 0%,rgba(11,30,23,.12) 32%,rgba(11,30,23,.02) 62%,rgba(11,30,23,0) 100%)}.ef-hero__inner{padding-block:72px;text-shadow:0 2px 8px rgba(0,0,0,.72),0 1px 2px rgba(0,0,0,.8)}.ef-hero__eyebrow{font-size:.82rem;letter-spacing:.2em;color:#e9ddbe;margin-bottom:19px!important}.ef-hero h1{font-size:clamp(2.35rem,5vw,4.2rem);font-weight:400;line-height:1.45;letter-spacing:.07em;max-width:13em}.ef-hero__lead{font-size:clamp(1rem,1.7vw,1.26rem);letter-spacing:.04em;margin-top:25px!important}.ef-rule{display:block;width:44px;height:1px;background:#c2a978;margin:27px 0 23px}.ef-hero__body{font-size:.95rem;letter-spacing:.04em}
.ef-intro{padding:80px 0 82px;text-align:center;background:radial-gradient(circle at 2% 95%,rgba(161,158,136,.16),transparent 27%),radial-gradient(circle at 100% 5%,rgba(145,157,135,.16),transparent 25%),var(--ef-paper)}.ef-intro h2{font-size:clamp(1.45rem,2.6vw,2.2rem);font-weight:400;line-height:1.6;letter-spacing:.06em}.ef-intro p{font-size:.95rem;margin-top:20px}.ef-intro .ef-rule{margin:27px auto 18px}.ef-intro__closing{letter-spacing:.1em}
.ef-venue{padding-block:30px 24px}.ef-venue__heading{display:flex;align-items:end;justify-content:center;gap:28px;margin-bottom:18px}.ef-venue__heading h2{font-size:2rem;font-weight:400;letter-spacing:.08em}.ef-venue__heading p{font-size:.86rem;color:#66736b;padding-bottom:5px}.ef-venue__grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.ef-venue__figure{display:grid;grid-template-columns:26% 74%;height:270px;overflow:hidden;background:var(--ef-green)}.ef-venue__figure--room{grid-template-columns:74% 26%}.ef-venue__figure img{width:100%;height:100%;object-fit:cover;display:block}.ef-venue__figure--hall img{object-position:center 48%}.ef-venue__figure figcaption{background:var(--ef-green);color:white;padding:23px 17px;display:flex;flex-direction:column;justify-content:center}.ef-venue__figure figcaption strong{font-size:1.35rem;font-weight:400;letter-spacing:.18em}.ef-venue__figure figcaption strong:after{content:"";display:block;width:36px;height:1px;background:#c7b685;margin:12px 0}.ef-venue__figure figcaption span{font-size:.76rem;line-height:1.75}
.ef-benefits{padding-block:20px 60px}.ef-benefits h2{text-align:center;font-size:clamp(1.55rem,2.7vw,2.15rem);font-weight:400;letter-spacing:.09em;margin-bottom:24px}.ef-benefits h2 span{font-size:1.18em}.ef-benefits__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.ef-benefit{background:#faf9f6;border:1px solid #eeeae2;border-radius:6px;text-align:center;padding:20px 14px 27px;min-height:202px}.ef-benefit__icon{display:grid;place-items:center;width:62px;height:62px;border-radius:50%;margin:0 auto 15px;background:var(--ef-gold);color:#fff;font-family:Arial,sans-serif;font-size:2rem;font-weight:400}.ef-benefit h3{font-size:1rem;font-weight:500;line-height:1.55;min-height:3.1em}.ef-benefit p{font-size:.79rem;line-height:1.8;margin-top:10px;color:#506158}
.ef-pricing{padding:58px 0 64px;text-align:center;background:radial-gradient(circle at 0 100%,rgba(160,151,126,.13),transparent 25%),radial-gradient(circle at 100% 0,rgba(160,151,126,.13),transparent 25%),var(--ef-paper)}.ef-pricing h2{font-size:clamp(1.7rem,3vw,2.3rem);font-weight:400;letter-spacing:.08em}.ef-pricing__badge{display:table;margin:7px auto 11px!important;background:var(--ef-gold);color:#fff;border-radius:30px;padding:5px 30px;font-size:.95rem;letter-spacing:.05em}.ef-pricing__lead{font-size:.9rem;color:#667168}.ef-pricing__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-top:27px}.ef-price{border:1px solid #ded6c7;border-radius:5px;background:#fff;overflow:hidden;padding-bottom:14px}.ef-price__label{display:block;background:var(--ef-green);color:#fff;padding:7px 12px;font-size:1rem;letter-spacing:.07em}.ef-price p{display:flex;align-items:baseline;justify-content:center;gap:7px;padding:8px 0 2px}.ef-price strong{font-size:clamp(2.2rem,4vw,3.1rem);font-weight:400;color:#67532f;line-height:1.3}.ef-price strong small{font-size:.52em}.ef-price p>span{font-size:.78rem}.ef-price__offering{display:inline-block;background:var(--ef-gold);color:#fff;border-radius:30px;padding:2px 16px;font-size:.77rem}.ef-pricing__note{margin-top:18px!important;font-size:.82rem;color:#657067}.ef-button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:10px 25px;transition:opacity .2s}.ef-button:hover{opacity:.82}.ef-button:focus-visible{outline:3px solid #c7aa72;outline-offset:4px}.ef-button--gold{margin-top:17px;background:var(--ef-gold);color:#fff!important;min-width:290px}.ef-button--outline{background:var(--ef-gold);border:1px solid #d9c69d;color:#fff!important;min-width:285px}
.ef-contact{padding:48px 0;background:var(--ef-green);color:#fff}.ef-contact__inner{display:flex;align-items:center;justify-content:space-between;gap:30px}.ef-contact h2{font-size:clamp(1.4rem,2.4vw,1.95rem);font-weight:400;letter-spacing:.07em}.ef-contact p{font-size:.84rem;color:#e8ece6;margin-top:7px}
@media(max-width:900px){.ef-hero{min-height:550px}.ef-venue__figure{height:230px}.ef-venue__figure figcaption{padding:15px 10px}.ef-venue__figure figcaption strong{font-size:1.1rem}.ef-venue__figure figcaption span{font-size:.68rem}.ef-benefits__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:640px){.ef-mobile-only{display:block}.ef-wrap{width:min(100% - 32px,1120px)}.ef-hero{min-height:610px;align-items:end}.ef-hero:before{background-position:56% center}.ef-hero:after{background:linear-gradient(0deg,rgba(11,30,23,.34) 0%,rgba(11,30,23,.16) 55%,rgba(11,30,23,0) 100%)}.ef-hero__inner{padding-block:55px 48px}.ef-hero h1{font-size:clamp(2.1rem,8vw,2.9rem)}.ef-hero__lead{font-size:.98rem}.ef-hero__body{font-size:.83rem}.ef-intro{padding:58px 0}.ef-intro p{font-size:.88rem}.ef-intro p br:not(.ef-mobile-only){display:none}.ef-venue{padding-block:45px 20px}.ef-venue__heading{display:block;text-align:center}.ef-venue__heading h2{font-size:1.7rem}.ef-venue__heading p{padding:0;margin-top:4px;font-size:.78rem}.ef-venue__grid{grid-template-columns:1fr;gap:12px}.ef-venue__figure,.ef-venue__figure--room{height:200px;grid-template-columns:30% 70%}.ef-venue__figure--room{grid-template-columns:70% 30%}.ef-venue__figure img{object-position:center}.ef-benefits{padding-block:24px 50px}.ef-benefits__grid{gap:9px}.ef-benefit{padding:16px 9px 20px;min-height:214px}.ef-benefit__icon{width:52px;height:52px;font-size:1.65rem}.ef-benefit h3{font-size:.88rem}.ef-benefit p{font-size:.73rem}.ef-pricing{padding:50px 0}.ef-pricing__grid{grid-template-columns:1fr;gap:10px;max-width:420px;margin-inline:auto}.ef-price p{padding:3px 0}.ef-contact__inner{display:block;text-align:center}.ef-contact p{margin-top:9px}.ef-contact .ef-button{margin-top:22px;max-width:100%}}
@media(max-width:360px){.ef-benefits__grid{grid-template-columns:1fr}.ef-benefit{min-height:0}.ef-benefit h3{min-height:0}.ef-venue__figure,.ef-venue__figure--room{grid-template-columns:35% 65%}.ef-venue__figure--room{grid-template-columns:65% 35%}}

/* Funeral fee page */
.eff-hero{padding:92px 0;color:#fff;background:linear-gradient(90deg,rgba(31,61,49,.82),rgba(31,61,49,.18)),url('funeral-fee-hero-right-lowered.webp') center 42%/cover}.eff-hero h1{font-size:clamp(2.3rem,5vw,4rem);font-weight:400;line-height:1.45;letter-spacing:.08em}.eff-hero>div>p:last-child{margin-top:16px;font-size:1.05rem}.eff-intro{padding:65px 0 35px;text-align:center;background:var(--ef-paper)}.eff-intro h2,.eff-heading h2{font-size:clamp(1.8rem,3.5vw,2.5rem);font-weight:400;letter-spacing:.08em}.eff-intro>div>p:not(.ef-pricing__badge){margin-top:17px}.eff-plans{padding:25px 0 70px;background:var(--ef-paper)}.eff-plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.eff-plan{overflow:hidden;text-align:center;background:#fff;border:1px solid #ddd5c5;border-radius:6px;padding-bottom:24px}.eff-plan>span{display:block;padding:10px;background:var(--ef-green);color:#fff;font-size:1.1rem}.eff-plan__photo{display:block;width:100%;height:220px;object-fit:cover;object-position:center}.eff-plan>p:nth-of-type(1){padding-top:17px}.eff-plan strong{color:#705b31;font-size:clamp(2.6rem,5vw,4rem);font-weight:400;line-height:1.15}.eff-plan strong small{font-size:.45em}.eff-plan b{display:table;margin:7px auto 15px;padding:3px 19px;border-radius:22px;background:var(--ef-gold);color:#fff;font-size:.8rem;font-weight:400}.eff-plan>p:last-child{padding:0 22px;font-size:.83rem;color:#56635b}.eff-included,.eff-extras{padding:75px 0}.eff-included{background:#fff}.eff-extras{background:var(--ef-paper)}.eff-heading{text-align:center;margin-bottom:32px}.eff-heading>p{color:var(--ef-gold);font:600 .72rem Arial,sans-serif;letter-spacing:.2em}.eff-heading>span{display:block;margin-top:10px;color:#667168}.eff-included ul{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;list-style:none;padding:0;margin:0}.eff-included li{padding:14px 10px;text-align:center;background:#f5f3ed;border-bottom:2px solid #c2aa78;font-size:.86rem}.eff-note{text-align:center;margin-top:25px!important;font-size:.78rem;color:#667168}.eff-extra-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-width:860px;margin:auto}.eff-extra-grid div{display:flex;justify-content:space-between;gap:15px;padding:15px 18px;background:#fff;border-bottom:1px solid #d8d1c5;font-size:.88rem}.eff-extra-grid strong{font-weight:500;color:#705b31}.eff-actions{display:grid;gap:9px;text-align:center}.eff-actions>a:last-child{color:#fff;text-decoration:underline;font-size:.8rem}
@media(max-width:720px){.eff-hero{padding:70px 0}.eff-plan-grid{grid-template-columns:1fr;max-width:430px;margin:auto}.eff-included ul{grid-template-columns:repeat(2,1fr)}.eff-extra-grid{grid-template-columns:1fr}.eff-extra-grid div{font-size:.8rem}.eff-intro p br{display:none}}
.eff-gallery{padding:72px 0;background:#fff}.eff-gallery__grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:16px}.eff-gallery figure{margin:0;background:var(--ef-paper)}.eff-gallery img{display:block;width:100%;height:260px;object-fit:cover}.eff-gallery figcaption{padding:12px 15px;text-align:center;font-size:.82rem;color:#526159}@media(max-width:720px){.eff-gallery__grid{grid-template-columns:1fr}.eff-gallery img{height:230px}}
.eff-original-guide{padding:72px 0;background:#fff}.eff-original-guide figure{max-width:820px;margin:0 auto;padding:12px;background:#f4f2eb;box-shadow:0 12px 38px rgba(30,50,40,.1)}.eff-original-guide img{display:block;width:100%;height:auto}.eff-original-guide figcaption{text-align:center;padding:13px 8px 4px;font-size:.82rem;color:#536159}


/* Brighter fee-page hero presentation */
.eff-hero{background-image:linear-gradient(90deg,rgba(31,61,49,.46),rgba(31,61,49,.08)),url('funeral-fee-hero-right-lowered.webp')}


/* Match the brighter hero treatment used across the renewed pages. */
.eff-hero{background-image:linear-gradient(90deg,rgba(31,61,49,.30),rgba(31,61,49,.04)),url('funeral-fee-hero-right-lowered.webp');text-shadow:0 2px 8px rgba(0,0,0,.72)}


/* 2026 mobile readability pass */
@media(max-width:640px){
  .ei-funeral{font-size:16px;line-height:1.82}
  .ef-wrap{width:min(100% - 32px,1120px)}
  .ef-button{width:100%;min-width:0;min-height:50px;padding:12px 18px}
  .ef-hero{min-height:560px}
  .ef-hero__inner{padding-block:58px 46px}
  .ef-hero h1{font-size:clamp(2rem,9vw,2.7rem);letter-spacing:.045em}
  .ef-benefit{min-height:0;padding:18px 11px 21px}
  .ef-benefit h3{min-height:0;font-size:.92rem}
  .ef-benefit p{font-size:.78rem}
  .ef-price strong{font-size:2.6rem}
  .eff-hero{padding:70px 0}
  .eff-hero h1{font-size:clamp(2rem,9vw,2.7rem);letter-spacing:.045em}
  .eff-plan__photo{height:215px}
  .eff-included,.eff-extras,.eff-gallery,.eff-original-guide{padding:56px 0}
  .eff-included ul{grid-template-columns:1fr 1fr}
  .eff-included li{display:grid;place-items:center;min-height:58px;padding:12px 8px;line-height:1.5}
  .eff-extra-grid div{align-items:flex-start;padding:15px 14px;font-size:.84rem}
  .eff-gallery img{height:225px}
}
@media(max-width:380px){.ef-wrap{width:min(100% - 24px,1120px)}.ef-benefits__grid,.eff-included ul{grid-template-columns:1fr}.ef-venue__figure,.ef-venue__figure--room{grid-template-columns:1fr;height:auto}.ef-venue__figure img{height:210px}.ef-venue__figure figcaption{padding:20px}}

/* Brighten the funeral-fee hero to match the other renewed page headers. */
.eff-hero{background-image:linear-gradient(90deg,rgba(255,255,255,.10),rgba(255,255,255,.04)),linear-gradient(90deg,rgba(31,61,49,.16),rgba(31,61,49,0)),url('funeral-fee-hero-right-lowered.webp');background-blend-mode:screen,normal,normal}

/* Keep the altar and funeral setting in frame instead of the ceiling. */
.eff-hero{background-position:center 72%}
@media(max-width:720px){.eff-hero{background-position:center 68%}}

/* Raise the funeral-fee hero framing slightly while retaining the altar. */
.eff-hero{background-position:center 64%}
@media(max-width:720px){.eff-hero{background-position:center 60%}}







.ef-faq{padding:72px 0;background:#f7f4ec;color:#263c35}.ef-faq h2{text-align:center;font-weight:400;letter-spacing:.08em}.ef-faq__kicker{text-align:center;color:#9b7d43;font:.72rem Arial,sans-serif;letter-spacing:.2em}.ef-faq__list{display:grid;gap:12px;max-width:860px;margin:30px auto 0}.ef-faq details{background:#fff;border:1px solid #ddd5c5;padding:0 20px}.ef-faq summary{cursor:pointer;padding:18px 30px 18px 0;font-weight:600;position:relative;list-style:none}.ef-faq summary::-webkit-details-marker{display:none}.ef-faq summary:after{content:'＋';position:absolute;right:0;color:#9b7d43}.ef-faq details[open] summary:after{content:'−'}.ef-faq details p{padding:0 0 18px;margin:0;color:#56635b}
