@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap');
:root{--paper:#f4f3ed;--ink:#202921;--muted:#667064;--red:#d9442b;--line:#d4d8cd;--dark:#202d25;--font:'DM Sans','Noto Sans JP',sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-size:15px;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #50765a;outline-offset:5px}input:focus,textarea:focus,select:focus{outline:2px solid var(--red);outline-offset:3px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:600}p{line-height:1.95}img{max-width:100%}.wrap{max-width:1320px;margin:0 auto;padding-left:64px;padding-right:64px}.header{height:100px;padding:0 48px;display:flex;align-items:center;gap:44px;border-bottom:1px solid var(--line);position:relative;z-index:20;background:var(--paper)}.brand{display:inline-flex;align-items:center;gap:10px;font-size:28px;font-weight:700;letter-spacing:-1.4px;white-space:nowrap}.brand-dx{font-weight:500}.header nav{display:flex;gap:30px;margin-left:auto;font-size:12px;font-weight:500}.header nav a:hover{color:var(--red)}.header-actions{display:flex;align-items:center;gap:26px}.language{display:flex;align-items:center;gap:8px;font-size:11px}.language button{border:0;padding:5px 0;background:none;color:#73786f;font-weight:600;font-size:11px}.language .active{color:var(--ink);border-bottom:1px solid currentColor}.language span{color:#a8afa1}.button{display:inline-flex;justify-content:space-between;gap:38px;align-items:center;padding:19px 26px;font-size:13px;font-weight:500;border:1px solid transparent;transition:background .2s,transform .2s;line-height:1.4}.button:hover{transform:translateY(-2px)}.button span:last-child{font-size:21px;line-height:1}.button.small{font-size:12px;padding:13px 18px;gap:24px}.dark{background:var(--dark);color:white}.dark:hover{background:#384f3f}.red{background:var(--red);color:white}.red:hover{background:#bd3924}.menu{display:none}.hero{display:grid;grid-template-columns:1.08fr 1fr;gap:24px;padding-top:76px;padding-bottom:66px;align-items:center}.eyebrow{font-size:10px;font-weight:600;letter-spacing:1.65px;line-height:1.6;display:flex;align-items:center;gap:12px}.red-dot{width:7px;height:7px;background:var(--red);border-radius:50%;display:inline-block}.hero h1{font-size:clamp(44px,4.85vw,68px);line-height:1.48;letter-spacing:-2.2px;margin:27px 0 24px;font-weight:600}.hero-description{font-size:14px;line-height:2.15;color:#576052}.hero-actions{display:flex;align-items:center;gap:26px;margin-top:32px}.text-link{display:inline-flex;align-items:center;gap:21px;font-size:12px;font-weight:500;padding:8px 0;border-bottom:1px solid var(--ink)}.text-link:hover{color:var(--red);border-color:var(--red)}.hero-note{font-size:10px;margin-top:20px;color:var(--muted)}.hero-art{align-self:stretch;position:relative;display:flex;flex-direction:column;justify-content:center;min-width:0}.art-label{font-size:9px;letter-spacing:1.5px;line-height:1.65;margin-left:15px;position:absolute;top:6px;left:0;color:#5e695b}.sculpture{width:100%;height:auto;margin-top:5px}.art-bottom{font-size:8px;letter-spacing:1.4px;display:flex;justify-content:space-between;padding:0 15px;color:#596551}.principles{border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.principles .wrap{display:flex;align-items:center;gap:38px;min-height:81px;font-size:13px;font-weight:500;letter-spacing:1px}.plus{color:var(--red);font-size:20px;font-weight:400}.principle-end{font-size:9px;letter-spacing:1.2px;color:var(--muted);margin-left:auto}.section{padding-top:104px;padding-bottom:105px}.section-head{display:grid;grid-template-columns:1fr 2.05fr;margin-bottom:54px;gap:42px}.section-no{color:var(--red);font-size:11px;letter-spacing:0}.section-head>.eyebrow{align-self:start;padding-top:10px}h2{font-size:38px;line-height:1.55;letter-spacing:-.6px}.section-head>div{display:flex;gap:60px;justify-content:space-between;align-items:flex-end}.section-head>div>p{font-size:12px;color:var(--muted);padding-bottom:9px;max-width:350px}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service{padding:30px 30px 28px 0;display:flex;flex-direction:column}.service+ .service{border-left:1px solid var(--line);padding-left:30px}.service:last-child{padding-right:0}.service-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.service-top>span{font-size:9px;letter-spacing:1.1px;color:var(--muted)}.service-top svg{width:38px;height:38px;stroke:var(--red);stroke-width:1.4;fill:none}.service h3{font-size:17px;letter-spacing:-.5px;margin-bottom:16px}.service>p{font-size:12px;color:#616b5d;line-height:2.1}.service ul{padding:0;list-style:none;margin:24px 0 30px}.service li{font-size:11px;padding:6px 0;display:flex;gap:9px}.service li:before{content:'—';color:var(--red)}.service-link{border-top:1px solid var(--line);display:flex;justify-content:space-between;margin-top:auto;padding-top:21px;font-size:11px}.service-link span:last-child{font-size:18px;color:var(--red)}.service-link:hover{color:var(--red)}.approach{background:var(--dark);color:#f3f4e9;padding:90px 0 94px}.approach .section-no{color:#f9886f}.approach .section-head>div>p{color:#b8c4b3}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:36px}.step-num{border-top:1px solid #64735d;padding-top:20px;font-size:38px;line-height:1.2;font-weight:400;letter-spacing:-2px;display:flex;justify-content:space-between;align-items:center;color:#c4cbb9}.step-num span{font-size:18px;color:#ee7a60}.step-en{font-size:8px;color:#a8b7a0;letter-spacing:1.5px;margin:29px 0 12px}.steps h3{font-size:21px;font-weight:500;margin-bottom:16px}.steps article>p:last-child{font-size:12px;color:#b6c2b0;line-height:2.1}.about{display:grid;grid-template-columns:1fr 1fr;gap:140px;padding-bottom:70px}.about h2{margin-top:28px}.about-lead{font-size:16px;margin-top:25px;line-height:2}.about-right{padding-top:51px}.about-right>p{font-size:14px;color:var(--muted)}.experience{margin-top:36px;border-top:1px solid var(--line);padding-top:26px}.experience>.eyebrow{color:var(--red);font-size:9px}.experience>p{font-size:13px;margin:16px 0 12px}.experience-foot{font-size:11px;color:var(--muted)}.product{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-bottom:20px;align-items:center}.product-graphic{position:relative;background:#e5e8db;min-height:310px;overflow:hidden;display:flex;align-items:center;justify-content:center;gap:18px}.product-mini{position:absolute;top:25px;left:28px;font-size:8px;letter-spacing:1.3px;color:#647158}.shifto{font-size:63px;font-weight:600;letter-spacing:-3px;z-index:1}.shifto>span{font-size:12px;vertical-align:top;letter-spacing:0;position:relative;top:15px}.shifto-mark{width:44px;display:flex;flex-direction:column;gap:5px;transform:skewY(-13deg);z-index:1}.shifto-mark span{height:13px;background:#4a6346;border-radius:2px;width:44px}.shifto-mark span:nth-child(2){margin-left:8px}.product-grid{position:absolute;width:420px;height:420px;border:1px solid #cbd2bf;transform:rotate(45deg);top:90px;left:130px}.product-grid:after{content:'';position:absolute;inset:30px;border:1px solid #cbd2bf}.product-copy h2{font-size:29px;margin:18px 0}.product-copy>p:not(.eyebrow){font-size:13px;color:var(--muted);margin-bottom:17px;max-width:390px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:100px}.faq h2{font-size:31px;margin-top:25px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:13px;line-height:1.9;padding:22px 0;display:flex;justify-content:space-between;gap:24px}summary::-webkit-details-marker{display:none}.faq-plus{font-size:23px;line-height:1;color:var(--red);font-weight:400}details[open] .faq-plus{transform:rotate(45deg)}details p{font-size:12px;color:var(--muted);padding:0 38px 24px 0}.contact{background:#e9ebe2;padding:93px 0 94px;border-top:1px solid var(--line)}.contact-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:120px}.contact h2{font-size:45px;margin:28px 0}.contact h2+p{font-size:14px;color:#64705d}.contact-note{border-top:1px solid #c8d0c1;margin-top:55px;display:flex;gap:19px;padding-top:22px;max-width:290px}.contact-note>span{color:var(--red);font-size:22px}.contact-note p{font-size:11px;color:var(--muted)}form label{display:block;font-size:11px;font-weight:500;margin-bottom:21px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input:not([type=checkbox]),select,textarea{display:block;margin-top:9px;width:100%;border:1px solid #d2d7ca;border-radius:0;background:#f7f7f1;color:var(--ink);padding:13px 14px;font-size:13px;line-height:1.6}input::placeholder,textarea::placeholder{color:#8a9382;font-size:12px}textarea{resize:vertical;min-height:114px}.required{color:var(--red);font-size:9px;margin-left:8px}.field-note{font-size:10px;color:#6b7563;margin-top:-10px;margin-bottom:20px}.consent{display:flex;align-items:flex-start;gap:9px;font-size:10px}.consent input{accent-color:var(--red);width:15px;height:15px;margin:2px 0 0;flex-shrink:0}.inline-button{background:none;border:0;padding:0;color:inherit;font-size:inherit;text-decoration:underline;text-underline-offset:3px}.submit{width:100%;font-size:13px}.submit:disabled{opacity:.6;cursor:wait;transform:none}.form-status{font-size:12px;margin-top:16px;line-height:1.8}.form-status.error{color:#a32919}.form-status.success{color:#2e663b}.honey{display:none}footer{padding-top:44px;padding-bottom:25px}.footer-main{display:flex;align-items:center;gap:43px;padding-bottom:38px}.footer-main>span{font-size:11px;color:var(--muted)}.back-top{font-size:10px;margin-left:auto}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;gap:45px;font-size:9px;color:var(--muted)}.footer-bottom>button{margin-left:auto}dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);padding:44px;max-width:640px;width:calc(100% - 32px)}dialog::backdrop{background:#18251ad1;backdrop-filter:blur(3px)}dialog h2{font-size:23px;margin:16px 0}dialog p:not(.eyebrow){font-size:13px}dialog a{margin-top:20px}.dialog-close{position:absolute;right:15px;top:8px;background:none;border:0;color:var(--ink);font-size:30px}.skip{position:fixed;top:-80px;left:20px;background:var(--dark);color:white;padding:12px;z-index:100}.skip:focus{top:10px}html[lang=en] .hero h1{font-size:60px;line-height:1.12;letter-spacing:-2.5px}html[lang=en] h2{line-height:1.25}html[lang=en] .service h3{font-size:19px}html[lang=en] .section-head>div>p{max-width:270px}html[lang=en] .hero-description{line-height:1.9}html[lang=en] .hero-actions{gap:20px}
@media(min-width:1440px){.header{padding-left:max(48px,calc((100vw - 1224px)/2));padding-right:max(48px,calc((100vw - 1224px)/2))}.hero{min-height:660px}}
@media(max-width:1100px){.header{padding:0 30px;gap:25px}.header nav{gap:18px}.header-actions{gap:18px}.wrap{padding-left:38px;padding-right:38px}.hero h1{font-size:52px}.hero-actions{gap:18px}.hero .button{gap:15px;padding:17px 19px}.section-head{grid-template-columns:1fr 2.3fr}.section-head>div{display:block}.section-head>div>p{margin-top:20px;max-width:none}.about{gap:70px}.product{gap:40px}.faq{gap:55px}.contact-grid{gap:65px}html[lang=en] .hero h1{font-size:48px}html[lang=en] .header nav{font-size:11px}html[lang=en] .hero-actions{flex-wrap:wrap}}
@media(max-width:800px){.header{height:78px;padding:0 24px}.brand{font-size:24px}.brand img{width:29px;height:29px}.header nav{display:none;position:absolute;top:77px;left:0;width:100%;padding:24px;background:var(--paper);border-bottom:1px solid var(--line);font-size:14px;flex-direction:column}.header nav.open{display:flex}.header-actions{margin-left:auto}.header-cta{display:none}.menu{display:flex;background:none;border:0;width:28px;height:30px;justify-content:center;flex-direction:column;gap:6px;padding:3px}.menu span{height:1px;width:22px;background:var(--ink)}.hero{grid-template-columns:1fr 1fr;padding-top:50px;padding-bottom:45px;gap:10px}.hero h1{font-size:40px;letter-spacing:-1px}.hero-description{font-size:12px}.hero-description br{display:none}.eyebrow{font-size:8px;letter-spacing:1.1px}.hero-actions{display:block}.hero-actions>.text-link{margin-left:0;margin-top:15px}.hero-art{justify-content:center}.art-label{position:static;font-size:7px}.art-bottom{font-size:6px;padding:0 5px;gap:10px}.principles .wrap{gap:20px;font-size:11px;min-height:65px}.principle-end{display:none}.section{padding-top:70px;padding-bottom:70px}.services{grid-template-columns:1fr}.service,.service+.service{padding:26px 0;border-left:0;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;column-gap:30px}.service:last-child{border-bottom:0}.service-top{grid-column:1/-1;margin-bottom:18px}.service h3{grid-column:1;font-size:19px}.service>p{grid-column:1}.service ul{grid-column:2;grid-row:2/4;margin:0}.service-link{grid-column:1/-1;margin-top:20px}.section-head{grid-template-columns:1fr 2fr;gap:25px;margin-bottom:35px}h2{font-size:31px}.approach{padding:65px 0}.steps{grid-template-columns:1fr 1fr;gap:38px}.step-en{margin-top:20px}.about{gap:35px}.about-lead{font-size:13px}.about-right{padding-top:38px}.about-right>p{font-size:12px}.product{gap:30px}.product-graphic{min-height:280px}.shifto{font-size:44px}.shifto-mark{width:32px}.shifto-mark span{width:32px;height:9px}.product-copy h2{font-size:25px}.faq{gap:35px}.faq h2{font-size:25px}.contact-grid{gap:40px}.contact h2{font-size:35px}.form-row{display:block}.footer-main{gap:25px}.footer-main>span{font-size:9px}.footer-bottom{gap:20px}html[lang=en] .hero h1{font-size:38px}html[lang=en] .hero .button{font-size:11px}html[lang=en] .service h3{font-size:20px}}
@media(max-width:560px){.wrap{padding-left:24px;padding-right:24px}.hero{grid-template-columns:1fr;padding-top:38px;padding-bottom:30px}.hero h1{font-size:46px;margin-top:21px;margin-bottom:18px;line-height:1.5}.hero-description{font-size:13px;line-height:2.05;max-width:340px}.hero-description br{display:block}.hero-actions{display:flex;gap:23px;margin-top:25px}.hero .button{font-size:11px;gap:18px;padding:17px 19px}.hero-actions>.text-link{margin-top:0;font-size:10px;gap:12px}.hero-note{font-size:9px;margin-top:15px}.hero-art{height:320px;margin-top:28px;overflow:hidden}.sculpture{width:100%;max-width:355px;align-self:center;height:295px;margin-top:5px}.art-label{position:absolute;top:3px;left:0;margin-left:0;font-size:7px}.art-bottom{padding:0;font-size:6px;margin-top:0}.principles .wrap{justify-content:space-between;gap:6px;font-size:9px;letter-spacing:0;min-height:65px}.plus{font-size:16px}.section-head{display:block}.section-head>div{margin-top:24px}.section-head>div>p{font-size:12px;margin-top:18px;padding:0}.section{padding-top:56px;padding-bottom:56px}h2{font-size:30px}.service,.service+.service{display:block;padding:26px 0}.service h3{font-size:20px;margin-bottom:14px}.service>p{font-size:13px;line-height:2}.service ul{margin:20px 0}.service li{font-size:12px}.service-top{margin-bottom:20px}.service-link{font-size:12px}.approach{padding:54px 0 60px}.steps{gap:33px 25px}.step-num{font-size:32px}.steps h3{font-size:19px}.steps article>p:last-child{font-size:11px}.step-en{font-size:7px;letter-spacing:1px}.about{display:block}.about h2{margin-top:24px}.about-lead{font-size:16px}.about-lead br{display:none}.about-right{padding-top:24px}.about-right>p{font-size:13px}.experience{margin-top:25px}.product{display:flex;flex-direction:column;align-items:stretch;padding-bottom:5px;gap:28px}.product-graphic{min-height:260px}.product-copy h2{font-size:28px}.shifto{font-size:58px}.shifto-mark{width:40px}.shifto-mark span{width:40px;height:12px}.faq{display:block}.faq h2{font-size:28px}.faq-list{margin-top:30px}summary{font-size:12px;gap:18px}.contact{padding:56px 0}.contact-grid{display:block}.contact h2{font-size:36px;margin-top:24px}.contact-note{margin-top:25px;padding-top:18px;max-width:none;margin-bottom:35px}.contact-note p br{display:none}.form-row{display:grid;gap:12px}.contact form label{font-size:11px}input:not([type=checkbox]),select,textarea{font-size:16px;padding:11px}.field-note{font-size:10px}.consent{line-height:1.8}.footer-main{flex-wrap:wrap;gap:20px;padding-bottom:25px}.footer-main>span{display:none}.back-top{font-size:9px}.footer-bottom{flex-wrap:wrap;row-gap:14px;font-size:8px}.footer-bottom>span:nth-child(2){display:none}.footer-bottom>button{margin-left:auto}dialog{padding:34px 24px}html[lang=en] .hero h1{font-size:47px;line-height:1.1;max-width:330px}html[lang=en] .hero-description{font-size:13px}html[lang=en] .hero-actions{gap:16px}html[lang=en] .hero .button{font-size:11px}html[lang=en] .section-head>div>p{max-width:none}html[lang=en] .principles .wrap{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
