@charset "UTF-8";
/* Direction 3: bold typography, original marina photos and large intent rows.
   styles.css retains the shared form and document behavior styles. */
@font-face{font-family:"Noto Sans JP";font-weight:400;src:url("assets/fonts/noto-sans-jp-400.ttf") format("truetype");font-display:swap}
@font-face{font-family:"Noto Sans JP";font-weight:700;src:url("assets/fonts/noto-sans-jp-700.ttf") format("truetype");font-display:swap}
@font-face{font-family:"Noto Sans JP";font-weight:900;src:url("assets/fonts/noto-sans-jp-900.ttf") format("truetype");font-display:swap}
:root{--paper:#fcfaf6;--ink:#083e48;--teal:#073f48;--muted:#486067;--line:#bdccca;--pale:#e8f1ec;--sand:#f2eee3;--mint:#c3e5df;--green:#008b48;--radius:24px;font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;line-height:1.85}
h1,h2,h3{font-family:inherit;font-weight:900}h2{font-size:clamp(1.8rem,2.75vw,2.65rem);letter-spacing:-.035em}.wrap{width:min(1440px,calc(100% - 96px))}.eyebrow{font-size:.9rem;letter-spacing:.035em;margin-bottom:18px}.icon{width:24px;height:24px;flex-shrink:0;filter:invert(18%) sepia(30%) saturate(1245%) hue-rotate(143deg) brightness(88%) contrast(101%)}.light{filter:brightness(0) invert(1)}.mobile-only{display:none}.short-line{width:28px;height:2px;margin-right:9px}.preview-bar{font-size:.75rem;padding:6px 20px;color:#5a5349}
.site-header{min-height:112px}.brand{gap:16px}.brand-symbol{display:block;position:relative;width:60px;height:72px;overflow:hidden;flex-shrink:0}.brand-mark{position:absolute;width:120px;height:120px;max-width:none;left:-30px;top:-30px;padding:0}.brand strong{font-size:1.3rem;font-weight:900;line-height:1.17;letter-spacing:.12em}.brand small{font-size:.72rem;letter-spacing:.02em;margin-top:5px}.site-header nav{gap:28px;font-size:.9375rem}.button{min-height:58px;gap:13px;padding:14px 24px;border-radius:999px;line-height:1.5;transition:background .18s,transform .18s}.button>span:last-child{margin-left:0}.button:hover{transform:translateY(-2px);filter:none}.button:active{transform:translateY(0)}.button.compact{min-height:58px;padding:14px 28px;font-size:1rem;gap:20px}.outline{border-color:#8ba1a5}.outline:hover{background:#eef3ee}.line-button:hover{background:#007f42}
.hero{grid-template-columns:.93fr 1.07fr;gap:32px;align-items:start;padding:24px 0 54px}.hero-copy{position:relative;z-index:1;min-width:0;padding:0}.hero h1{font-size:clamp(2.15rem,4.45vw,4.5rem);line-height:1.4;letter-spacing:-.065em;white-space:nowrap}.hero h1 em{position:relative;display:inline-block}.headline-stroke{position:absolute;max-width:none;width:260px;height:auto;left:31%;bottom:-51px;pointer-events:none;z-index:-1}.hero-lead{font-weight:700;font-size:clamp(1rem,1.47vw,1.3rem);line-height:1.85;margin-top:29px;letter-spacing:-.03em}.hero-reassurance{font-size:.98rem;margin-top:20px;letter-spacing:-.02em}.hero-actions{margin-top:27px;gap:13px;max-width:none}.hero-actions>.button{min-height:78px;padding:14px 29px;font-size:clamp(1.05rem,1.85vw,1.7rem);gap:18px}.hero-actions>.button>.icon{margin-left:auto}.hero-actions .line-brand{width:48px;height:48px;flex-shrink:0}.hero-secondary{display:grid;grid-template-columns:1fr 1.04fr;gap:12px}.hero-secondary .button{font-size:clamp(.78rem,1.1vw,1rem);padding:12px 17px;gap:12px;white-space:nowrap}.hero-secondary .button .icon:last-child{margin-left:auto}.phone-link{margin:0}.phone-link small{font-size:.7rem;font-weight:400}.hero-note{font-size:.72rem;line-height:1.7;max-width:550px;margin-top:15px}
.hero-photo{isolation:isolate;min-width:0;min-height:0;align-self:auto;margin:0;height:570px}.hero-photo img{border-radius:0;width:auto;height:auto;object-fit:contain;object-position:50% 50%}.hero-photo .yard-image{position:relative;width:100%;height:474px;object-fit:cover;object-position:50% 56%;border-radius:26px}.hero-photo .mint-backdrop{position:absolute;z-index:-1;width:790px;height:740px;max-width:none;right:-63px;top:-95px;pointer-events:none}.slogan-frame{position:absolute;right:20px;top:27px;width:230px;height:140px;overflow:hidden}.hero-photo .photo-slogan{position:absolute;max-width:none;width:430px;height:215px;left:-99px;top:-44px}.hero-photo .office-inset{position:absolute;right:-13px;bottom:10px;width:43%;height:207px;object-fit:cover;object-position:50% 55%;border:8px solid var(--paper);border-radius:24px}.hero-photo figcaption{right:44%;bottom:38px;left:auto;max-width:220px;font-size:.72rem;line-height:1.65;background:none;padding:0;color:var(--ink)}.hero-photo figcaption strong{display:block;font-weight:700;font-size:.76rem}.hero-photo figcaption span{font:inherit;display:block;margin-top:3px}
.section{padding-block:88px;scroll-margin-top:28px}.section-heading{gap:30px;margin-bottom:34px}.section-heading>p{font-size:.95rem}.entry-section{background:var(--sand);padding-top:48px;padding-bottom:44px;border-radius:48px 48px 0 0}.entry-section .section-heading{margin-bottom:22px}.entry-section h2{font-size:clamp(1.85rem,3vw,2.8rem)}.entry-grid{grid-template-columns:1fr;gap:10px}.entry-card{background:white;border:1px solid transparent;border-radius:999px;display:grid;grid-template-columns:70px minmax(310px,.9fr) 1.2fr 52px;gap:23px;align-items:center;padding:9px 32px;min-height:82px;transition:transform .18s,border-color .18s}.entry-card:hover{transform:translateX(5px);border-color:#9bbcb5;filter:none}.entry-symbol{width:66px;height:66px;display:grid;place-items:center;border-radius:50%}.entry-symbol img{filter:invert(18%) sepia(30%) saturate(1245%) hue-rotate(143deg) brightness(88%) contrast(101%)}.price-symbol{background:#cce0ff}.sell-symbol{background:var(--mint)}.family-symbol{background:#eee3ca}.entry-card h3{font-size:clamp(1rem,1.5vw,1.4rem);letter-spacing:-.05em}.entry-card p{font-size:.9rem;line-height:1.8;margin:0;color:var(--muted);border-left:1px solid #b9c8c8;padding-left:28px}.entry-link{width:50px;height:50px;display:grid;place-items:center;background:var(--teal);border-radius:50%;padding:0;border:0}.section-note{font-size:.75rem;margin-top:23px}
.reassurance-section{background:var(--paper)}.benefit-grid article,.benefit-grid article+article{border:0;border-top:1px solid var(--line);padding:25px 0 0}.number{font-family:inherit;font-style:normal;font-size:2.5rem;line-height:1;font-weight:900;color:#6a9392;margin-bottom:24px;letter-spacing:-.06em}.benefit-grid h3{font-size:1.1rem;margin-bottom:14px}.intro{line-height:2;margin-top:23px}.compact-section{padding-top:0;padding-bottom:35px}.disclosure summary,.faq summary{min-height:65px;padding-block:21px}.photo-placeholder{background:var(--sand);border-radius:16px;min-height:150px}.flow-section{padding-top:42px}.flow-list{margin:38px 0;gap:24px}.flow-list li>span{font-family:inherit;font-style:normal;font-size:1.7rem;font-weight:900;color:#6a9392}.flow-list h3{font-size:1rem;margin:13px 0 10px}.takehome{padding:30px 36px;gap:36px}.takehome strong{font-size:1.2rem}.about-section{background:#e6efe9}.about-grid{grid-template-columns:1.06fr 1fr;gap:70px}.office-photo img{aspect-ratio:1.2;border-radius:28px}.roles>div{padding:14px 0}.faq-section{max-width:1100px}.faq summary{padding-left:43px;font-size:1rem}.faq summary::before{font-family:inherit;font-weight:900;font-style:normal}.faq>p{padding:0 43px 25px}
.consult-grid{gap:75px}.consult-copy h2{font-family:inherit;font-size:clamp(2rem,3.1vw,3rem);line-height:1.55}.consult-copy>.button{margin-top:28px;max-width:425px;min-height:68px;font-size:1.15rem}.consult-copy>.text-button{display:flex;gap:10px;align-items:center;margin-top:8px}.preview-notice{margin-top:37px;padding:24px;border-radius:20px}.form-card{border-color:#d9e3dc;border-radius:28px;padding:38px}.form-progress{padding-bottom:24px;margin-bottom:29px;gap:26px}.field{margin-bottom:23px}input:not([type=radio]):not([type=checkbox]),select,textarea{min-height:54px;border-color:#a8bcb7;border-radius:10px;padding:12px 14px}.radio-row label{padding:12px 16px;min-height:52px;border-radius:10px}.photo-later{border-radius:12px}.form-alert,.form-error-summary{border-radius:12px}.button:disabled{transform:none}.site-footer{padding-block:42px}.footer-brand{font-size:1.1rem;font-weight:900;letter-spacing:.08em}dialog{border-radius:26px}dialog h2{font-size:1.6rem}.document-page h1{font-family:inherit;font-size:clamp(1.9rem,3.5vw,2.8rem);letter-spacing:-.04em}.document-page h2{font-size:1.4rem}.complete-sample{border-radius:24px}.completion-label{border-radius:999px;padding:6px 15px}
@media(min-width:1580px){.hero-photo{height:595px}.hero-photo .yard-image{height:498px}.hero{gap:46px}.hero-lead{margin-top:35px}.hero-actions{margin-top:32px}}
@media(max-width:1200px){.site-header nav{gap:20px}.site-header nav>a:not(.button){display:none}.hero{gap:26px}.hero-actions>.button{font-size:1.2rem;padding-inline:23px}.hero-secondary{grid-template-columns:1fr}.hero-secondary .button{min-height:52px;font-size:.9rem;justify-content:flex-start}.hero-photo{height:590px}.hero-photo .yard-image{height:475px}.hero-photo .mint-backdrop{width:620px;height:650px;right:-34px;top:-50px}.slogan-frame{right:12px;width:190px;height:123px}.hero-photo .photo-slogan{width:360px;height:180px;left:-83px;top:-36px}.hero-photo .office-inset{width:58%;height:180px;bottom:33px}.hero-photo figcaption{right:auto;left:15px;bottom:-10px}.entry-card{grid-template-columns:58px minmax(280px,1.1fr) 1fr 48px;gap:18px;padding-inline:22px}.entry-symbol{width:56px;height:56px}.entry-card p{font-size:.8rem;padding-left:18px}.entry-card h3{font-size:1.07rem}.benefit-grid{gap:22px}.about-grid{gap:38px}.consult-grid{gap:35px}.form-card{padding:28px}.takehome{display:block}.takehome p{margin-top:12px}}
@media(max-width:900px){.wrap{width:calc(100% - 56px)}.hero h1{font-size:3.98vw}.hero .eyebrow{font-size:.76rem;letter-spacing:0}.hero-lead{font-size:.95rem}.hero-reassurance{font-size:.85rem}.hero-actions>.button{font-size:1rem;padding-inline:20px;gap:10px;min-height:68px}.hero-actions .line-brand{width:36px;height:36px}.hero-photo{height:565px}.hero-photo .yard-image{height:450px}.entry-section .section-heading{display:block}.entry-section .section-heading>p{margin-top:14px}.entry-card{grid-template-columns:58px 1fr 48px;border-radius:28px;gap:3px 18px;padding:18px 22px}.entry-card p{grid-column:2;border:0;padding:0}.entry-card .entry-link{grid-column:3;grid-row:1/3}.entry-symbol{grid-row:1/3}.benefit-grid{grid-template-columns:1fr 1fr;gap:32px}.section-heading>p{font-size:.85rem}.flow-list{gap:15px}.flow-list h3{font-size:.88rem}.consult-grid{grid-template-columns:.8fr 1.2fr;gap:28px}.consult-copy h2{font-size:1.95rem}.form-card{padding:25px}.form-progress{gap:16px;font-size:.8rem}.optional-pair{grid-template-columns:1fr;gap:0}}
@media(max-width:760px){
 .wrap{width:calc(100% - 40px)}.preview-bar{font-size:.64rem;padding:6px 16px;line-height:1.65}.site-header{min-height:99px;gap:12px}.brand{gap:10px}.brand-symbol{width:44px;height:54px}.brand-mark{width:90px;height:90px;left:-23px;top:-22px}.brand strong{font-size:1.08rem;letter-spacing:.11em}.brand small{font-size:.62rem;margin-top:4px}.hero{gap:27px;padding-top:7px;padding-bottom:44px}.hero .eyebrow{font-size:.73rem;margin-bottom:16px;letter-spacing:0}.short-line{width:19px;margin-right:6px}.hero h1{font-size:clamp(1.7rem,7.55vw,3.2rem);line-height:1.45;letter-spacing:-.06em}.headline-stroke{width:165px;bottom:-33px;left:29%}.hero-lead{font-size:.95rem;line-height:1.95;margin-top:23px;letter-spacing:-.03em}.hero-reassurance{font-size:.8rem;margin-top:13px;line-height:1.8}.hero-actions{margin-top:20px;gap:11px}.hero-actions>.button{min-height:66px;font-size:1.08rem;padding:12px 22px;gap:13px}.hero-actions .line-brand{width:36px;height:36px}.hero-secondary{grid-template-columns:1fr 1fr;gap:9px}.hero-secondary .button{min-height:54px;font-size:.75rem;padding:10px 11px;gap:7px;justify-content:center;white-space:normal}.hero-secondary .button .icon{width:19px;height:19px}.hero-secondary .button .icon:last-child{display:none}.phone-link small{display:block;font-size:.65rem!important}.hero-note{font-size:.65rem;margin-top:12px;line-height:1.8}.hero-photo{height:326px;width:100%;margin:3px 0 0}.hero-photo .yard-image{height:252px;border-radius:23px;object-position:50% 57%}.hero-photo .mint-backdrop{width:440px;height:400px;right:-28px;top:-39px}.slogan-frame{width:154px;height:93px;right:7px;top:12px}.hero-photo .photo-slogan{width:290px;height:145px;left:-67px;top:-29px}.hero-photo .office-inset{width:44%;height:124px;bottom:5px;right:-4px;border-width:5px;border-radius:17px}.hero-photo figcaption{font-size:.6rem;left:7px;right:44%;bottom:22px;padding:0}.hero-photo figcaption strong{font-size:.61rem}.hero-photo figcaption span{font-size:inherit;margin-top:3px}.section{padding-block:53px;scroll-margin-top:20px}.section-heading{margin-bottom:25px}.section-heading>p{margin-top:17px;font-size:.85rem}.section-heading h2{font-size:1.7rem}.eyebrow{font-size:.78rem;margin-bottom:12px}.entry-section{padding-top:35px;padding-bottom:32px;border-radius:28px 28px 0 0}.entry-section .section-heading>p{font-size:.82rem}.entry-section h2{font-size:1.75rem;line-height:1.6;letter-spacing:-.05em}.mobile-only{display:block}.entry-grid{gap:12px}.entry-card{border-radius:24px;grid-template-columns:48px 1fr 32px;gap:6px 12px;padding:18px 16px}.entry-symbol{width:46px;height:46px;align-self:start}.entry-symbol img{width:26px;height:26px}.entry-card h3{font-size:1rem;letter-spacing:-.04em}.entry-card p{font-size:.74rem;line-height:1.8;margin:0}.entry-link{width:32px;height:32px;padding:0}.entry-link .icon{width:21px;height:21px}.section-note{font-size:.7rem;margin-top:20px}.benefit-grid{gap:26px 21px}.benefit-grid article,.benefit-grid article+article{padding:20px 0 0}.number{font-size:2rem;margin-bottom:17px}.benefit-grid h3{font-size:.97rem;line-height:1.7;margin-bottom:10px}.benefit-grid p{font-size:.84rem}.intro{margin-top:19px;font-size:.94rem}.compact-section{padding-top:0;padding-bottom:24px}.disclosure summary{font-size:.92rem;line-height:1.9}.photo-placeholder{min-height:120px;margin-bottom:14px}.flow-list{gap:0;margin:28px 0}.flow-list li>span{font-size:1.3rem}.flow-list h3{margin:0;font-size:1rem}.takehome{padding:25px}.takehome strong{font-size:1.05rem;white-space:normal}.about-grid{grid-template-columns:1fr;gap:28px}.office-photo img{aspect-ratio:1.4;border-radius:23px;object-position:50% 60%}.faq summary{font-size:.9rem;padding:19px 28px 19px 31px;line-height:1.95}.faq>p{padding-left:31px;padding-right:8px;font-size:.875rem}.consult-copy h2{font-size:2rem}.consult-copy>.button{max-width:none;font-size:1rem;min-height:62px}.preview-notice{margin:25px 0;padding:21px}.form-card{padding:26px 20px;border-radius:24px}.form-progress{gap:20px;font-size:.8rem}.site-footer{padding-top:32px;padding-bottom:114px}.mobile-contact{background:#fcfaf6f7}.mobile-contact .button{font-size:.8rem;padding:10px 13px;gap:7px}.mobile-contact .icon{width:20px;height:20px}.mobile-contact>a{font-size:.73rem}.complete-sample{padding:27px 23px}
}
@media(max-width:360px){.wrap{width:calc(100% - 32px)}.brand small{font-size:.55rem}.hero-actions>.button{font-size:.95rem;padding-inline:17px;gap:10px}.hero-secondary .button{font-size:.68rem;padding-inline:8px;gap:5px}.hero-secondary .button .icon{width:17px;height:17px}.hero-photo{height:285px}.hero-photo .yard-image{height:223px}.hero-photo .office-inset{height:110px}.hero-photo figcaption{font-size:.52rem;left:0}.hero-photo figcaption strong{font-size:.53rem}.entry-card{grid-template-columns:40px 1fr 28px;gap:5px 10px;padding:17px 13px}.entry-symbol{width:38px;height:38px}.entry-symbol img{width:23px;height:23px}.entry-link{width:28px;height:28px}.entry-card h3{font-size:.94rem}.entry-card p{font-size:.7rem}.benefit-grid{gap:23px 16px}.form-card{padding:23px 17px}.form-progress{gap:13px;font-size:.76rem}.mobile-contact .button{font-size:.75rem;padding-inline:10px}}
/* Decorative transparent image bounds must not create horizontal scrolling. */
main{overflow-x:clip}
:root{--green:#008747}
input:not([type=radio]):not([type=checkbox]),select,textarea{border-color:#768c84}.outline{border-color:#7a9092}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline-color:#bf5a16}
@media(min-width:1201px){.hero{padding-bottom:18px}.hero h1{font-size:clamp(3rem,4.9vw,4.9rem);line-height:1.29}.hero-lead{line-height:1.7;font-weight:400}.hero-actions>.button{font-size:2.15vw;padding-block:10px}.hero-actions .line-brand{width:54px;height:54px}.entry-section{padding-top:24px}.entry-section h2{font-size:3.15vw}.entry-card{grid-template-columns:70px 405px 1fr 52px}.entry-card h3{font-size:1.7vw}}
.headline-stroke{transform:scaleY(2)}
@media(max-width:360px){.hero-actions>.button{font-size:.875rem;gap:8px;padding-inline:15px}.hero-actions>.button>span{white-space:nowrap}.hero-actions .line-brand{width:30px;height:30px}.hero-actions>.button>.icon{width:22px;height:22px}.hero-secondary>a .icon{display:none}.hero-secondary>a{white-space:nowrap}}
@media(max-width:760px){.hero-lead .desktop-break,.consult-copy h2 br{display:block}.headline-stroke{transform:scaleY(1.5)}.site-header:has(>.inline-link){flex-wrap:wrap;gap:0;padding-block:18px}.site-header>.inline-link{margin-left:auto}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
/* Visible guide links also make the existing content easy to discover without JS. */
.topic-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin-top:20px}.topic-links a{display:inline-flex;align-items:center;min-height:44px;font-size:.875rem;font-weight:700;text-decoration:underline;text-underline-offset:5px}.faq p a{text-decoration:underline;text-underline-offset:4px}
.contact-details{margin-top:20px;padding:18px 20px;border:1px solid var(--line);border-radius:16px;font-size:.875rem}.contact-details strong{display:block}.contact-details a{display:flex;align-items:center;min-height:44px;overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:4px}.consult-copy>.text-button{display:flex;align-items:center;gap:8px}.mail-fallback{margin-top:18px}.mail-fallback summary{min-height:48px;cursor:pointer;font-weight:700}.mail-fallback p{margin:12px 0;font-size:.875rem;overflow-wrap:anywhere}.mail-fallback textarea{width:100%;margin-top:10px}.roles a{overflow-wrap:anywhere}.mobile-contact a.button{text-decoration:none;justify-content:center}
@media(max-width:760px){.topic-links{gap:4px 20px}.topic-links a{font-size:.8rem}}
