/*
Theme Name: Emitas Final Responsive
Template: lightning
Version: 4.6.0
Description: Emitas approved V6.16 final design, motion and responsive layout.
*/


:root{--ink:#171717;--paper:#f5f4f0;--dark:#080b0d;--muted:#6c6c68;--line:rgba(20,20,20,.14);--white:#fff;--serif:"Hiragino Mincho ProN","Yu Mincho",serif;--sans:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);letter-spacing:.06em;line-height:1.9}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.wrap{width:min(88vw,1280px);margin:auto}.eyebrow{font-size:10px;letter-spacing:.25em;color:#777;text-transform:uppercase}.serif{font-family:var(--serif)}
.hero{position:relative;background:#d9d5cf;overflow:hidden}.hero>img{width:100%;height:auto}.hero-links{position:absolute;inset:0;z-index:2}.hero-links a{position:absolute;top:6.3%;height:6%;display:block;color:transparent}.hero-links .logo{left:4.6%;width:10%}.hero-links .about{left:39.8%;width:5%}.hero-links .brands{left:46.1%;width:5%}.hero-links .partnership{left:53.0%;width:7%}.hero-links .market{left:62.2%;width:5%}.hero-links .company{left:69.2%;width:6%}.hero-links .news{left:76.8%;width:4%}.hero-links .contact{left:82.8%;width:6%}.hero-links .menu{right:3.8%;width:3%;top:5.5%}
.section{padding:7vw 0}.about{background:#f7f6f2}.about-grid{display:grid;grid-template-columns:1fr 1.7fr .55fr;gap:4.5vw;align-items:center}.about-copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,3.1vw,54px);line-height:1.45;letter-spacing:.08em;margin:1.1rem 0 1.4rem}.about-copy p{font-size:14px;line-height:2.25;color:#555;margin:0}.about-copy .lead{font-size:15px}.about-image{overflow:hidden}.about-image img{width:100%;aspect-ratio:1.7/1;object-fit:cover;transition:transform 1.2s var(--ease)}.about-image:hover img{transform:scale(1.035)}.about-side{border-left:1px solid #aaa;padding-left:2vw;font-family:var(--serif);font-size:14px;line-height:2.2;color:#555}.text-link{display:inline-flex;align-items:center;gap:12px;margin-top:1.6rem;font-size:11px;letter-spacing:.15em;border-bottom:1px solid #999;padding-bottom:5px}.text-link:after{content:"→";font-size:15px}
.brands{background:linear-gradient(180deg,#0a0d0f,#050708);color:#fff;padding:5.5vw 0}.brands-grid{display:grid;grid-template-columns:1fr 3.3fr;gap:4vw;align-items:end}.brands-intro h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,3vw,50px);line-height:1.3;margin:1rem 0}.brands-intro p{font-size:12px;color:#bbb;line-height:2}.brands-intro .text-link{color:#fff;border-color:#666}.brand-cards{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#444}.brand-card{background:#0b0d0e;min-width:0}.brand-image{aspect-ratio:1/1;overflow:hidden;background:#111}.brand-image img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease);filter:saturate(.88)}.brand-card:hover img{transform:scale(1.05);filter:saturate(1)}.brand-meta{padding:14px 13px 17px;border-top:1px solid #333}.brand-name{font-size:14px;letter-spacing:.18em}.brand-desc{font-size:9px;color:#999;margin-top:4px;letter-spacing:.1em}
.partnership{background:#f7f6f2}.partner-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:5vw;align-items:center}.partner-image img{width:100%;aspect-ratio:1.55/1;object-fit:cover}.partner-copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(32px,3.3vw,54px);line-height:1.35;margin:1rem 0 1.4rem}.partner-copy p{font-size:14px;line-height:2.25;color:#555}.partner-note{margin-top:2rem;padding-top:1rem;border-top:1px solid #ddd;font-family:var(--serif);font-size:13px;color:#777}
.market{position:relative;padding:0;background:#243c52}.market img{width:100%;height:auto}.market-link{position:absolute;left:6%;bottom:10%;font-size:11px;color:#fff;border-bottom:1px solid rgba(255,255,255,.5);padding-bottom:4px}
.news-contact{padding:4vw 0}.nc-grid{display:grid;grid-template-columns:.8fr 1.6fr .85fr;gap:4vw;align-items:center}.nc-block{min-height:150px;border-right:1px solid #ddd;padding-right:3vw}.nc-block:last-child{border-right:0}.nc-block h3{font-family:var(--serif);font-weight:400;font-size:28px;margin:1rem 0}.nc-block p{font-size:12px;color:#666;line-height:2}.contact-card{background:#0a0c0d;color:#fff;padding:2.2rem;min-height:150px;display:flex;flex-direction:column;justify-content:center}.contact-card .logo{font-family:Georgia,serif;font-size:20px;letter-spacing:.3em}.contact-card p{color:#aaa;margin:.5rem 0 1rem}.contact-card a{font-size:11px;letter-spacing:.12em}
.footer{background:#080b0d;color:#fff;padding:3.2vw 0}.footer-grid{display:grid;grid-template-columns:1fr 2.6fr auto;align-items:center;gap:3vw}.footer-logo{font-family:Georgia,serif;font-size:22px;letter-spacing:.3em}.footer-nav{display:flex;gap:2.3vw;justify-content:center;font-size:9px;letter-spacing:.13em;color:#ccc}.social{font-size:11px;letter-spacing:.1em;color:#bbb}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.show{opacity:1;transform:none}

/* V2.2 refinements */
.values-visual{width:100%;height:240px;overflow:hidden;margin:0 0 4vw;border-radius:2px;position:relative}
.values-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,24,24,.04),rgba(255,255,255,0));pointer-events:none}
.values-visual img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.9)}
.business-intro{grid-template-columns:.6fr 1.55fr .95fr;gap:4vw}
.business-intro h2{font-size:clamp(34px,3.35vw,50px);line-height:1.35;white-space:nowrap;letter-spacing:.055em}
.story-copy h2{font-size:clamp(30px,3.4vw,52px);line-height:1.45;white-space:nowrap}
.approach:before{content:"";position:absolute;width:38vw;height:38vw;right:-12vw;top:-14vw;border-radius:50%;background:rgba(255,255,255,.22);filter:blur(2px)}
.approach-wrap{position:relative;z-index:1}
.brands-late{background:linear-gradient(180deg,#0a0d0f 0%,#07090a 100%)}



/* V1.2 layout refinements */
.hero{height:min(760px,56vw);min-height:560px;background:#c8d5dc;position:relative;color:#fff}
.hero-photo{width:100%;height:100%;object-fit:cover;object-position:center center;display:block}
.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(11,25,34,.28),rgba(11,25,34,.03) 58%,rgba(11,25,34,.05));pointer-events:none}
.hero-header{position:absolute;z-index:3;top:0;left:0;right:0;height:92px;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between}
.hero-brand{font-family:Georgia,"Times New Roman",serif;font-size:27px;letter-spacing:.18em;color:#fff;text-shadow:0 1px 12px rgba(0,0,0,.15)}
.hero-nav{display:flex;align-items:center;gap:clamp(18px,2.2vw,38px);margin-left:auto;margin-right:32px}
.hero-nav a{font-size:10px;letter-spacing:.16em;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.22);white-space:nowrap;opacity:.96;transition:opacity .25s ease}
.hero-nav a:hover{opacity:.65}
.hero-menu{width:28px;height:22px;display:flex;flex-direction:column;justify-content:space-between;padding:2px 0}
.hero-menu span{height:1px;background:#fff;width:100%;box-shadow:0 1px 4px rgba(0,0,0,.25)}
.hero-copy{position:absolute;z-index:3;left:8.5vw;top:50%;transform:translateY(-38%);text-shadow:0 2px 20px rgba(0,0,0,.16)}
.hero-name{font-family:Georgia,"Times New Roman",serif;font-size:clamp(13px,1.25vw,18px);letter-spacing:.16em;font-weight:300;margin-bottom:12px}
.hero-copy h1{font-family:var(--serif);font-weight:400;font-size:clamp(42px,4.6vw,70px);line-height:1.48;letter-spacing:.08em;margin:0 0 22px}
.hero-copy p{font-size:13px;line-height:2.15;letter-spacing:.13em;margin:0;color:rgba(255,255,255,.94)}
.hero-scroll{display:flex;align-items:center;gap:13px;margin-top:58px;font-size:10px;letter-spacing:.22em;color:#fff}
.hero-scroll span{display:block;width:1px;height:54px;background:rgba(255,255,255,.8)}
.section{min-height:620px;display:flex;align-items:center}
.about{padding:0;min-height:620px}
.about-grid{width:min(88vw,1280px);margin:auto;min-height:620px;display:grid;grid-template-columns:1.05fr 1.45fr;gap:5vw;align-items:center}
.about-side{display:none}
.about-copy h2{font-size:clamp(30px,3vw,48px);margin:.8rem 0 1.5rem}
.about-copy p{font-size:13px;line-height:2.05}
.about-image img{aspect-ratio:1.42/1}
.brands{min-height:620px;padding:0;display:flex;align-items:center}
.brands-grid{width:min(88vw,1280px);margin:auto;grid-template-columns:.85fr 3.15fr;gap:4vw;align-items:center}
.brands-intro h2{font-size:clamp(28px,2.7vw,44px)}
.partner-grid{width:min(88vw,1280px);margin:auto;min-height:620px;grid-template-columns:1.2fr 1fr}
.partnership{padding:0;min-height:620px}
.partner-copy h2{font-size:clamp(30px,3vw,48px)}
.market{min-height:620px;height:620px}
.market img{height:100%;object-fit:cover}
.news-contact{min-height:460px;display:flex;align-items:center;padding:0}
.nc-grid{width:min(88vw,1280px);margin:auto}
.footer{min-height:190px;display:flex;align-items:center}


/* V1.3 market cleanup */
.market{position:relative;overflow:hidden;background:#243c52}
.market img{width:100%;height:100%;object-fit:cover;object-position:center center}
.market-copy{position:absolute;z-index:2;left:8.5vw;top:50%;transform:translateY(-50%);color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.25)}
.market-copy .eyebrow{color:rgba(255,255,255,.8);margin-bottom:1.2rem}
.market-copy h2{font-family:var(--serif);font-weight:400;font-size:clamp(30px,3.2vw,52px);line-height:1.4;letter-spacing:.08em;margin:0 0 1.2rem}
.market-copy p{font-size:13px;line-height:2.1;letter-spacing:.08em;margin:0;color:rgba(255,255,255,.92)}
.market-copy .market-link{position:static;display:inline-flex;margin-top:2rem;color:#fff;border-bottom:1px solid rgba(255,255,255,.6);padding-bottom:4px;font-size:11px}


/* V2 long-form TOP refinements */
.story{background:#111417;color:#fff;min-height:650px}.story-grid{width:min(88vw,1280px);margin:auto;display:grid;grid-template-columns:.55fr 1.45fr;gap:8vw;align-items:center;min-height:650px}.story-label{align-self:stretch;padding-top:12vw;border-right:1px solid rgba(255,255,255,.16);position:relative}.story-label .eyebrow{color:#999}.story-index{font-family:Georgia,serif;font-size:clamp(70px,9vw,140px);line-height:1;color:rgba(255,255,255,.08);position:absolute;bottom:7vw;left:0}.story-copy h2,.values-head h2,.business-intro h2,.approach-head h2,.company-head h2{font-family:var(--serif);font-weight:400;font-size:clamp(32px,4vw,60px);line-height:1.5;letter-spacing:.08em;margin:1.2rem 0 2rem}.story-copy p{font-size:14px;line-height:2.4;color:#d3d3d0;margin:0 0 1.2rem}
.values{background:#ebe9e3;min-height:720px}.values-wrap{width:min(88vw,1280px);margin:auto}.values-head{display:grid;grid-template-columns:1.05fr 1.4fr 1fr;gap:5vw;align-items:end;margin-bottom:5vw}.values-head h2{margin:0}.values-head p{font-size:13px;line-height:2.2;color:#666;margin:0}.values-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #bdbbb5;border-bottom:1px solid #bdbbb5}.value-card{padding:2.5rem 2.2rem 3rem;border-right:1px solid #bdbbb5}.value-card:last-child{border-right:0}.value-card span{font-family:Georgia,serif;font-size:13px;color:#8b8982}.value-card h3{font-family:Georgia,serif;font-size:18px;font-weight:400;letter-spacing:.16em;margin:1.4rem 0 .35rem}.value-card h4{font-family:var(--serif);font-size:25px;font-weight:400;margin:0 0 1rem}.value-card p{font-size:12px;line-height:2.15;color:#686762;margin:0}
.business{background:#f7f6f2;min-height:760px}.business-wrap{width:min(88vw,1280px);margin:auto}.business-intro{display:grid;grid-template-columns:.75fr 1.2fr 1fr;gap:5vw;align-items:end;margin-bottom:4vw}.business-intro h2{margin:0}.business-intro p{font-size:13px;line-height:2.2;color:#666;margin:0}.business-list{border-top:1px solid #c9c7c0}.business-row{display:grid;grid-template-columns:70px 1fr auto;gap:2vw;align-items:center;padding:2rem 0;border-bottom:1px solid #c9c7c0}.business-row .num{font-family:Georgia,serif;color:#999;font-size:14px}.business-row h3{font-family:Georgia,serif;font-size:17px;letter-spacing:.18em;font-weight:400;margin:0 0 .45rem}.business-row p{font-size:12px;color:#666;line-height:2;margin:0}.business-row>a{font-size:10px;letter-spacing:.16em;border-bottom:1px solid #aaa;padding-bottom:4px}
.market-long{min-height:680px;height:680px}.market-long .market-copy{left:8.5vw}.market-points{display:flex;gap:22px;margin-top:2rem;flex-wrap:wrap}.market-points span{font-size:9px;letter-spacing:.18em;color:rgba(255,255,255,.78);padding-bottom:5px;border-bottom:1px solid rgba(255,255,255,.35)}
.approach{background:linear-gradient(135deg,#f2eee7 0%,#e7e0d5 55%,#d8d0c4 100%);color:#171717;min-height:720px;position:relative;overflow:hidden}.approach-wrap{width:min(88vw,1280px);margin:auto}.approach-head{display:grid;grid-template-columns:.9fr 1.2fr 1fr;gap:5vw;align-items:end;margin-bottom:5vw}.approach-head h2{margin:0}.approach-head p{font-size:13px;line-height:2.2;color:#666;margin:0}.approach-flow{display:grid;grid-template-columns:1fr 50px 1fr 50px 1fr 50px 1fr 50px 1fr;align-items:center;border-top:1px solid #b8b1a6;border-bottom:1px solid #b8b1a6;padding:3.5rem 0}.approach-item{min-height:150px;display:flex;flex-direction:column;justify-content:space-between;padding:0 .8rem}.approach-item span{font-family:Georgia,serif;color:#999;font-size:13px}.approach-item strong{font-family:var(--serif);font-size:21px;font-weight:400;letter-spacing:.06em}.approach-item small{font-size:8px;letter-spacing:.18em;color:#888}.approach-line{height:1px;background:#b8b1a6}
.brands-late{background:linear-gradient(180deg,#0a0d0f,#050708);color:#fff;min-height:700px;padding:7vw 0}.brands-wrap{width:min(88vw,1280px);margin:auto}.brands-head{display:grid;grid-template-columns:.55fr .9fr 1fr;gap:5vw;align-items:end;margin-bottom:3.5vw}.brands-head h2{font-family:var(--serif);font-size:clamp(34px,3.8vw,58px);line-height:1.25;font-weight:400;margin:0}.brands-head p{font-size:12px;line-height:2;color:#aaa;margin:0}.brand-cards-late{grid-template-columns:repeat(5,1fr);gap:1px;background:#444}.brand-cards-late .brand-card{background:#0b0d0e}.brand-cards-late .brand-image{aspect-ratio:1/1}.brand-image-type{display:flex;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 35%,#24282b,#0e1012 62%)}.brand-image-type span{font-family:Georgia,serif;font-size:26px;letter-spacing:.12em;color:#ddd}.brands-late>.brands-wrap>.text-link{color:#fff;border-color:#555;margin-top:2rem}
.company-section{background:#f0eee8;min-height:600px}.company-grid{width:min(88vw,1280px);margin:auto;display:grid;grid-template-columns:1.15fr .85fr;gap:8vw;align-items:center}.company-head h2{margin:1rem 0 1.5rem}.company-head p{font-size:13px;line-height:2.2;color:#666;margin:0}.company-panel{background:#101315;color:#fff;min-height:330px;padding:3rem;display:flex;flex-direction:column;justify-content:center}.company-mark{font-family:Georgia,serif;font-size:38px;letter-spacing:.2em}.company-panel-line{width:70px;height:1px;background:#666;margin:2rem 0}.company-panel p{font-family:var(--serif);font-size:18px;line-height:1.9;color:#ddd}.company-mini{margin-top:1.5rem;font-size:9px;letter-spacing:.18em;color:#888}


/* V2.1 refinement */
.story{background:#f1eee7;color:var(--ink);min-height:620px}
.story-grid{grid-template-columns:1.05fr 1fr;gap:7vw;min-height:620px}
.story-media{height:430px;overflow:hidden;position:relative}
.story-media:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(224,151,92,.12),rgba(255,255,255,0) 55%);pointer-events:none}
.story-media img{width:100%;height:100%;object-fit:cover;object-position:center;filter:saturate(.9)}
.story-label{display:none}
.story-copy{padding:1rem 0}
.story-copy .eyebrow{color:#777}
.story-copy h2{margin:1rem 0 1.6rem}
.story-copy p{color:#555}
.values-head{grid-template-columns:1.2fr 1.2fr 1fr;gap:4vw}
.values-head h2{display:flex;flex-wrap:wrap;gap:.2em .65em;align-items:baseline;font-size:clamp(24px,2.25vw,38px);line-height:1.5;white-space:nowrap}
.values-head h2 span{display:inline-block}
.business-intro{grid-template-columns:.75fr 1.25fr 1fr;gap:4vw}
.business-intro h2{font-size:clamp(30px,3vw,48px);white-space:nowrap}


/* V2.2 refinements */
.story-copy h2{font-size:clamp(25px,2.4vw,38px);line-height:1.35;margin:1rem 0 1.6rem}
.values{display:block}
.values-visual img{object-position:center center}
.partner-image img{object-position:center center}

/* === EMITAS FINAL REFINEMENTS === */
.story .story-media img{filter:none!important;object-fit:cover;}
.story .story-media{min-height:520px;}
.story h2{font-size:clamp(34px,3.2vw,56px)!important;line-height:1.35!important;letter-spacing:.03em!important;margin-bottom:28px!important;}
.values .values-wrap{display:block!important;}
.values .values-head{max-width:980px;margin:0 auto 70px;}
.values .values-head h2{display:flex;justify-content:center;gap:0.35em;flex-wrap:wrap;line-height:1.45!important;}
.values .values-head h2 span{display:inline!important;}
.values .values-head p{margin-left:auto;margin-right:auto;}
/* premium visual break */
.visual-strip{width:100%;overflow:hidden;background:#151614;margin:0;padding:0;}
.visual-strip-grid{display:grid;grid-template-columns:repeat(3,1fr);width:100%;height:360px;}
.visual-panel{position:relative;overflow:hidden;}
.visual-panel img{position:absolute;width:300%;height:100%;max-width:none;object-fit:cover;top:0;left:0;filter:saturate(.72) contrast(1.06) brightness(.86);transition:transform .9s cubic-bezier(.2,.7,.2,1),filter .5s ease;}
.visual-panel:nth-child(1) img{left:0;}
.visual-panel:nth-child(2) img{left:-100%;}
.visual-panel:nth-child(3) img{left:-200%;}
.visual-panel:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.03),rgba(0,0,0,.34));pointer-events:none;}
.visual-panel span{position:absolute;z-index:2;left:30px;bottom:25px;color:#fff;font-family:Georgia,"Times New Roman",serif;font-size:12px;letter-spacing:.28em;font-weight:400;}
.visual-panel:hover img{transform:scale(1.035);filter:saturate(.82) contrast(1.08) brightness(.9);}
/* business */
.business-section{background:#f2eee6;padding:150px 0 155px;}
.business-wrap{max-width:1180px;margin:0 auto;}
.business-head{text-align:center;max-width:850px;margin:0 auto 70px;}
.business-head h2{font-size:clamp(40px,4.2vw,68px);line-height:1.25;margin:18px 0 26px;letter-spacing:.02em;}
.business-head p{font-size:15px;line-height:2.2;color:rgba(20,30,35,.66);}
.business-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(20,30,35,.18);border-bottom:1px solid rgba(20,30,35,.18);}
.business-card{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:310px;padding:34px 34px 38px;color:#14232a;text-decoration:none;border-right:1px solid rgba(20,30,35,.14);transition:background .45s ease,transform .45s ease;}
.business-card:last-child{border-right:0;}
.business-card:hover{background:#e8e1d5;transform:translateY(-4px);}
.business-card-no{font-family:Arial,sans-serif;font-size:11px;letter-spacing:.18em;opacity:.45;margin-bottom:44px;}
.business-card small{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.25em;opacity:.52;}
.business-card h3{font-size:28px;font-weight:500;margin:13px 0 18px;letter-spacing:.03em;}
.business-card p{font-size:13px;line-height:2;color:rgba(20,30,35,.62);max-width:290px;margin:0;}
.business-arrow{position:absolute;right:30px;bottom:28px;font-size:22px;opacity:.55;}
/* restore the handshake panel as a restrained visual */
.partnership .partnership-media img{object-fit:cover;filter:saturate(.72) contrast(1.02);}

@media(max-width:640px){
 .visual-strip-grid{height:220px;}
 .visual-panel span{left:16px;bottom:16px;font-size:9px;}
 .story h2{font-size:32px!important;}
 .business-section{padding:100px 0;}
}

/* V2.4 requested refinements */
.about-copy p,.about-copy .lead{font-size:14px!important;line-height:2.25!important;letter-spacing:.02em!important;font-weight:400!important;color:#555!important;}
.story{min-height:auto!important;padding:82px 0!important;}
.story-grid{min-height:auto!important;grid-template-columns:1.05fr 1fr!important;gap:6vw!important;}
.story .story-media{height:320px!important;min-height:0!important;}
.story .story-media img{width:100%;height:100%;object-fit:cover!important;object-position:center center!important;}
.story .story-copy{padding:0!important;}
.story .story-copy h2{font-family:var(--serif)!important;font-size:clamp(24px,2.15vw,34px)!important;line-height:1.4!important;letter-spacing:.04em!important;margin:12px 0 18px!important;}
.story .story-copy p{font-size:13px!important;line-height:2.05!important;margin:0 0 10px!important;}
.visual-strip-grid{height:320px!important;}
.visual-panel img{position:absolute!important;width:100%!important;height:100%!important;max-width:none!important;left:0!important;top:0!important;object-fit:cover!important;object-position:center center!important;filter:saturate(.78) contrast(1.03) brightness(.92)!important;}
.visual-panel:nth-child(1) img,.visual-panel:nth-child(2) img,.visual-panel:nth-child(3) img{left:0!important;}
.visual-panel:hover img{transform:scale(1.015)!important;}
.business-head h2{font-family:var(--serif)!important;font-weight:400!important;letter-spacing:.06em!important;}
.market img,.market-long img{image-rendering:auto!important;filter:none!important;}


/* V2.8 stability/readability fixes */
.story{background:#0d1216 !important;color:#fff !important;}
.story-copy{color:#fff !important;}
.story-copy .eyebrow{color:#9ca9b3 !important;}
.story-copy h2{color:#fff !important;font-size:clamp(28px,3vw,44px) !important;line-height:1.45 !important;}
.story-copy p{color:#d8dde1 !important;font-size:14px !important;line-height:2.15 !important;}
.story-media img{filter:none !important;}
/* Keep the stable pre-image-replacement assets; do not use screenshots/mockup crops as section photography. */

/* V2.9 independent security/mobility section visuals */
.about-image img,.story-media img,.partner-image img,.market img{filter:none!important;}
.business-visual{width:100%;height:320px;overflow:hidden;margin:2.6rem 0 3.2rem;background:#dfe4e7;}
.business-visual img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}


.visual-panel img{object-fit:cover!important;object-position:center!important;transform:none!important;}


/* V3.0 image-fit corrections: preserve complete section photography */
.about-image{overflow:visible!important;}
.about-image img{width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;display:block!important;}
.story .story-media{height:auto!important;min-height:0!important;aspect-ratio:1407/441!important;overflow:hidden!important;background:#0d1216!important;}
.story .story-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;display:block!important;}
.visual-strip-grid{height:auto!important;align-items:stretch!important;}
.visual-panel{aspect-ratio:1.63/1!important;background:#111!important;}
.visual-panel img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;transform:none!important;}
.business-visual{height:auto!important;aspect-ratio:1212/582!important;overflow:hidden!important;}
.business-visual img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;}
.partner-image{overflow:visible!important;}
.partner-image img{width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;display:block!important;}
.market{height:auto!important;min-height:0!important;aspect-ratio:1242/534!important;}
.market img{width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#243c52!important;}
.company-panel{min-height:0!important;height:auto!important;}
.company-panel img{width:100%!important;height:auto!important;min-height:0!important;object-fit:contain!important;object-position:center!important;display:block!important;}




/* Final no-crop image fix: show every source image in full */
.about-image,.story-media,.visual-panel,.business-visual,.partner-image,.market,.company-panel{overflow:visible!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;background:#eef0f1!important;}
.about-image img,.story-media img,.visual-panel img,.business-visual img,.partner-image img,.market img,.company-panel img{position:static!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;min-height:0!important;max-width:100%!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;transform:none!important;clip-path:none!important;}
.visual-strip{align-items:start!important;}
.visual-panel{display:block!important;}
.market{display:block!important;}




/* V3.2 accepted-image rebuild: use clean photo-only crops from approved visual */
.about-image{overflow:hidden!important;}
.about-image img{width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;display:block!important;transform:none!important;}
.story .story-media{height:auto!important;min-height:0!important;aspect-ratio:auto!important;overflow:hidden!important;}
.story .story-media img{position:static!important;width:100%!important;height:auto!important;object-fit:contain!important;object-position:center!important;display:block!important;transform:none!important;}
.visual-strip-grid{height:auto!important;display:grid!important;grid-template-columns:repeat(3,1fr)!important;}
.visual-panel{height:auto!important;aspect-ratio:auto!important;overflow:hidden!important;background:#111!important;}
.visual-panel img{position:static!important;width:100%!important;height:auto!important;max-width:100%!important;object-fit:contain!important;object-position:center!important;display:block!important;transform:none!important;filter:none!important;}
.visual-panel:after{display:none!important;}
.business-visual{height:auto!important;overflow:hidden!important;background:#eef0f1!important;}
.business-visual img{width:100%!important;height:auto!important;object-fit:contain!important;display:block!important;}
.partner-image{overflow:hidden!important;}
.partner-image img{width:100%!important;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;display:block!important;}
.market,.market-long{height:auto!important;min-height:420px!important;overflow:hidden!important;background:#f4f3ef!important;position:relative!important;}
.market img,.market-long img{width:100%!important;height:auto!important;min-height:420px!important;object-fit:cover!important;object-position:center!important;display:block!important;}
.market:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,rgba(247,246,242,.98) 0%,rgba(247,246,242,.94) 30%,rgba(247,246,242,.25) 53%,rgba(247,246,242,0) 70%);pointer-events:none;}
.market-copy{color:#111!important;text-shadow:none!important;}
.market-copy .eyebrow,.market-copy p,.market-copy .market-link{color:#333!important;}
.market-copy .market-link{border-bottom-color:#777!important;}
.company-panel{padding:0!important;min-height:0!important;overflow:hidden!important;background:#111!important;}
.company-panel img{width:100%!important;height:auto!important;min-height:0!important;object-fit:contain!important;object-position:center!important;display:block!important;}




/* V3.3 requested corrections only */
/* ABOUT/STORY images are swapped in markup. */
.about-image{overflow:hidden!important;}
.about-image img{width:100%!important;height:360px!important;object-fit:cover!important;object-position:center 52%!important;display:block!important;}
.story .story-media{height:330px!important;min-height:330px!important;overflow:hidden!important;background:#0d1216!important;}
.story .story-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center 48%!important;display:block!important;}

/* GLOBAL PARTNERSHIP: restore a substantial image area */
.partner-grid{grid-template-columns:1.15fr 1fr!important;align-items:stretch!important;}
.partner-image{height:390px!important;min-height:390px!important;overflow:hidden!important;background:#111!important;align-self:center!important;}
.partner-image img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;display:block!important;}

/* MARKET: higher-resolution replacement, displayed cleanly */
.market,.market-long{height:520px!important;min-height:520px!important;overflow:hidden!important;position:relative!important;}
.market img,.market-long img{width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important;object-position:center center!important;display:block!important;image-rendering:auto!important;}

/* COMPANY: enlarge image so it fills the visual panel */
.company-grid{align-items:stretch!important;}
.company-panel{height:390px!important;min-height:390px!important;overflow:hidden!important;padding:0!important;background:#111!important;align-self:center!important;}
.company-panel img{width:100%!important;height:100%!important;min-height:390px!important;object-fit:cover!important;object-position:center center!important;display:block!important;}





/* V3.4: clean standalone visual crops and corrected framing */
.story .story-media{height:360px!important;min-height:360px!important;overflow:hidden!important;}
.story .story-media img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;}
.partner-image{height:390px!important;min-height:390px!important;overflow:hidden!important;}
.partner-image img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;}
.market,.market-long{height:520px!important;min-height:520px!important;overflow:hidden!important;}
.market img,.market-long img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;}
.company-panel{height:390px!important;min-height:390px!important;overflow:hidden!important;}
.company-panel img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center center!important;}




/* V3.5: requested vertical breathing room only */
.about-grid{padding-top:72px!important;padding-bottom:72px!important;box-sizing:border-box!important;}
.partnership .partner-grid{padding-top:72px!important;padding-bottom:72px!important;box-sizing:border-box!important;}




/* V4.6 COMPANY panel alignment fix */
.company-panel{
  padding:3rem 3.25rem !important;
  box-sizing:border-box !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:center !important;
  align-items:flex-start !important;
  text-align:left !important;
}
.company-panel .company-mark,
.company-panel .company-panel-line,
.company-panel p,
.company-panel .company-mini{
  margin-left:0 !important;
  transform:none !important;
}




#brands .brands-head h2{white-space:nowrap !important;word-break:keep-all !important;overflow-wrap:normal !important;}




.story .story-copy p{font-size:14px!important;line-height:2.25!important;letter-spacing:.02em!important;font-weight:400!important;color:#d8dde1!important;margin:0!important;}
.story .story-copy p + p{margin-top:1.25rem!important;}




/* V5.1: hide faint text baked into the MARKET source image on the copy side */
.market:before{
  background:linear-gradient(90deg,
    #f7f6f2 0%,
    #f7f6f2 39%,
    rgba(247,246,242,.995) 44%,
    rgba(247,246,242,.88) 50%,
    rgba(247,246,242,.38) 58%,
    rgba(247,246,242,0) 70%)!important;
}




/* V5.5: ABOUT title one-line + brand card cleanup */
@media (min-width:901px){
  .about-copy h2{font-size:clamp(28px,2.55vw,44px)!important;letter-spacing:.055em!important;white-space:nowrap!important;}
}

.brand-meta{min-height:auto!important;}



/* V5.6: image-free brand list; items can be added/removed without layout breakage */
.brands-late .brands-wrap{display:block;}
.brands-late .brands-head{margin-bottom:48px;}
.brand-name-list{width:100%;border-top:1px solid rgba(255,255,255,.22);}
.brand-name-item{display:flex;align-items:center;min-height:92px;padding:0 12px;border-bottom:1px solid rgba(255,255,255,.22);font-family:Georgia,"Times New Roman",serif;font-size:clamp(30px,3.1vw,52px);font-weight:400;letter-spacing:.08em;color:#fff;}
.brands-text-link{display:inline-block;margin-top:34px;}




/* V5.7: BRANDS pattern 6 — compact two-column layout with accent rules */
.brands-late{min-height:auto!important;padding:5.2vw 0!important;}
.brands-late .brands-wrap{display:grid!important;grid-template-columns:minmax(280px,.78fr) minmax(480px,1.22fr);column-gap:8vw;row-gap:24px;align-items:center;}
.brands-late .brands-head{display:block!important;margin:0!important;align-self:center;}
.brands-late .brands-head .eyebrow{margin-bottom:18px;}
.brands-late .brands-head h2{font-size:clamp(34px,3.2vw,52px)!important;line-height:1.25;margin:0 0 24px!important;white-space:nowrap;}
.brands-late .brands-head p{font-size:12px;line-height:2;color:#aaa;margin:0;}
.brand-name-list{width:100%;border:0!important;align-self:center;}
.brand-name-item{position:relative;display:grid!important;grid-template-columns:max-content 1fr;gap:28px;align-items:center;min-height:62px!important;padding:0!important;border:0!important;font-family:Georgia,"Times New Roman",serif;font-size:clamp(22px,2vw,32px)!important;font-weight:400;letter-spacing:.07em;color:#fff;}
.brand-name-item::after{content:"";height:1px;background:linear-gradient(90deg,rgba(194,161,105,.78),rgba(194,161,105,.34));}
.brand-name-item::before{content:"";position:absolute;right:-2px;width:5px;height:5px;border-radius:50%;background:#bda06f;}
.brands-text-link{grid-column:1 / 2;display:inline-block!important;width:max-content;margin-top:6px!important;}




:root{--em-ease:cubic-bezier(.22,.61,.36,1)}
html.em-motion .em-reveal{opacity:0;transform:translateY(28px);transition:opacity .85s var(--em-ease),transform .95s var(--em-ease);transition-delay:var(--d,0ms);will-change:opacity,transform}
html.em-motion .em-reveal.em-left{transform:translateX(-30px)}
html.em-motion .em-reveal.em-right{transform:translateX(30px)}
html.em-motion .em-reveal.em-show{opacity:1;transform:none}
html.em-motion .em-img{overflow:hidden}
html.em-motion .em-img img{transform:scale(1.035);transition:transform 1.8s var(--em-ease)}
html.em-motion .em-img.em-show img{transform:scale(1)}
html.em-motion .em-stagger{opacity:0;transform:translateY(20px);transition:opacity .72s var(--em-ease),transform .82s var(--em-ease);transition-delay:var(--d,0ms)}
html.em-motion .em-stagger.em-show{opacity:1;transform:none}
.emitas-site a{transition:opacity .25s ease}.emitas-site a:hover{opacity:.72}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}.em-reveal,.em-stagger,.em-img img{opacity:1!important;transform:none!important;transition:none!important}}



@keyframes emHeroIn{from{opacity:0;transform:translate3d(0,22px,0)}to{opacity:1;transform:none}}
html.em-motion #top .hero-name{opacity:0;animation:emHeroIn 1s cubic-bezier(.22,.61,.36,1) .25s forwards}
html.em-motion #top .hero-title{opacity:0;animation:emHeroIn 1.1s cubic-bezier(.22,.61,.36,1) .75s forwards}
@media(prefers-reduced-motion:reduce){html.em-motion #top .hero-name,html.em-motion #top .hero-title{opacity:1!important;transform:none!important;animation:none!important}}



@media (max-width: 768px) {
  :root{--m-pad:26px}
  html,body{width:100%;max-width:100%;overflow-x:hidden}
  body{min-width:0!important}
  .wrap{width:100%!important;max-width:none!important;margin:0!important;padding-left:var(--m-pad)!important;padding-right:var(--m-pad)!important;box-sizing:border-box!important}
  .section{padding-top:72px!important;padding-bottom:72px!important}
  .eyebrow{font-size:10px!important;letter-spacing:.24em!important;margin-bottom:20px!important}
  p{word-break:normal!important;overflow-wrap:normal!important}
  img{max-width:100%}

  /* TOP */
  #top{
    height:auto!important;min-height:100svh!important;
    display:grid!important;grid-template-rows:34svh minmax(430px,66svh)!important;
    position:relative!important;background:#b8c7cf!important;
  }
  #top .hero-photo{
    position:relative!important;inset:auto!important;
    width:100%!important;height:34svh!important;min-height:220px!important;
    object-fit:cover!important;object-position:center 48%!important;
    grid-row:1!important;
  }
  #top .hero-header{
    position:absolute!important;top:0!important;left:0!important;right:0!important;
    padding:20px 24px!important;z-index:10!important;
  }
  #top .hero-brand{font-size:26px!important}
  #top .hero-nav{display:none!important}
  #top .hero-copy{
    position:relative!important;left:auto!important;top:auto!important;right:auto!important;bottom:auto!important;
    transform:none!important;grid-row:2!important;
    width:100%!important;max-width:none!important;
    padding:50px var(--m-pad) 58px!important;box-sizing:border-box!important;
    display:flex!important;flex-direction:column!important;justify-content:flex-start!important;
    color:#fff!important;
  }
  #top .hero-name{font-size:12px!important;line-height:1.5!important;letter-spacing:.09em!important;margin:0 0 22px!important}
  #top .hero-title{font-size:clamp(38px,11vw,48px)!important;line-height:1.5!important;letter-spacing:.035em!important;margin:0!important}
  #top .hero-scroll{display:none!important}

  /* ABOUT */
  #about .about-grid{display:grid!important;grid-template-columns:1fr!important;gap:36px!important}
  #about .about-copy{width:100%!important;max-width:none!important}
  #about h2{font-size:32px!important;line-height:1.55!important;letter-spacing:.03em!important;margin-bottom:24px!important}
  #about p{font-size:14px!important;line-height:2!important}
  #about .about-copy br{display:none!important}
  #about .about-image{
    width:100%!important;height:190px!important;min-height:0!important;overflow:hidden!important;
    margin:0!important;background:none!important;
  }
  #about .about-image img{
    width:100%!important;height:100%!important;min-height:0!important;
    object-fit:cover!important;object-position:center 48%!important;display:block!important;
  }

  /* STORY */
  #story .story-grid{display:grid!important;grid-template-columns:1fr!important;gap:34px!important}
  #story .story-copy{width:100%!important;max-width:none!important}
  #story h2{font-size:32px!important;line-height:1.55!important}
  #story p{font-size:14px!important;line-height:2!important}
  #story .story-media{width:100%!important;height:200px!important;overflow:hidden!important}
  #story .story-media img{width:100%!important;height:100%!important;object-fit:cover!important}

  /* VALUES */
  #values .values-wrap{width:100%!important;padding-left:var(--m-pad)!important;padding-right:var(--m-pad)!important}
  #values .values-head{
    display:block!important;width:100%!important;max-width:none!important;
    margin:0 0 48px!important;padding:0!important;
  }
  #values .values-head h2{
    display:block!important;width:100%!important;max-width:none!important;
    margin:0 0 26px!important;padding:0!important;
    font-size:34px!important;line-height:1.55!important;letter-spacing:.025em!important;
    writing-mode:horizontal-tb!important;word-break:keep-all!important;
  }
  #values .values-head h2 span{display:block!important;width:100%!important;white-space:nowrap!important}
  #values .values-head p{
    width:100%!important;max-width:none!important;margin:0!important;
    font-size:14px!important;line-height:2!important;
  }
  #values .values-head p br{display:none!important}
  #values .values-grid{
    display:grid!important;grid-template-columns:1fr!important;width:100%!important;
    border-top:1px solid #bdbbb5!important;border-bottom:1px solid #bdbbb5!important;
  }
  #values .value-card{width:100%!important;max-width:none!important;padding:34px 4px!important;margin:0!important}
  #values .value-card+ .value-card{border-top:1px solid #d2d0ca!important}
  #values .value-card h3{font-size:15px!important;letter-spacing:.16em!important}
  #values .value-card h4{font-size:25px!important;line-height:1.5!important}
  #values .value-card p{font-size:14px!important;line-height:2!important}

  /* VISUAL STRIP */
  #visual-strip .visual-strip-grid{display:grid!important;grid-template-columns:1fr!important}
  #visual-strip .visual-panel{height:180px!important;min-height:0!important;overflow:hidden!important}
  #visual-strip .visual-panel img{width:100%!important;height:100%!important;object-fit:cover!important}

  /* OUR BUSINESS */
  #business .business-wrap{width:100%!important;padding-left:var(--m-pad)!important;padding-right:var(--m-pad)!important}
  #business .business-head{width:100%!important;max-width:none!important}
  #business .business-head h2{font-size:32px!important;line-height:1.55!important}
  #business .business-head p{font-size:14px!important;line-height:2!important}
  #business .business-head p br{display:none!important}
  #business .business-visual{
    width:100%!important;height:200px!important;min-height:0!important;
    margin:34px 0 0!important;overflow:hidden!important;background:none!important;
  }
  #business .business-visual img{
    width:100%!important;height:100%!important;min-height:0!important;
    object-fit:cover!important;object-position:center 55%!important;display:block!important;
  }
  #business .business-grid{display:grid!important;grid-template-columns:1fr!important;width:100%!important}
  #business .business-card{width:100%!important;min-height:0!important;padding:32px 4px!important;box-sizing:border-box!important}

  /* MARKET: スマホでは画像を背景扱いにせず、文章→写真の明快な構成 */
  #market{
    display:flex!important;flex-direction:column!important;
    width:100%!important;height:auto!important;min-height:0!important;
    overflow:hidden!important;background:#f4f1eb!important;
  }
  #market>img{
    position:relative!important;inset:auto!important;order:2!important;
    width:100%!important;height:235px!important;min-height:0!important;
    object-fit:cover!important;object-position:center 55%!important;
    display:block!important;opacity:1!important;transform:none!important;
  }
  #market::before,#market::after{display:none!important}
  #market .market-copy{
    position:relative!important;inset:auto!important;transform:none!important;order:1!important;
    width:100%!important;max-width:none!important;padding:72px var(--m-pad) 44px!important;
    box-sizing:border-box!important;color:#111!important;background:#f4f1eb!important;
  }
  #market .market-copy h2{
    font-size:36px!important;line-height:1.5!important;letter-spacing:.04em!important;
    margin:0 0 26px!important;word-break:keep-all!important;
  }
  #market .market-copy p{font-size:14px!important;line-height:2!important;margin:0!important}
  #market .market-copy p br{display:none!important}
  #market .market-points{
    display:flex!important;flex-wrap:wrap!important;gap:8px 14px!important;
    margin-top:30px!important;font-size:9px!important;letter-spacing:.12em!important;
  }

  /* GLOBAL PARTNERSHIP */
  #partnership .partner-grid{display:grid!important;grid-template-columns:1fr!important;gap:36px!important;padding-top:0!important;padding-bottom:0!important}
  #partnership .partner-copy{width:100%!important;max-width:none!important}
  #partnership h2{font-size:34px!important;line-height:1.5!important}
  #partnership p{font-size:14px!important;line-height:2!important}
  #partnership .partner-image{
    width:100%!important;height:210px!important;min-height:0!important;overflow:hidden!important;background:none!important;
  }
  #partnership .partner-image img{
    width:100%!important;height:100%!important;min-height:0!important;object-fit:cover!important;object-position:center!important;
  }

  /* BRANDS */
  #brands .brands-wrap{
    display:grid!important;grid-template-columns:1fr!important;gap:38px!important;
    width:100%!important;padding-left:var(--m-pad)!important;padding-right:var(--m-pad)!important;
  }
  #brands .brands-head{width:100%!important;max-width:none!important}
  #brands h2{font-size:32px!important;line-height:1.5!important}
  #brands .brands-head p{font-size:14px!important;line-height:2!important}
  #brands .brands-head p br{display:none!important}
  #brands .brand-name-list{width:100%!important}
  #brands .brand-name-item{font-size:29px!important;line-height:1.2!important;padding:20px 0!important}

  /* COMPANY */
  #company .company-grid{display:grid!important;grid-template-columns:1fr!important;gap:36px!important}
  #company .company-head{width:100%!important;max-width:none!important}
  #company h2{font-size:32px!important;line-height:1.5!important}
  #company p{font-size:14px!important;line-height:2!important}
  #company .company-panel{width:100%!important;max-width:none!important;min-height:0!important;padding:30px 24px!important;box-sizing:border-box!important}
  #company .company-mark{font-size:30px!important}

  /* NEWS / CONTACT */
  #news .nc-grid{display:grid!important;grid-template-columns:1fr!important;gap:52px!important}
  #news .nc-block{width:100%!important;max-width:none!important}
  #news .contact-card{width:100%!important;max-width:none!important;padding:30px 22px!important;box-sizing:border-box!important}

  footer{padding-left:var(--m-pad)!important;padding-right:var(--m-pad)!important}

  /* スマホではモーション移動量を抑える */
  html.em-motion .em-reveal{transform:translateY(14px)}
  html.em-motion .em-reveal.em-left{transform:translateX(-14px)}
  html.em-motion .em-reveal.em-right{transform:translateX(14px)}
  html.em-motion .em-reveal.em-show{transform:none}
}

@media (max-width:390px){
  :root{--m-pad:22px}
  #top .hero-title{font-size:38px!important}
  #values .values-head h2{font-size:31px!important}
  #market .market-copy h2{font-size:33px!important}
}



@media (max-width:768px){
  /* MARKET画像：元画像左側に含まれる文字をスマホ表示領域から外す */
  #market>img{
    width:100%!important;
    height:290px!important;
    object-fit:cover!important;
    object-position:82% 55%!important;
  }
}
@media (max-width:390px){
  #market>img{
    height:285px!important;
    object-position:84% 55%!important;
  }
}



@media (max-width:768px){
  #story,
  #story .wrap,
  #story .story-grid,
  #story .story-copy{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    box-sizing:border-box!important;
  }

  #story .story-copy{
    overflow:visible!important;
  }

  #story h2{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    font-size:30px!important;
    line-height:1.55!important;
    letter-spacing:.025em!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }

  #story p{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    font-size:14px!important;
    line-height:2!important;
    letter-spacing:.015em!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }

  #story p br{
    display:none!important;
  }
}

@media (max-width:390px){
  #story h2{
    font-size:28px!important;
    letter-spacing:.015em!important;
  }
  #story p{
    font-size:13.5px!important;
  }
}



@media (max-width:768px){
  /* TOP全体をスマホ1画面程度に収める */
  #top{
    min-height:0!important;
    height:auto!important;
    display:grid!important;
    grid-template-rows:280px 390px!important;
  }
  #top .hero-photo{
    height:280px!important;
    min-height:0!important;
  }
  #top .hero-copy{
    min-height:0!important;
    height:390px!important;
    padding:48px 26px 44px!important;
    justify-content:flex-start!important;
  }
}
@media (max-width:390px){
  #top{
    grid-template-rows:270px 350px!important;
  }
  #top .hero-photo{
    height:270px!important;
  }
  #top .hero-copy{
    height:350px!important;
    padding:44px 22px 38px!important;
  }
}



