/* Custom editorial direction: quiet local service, typographic hierarchy, practical information first. */
:root{--ink:#263d36;--muted:#626d65;--green:#285346;--green-deep:#1b4034;--paper:#faf9f5;--white:#fff;--sand:#eeeee5;--line:#ced2c7;--accent:#a85534;--focus:#b65d2e;--body:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--serif:"Yu Mincho","Hiragino Mincho ProN",serif}*{box-sizing:border-box}html,body{overflow-x:clip}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.9 var(--body)}h1,h2,h3,p{margin:0}a{color:var(--green);text-underline-offset:5px}a:hover{text-decoration-thickness:2px}a,button,input,select,textarea,summary{touch-action:manipulation}:focus-visible{outline:3px solid var(--focus);outline-offset:5px}button,input,select,textarea{font:inherit}button,summary{cursor:pointer}.shell{max-width:1184px;margin:auto;padding:0 48px}.prototype{padding:7px 20px;background:var(--sand);text-align:center;color:var(--muted);font-size:12px}.skip{position:absolute;top:-100px;left:10px;background:var(--white);padding:10px;z-index:5}.skip:focus{top:10px}header{border-bottom:1px solid var(--line)}.header-line{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-top:24px;padding-bottom:24px}.brand{font:600 27px/1.5 var(--serif);text-decoration:none;white-space:nowrap}.brand span{font:11px/1.5 var(--body);display:block;margin-top:3px;color:var(--muted)}header nav{display:flex;gap:30px;align-items:center;font-size:14px}header nav a{text-decoration:none}.nav-contact{border-bottom:1px solid var(--green);padding:9px 0}.intro{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:68px;padding:66px 0 58px;align-items:center}.intro h1{font:500 clamp(32px,3.6vw,48px)/1.65 var(--serif);letter-spacing:.025em;overflow-wrap:break-word;min-width:0}.hero-copy>p{margin-top:24px;color:var(--muted);font-size:15px;line-height:2}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:30px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:12px 28px;background:var(--green);color:var(--white);border:1px solid var(--green);border-radius:2px;font-size:15px;text-decoration:none;font-weight:600}.button:hover{background:var(--green-deep)}.button.light{background:transparent;color:var(--green)}.button.light:hover{background:var(--sand)}.text-link{font-size:14px}.hero-note{padding:27px 29px 24px;background:var(--sand);border-top:3px solid var(--green);transform:rotate(-1deg)}.note-heading{font:500 21px/1.7 var(--serif);padding-bottom:17px;border-bottom:1px solid var(--line)}.hero-note dl{margin:0}.hero-note dl>div{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:12px 0;border-bottom:1px solid var(--line)}.hero-note dt{font-size:15px}.hero-note dd{margin:0;font-size:12px;color:var(--muted)}.hero-price{padding-top:20px;font-size:12px}.hero-price>span{display:block;font-size:14px;margin-top:2px}.hero-price strong{font:500 39px/1.5 var(--serif)}.hero-price small{font-size:11px;color:var(--muted)}.area-band{display:flex;align-items:center;gap:27px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0}.area-band>span{font-size:12px;color:var(--muted)}.area-band p{font-size:15px}.area-band a{font-size:12px;margin-left:auto}.consult-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:50px;padding:55px 0 52px;margin-top:0;border-bottom:1px solid var(--line)}.consult-intro h2{border:0;padding:0;margin:0;font-size:27px}.consult-intro p{font-size:14px;color:var(--muted);margin-top:18px}.concerns{list-style:none;margin:5px 0 0;padding:0;font-size:14px}.concerns li{padding:13px 0;border-bottom:1px solid var(--line)}.concerns li:last-child{border:0}section{padding:60px 0;border-bottom:1px solid var(--line);scroll-margin-top:24px}h2{font:500 30px/1.65 var(--serif);margin-bottom:20px;overflow-wrap:break-word}h3{font-size:17px;margin:22px 0 10px}section>p{max-width:800px;color:var(--muted);font-size:15px}section>p+p{margin-top:10px}.note{color:var(--muted);font-size:13px;line-height:1.8}.table-scroll{overflow-x:auto;margin-top:24px;border:1px solid var(--line);background:var(--white)}table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.8}th,td{padding:15px 19px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line);border-right:1px solid var(--line)}tr>*:last-child{border-right:0}tr:last-child>*{border-bottom:0}thead th{background:var(--green);color:var(--white);font-weight:500;padding-top:18px;padding-bottom:18px}tbody th{font-weight:500;background:var(--paper)}.plan-table{min-width:690px}.plan-table th:first-child{width:22%}.plan-table td{width:26%}.price{font:500 28px/1.5 var(--serif);white-space:nowrap}.table-note{font-size:12px!important;color:var(--muted);margin-top:14px}.plan-links{display:flex;gap:25px;flex-wrap:wrap;margin-top:18px;font-size:13px}.notice{border-left:2px solid var(--line);padding:4px 0 4px 17px;margin-top:25px;font-size:13px;line-height:1.9;color:var(--muted)}.notice p+p{margin-top:8px}.work-list{margin:28px 0 0}.work-list>div{display:grid;grid-template-columns:210px minmax(0,1fr);gap:40px;padding:24px 0;border-bottom:1px solid var(--line)}.work-list>div:first-child{border-top:1px solid var(--line)}.work-list dt{font-size:17px;font-weight:500}.work-list dd{margin:0;font-size:14px;color:var(--muted)}.report-example{margin:28px 0 0;background:var(--white);border:1px solid var(--line);padding:30px 36px;box-shadow:6px 6px 0 var(--sand)}.report-top{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--green);padding-bottom:15px}.report-top h3{margin:0;font:500 23px/1.6 var(--serif)}.report-top span{font-size:11px;color:var(--accent)}.report-example dl{margin:0}.report-example dl>div{display:grid;grid-template-columns:140px minmax(0,1fr);gap:25px;padding:20px 0;border-bottom:1px solid var(--line);font-size:14px}.report-example dt{font-weight:600}.report-example dd{margin:0;color:var(--muted)}.report-example .note{margin-top:20px}.options-table{min-width:650px}.options-table th{width:27%}.options-table td:nth-child(2){width:24%}.options-table small{font-size:12px;color:var(--muted)}.steps{padding:0;margin:26px 0 0;list-style:none;counter-reset:steps;display:grid;grid-template-columns:1fr 1fr;gap:25px 45px}.steps li{counter-increment:steps;border-top:1px solid var(--line);padding:18px 0 0 45px;position:relative}.steps li:before{content:counter(steps,decimal-leading-zero);position:absolute;left:0;top:17px;font:500 24px var(--serif);color:var(--accent)}.steps h3{font-size:16px;margin:0 0 10px}.steps p{font-size:14px;color:var(--muted)}details{border-bottom:1px solid var(--line)}details:first-of-type{border-top:1px solid var(--line)}summary{position:relative;list-style:none;padding:21px 35px 21px 0;font-size:15px}summary::-webkit-details-marker{display:none}summary:after{content:'＋';position:absolute;right:5px;top:20px;color:var(--green)}details[open] summary:after{content:'−'}details p{padding:0 35px 22px 0;font-size:14px;color:var(--muted)}#contact{background:var(--sand);margin:48px -32px 0;padding:42px 32px;border:0}#contact .notice{border-color:var(--muted)}form{max-width:740px;margin-top:30px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}label{display:block;margin-bottom:22px;font-size:14px}input,select,textarea{display:block;width:100%;margin-top:8px;padding:12px;color:var(--ink);background:var(--white);border:1px solid var(--muted);border-radius:2px;font-size:16px}textarea{min-height:130px;resize:vertical}.hidden{display:none!important}#summary-result{white-space:pre-wrap;margin:25px 0 15px;padding:20px;background:var(--white);border:1px solid var(--line);font-size:14px}.feedback{font-size:14px;margin-top:15px}.backtop{display:block;text-align:right;margin:27px 0 40px;font-size:12px}footer{background:var(--green-deep);color:var(--paper);padding:28px 0;font-size:12px}.footer-line{display:flex;justify-content:space-between;gap:20px}
@media(max-width:900px){.shell{padding:0 28px}header nav{gap:20px}.intro{gap:30px}.intro h1{font-size:35px}.hero-note{padding:24px 20px}.hero-note dl>div{display:block}.hero-note dd{margin-top:3px}.consult-intro{gap:28px}.concerns{font-size:13px}.work-list>div{grid-template-columns:170px minmax(0,1fr);gap:25px}#contact{margin-left:0;margin-right:0}}
@media(max-width:650px){.shell{padding:0 22px}.prototype{font-size:10px;padding:7px 12px}.header-line{padding-top:17px;padding-bottom:17px;gap:12px}.brand{font-size:23px}.brand span{font-size:9px}header nav>a:not(.nav-contact){display:none}.nav-contact{font-size:12px;white-space:nowrap}.intro{display:block;padding:35px 0 30px}.intro h1{font-size:32px;line-height:1.65}.hero-copy>p{font-size:14px;margin-top:19px}.desktop{display:none}.actions{margin-top:24px;gap:20px}.button{padding:12px 20px;font-size:14px}.hero-note{margin-top:35px;padding:22px 23px;transform:none}.note-heading{font-size:21px}.hero-note dl>div{display:flex;padding:10px 0}.hero-note dd{margin:0}.hero-price{display:grid;grid-template-columns:1fr auto;align-items:center;padding-top:16px}.hero-price>span{grid-column:2;grid-row:1 / 3;margin:0}.hero-price strong{font-size:33px}.hero-price small{grid-column:1}.area-band{display:block;padding:14px 0}.area-band p{font-size:13px;margin:3px 0}.area-band a{display:inline-block;margin-top:3px}.consult-intro{display:block;padding:35px 0}.consult-intro h2{font-size:26px}.consult-intro p{font-size:13px}.concerns{margin-top:20px;font-size:13px}.concerns li{padding:14px 0}section{padding:36px 0}h2{font-size:25px;margin-bottom:15px}section>p{font-size:14px}.table-scroll{margin-top:17px}th,td{padding:12px 14px}.plan-links{display:block}.plan-links a{display:block;margin-top:10px}.work-list>div{display:block;padding:18px 0}.work-list dd{margin-top:7px;font-size:14px}.work-list dt{font-size:16px}.notice{font-size:12px;margin-top:20px}.report-example{padding:20px 18px}.report-top h3{font-size:20px}.report-example dl>div{display:block;padding:17px 0}.report-example dd{margin-top:7px}.steps{display:block;margin-top:20px}.steps li{margin-top:20px;padding-left:42px}.steps p{font-size:13px}summary{font-size:14px;padding:19px 30px 19px 0}details p{font-size:13px}#contact{margin-top:30px;padding:27px 18px}.form-grid{grid-template-columns:1fr;gap:0}#contact h2{font-size:24px}.footer-line{display:block}.footer-line span{display:block}.footer-line span+span{margin-top:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* 2026-11-11: Plain local-service presentation; Astryx-inspired consistent foundations. */
:root{--ink:#252b29;--muted:#505b55;--paper:#fff;--sand:#f3f5f3;--line:#d9dfda;--serif:var(--body)}
body{line-height:1.85}.brand{font-size:25px;font-weight:700;white-space:normal}.brand span{font-size:12px}.intro{padding:48px 0;gap:48px}.intro h1{font-size:36px;line-height:1.55;font-weight:700;letter-spacing:0}.hero-note{transform:none;border:1px solid var(--line);padding:24px;background:var(--sand)}.note-heading{font-size:18px;font-weight:700}.hero-note dl>div{display:block}.hero-note dd{font-size:14px;margin-top:3px}.hero-price strong{font-weight:700}.report-example{box-shadow:none;border:1px solid var(--line)}h2{font-size:26px;font-weight:700}section{padding:44px 0}.consult-intro h2{font-size:25px}.price{font-size:26px;font-weight:700}thead th{background:#edf3ef;color:var(--ink);font-weight:700}.steps li:before{font-family:var(--body);font-size:21px;font-weight:700;color:var(--green)}#contact{margin:32px 0 0;border:1px solid var(--line);background:var(--sand);padding:30px}.prototype{background:#f3f5f3;color:#505b55;font-size:13px}.footer-line{flex-wrap:wrap}.button{border-radius:4px}.consult-intro p,.concerns{font-size:15px}
@media(max-width:650px){.header-line{flex-wrap:wrap;gap:10px}.brand{font-size:21px}.brand span{font-size:11px}.intro{padding:30px 0}.intro h1{font-size:28px;line-height:1.55}.intro h1 br{display:none}.hero-note{margin-top:24px}.hero-note dl>div{display:block}.hero-note dd{font-size:14px;margin-top:3px}.hero-price{display:block}.hero-price>span,.hero-price small{display:block}.consult-intro h2,h2,#contact h2{font-size:23px}.consult-intro p,.concerns{font-size:14px}section{padding:30px 0}.report-example{padding:20px 16px}#contact{padding:24px 18px}.notice{font-size:13px}.prototype{font-size:12px}}

.required{font-size:12px;color:#505b55;margin-left:8px}.contact-consent{display:flex;gap:10px;align-items:flex-start;margin-top:20px}.contact-consent input{width:20px;height:20px;flex:0 0 20px;margin:4px 0}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}button:disabled{opacity:.55;cursor:not-allowed}#contact-status{margin-top:16px;font-size:14px}#contact-verification{margin:18px 0}.contact-email-fallback{margin-top:24px}

/* Warm Okinawa service design, 2026-11-11. */
:root{--paper:#fbf8f1;--sand:#eee9dc;--ink:#253d34;--muted:#59665b;--green:#294e3f;--green-deep:#203d31;--accent:#ac5f44;--line:#d7d7c7;--serif:"Yu Mincho","Hiragino Mincho ProN",serif}
header{background:#fbf8f1}.header-line{padding-top:25px;padding-bottom:25px}.brand{font-family:var(--serif);font-size:27px}.brand span{letter-spacing:.09em;font-size:11px}.nav-contact{background:var(--green);color:#fff;padding:10px 18px;border:0}.intro{gap:46px;padding:52px 0 38px;grid-template-columns:1.15fr 1fr}.intro h1{font:600 clamp(32px,3.5vw,46px)/1.65 var(--serif);letter-spacing:.025em}.hero-copy>.eyebrow{font-size:13px;color:var(--accent);margin:0 0 20px;letter-spacing:.1em}.hero-copy>p{font-size:15px;line-height:2.1}.button{border-radius:0;padding:15px 25px}.button:after{content:' →';padding-left:18px}.home-visual{margin:0;position:relative}.home-visual img{width:100%;height:auto;display:block;border-radius:140px 140px 0 0}.home-visual figcaption{font-size:11px;letter-spacing:.04em;padding-top:12px;text-align:center;color:var(--muted)}.hero-note{display:grid;grid-template-columns:1fr 3fr 1.3fr;gap:22px;align-items:center;padding:22px 25px;background:var(--green);color:#fff;border:0}.note-heading{border:0;font-family:var(--serif);font-size:20px;padding:0}.hero-note dl{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.hero-note dl>div{border:0;padding:0}.hero-note dt{font-size:13px}.hero-note dd{color:#d6dfd0;font-size:11px}.hero-price{padding:0;border-left:1px solid #69806b;padding-left:20px;font-size:11px}.hero-price>span{white-space:nowrap;font-size:11px}.hero-price strong{font-family:var(--serif);font-size:31px}.hero-price small{color:#d6dfd0;font-size:10px}.area-band{margin-top:24px}.area-band>span{color:var(--accent)}section{padding:64px 0}.section-label{font-size:11px!important;letter-spacing:.18em;color:var(--accent)!important;margin-bottom:10px!important}h2,.consult-intro h2{font-family:var(--serif);font-size:30px;font-weight:600}section>p{line-height:2}.consult-intro{padding:52px 0}.concerns{background:var(--sand);padding:10px 26px;border-left:3px solid var(--accent)}.concerns li{border-color:#d7d1bf}.table-scroll{border:1px solid #bfc9bc}.plan-table thead th{background:var(--green);color:white;padding-top:22px;padding-bottom:22px}.plan-table thead th:nth-child(3){background:#496b51}.plan-table tbody tr:first-child td{background:#f0eee1;padding-top:24px;padding-bottom:24px}.price{font-family:var(--serif);font-size:30px}.work-list{counter-reset:work}.work-list>div{counter-increment:work;grid-template-columns:260px 1fr;gap:25px;padding:26px 0}.work-list dt:before{content:counter(work,decimal-leading-zero);font:14px var(--serif);color:var(--accent);margin-right:18px}.report-example{background:#fffdf8;border-top:5px solid var(--green);box-shadow:10px 10px 0 #e9e4d5;padding:30px 36px}.report-top h3{font-family:var(--serif)}.report-example dt{color:var(--green)}.report-example dl>div:nth-child(3){background:#f3f2e8;padding-left:12px;padding-right:12px}.steps{gap:28px}.steps li{border-top:2px solid var(--green);padding:24px 15px 15px 50px;background:#f1eee4}.steps li:before{top:24px;left:12px;color:var(--accent);font-family:var(--serif)}summary{font-weight:500;padding-top:25px;padding-bottom:25px}#contact{background:#e8ede3;border:0;border-top:4px solid var(--green);padding:42px;margin-top:50px}#contact form{max-width:760px}input,select,textarea{border-color:#98a894;background:#fffefa;border-radius:0}.required{color:var(--accent)}footer{padding:35px 0}.footer-line{letter-spacing:.04em}
@media(max-width:1000px){.hero-note{grid-template-columns:1fr 2fr}.hero-price{grid-column:1/-1;border-left:0;border-top:1px solid #69806b;padding:12px 0 0;display:flex;align-items:center;gap:20px}.hero-note dl{gap:12px}.hero-price>span{margin:0}}
@media(max-width:650px){.shell{padding-left:22px;padding-right:22px}.brand{font-size:21px}.brand span{font-size:9px}.header-line{flex-wrap:nowrap;padding-top:18px;padding-bottom:18px}.nav-contact{padding:8px 10px;font-size:11px}.intro{display:block;padding:35px 0 24px}.intro h1{font-size:31px;line-height:1.65}.intro h1 br{display:block}.hero-copy>.eyebrow{font-size:11px;margin-bottom:14px}.hero-copy>p{font-size:14px}.actions{gap:18px}.home-visual{margin-top:30px}.home-visual img{border-radius:100px 100px 0 0;max-height:340px;object-fit:cover;object-position:center 52%}.home-visual figcaption{font-size:10px}.hero-note{display:block;margin-top:0;padding:22px}.note-heading{font-size:21px;margin-bottom:16px}.hero-note dl{display:block}.hero-note dl>div{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid #69806b}.hero-note dt{font-size:13px;flex:0 0 42%}.hero-note dd{font-size:11px}.hero-price{display:block;padding:16px 0 0;border:0}.hero-price strong{font-size:36px}.hero-price>span{display:block}.hero-price small{display:block}.area-band{margin-top:20px}.consult-intro{padding:38px 0}.concerns{padding:8px 16px}.consult-intro h2,h2,#contact h2{font-size:27px}section{padding:42px 0}.work-list>div{display:block}.work-list dd{padding-left:35px}.report-example{padding:24px 18px;box-shadow:5px 5px 0 #e9e4d5}.report-top{gap:12px}.report-top span{white-space:nowrap}.steps li{padding-bottom:20px}#contact{padding:28px 18px;margin-top:36px}.price{font-size:28px}.section-label{font-size:10px!important}}


/* Business information and policy pages. */
.info-list{margin:24px 0}.info-list>div{display:grid;grid-template-columns:190px minmax(0,1fr);gap:24px;padding:18px 0;border-bottom:1px solid var(--line)}.info-list dt{font-weight:600}.info-list dd{margin:0;overflow-wrap:anywhere}.footer-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-bottom:20px}footer a{color:inherit}.policy{max-width:920px}.policy h1{font:600 30px/1.6 var(--serif);margin:0 0 24px}.policy section{padding:32px 0}.policy p+p{margin-top:12px}.policy h2{font-size:23px}.policy ul{padding-left:24px}.policy .info-list{font-size:15px}@media(max-width:650px){.info-list>div{display:block;padding:16px 0}.info-list dd{margin-top:6px;font-size:14px}.policy h1{font-size:26px}.footer-links{display:grid;gap:12px}}
