@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/9cc5c0547f229dea.00y8kskkn0hyx.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/b0947914c9718a1e.1xjn85gt7t6qs.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/d0b60be57f16ee32.1xtu7gopqv2u0.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/1f9e983605289f29.3aak_kra40y8r.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:400;font-display:swap;src:url(../media/01e4147cff8141ee.p.3huc2loe0ie8a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/9cc5c0547f229dea.00y8kskkn0hyx.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/b0947914c9718a1e.1xjn85gt7t6qs.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/d0b60be57f16ee32.1xtu7gopqv2u0.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/1f9e983605289f29.3aak_kra40y8r.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:500;font-display:swap;src:url(../media/01e4147cff8141ee.p.3huc2loe0ie8a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/9cc5c0547f229dea.00y8kskkn0hyx.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/b0947914c9718a1e.1xjn85gt7t6qs.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/d0b60be57f16ee32.1xtu7gopqv2u0.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/1f9e983605289f29.3aak_kra40y8r.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(../media/01e4147cff8141ee.p.3huc2loe0ie8a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.cormorant_garamond_61468350-module__AnxpjW__className{font-family:Cormorant Garamond,Noto Serif JP,serif;font-style:normal}.cormorant_garamond_61468350-module__AnxpjW__variable{--font-en:"Cormorant Garamond", Noto Serif JP, serif}
:root{--color-bg:#fff;--color-bg-cream:#fff7ed;--color-bg-cream-soft:#fffaf2;--color-text:#4d4d4d;--color-text-light:#6b6660;--color-text-mute:#9a9590;--color-accent:#f97316;--color-accent-strong:#ea580c;--color-accent-soft:#fdba74;--color-line:#ebe6df;--color-logo-blue:#5c7cfa;--color-logo-blue-dark:#1e3a8a;--max-w:1200px;--section-py:clamp(80px, 12vw, 160px);--radius:8px;--shadow-sm:0 1px 3px #2d2a260f;--shadow-md:0 8px 32px #2d2a2614;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-jp);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:.04em;font-weight:400;line-height:1.85}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none;transition:opacity .2s,color .2s}a:hover{opacity:.7}button{font:inherit;cursor:pointer;color:inherit;background:0 0;border:none}.site-header{z-index:100;-webkit-backdrop-filter:blur(12px);background:#fffffff0;border-bottom:1px solid #0000;transition:border-color .3s,box-shadow .3s;position:fixed;top:0;left:0;right:0}.site-header.scrolled{border-bottom-color:var(--color-line);box-shadow:var(--shadow-sm)}.header-inner{justify-content:space-between;align-items:center;gap:24px;max-width:1440px;margin:0 auto;padding:14px 32px;display:flex}.logo{align-items:center;gap:12px;display:flex}.logo-mark{flex-shrink:0}.logo-text{flex-direction:column;line-height:1.15;display:flex}.logo-jp{font-family:var(--font-jp);letter-spacing:.08em;color:var(--color-text);font-size:18px;font-weight:500}.logo-en{font-family:var(--font-en);letter-spacing:.15em;color:var(--color-text-light);margin-top:2px;font-size:10px}.nav{letter-spacing:.12em;align-items:center;gap:18px;font-size:14px;display:flex}.nav a{color:var(--color-text);padding:8px 4px;position:relative}.nav a:after{content:"";background:var(--color-accent);width:0;height:1px;transition:width .3s var(--ease), left .3s var(--ease);position:absolute;bottom:0;left:50%}.nav a:hover{opacity:1}.nav a:hover:after{width:100%;left:0}.nav-sep{background:var(--color-line);width:1px;height:12px}.header-actions{align-items:center;gap:10px;display:flex}.icon-btn{border:1.5px solid var(--color-accent);width:46px;height:46px;color:var(--color-accent);transition:all .3s var(--ease);border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.icon-btn.mail{background:var(--color-accent);color:#fff}.icon-btn:hover{opacity:1;transform:translateY(-2px)}.icon-btn.phone:hover{background:var(--color-bg-cream)}.icon-btn.mail:hover{background:var(--color-accent-strong)}.menu-toggle{flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;display:none}.menu-toggle span{background:var(--color-text);width:22px;height:1.5px;transition:.3s var(--ease);display:block}.section{padding:var(--section-py) 32px;max-width:var(--max-w);margin:0 auto;position:relative}.section-head{text-align:left;margin-bottom:clamp(48px,6vw,80px)}.title-en{font-family:var(--font-en);color:var(--color-accent);letter-spacing:.08em;font-size:clamp(48px,7vw,88px);font-weight:500;line-height:1}.title-en.spread .char{opacity:0;transition:opacity .6s var(--ease), transform .6s var(--ease);display:inline-block;transform:translateY(20px)}.reveal.is-visible .title-en.spread .char{opacity:1;transform:translateY(0)}.title-sub{letter-spacing:.3em;color:var(--color-text-light);justify-content:flex-start;align-items:center;gap:10px;margin-top:14px;font-size:11px;display:flex}.title-sub .dot{background:var(--color-accent);border-radius:50%;flex-shrink:0;width:5px;height:5px;display:inline-block}.hero{width:100%;min-height:100vh;position:relative;overflow:hidden}.hero-image{z-index:0;position:absolute;inset:0}.hero-image:after{content:"";pointer-events:none;background:linear-gradient(135deg,#0000 30%,#0000002e 70%,#00000059 100%);position:absolute;inset:0}.hero-overlay{z-index:2;text-align:right;max-width:90%;position:absolute;bottom:clamp(60px,9vh,110px);right:clamp(28px,5vw,80px)}.hero-title{font-family:var(--font-jp);letter-spacing:.18em;color:#fff;text-shadow:0 2px 14px #00000047;font-size:clamp(20px,2.4vw,34px);font-weight:500;line-height:2}.hero-title .line{opacity:0;animation:heroLineIn 1s var(--ease) forwards;display:block;transform:translateY(20px)}.hero-title .line:first-child{animation-delay:.3s}.hero-title .line:nth-child(2){animation-delay:.6s}@keyframes heroLineIn{to{opacity:1;transform:translateY(0)}}.hero-sub{font-family:var(--font-en);letter-spacing:.3em;color:#ffffffe0;text-shadow:0 2px 14px #00000047;opacity:0;animation:heroLineIn 1s var(--ease) 1s forwards;margin-top:22px;font-size:13px}.scroll-indicator{z-index:2;flex-direction:column;align-items:center;gap:14px;display:flex;position:absolute;bottom:40px;left:clamp(20px,3vw,44px)}.scroll-indicator .scroll-text{writing-mode:vertical-rl;font-family:var(--font-en);letter-spacing:.35em;color:#ffffffe6;text-shadow:0 2px 14px #0000004d;font-size:12px}.scroll-indicator .scroll-line{transform-origin:top;background:linear-gradient(#ffffffb3,#0000);width:1px;height:60px;animation:2s ease-in-out infinite scrollPulse}@keyframes scrollPulse{0%{transform-origin:top;transform:scaleY(0)}50%{transform-origin:top;transform:scaleY(1)}51%{transform-origin:bottom;transform:scaleY(1)}to{transform-origin:bottom;transform:scaleY(0)}}.reveal{opacity:0;transition:opacity .9s var(--ease), transform .9s var(--ease);transform:translateY(40px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.section-news{padding-top:80px}.news-grid{grid-template-columns:1fr 2fr;align-items:start;gap:clamp(40px,6vw,80px);display:grid}.news-head .section-head,.news-head{margin-bottom:0}.news-list{border-top:1px solid var(--color-line);list-style:none}.news-item{border-bottom:1px solid var(--color-line)}.news-item summary{cursor:pointer;color:var(--color-text);grid-template-columns:110px 1fr auto;align-items:center;gap:28px;padding:22px 8px;list-style:none;transition:background .3s;display:grid}.news-item summary::-webkit-details-marker{display:none}.news-item summary::marker{content:""}.news-item summary:hover{background:var(--color-bg-cream-soft)}.news-item time{font-family:var(--font-en);letter-spacing:.08em;color:var(--color-accent);font-size:15px}.news-title{font-size:15px;line-height:1.6}.news-arrow{font-family:var(--font-en);color:var(--color-accent);transition:transform .3s var(--ease);font-size:26px;font-weight:300;line-height:1;display:inline-block}.news-item details[open] .news-arrow{transform:rotate(45deg)}.news-body{color:var(--color-text-light);animation:newsBodyIn .35s var(--ease);padding:6px 8px 32px;font-size:14.5px;line-height:2}.news-body p{margin-bottom:14px}.news-body p:last-child{margin-bottom:0}@keyframes newsBodyIn{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.news-more{justify-content:flex-end;margin-top:32px;display:flex}@keyframes newsItemIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.about-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);align-items:center;gap:0;display:grid;position:relative}.about-body{z-index:2;max-width:100%;padding-right:16px;position:relative}.about-lead{font-family:var(--font-jp);letter-spacing:.06em;color:var(--color-text);margin-bottom:40px;font-size:clamp(18px,2.2vw,25px);font-weight:500;line-height:1.9}.about-text{color:var(--color-text-light);font-size:15px;line-height:2.2}.about-visual{aspect-ratio:16/10;border-radius:var(--radius);justify-self:end;width:118%;max-height:520px;margin-left:-18%;position:relative;overflow:hidden}.about-visual:after{content:"";z-index:1;pointer-events:none;background:linear-gradient(90deg,#fff 0%,#fffffff2 18%,#fff9 32%,#ffffff26 48%,#0000 62%);position:absolute;inset:0}.about-toggle{margin-top:32px}.about-toggle.is-open:after{transform:rotate(90deg)}.profile{border-top:1px solid var(--color-line);animation:profileIn .45s var(--ease);margin-top:clamp(40px,5vw,60px);padding-top:clamp(40px,5vw,60px)}@keyframes profileIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.profile-heading{text-align:center;flex-direction:column;align-items:center;gap:8px;margin-bottom:32px;display:flex}.profile-heading-en{font-family:var(--font-en);letter-spacing:.06em;color:var(--color-accent);font-size:clamp(28px,3.4vw,40px);font-weight:500;line-height:1}.profile-heading-jp{letter-spacing:.3em;color:var(--color-text-light);font-size:11px}.profile-card{border:1px solid var(--color-line);border-radius:var(--radius);background:#fff;max-width:760px;margin:0 auto;padding:clamp(28px,4vw,48px)}.profile-title{font-family:var(--font-jp);letter-spacing:.12em;color:var(--color-accent);margin-bottom:12px;font-size:13px}.profile-name{font-family:var(--font-jp);letter-spacing:.15em;color:var(--color-text);border-bottom:1px solid var(--color-line);padding-bottom:22px;font-size:clamp(26px,3.8vw,36px);font-weight:500}.profile-career{flex-direction:column;gap:11px;margin-top:24px;margin-bottom:26px;list-style:none;display:flex}.profile-career li{color:var(--color-text);padding-left:22px;font-size:14.5px;line-height:1.75;position:relative}.profile-career li:before{content:"";background:var(--color-accent);border-radius:50%;width:8px;height:8px;position:absolute;top:.7em;left:4px}.profile-career small{color:var(--color-text-mute);letter-spacing:.04em;margin-left:4px;font-size:11.5px;display:inline-block}.profile-summary{color:var(--color-text-light);letter-spacing:.04em;font-size:14.5px;line-height:2}.section-feature{background:linear-gradient(180deg, transparent 0%, var(--color-bg-cream-soft) 30%, var(--color-bg-cream-soft) 70%, transparent 100%);max-width:none;padding-left:0;padding-right:0}.section-feature .section-head,.section-feature .feature-grid{max-width:var(--max-w);margin-left:auto;margin-right:auto;padding-left:32px;padding-right:32px}.feature-grid{grid-template-columns:repeat(2,1fr);gap:clamp(40px,5vw,64px);display:grid}.feature-card{flex-direction:column;gap:24px;display:flex}.feature-img{border-radius:var(--radius);border:1px solid var(--color-line);transition:transform .4s var(--ease), box-shadow .4s var(--ease);background:#fff;justify-content:center;align-items:center;padding:32px;display:flex}.feature-card:hover .feature-img{box-shadow:var(--shadow-md);transform:translateY(-4px)}.feature-img img{width:100%;max-width:220px;height:auto}.feature-body{padding:0 8px}.feature-head{border-bottom:1px solid var(--color-line);justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:16px;padding-bottom:16px;display:flex}.feature-head h3{font-family:var(--font-jp);letter-spacing:.1em;font-size:clamp(18px,2vw,22px);font-weight:500;line-height:1.5}.feature-num{font-family:var(--font-en);color:var(--color-accent);font-size:40px;font-weight:500;line-height:1}.feature-body p{color:var(--color-text-light);font-size:14.5px;line-height:2}.service-list{flex-direction:column;gap:100px;display:flex}.service-card{grid-template-columns:1fr 1fr;align-items:center;gap:60px;display:grid}.service-card.reverse{direction:rtl}.service-card.reverse>*{direction:ltr}.service-text h3{font-family:var(--font-jp);letter-spacing:.1em;margin-bottom:24px;font-size:clamp(22px,2.6vw,28px);font-weight:500;line-height:1.5}.service-text p{color:var(--color-text-light);margin-bottom:40px;font-size:15px;line-height:2.2}.btn-outline{font-family:var(--font-en);letter-spacing:.2em;color:var(--color-accent);border:1px solid var(--color-accent);transition:all .3s var(--ease);border-radius:999px;align-items:center;gap:10px;padding:14px 36px;font-size:14px;display:inline-flex}.btn-outline:after{content:"→";transition:transform .3s var(--ease)}.btn-outline:hover{opacity:1;background:var(--color-accent);color:#fff}.btn-outline:hover:after{transform:translate(4px)}.service-image{border-radius:var(--radius);background:var(--color-bg-cream);height:400px;position:relative;overflow:hidden}.service-card-wrap{flex-direction:column;display:flex}.service-toggle.is-open:after{transform:rotate(90deg)}.service-extra{background:var(--color-bg-cream-soft);border-radius:var(--radius);animation:serviceExtraIn .45s var(--ease);flex-direction:column;gap:clamp(40px,5vw,56px);margin-top:28px;padding:clamp(36px,5vw,56px) clamp(28px,4vw,48px);display:flex}@keyframes serviceExtraIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}.service-section-en{font-family:var(--font-en);letter-spacing:.06em;color:var(--color-accent);font-size:clamp(28px,3.2vw,40px);font-weight:500;line-height:1}.service-section-lead{letter-spacing:.1em;color:var(--color-text-light);margin-top:10px;font-size:13px}.base-contract{border:1px solid var(--color-line);border-radius:var(--radius);background:#fff;margin-top:28px;padding:clamp(24px,3vw,36px)}.base-contract-header{border-bottom:1px solid var(--color-line);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:20px;display:flex}.base-contract-name{font-family:var(--font-jp);letter-spacing:.1em;color:var(--color-text);font-size:clamp(18px,2.2vw,22px);font-weight:500}.base-contract-price{font-family:var(--font-en);align-items:baseline;gap:4px;display:flex}.base-contract-currency{color:var(--color-accent);font-size:20px}.base-contract-amount{color:var(--color-text);font-size:clamp(28px,3.6vw,36px);font-weight:500;line-height:1}.base-contract-amount-tilde{font-family:var(--font-jp);color:var(--color-text);margin-left:2px;font-size:1em;font-weight:500;line-height:1}.base-contract-unit{color:var(--color-text-light);letter-spacing:.08em;font-size:12.5px;font-family:var(--font-jp);margin-left:6px}.base-contract-included{flex-direction:column;gap:12px;margin-top:22px;list-style:none;display:flex}.base-contract-included li{color:var(--color-text);padding-left:24px;font-size:14.5px;line-height:1.8;position:relative}.base-contract-included li:before{content:"";background:var(--color-accent);border-radius:50%;width:9px;height:9px;position:absolute;top:.7em;left:4px}.base-contract-notes{border-top:1px dashed var(--color-line);color:var(--color-text-mute);letter-spacing:.04em;flex-direction:column;gap:6px;margin-top:22px;padding-top:18px;font-size:12px;line-height:1.75;list-style:none;display:flex}.base-contract-notes li{text-indent:-1em;white-space:pre-line;padding-left:1em}.options-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-top:28px;display:grid}.option-card{border:1px solid var(--color-line);border-radius:var(--radius);transition:border-color .3s, transform .3s var(--ease);background:#fff;flex-direction:column;gap:18px;padding:26px 22px;display:flex}.option-card:hover{border-color:var(--color-accent-soft);transform:translateY(-3px)}.option-card-header{border-bottom:1px solid var(--color-line);padding-bottom:14px}.option-name{font-family:var(--font-jp);letter-spacing:.12em;color:var(--color-text);font-size:18px;font-weight:500}.option-subtitle{color:var(--color-text-light);letter-spacing:.08em;margin-top:6px;font-size:12px}.option-price{font-family:var(--font-jp);color:var(--color-accent);letter-spacing:.04em;white-space:pre-line;font-size:14.5px;font-weight:500;line-height:1.6}.option-price-detail{color:var(--color-text-mute);letter-spacing:.04em;margin-top:6px;font-size:11.5px;line-height:1.6}.option-bullets{color:var(--color-text-light);flex-direction:column;gap:10px;font-size:13px;line-height:1.75;list-style:none;display:flex}.option-bullets li{padding-left:18px;position:relative}.option-bullets li:before{content:"";background:var(--color-accent);border-radius:50%;width:6px;height:6px;position:absolute;top:.6em;left:2px}.flow-list{counter-reset:flow;flex-direction:column;gap:28px;margin-top:28px;list-style:none;display:flex}.flow-list>li{border-bottom:1px dashed var(--color-line);grid-template-columns:64px 1fr;align-items:start;gap:24px;padding-bottom:24px;display:grid}.flow-list>li:last-child{border-bottom:none;padding-bottom:0}.flow-num{font-family:var(--font-en);color:var(--color-accent);padding-top:4px;font-size:32px;font-weight:500;line-height:1}.flow-body h5{font-family:var(--font-jp);letter-spacing:.08em;color:var(--color-text);margin-bottom:8px;font-size:16px;font-weight:500}.flow-body p{color:var(--color-text-light);font-size:14px;line-height:1.95}.company-grid{grid-template-columns:1fr 1fr;align-items:start;gap:80px;display:grid}.company-media{aspect-ratio:1;width:100%;max-height:560px;position:relative}.company-map{border-radius:var(--radius);width:88%;height:78%;box-shadow:var(--shadow-md);z-index:1;position:absolute;top:0;left:0;overflow:hidden}.company-map iframe{width:100%;height:100%;display:block}.company-photo{border-radius:var(--radius);width:52%;height:42%;box-shadow:var(--shadow-md);z-index:2;background:var(--color-line);position:absolute;bottom:0;right:0;overflow:hidden}.company-info{padding-top:20px}.company-table{flex-direction:column;margin-top:40px;display:flex}.company-table .row{border-bottom:1px solid var(--color-line);grid-template-columns:130px 1fr;align-items:start;gap:24px;padding:20px 4px;display:grid}.company-table dt{letter-spacing:.15em;color:var(--color-text-light);font-size:14px;font-weight:500}.company-table dd{color:var(--color-text);font-size:15px;line-height:1.9}.company-table dd a{color:var(--color-accent)}.section-contact{background:var(--color-bg-cream-soft);max-width:none;padding-left:32px;padding-right:32px}.section-contact .section-head,.section-contact .contact-form{max-width:900px;margin-left:auto;margin-right:auto}.hp-field{display:none}.contact-form{flex-direction:column;gap:32px;display:flex}.form-row{grid-template-columns:220px 1fr;align-items:start;gap:32px;display:grid}.form-label{letter-spacing:.1em;color:var(--color-text);white-space:nowrap;align-items:center;gap:12px;padding-top:14px;font-size:15px;display:flex}.badge{letter-spacing:.15em;font-size:11px;font-family:var(--font-jp);border-radius:3px;flex-shrink:0;padding:3px 10px;font-weight:500;display:inline-block}.badge-required{background:var(--color-accent);color:#fff}.badge-optional{color:var(--color-text-mute);border:1px solid var(--color-line);background:0 0}.form-input input[type=text],.form-input input[type=email],.form-input textarea{width:100%;font:inherit;color:var(--color-text);border:1px solid var(--color-line);border-radius:var(--radius);background:#fff;padding:14px 18px;font-size:15px;transition:border-color .2s,box-shadow .2s}.form-input input:focus,.form-input textarea:focus{border-color:var(--color-accent);outline:none;box-shadow:0 0 0 3px #f9731626}.form-input textarea{resize:vertical;min-height:140px}.agree-note{color:var(--color-text-light);margin-bottom:14px;font-size:13.5px;line-height:1.8}.agree-link{color:var(--color-accent);text-underline-offset:3px;text-decoration:underline}.agree-link:hover{opacity:.75}.privacy-page{background:linear-gradient(180deg, var(--color-bg-cream-soft) 0%, #fff 20%);min-height:100vh;padding:140px 32px 80px}.privacy-inner{max-width:820px;margin:0 auto}.privacy-header{border-bottom:1px solid var(--color-line);margin-bottom:60px;padding-bottom:36px}.privacy-title-en{font-family:var(--font-en);color:var(--color-accent);letter-spacing:.06em;margin-bottom:16px;font-size:clamp(42px,6vw,64px);font-weight:500;line-height:1}.privacy-title-jp{letter-spacing:.3em;color:var(--color-text-light);align-items:center;gap:10px;font-size:12px;display:flex}.privacy-title-jp .dot{background:var(--color-accent);border-radius:50%;width:5px;height:5px;display:inline-block}.privacy-content{color:var(--color-text);letter-spacing:.04em;font-size:14.5px;line-height:2}.privacy-content>p:first-child{color:var(--color-text-light);margin-bottom:12px}.privacy-content h2{font-family:var(--font-jp);letter-spacing:.1em;color:var(--color-text);border-left:3px solid var(--color-accent);margin-top:44px;margin-bottom:16px;padding-left:14px;font-size:17px;font-weight:500;line-height:1.4}.privacy-content p{color:var(--color-text-light);margin-bottom:14px}.privacy-content ul{margin-bottom:14px;padding-left:0;list-style:none}.privacy-content li{color:var(--color-text-light);margin-bottom:8px;padding-left:22px;line-height:1.9;position:relative}.privacy-content li:before{content:"";background:var(--color-accent);border-radius:50%;width:6px;height:6px;position:absolute;top:.75em;left:4px}.privacy-content .privacy-note{color:var(--color-text-mute);margin-top:4px;font-size:12.5px}.privacy-tool{background:var(--color-bg-cream-soft);border-left:3px solid var(--color-accent-soft);border-radius:0 var(--radius) var(--radius) 0;margin-bottom:16px;padding:18px 22px}.privacy-tool h3{font-family:var(--font-jp);letter-spacing:.08em;color:var(--color-text);margin-bottom:8px;font-size:14.5px;font-weight:500;line-height:1.5}.privacy-tool-vendor{color:var(--color-text-mute);letter-spacing:.04em;margin-left:6px;font-size:12px;font-weight:400;display:inline-block}.privacy-tool p{color:var(--color-text-light);margin-bottom:4px;font-size:13.5px;line-height:1.85}.privacy-tool-link{margin-top:4px!important;margin-bottom:0!important;font-size:12.5px!important}.privacy-tool-link a{color:var(--color-accent);text-underline-offset:3px;text-decoration:underline}.privacy-tool-link a:hover{opacity:.75}.privacy-back{border-top:1px solid var(--color-line);justify-content:center;margin-top:60px;padding-top:40px;display:flex}.check-label{cursor:pointer;align-items:center;gap:10px;font-size:14.5px;display:inline-flex}.check-label input[type=checkbox]{appearance:none;border:1.5px solid var(--color-accent);border-radius:4px;flex-shrink:0;width:20px;height:20px;transition:background .2s;position:relative}.check-label input[type=checkbox]:checked{background:var(--color-accent)}.check-label input[type=checkbox]:checked:after{content:"";border:2px solid #fff;border-width:0 2px 2px 0;width:6px;height:12px;position:absolute;top:1px;left:5px;transform:rotate(45deg)}.form-submit{text-align:center;flex-direction:column;align-items:center;gap:16px;margin-top:24px;display:flex}.form-error{color:#dc2626;border-radius:var(--radius);background:#fef2f2;border:1px solid #fecaca;max-width:560px;padding:12px 20px;font-size:13.5px;line-height:1.6}.submit-btn:disabled{opacity:.6;cursor:not-allowed}.submit-btn:disabled:hover{background:var(--color-accent);transform:none;box-shadow:0 4px 16px #f973164d}.submit-btn{font-family:var(--font-en);letter-spacing:.25em;color:#fff;background:var(--color-accent);transition:all .3s var(--ease);border-radius:999px;align-items:center;gap:14px;padding:18px 56px;font-size:16px;display:inline-flex;box-shadow:0 4px 16px #f973164d}.submit-btn:hover{background:var(--color-accent-strong);transform:translateY(-2px);box-shadow:0 8px 24px #f9731666}.submit-btn svg{transition:transform .3s var(--ease)}.submit-btn:hover svg{transform:translate(4px)}.site-footer{background:var(--color-bg-cream-soft);color:var(--color-text-light);border-top:1px solid var(--color-line);padding:60px 32px 30px}.footer-inner{max-width:var(--max-w);grid-template-columns:auto 1fr;align-items:start;gap:24px 80px;margin:0 auto;display:grid}.footer-brand{align-items:center;gap:14px;display:flex}.footer-name{font-family:var(--font-jp);letter-spacing:.1em;color:var(--color-text);font-size:18px;font-weight:500}.footer-name-en{font-family:var(--font-en);letter-spacing:.15em;color:var(--color-text-mute);margin-top:2px;font-size:11px}.footer-info{letter-spacing:.08em;font-size:13px;line-height:1.9}.footer-info a{color:var(--color-accent)}.footer-nav{letter-spacing:.08em;flex-wrap:wrap;grid-column:1/-1;gap:24px;margin-top:28px;font-size:13px;display:flex}.footer-nav a{color:var(--color-text-light);transition:color .2s}.footer-nav a:hover{color:var(--color-accent);opacity:1}.footer-copy{border-top:1px solid var(--color-line);text-align:center;font-family:var(--font-en);letter-spacing:.15em;color:var(--color-text-mute);grid-column:1/-1;margin-top:20px;padding-top:20px;font-size:12px}.thanks-wrap{text-align:center;background:linear-gradient(180deg, var(--color-bg-cream-soft) 0%, #fff 100%);flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:120px 32px 80px;display:flex}.thanks-icon{background:var(--color-accent);border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:32px;display:inline-flex;box-shadow:0 8px 24px #f973164d}.thanks-title-en{font-family:var(--font-en);color:var(--color-accent);letter-spacing:.05em;margin-bottom:20px;font-size:clamp(48px,7vw,72px);line-height:1}.thanks-title-jp{font-family:var(--font-jp);letter-spacing:.1em;margin-bottom:32px;font-size:clamp(20px,2.5vw,26px);font-weight:500}.thanks-body{max-width:560px;color:var(--color-text-light);margin-bottom:48px;font-size:15px;line-height:2.1}.thanks-back{font-family:var(--font-en);letter-spacing:.2em;color:var(--color-accent);border:1px solid var(--color-accent);transition:all .3s var(--ease);border-radius:999px;align-items:center;gap:10px;padding:14px 36px;font-size:14px;display:inline-flex}.thanks-back:hover{opacity:1;background:var(--color-accent);color:#fff}@media (max-width:960px){.nav,.nav-sep{display:none}.menu-toggle{display:flex}.logo-jp{font-size:15px}.logo-en{font-size:9px}.hero-overlay{max-width:85%;bottom:80px;right:24px}.hero-title{letter-spacing:.15em;font-size:clamp(18px,5vw,26px);line-height:1.9}.hero-sub{letter-spacing:.25em;margin-top:16px;font-size:11px}.scroll-indicator{bottom:24px;left:16px}.scroll-indicator .scroll-line{height:40px}.nav.is-open{box-shadow:var(--shadow-md);border-top:1px solid var(--color-line);background:#fff;flex-direction:column;gap:16px;padding:24px 32px;display:flex;position:fixed;top:70px;left:0;right:0}.nav.is-open .nav-sep{display:none}.feature-grid{grid-template-columns:1fr;gap:48px}.service-card,.service-card.reverse,.company-grid,.about-grid{direction:ltr;grid-template-columns:1fr;gap:32px}.service-image{height:280px}.service-extra{padding:28px 20px}.base-contract{padding:22px 20px}.base-contract-header{flex-direction:column;align-items:flex-start;gap:4px}.options-grid{grid-template-columns:1fr;gap:16px}.flow-list>li{grid-template-columns:48px 1fr;gap:16px}.flow-num{font-size:26px}.about-body{padding-right:0}.about-visual{aspect-ratio:16/10;justify-self:stretch;width:100%;max-height:280px;margin-left:0}.about-visual:after{background:linear-gradient(#fff 0%,#fffc 8%,#0000 25%)}.company-media{aspect-ratio:auto;flex-direction:column;gap:16px;height:auto;max-height:none;display:flex}.company-map,.company-photo{width:100%;height:240px;position:static}.form-row{grid-template-columns:1fr;gap:12px}.form-label{padding-top:0}.news-grid{grid-template-columns:1fr;gap:32px}.news-item summary{grid-template-columns:90px 1fr auto;gap:16px;padding:18px 4px}.news-item time,.news-title{font-size:14px}.news-body{padding-bottom:24px;font-size:13.5px}.company-table .row{grid-template-columns:90px 1fr;gap:16px;padding:14px 4px}.footer-inner{grid-template-columns:1fr;gap:24px}}@media (max-width:560px){.header-inner{gap:12px;padding:12px 18px}.logo-en{display:none}.section{padding-left:20px;padding-right:20px}.icon-btn{width:40px;height:40px}.icon-btn svg{width:18px;height:18px}.hero-title{letter-spacing:.05em}}