@media (max-width:768px){
  /* 1. TOP：ブルーグレー部分をさらに短く */
  #top{
    grid-template-rows:280px 330px!important;
  }
  #top .hero-copy{
    height:330px!important;
    padding:42px 26px 34px!important;
  }

  /* 2. OUR STORY：画像の縦幅を少し短く */
  #story .story-media{
    height:170px!important;
    min-height:0!important;
  }
  #story .story-media img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 50%!important;
  }
}

@media (max-width:390px){
  #top{
    grid-template-rows:270px 300px!important;
  }
  #top .hero-copy{
    height:300px!important;
    padding:38px 22px 30px!important;
  }

  #story .story-media{
    height:165px!important;
  }
}



@media (max-width:768px){
  footer{
    width:100%!important;
    max-width:100%!important;
    box-sizing:border-box!important;
    padding:48px 26px 42px!important;
    overflow:hidden!important;
  }

  footer .footer-inner,
  footer .footer-wrap{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }

  footer .footer-brand{
    width:100%!important;
    max-width:none!important;
    margin:0 0 30px!important;
  }

  footer .footer-nav,
  footer nav{
    display:flex!important;
    flex-wrap:wrap!important;
    width:100%!important;
    max-width:100%!important;
    gap:0!important;
    margin:0!important;
    padding:0!important;
    white-space:normal!important;
  }

  footer .footer-nav a,
  footer nav a{
    display:block!important;
    width:50%!important;
    flex:0 0 50%!important;
    box-sizing:border-box!important;
    margin:0!important;
    padding:9px 8px 9px 0!important;
    font-size:10px!important;
    line-height:1.5!important;
    letter-spacing:.08em!important;
    white-space:normal!important;
  }
}

@media (max-width:390px){
  footer{
    padding-left:22px!important;
    padding-right:22px!important;
  }
  footer .footer-nav a,
  footer nav a{
    font-size:9px!important;
  }
}
