.service-section{padding-top:clamp(100px,9vw,150px);background:#fff;color:#293b36;overflow:hidden}
.service-section *{box-sizing:border-box}
.service-section__canvas{position:relative;isolation:isolate;padding-bottom:155px}
.service-section__header{position:relative;z-index:1;text-align:center;width:calc(100% - 48px);max-width:1000px;margin:auto}
.service-section__label{display:table;margin:0 auto;padding:6px 34px;border-radius:99px;background:#e5f2e2;color:#43876e;font-family:YBConceptLabel,"Yu Gothic",sans-serif;font-weight:500;font-size:14px;letter-spacing:.075em;line-height:1.5}
.service-section__title{font-family:YorisoiHeadline,serif;font-size:clamp(38px,4vw,60px);font-weight:500;line-height:1.5;letter-spacing:-.025em;margin:24px 0 22px;color:#20352f}
.service-section__title span{position:relative;isolation:isolate;white-space:nowrap}
.service-section__title span::before{content:"";position:absolute;z-index:-1;left:-.04em;right:0;bottom:.05em;height:.24em;background:#edf3e4;border-radius:50% 40% 60% 35%;transform:rotate(-1deg)}
.service-section__title span:last-child::before{background:#fbebdc;transform:rotate(1deg)}
.service-section__lead{max-width:750px;margin:0 auto;font-family:YorisoiBody,sans-serif;font-size:17px;line-height:1.9;color:#3a3a3a}
.service-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;width:calc(100% - 80px);max-width:1360px;margin:40px auto 0}
.service-card{--service-accent:#eda58b;--service-tint:#fff8f4;min-width:0;background:var(--service-tint);border-radius:56px 42px 50px 46px / 55px 60px 65px 48px;overflow:hidden;display:flex;flex-direction:column}
.service-card--housework{--service-accent:#87b58a;--service-tint:#f6faf2;border-radius:48px 60px 44px 56px}
.service-card--consultation{--service-accent:#8abbe7;--service-tint:#f3f9fd;border-radius:60px 45px 55px 42px}
.service-card--community{--service-accent:#e1bd68;--service-tint:#fffbf0;border-radius:50px 60px 42px 52px}
.service-card__image{width:100%;aspect-ratio:1.4;flex:none;background-image:url('assets/service-artwork.webp');background-size:438.857% 409.6%;background-repeat:no-repeat;background-position:3.71% 35.53%}
.service-card--housework .service-card__image{background-position:34.7386% 35.53%}
.service-card--consultation .service-card__image{background-position:65.7673% 35.53%}
.service-card--community .service-card__image{background-position:96.796% 35.53%}
.service-card__image{clip-path:polygon(0 0,100% 0,100% 94%,78% 94%,78% 100%,0 100%)}
.service-card__body{padding:6px 24px 24px;display:flex;flex-direction:column;flex:1}
.service-card__title{font-family:YorisoiHeadline,serif;font-size:clamp(24px,1.9vw,29px);font-weight:500;line-height:1.45;letter-spacing:-.04em;margin:0 0 14px;white-space:nowrap}
.service-card__title::after{content:"";display:block;width:30px;height:2px;border-radius:50%;background:var(--service-accent);margin-top:5px}
.service-card__description{font-family:YorisoiBody,sans-serif;font-size:16px;line-height:1.8;color:#424242;margin:0 0 18px;overflow-wrap:anywhere}
.service-card__list{margin:auto 0 0;padding:14px 12px 14px 28px;border-radius:26px;background:color-mix(in srgb,var(--service-accent) 7%,transparent);font-family:YorisoiBody,sans-serif;color:#424242;font-size:15px;line-height:1.85}
.service-card__list li{padding-left:2px}.service-card__list li::marker{color:var(--service-accent);font-size:1.1em}
.service-section__message{position:relative;z-index:1;font-family:YorisoiHandFull,cursive;font-size:26px;line-height:1.8;letter-spacing:.12em;text-align:center;margin:36px auto 0}
.service-section__message::after,.service-section__note::after{content:"";display:block;width:100%;height:26px;margin-top:8px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 240 32' fill='none'%3E%3Cpath d='M2 24C42 5 65 33 108 19S182 0 238 9' stroke='%238BB389' stroke-width='1.2' stroke-linecap='round'/%3E%3C/svg%3E") center/100% 100% no-repeat}
.service-section__message::after{width:320px;margin-inline:auto}
.service-section__message::after,.service-section__note--left::after,.service-section__note--right::after{display:none}
.service-section__note{position:absolute;z-index:1;font-family:YorisoiHandFull,cursive;font-size:16px;line-height:1.9;letter-spacing:.1em;color:#756f77;margin:0;transform:rotate(-9deg)}
.service-section__note--left{left:5%;top:30px}.service-section__note--right{right:3%;top:38px}.service-section__note--bottom{right:5%;bottom:105px;font-size:15px}
.service-section__decoration{position:absolute;z-index:0;pointer-events:none;top:0;width:390px;height:275px;background:url('assets/service-artwork.webp') no-repeat;background-size:1536px 1024px;mask-image:linear-gradient(to bottom,transparent,#000 24px,#000 80%,transparent)}
.service-section__decoration--left{left:0;background-position:0 0}.service-section__decoration--right{right:0;width:390px;background-position:right top}
.service-section__landscape{position:absolute;z-index:0;bottom:0;left:0;width:100%;height:145px;background:url('assets/service-artwork.webp') center bottom/100% auto no-repeat;pointer-events:none;mask-image:linear-gradient(to bottom,transparent,#000 40%)}
@media(max-width:1279px){.service-section__note--left,.service-section__note--right{display:none}.service-section__decoration{display:none}.service-card__body{padding-inline:20px}.service-card__title{font-size:25px}.service-card__list{font-size:14px;padding-left:24px}}
@media(max-width:1279px){.service-section{padding-top:100px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:800px;gap:28px;width:calc(100% - 64px)}.service-card__body{padding:8px 26px 28px}.service-card__title{font-size:28px}.service-card__list{font-size:16px}.service-section__title{font-size:clamp(34px,4.7vw,48px)}.service-section__note,.service-section__decoration{display:none}.service-section__lead{max-width:650px;font-size:16px}.service-section__landscape{background-size:auto 680px;height:125px}}
@media(max-width:600px){.service-section{padding-top:72px}.service-section__canvas{padding-bottom:105px}.service-section__label{font-size:12px;padding:6px 25px}.service-section__title{font-size:clamp(27px,7vw,36px);line-height:1.6;margin:24px 0 22px}.service-section__title span{display:inline-block}.service-section__lead{font-size:15px;line-height:1.9;text-wrap:pretty}.service-grid{grid-template-columns:minmax(0,1fr);width:calc(100% - 48px);max-width:400px;margin-top:30px;gap:30px}.service-card__body{padding:6px 24px 26px}.service-card__title{font-size:27px}.service-card__description{font-size:16px}.service-card__list{font-size:15px}.service-section__message{font-size:21px;letter-spacing:.08em;margin-top:32px}.service-section__message::after{width:240px}.service-section__landscape{height:90px;background-size:auto 460px}}




/* One gentle entrance per element; static content remains visible without JS. */
@media(prefers-reduced-motion:no-preference){
  .service-motion{opacity:0;translate:0 16px;transition:opacity .8s ease,translate .8s cubic-bezier(.22,.61,.36,1);transition-delay:var(--service-delay,0ms)}
  .service-motion--visible{opacity:1;translate:0 0}
  .service-section__title{--service-delay:80ms}
  .service-section__lead{--service-delay:160ms}
  .service-card:nth-child(2){--service-delay:100ms}
  .service-card:nth-child(3){--service-delay:200ms}
  .service-card:nth-child(4){--service-delay:300ms}
}
@media(max-width:1279px){.service-card:nth-child(3){--service-delay:0ms}.service-card:nth-child(4){--service-delay:100ms}}
@media(max-width:600px){.service-card:nth-child(n){--service-delay:0ms}}
@media(prefers-reduced-motion:reduce){.service-motion{opacity:1;translate:none;transition:none}}
