@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700&family=Noto+Serif+JP:wght@400;500;600&display=swap');
:root{--navy:#102e3c;--ink:#18323e;--muted:#63747b;--line:#dce2e3;--gold:#a88d5e;--pale:#f2f5f5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);font-family:'Noto Sans JP',sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a:focus-visible,button:focus-visible{outline:3px solid #b39b6c;outline-offset:5px}button{cursor:pointer}header{height:100px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 3.5%;background:#fff;position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand>b{font-family:Georgia,serif;font-size:48px;letter-spacing:-4px;line-height:1}.brand>b>span{font-size:34px}.brand>b>.brand-dot{color:var(--gold)}.brand>span{font-size:12px;letter-spacing:2px;line-height:1.65}.brand small{display:block;font-size:10px;letter-spacing:.1px}nav{display:flex;gap:22px}nav a{font-size:14px;white-space:nowrap}nav a:hover,.text-link:hover{color:var(--gold)}.header-actions{display:flex;align-items:center;gap:22px}.lang{display:flex;gap:8px;align-items:center;font-size:12px}.lang button{border:0;background:none;padding:7px 0;color:#7b898e;font-size:14px}.lang button[aria-pressed=true]{color:var(--navy);font-weight:700;border-bottom:1px solid var(--navy)}.contact-top{background:var(--navy);color:white;font-size:14px;padding:12px 20px}#menu{display:none}.hero{position:relative;display:grid;grid-template-columns:55% 45%;padding-bottom:58px}.hero-copy{padding:70px 8% 65px 9%}.eyebrow{font-family:Arial,sans-serif;letter-spacing:2.1px;font-size:12px;font-weight:600;color:var(--muted);margin:0 0 27px}.hero .eyebrow{display:flex;align-items:center;gap:12px}.hero .eyebrow>span{width:24px;height:1px;background:var(--gold)}h1,h2,h3,p{margin-top:0}h1{font-family:'Noto Serif JP',serif;font-size:clamp(48px,5vw,76px);line-height:1.45;font-weight:500;letter-spacing:.04em;margin:0 0 18px}h2{font-family:'Noto Serif JP',serif;font-weight:500;font-size:36px;line-height:1.6;letter-spacing:.025em;margin-bottom:0}.hero h2{font-family:'Noto Sans JP',sans-serif;font-size:20px;font-weight:500;letter-spacing:.01em;margin-bottom:25px}.hero-desc{max-width:530px;font-size:15px;line-height:2.2;color:var(--muted);margin-bottom:30px}.hero-buttons{display:flex;align-items:flex-start;gap:18px;flex-direction:column}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;background:var(--navy);color:white;padding:17px 23px;border:1px solid var(--navy);font-size:14px;transition:background .2s}.button:hover,.contact-top:hover{background:#285369}.text-link{font-size:14px}.hero-photo{position:relative;background:var(--navy);overflow:hidden}.hero-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.photo-overlay{position:absolute;inset:0;background:linear-gradient(180deg,#102e3c08 20%,#102e3ccc 100%)}.photo-caption{position:absolute;left:40px;bottom:58px;color:white}.photo-caption span{font-family:Georgia,serif;font-size:30px;line-height:1.3;letter-spacing:2px}.photo-caption p{margin:25px 0 0;font-size:12px;letter-spacing:2px}.image-note{position:absolute;bottom:15px;right:20px;color:#fff;font-size:12px}.hero-footer{position:absolute;bottom:0;left:0;right:0;height:58px;padding:0 5%;display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:1.7px;border-bottom:1px solid var(--line)}.intro-strip{display:flex;justify-content:space-between;align-items:center;gap:24px;background:var(--navy);color:white;padding:25px 5%;font-size:14px}.intro-strip p{margin:0}.intro-strip>span{padding-left:30px;border-left:1px solid #667d88;white-space:nowrap}.section{padding:95px 7%;scroll-margin-top:0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:50px}.section-head .eyebrow{margin-bottom:18px}.section-head>p{font-size:14px;line-height:2.1;color:var(--muted);margin:0;max-width:410px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.service-grid article{padding:32px 30px 0;border-right:1px solid var(--line)}.service-grid article:first-child{padding-left:0}.service-grid article:last-child{padding-right:0;border:0}.number{font-family:Georgia,serif;font-size:36px;color:var(--gold)}h3{font-size:20px;font-weight:500;line-height:1.7;margin:20px 0 15px}.service-grid p,.strength-grid p,.other-products p,.steps p{font-size:14px;color:var(--muted);line-height:2;margin-bottom:20px}.tags{display:block;border-top:1px solid var(--line);padding-top:18px;font-size:12px;color:var(--muted)}.products{background:var(--pale)}.product-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:48px}.beauty{background:var(--navy);color:white;min-height:530px;padding:40px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.pill{align-self:flex-start;border:1px solid #87989d;padding:5px 10px;font-size:12px;letter-spacing:1px}.beauty>div:not(.beauty-word){position:relative;z-index:1}.beauty .eyebrow{color:#c2b08f;margin:60px 0 20px}.beauty h3{font-family:'Noto Serif JP',serif;font-size:30px;line-height:1.65}.beauty p:not(.eyebrow){font-size:14px;line-height:2;color:#cbd5d9;max-width:430px}.light-link{font-size:14px;border-bottom:1px solid #708792;padding-bottom:10px;display:inline-block}.beauty-word{position:absolute;bottom:-25px;right:-10px;font-family:Georgia,serif;font-size:110px;letter-spacing:-7px;color:#ffffff08;pointer-events:none}.other-products{display:flex;flex-direction:column;justify-content:space-between}.other-products article{padding:18px 0 20px;border-bottom:1px solid #cbd5d8}.other-products article:first-child{padding-top:0}.other-products span,.strength-grid>article>span{font-size:12px;letter-spacing:1.5px;color:var(--gold)}.other-products h3{margin:10px 0}.other-products p{margin-bottom:0}.footnote{font-size:12px;color:var(--muted);margin:25px 0 0}.strength-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:35px}.strength-grid article{padding-top:28px;border-top:2px solid var(--navy)}.strength-grid h3{font-size:18px}.flow{background:var(--pale)}.steps{display:grid;grid-template-columns:repeat(5,1fr);list-style:none;padding:0;margin:0;gap:28px}.steps li{position:relative;border-top:1px solid #bdcbcf;padding-top:25px}.steps li:not(:last-child):after{content:'→';position:absolute;right:0;top:26px;color:#81969e}.steps span{font-family:Georgia,serif;font-size:32px;color:var(--gold)}.steps h3{font-size:17px;margin-top:14px}.steps p{margin:0}.company{display:grid;grid-template-columns:1fr 1.2fr;gap:65px}.company-lead{font-size:14px;color:var(--muted);margin:30px 0}.location-label{font-family:Arial,sans-serif;display:block;margin-top:50px;color:var(--gold);font-size:13px;letter-spacing:2px;line-height:2}dl{margin:0}dl>div{display:grid;grid-template-columns:130px 1fr;gap:20px;padding:19px 0;border-bottom:1px solid var(--line);font-size:14px}dl>div:first-child{border-top:1px solid var(--line)}dt{color:var(--muted)}dd{margin:0}.placeholder{color:#89969b}.contact{background:var(--navy);color:white;display:grid;grid-template-columns:1fr 1.2fr;gap:65px}.contact .eyebrow{color:#b5a17c}.contact-copy>p:not(.eyebrow){margin:25px 0;color:#ccd5d9;font-size:14px;line-height:2.1}.contact-languages{font-size:14px;border-bottom:1px solid #768c96;padding-bottom:12px;display:inline-block}.contact-notice{border-left:2px solid #b5a17c;padding-left:18px;color:#c9d4d9;font-size:13px;margin-top:38px;max-width:390px}form label{display:flex;flex-direction:column;gap:8px;font-size:14px;margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input,select,textarea{width:100%;min-width:0;border:1px solid #71838c;background:#fff;color:var(--ink);border-radius:0;padding:12px;font-size:16px}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid #c6b285;outline-offset:2px}.form-note{font-size:12px;color:#c9d4d9}.download{background:#fff;color:var(--navy);width:100%;border-color:#fff}.download:hover{background:#dce6e9}#form-status{font-size:14px;margin:15px 0 0}footer{padding:45px 7% 20px}footer>div:first-child{display:flex;align-items:center;gap:20px}.footer-logo{font-family:Georgia,serif;font-size:40px;font-weight:bold}footer>div>span{font-size:12px;letter-spacing:1px}footer>p{font-size:12px;color:var(--muted);margin-top:10px}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:20px;margin-top:25px;font-size:12px;color:var(--muted)}.skip{position:fixed;left:20px;top:-70px;background:white;z-index:40;padding:10px}.skip:focus{top:10px}
@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:1200px){header{gap:18px;padding:0 3%;height:85px}.brand>span{display:none}nav{gap:16px}.header-actions{gap:14px}.hero-copy{padding:60px 7%}h1{font-size:58px}.hero h2{font-size:17px}.section{padding:75px 6%}.section-head{gap:35px}h2{font-size:31px}.strength-grid{gap:23px}.product-layout{gap:30px}.company,.contact{gap:40px}.hero-desc{font-size:14px}}@media(max-width:900px){.contact-top{display:none}.hero{grid-template-columns:57% 43%}.hero-copy{padding:45px 7%}h1{font-size:48px}.hero h2{font-size:16px}.hero .eyebrow{font-size:10px;letter-spacing:1px}.photo-caption{left:25px;bottom:50px}.photo-caption span{font-size:23px}.section-head{align-items:flex-start;flex-direction:column;gap:20px}.service-grid article{padding:25px 18px 0}h3{font-size:18px}.strength-grid{grid-template-columns:repeat(2,1fr)}.steps{gap:20px;grid-template-columns:repeat(3,1fr)}.company,.contact{grid-template-columns:1fr}.company{gap:40px}.company-lead{margin-bottom:0}.location-label{display:none}.contact-copy{max-width:600px}.contact-notice{max-width:none}.beauty{padding:28px}.beauty h3{font-size:25px}}
@media(max-width:680px){html{scroll-padding-top:76px}header{height:76px;padding:0 6%}.brand>b{font-size:43px}.brand>span{display:block;font-size:10px;letter-spacing:1px}.brand small{display:none}.header-actions{gap:18px}#menu{display:block;background:none;border:0;color:var(--navy);font-size:25px;padding:4px}nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;padding:20px 6%;border-bottom:1px solid var(--line);box-shadow:0 15px 20px #102e3c10}nav.open{display:flex;flex-direction:column}nav a{padding:6px 0}.hero{grid-template-columns:1fr;padding-bottom:48px}.hero-copy{padding:38px 6% 35px}.hero .eyebrow{font-size:10px;margin-bottom:20px;letter-spacing:1.3px}h1{font-size:51px;line-height:1.4}.hero h2{font-size:16px}.hero-desc{font-size:14px;margin-bottom:25px}.hero-buttons{gap:15px}.hero-photo{height:290px}.photo-caption{bottom:45px;left:6%}.photo-caption span{font-size:24px}.photo-caption p{margin-top:12px}.hero-footer{height:48px;font-size:10px;letter-spacing:.8px;padding:0 6%}.intro-strip{padding:25px 6%;flex-direction:column;align-items:flex-start;gap:15px;font-size:13px}.intro-strip>span{border:0;padding-left:0;color:#c2b08f}.section{padding:58px 6%}.section-head{margin-bottom:32px;gap:18px}h2{font-size:28px}.section-head>p{font-size:14px}.eyebrow{font-size:11px;margin-bottom:18px}.service-grid{grid-template-columns:1fr}.service-grid article,.service-grid article:first-child,.service-grid article:last-child{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.service-grid article:last-child{padding-bottom:0;border-bottom:0}.service-grid h3{margin-top:10px}.tags{border:0;padding-top:0}.product-layout{grid-template-columns:1fr;gap:30px}.beauty{min-height:480px;padding:28px}.beauty h3{font-size:28px}.other-products article{padding:22px 0}.strength-grid{grid-template-columns:1fr;gap:20px}.strength-grid article{padding-top:20px}.strength-grid h3{margin:12px 0}.strength-grid p{margin-bottom:5px}.steps{grid-template-columns:1fr;gap:20px}.steps li{padding:18px 0 0 57px;min-height:115px}.steps span{position:absolute;left:0;top:15px}.steps h3{margin:0 0 8px}.steps li:not(:last-child):after{display:none}dl>div{grid-template-columns:95px 1fr;gap:15px;font-size:13px;padding:17px 0}.contact{gap:35px}.form-row{grid-template-columns:1fr;gap:0}.contact-notice{margin-top:25px}.footer-bottom{gap:20px;font-size:10px}.footer-bottom>span{font-size:10px}footer{padding:30px 6% 20px}.footer-logo{font-size:34px}footer>div:first-child{gap:15px}footer>div>span{font-size:10px}.hero .button{font-size:14px}.footnote{line-height:1.9}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.hero-desc,.service-grid p,.strength-grid p,.other-products p,.steps p,.beauty p:not(.eyebrow),.company-lead,.section-head>p,.contact-copy>p:not(.eyebrow){font-size:16px}@media(max-width:680px){h1{font-size:clamp(32px,9.5vw,51px)}}

