:root{--ink:#0b1020;--ink-2:#15213a;--muted:#5e6b7f;--line:#dbe1ea;--paper:#f8fafc;--white:#fff;--chrome:#c8d3df;--cyan:#2ec4b6;--blue:#dbe3ee;--ember:#ff4500;--amber:#ff9f1c;--font-sans:'Noto Sans JP',sans-serif;--font-display:'Manrope','Noto Sans JP',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:var(--font-sans);line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-shell{overflow:hidden}.section-wrap{width:min(1160px,calc(100% - 80px));margin:0 auto}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 40px;background:rgba(244,247,248,.86);border-bottom:1px solid rgba(217,227,232,.8);position:sticky;top:0;z-index:20;backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:12px}.brand-mark{width:32px;height:32px;border:1.5px solid var(--ink);display:inline-grid;place-items:center;transform:rotate(30deg);position:relative}.brand-mark:before,.brand-mark:after{content:"";position:absolute;background:var(--ink);width:1px;height:38px;transform:rotate(60deg)}.brand-mark:after{transform:rotate(-60deg)}.brand-mark span{width:5px;height:5px;border-radius:50%;background:var(--ember);z-index:1}.brand-lockup{display:flex;flex-direction:column;line-height:1.2}.brand-lockup strong{font-family:var(--font-display);font-size:13px;letter-spacing:.13em}.brand-lockup small{font-size:9px;color:var(--muted);letter-spacing:.08em;margin-top:4px}.site-nav{display:flex;align-items:center;gap:28px;font-size:12px;font-weight:600;letter-spacing:.06em}.site-nav a{transition:color .2s ease}.site-nav a:hover,.site-nav a.active{color:#ff4500}.nav-cta{background:var(--ink);color:#fff!important;padding:11px 16px;border-radius:1px}.nav-cta span{color:var(--amber);font-size:16px;margin-left:8px}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span{display:block;width:24px;height:1px;background:var(--ink);margin:5px}.page-panel{display:none;min-height:calc(100vh - 84px)}.page-panel.active{display:block}.hero{min-height:660px;display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:center;padding:50px 0 72px}.eyebrow{font:600 10px/1.2 var(--font-display);letter-spacing:.18em;color:#5e737e;margin:0 0 22px;display:flex;align-items:center;gap:12px}.eyebrow-line{height:1px;width:33px;background:#7e929e}.hero h1{font-size:clamp(48px,6.4vw,86px);line-height:1.12;letter-spacing:-.07em;margin:0 0 25px;font-weight:900}.hero h1 em,.large-quote em,.home-contact em,.founder-copy h2 em{font-style:normal;color:#ff4500}.hero-lead{font-size:15px;line-height:2.1;max-width:480px;color:#4f626d;margin:0}.hero-actions{display:flex;align-items:center;gap:28px;margin-top:36px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:14px 19px;font-size:12px;letter-spacing:.07em;font-weight:700;min-width:172px;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--ink);color:#fff}.button-dark span{color:var(--amber);font-size:18px}.button-outline{border:1px solid #5f737d;color:var(--ink)}.button-outline:hover{background:var(--ink);color:#fff}.text-link{font:600 11px var(--font-display);letter-spacing:.08em;border-bottom:1px solid var(--ink);padding-bottom:5px}.text-link span{font-size:17px;margin-left:9px}.hero-note{display:flex;align-items:center;gap:9px;color:#7a8a92;font:500 9px var(--font-display);letter-spacing:.1em;margin-top:62px}.pulse-dot{display:inline-block;width:7px;height:7px;background:var(--ember);border-radius:50%;box-shadow:0 0 0 5px rgba(255,69,0,.2)}.hero-visual{height:540px;position:relative;background:linear-gradient(145deg,#e7edef,#c3d0d6);overflow:hidden}.hero-visual:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 49.8%,rgba(255,255,255,.72) 50%,transparent 50.3%),linear-gradient(45deg,transparent 49.8%,rgba(76,99,111,.13) 50%,transparent 50.3%);background-size:160px 160px;opacity:.55}.hero-visual:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 53% 45%,rgba(255,255,255,.9),transparent 25%),linear-gradient(180deg,transparent 60%,rgba(16,26,35,.1));mix-blend-mode:screen}.orbit{position:absolute;border:1px solid rgba(16,26,35,.28);border-radius:50%;width:430px;height:160px;left:50%;top:48%;transform:translate(-50%,-50%) rotate(-30deg);z-index:2}.orbit-a{width:500px;height:190px;transform:translate(-50%,-50%) rotate(58deg)}.orbit-b{width:330px;height:480px;transform:translate(-50%,-50%) rotate(22deg);border-color:rgba(255,255,255,.75)}.orbit-c{width:265px;height:265px;transform:translate(-50%,-50%) rotate(0);border-style:dashed;border-color:rgba(16,26,35,.17)}.hero-cube{position:absolute;width:175px;height:175px;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-28deg) skewY(8deg);z-index:3;filter:drop-shadow(22px 28px 14px rgba(35,56,68,.22))}.cube-face{position:absolute;background:linear-gradient(140deg,#eaf0f2,#71838f);border:1px solid rgba(16,26,35,.3)}.cube-front{inset:0;display:grid;place-items:center;font:800 51px var(--font-display);letter-spacing:-.1em;color:rgba(16,26,35,.7);background:linear-gradient(135deg,#f3f7f8,#8296a2)}.cube-side{width:65px;height:175px;right:-64px;top:0;transform:skewY(-39deg);transform-origin:left top;background:linear-gradient(160deg,#8799a4,#50626e)}.cube-top{width:175px;height:65px;left:0;top:-64px;transform:skewX(-51deg);transform-origin:left bottom;background:linear-gradient(125deg,#fbfdfe,#a7b8c1)}.visual-label{position:absolute;z-index:4;font:600 9px var(--font-display);letter-spacing:.14em;color:#50636e}.label-top{top:28px;right:26px;writing-mode:vertical-rl}.label-bottom{bottom:22px;left:24px}.label-bottom span{color:#fff;font-size:17px;margin-left:8px}.intro-strip{padding:112px 0 116px;display:grid;grid-template-columns:1.05fr 1fr;gap:100px;border-top:1px solid var(--line)}.intro-strip h2,.service-overview h2,.home-contact h2{font-size:clamp(30px,4vw,52px);letter-spacing:-.06em;line-height:1.25;margin:0}.intro-strip>p{max-width:440px;margin:30px 0 0;color:#5b6b74;font-size:14px;line-height:2.15}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:34px}.section-heading h2{margin:0;font-size:38px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{min-height:275px;background:var(--ink);color:#fff;padding:23px;position:relative;overflow:hidden;transition:transform .25s ease}.service-card:hover{transform:translateY(-5px)}.service-card:before{content:"";position:absolute;width:170px;height:170px;border:1px solid rgba(46,196,182,.3);border-radius:50%;right:-65px;bottom:-55px}.service-card:after{content:"";position:absolute;width:115px;height:115px;border:1px solid rgba(46,196,182,.22);border-radius:50%;right:-28px;bottom:-28px}.service-card-muted{background:#dbe3ee;color:var(--ink)}.service-index{font:600 11px var(--font-display);color:var(--cyan);letter-spacing:.1em}.service-card-muted .service-index{color:#526b79}.service-icon{display:block;font:400 46px/1 var(--font-display);margin:40px 0 22px;color:#bde9ed}.service-card-muted .service-icon{color:var(--ink)}.service-card h3{font-size:20px;line-height:1.5;margin:0;letter-spacing:-.04em}.service-card p{font-size:11px;color:#b9c6cc;margin:10px 0 0}.service-card-muted p{color:#54656d}.card-arrow{position:absolute;right:22px;top:21px;font-size:21px;color:var(--cyan)}.status-pill{display:inline-block;color:#5a707c;background:rgba(255,255,255,.5);font:700 9px var(--font-display);letter-spacing:.16em;padding:5px 8px}.service-card .status-pill{position:absolute;bottom:22px;left:22px}.home-contact{border-top:1px solid var(--line);padding:100px 0 118px;display:flex;align-items:end;justify-content:space-between}.page-inner{background:#f8fafc}.page-hero{padding:90px 0 76px;border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(50px,7vw,92px);letter-spacing:-.08em;line-height:1;margin:0 0 24px}.page-hero>p:last-child{font-size:15px;color:#5d6e78;margin:0}.company-layout{display:grid;grid-template-columns:1fr 1fr;gap:110px;padding:105px 0 120px}.large-quote{font-size:clamp(29px,3.8vw,48px);font-weight:800;letter-spacing:-.07em;line-height:1.35;margin:0 0 35px}.company-statement>p:last-child{color:#5d6e78;max-width:490px;font-size:14px;line-height:2.2}.info-card{border-top:2px solid var(--ink);padding-top:18px}.info-card dl{margin:0}.info-card dl>div{display:grid;grid-template-columns:100px 1fr;gap:25px;border-bottom:1px solid var(--line);padding:17px 0;font-size:13px}.info-card dt{font-size:10px;color:#73848d;letter-spacing:.11em;font-family:var(--font-display)}.info-card dd{margin:0}.info-card a{border-bottom:1px solid #93adb9}.values{border-top:1px solid var(--line);padding:92px 0 120px}.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.value-grid article{border-top:1px solid #8296a0;padding-top:16px}.value-grid span{font:600 11px var(--font-display);color:#6e8a98}.value-grid h3{font-size:19px;margin:29px 0 13px}.value-grid p{font-size:13px;color:#667781;line-height:2}.service-detail-list{padding:40px 0 120px}.detail-block{display:grid;grid-template-columns:130px 1fr;gap:25px;padding:65px 0;border-bottom:1px solid var(--line)}.detail-number{font:500 74px/1 var(--font-display);letter-spacing:-.1em;color:#bccbd2}.detail-body h2{font-size:clamp(31px,4vw,55px);line-height:1.2;letter-spacing:-.07em;margin:0 0 24px}.detail-lead{color:#5b6d77;max-width:670px;font-size:14px;line-height:2.1}.detail-lead strong{color:var(--ink);margin-left:4px}.class-cards{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:40px 0 28px}.class-card{min-height:172px;padding:20px 22px;background:var(--ink);color:#fff;display:flex;flex-direction:column;align-items:flex-start;transition:transform .2s ease}.class-card:hover{transform:translateY(-3px)}.class-card-light{background:#dbe3ee;color:var(--ink)}.class-card span{font:700 9px var(--font-display);letter-spacing:.15em;color:var(--cyan)}.class-card-light span{color:#526d7a}.class-card strong{font-size:19px;margin-top:24px}.class-card small{font-size:11px;color:#bdc9ce}.class-card b{font:600 10px var(--font-display);letter-spacing:.08em;margin-top:auto}.notice-bar{display:flex;align-items:center;gap:15px;padding:14px 16px;border:1px solid #c5d4da;font-size:11px;color:#637681;flex-wrap:wrap}.notice-bar strong{color:var(--ink)}.method-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:40px 0 58px}.method-card{padding:25px;background:#e9eef5;min-height:200px}.method-card-accent{background:#d7e6e5}.method-tag{font:700 10px var(--font-display);letter-spacing:.16em;color:#66808c}.method-card h3{font-size:25px;letter-spacing:-.04em;margin:25px 0 12px}.method-card p{font-size:12px;color:#5f717a;line-height:1.9}.material{display:inline-block;border-top:1px solid #a8bac2;padding-top:7px;font:600 9px var(--font-display);letter-spacing:.1em}.price-heading{display:flex;align-items:end;justify-content:space-between;border-bottom:2px solid var(--ink);padding-bottom:12px}.price-heading .eyebrow{margin-bottom:10px}.price-heading h3{font-size:24px;margin:0}.price-heading>span{font-size:10px;color:#788992}.price-table-wrap{overflow-x:auto}.price-table{width:100%;border-collapse:collapse;font-size:12px;min-width:650px}.price-table th,.price-table td{border-bottom:1px solid var(--line);padding:15px 13px;text-align:left;vertical-align:top}.price-table thead th{background:var(--ink);color:#fff;font:600 10px var(--font-display);letter-spacing:.09em}.price-table tbody th{width:150px;font-weight:600;background:#e8eef5}.price-table td:last-child{font-weight:700;white-space:nowrap}.price-notes{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:18px;color:#7a8990;font-size:10px;line-height:1.9}.space-features{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;margin:42px 0}.space-features>div{background:#e9eef5;padding:22px}.space-features span{font:600 10px var(--font-display);color:#6a8490}.space-features strong{display:block;font-size:17px;margin:27px 0 5px}.space-features p{font-size:11px;color:#6c7c83;margin:0}.preparing-box{border:1px solid #b8cbd2;padding:25px;display:grid;grid-template-columns:auto 1fr;gap:8px 15px;align-items:center}.preparing-box strong{font-size:16px}.preparing-box p{grid-column:2;margin:0;color:#6c7d85;font-size:12px}.founder-layout{display:grid;grid-template-columns:400px 1fr;gap:120px;padding:105px 0 105px}.photo-frame{aspect-ratio:3/4;background:#cbd5e1;position:relative;overflow:hidden}.photo-frame:after{content:"";position:absolute;inset:12px;border:1px solid rgba(255,255,255,.6);pointer-events:none}.photo-frame img{width:100%;height:100%;object-fit:cover;object-position:center 25%;filter:saturate(.7) contrast(1.04)}.photo-caption{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding:13px 0}.photo-caption span{font:600 9px var(--font-display);letter-spacing:.14em;color:#758791}.photo-caption strong{font-size:14px}.founder-copy{padding-top:18px}.founder-copy h2{font-size:clamp(30px,3.6vw,50px);line-height:1.35;letter-spacing:-.07em;margin:0 0 38px}.founder-copy>p{font-size:14px;color:#61717a;line-height:2.15;max-width:560px}.signature{border-top:1px solid var(--line);padding-top:20px;margin-top:42px!important;font-size:12px!important;line-height:1.9!important;color:#53666f!important}.signature strong{font-size:16px;color:var(--ink)}.message-bottom{border-top:1px solid var(--line);padding:76px 0 110px;display:flex;justify-content:space-between;align-items:end}.message-bottom p{font-size:27px;line-height:1.6;font-weight:700;letter-spacing:-.05em;margin:0}.message-bottom span{font:600 10px var(--font-display);letter-spacing:.12em;color:#7a8c95}.faq-list{padding:42px 0 84px;max-width:900px}.faq-list details{border-top:1px solid #b8c9d0}.faq-list details:last-child{border-bottom:1px solid #b8c9d0}.faq-list summary{list-style:none;cursor:pointer;padding:23px 4px;display:grid;grid-template-columns:75px 1fr 26px;gap:12px;align-items:center;font-size:14px;font-weight:600}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary span{font:600 10px var(--font-display);color:#76909c}.faq-list summary b{font:300 24px var(--font-display);color:#78909b;text-align:right;transition:transform .2s ease}.faq-list details[open] summary b{transform:rotate(45deg);color:var(--ink)}.faq-list details div{padding:0 42px 23px 87px;color:#63747d;font-size:13px;line-height:2}.faq-list details p{margin:0}.faq-cta{border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;padding:45px 0 100px}.faq-cta p{font-size:20px;font-weight:600;margin:0}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:110px;padding:106px 0 98px}.contact-lead>p:nth-of-type(2){font-size:14px;color:#61727c;line-height:2.15;max-width:430px}.contact-hours{border-top:1px solid var(--line);margin-top:54px;padding-top:15px;display:grid;gap:3px}.contact-hours span,.contact-card small,.contact-footnote span{font:600 9px var(--font-display);letter-spacing:.15em;color:#718891}.contact-hours strong{font-size:15px}.contact-hours small{font:400 10px var(--font-sans);letter-spacing:0;color:#778890}.contact-cards{display:flex;flex-direction:column;gap:12px}.contact-card{display:grid;grid-template-columns:46px 1fr 25px;align-items:center;gap:18px;border:1px solid #c4d2d8;padding:19px 21px;transition:background .2s ease,transform .2s ease}.contact-card:not(.contact-address):hover{background:#e5edf0;transform:translateX(4px)}.contact-icon{width:37px;height:37px;border:1px solid #8ca5b0;border-radius:50%;display:grid;place-items:center;font:600 16px var(--font-display);color:#55717d}.contact-card span:not(.contact-icon){display:flex;flex-direction:column}.contact-card strong{font-size:14px;margin-top:3px}.contact-card>b{font:400 19px var(--font-display);color:#6e8994}.contact-footnote{border-top:1px solid var(--line);padding:20px 0 100px;display:flex;gap:25px}.contact-footnote p{margin:0;color:#73828a;font-size:11px}.site-footer{background:var(--ink);color:#fff}.footer-top{display:flex;justify-content:space-between;align-items:center;padding:46px 0 40px}.brand-footer .brand-mark{border-color:#d5e4e9}.brand-footer .brand-mark:before,.brand-footer .brand-mark:after{background:#d5e4e9}.brand-footer .brand-lockup small{color:#9baeb7}.footer-links{display:flex;gap:25px;font:500 10px var(--font-display);letter-spacing:.08em;color:#bbc9ce}.footer-links a:hover{color:var(--cyan)}.footer-bottom{border-top:1px solid rgba(255,255,255,.17);display:flex;justify-content:space-between;padding:18px 0 23px;color:#7f969e;font:500 9px var(--font-display);letter-spacing:.13em}.reveal{animation:rise .75s both}@keyframes rise{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media (max-width:900px){.site-header{padding:0 22px}.menu-toggle{display:block;z-index:22}.site-nav{position:absolute;top:84px;left:0;right:0;background:rgba(248,250,252,.98);border-bottom:1px solid var(--line);display:none;flex-direction:column;align-items:stretch;padding:18px 22px;gap:0}.site-nav.open{display:flex}.site-nav a{padding:13px 4px;border-bottom:1px solid var(--line)}.site-nav .nav-cta{margin-top:12px;border:0;padding:13px 16px}.section-wrap{width:min(100% - 44px,700px)}.hero{grid-template-columns:1fr;padding-top:48px;min-height:0}.hero-visual{height:400px;order:-1}.hero-copy{padding:10px 0 32px}.hero h1{font-size:clamp(45px,12vw,76px)}.intro-strip,.company-layout,.founder-layout,.contact-layout{grid-template-columns:1fr;gap:44px}.intro-strip{padding:75px 0}.intro-strip>p{margin-top:0}.service-grid,.value-grid{grid-template-columns:1fr}.service-card{min-height:235px}.home-contact{align-items:start;gap:35px;flex-direction:column}.detail-block{grid-template-columns:60px 1fr;gap:10px}.detail-number{font-size:46px}.page-hero{padding:70px 0 55px}.company-layout{padding:70px 0 80px}.values{padding:70px 0 80px}.founder-layout{padding:70px 0}.founder-photo-wrap{max-width:400px}.contact-layout{padding:70px 0}.footer-top{align-items:flex-start;gap:30px;flex-direction:column}.footer-links{flex-wrap:wrap;gap:15px 20px}.price-notes{grid-template-columns:1fr}.space-features{grid-template-columns:1fr}.message-bottom{gap:25px;align-items:start;flex-direction:column}}
@media (max-width:560px){.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.hero-visual{height:340px}.orbit-b{height:350px}.hero-cube{width:135px;height:135px}.cube-side{width:50px;height:135px;right:-49px}.cube-top{width:135px;height:50px;top:-49px}.cube-front{font-size:39px}.section-heading{align-items:flex-start;gap:15px;flex-direction:column}.section-heading h2{font-size:31px}.detail-block{padding:43px 0}.detail-number{font-size:34px}.detail-body h2{font-size:34px}.class-cards,.method-grid{grid-template-columns:1fr}.class-card{min-height:150px}.faq-list summary{grid-template-columns:55px 1fr 20px;font-size:13px}.faq-list details div{padding-left:67px}.faq-cta{align-items:flex-start;gap:25px;flex-direction:column}.contact-card{grid-template-columns:38px 1fr 20px;padding:16px 14px}.contact-card strong{font-size:12px}.contact-footnote{gap:12px;flex-direction:column}.footer-bottom{gap:10px;flex-direction:column}.price-heading{align-items:flex-start;gap:8px;flex-direction:column}}
 .hero-copy-line{white-space:nowrap}.hero h1 em{white-space:nowrap}@media (max-width:560px){.hero h1{font-size:clamp(34px,9.5vw,58px);line-height:1.2}.responsive-break{display:none}}
