
:root{--bg:#111313;--surface:#191c1c;--white:#f3f2ee;--muted:#adb0ad;--gold:#c6b18a;--line:#ffffff25}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--bg);color:var(--white);font-family:'Yu Gothic','Hiragino Kaku Gothic ProN',sans-serif;font-size:16px;line-height:1.9}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:6px}header{height:96px;padding:0 5.2%;display:flex;align-items:center;justify-content:space-between;background:#111313ed;border-bottom:1px solid var(--line);position:relative;z-index:10}.logo{font-family:Arial,sans-serif;letter-spacing:.2em;font-size:27px;font-weight:500}.logo small{display:block;font-family:inherit;font-size:10px;letter-spacing:.32em;color:var(--muted);line-height:1.3}nav{display:flex;gap:35px;align-items:center;font-size:14px}nav a{padding:10px 0}nav a:hover{color:var(--gold)}nav .nav-company{border:1px solid #74776f;padding:10px 24px}.menu{display:none;background:none;color:var(--white);border:1px solid var(--line);padding:6px 14px;font-size:14px}.hero{min-height:690px;height:calc(100svh - 96px);max-height:950px;position:relative;display:flex;align-items:center;overflow:hidden;background:#151919}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#080b0bef 0%,#080b0b91 47%,#080b0b08 85%),linear-gradient(0deg,#080b0b88,transparent 35%)}.hero-content{position:relative;z-index:1;padding:40px 8%;width:100%}.eyebrow{font-family:Arial,sans-serif;font-size:13px;letter-spacing:.23em;color:var(--gold);text-transform:uppercase}.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:400;font-size:clamp(42px,5.1vw,78px);letter-spacing:.12em;line-height:1.65;margin:29px 0 23px}.hero p{color:#d0d1cd;line-height:2.2;letter-spacing:.07em}.hero-foot{position:absolute;z-index:2;bottom:35px;left:8%;right:5.2%;display:flex;justify-content:space-between;align-items:end;font-size:12px;letter-spacing:.16em;color:#b4b8b5}.hero-foot .scroll{display:flex;gap:18px;align-items:center}.scroll:before{content:'';height:44px;width:1px;background:var(--gold)}.wrap{max-width:1440px;margin:auto;padding:0 8%}.intro{padding-top:125px;padding-bottom:125px;display:grid;grid-template-columns:1fr 1.55fr;gap:10%}.section-index{display:block;color:var(--gold);font-family:Arial,sans-serif;font-size:13px;letter-spacing:.18em;margin-bottom:24px}.intro h2,.section-heading h2,.company h2{font-size:clamp(34px,4vw,56px);font-family:Georgia,serif;font-weight:400;line-height:1.2;margin:0;letter-spacing:.02em}.intro h3{font-family:'Yu Mincho',serif;font-size:clamp(25px,2.4vw,34px);font-weight:400;line-height:1.9;margin:0 0 28px;letter-spacing:.08em}.intro p{color:var(--muted);margin:0;line-height:2.3}.services{background:var(--white);color:#202626;padding:100px 0 110px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:56px}.services .section-index{color:#78603b}.section-heading>p{font-size:14px;color:#5f6561;margin:0 0 5px}.service-list{border-top:1px solid #bdc0b9}.service{border-bottom:1px solid #bdc0b9}.service summary{display:grid;grid-template-columns:65px 1fr 1.1fr 30px;align-items:center;gap:28px;padding:36px 0;cursor:pointer;list-style:none}.service summary::-webkit-details-marker{display:none}.service .num{font-family:Georgia,serif;color:#827153;font-size:18px}.service h3{font-family:'Yu Mincho',serif;font-size:27px;letter-spacing:.05em;margin:0;font-weight:500}.service .english{font-size:12px;letter-spacing:.13em;color:#666e68;display:block;font-family:Arial,sans-serif;margin-top:6px}.service .desc{font-size:15px;color:#616762}.plus{font-size:25px;font-weight:300;color:#827153;text-align:center}.service[open] .plus{transform:rotate(45deg)}.detail{padding:0 60px 34px 93px;max-width:850px;color:#515a53;font-size:16px;line-height:2.1}.detail p{margin:0}.principle{padding-top:115px;padding-bottom:115px;display:grid;grid-template-columns:1.1fr 1fr;gap:12%;align-items:center}.principle-title{font-family:Georgia,serif;font-size:clamp(58px,7vw,100px);font-weight:400;line-height:1.1;letter-spacing:-.025em;margin:25px 0;color:#e0e1db}.principle-title em{font-weight:400;color:var(--gold)}.principle h3{font-family:'Yu Mincho',serif;font-weight:400;letter-spacing:.09em;font-size:27px;margin:0 0 24px}.principle p{color:var(--muted);line-height:2.2}.company{padding-top:85px;padding-bottom:100px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.55fr;gap:10%}.company dl{margin:0}.company dl>div{display:grid;grid-template-columns:110px 1fr;gap:25px;border-bottom:1px solid var(--line);padding:25px 0}.company dl>div:first-child{padding-top:0}.company dt{font-size:14px;color:var(--muted)}.company dd{margin:0;font-size:16px}.company dd span{display:block}footer{padding:48px 5.2% 25px;background:#0b0e0e}.footer-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-nav{display:flex;flex-wrap:wrap;gap:28px;font-size:14px;color:#b7bdb8}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);margin-top:37px;padding-top:20px;font-size:12px;color:#878f89;letter-spacing:.05em}.top-link:hover{color:var(--gold)}@media(min-width:1600px){.hero-content{padding-left:calc((100vw - 1440px)/2 + 115px)}}@media(max-width:760px){header{height:80px;padding:0 6%}.logo{font-size:23px}.menu{display:block}nav{display:none;position:absolute;top:80px;left:0;right:0;background:#111313;padding:25px 6%;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:12px}nav.open{display:flex}.hero{min-height:640px;height:calc(90svh - 80px)}.hero-image{object-position:64% center}.hero:after{background:linear-gradient(90deg,#080b0be0,#080b0b45)}.hero-content{padding:30px 7%}.hero h1{font-size:42px;letter-spacing:.07em}.hero p{font-size:15px}.hero-foot{left:7%;right:7%;font-size:10px}.hero-foot>span{max-width:170px;text-align:right}.wrap{padding-left:7%;padding-right:7%}.intro{grid-template-columns:1fr;gap:36px;padding-top:75px;padding-bottom:75px}.intro h3{font-size:27px}.section-index{margin-bottom:17px}.services{padding:70px 0}.section-heading{display:block;margin-bottom:34px}.section-heading>p{margin-top:23px}.service summary{grid-template-columns:28px 1fr 24px;gap:15px;padding:27px 0}.service .desc{display:none}.service h3{font-size:23px}.detail{padding:0 20px 27px 43px;font-size:15px}.principle{grid-template-columns:1fr;gap:35px;padding-top:75px;padding-bottom:75px}.principle-title{font-size:67px}.principle h3{font-size:25px}.company{grid-template-columns:1fr;gap:40px;padding-top:65px;padding-bottom:70px}.company dl>div{grid-template-columns:75px 1fr;gap:15px}.footer-top{align-items:start;flex-direction:column}.footer-nav{gap:24px}.footer-bottom{gap:25px;align-items:start}html{scroll-padding-top:20px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.president{display:grid;grid-template-columns:1fr 1.4fr;gap:9%;padding-top:90px;padding-bottom:100px;border-top:1px solid var(--line)}.president img{display:block;width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}.president h2{font-family:'Yu Mincho',serif;font-size:clamp(25px,2.5vw,35px);font-weight:400;line-height:1.8;margin:0 0 30px}.president p{color:var(--muted);line-height:2.2}.president .signature{color:var(--white);margin-top:20px}@media(max-width:760px){.president{grid-template-columns:1fr;gap:35px;padding-top:65px;padding-bottom:65px}.president img{max-width:400px}.president .section-index{font-size:12px;letter-spacing:.1em}} #inquiry{margin-top:28px}#inquiry label{display:block;margin:22px 0;font-size:15px}#inquiry input,#inquiry select,#inquiry textarea{display:block;width:100%;margin-top:8px;padding:13px;border:1px solid #666;background:#1b1e1e;color:#f3f2ee;border-radius:0;font:inherit;box-sizing:border-box}#inquiry textarea{resize:vertical}#inquiry button{padding:13px 40px;border:1px solid var(--gold);background:var(--gold);color:#111;font:inherit;cursor:pointer}#inquiry button:disabled{opacity:.5;cursor:not-allowed}#inquiry :focus-visible{outline:2px solid var(--gold);outline-offset:3px}
header .logo img,footer .logo img{display:block;width:220px;height:auto}header .logo small,footer .logo small{font-size:9px;letter-spacing:.17em;margin-top:5px}.hero-image{object-position:65% center}.hero:after{background:linear-gradient(90deg,#080b0bc4 0%,#080b0b55 46%,#080b0b08 85%),linear-gradient(0deg,#080b0b66,transparent 40%)}.hero{max-height:900px}.hero h1{font-size:clamp(42px,5.5vw,82px)}.services{padding-bottom:70px}.service-list{border:0}.business-photo-row{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:6%;padding:52px 0;border-top:1px solid #c4c5bd}.business-photo-row:nth-child(even){grid-template-columns:1fr 1.2fr}.business-photo-row:nth-child(even) figure{order:2}.business-photo-row figure{margin:0;position:relative;overflow:hidden}.business-photo-row figure img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;transition:transform .8s}.business-photo-row figure:hover img{transform:scale(1.025)}.business-photo-row figcaption{position:absolute;left:15px;bottom:12px;color:#fff;background:#1119;font:9px Arial,sans-serif;letter-spacing:.13em;padding:5px 8px}.business-photo-row .service{border:0}.business-photo-row summary{grid-template-columns:30px 1fr 22px;gap:14px;padding:0 0 24px}.business-photo-row .desc{display:none}.business-photo-row .detail{padding:0;color:#525a55;font-size:14px}.business-photo-row .detail h4{font-size:14px;margin-bottom:9px}.business-photo-row .detail ul{padding-left:20px}.business-photo-row h3{font-size:26px}.image-note{display:block;font-size:11px;color:#747a72;margin-top:10px}.reveal{transition:opacity .75s,transform .75s}.motion-ready .reveal:not(.is-visible){opacity:0;transform:translateY(22px)}
@media(max-width:760px){header .logo img{width:173px}header{height:82px}.logo small{font-size:8px!important}nav{top:82px}.hero{min-height:650px;height:calc(92svh - 82px)}.hero-content{align-self:flex-start;padding-top:52px}.hero-image{object-position:64% center}.hero:after{background:linear-gradient(180deg,#080b0b8c 0%,#080b0b35 40%,#080b0b08 67%,#080b0b99 100%)}.hero h1{font-size:45px;line-height:1.65;margin-top:19px}.hero p{font-size:12px}.eyebrow{font-size:9px;letter-spacing:.15em}.business-photo-row,.business-photo-row:nth-child(even){grid-template-columns:1fr;gap:25px;padding:30px 0 40px}.business-photo-row:nth-child(even) figure{order:0}.business-photo-row figure img{aspect-ratio:16/10}.business-photo-row h3{font-size:23px}.business-photo-row summary{padding-bottom:18px}.business-photo-row .detail{font-size:14px}.services{padding-bottom:35px}}
@media(prefers-reduced-motion:reduce){.reveal,.business-photo-row img{transition:none!important}.motion-ready .reveal:not(.is-visible){opacity:1;transform:none}}

header{padding-left:5%;padding-right:5%}nav{gap:24px;font-size:12px}.logo{flex-shrink:0}.section-kicker{font:11px Arial,sans-serif;letter-spacing:.18em;color:var(--gold);display:block;margin-bottom:27px}.page-head{padding:90px 8% 65px;border-bottom:1px solid var(--line)}.crumb{font-size:10px;letter-spacing:.09em;color:var(--muted);margin-bottom:60px}.crumb a{border-bottom:1px solid #888}.page-head h1{font:500 clamp(52px,8vw,116px)/1.05 Arial,sans-serif;letter-spacing:-.055em;margin:0 0 25px}.page-head p{font-size:16px;letter-spacing:.15em;margin:0}.editorial{padding:100px 8%}.editorial h2{font-family:'Yu Mincho',serif;font-size:clamp(28px,3.3vw,48px);font-weight:400;line-height:1.8;margin:0 0 32px}.editorial p{font-size:15px;line-height:2.25;color:var(--muted)}.principle-intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;min-height:570px}.infinity-mark{font:200 clamp(150px,23vw,350px)/1 Georgia,serif;color:#a8997d;text-align:center}.value-block{padding:90px 8%;display:grid;grid-template-columns:1fr 1.8fr;gap:8%;border-top:1px solid #ffffff25;transition:background 1s,color 1s}.value-block.active-value{background:#b8aa90;color:#151818}.value-number{font:60px/1 Arial,sans-serif;color:var(--gold)}.value-block h2{font-family:'Yu Mincho',serif;font-size:clamp(28px,3vw,44px);font-weight:400;margin:0 0 25px;line-height:1.7}.value-block p{line-height:2.25;font-size:15px;max-width:700px;color:#b7beb9}.value-block.active-value p,.value-block.active-value .value-number{color:#29332f}.link-arrow{display:inline-flex;align-items:center;justify-content:space-between;gap:50px;padding:18px 0;border-bottom:1px solid #96998e;font-size:13px}.link-arrow span{font-size:24px;transition:transform .3s}.link-arrow:hover span{transform:translate(5px,-5px)}.home-philosophy{display:grid;grid-template-columns:1fr 1.5fr;gap:9%;padding-top:105px;padding-bottom:105px;border-top:1px solid var(--line)}.home-philosophy .large-en{font:500 clamp(48px,6vw,86px)/1.05 Arial,sans-serif;letter-spacing:-.05em;margin:0}.home-philosophy h2{font:400 clamp(25px,2.7vw,38px)/1.8 'Yu Mincho',serif;margin:0 0 20px}.home-philosophy p{font-size:14px;line-height:2.1;color:var(--muted)}.home-representative{display:grid;grid-template-columns:1fr 1.25fr;gap:9%;align-items:center;padding-top:80px;padding-bottom:95px;border-top:1px solid var(--line)}.portrait-frame{overflow:hidden;background:#282a27}.portrait-frame img{display:block;width:100%;max-height:660px;object-fit:contain}.home-representative h2{font:400 clamp(25px,3vw,42px)/1.7 'Yu Mincho',serif;margin:0 0 24px}.home-representative p{color:var(--muted);font-size:14px;line-height:2.1}.profile-layout{display:grid;grid-template-columns:1fr 1.2fr;gap:9%;align-items:start}.profile-copy h2{font:400 clamp(29px,3vw,43px)/1.8 'Yu Mincho',serif}.person-name{margin:25px 0 32px}.person-name small{display:block;color:var(--muted);font-size:12px}.person-name strong{font-size:27px;font-weight:400;letter-spacing:.16em}.history{background:#e9e8e1;color:#202826;padding:95px 8%}.history h2{font:500 clamp(45px,6vw,80px)/1.1 Arial,sans-serif;letter-spacing:-.05em;margin:0 0 16px}.history-intro{font-size:14px;margin-bottom:55px}.timeline{margin-left:12px;border-left:1px solid #9b9e92;padding-left:45px;max-width:980px}.milestone{position:relative;padding:0 0 52px;display:grid;grid-template-columns:150px 1fr;gap:30px}.milestone:before{content:'';position:absolute;left:-51px;top:9px;border-radius:50%;width:11px;height:11px;background:#8a7751;box-shadow:0 0 0 6px #e9e8e1}.milestone time{font:500 26px Arial,sans-serif;letter-spacing:-.02em}.milestone h3{font-size:21px;font-weight:500;margin:0 0 12px}.milestone p{font-size:14px;line-height:2.15;margin:0;color:#53605a}.next-page{padding:70px 8%;display:flex;justify-content:space-between;align-items:center;gap:30px}.next-page p{font-size:12px;color:var(--muted)}.next-page h2{font:400 30px 'Yu Mincho',serif;margin:0}.hero-content h1,.hero-content p,.hero-content .eyebrow{animation:entry 1s both}.hero-content h1{animation-delay:.12s}.hero-content p{animation-delay:.3s}.hero-image{animation:herozoom 1.6s ease-out both}.business-photo-row figure{overflow:hidden}.business-photo-row figure img{transition:clip-path 1s cubic-bezier(.2,.7,.2,1),transform 1s}.motion-ready .business-photo-row:not(.is-visible) figure img{clip-path:inset(0 100% 0 0);transform:scale(1.04)}.business-photo-row.is-visible figure img{clip-path:inset(0);transform:scale(1)}.motion-ready .reveal:not(.is-visible){opacity:0;transform:translateY(20px)}.reveal{transition:opacity .8s,transform .8s}.milestone{transition-delay:0s}@keyframes entry{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}@keyframes herozoom{from{transform:scale(1.035)}to{transform:scale(1)}}
@media(max-width:1000px){nav{gap:15px;font-size:11px}header .logo img{width:185px}}
@media(max-width:760px){.page-head{padding:40px 7% 45px}.crumb{margin-bottom:36px}.page-head h1{font-size:clamp(40px,10vw,68px)}.page-head p{font-size:13px}.editorial{padding:60px 7%}.principle-intro,.profile-layout,.home-philosophy,.home-representative{grid-template-columns:1fr;gap:32px}.principle-intro{min-height:0}.infinity-mark{font-size:155px;line-height:.8}.value-block{padding:55px 7%;grid-template-columns:1fr;gap:20px}.value-number{font-size:36px}.value-block h2{font-size:27px}.value-block p,.editorial p{font-size:14px}.home-philosophy,.home-representative{padding-top:60px;padding-bottom:65px}.home-philosophy .large-en{font-size:50px}.portrait-frame img{max-height:500px}.profile-copy h2{font-size:29px}.history{padding:60px 7%}.timeline{padding-left:27px;margin-left:6px}.milestone{grid-template-columns:1fr;gap:14px;padding-bottom:38px}.milestone:before{left:-33px}.milestone time{font-size:22px}.milestone h3{font-size:19px}.next-page{padding:45px 7%;display:block}.next-page h2{font-size:26px}.hero-image{animation:none}.business-photo-row figure img{transition:opacity .5s!important;clip-path:none!important;transform:none!important}.reveal{transition-duration:.5s}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.motion-ready .reveal:not(.is-visible){opacity:1;transform:none}.business-photo-row figure img{clip-path:none!important;transform:none!important}}

.service-title{padding:70px 8% 55px}.service-title h1{font:500 clamp(42px,6.5vw,100px)/1.08 Arial,sans-serif;letter-spacing:-.045em;margin:0 0 24px;overflow-wrap:anywhere}.service-title>p{letter-spacing:.15em}.service-visual{margin:0 5%;position:relative;overflow:hidden}.service-visual img{display:block;width:100%;height:min(52vw,600px);object-fit:cover}.service-visual figcaption{font-size:11px;color:var(--muted);padding:12px 0}.service-overview{padding:100px 8%;display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.service-overview h2,.tool-section>h2{font:400 clamp(27px,3.2vw,46px)/1.8 'Yu Mincho',serif;margin:0}.service-overview p,.service-features p,.tool-section>p{font-size:15px;line-height:2.2;color:var(--muted)}.service-features{margin:0 8%;border-top:1px solid var(--line)}.service-features article{display:grid;grid-template-columns:55px 1fr 1.5fr;gap:30px;padding:42px 0;border-bottom:1px solid var(--line)}.service-features h2{font-size:22px;font-weight:400;margin:0}.service-features p{margin:0}.store-links,.tool-section{padding:80px 8%}.store-links{display:grid;grid-template-columns:1fr 1fr;gap:50px}.tool-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;margin-top:45px}.tool-grid article{padding:28px 0;border-top:1px solid var(--line)}.tool-grid span{font:12px Arial;color:var(--gold)}.tool-grid h3{font-weight:400;font-size:20px}.business-nav{display:grid;grid-template-columns:repeat(5,1fr);gap:0;padding:35px 8%;border-top:1px solid var(--line)}.business-nav a{padding:18px 12px;font-size:12px;display:flex;justify-content:space-between;gap:14px}.business-nav a[aria-current]{color:var(--gold);border-bottom:1px solid var(--gold)}.service-card{padding:30px 0}.service-card h3{font-size:30px;font-weight:400;margin:0 0 22px}.service-card p{color:var(--muted);font-size:14px;line-height:2.2}.service-card .link-arrow{margin-top:20px}.service-visual img{animation:entry 1s both}@media(max-width:760px){.service-title{padding:40px 7%}.service-title h1{font-size:42px}.service-visual{margin:0}.service-visual img{height:62vw}.service-visual figcaption{padding-left:7%}.service-overview{padding:60px 7%;grid-template-columns:1fr;gap:22px}.service-features{margin:0 7%}.service-features article{grid-template-columns:1fr;gap:14px;padding:30px 0}.service-features .section-kicker{margin:0}.store-links,.tool-section{padding:55px 7%}.store-links,.tool-grid{grid-template-columns:1fr;gap:20px}.business-nav{display:grid;grid-template-columns:1fr 1fr;padding:25px 7%}.business-nav a{padding:18px 0}.service-card h3{font-size:26px}.service-card{padding:20px 0}.service-visual img{animation:none}}
.business-nav{position:static;inset:auto;width:auto;background:transparent;transform:none;}