:root{--paper:#f5f3ed;--white:#fffefa;--ink:#293331;--muted:#65706a;--line:#d5d9d3;--accent:#ad705b;--warm:#eae6dd;--dark:#273633}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:82px}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.85 'Hiragino Kaku Gothic ProN','Yu Gothic','Noto Sans CJK JP',sans-serif;overflow-wrap:break-word}a{color:inherit}button,input,textarea{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.wrap{width:min(1240px,calc(100% - 80px));margin:auto}.header{position:sticky;top:0;z-index:50;background:rgba(245,243,237,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(15px)}.header-row{min-height:77px;display:flex;align-items:center;justify-content:space-between;gap:25px}.logo{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font:700 20px Arial,sans-serif;letter-spacing:.04em;white-space:nowrap}.logo-symbol{display:grid;place-items:center;width:40px;height:40px;background:var(--ink);color:var(--paper);font:italic 29px/1 Georgia,serif;letter-spacing:-.12em;padding-right:5px}.logo-symbol span{color:#c58b72}.site-nav{display:flex;align-items:center;gap:27px;font-size:12px;font-weight:700}.site-nav a{text-decoration:none;white-space:nowrap}.site-nav a:not(.nav-contact):hover,.footer a:hover{text-decoration:underline;text-underline-offset:5px}.nav-contact{padding:10px 16px;border:1px solid var(--ink)}.nav-contact span{margin-left:13px}.menu-toggle{display:none;background:none;border:0;padding:9px;cursor:pointer}.menu-toggle span{display:block;width:26px;height:2px;background:var(--ink);margin:6px}.section{padding:112px 0}.eyebrow{font:700 11px/1.4 Arial,sans-serif;letter-spacing:.16em;margin:0 0 34px}.eyebrow-line{display:inline-block;width:28px;height:1px;background:var(--accent);vertical-align:middle;margin-right:10px}h1,h2,h3,p{margin-top:0}h1,h2,.editorial blockquote{font-family:'Yu Mincho','Hiragino Mincho ProN','Noto Serif CJK JP',serif;font-weight:500;letter-spacing:-.045em}h1{font-size:clamp(42px,4.9vw,70px);line-height:1.36;margin-bottom:31px}h1 em{font-style:normal;color:#a06853}h2{font-size:clamp(33px,3.9vw,54px);line-height:1.42;margin-bottom:0}h3{line-height:1.5}.hero{padding:46px 0 55px}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:5%;min-height:635px}.hero-copy{padding:74px 0 30px;display:flex;align-items:flex-start;flex-direction:column}.hero .eyebrow{margin-bottom:48px}.lead{font-size:17px;line-height:2;max-width:560px;color:#4d5c55}.hero-actions{display:flex;align-items:center;gap:28px;flex-wrap:wrap;margin-top:27px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:57px;padding:13px 20px;border:1px solid var(--ink);font-weight:700;font-size:13px;text-decoration:none;cursor:pointer}.button.dark{background:var(--ink);color:#fff}.button.dark:hover{background:#455a50}.underlink{display:inline-block;font-size:13px;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}.underlink span{margin-left:13px}.hero-footnote{margin:auto 0 0;padding-top:42px;color:var(--muted);font-size:12px}.hero-image{position:relative;min-height:585px;background:#d8d1c7;overflow:hidden}.hero-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:62% center}.hero-caption{position:absolute;right:21px;bottom:22px;background:var(--white);padding:19px 24px;box-shadow:0 8px 35px #0002;display:flex;flex-direction:column;font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:16px;line-height:1.6}.hero-caption strong{font-weight:500;font-size:22px}.intro{border-top:1px solid var(--line);background:var(--white)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.intro-copy{padding-top:55px}.intro-copy p{max-width:560px;font-size:17px;line-height:2;color:#56635b;margin-bottom:22px}.intro-copy .underlink{margin-top:14px}.services{background:#ebeae3}.section-head{display:grid;grid-template-columns:1.2fr .65fr;align-items:end;gap:10%;margin-bottom:54px}.section-head>p{color:var(--muted);max-width:390px;margin:0 0 6px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.service-grid article{background:var(--white);min-height:399px;padding:29px 29px 27px;display:flex;align-items:flex-start;flex-direction:column}.service-no{font:30px Georgia,serif;color:#a4735c}.service-rule{height:1px;background:#c9cfc6;width:100%;margin:38px 0 32px}.service-grid h3{font-size:23px;font-weight:600;margin:0 0 16px;letter-spacing:-.04em}.service-grid p{font-size:14px;color:var(--muted);line-height:1.9}.service-grid a{font-size:13px;font-weight:700;text-decoration:none;margin-top:auto;border-bottom:1px solid;padding-top:18px}.editorial{background:var(--dark);color:#f5f3ed;padding:100px 0}.editorial-grid{display:grid;grid-template-columns:.7fr 2.3fr;gap:7%}.editorial .eyebrow{color:#d8a891;padding-top:15px}.editorial blockquote{font-size:clamp(31px,3.6vw,51px);line-height:1.58;margin:0}.editorial-line{grid-column:2;height:1px;background:#62766a;margin-top:17px}.process .section-head{margin-bottom:72px}.steps{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--ink)}.steps article{padding:23px 23px 0 0;border-right:1px solid var(--line);margin-right:23px}.steps article:last-child{border:0;margin-right:0}.steps span{font:34px Georgia,serif;color:var(--accent)}.steps h3{font-size:18px;margin:67px 0 14px}.steps p{font-size:14px;color:var(--muted);line-height:1.8}.pricing{background:#e3e5dc}.price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.price-card{position:relative;display:flex;flex-direction:column;background:var(--white);min-height:490px;padding:31px 28px}.price-card.featured{background:var(--dark);color:#fff}.featured-label{position:absolute;top:-28px;left:0;background:#b4795c;color:#fff;padding:6px 12px;font-size:11px;font-weight:700}.package{font:700 11px Arial,sans-serif;letter-spacing:.15em;color:#a26e55}.featured .package{color:#dba58a}.price-card h3{font-size:26px;font-weight:600;margin:24px 0 12px}.price-card>p:not(.package){font-size:14px;color:var(--muted);min-height:62px}.featured>p:not(.package){color:#d1ddd4}.price{font-size:12px;border-bottom:1px solid #c9d0c7;padding:12px 0 21px}.price strong{display:block;font:400 37px Georgia,serif;letter-spacing:-.05em;margin-top:5px}.price-card ul{list-style:none;margin:15px 0 28px;padding:0;font-size:13px}.price-card li{border-bottom:1px solid #e0e4db;padding:9px 0 9px 22px;position:relative}.featured li{border-color:#607168}.price-card li:before{content:'・';position:absolute;left:0;color:#b17757;font-weight:700}.price-card a{margin-top:auto;display:flex;justify-content:space-between;text-decoration:none;border:1px solid currentColor;padding:12px 14px;font-size:13px;font-weight:700}.price-card a:hover{background:#e4dbce;color:var(--ink)}.price-note{font-size:12px;color:var(--muted);margin:23px 0 0}.faq{background:var(--white)}.faq-grid{display:grid;grid-template-columns:.76fr 1.24fr;gap:11%}.faq-grid>div:first-child>p:last-child{max-width:310px;color:var(--muted);margin:26px 0}.faq-list{border-top:1px solid var(--ink)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;padding:22px 0;font-weight:700}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font-size:21px;font-weight:400;line-height:1}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{font-size:14px;color:var(--muted);padding:0 32px 20px 0;margin:0}.contact{background:#e6e9e2}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:11%}.contact-grid>div>p:not(.eyebrow){color:var(--muted);font-size:17px;max-width:490px;margin:25px 0}.contact-data{display:grid;grid-template-columns:100px 1fr;gap:15px 10px;margin-top:58px;font-size:14px}.contact-data span{font:700 10px Arial,sans-serif;letter-spacing:.13em;color:#829087;padding-top:6px}.contact-data address{font-style:normal}.contact-data a{overflow-wrap:anywhere}.contact-form{background:var(--white);padding:39px 40px;box-shadow:0 14px 35px #2736330c}.contact-form h3{font-size:24px;margin-bottom:13px}.contact-form>p{font-size:13px;color:var(--muted);margin-bottom:25px}.contact-form>label:not(.check){display:block;font-size:12px;font-weight:700;margin:18px 0 6px}.contact-form label span:not(.check span){color:#a97058}.contact-form input:not([type=checkbox]),.contact-form textarea{width:100%;border:1px solid #c4cec5;border-radius:0;padding:12px 13px;background:#fff;color:var(--ink);font-size:14px;resize:vertical;min-width:0}.check{display:flex;gap:12px;align-items:flex-start;font-size:12px;line-height:1.7;margin:22px 0}.check input{margin:5px 0 0;flex:none;accent-color:var(--ink)}.contact-form .button{width:100%}.form-status{min-height:22px;margin:12px 0 0!important}.footer{background:#202f2c;color:#e9efe9;padding:64px 0 25px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr .9fr;gap:7%;padding-bottom:65px}.footer .logo-symbol{background:#e9efe9;color:#202f2c}.footer p{font-size:13px;color:#b7c8ba;max-width:270px;margin:22px 0}.footer h3{font-size:12px;margin:3px 0 22px}.footer-grid>div>a:not(.logo),.footer-links a{display:block;font-size:13px;text-decoration:none;margin-bottom:10px}.footer address{max-width:330px;font-size:13px;color:#b7c8ba;font-style:normal}.footline{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #52685b;padding-top:23px;color:#adbcad;font-size:11px}.cookie-notice{position:fixed;z-index:80;left:16px;right:16px;bottom:16px;max-width:690px;background:var(--white);border:1px solid var(--line);box-shadow:0 13px 40px #18241d38;padding:16px 18px;display:flex;align-items:center;gap:20px}.cookie-notice[hidden]{display:none}.cookie-notice p{font-size:12px;line-height:1.7;margin:0}.cookie-notice button{border:0;background:var(--ink);color:#fff;padding:10px 14px;cursor:pointer;font-size:12px;font-weight:700;white-space:nowrap}.cookie-notice button span{margin-left:8px}.document{min-height:62vh}.document-inner{max-width:920px}.back{display:inline-block;text-decoration:none;font-size:13px;font-weight:700;margin-bottom:52px}.document h1{font-size:clamp(40px,5.2vw,64px)}.prose{max-width:760px;color:#56635b;font-size:15px;line-height:2}.prose h2{font-size:27px;color:var(--ink);margin:44px 0 13px}.prose p{margin-bottom:22px}.prose code{background:#e5eae1;padding:2px 4px;font-size:.92em;overflow-wrap:anywhere}.prose a{text-underline-offset:3px}.doc-contact{margin-top:38px}
@media(max-width:1060px){.wrap{width:calc(100% - 50px)}.site-nav{gap:15px}.hero-grid{gap:3%}.hero-copy{padding-top:45px}.hero-image{min-height:530px}.price-card{padding:26px 20px}.contact-grid{gap:5%}}
@media(max-width:760px){html{scroll-padding-top:70px}.wrap{width:calc(100% - 34px)}.header-row{min-height:68px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:68px;left:0;right:0;background:var(--paper);padding:13px 17px 23px;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #0001;flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav a{padding:11px 4px}.site-nav .nav-contact{padding:10px 14px;margin-top:7px}.section{padding:72px 0}.eyebrow{margin-bottom:24px}.hero{padding:31px 0 26px}.hero-grid,.intro-grid,.section-head,.editorial-grid,.faq-grid,.contact-grid{display:block}.hero-copy{padding:8px 0 29px}.hero .eyebrow{margin-bottom:27px}.hero h1{font-size:clamp(38px,8vw,61px)}.lead{font-size:16px}.hero-actions{margin-top:13px}.hero-footnote{padding-top:28px}.hero-image{min-height:0;aspect-ratio:1.22}.hero-caption{right:10px;bottom:10px;padding:10px 14px;font-size:12px}.hero-caption strong{font-size:17px}.intro-copy{padding-top:26px}.intro-copy p{font-size:16px}.section-head>p{margin-top:22px}.service-grid,.price-grid{grid-template-columns:1fr;gap:14px}.service-grid article{min-height:310px}.service-rule{margin:22px 0}.editorial{padding:73px 0}.editorial blockquote{font-size:clamp(29px,6vw,43px)}.editorial-line{margin-top:29px}.steps{grid-template-columns:repeat(2,1fr);gap:25px}.steps article{margin:0;padding-right:12px}.steps article:nth-child(2){border:0}.steps h3{margin-top:31px}.price-grid{gap:35px}.price-card{min-height:0}.featured-label{top:-26px}.price-card>p:not(.package){min-height:0}.faq-list{margin-top:35px}.contact-data{margin-top:32px}.contact-form{margin-top:42px}.footer-grid{grid-template-columns:1fr 1fr;gap:30px;padding-bottom:38px}.footer-grid>div:first-child{grid-column:1/-1}.document .back{margin-bottom:33px}}
@media(max-width:450px){.hero h1{font-size:38px}.hero-actions{flex-direction:column;align-items:stretch;gap:20px}.hero-actions .button{width:100%}.hero-actions .underlink{align-self:flex-start}.steps{grid-template-columns:1fr}.steps article{border-right:0;border-bottom:1px solid var(--line);padding-bottom:10px}.steps article:nth-child(2){border-bottom:1px solid var(--line)}.steps h3{margin-top:15px}.contact-data{grid-template-columns:1fr;gap:4px}.contact-data span:not(:first-child){margin-top:13px}.contact-form{padding:27px 20px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.footline{flex-wrap:wrap}.cookie-notice{left:9px;right:9px;bottom:9px;display:block}.cookie-notice button{margin-top:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
