:root{--navy:#183e50;--blue:#246780;--teal:#4e7e88;--ink:#29444e;--sub:#546b75;--sky:#e7f1f3;--pale:#f3f7f7;--cream:#fcfbf7;--line:#d7e3e5;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--cream);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.95}h1,h2,h3,p{overflow-wrap:anywhere}h1,h2,h3{color:var(--navy);line-height:1.6;margin:0;font-weight:700}h1,h2{letter-spacing:-.035em}p{margin:0 0 1.2em}a{color:inherit;text-underline-offset:4px}img{max-width:100%;display:block;height:auto}figure{margin:0}button{font:inherit;cursor:pointer}a,button{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid #af793d;outline-offset:5px}.container{width:min(1120px,calc(100% - 48px));margin-inline:auto}.narrow{max-width:840px}.section{padding:96px 0}.section-head{max-width:790px;margin:0 auto 44px;text-align:center}.section-head p{color:var(--sub);max-width:680px;margin:20px auto 0}.kicker{display:block;color:var(--teal);font-size:12px;font-weight:700;letter-spacing:.12em;margin-bottom:16px}.section h2{font-size:clamp(28px,3.2vw,40px);margin-bottom:24px}.section h3{font-size:21px;margin-bottom:13px}.micro{font-size:12px;line-height:1.8;color:var(--sub)}.em{color:var(--blue)}.skip{position:fixed;top:-120px;left:20px;z-index:100;background:white;padding:12px}.skip:focus{top:10px}.header{height:90px;background:var(--cream)}.header-inner{height:100%;display:flex;justify-content:space-between;align-items:center}.logo{font-family:Georgia,"Times New Roman",serif;font-size:34px;font-weight:bold;line-height:1;text-decoration:none;letter-spacing:-1.7px;color:var(--navy)}.logo small{display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.2em;margin-top:12px;color:var(--teal)}.header-tag{font-size:12px;line-height:1.7;color:var(--sub)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:17px 26px;border-radius:9px;background:var(--blue);border:1px solid var(--blue);color:#fff;font-weight:700;font-size:15px;line-height:1.65;text-decoration:none;min-height:68px;max-width:100%;box-shadow:0 8px 18px #183e5010;transition:background .2s,transform .2s}.btn:hover{background:#174e65;transform:translateY(-2px)}.btn>span:last-child:not(:first-child){font-size:23px;font-weight:400}.cta-channel{display:block;font-size:11px;font-weight:400;opacity:.94;margin-top:3px}.btn.white{background:#fff;border-color:#fff;color:var(--navy)}.btn.white:hover{background:#e7f1f3}.hero{background:linear-gradient(110deg,#f1f6f5,#e8f1f2);padding:56px 0 0;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center}.hero h1{font-size:clamp(35px,3.6vw,51px);line-height:1.6;margin-bottom:22px}.hero .lead{font-size:17px;line-height:1.9;margin-bottom:14px}.hero-copy>p:not(.lead):not(.micro){font-size:15px}.hero .btn{margin-top:10px}.hero-note{max-width:410px;margin:12px 0 0}.hero-trust{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:11px;margin-top:17px;color:var(--sub)}.hero-trust span:before{content:'✓';color:var(--blue);margin-right:6px}.hero-person{position:relative;align-self:end;padding-top:40px}.hero-person img{width:100%;max-height:530px;object-fit:contain;object-position:bottom;filter:saturate(.85)}.hero-person figcaption{position:relative;background:var(--cream);padding:18px 23px;margin:-12px 0 0 26px;border-left:3px solid #8bb0b9;box-shadow:0 6px 24px #183e5008}.hero-person figcaption>span{display:block;font-size:11px;color:var(--sub)}.hero-person figcaption strong{font-size:22px;letter-spacing:.1em;display:block}.hero-person figcaption small{font-size:10px;font-weight:400;letter-spacing:0;margin-left:8px}.person-note{position:absolute;right:0;top:0;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;color:var(--navy);font-size:20px;line-height:1.8;background:#fcfbf7ec;border-radius:8px;padding:18px 22px}.hero-foot{display:flex;justify-content:space-between;gap:20px;align-items:center;width:min(1120px,calc(100% - 48px));margin:42px auto 0;padding:17px 0;border-top:1px solid #b6cdd1;color:var(--sub);font-size:11px;letter-spacing:.1em}.hero-foot a{font-size:9px;text-decoration:none}.worry-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.worry{padding:25px 24px;border:1px solid var(--line);border-radius:12px;background:#fff}.worry-mark{font-family:Georgia,serif;font-size:24px;color:#5e8c97;display:block;margin-bottom:10px}.worry p{font-size:16px;margin:0;font-weight:600}.center-note{text-align:center;margin:32px auto 0;max-width:800px}.center-note strong{display:block;margin-top:9px;font-weight:600}.soft{background:var(--pale)}.split{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.quote{padding:45px;background:var(--cream);border-left:3px solid #88acb4}.quote>p{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:29px;line-height:1.85;color:var(--navy);margin:25px 0}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.step{padding:30px 26px;border-top:3px solid #7ea5b0;background:#f0f5f5;border-radius:0 0 12px 12px}.step:nth-child(2){background:#f0f2ef;border-color:#98a991}.step:nth-child(3){background:#f6f1e9;border-color:#b6a183}.index{font-size:12px;font-weight:700;color:var(--teal);letter-spacing:.12em;display:block;margin-bottom:20px}.step p{font-size:15px;color:var(--sub)}.step-question{display:block;border-top:1px solid #173e5020;padding-top:15px;font-size:13px;color:var(--navy)}.method-note{display:flex;justify-content:center;flex-wrap:wrap;gap:16px;align-items:center;margin:35px auto 0;color:var(--navy);font-size:14px}.method-note b{font-weight:400;color:var(--teal)}.cta-block{text-align:center;margin-top:38px}.cta-block p{margin-top:12px}.care-photo img{width:100%;max-height:490px;object-fit:contain}.care-photo figcaption{font-size:11px;color:var(--sub);margin-top:16px;line-height:1.6}.scope{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:28px 32px;margin-top:48px;background:#fff;border:1px solid var(--line);border-radius:12px}.scope h3{font-size:17px}.scope p{font-size:14px;color:var(--sub);margin:0}.profile{background:var(--navy);color:#e6f1f3}.profile h2,.profile h3,.profile strong{color:#fff}.profile .kicker{color:#a7cdd5}.profile p{color:#deeaee}.profile .micro{color:#c0d3d9}.signature{margin-top:27px;font-size:12px}.signature strong{font-size:27px;margin-left:14px;letter-spacing:.15em}.signature span{display:block;margin-top:8px;font-size:11px;color:#bdd3d9}.profile-card{border:1px solid #ffffff38;border-radius:16px;padding:34px;background:#ffffff06}.stats{display:grid;grid-template-columns:1fr 1.3fr;gap:14px;border-block:1px solid #ffffff30;padding:20px 0;margin:20px 0}.stats span{display:block;font-size:11px;color:#d1e3e8}.stats strong{font:36px Georgia,serif;display:block;margin-top:5px}.stats small{font-family:sans-serif;font-size:12px;margin-left:5px}.credentials{padding:0;list-style:none;font-size:14px;line-height:2.1;margin:0 0 20px}.credentials li:before{content:'—';margin-right:10px;color:#8fb6c1}.note-area{margin-top:55px;padding-top:32px;border-top:1px solid #ffffff30}.note-heading p{font-size:13px}.note-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.note-grid a{display:block;text-decoration:none;padding:23px;background:#ffffff08;border:1px solid #ffffff30;border-radius:10px}.note-grid a:hover{background:#ffffff12}.note-grid small{font-size:10px;color:#abd0d9;letter-spacing:.1em;display:block;margin-bottom:13px}.note-grid strong{display:block;font-size:16px;line-height:1.8}.note-grid a>span{display:block;font-size:11px;margin-top:16px;color:#d2e4e9}.consult{background:#e6f0f2}.consult-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:start}.consult-meta{display:flex;gap:9px;flex-wrap:wrap;margin:24px 0 12px}.chip{font-size:11px;border:1px solid #a7c1c9;padding:5px 10px;border-radius:5px}.benefit{background:#fff;padding:35px;border-radius:18px;box-shadow:0 12px 40px #183e5008}.free{display:inline-block;font-size:12px;letter-spacing:.04em;color:var(--blue);border-bottom:1px solid var(--line);padding-bottom:9px;margin-bottom:18px}.benefit h3{font-size:25px}.consult-list{list-style:none;counter-reset:benefit;padding:0;margin:23px 0 28px}.consult-list li{counter-increment:benefit;position:relative;padding-left:39px;margin-bottom:20px}.consult-list li:before{content:'0' counter(benefit);position:absolute;left:0;top:1px;font:20px Georgia,serif;color:var(--teal)}.consult-list strong{display:block;font-size:16px}.consult-list span{display:block;font-size:13px;color:var(--sub)}.benefit .btn{width:100%;padding-inline:12px;gap:10px}.benefit .micro{margin:15px 0 0}.how{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.how-item{border-top:1px solid var(--line);padding-top:25px}.circle{width:43px;height:43px;border-radius:50%;background:var(--sky);color:var(--blue);display:grid;place-items:center;font:22px Georgia,serif;margin-bottom:18px}.how-item h3{font-size:18px}.how-item p{font-size:14px;color:var(--sub)}.faq details{border-bottom:1px solid #cfdee2;padding:20px 0}.faq summary{cursor:pointer;list-style:none;padding:5px 35px 5px 0;position:relative;min-height:44px;font-weight:600;line-height:1.8}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:'+';position:absolute;right:4px;top:3px;color:var(--blue);font-size:25px;font-weight:400}.faq details[open] summary:after{content:'−'}.faq details p{margin:13px 0 0;font-size:15px;color:var(--sub)}.end{padding:90px 0;text-align:center;background:#e8efec}.end .kicker{color:var(--teal)}.end h2{font-size:clamp(29px,3.6vw,43px);margin-bottom:26px}.end p{color:var(--sub)}.end .btn{background:var(--blue);color:#fff;border-color:var(--blue);margin:15px 0}.end .btn:hover{background:#174e65}footer{padding:40px 0 22px;font-size:11px;line-height:1.9;background:var(--cream);color:var(--sub)}.footer-top{display:grid;grid-template-columns:1fr 1.8fr 1fr;gap:30px;align-items:start}.footer-top .logo{font-size:28px}.footer-top p{margin:0}.footer-top nav a{display:block;margin-bottom:10px}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;margin-top:26px;display:flex;gap:20px;justify-content:space-between}.mobile-cta{display:none}.booking-notice{padding:15px;border:1px solid var(--line);margin-top:20px}.booking-notice[hidden]{display:none}dialog{border:1px solid var(--line);border-radius:16px;padding:28px;max-width:440px;width:calc(100% - 40px);color:var(--ink)}dialog::backdrop{background:#183e5070}dialog h2{font-size:24px;margin-bottom:16px}.reveal.visible{animation:arrive .6s ease both}@keyframes arrive{from{opacity:.35;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:800px){body{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.container{width:calc(100% - 40px)}.header{height:76px}.logo{font-size:29px}.header-tag{font-size:10px}.hero{padding-top:30px}.hero-grid{grid-template-columns:1fr;gap:30px}.hero h1{font-size:clamp(29px,8.3vw,45px);line-height:1.6;margin-bottom:19px}.hero .kicker{font-size:10px}.hero .lead{font-size:15px;line-height:1.9}.hero-copy>p:not(.lead):not(.micro){font-size:14px}.hero .btn{width:100%}.btn{font-size:13px;padding:14px 10px;gap:12px;min-height:66px}.hero-note{font-size:11px}.hero-trust{gap:8px 15px;font-size:10px}.hero-person{width:100%;max-width:390px;justify-self:center;padding-top:12px}.hero-person img{width:72%;margin-left:auto;max-height:350px}.hero-person figcaption{margin:-4px 0 0 20px;padding:12px 18px}.hero-person figcaption strong{font-size:20px}.hero-person figcaption small{font-size:9px}.person-note{left:0;right:auto;top:35px;font-size:18px;padding:18px 14px}.hero-foot{width:calc(100% - 40px);margin-top:28px;font-size:9px;letter-spacing:0}.hero-foot a{white-space:nowrap}.section{padding:62px 0}.section h2{font-size:27px;line-height:1.7;margin-bottom:19px}.section-head{margin-bottom:28px}.section-head p{font-size:14px;margin-top:14px}.kicker{font-size:10px;letter-spacing:.09em}.worry-grid{grid-template-columns:1fr;gap:11px}.worry{display:flex;align-items:center;gap:18px;padding:18px}.worry-mark{font-size:22px;margin:0;flex-shrink:0}.worry p{font-size:14px;font-weight:500}.center-note{font-size:14px;line-height:2;margin-top:26px}.center-note.micro{font-size:11px}.split,.consult-layout{grid-template-columns:1fr;gap:30px}.split p{font-size:15px}.quote{padding:28px}.quote>p{font-size:26px}.three{grid-template-columns:1fr;gap:18px}.step{padding:24px}.index{margin-bottom:14px}.method-note{gap:8px;font-size:12px}.scope{grid-template-columns:1fr;gap:24px;padding:24px;margin-top:30px}.scope h3{font-size:16px}.scope p{font-size:13px}.care-photo{max-width:380px;margin:auto}.care-photo img{max-height:330px}.care-photo figcaption{font-size:10px}.profile-card{padding:25px 22px}.profile-card h3{font-size:19px}.stats strong{font-size:32px}.stats small{font-size:10px}.stats span{font-size:10px}.note-grid{grid-template-columns:1fr;gap:13px}.note-grid strong{font-size:14px}.note-area{margin-top:36px}.note-heading p{font-size:12px}.benefit{padding:26px 20px}.benefit h3{font-size:23px}.consult-list strong{font-size:15px}.consult-list span{font-size:13px}.how{grid-template-columns:1fr;gap:24px}.how-item{position:relative;padding:22px 0 0 60px}.how-item .circle{position:absolute;left:0;top:23px}.how-item h3{font-size:17px}.how-item p{margin-bottom:0}.faq summary{font-size:14px}.faq details p{font-size:14px}.end{padding:65px 0}.end h2{font-size:27px}.end p{font-size:14px}.end .micro{font-size:11px}.footer-top{grid-template-columns:1fr;gap:25px}.footer-top nav{display:flex;gap:22px}.footer-bottom{display:block;font-size:10px}.footer-bottom span{display:block;margin-bottom:8px}.mobile-cta{display:block;position:fixed;bottom:0;left:0;right:0;background:#fcfbf7f5;border-top:1px solid var(--line);z-index:40;padding:9px 16px calc(9px + env(safe-area-inset-bottom));box-shadow:0 -5px 20px #183e5008}.mobile-cta .btn{width:100%;min-height:62px;padding:9px 10px}.cta-channel{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal.visible{animation:none}.btn{transition:none}.btn:hover{transform:none}}

/* 掲載許可確認済みの実店舗・評価写真 */
.care-photo img{width:100%;height:auto;max-height:none;object-fit:contain;border-radius:14px}
.consultation-room{margin-top:28px}.consultation-room img{width:100%;height:auto;border-radius:12px}
.consultation-room figcaption{font-size:12px;line-height:1.8;color:var(--sub);margin-top:12px}
@media(max-width:800px){.care-photo{max-width:none}.care-photo img{max-height:none}.consultation-room{margin-top:22px}.consultation-room figcaption{font-size:11px}}

.teaching-record{margin:24px 0;padding:20px 0;border-top:1px solid currentColor;border-bottom:1px solid currentColor}.teaching-record h4{font-size:17px;margin:0 0 12px}.teaching-record p{font-size:13px;margin:0 0 8px}.teaching-counts{display:flex;flex-wrap:wrap;gap:8px 24px}.teaching-counts strong{font-size:13px;white-space:nowrap}.teaching-counts span{font-size:30px;margin:0 4px;font-variant-numeric:tabular-nums}
