/* /recruit/spotwork/ — スポットワーク（HOMEのシッター） */
.hsw{--hsw-primary:var(--c-primary,#20a08c);--hsw-accent:var(--c-accent,#f06a70);--hsw-text:var(--c-text,#333);--hsw-mint:#eaf7f4;--hsw-line:#d5ebe6;color:var(--hsw-text);font-family:var(--f-sansSerif,"Zen Kaku Gothic New","Noto Sans JP",sans-serif);letter-spacing:.06em;line-height:1.9;text-align:left}
.hsw *,.hsw *:before,.hsw *:after{box-sizing:border-box}
.hsw p{margin:0}
.hsw img{max-width:100%;height:auto;display:block}
.hsw .hsw-sp{display:none}
.hsw-in{width:min(100% - 40px,1080px);margin:0 auto}
.hsw-narrow{width:min(100% - 40px,820px)}
.hsw-sec{padding:clamp(64px,9vw,112px) 0}
.hsw-tint{background:var(--hsw-mint)}
.hsw-head{text-align:center;margin-bottom:clamp(32px,5vw,52px)}
.hsw-en{font-family:var(--f-display,"Montserrat",sans-serif);font-size:13px;font-weight:600;letter-spacing:.2em;color:var(--hsw-primary)}
.hsw-title{font-size:clamp(22px,2.6vw,32px);font-weight:500;letter-spacing:.12em;line-height:1.65;margin:10px 0 0;position:relative;display:inline-block;padding-bottom:16px}
.hsw-title:after{content:"";position:absolute;left:50%;bottom:0;width:120px;height:4px;transform:translateX(-50%);border-radius:4px;background:var(--hsw-primary);opacity:.85}
.hsw-title--left{display:block;text-align:left}
.hsw-title--left:after{left:0;transform:none}
.hsw-lead{max-width:720px;margin:22px auto 0!important;font-size:15px}
/* intro */
.hsw-intro{padding:clamp(56px,8vw,96px) 0;background:#fff}
.hsw-intro-in{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,64px);align-items:center}
.hsw-badge{display:inline-block;padding:6px 16px;border-radius:999px;background:var(--hsw-primary);color:#fff;font-size:13px;font-weight:700;letter-spacing:.12em}
.hsw-intro-title{font-size:clamp(26px,3.2vw,40px);font-weight:500;letter-spacing:.1em;line-height:1.7;margin:18px 0 18px}
.hsw-intro-lead{font-size:15px}
.hsw-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:22px 0 0;padding:0}
.hsw-chips li{padding:5px 14px;border:1px solid var(--hsw-primary);border-radius:999px;background:#fff;color:var(--hsw-primary);font-size:13px;font-weight:700}
.hsw-intro-photo{position:relative;margin:0}
.hsw-intro-photo img{width:100%;aspect-ratio:1.45;object-fit:cover;border-radius:24px}
.hsw-intro-photo figcaption{position:absolute;left:-18px;bottom:-26px;max-width:min(340px,92%);padding:14px 18px;border-radius:18px 18px 18px 4px;background:#fff;box-shadow:0 12px 28px rgba(32,160,140,.16);font-size:13px;line-height:1.75}
.hsw-intro-photo figcaption b{display:block;color:var(--hsw-accent);font-size:12px;letter-spacing:.12em;margin-bottom:2px}
/* buttons */
.hsw-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.hsw-actions--center{justify-content:center}
.hsw-btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-width:220px;padding:16px 26px;font-size:15px;font-weight:700;letter-spacing:.1em;text-decoration:none;transition:opacity .2s,transform .2s}
.hsw-btn:after{content:"";width:8px;height:8px;border-top:2px solid currentColor;border-right:2px solid currentColor;transform:rotate(45deg)}
.hsw-btn:hover{opacity:.85;transform:translateY(-1px)}
.hsw-btn--accent{background:var(--hsw-accent);color:#fff}
.hsw-btn--primary{background:var(--hsw-primary);color:#fff}
.hsw-btn--line{background:#fff;color:var(--hsw-primary);border:1px solid var(--hsw-primary)}
/* message */
.hsw-message{display:grid;gap:18px;font-size:16px;line-height:2.1;padding:clamp(24px,4vw,44px);border-radius:20px;background:var(--hsw-mint)}
/* compare */
.hsw-compare{display:grid;grid-template-columns:minmax(0,1fr) 56px minmax(0,1fr)}
.hsw-col{background:#fff;border-radius:18px;padding:28px}
.hsw-col h3{font-size:19px;font-weight:700;margin:10px 0 14px;letter-spacing:.08em}
.hsw-col ul{list-style:none;margin:0;padding:0}
.hsw-col li{position:relative;padding:11px 0 11px 24px;border-top:1px dashed var(--hsw-line);font-size:15px;line-height:1.8}
.hsw-col li:before{content:"";position:absolute;left:2px;top:21px;width:9px;height:9px;border-radius:50%;background:#c5ccc9}
.hsw-col:not(.hsw-col--offer){color:#6b716e}
.hsw-col--offer{border:2px solid var(--hsw-primary);box-shadow:0 14px 30px rgba(32,160,140,.14)}
.hsw-col--offer li:before{background:var(--hsw-primary)}
.hsw-tag{display:inline-block;padding:3px 10px;border-radius:4px;background:#eef0ef;font-size:12px;font-weight:700}
.hsw-col--offer .hsw-tag{background:var(--hsw-primary);color:#fff}
.hsw-arrow{position:relative}
.hsw-arrow:before{content:"";position:absolute;top:50%;left:50%;width:14px;height:14px;border-top:3px solid var(--hsw-primary);border-right:3px solid var(--hsw-primary);transform:translate(-70%,-50%) rotate(45deg)}
.hsw-big{margin-top:44px!important;text-align:center;font-size:clamp(22px,2.6vw,30px);font-weight:700;letter-spacing:.12em;color:var(--hsw-primary)}
/* steps */
.hsw-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;list-style:none;margin:0;padding:0;counter-reset:none}
.hsw-steps li{position:relative;background:var(--hsw-mint);border-radius:16px;padding:22px 18px}
.hsw-step-no{display:block;font-family:var(--f-display,"Montserrat",sans-serif);font-size:26px;font-weight:700;color:var(--hsw-primary);line-height:1}
.hsw-steps h3{font-size:15px;font-weight:700;margin:12px 0 8px;letter-spacing:.02em;line-height:1.6}
.hsw-steps p{font-size:13.5px;line-height:1.85}
/* band */
.hsw-band{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(24px,5vw,56px);align-items:center;background:#fff;border-radius:24px;padding:clamp(22px,4vw,44px)}
.hsw-band-photo{margin:0}
.hsw-band-photo img{border-radius:18px;aspect-ratio:1.35;object-fit:cover;width:100%}
.hsw-band .hsw-title{margin-bottom:20px;font-size:clamp(20px,2.1vw,26px);letter-spacing:.08em}
.hsw-band p+p{margin-top:12px}
.hsw-band .hsw-en{color:var(--hsw-accent)}
/* for you */
.hsw-foryou{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.hsw-foryou>div{border:2px solid var(--hsw-mint);border-radius:18px;padding:26px 28px}
.hsw-foryou h3{font-size:18px;font-weight:700;color:var(--hsw-primary);margin:0 0 12px;letter-spacing:.08em}
.hsw-check{list-style:none;margin:0;padding:0}
.hsw-check li{position:relative;padding:8px 0 8px 32px;font-size:15px;line-height:1.8}
.hsw-check li:before{content:"";position:absolute;left:0;top:12px;width:20px;height:20px;border-radius:50%;background:var(--hsw-primary)}
.hsw-check li:after{content:"";position:absolute;left:6px;top:17px;width:8px;height:5px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
/* table */
.hsw-table{margin:0;background:#fff;border-radius:18px;padding:8px clamp(18px,3vw,36px)}
.hsw-table>div{display:grid;grid-template-columns:160px 1fr;gap:16px;padding:20px 0;border-bottom:1px dashed var(--hsw-line)}
.hsw-table>div:last-child{border-bottom:0}
.hsw-table dt{font-weight:700;color:var(--hsw-primary)}
.hsw-table dd{margin:0;font-size:15px}
.hsw-link{color:var(--hsw-primary);text-decoration:underline}
/* cards */
.hsw-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.hsw-cards>div{background:var(--hsw-mint);border-radius:18px;padding:26px}
.hsw-cards h3{font-size:17px;font-weight:700;margin:0 0 10px;letter-spacing:.06em}
.hsw-cards p{font-size:14px}
/* faq */
.hsw-faq details{background:#fff;border-radius:14px;margin-bottom:12px}
.hsw-faq summary{cursor:pointer;list-style:none;position:relative;padding:18px 52px 18px 54px;font-weight:700;font-size:15px}
.hsw-faq summary::-webkit-details-marker{display:none}
.hsw-faq summary:before{content:"Q";position:absolute;left:20px;top:16px;font-family:var(--f-display,"Montserrat",sans-serif);font-size:18px;color:var(--hsw-primary)}
.hsw-faq summary:after{content:"";position:absolute;right:22px;top:50%;width:9px;height:9px;border-right:2px solid var(--hsw-primary);border-bottom:2px solid var(--hsw-primary);transform:translateY(-70%) rotate(45deg);transition:transform .2s}
.hsw-faq details[open] summary:after{transform:translateY(-30%) rotate(-135deg)}
.hsw-faq details p{padding:0 22px 20px 54px;font-size:14.5px}
.hsw-faq a{color:var(--hsw-primary);text-decoration:underline}
/* cta */
.hsw-cta{padding:clamp(64px,9vw,104px) 0;background:var(--hsw-primary);color:#fff;text-align:center}
.hsw-cta-title{font-size:clamp(24px,3vw,34px);font-weight:700;letter-spacing:.12em;line-height:1.6}
.hsw-cta-lead{margin-top:14px!important;font-size:15px;opacity:.95}
.hsw-cta .hsw-btn--primary{background:#fff;color:var(--hsw-primary)}
@media (max-width:1000px){.hsw-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.hsw-steps li:last-child{grid-column:1/-1}}
@media (max-width:820px){
 .hsw .hsw-pc{display:none}.hsw .hsw-sp{display:inline}
 .hsw-intro-in{grid-template-columns:1fr}
 .hsw-intro-photo{margin-bottom:24px}
 .hsw-intro-photo figcaption{left:10px;bottom:-24px;font-size:12px}
 .hsw-compare{grid-template-columns:1fr;grid-template-rows:auto 44px auto}
 .hsw-arrow:before{transform:translate(-50%,-80%) rotate(135deg)}
 .hsw-col{padding:22px}
 .hsw-band{grid-template-columns:1fr}
 .hsw-foryou{grid-template-columns:1fr}
 .hsw-cards{grid-template-columns:1fr}
 .hsw-table>div{grid-template-columns:1fr;gap:4px}
}
@media (max-width:600px){
 .hsw-steps{grid-template-columns:1fr}
 .hsw-btn{width:100%;min-width:0}
 .hsw-message{font-size:15px}
}
