/* LUME-A Studio / approved direction C / v1 */
:root{--fw-display:500;--fw-body:400;--fw-strong:700;--ls-en:.12em;--ink:#272e33;--paper:#f5f1e9;--soft:#ede8df;--gold:#b99b70;--muted:#686a69;--line:rgba(39,46,51,.17);--content-max:1240px;--font-display:"Shippori Mincho B1","Yu Mincho","Hiragino Mincho ProN",serif;--font-body:"Noto Sans JP","Yu Gothic","Meiryo",sans-serif;--font-en:"Cormorant Garamond",Georgia,serif;--ls-display:.025em;--ls-body:.025em;--lh-display:1.55;--lh-body:2.1}
html{scroll-padding-top:35px}body{overflow-x:clip}a,button,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #aa7f40;outline-offset:7px}p,h1,h2,h3,figure{margin:0}button{font:inherit}.lume-wrap{max-width:1240px;margin-inline:auto;width:calc(100% - 112px)}.section{padding:120px 0}.lume-skip{position:absolute;left:15px;top:-100px;z-index:200;padding:12px 20px;background:var(--paper);color:var(--ink)}.lume-skip:focus{top:12px}
.lume-header.site-header{position:absolute;top:0;height:auto;padding:3.4% 5.6% 0;display:flex;align-items:flex-start;justify-content:space-between;background:none;border:0;backdrop-filter:none;color:#f5f1e9;z-index:90;opacity:1;transform:none}.lume-brand img{width:clamp(148px,11.7vw,210px);height:auto}.lume-nav.nav{display:flex;gap:clamp(28px,2.6vw,48px);padding-top:9px}.lume-nav.nav a{font-family:var(--font-en);font-size:clamp(17px,1.36vw,24px);letter-spacing:.05em;padding:4px 0;position:relative}.lume-nav a:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:1px;background:#c7ad85;transform:scaleX(0);transform-origin:left;transition:transform .35s}.lume-nav a:hover:after{transform:scaleX(1)}.nav-toggle{color:#f5f1e9;display:none}.nav-toggle span{background:currentColor}.nav-overlay{background:#272e33;color:#f5f1e9;z-index:80}.nav-overlay nav{width:min(480px,85vw)}.nav-overlay nav a{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ffffff26;padding:12px 0}.nav-overlay nav small{font:13px var(--font-body);letter-spacing:.03em;color:#c7ad85}.lume-menu-note{margin-top:40px;font-size:13px;color:#d4c9b9}
.lume-hero.hero{padding:0;aspect-ratio:1536/1024;background:#1b1d1e url('assets/fv-bg-clean.png') center / cover no-repeat;position:relative;container-type:inline-size;overflow:hidden;color:#f5f1e9}.lume-hero .hero__stage{position:static;height:100%;min-height:0;display:block}.lume-hero .hero__copy{position:absolute;left:5.6%;top:23.4%;width:55.3%;padding:0;z-index:2;display:block}.lume-kicker{font-family:var(--font-en);font-size:1.56cqw;letter-spacing:.2em;color:#c7ad85;line-height:1.5;margin:0 0 1.45cqw}.lume-hero h1{font-family:var(--font-display);font-size:4.43cqw;font-weight:500;letter-spacing:.025em;line-height:1.43;color:#f5f1e9;margin:0}.lume-hero h1 .l{display:block;overflow:visible}.lume-hero h1 .l>span{display:block;transform:none;animation:none;opacity:1}.lume-hero .hero__lead{font-size:1.3cqw;letter-spacing:.1em;line-height:2;margin:1.8cqw 0 0;color:#f5f1e9}.lume-hero .hero__actions{margin-top:2.5cqw;display:block}.lume-button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:15px 30px;min-height:56px;font:500 16px var(--font-display);letter-spacing:.12em;transition:background .3s,color .3s,border-color .3s}.lume-button--outline{border:1px solid #c7ad85;color:#c7ad85}.lume-button:hover{background:#c7ad85;color:#22282c}.lume-arrow{font-size:26px;line-height:1;transition:transform .3s}.lume-button:hover .lume-arrow{transform:translateX(5px)}.lume-hero .lume-button{font-size:1.3cqw;min-height:0;height:4.2cqw;width:19.6cqw;padding:.8cqw 2cqw;gap:1.5cqw}.lume-hero .lume-arrow{font-size:2cqw}.lume-hero .hero__photo-wrap{display:none}.lume-hero-aside{position:absolute;left:89%;top:39.4%;font:italic 1.8cqw/1.5 var(--font-en);letter-spacing:.05em;color:#f5f1e9}.lume-hero-aside:before{content:"";display:block;width:4.4cqw;height:1px;background:#c7ad85;margin-bottom:1.4cqw}.lume-domains{position:absolute;left:6.1%;right:9%;top:88.5%;display:grid;grid-template-columns:1fr 1.22fr 1.2fr;gap:2.4cqw}.lume-domains a{font:1.3cqw/1.7 var(--font-en);letter-spacing:.08em;padding:.45cqw 0 .45cqw 2.3cqw;border-left:1px solid #c7ad85;transition:color .3s}.lume-domains a:hover{color:#c7ad85}
.lume-eyebrow{font:500 13px/1.5 var(--font-body);letter-spacing:.17em;color:#97733e;margin-bottom:23px}.lume-intro{background:var(--paper);padding:135px 0 125px}.lume-intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:start}.section__head{margin:0}.section__head h2,.lume-studio h2{font-family:var(--font-display);font-size:clamp(30px,3.3vw,47px);font-weight:500;letter-spacing:.04em;line-height:1.65;color:var(--ink);margin:0}.lume-prose{padding-top:10px;font-size:15px;line-height:2.3}.lume-prose p+p{margin-top:24px}.lume-text-link{display:inline-flex;align-items:center;gap:22px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.8;padding:12px 0 9px;margin-top:27px;transition:color .3s,border-color .3s}.lume-text-link span{display:block;transition:transform .3s}.lume-text-link:hover{color:#896633;border-color:#896633}.lume-text-link:hover span{transform:translate(3px,-3px)}
.lume-services{padding-top:0;padding-bottom:100px}.lume-section-heading{display:flex;justify-content:space-between;align-items:end;border-top:1px solid var(--line);padding-top:34px;margin-bottom:75px;gap:50px}.lume-section-heading>p{font-size:14px;line-height:2.1;color:var(--muted);padding-bottom:8px}.lume-section-heading h2.lume-en-title{font:400 clamp(56px,6.5vw,92px)/1.1 var(--font-en);letter-spacing:-.025em}.lume-en-title span{display:inline-block;font:13px var(--font-body);letter-spacing:.09em;margin-left:27px;vertical-align:middle}.lume-section-heading .lume-eyebrow{margin-bottom:15px}.lume-service{display:grid;grid-template-columns:1.16fr 1fr;gap:8%;align-items:center;margin-bottom:105px;scroll-margin-top:35px}.lume-service-image{position:relative;min-width:0}.lume-service-image img{width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}.lume-service-image figcaption{font:10px/1.5 var(--font-body);letter-spacing:.13em;color:#777b7b;margin-top:13px}.lume-service-copy{position:relative;padding-top:5px}.lume-number{font:italic 52px/1 var(--font-en);color:#a58c65;display:block;margin-bottom:23px}.lume-service-copy .lume-eyebrow{font-size:11px;margin-bottom:15px}.lume-service h3{font:500 clamp(24px,2.35vw,34px)/1.7 var(--font-display);letter-spacing:.03em;margin-bottom:25px}.lume-service-copy>p:not(.lume-eyebrow){font-size:14px;line-height:2.2}.lume-service-copy p.lume-service-note{margin-top:14px;font-size:12px;color:#6b6d6b}.lume-tags{display:flex;gap:8px 15px;flex-wrap:wrap;list-style:none;padding:0;margin:23px 0 0}.lume-tags li{font-size:11px;border-bottom:1px solid #d4cbbd;padding-bottom:6px;color:#565b5b}.lume-service--reverse .lume-service-image{grid-column:2;grid-row:1}.lume-service--reverse .lume-service-copy{grid-column:1;grid-row:1}.lume-service:last-of-type{margin-bottom:32px}.lume-image-note{font-size:11px;color:#6a6d6b;text-align:right}
.lume-approach{background:#272e33;color:#f5f1e9;padding:110px 0 120px}.lume-approach .lume-section-heading{border-color:#ffffff26}.lume-approach .lume-eyebrow{color:#c7ad85}.lume-approach .section__head h2{color:#f5f1e9}.lume-approach .lume-section-heading>p{color:#c4c7c5}.lume-process{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:48px}.lume-process li{border-top:1px solid #ffffff30;padding-top:27px}.lume-process-step{font:14px var(--font-en);letter-spacing:.13em;color:#c7ad85}.lume-process h3{font:500 23px var(--font-display);margin:27px 0 20px}.lume-process p{font-size:13px;line-height:2.2;color:#d4d7d5}
.lume-studio{padding:130px 0}.lume-studio-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:9%;align-items:center}.lume-studio-image img{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover}.lume-studio-image figcaption{font:10px var(--font-body);letter-spacing:.13em;color:#777b7b;margin-top:13px}.lume-studio-copy h2{margin-bottom:30px}.lume-studio-copy>p:not(.lume-eyebrow){font-size:14px;line-height:2.2;margin-top:24px}.lume-studio-facts{margin:35px 0 0}.lume-studio-facts>div{display:grid;grid-template-columns:90px 1fr;gap:20px;padding:16px 0;border-top:1px solid var(--line)}.lume-studio-facts dt{font:11px var(--font-body);letter-spacing:.1em;color:#777e7b;padding-top:5px}.lume-studio-facts dd{margin:0;font-size:13px;line-height:1.8}.lume-studio-facts dd span{font-size:11px;color:var(--muted)}
.lume-contact{background:#ebe5da;padding:105px 0}.lume-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}.lume-contact-copy{padding-top:3px;font-size:14px;line-height:2.3}.lume-contact-copy>p+p{margin-top:21px}.lume-contact-status{margin-top:35px;padding:23px 0 0;border-top:1px solid #272e3329;display:flex;gap:13px;align-items:flex-start}.lume-status-dot{width:7px;height:7px;flex:none;background:#9a7b4d;border-radius:50%;margin-top:10px}.lume-contact-status strong{font-size:13px;font-weight:500}.lume-contact-status p{font-size:11px;line-height:1.9;margin-top:8px;color:#616664}
.lume-footer{background:#272e33;color:#f5f1e9;padding:75px 0 28px}.lume-footer-top{display:grid;grid-template-columns:1.3fr 1fr;gap:90px;padding-bottom:45px}.lume-footer-brand{display:block;width:210px;transition:opacity .3s}.lume-footer-brand:hover{opacity:.75}.lume-footer-brand img{width:100%;height:auto}.lume-footer-top>div>p{font-size:12px;margin-top:23px;color:#d3d4d0}.lume-footer-tagline{display:block;font:15px var(--font-en);letter-spacing:.12em;color:#c7ad85;margin-top:12px}.lume-footer-top nav{display:grid;grid-template-columns:1fr 1fr;gap:20px 35px;align-content:center}.lume-footer-top nav a{font:22px var(--font-en);transition:color .3s}.lume-footer-top nav a:hover{color:#c7ad85}.lume-footer-top nav small{font:10px var(--font-body);display:block;margin-top:9px;letter-spacing:.02em;color:#bac0bc}.lume-privacy{border-top:1px solid #ffffff26;border-bottom:1px solid #ffffff26;padding:20px 0;font-size:12px}.lume-privacy summary{cursor:pointer;width:fit-content;list-style-position:inside}.lume-privacy summary span{font-size:10px;color:#bac0bc;margin-left:12px}.lume-privacy>div{max-width:700px;color:#d1d5d1;line-height:2.1;padding:20px 0 5px}.lume-privacy p+p{margin-top:12px}.lume-footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-top:25px;font-size:10px;letter-spacing:.08em;color:#b9c0bc}.lume-footer-bottom a{display:flex;gap:25px;align-items:center;transition:color .3s}.lume-footer-bottom a:hover{color:#c7ad85}.lume-footer-bottom a span{font-size:20px}
/* JSなしでも本文を読める。revealはJSが読み込まれたときだけ有効 */
html:not(.lume-js) [data-reveal]{opacity:1;transform:none;clip-path:none}
@media(min-width:1800px){.lume-wrap{max-width:1380px}.lume-brand img{width:210px}}
@media(max-width:1040px){.lume-wrap{width:calc(100% - 72px)}.section{padding-block:85px}.lume-services{padding-top:0}.lume-intro-grid{gap:40px}.lume-section-heading{gap:30px;margin-bottom:55px}.lume-service{gap:6%;margin-bottom:85px}.lume-process{gap:28px}.lume-process h3{font-size:20px}.lume-studio-grid{gap:6%}.lume-service-copy .lume-eyebrow{font-size:10px}.lume-service h3{font-size:25px}.lume-service-copy>p:not(.lume-eyebrow){font-size:13px}.lume-tags{gap:8px 10px}.lume-service .lume-text-link{font-size:12px}}
@media(max-width:1040px){html{scroll-padding-top:24px}.lume-wrap{width:calc(100% - 44px)}.section{padding-block:70px}.lume-header.site-header{padding:22px 22px 0;align-items:center}.lume-brand img{width:145px}.lume-nav.nav{display:none}.nav-toggle{display:block;position:relative;z-index:95;width:42px;height:42px;padding:8px}.nav-toggle span{width:25px;height:1px}.nav-overlay{padding:110px 28px 45px}.lume-hero.hero{aspect-ratio:auto;background:#1b1e20;overflow:hidden;container-type:normal;min-height:0;padding:0}.lume-hero .hero__stage{position:relative;display:flex;flex-direction:column;height:auto;min-height:0;padding-top:130px}.lume-hero .hero__copy{position:relative;left:auto;top:auto;width:100%;padding:0 22px;order:0}.lume-kicker{font-size:14px;letter-spacing:.16em;margin-bottom:21px}.lume-hero h1{font-size:clamp(26px,6.75vw,48px);font-weight:500;line-height:1.65;letter-spacing:.01em}.lume-hero .hero__lead{font-size:12px;line-height:2.1;letter-spacing:.02em;margin-top:18px;max-width:340px}.lume-hero .hero__actions{margin-top:24px}.lume-hero .lume-button{font-size:13px;height:49px;width:245px;padding:12px 22px;gap:20px}.lume-hero .lume-arrow{font-size:25px}.lume-hero .hero__photo-wrap{display:block;position:relative;inset:auto;order:1;width:100%;height:280px;margin-top:25px;overflow:hidden;transform:none!important;clip-path:none;border:0;aspect-ratio:auto}.lume-hero .hero__photo{position:static;width:100%;height:100%;aspect-ratio:510/710;object-fit:contain;object-position:center;background:#1b1e20;transform:none!important}.lume-hero-aside{display:none}.lume-domains{position:relative;inset:auto;order:2;display:grid;grid-template-columns:1fr;gap:0;margin:15px 22px 25px}.lume-domains a{font-size:14px;letter-spacing:.06em;min-height:44px;padding:12px 0;border-left:0;border-bottom:1px solid #ffffff26}.lume-intro-grid,.lume-studio-grid,.lume-contact-grid{grid-template-columns:1fr;gap:32px}.section__head h2,.lume-studio h2{font-size:30px;line-height:1.7}.lume-eyebrow{font-size:10px;margin-bottom:18px}.lume-prose{font-size:13px;line-height:2.2;padding:0}.lume-desktop-break{display:none}.lume-section-heading{display:block;padding-top:24px;margin-bottom:40px}.lume-section-heading>p{margin-top:25px;padding-bottom:0;font-size:12px}.lume-section-heading h2.lume-en-title{font-size:65px}.lume-en-title span{font-size:11px;margin-left:22px}.lume-services{padding-top:0}.lume-service,.lume-service--reverse{grid-template-columns:1fr;gap:27px;margin-bottom:64px}.lume-service--reverse .lume-service-image,.lume-service--reverse .lume-service-copy{grid-column:auto;grid-row:auto}.lume-number{font-size:43px;margin-bottom:17px}.lume-service h3{font-size:26px;margin-bottom:19px}.lume-service-copy>p:not(.lume-eyebrow){font-size:13px}.lume-service-copy{padding:0}.lume-service-image figcaption{font-size:9px;margin-top:9px}.lume-image-note{font-size:10px;text-align:left;line-height:1.9}.lume-process{grid-template-columns:1fr;gap:32px}.lume-process li{padding-top:21px}.lume-process h3{font-size:23px;margin:20px 0 13px}.lume-process p{font-size:13px}.lume-studio-image img{aspect-ratio:3/2;object-fit:cover}.lume-studio-copy{padding-top:5px}.lume-studio-copy>p:not(.lume-eyebrow){font-size:13px}.lume-studio-facts>div{grid-template-columns:75px 1fr;gap:15px}.lume-studio-facts dd{font-size:12px}.lume-contact-copy{font-size:13px}.lume-contact-status{padding-top:20px}.lume-contact-status strong{font-size:12px}.lume-footer{padding:52px 0 25px}.lume-footer-top{grid-template-columns:1fr;gap:35px;padding-bottom:35px}.lume-footer-brand{width:180px}.lume-footer-top>div>p{font-size:11px;margin-top:20px}.lume-footer-top nav{gap:24px 20px}.lume-footer-top nav a{font-size:23px}.lume-privacy summary{font-size:11px}.lume-privacy summary span{display:block;margin:8px 0 0 18px}.lume-footer-bottom{font-size:9px;align-items:center}.lume-footer-bottom a{gap:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}[data-reveal]{transform:none!important;clip-path:none!important;transition:opacity .6s ease!important}.hero__ambient{display:none}.marquee__inner{animation-duration:55s}.lume-arrow,.lume-text-link span{transform:none!important}}

/* Match final reveal state and preserve CTA labels at every width. */
.lume-hero .hero__copy [data-reveal].is-visible{transform:none;clip-path:none}.lume-button>span{flex-shrink:0}

@media(max-width:1040px){.lume-header .nav-toggle{display:flex;gap:7px;align-items:center;justify-content:center}.lume-hero .hero__photo-wrap{height:clamp(300px,53vw,480px)}.lume-hero .hero__photo{width:auto;height:100%;margin-inline:auto;max-width:100%;background:transparent}.lume-hero .hero__photo-wrap::before{display:none}}
/* Readable body copy and accurate closed disclosure layout. */
.lume-section-heading{padding-bottom:12px}.lume-section-heading h2.lume-en-title{line-height:1.25}
.lume-privacy:not([open])>div{display:none}
.lume-prose,.lume-service-copy>p:not(.lume-eyebrow),.lume-process p,.lume-studio-copy>p:not(.lume-eyebrow),.lume-contact-copy{font-size:15px;line-height:2.1}
.lume-service-copy p.lume-service-note,.lume-contact-status p{font-size:13px;line-height:2}
.lume-image-note{font-size:12px;line-height:1.9}
@media(max-width:1040px){.lume-hero .hero__lead{font-size:14px;line-height:2}.lume-section-heading>p{font-size:14px;line-height:2}.lume-studio-facts dd{font-size:13px}}
:root{--fw-display:500;--fw-body:400;--fw-strong:700;--ls-en:.12em}
@media(min-width:1041px){.lume-service-image{position:sticky;top:40px;align-self:start}}
@media(prefers-reduced-motion:reduce){.lume-service-image{position:relative;top:auto}}
