:root{--paper:#f5efe2;--paper-deep:#ece4d2;--paper-light:#fbf8f1;--sumi:#24211d;--haicha:#6e665a;--line:#d6ccb8;--shu:#c7361f;--shu-dark:#a12a16;--ai:#24405e;--mincho:"Shippori Mincho B1", "Hiragino Mincho ProN", "Yu Mincho", serif;--gothic:"Zen Kaku Gothic New", "Hiragino Sans", "Yu Gothic", system-ui, sans-serif;--max:1080px;--measure:38em}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--paper);color:var(--sumi);font-family:var(--gothic);letter-spacing:.03em;font-feature-settings:"palt" 0;margin:0;font-size:16px;line-height:1.9}img{max-width:100%;height:auto}a{color:var(--ai);text-underline-offset:.2em}a:hover{color:var(--shu)}:focus-visible{outline:2px solid var(--shu);outline-offset:3px}h1,h2,h3{font-family:var(--mincho);letter-spacing:.06em;word-break:auto-phrase;font-weight:700;line-height:1.5}p,li{word-break:auto-phrase}.container{max-width:var(--max);margin:0 auto;padding:0 24px}.section{padding:96px 0}.section.alt{background:var(--paper-deep)}.section-title{margin:0 0 14px;font-size:clamp(1.5rem,3vw,2.05rem)}.section-title:after{content:"";background:var(--shu);border-radius:2px;width:28px;height:3px;margin-top:14px;display:block}.section-lead{color:var(--haicha);max-width:var(--measure);margin:0 0 48px}.site-header{z-index:50;backdrop-filter:blur(6px);border-bottom:1px solid var(--line);background:#f5efe2f2;position:sticky;top:0}.site-header .inner{justify-content:space-between;align-items:center;gap:16px;height:72px;display:flex}.logo{color:var(--sumi);align-items:center;gap:12px;text-decoration:none;display:flex}.logo:hover{color:var(--sumi)}.logo strong{font-family:var(--mincho);letter-spacing:.12em;font-size:1.35rem;font-weight:800;line-height:1.2;display:block}.logo small{color:var(--haicha);letter-spacing:.04em;font-size:.7rem;line-height:1.3;display:block}.global-nav{align-items:center;gap:26px;display:flex}.global-nav a{color:var(--sumi);font-size:.92rem;font-weight:500;text-decoration:none}.global-nav a:not(.btn):hover{color:var(--shu)}.nav-toggle{white-space:nowrap;border:1px solid var(--sumi);color:var(--sumi);font:inherit;background:0 0;border-radius:2px;padding:6px 12px;font-size:.85rem;display:none}.btn{letter-spacing:.08em;cursor:pointer;font-weight:700;font:inherit;border:1px solid #0000;border-radius:3px;justify-content:center;align-items:center;padding:14px 30px;font-weight:700;text-decoration:none;transition:background-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--shu);color:#fff}.btn-primary:hover{background:var(--shu-dark);color:#fff}.btn-ghost{border-color:var(--sumi);color:var(--sumi);background:0 0}.btn-ghost:hover{background:var(--sumi);color:var(--paper)}.btn-sm{padding:8px 18px;font-size:.88rem}.global-nav .btn-primary{color:#fff}.hero{padding:72px 0 96px;position:relative;overflow:hidden}.hero-grid{grid-template-columns:auto 1fr;align-items:start;gap:72px;display:grid}.hero-title{writing-mode:vertical-rl;letter-spacing:.12em;white-space:nowrap;margin:0;font-size:clamp(2.4rem,4.2vw,3.5rem);font-weight:800;line-height:1.75}.hero-title .line{display:block}.hero-title .line:nth-child(2){padding-top:1em}.hero-title .line:nth-child(3){padding-top:2em}.tcy{writing-mode:horizontal-tb;text-align:center;letter-spacing:0;vertical-align:baseline;width:1.25em;height:1.25em;font-size:.8em;line-height:1.25em;display:inline-block}.hero-body{max-width:30em;padding-top:12px}.hero-area{font-family:var(--mincho);letter-spacing:.1em;margin:0 0 18px;font-size:1.05rem;font-weight:700}.hero .lead{margin:0 0 32px;font-size:1.04rem}.hero .actions{flex-wrap:wrap;gap:12px;display:flex}.hero .note{color:var(--haicha);margin:14px 0 0;font-size:.86rem}.hero-topics{border-top:1px solid var(--line);margin-top:44px;padding-top:22px}.hero-topics h2{letter-spacing:.08em;margin:0 0 8px;font-size:.98rem}.hero-topics ul{grid-template-columns:1fr 1fr;gap:2px 24px;margin:0;padding:0;list-style:none;display:grid}.hero-topics li{padding-left:1.1em;font-size:.94rem;position:relative}.hero-topics li:before{content:"";background:var(--shu);border-radius:50%;width:6px;height:6px;position:absolute;top:.8em;left:0}.hero-kingyo{pointer-events:none;width:clamp(150px,17vw,220px);position:absolute;bottom:36px;right:3%}@media (prefers-reduced-motion:no-preference){.hero-kingyo{transform-origin:40%;animation:9s ease-in-out infinite oyogu}@keyframes oyogu{0%{transform:translate(0)rotate(-2deg)}25%{transform:translate(-22px,-10px)rotate(2deg)}50%{transform:translate(-40px,2px)rotate(-1deg)}75%{transform:translate(-18px,10px)rotate(2.5deg)}to{transform:translate(0)rotate(-2deg)}}}.worries{grid-template-columns:1fr 1fr;gap:0 56px;margin:0;padding:0;list-style:none;display:grid}.worries li{font-family:var(--mincho);text-indent:-.7em;border-bottom:1px dashed var(--line);padding:18px 0 18px 1.4em;font-size:1.08rem;font-weight:500;line-height:1.75}.worries li:before{content:"「";color:var(--shu)}.worries li:after{content:"」";color:var(--shu)}.mon{border:1.5px solid var(--shu);width:56px;height:56px;color:var(--shu);font-family:var(--mincho);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:1.6rem;font-weight:800;line-height:1;display:inline-flex}.service-list{border-top:1px solid var(--sumi);grid-template-columns:1fr 1fr;display:grid}.service-item{border-bottom:1px solid var(--line);color:inherit;grid-template-columns:auto 1fr;align-items:start;column-gap:22px;padding:32px 28px 32px 0;text-decoration:none;display:grid}.service-item:nth-child(odd){border-right:1px solid var(--line)}.service-item:nth-child(2n){padding-left:28px}.service-item h3{margin:4px 0 6px;font-size:1.22rem}.service-item p{color:var(--haicha);grid-column:2;margin:0 0 10px;font-size:.95rem}.service-item .more{color:var(--ai);grid-column:2;font-size:.9rem;font-weight:700}.service-item:hover h3,.service-item:hover .more{color:var(--shu)}.service-item:hover .mon{background:var(--shu);color:var(--paper)}.reasons{grid-template-columns:repeat(3,1fr);gap:40px;display:grid}.reason h3{border-top:2px solid var(--sumi);margin:0 0 10px;padding-top:18px;font-size:1.18rem}.reason p{color:var(--haicha);margin:0;font-size:.95rem}.case-list{border-top:1px solid var(--sumi)}.case-row{border-bottom:1px solid var(--line);color:inherit;grid-template-columns:9em 1fr;align-items:baseline;gap:24px;padding:26px 0;text-decoration:none;display:grid}.case-row h3{margin:0 0 6px;font-size:1.15rem}.case-row p{color:var(--haicha);max-width:var(--measure);margin:0;font-size:.94rem}.case-row:hover h3{color:var(--shu)}.cards{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;display:grid}.card{background:var(--paper-light);border:1px solid var(--line);border-radius:4px;flex-direction:column;padding:28px;display:flex}.card .mon{margin-bottom:14px}.card h3{margin:0 0 8px;font-size:1.12rem}.card p{color:var(--haicha);margin:0 0 14px;font-size:.95rem}.card .more{color:var(--ai);margin-top:auto;font-size:.9rem;font-weight:700}a.card{color:inherit;text-decoration:none;transition:border-color .15s}a.card:hover{border-color:var(--shu)}a.card:hover h3{color:var(--shu)}.tag{letter-spacing:.06em;color:var(--shu-dark);border:1px solid;border-radius:2px;margin:0 6px 8px 0;padding:1px 9px;font-size:.76rem;font-weight:700;line-height:1.7;display:inline-block}.steps{counter-reset:step;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:0;margin:0;padding:0;list-style:none;display:grid}.steps li{counter-increment:step;padding:0 26px 0 0;position:relative}.steps li+li{border-left:1px solid var(--line);padding-left:26px}.steps li:before{content:counter(step, cjk-decimal);font-family:var(--mincho);color:var(--shu);font-size:2.2rem;font-weight:800;line-height:1.2;display:block}.steps h3{margin:8px 0 6px;font-size:1.08rem}.steps p{color:var(--haicha);margin:0;font-size:.93rem}.cta{background-color:var(--ai);color:var(--paper);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='48' height='24' viewBox='0 0 48 24'%3E%3Cg fill='%2324405E' stroke='%23F5EFE2' stroke-opacity='.10' stroke-width='1'%3E%3Ccircle cx='0' cy='12' r='23.5'/%3E%3Ccircle cx='0' cy='12' r='17.5'/%3E%3Ccircle cx='0' cy='12' r='11.5'/%3E%3Ccircle cx='0' cy='12' r='5.5'/%3E%3Ccircle cx='48' cy='12' r='23.5'/%3E%3Ccircle cx='48' cy='12' r='17.5'/%3E%3Ccircle cx='48' cy='12' r='11.5'/%3E%3Ccircle cx='48' cy='12' r='5.5'/%3E%3Ccircle cx='24' cy='24' r='23.5'/%3E%3Ccircle cx='24' cy='24' r='17.5'/%3E%3Ccircle cx='24' cy='24' r='11.5'/%3E%3Ccircle cx='24' cy='24' r='5.5'/%3E%3C/g%3E%3C/svg%3E");padding:88px 0}.cta-inner{text-align:center}.cta h2{margin:0 0 14px;font-size:clamp(1.35rem,3vw,1.9rem)}.cta p{opacity:.9;max-width:34em;margin:0 auto 30px}.page-head{border-bottom:1px solid var(--line);padding:64px 0 40px}.page-head h1{margin:6px 0 12px;font-size:clamp(1.8rem,4vw,2.6rem)}.page-head p{color:var(--haicha);max-width:var(--measure);margin:0}.breadcrumb{color:var(--haicha);font-size:.8rem}.breadcrumb a{color:var(--haicha)}.page-head+.section{padding-top:64px}.prose{max-width:var(--measure)}.prose h2{border-left:3px solid var(--shu);margin-top:2.4em;padding-left:14px;font-size:1.45rem}.prose h3{margin-top:1.9em;font-size:1.15rem}.prose ul,.prose ol{padding-left:1.4em}.prose li{margin:4px 0}.prose table{border-collapse:collapse;width:100%;margin:1.2em 0;font-size:.95rem}.prose th,.prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:10px 12px}.prose th{background:var(--paper-deep)}.check{margin:0;padding:0;list-style:none}.check li{margin:10px 0;padding-left:1.6em;position:relative}.check li:before{content:"";border-left:2px solid var(--shu);border-bottom:2px solid var(--shu);width:11px;height:6px;position:absolute;top:.6em;left:2px;transform:rotate(-45deg)}.info-table{border-collapse:collapse;border-top:1px solid var(--sumi);width:100%}.info-table th,.info-table td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:18px 16px}.info-table th{width:28%;font-family:var(--mincho);font-weight:700}.faq details{border-bottom:1px solid var(--line)}.faq details:first-of-type{border-top:1px solid var(--sumi)}.faq summary{cursor:pointer;font-family:var(--mincho);padding:20px 2em 20px 2.2em;font-size:1.05rem;font-weight:700;list-style:none;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:before{content:"問";color:var(--shu);position:absolute;left:0}.faq summary:after{content:"+";color:var(--haicha);font-family:var(--gothic);position:absolute;right:4px}.faq details[open] summary:after{content:"−"}.faq details p{color:var(--haicha);margin:0 0 22px;padding-left:2.2em}.card .price,.price{font-family:var(--mincho);color:var(--sumi);margin:4px 0 10px;font-size:1.5rem;font-weight:800}.price small{font-family:var(--gothic);color:var(--haicha);font-size:.82rem;font-weight:500}.form{gap:22px;max-width:680px;display:grid}.form label{margin-bottom:6px;font-size:.95rem;font-weight:700;display:block}.form .req{background:var(--shu);color:#fff;vertical-align:middle;border-radius:2px;margin-left:8px;padding:1px 7px;font-size:.7rem}.form input,.form select,.form textarea{width:100%;font:inherit;background:var(--paper-light);color:var(--sumi);border:1px solid #bfb4a0;border-radius:3px;padding:12px 14px}.form input:focus,.form textarea:focus{outline:2px solid var(--ai);outline-offset:0;border-color:var(--ai)}.form textarea{min-height:170px}.form .radios{flex-wrap:wrap;gap:8px 20px;display:flex}.form .radios label{align-items:center;gap:6px;margin:0;font-weight:400;display:inline-flex}.form .radios input{width:auto;accent-color:var(--shu)}.form-error{border-left:3px solid var(--shu);color:var(--shu-dark);background:#f8e3de;max-width:680px;padding:12px 16px}.site-footer{background:var(--sumi);color:#cfc8ba;padding:64px 0 28px;font-size:.9rem}.site-footer a{color:var(--paper);text-decoration:none}.site-footer a:hover{color:#f0a694}.site-footer .cols{grid-template-columns:1.4fr 1fr 1fr;gap:40px;display:grid}.site-footer h3{color:var(--paper);margin:0 0 12px;font-size:1rem}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:6px 0}.footer-addr{color:#a79f90;font-size:.84rem}.site-footer .copy{color:#a79f90;border-top:1px solid #3a3631;margin-top:40px;padding-top:18px;font-size:.78rem}.sticky-cta{display:none}@media (width<=900px){.hero-grid{grid-template-columns:1fr;gap:28px}.hero-title{writing-mode:horizontal-tb;letter-spacing:.06em;height:auto;font-size:clamp(1.9rem,7.4vw,2.6rem)}.hero-title .line:nth-child(n){padding-top:0}.hero-title{white-space:normal}.tcy{width:auto;height:auto;line-height:inherit;font-size:inherit;letter-spacing:inherit;display:inline}.hero-kingyo{opacity:.9;width:120px;top:24px;bottom:auto;right:10px}.hero-topics ul{grid-template-columns:1fr}.reasons{grid-template-columns:1fr;gap:28px}}@media (width<=760px){.container{padding:0 16px}.section{padding:64px 0}.site-header .inner{height:64px}.logo small{display:none}.nav-toggle{display:block}.global-nav{background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:8px 16px 20px;display:none;position:absolute;top:64px;left:0;right:0}.global-nav.open{display:flex}.global-nav a:not(.btn){border-bottom:1px solid var(--line);padding:12px 0}.global-nav .btn{margin-top:14px}.hero{padding:40px 0 64px}.hero-kingyo{width:96px;top:16px}.hero-title{padding-right:84px}.worries,.service-list{grid-template-columns:1fr}.service-item,.service-item:nth-child(2n){border-right:0;padding:26px 0}.service-item:nth-child(odd){border-right:0}.mon{width:48px;height:48px;font-size:1.35rem}.case-row{grid-template-columns:1fr;gap:4px}.steps{grid-template-columns:1fr;gap:24px}.steps li,.steps li+li{border-left:0;grid-template-columns:2.4rem 1fr;column-gap:12px;padding:0;display:grid}.steps li:before{grid-row:span 2}.steps h3{margin-top:4px}.site-footer .cols{grid-template-columns:1fr;gap:28px}.info-table th{width:34%}.sticky-cta{z-index:60;border-top:1px solid var(--line);background:#f5efe2f7;padding:10px 16px;display:flex;position:fixed;bottom:0;left:0;right:0}.sticky-cta .btn{width:100%}body{padding-bottom:72px}}.about-grid{grid-template-columns:minmax(220px,360px) 1fr;align-items:start;gap:56px;display:grid}.about-photo{aspect-ratio:4/5;object-fit:cover;border-radius:2px;width:100%}.prose>h2:first-child{margin-top:0}@media (width<=760px){.about-grid{grid-template-columns:1fr;gap:28px}}.author-box{background:var(--paper-light);border:1px solid var(--line);border-radius:4px;align-items:flex-start;gap:16px;margin-top:56px;padding:22px 24px;display:flex}.author-box p{color:var(--haicha);margin:0;font-size:.9rem}.author-box .author-name{color:var(--sumi);margin-bottom:4px;font-weight:700}.related-posts{margin-top:36px}.related-posts h3{margin:0 0 6px;font-size:1.05rem}.related-posts ul{margin:0;padding-left:1.2em}.related-posts li{margin:4px 0}
