:root{--ink:#17292b;--muted:#52676a;--line:#cededf;--teal:#0f6f6d;--green:#00833d;--paper:#fff;--soft:#f4f8f7}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:var(--paper);font-family:"Hiragino Sans","Yu Gothic",Meiryo,system-ui,sans-serif;font-size:17px;line-height:1.85}a{color:var(--teal);text-underline-offset:4px}button{font:inherit}a,button,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #d18b31;outline-offset:4px}img{display:block;max-width:100%;height:auto}p{margin:0 0 20px}h1,h2,h3{line-height:1.5;letter-spacing:.01em;overflow-wrap:anywhere}h1{font-size:clamp(28px,3.3vw,44px);margin:10px 0 26px;max-width:900px}h2{font-size:clamp(23px,2.5vw,30px);margin:0 0 22px}h3{font-size:21px;margin:28px 0 15px}.skip{position:absolute;top:-80px;background:white;z-index:99}.skip:focus{top:0}.header{max-width:1280px;margin:auto;padding:18px 28px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line)}.brand{color:var(--ink);font-size:17px;line-height:1.5;font-weight:850;text-decoration:none;flex-shrink:0}.brand span{white-space:nowrap}.brand small{display:block;font-size:13px;font-weight:500;color:var(--muted)}nav{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:4px}nav a{display:inline-flex;align-items:center;min-height:44px;padding:6px 10px;font-size:14px;font-weight:700;text-decoration:none}nav a:hover,nav a[aria-current]{background:var(--soft);border-radius:6px}.menu-toggle{display:none}.hero{max-width:960px;margin:auto;padding:44px 30px 30px}.home-hero{max-width:1060px;padding-top:48px;padding-bottom:42px;background:radial-gradient(ellipse at 95% 30%,#eaf4ee,transparent 65%)}.home-hero h1{font-size:clamp(29px,3.6vw,46px)}.home-hero h1 span{display:inline-block}.eyebrow,.breadcrumb{font-size:14px;color:var(--muted)}.hero-lead{font-size:21px;line-height:1.9;font-weight:600}.free{font-weight:800;color:#007238}.cta-actions{display:grid;gap:10px;max-width:540px;margin:24px 0}.line-cta,.phone-cta{display:grid;min-width:0;align-content:center;justify-items:center;padding:12px 18px;border-radius:8px;color:#fff;line-height:1.32;text-align:center;text-decoration:none}.line-cta{min-height:68px;border:1px solid #006f32;background:#00833d;box-shadow:0 12px 24px rgba(6,199,85,.16)}.phone-cta{min-height:58px;border:1px solid #0a5452;background:var(--teal)}.line-cta span{font-size:17px;font-weight:900}.phone-cta span{font-size:15px;font-weight:850}.phone-cta small{font-size:12px;margin-top:4px}.line-cta:hover{background:#006f32}.phone-cta:hover{background:#0a5452}.article{max-width:960px;margin:auto;padding:0 30px}.content-section{border-top:1px solid var(--line);padding:32px 0}.content-section:empty{display:none}.content-section>h2{border-left:4px solid #8fb6b7;padding-left:15px}.content-section>p:last-child{margin-bottom:0}.page-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.page-grid a{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:22px 18px;border:1px solid var(--line);background:var(--soft);border-radius:9px;font-weight:700;text-decoration:none}.person{display:grid;grid-template-columns:112px 1fr;gap:24px;align-items:center;margin:12px 0 38px}.person img{width:112px;height:112px;border-radius:50%;object-fit:cover;object-position:center top;border:1px solid #8fb6b7}.person p{font-size:16px;margin:8px 0 0}.before-after,.volume-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}.before-after figure,.volume-grid figure{margin:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--soft)}.before-after img{width:100%;max-height:460px;object-fit:contain;background:#e8efee}.volume-grid img{width:100%;height:320px;object-fit:contain;background:#edf1ec}figcaption{padding:12px 16px;font-size:15px}figcaption strong,figcaption span{display:block}figcaption strong{font-size:20px}ul,ol{padding-left:24px}li{margin:10px 0}table{width:100%;border-collapse:collapse;margin:22px 0;font-size:16px}th,td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:15px 12px}th{background:var(--soft)}td:first-child{min-width:100px;font-weight:700}details{border:1px solid var(--line);border-radius:8px;margin:12px 0;background:var(--paper)}summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 20px;min-height:56px;font-weight:700;cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}summary:after{content:'＋';color:var(--teal);font-size:23px;flex-shrink:0}details[open] summary:after{content:'−'}.answer{padding:0 20px 15px}.answer p:last-child{margin:0}.final{max-width:900px;margin:28px auto 50px;padding:38px;background:var(--soft);border-radius:12px;border:1px solid var(--line)}.final h2 span{display:inline-block}footer{background:#eff5f3;border-top:1px solid var(--line);padding:35px 30px}.footer-inner{max-width:1000px;margin:auto}.footer-inner>strong{font-size:18px}.footer-inner p{font-size:15px}.footer-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin:18px 0}.footer-links a,footer p a{display:inline-flex;min-height:44px;align-items:center;font-size:15px}footer small{font-size:13px}.sticky{position:fixed;z-index:30;bottom:10px;left:12px;right:12px;display:grid;grid-template-columns:1fr 1fr;border:1px solid #0a5452;border-radius:8px;overflow:hidden;box-shadow:0 7px 25px #17392b40;background:white}.sticky[hidden]{display:none}.sticky a{display:flex;align-items:center;justify-content:center;min-height:54px;padding:10px 4px;font-size:14px;font-weight:800;color:white;text-decoration:none;background:#00833d}.sticky a+a{background:var(--teal)}@media(max-width:1100px){.header{flex-wrap:wrap}nav{justify-content:flex-start}.brand{font-size:16px}}@media(max-width:720px){body{font-size:16px;padding-bottom:80px}.header{padding:12px 16px;gap:10px}.brand{max-width:calc(100% - 92px);font-size:14px}.brand small{font-size:11px}.menu-toggle{display:block;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:6px;background:white;color:var(--teal);font-size:14px}nav{display:none;width:100%;grid-template-columns:1fr 1fr}nav.open{display:grid}nav a{font-size:14px}.hero{padding:27px 18px 22px}.home-hero{padding-top:30px}.home-hero h1{font-size:29px;letter-spacing:-.035em}.hero-lead{font-size:18px}.article{padding:0 18px}.content-section{padding:27px 0}.content-section h2{padding-left:12px}.page-grid{grid-template-columns:1fr 1fr;gap:10px}.page-grid a{padding:16px 12px;font-size:15px}.person{grid-template-columns:72px 1fr;gap:16px;align-items:start}.person img{width:72px;height:72px}.person p{font-size:15px}.before-after{gap:10px}.before-after img{max-height:310px}.volume-grid{grid-template-columns:1fr;gap:18px}.volume-grid img{height:auto;max-height:380px}.final{margin:24px 16px 32px;padding:25px 18px}.final h2{font-size:23px}footer{padding:30px 18px}table{font-size:15px}th,td{padding:12px 8px}td:first-child{min-width:74px}summary{padding:15px}.answer{padding:0 15px 15px}.cta-actions{margin:23px 0}figcaption{padding:9px;font-size:14px}}@media(min-width:721px){.sticky{display:none!important}}@media(max-width:350px){.home-hero h1{font-size:26px}.hero-lead{font-size:17px}.brand{font-size:13px}.page-grid{grid-template-columns:1fr}h1{font-size:27px}.final h2{font-size:21px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

h1,h2,h3{text-wrap:balance} .final .cta-actions{margin-bottom:0}

.lead-balance{display:block;max-width:36em;text-wrap:balance}
/* V2: information-specific layouts and meaningful Japanese heading units */
h1,h2,h3{text-wrap:wrap;overflow-wrap:normal;word-break:normal}.keep{white-space:nowrap}.content-section,[id]{scroll-margin-top:24px}.hero-proof{margin:0}.hero-proof .before-after{margin:12px 0}.hero-proof .before-after img{max-height:330px}.hero-proof .eyebrow{margin:0;font-weight:700}.hero-proof .text-link{font-size:15px}.text-link{display:inline-flex;align-items:center;min-height:44px;font-weight:700}.home-hero{display:grid;grid-template-columns:1.08fr 1fr;column-gap:48px;max-width:1200px;padding:40px 36px}.home-hero>*{grid-column:1}.home-hero .hero-proof{grid-column:2;grid-row:1/7;align-self:center}.home-hero h1{font-size:36px;line-height:1.5}.home-hero .hero-lead{font-size:19px}.home-hero .cta-actions{margin-bottom:0}.home-hero p{margin-bottom:16px}.home-hero .hero-lead{line-height:1.9}.home-hero .free{margin-bottom:0}.article{max-width:1080px}.page-grid a{position:relative;display:block;padding:22px 32px 22px 18px}.page-grid a strong,.page-grid a span{display:block}.page-grid a span{font-size:14px;font-weight:400;margin-top:6px}.page-grid a b{position:absolute;right:13px;top:22px}.split-info{display:grid;grid-template-columns:1fr 1fr;gap:32px}.promise,.fee-condition{padding:26px;background:#eff6f2;border:1px solid #cadfd5;border-radius:10px}.promise h3{margin:0 0 15px}.person{margin:12px 0 22px}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.service-grid article{padding:24px;background:var(--soft);border-radius:10px}.service-grid h3{margin:0 0 12px}.service-grid p{margin:0}.steps{list-style:none;padding:0;counter-reset:step}.steps li{position:relative;padding:18px 20px 18px 65px;background:var(--soft);border-radius:8px;margin:12px 0;counter-increment:step}.steps li:before{content:counter(step,decimal-leading-zero);position:absolute;left:18px;top:16px;color:var(--teal);font-weight:800;font-size:23px}.steps p{margin:8px 0 0}.photo-example{display:grid;grid-template-columns:240px 1fr;gap:30px;align-items:start}.photo-example figure{margin:0;background:var(--soft);border:1px solid var(--line);border-radius:8px;overflow:hidden}.photo-example img{width:100%;max-height:350px;object-fit:contain}.photo-example h3{margin-top:0}.note{font-size:14px;color:var(--muted)}.decision{padding:16px 20px;border-left:3px solid var(--teal)}.category-links{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:26px}.category-links a{display:flex;align-items:center;padding:12px 15px;min-height:48px;border:1px solid var(--line);border-radius:8px;background:var(--soft);font-size:15px;text-decoration:none}.review-card{padding:25px;margin:18px 0;border:1px solid var(--line);border-radius:9px;background:var(--soft)}.review-card>h2{font-size:23px;border:0;padding:0}.volume-grid{gap:20px}.volume-grid img{height:auto;aspect-ratio:1.4;object-fit:contain;background:#eef3ef}.volume-stages{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:20px 0}.volume-stages figure{margin:0;background:var(--soft);border:1px solid var(--line);border-radius:10px;overflow:hidden}.volume-stages img{width:100%;aspect-ratio:1.15;object-fit:contain}.volume-stages figcaption strong{font-size:17px}.volume-stages figcaption span{font-size:14px}.page-about .person strong{font-size:20px}.page-about .person p{font-size:17px}.fee-condition{margin:14px 0}.sticky{bottom:max(10px,env(safe-area-inset-bottom))}
@media(max-width:1100px){.home-hero{column-gap:28px}.home-hero h1{font-size:30px}.home-hero .hero-lead{font-size:18px}}
@media(max-width:720px){.home-hero{display:block;padding:30px 18px 24px}.home-hero h1{font-size:29px}.home-hero .hero-lead{font-size:18px}.home-hero .hero-proof{margin-top:30px;padding-top:22px;border-top:1px solid var(--line)}.hero-proof .before-after img{max-height:260px}.hero-proof .before-after{margin:10px 0}.hero-proof .text-link{font-size:14px}.split-info,.service-grid,.photo-example{grid-template-columns:1fr}.split-info{gap:20px}.promise,.fee-condition{padding:22px 18px}.photo-example{gap:20px}.photo-example figure{max-width:240px;margin:0 auto}.photo-example img{max-height:320px}.photo-example h3{font-size:20px}.category-links{grid-template-columns:1fr 1fr}.category-links a{padding:11px 12px;font-size:14px}.volume-stages{grid-template-columns:1fr}.volume-stages img{aspect-ratio:1.4;max-height:340px}.volume-grid{grid-template-columns:1fr}.review-card{padding:22px 18px}.page-about .person strong{font-size:17px}.page-about .person p{font-size:15px}.steps li{padding:18px 15px 18px 58px}.steps li:before{left:14px}.service-grid article{padding:20px}.page-grid a{padding:16px 28px 16px 12px}.page-grid a b{right:10px;top:15px}.page-grid a span{font-size:13px}.article{padding:0 18px}h1{font-size:28px}.page-faq h1{font-size:27px}.page-services h1{font-size:28px}}
@media(max-width:350px){.home-hero h1{font-size:26px}.home-hero .hero-lead{font-size:17px}.page-grid{grid-template-columns:1fr 1fr}.page-grid a{font-size:14px}h1,.page-services h1,.page-faq h1{font-size:27px}.category-links{grid-template-columns:1fr}.home-hero{padding-top:25px}}
