:root{--od-pink:#E8A4A9;--od-gold:#D4B67A;--od-brown:#6F5848;--od-sage:#A8C3A6;--od-lav:#C9B6D9;--od-ivory:#FAF6F1;--od-white:#fffdfa}
html{scroll-behavior:smooth}body.officedear-front{margin:0;background:var(--od-ivory);color:var(--od-brown);font-family:"Noto Serif JP","Yu Mincho",YuMincho,"Hiragino Mincho ProN",serif}.officedear-front .site-header,.officedear-front .site-footer,.officedear-front .breadcrumb,.officedear-front .page-header{display:none!important}.od-header{position:fixed;z-index:9999;left:0;right:0;top:0;background:rgba(250,246,241,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(212,182,122,.38)}.od-header__inner{height:92px;max-width:1440px;margin:auto;padding:0 44px;display:flex;align-items:center;justify-content:space-between;gap:28px}.od-brand{text-decoration:none!important;color:var(--od-brown)!important;display:flex;flex-direction:column;line-height:1}.od-brand__word{font-family:Georgia,"Times New Roman",serif;font-size:27px;letter-spacing:.11em;white-space:nowrap}.od-heart{color:var(--od-pink);font-size:31px}.od-brand__jp{font-size:10px;letter-spacing:.22em;margin-top:9px;text-align:center}.od-brand__custom .custom-logo-link{display:block}.od-brand__custom img{max-height:68px;width:auto}.od-nav{display:flex;align-items:stretch;gap:4px}.od-nav a{min-width:86px;padding:14px 11px;text-align:center;text-decoration:none!important;color:var(--od-brown)!important;border-radius:24px;transition:.25s}.od-nav a:hover{background:#fff}.od-nav span{font:600 12px/1.2 Georgia,serif;letter-spacing:.06em}.od-nav small{display:block;font-size:8px;margin-top:5px;white-space:nowrap}.od-nav .od-nav__contact{background:var(--od-pink);color:white!important;padding-left:19px;padding-right:19px}.od-menu-toggle{display:none}.od-main{padding-top:92px}.od-hero{position:relative;min-height:calc(100vh - 92px);overflow:hidden;background:linear-gradient(115deg,#fffdfa 0%,#fffaf6 52%,#f9f0eb 100%)}.od-hero__inner{position:relative;z-index:3;max-width:1320px;min-height:calc(100vh - 92px);margin:auto;padding:70px 60px 64px;display:grid;grid-template-columns:1.18fr .82fr;align-items:center}.od-hero__copy{padding-left:2vw;max-width:760px}.od-kicker{font:500 16px/1.2 Georgia,serif;letter-spacing:.22em;margin:0 0 34px}.od-kicker span{color:var(--od-pink)}.od-hero h1{font-size:clamp(40px,4.3vw,68px);font-weight:400;letter-spacing:.06em;line-height:1.55;margin:0;color:#5e4b3e}.od-hero h1 span{color:var(--od-pink)}.od-lead{font-size:clamp(19px,2vw,29px);letter-spacing:.09em;margin:24px 0 0}.od-rule{width:min(510px,80%);height:24px;position:relative;margin:23px 0}.od-rule:before{content:"";position:absolute;top:11px;left:0;right:0;height:1px;background:var(--od-gold)}.od-rule i{position:absolute;width:7px;height:7px;border:1px solid var(--od-gold);transform:rotate(45deg);right:0;top:8px;background:#fffaf6}.od-intro{font-size:15px;line-height:2.15;letter-spacing:.08em;margin:0}.od-scroll{display:inline-flex;align-items:center;gap:14px;margin-top:42px;color:var(--od-brown)!important;text-decoration:none!important;font:11px Georgia,serif;letter-spacing:.2em}.od-scroll i{display:block;width:58px;height:1px;background:var(--od-gold);position:relative}.od-scroll i:after{content:"";position:absolute;right:0;top:-3px;width:7px;height:7px;border-right:1px solid var(--od-gold);border-bottom:1px solid var(--od-gold);transform:rotate(-45deg)}.od-hero__symbol{display:flex;align-items:center;justify-content:center}.od-hero__symbol svg{width:min(455px,36vw);filter:drop-shadow(0 18px 24px rgba(111,88,72,.08))}.od-hero__symbol path{fill:none;stroke-width:22;stroke-linecap:round;stroke-linejoin:round}.od-hero__symbol .pink{stroke:url(#odPink)}.od-hero__symbol .gold{stroke:url(#odGold)}.od-hero__symbol .inner{stroke-width:18}.od-hero__symbol .tail{stroke-width:18}.od-hero__wash{position:absolute;border-radius:50%;filter:blur(3px);opacity:.55}.od-hero__wash--one{width:520px;height:520px;right:-170px;top:-170px;background:radial-gradient(circle,rgba(232,164,169,.19),transparent 67%)}.od-hero__wash--two{width:420px;height:420px;left:-190px;bottom:-190px;background:radial-gradient(circle,rgba(168,195,166,.2),transparent 68%)}.od-hero__botanical{position:absolute;left:-35px;bottom:-25px;width:210px;opacity:.34}.od-hero__botanical svg path{fill:rgba(168,195,166,.22);stroke:var(--od-sage);stroke-width:3}.od-next{padding:100px 30px 120px;text-align:center;background:var(--od-ivory)}.od-next>p:first-child{color:var(--od-pink);font:14px Georgia,serif;letter-spacing:.22em}.od-next h2{font-size:34px;font-weight:400;letter-spacing:.08em}.od-next>p:last-child{font-size:14px;opacity:.72}.od-mini-footer{padding:24px;text-align:center;background:#f7eee8;color:var(--od-brown);font:11px Georgia,serif;letter-spacing:.08em}
@media(max-width:1180px){.od-hero h1{font-size:52px}.od-nav a{min-width:78px;padding-left:8px;padding-right:8px}}
@media(max-width:1050px){.od-header__inner{height:78px;padding:0 24px}.od-main{padding-top:78px}.od-nav{position:fixed;top:78px;right:0;bottom:0;width:min(360px,88vw);padding:30px;background:rgba(250,246,241,.98);display:flex;flex-direction:column;transform:translateX(105%);transition:.3s;box-shadow:-15px 20px 40px rgba(111,88,72,.12)}.od-nav.is-open{transform:translateX(0)}.od-nav a{text-align:left;padding:14px 18px}.od-nav small{display:inline;margin-left:12px}.od-menu-toggle{display:flex;width:52px;height:52px;border:0;background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:5px;color:var(--od-brown)}.od-menu-toggle span{display:block;width:25px;height:1px;background:var(--od-brown)}.od-menu-toggle b{font:7px Arial,sans-serif;letter-spacing:.12em;margin-top:2px}.od-hero__inner{min-height:calc(100vh - 78px);padding:56px 36px;grid-template-columns:1fr 0.72fr}.od-hero__copy{padding-left:0}}
@media(max-width:720px){.od-brand__word{font-size:20px}.od-heart{font-size:23px}.od-brand__jp{font-size:8px}.od-hero__inner{display:flex;flex-direction:column;justify-content:center;align-items:stretch;padding:50px 25px 48px}.od-kicker{font-size:12px;margin-bottom:24px}.od-hero h1{font-size:42px;line-height:1.45}.od-lead{font-size:17px;line-height:1.8;margin-top:18px}.od-intro{font-size:13px;line-height:2}.od-pc{display:none}.od-hero__symbol{order:-1;position:absolute;right:-75px;top:40px;opacity:.13;z-index:-1}.od-hero__symbol svg{width:360px}.od-scroll{margin-top:32px}.od-hero__botanical{width:145px;left:-42px}.od-next{padding:76px 24px}.od-next h2{font-size:27px}}
/* ===== Ver.1.2 First View formal direction ===== */
.od-hero--formal{background:#fffdfa;min-height:calc(100vh - 92px)}
.od-hero__inner--formal{max-width:1440px;grid-template-columns:1.02fr .98fr;padding:48px 44px 58px;gap:34px}
.od-hero__copy--formal{text-align:center;padding:0 0 0 3vw;max-width:680px;justify-self:center}
.od-hero__mini-mark{width:86px;margin:0 auto 8px}.od-hero__mini-mark svg{width:100%;overflow:visible}.od-hero__mini-mark path{fill:none;stroke-width:5.8;stroke-linecap:round;stroke-linejoin:round}.od-hero__mini-mark .p{stroke:var(--od-pink)}.od-hero__mini-mark .g{stroke:var(--od-gold)}.od-hero__mini-mark .in{stroke-width:4.8}
.od-hero__copy--formal .od-kicker{font-size:13px;margin:0 0 23px;letter-spacing:.2em}.od-hero__copy--formal h1{font-size:clamp(38px,3.7vw,58px);line-height:1.45;letter-spacing:.055em}.od-hero__copy--formal h1 small{display:block;font-size:.54em;font-weight:400;margin-bottom:2px;color:var(--od-brown);letter-spacing:.1em}.od-hero__copy--formal .od-rule{margin:18px auto 12px;width:72%}.od-hero__copy--formal .od-lead{font-size:clamp(17px,1.55vw,23px);margin:0;letter-spacing:.06em}.od-hero__copy--formal .od-lead em{font-style:normal;color:var(--od-pink)}.od-hero__copy--formal .od-lead strong{font-weight:400;color:var(--od-pink)}.od-intro--formal{font-size:13px;line-height:2.05;letter-spacing:.055em;margin-top:22px}
.od-flow{margin:28px auto 0;display:flex;justify-content:center;align-items:center;gap:10px;max-width:560px}.od-flow__item{min-width:68px;display:flex;flex-direction:column;align-items:center;gap:6px}.od-flow__item b{font-size:11px;font-weight:400;letter-spacing:.08em}.od-flow__icon{height:35px;width:46px;display:flex;align-items:center;justify-content:center;position:relative}.od-flow__heart{font:38px/1 Georgia,serif}.od-flow__item--pink{color:var(--od-pink)}.od-flow__item--gold{color:var(--od-gold)}.od-flow__item--sage{color:var(--od-sage)}.od-flow__arrow{font:20px Georgia,serif;color:#d7c7b6;letter-spacing:.08em;margin-top:-14px}.od-flow__shape:before{content:"";width:21px;height:29px;border:3px solid var(--od-gold);border-radius:55% 45% 58% 42%/55% 45% 60% 40%;transform:rotate(42deg)}
.od-flow__connect i{position:absolute;width:28px;height:18px;border:2px solid var(--od-sage);border-radius:50%;transform:rotate(28deg)}.od-flow__connect i:last-child{transform:rotate(-28deg)}
.od-flow__smile i{width:34px;height:17px;border-bottom:3px solid var(--od-pink);border-radius:0 0 50% 50%;position:relative}.od-flow__smile i:before,.od-flow__smile i:after{content:"";position:absolute;top:-7px;width:1px;height:6px;background:var(--od-gold)}.od-flow__smile i:before{left:10px;transform:rotate(-22deg)}.od-flow__smile i:after{right:10px;transform:rotate(22deg)}
.od-scroll--down{display:flex;flex-direction:column;gap:7px;margin:24px auto 0;width:max-content}.od-scroll--down i{width:1px;height:25px}.od-scroll--down i:after{right:-3px;top:17px;transform:rotate(45deg)}
.od-hero__visual{height:min(650px,calc(100vh - 145px));min-height:510px;position:relative;border-radius:52% 0 0 46%/28% 0 0 38%;overflow:hidden;background:linear-gradient(145deg,#fff 0%,#f8f1e7 47%,#eadfcf 100%);box-shadow:inset 18px 0 50px rgba(255,255,255,.75)}.od-sun{position:absolute;width:440px;height:440px;left:3%;top:-13%;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.98) 0%,rgba(255,249,232,.7) 42%,rgba(255,255,255,0) 72%)}.od-shadow-leaf{position:absolute;inset:0;background:linear-gradient(112deg,transparent 0 48%,rgba(168,195,166,.09) 49% 51%,transparent 52%),radial-gradient(ellipse at 75% 22%,rgba(168,195,166,.13) 0 6%,transparent 7%),radial-gradient(ellipse at 64% 30%,rgba(168,195,166,.1) 0 7%,transparent 8%);filter:blur(2px)}
.od-vase{position:absolute;left:16%;bottom:22%;width:112px;height:180px;border-radius:42% 42% 32% 32%/18% 18% 55% 55%;background:linear-gradient(90deg,rgba(255,255,255,.5),rgba(232,218,201,.46),rgba(255,255,255,.72));border:1px solid rgba(212,182,122,.24);box-shadow:0 24px 35px rgba(111,88,72,.08)}.od-vase:after{content:"";position:absolute;left:18px;right:18px;top:14px;height:8px;border-radius:50%;border-top:2px solid rgba(111,88,72,.12)}.stem{position:absolute;width:2px;background:#829b78;bottom:155px;left:55px;transform-origin:bottom}.s1{height:175px;transform:rotate(-18deg)}.s2{height:205px;transform:rotate(8deg)}.s3{height:155px;transform:rotate(28deg)}.flower{position:absolute;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle,#f3d3d1 0 28%,#f9e5e2 29% 58%,transparent 60%);bottom:320px;left:5px;box-shadow:22px 18px 0 -4px #f3d3d1,48px -20px 0 -3px #f7e1df}.f2{left:52px;bottom:340px;transform:scale(.8)}.f3{left:85px;bottom:292px;transform:scale(.7)}.leaf{position:absolute;width:38px;height:18px;border-radius:100% 0 100% 0;background:rgba(168,195,166,.7);bottom:280px;left:30px;transform:rotate(22deg)}.l2{left:70px;bottom:310px;transform:rotate(-28deg) scale(.8)}.l3{left:82px;bottom:250px;transform:rotate(38deg) scale(.72)}
.od-mug{position:absolute;right:17%;bottom:20%;width:118px;height:105px;border-radius:8px 8px 35px 35px;background:#fffdfa;box-shadow:0 18px 28px rgba(111,88,72,.12);display:flex;flex-direction:column;align-items:center;justify-content:center;color:var(--od-brown)}.od-mug:after{content:"";position:absolute;right:-32px;top:19px;width:45px;height:53px;border:10px solid #fffdfa;border-left-width:6px;border-radius:50%;z-index:-1}.od-mug__mark{color:var(--od-pink);font:27px Georgia}.od-mug small{font:7px Georgia;letter-spacing:.08em}.od-book{position:absolute;right:7%;bottom:6%;width:250px;height:86px;background:#e9dfcf;transform:rotate(-4deg);box-shadow:0 15px 24px rgba(111,88,72,.13);display:flex;align-items:center;justify-content:center;color:#9f886c;font:10px Georgia;letter-spacing:.13em}.od-book i{position:absolute;left:0;right:0;bottom:8px;border-bottom:1px solid rgba(111,88,72,.13)}.od-pen{position:absolute;right:13%;bottom:14%;width:185px;height:4px;border-radius:4px;background:linear-gradient(90deg,#b99a58,#e1c78f,#9d7c3f);transform:rotate(-8deg);box-shadow:0 4px 8px rgba(111,88,72,.12)}.od-visual__veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,253,250,.42),transparent 24% 76%,rgba(250,246,241,.16));pointer-events:none}.od-hero__wave{position:absolute;left:-5%;right:-5%;bottom:-1px;height:50px;background:var(--od-ivory);clip-path:ellipse(55% 60% at 50% 100%)}
.od-next--clean{border:0!important}.od-next--clean:before,.od-next--clean:after{display:none!important}.od-next--clean h2{border:0!important}.od-next--clean>*{border-color:transparent!important}
@media(max-width:1050px){.od-hero__inner--formal{grid-template-columns:1fr .85fr;padding:42px 28px 52px}.od-hero__copy--formal{padding-left:0}.od-hero__visual{min-height:500px;height:560px}.od-flow{gap:5px}.od-flow__arrow{margin-left:-2px;margin-right:-2px}}
@media(max-width:720px){.od-hero--formal{min-height:auto}.od-hero__inner--formal{display:flex;padding:32px 20px 58px;gap:22px}.od-hero__visual{order:-1;width:100%;height:285px;min-height:0;border-radius:0 0 42% 42%/0 0 15% 15%}.od-vase{transform:scale(.62);transform-origin:left bottom;left:13%;bottom:9%}.od-mug{transform:scale(.66);transform-origin:right bottom;right:16%;bottom:16%}.od-book{transform:rotate(-4deg) scale(.65);transform-origin:right bottom;right:4%;bottom:2%}.od-pen{transform:rotate(-8deg) scale(.65);transform-origin:right center;right:8%;bottom:12%}.od-hero__mini-mark{width:70px;margin-top:6px}.od-hero__copy--formal h1{font-size:37px;line-height:1.48}.od-hero__copy--formal h1 small{font-size:.52em}.od-hero__copy--formal .od-lead{font-size:16px;line-height:1.8}.od-intro--formal{font-size:12.5px}.od-flow{gap:2px;margin-top:22px}.od-flow__item{min-width:57px}.od-flow__arrow{font-size:15px}.od-flow__icon{transform:scale(.88)}.od-flow__item b{font-size:10px}.od-hero__wave{height:28px}}
/* ===== Ver.1.3 First View / final brand-story direction ===== */
.od-hero--v13{background:#fffdfa}
.od-hero__inner--v13{max-width:1460px;grid-template-columns:1.04fr .96fr;padding:46px 46px 58px;gap:38px}
.od-hero__copy--v13{max-width:720px;padding-left:1vw;text-align:center;justify-self:center}
.od-hero__brandmark{width:112px;margin:0 auto 17px;color:var(--od-brown)}
.od-hero__brandmark svg{display:block;width:76px;height:auto;margin:0 auto 3px;overflow:visible}.od-hero__brandmark path{fill:none;stroke-width:7;stroke-linecap:round;stroke-linejoin:round}.od-hero__brandmark .pink{stroke:var(--od-pink)}.od-hero__brandmark .gold{stroke:var(--od-gold)}.od-hero__brandmark .inner{stroke-width:6}.od-hero__brandmark .tail{stroke-width:6}.od-hero__brandmark span{display:block;font:9px Georgia,serif;letter-spacing:.16em;white-space:nowrap}.od-hero__brandmark i{font-style:normal;color:var(--od-pink)}
.od-hero__copy--v13 h1{font-size:clamp(37px,3.55vw,57px);line-height:1.38;margin:0;letter-spacing:.055em;white-space:normal}.od-hero__copy--v13 h1 small{display:block;font-size:.53em;margin-bottom:5px}.od-h1-line{display:block;white-space:nowrap;color:var(--od-brown)!important}.od-h1-line em{font-style:normal;color:var(--od-pink)}
.od-hero__copy--v13 .od-lead{font-size:clamp(17px,1.5vw,22px);margin:19px 0 0}.od-hero__copy--v13 .od-rule{margin:16px auto 12px;width:70%}.od-hero__copy--v13 .od-intro{margin-top:19px}
.od-storyflow{display:flex;align-items:flex-start;justify-content:center;gap:5px;margin:25px auto 0;max-width:650px}.od-storyflow>span{color:#d8c7b5;font-size:14px;padding-top:18px}.od-storyflow__item{width:82px;display:flex;flex-direction:column;align-items:center;gap:4px}.od-storyflow__item svg{width:48px;height:39px;overflow:visible}.od-storyflow__item svg path{fill:none;stroke-width:3.4;stroke-linecap:round;stroke-linejoin:round}.od-storyflow__item b{font-size:9.5px;font-weight:400;letter-spacing:.04em;white-space:nowrap}.od-storyflow__item.pink{color:var(--od-pink)}.od-storyflow__item.pink path{stroke:var(--od-pink)}.od-storyflow__item.gold{color:var(--od-gold)}.od-storyflow__item.gold path{stroke:var(--od-gold)}.od-storyflow__item.mix{color:var(--od-brown)}.od-storyflow__item.mix .p{stroke:var(--od-pink)}.od-storyflow__item.mix .g{stroke:var(--od-gold)}.od-storyflow__item.mix circle{fill:var(--od-gold)}.od-storyflow__item.smile{color:var(--od-brown)}.od-storyflow__item.smile path:first-child{stroke:var(--od-pink);stroke-width:4}.od-storyflow__item.smile .ray{stroke:var(--od-gold);stroke-width:3}.od-storyflow__item.future{width:104px;color:var(--od-brown)}.od-storyflow__item.future .wave{stroke:url(#none);stroke:var(--od-pink)}.od-storyflow__item.future .star{fill:var(--od-gold);stroke:none}.od-storyflow__item.future svg{width:57px}
.od-hero__visual--v13{height:min(650px,calc(100vh - 145px));min-height:520px;border-radius:50% 0 0 45%/27% 0 0 38%;background:linear-gradient(145deg,#fffdf8 0%,#f9f1e7 48%,#eadfce 100%)}
.od-visual-logo{position:absolute;left:10%;bottom:8%;z-index:3;padding:14px 18px;background:rgba(255,253,250,.65);backdrop-filter:blur(5px);border-left:1px solid rgba(212,182,122,.55);color:var(--od-brown)}.od-visual-logo span{display:block;font:16px Georgia,serif;letter-spacing:.11em}.od-visual-logo i{font-style:normal;color:var(--od-pink)}.od-visual-logo small{display:block;font-size:8px;letter-spacing:.08em;margin-top:6px}
@media(max-width:1180px){.od-hero__inner--v13{grid-template-columns:1.08fr .92fr;padding-left:28px;padding-right:28px}.od-hero__copy--v13 h1{font-size:45px}.od-storyflow__item{width:72px}.od-storyflow__item.future{width:94px}}
@media(max-width:1050px){.od-hero__inner--v13{grid-template-columns:1fr .78fr;gap:20px}.od-h1-line{white-space:normal}.od-storyflow{gap:2px}.od-storyflow__item{width:65px}.od-storyflow__item.future{width:85px}.od-storyflow>span{padding-left:0;padding-right:0}}
@media(max-width:720px){.od-hero__inner--v13{display:flex;padding:28px 20px 52px;gap:20px}.od-hero__visual--v13{order:-1;height:280px;min-height:0;width:100%;border-radius:0 0 42% 42%/0 0 15% 15%}.od-hero__brandmark{margin-top:5px;margin-bottom:14px}.od-hero__copy--v13 h1{font-size:36px;line-height:1.45}.od-h1-line{white-space:nowrap;font-size:.92em}.od-hero__copy--v13 .od-lead{font-size:15.5px}.od-storyflow{gap:0;max-width:100%;overflow:visible}.od-storyflow__item{width:56px}.od-storyflow__item.future{width:78px}.od-storyflow__item svg{width:39px;height:34px}.od-storyflow__item.future svg{width:46px}.od-storyflow__item b{font-size:8px}.od-storyflow>span{font-size:10px;padding-top:15px}.od-visual-logo{display:none}}
@media(max-width:390px){.od-h1-line{white-space:normal}.od-hero__copy--v13 h1{font-size:34px}.od-storyflow__item{width:50px}.od-storyflow__item.future{width:70px}.od-storyflow__item b{font-size:7.5px}}

/* ===== Ver.1.4 First View polish ===== */
.od-hero__inner--v13{max-width:1480px;grid-template-columns:1.02fr .98fr;padding:42px 42px 54px;gap:44px}
.od-hero__copy--v13{max-width:735px;padding-left:0}
.od-hero__brandmark{margin-bottom:14px}
.od-hero__copy--v13 h1{font-size:clamp(39px,3.55vw,58px)}
.od-hero__copy--v13 .od-lead{margin-top:17px}
.od-hero__copy--v13 .od-rule{margin:15px auto 11px;width:72%}
.od-hero__copy--v13 .od-intro{margin-top:17px;line-height:2.0}

/* Make the five-part brand story legible without competing with the headline. */
.od-storyflow{gap:7px;margin-top:27px;max-width:700px}
.od-storyflow>span{font-size:15px;padding-top:22px}
.od-storyflow__item{width:91px;gap:6px}
.od-storyflow__item.future{width:122px}
.od-storyflow__item svg{width:57px;height:45px}
.od-storyflow__item.future svg{width:68px}
.od-storyflow__item b{font-size:10.5px;letter-spacing:.055em}
.od-storyflow__item svg path{stroke-width:3.2}
.od-storyflow__item.smile path:first-child{stroke-width:3.7}

/* Right-hand scene: warmer, more dimensional natural-light styling. */
.od-hero__visual--v13{height:min(655px,calc(100vh - 138px));min-height:530px;border-radius:48% 0 0 43%/25% 0 0 36%;background:linear-gradient(137deg,#fffefb 0%,#fbf5eb 43%,#eee1d0 100%);box-shadow:inset 28px 0 55px rgba(255,255,255,.84),0 24px 55px rgba(111,88,72,.045)}
.od-hero__visual--v13:after{content:"";position:absolute;left:0;right:0;bottom:0;height:29%;background:linear-gradient(175deg,rgba(245,235,220,.18),rgba(221,204,181,.48));border-top:1px solid rgba(255,255,255,.5);z-index:0}
.od-sun{width:520px;height:520px;left:-3%;top:-20%;background:radial-gradient(circle,rgba(255,255,255,1) 0%,rgba(255,250,232,.78) 42%,rgba(255,255,255,0) 72%)}
.od-shadow-leaf{opacity:.8;filter:blur(4px);background:linear-gradient(111deg,transparent 0 48%,rgba(135,159,128,.08) 49% 50%,transparent 52%),radial-gradient(ellipse at 79% 18%,rgba(139,162,132,.13) 0 6%,transparent 7%),radial-gradient(ellipse at 69% 28%,rgba(139,162,132,.10) 0 7%,transparent 8%),radial-gradient(ellipse at 87% 34%,rgba(139,162,132,.08) 0 5%,transparent 6%)}
.od-tablelight{position:absolute;z-index:1;left:2%;right:-5%;bottom:7%;height:24%;background:linear-gradient(105deg,rgba(255,255,255,.48),rgba(255,255,255,0) 46%);transform:skewY(-2deg);filter:blur(.2px)}
.od-vase{z-index:2;left:14%;bottom:20%;width:118px;height:188px;background:linear-gradient(92deg,rgba(255,255,255,.78),rgba(225,211,194,.42) 52%,rgba(255,255,255,.88));box-shadow:14px 26px 34px rgba(111,88,72,.10),inset -10px 0 18px rgba(212,182,122,.08)}
.od-mug{z-index:3;right:15%;bottom:19%;width:124px;height:109px;box-shadow:16px 22px 32px rgba(111,88,72,.13)}
.od-book{z-index:2;right:5%;bottom:5%;width:265px;height:90px;background:linear-gradient(90deg,#eee4d4,#e5d8c4);box-shadow:14px 18px 28px rgba(111,88,72,.13)}
.od-pen{z-index:4;right:11%;bottom:14%;width:195px}
.od-visual-logo{left:8%;bottom:7%;z-index:5;background:rgba(255,253,250,.76);box-shadow:0 10px 25px rgba(111,88,72,.06)}
.od-visual__veil{z-index:6;background:linear-gradient(90deg,rgba(255,253,250,.28),transparent 25% 76%,rgba(250,246,241,.08))}
.od-scroll--down{margin-top:20px}

@media(max-width:1180px){.od-hero__inner--v13{grid-template-columns:1.06fr .94fr;padding-left:26px;padding-right:26px;gap:26px}.od-storyflow{gap:3px}.od-storyflow__item{width:78px}.od-storyflow__item.future{width:105px}.od-storyflow__item svg{width:52px}.od-storyflow__item.future svg{width:61px}}
@media(max-width:1050px){.od-storyflow__item{width:69px}.od-storyflow__item.future{width:94px}.od-storyflow__item b{font-size:9.5px}.od-storyflow>span{font-size:12px}}
@media(max-width:720px){.od-hero__inner--v13{padding:26px 20px 50px}.od-hero__visual--v13{height:290px}.od-storyflow{margin-top:23px;gap:0}.od-storyflow__item{width:57px}.od-storyflow__item.future{width:82px}.od-storyflow__item svg{width:42px;height:35px}.od-storyflow__item.future svg{width:49px}.od-storyflow__item b{font-size:8px}.od-storyflow>span{font-size:10px;padding-top:16px}}
\n/* Ver.1.5 — first-view completion candidate: words 50%, visual 40%, symbols 10%. */
.od-hero--v13{padding-bottom:64px;background:linear-gradient(105deg,#fffdfa 0%,#fffdfa 52%,#fbf4ed 100%)}
.od-hero__inner--v13{max-width:1510px;grid-template-columns:1.08fr .92fr;padding:54px 48px 50px;gap:26px}
.od-hero__copy--v13{max-width:770px;text-align:left;padding-left:18px}
.od-hero__brandmark{margin:0 0 20px 76px;width:124px;text-align:center}
.od-hero__brandmark svg{width:86px}
.od-hero__copy--v13 h1{font-size:clamp(44px,4.05vw,65px);line-height:1.32;letter-spacing:.055em}
.od-hero__copy--v13 h1 small{margin-left:76px;margin-bottom:5px}
.od-hero__copy--v13 .od-lead{font-size:clamp(19px,1.65vw,25px);margin:24px 0 0 76px;letter-spacing:.065em}
.od-hero__copy--v13 .od-rule{margin:18px 0 12px 76px;width:68%}
.od-hero__copy--v13 .od-intro{margin:18px 0 0 76px;font-size:13.5px;line-height:2.05}
.od-storyflow{justify-content:flex-start;margin:28px 0 0 55px;gap:5px;max-width:700px}
.od-storyflow__item{width:88px}.od-storyflow__item.future{width:118px}.od-storyflow__item svg{width:55px;height:44px}.od-storyflow__item.future svg{width:66px}.od-storyflow__item b{font-size:10px}
.od-scroll--down{display:flex;width:70px;margin:20px auto 0;flex-direction:column;gap:8px;align-items:center}.od-scroll--down i{width:1px;height:28px}.od-scroll--down i:after{right:-3px;top:auto;bottom:0;transform:rotate(45deg)}
.od-hero__visual--v13{height:min(690px,calc(100vh - 142px));min-height:555px;border-radius:44% 0 0 38%/23% 0 0 32%;background:linear-gradient(136deg,#fffefb 0%,#fbf5eb 36%,#ecdfcc 100%)}
.od-vase{left:11%;bottom:18%;transform:scale(1.06)}.od-mug{right:10%;bottom:18%;transform:scale(1.08)}.od-book{right:1%;bottom:4%;transform:rotate(-4deg) scale(1.05)}.od-pen{right:7%;bottom:13%}.od-visual-logo{display:none}
.od-hero__bridge{position:absolute;z-index:7;left:50%;bottom:18px;transform:translateX(-50%);width:min(1260px,88vw);padding:16px 32px;text-align:center;border-radius:28px;background:rgba(255,247,242,.86);font-size:15px;letter-spacing:.07em;box-shadow:0 10px 30px rgba(111,88,72,.035)}
.od-hero__bridge em{font-style:normal;color:var(--od-pink)}.od-hero__bridge strong{font-weight:400;color:#829b78}.od-hero__wave{height:62px;opacity:.75}
@media(max-width:1180px){.od-hero__copy--v13{padding-left:0}.od-hero__brandmark,.od-hero__copy--v13 h1 small,.od-hero__copy--v13 .od-lead,.od-hero__copy--v13 .od-rule,.od-hero__copy--v13 .od-intro{margin-left:35px}.od-storyflow{margin-left:18px}.od-hero__copy--v13 h1{font-size:48px}.od-hero__bridge{font-size:13px}}
@media(max-width:1050px){.od-hero__inner--v13{grid-template-columns:1fr .82fr;padding-left:26px;padding-right:26px}.od-hero__copy--v13 h1{font-size:43px}.od-hero__brandmark,.od-hero__copy--v13 h1 small,.od-hero__copy--v13 .od-lead,.od-hero__copy--v13 .od-rule,.od-hero__copy--v13 .od-intro{margin-left:15px}.od-storyflow{margin-left:0}.od-hero__bridge{bottom:14px}}
@media(max-width:720px){.od-hero--v13{padding-bottom:84px}.od-hero__inner--v13{padding:26px 20px 45px}.od-hero__copy--v13{text-align:center}.od-hero__brandmark{margin:5px auto 14px}.od-hero__copy--v13 h1 small,.od-hero__copy--v13 .od-lead,.od-hero__copy--v13 .od-rule,.od-hero__copy--v13 .od-intro{margin-left:auto;margin-right:auto}.od-hero__copy--v13 h1{font-size:36px}.od-storyflow{justify-content:center;margin-left:auto;margin-right:auto}.od-hero__bridge{bottom:14px;width:88vw;padding:12px 16px;font-size:10.5px;line-height:1.8}.od-hero__visual--v13{height:300px}.od-vase{transform:scale(.62)}.od-mug{transform:scale(.66)}.od-book{transform:rotate(-4deg) scale(.65)}}

/* Ver.1.6 — photo-led hero */
.od-hero__visual--photo{
  background-image:var(--od-hero-photo)!important;
  background-size:cover!important;
  background-position:58% center!important;
  border-radius:0!important;
  min-height:555px!important;
  height:min(675px,calc(100vh - 132px))!important;
  box-shadow:none!important;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 8%,#000 24%,#000 100%);
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.18) 8%,#000 24%,#000 100%);
}

/* ===== Ver.1.10.28 — NEWS title / CONTACT transition ===== */
.od-contact__head h2{
  border:0!important;
  box-shadow:none!important;
  background:none!important;
}
.od-contact__head h2:before,
.od-contact__head h2:after{
  content:none!important;
  display:none!important;
}

/* Ver.1.10.29: CONTACT — the story closes and begins again. */
.od-contact__chapter{margin:0 0 10px!important;color:#b88a43;font:italic 13px/1.4 Georgia,"Times New Roman",serif!important;letter-spacing:.24em!important}
.od-contact__lead{font-size:19px!important;color:#8b6957;line-height:2!important}
.od-contact__visual{display:flex;align-items:center;justify-content:center;isolation:isolate;background:radial-gradient(circle at center,rgba(255,255,255,.98) 0 24%,rgba(232,164,169,.12) 25% 39%,transparent 40%),radial-gradient(circle at center,transparent 0 54%,rgba(212,182,122,.28) 55% 55.5%,transparent 56%),linear-gradient(145deg,#fffdf8,#f8f2e8)!important}
.od-contact__orbit{position:absolute;inset:8%;border:1px solid rgba(212,182,122,.34);border-radius:50%}
.od-contact__orbit:before,.od-contact__orbit:after{content:"";position:absolute;inset:12%;border:1px dashed rgba(232,164,169,.32);border-radius:50%}.od-contact__orbit:after{inset:27%;border-style:solid;border-color:rgba(168,195,166,.38)}
.od-contact__orbit span{position:absolute;padding:4px 10px;background:rgba(255,253,248,.92);color:#9b7a67;font-size:13px;letter-spacing:.08em;white-space:nowrap}.od-contact__orbit span:nth-child(1){left:9%;top:23%}.od-contact__orbit span:nth-child(2){right:4%;top:31%}.od-contact__orbit span:nth-child(3){right:13%;bottom:18%}.od-contact__orbit span:nth-child(4){left:2%;bottom:20%}
.od-contact__seed{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;color:#df6f7a}.od-contact__seed small{font:11px Georgia,serif;letter-spacing:.24em;color:#ae8b56}.od-contact__seed b{font-size:29px;font-weight:500;line-height:1.8}.od-contact__seed i{font:normal 23px/1 Georgia,serif;color:#c7974d}
.od-contact__visual>p{position:absolute;right:8%;bottom:7%;margin:0;text-align:right;color:#b48a48;font:italic 20px/1.45 Georgia,serif;letter-spacing:.03em}
.od-contact__maincta{box-shadow:0 14px 34px rgba(174,108,115,.08);transition:transform .25s ease,box-shadow .25s ease}.od-contact__maincta:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(174,108,115,.15)}.od-contact__maincta span>small:first-child{color:#b98650;font:12px Georgia,serif;letter-spacing:.18em;margin:0 0 6px}
.od-contact__closing>p:first-child{margin:0 0 9px;color:#8c7769;font-size:13px;letter-spacing:.12em}
@media(max-width:800px){.od-contact__lead{font-size:16px!important}.od-contact__visual{min-height:360px}.od-contact__orbit{inset:8% 5%}.od-contact__orbit span{font-size:11px}.od-contact__seed b{font-size:25px}.od-contact__visual>p{font-size:17px}.od-contact__head p:last-child{font-size:15px}}

/* Ver.1.10.30: replace the diagram with the final illustrated storybook page. */
.od-contact__storybook{display:block!important;min-height:0!important;margin:0;position:relative;overflow:hidden;border-radius:30px;background:#fbf6ee!important;box-shadow:0 14px 35px rgba(111,88,72,.08)}
.od-contact__storybook img{display:block;width:100%;height:100%;min-height:440px;object-fit:cover;object-position:center;border-radius:inherit}
.od-contact__storybook figcaption{position:absolute;right:7%;bottom:6%;z-index:2;margin:0;padding:10px 14px;text-align:right;color:#a77b39;background:rgba(255,252,246,.78);border-radius:12px;font:italic 18px/1.4 Georgia,"Times New Roman",serif;letter-spacing:.02em;backdrop-filter:blur(3px)}
.od-contact__storybook figcaption span{color:#df6f7a}
@media(max-width:800px){.od-contact__storybook img{min-height:0;aspect-ratio:4/3;object-fit:cover}.od-contact__storybook figcaption{right:5%;bottom:4%;font-size:15px;padding:8px 10px}}

/* Ver.1.10.32: the final question is handed from OFFICE DEAR to the visitor. */
.od-contact__storybook figcaption{font-style:normal;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;line-height:1.65;letter-spacing:.04em}
.od-contact__closing h3{font-style:normal;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-size:clamp(28px,3vw,40px);letter-spacing:.06em}

/* Ver.1.10.33: blank offered page, equal body type, one calm gold rule. */
.od-contact__copy h3{border:0!important;border-bottom:0!important;box-shadow:none!important;background:none!important;padding-bottom:0!important}
.od-contact__copy h3:before,.od-contact__copy h3:after{content:none!important;display:none!important;border:0!important;background:none!important}
.od-contact__copy .od-contact__rule{display:block!important;width:100%!important;height:1px!important;margin:22px 0!important;border:0!important;background:rgba(212,182,122,.62)!important;box-shadow:none!important}
.od-contact__copy p,.od-contact__copy p.od-contact__lead{font-size:16px!important;line-height:2!important;letter-spacing:.035em!important}
@media(max-width:800px){.od-contact__copy p,.od-contact__copy p.od-contact__lead{font-size:14px!important;line-height:2!important}}

/* Ver.1.10.34: keep the offered page visually blank; place the message in the quiet upper margin. */
.od-contact__storybook figcaption{left:6%!important;right:auto!important;top:5%!important;bottom:auto!important;padding:6px 9px!important;text-align:left!important;font-size:13px!important;line-height:1.55!important;background:rgba(255,252,246,.58)!important;border-radius:8px!important;backdrop-filter:blur(2px)}
@media(max-width:800px){.od-contact__storybook figcaption{left:4%!important;top:4%!important;font-size:11px!important;padding:5px 7px!important}}
.od-hero__visual--photo:after{display:none!important}
.od-hero__photo-fade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,253,250,.86) 0%,rgba(255,253,250,.38) 16%,transparent 34%),linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,250,245,.04));pointer-events:none}
.od-hero__inner--v13{grid-template-columns:1.01fr .99fr;gap:0;max-width:1540px;padding-right:24px}
.od-hero__copy--v13{position:relative;z-index:2;max-width:780px;padding-right:10px}
.od-hero__bridge{max-width:1360px;margin-left:auto!important;margin-right:auto!important}
@media(max-width:1180px){.od-hero__visual--photo{background-position:61% center!important}.od-hero__inner--v13{grid-template-columns:1.06fr .94fr;padding-right:18px}}
@media(max-width:720px){.od-hero__visual--photo{height:310px!important;min-height:0!important;width:calc(100% + 40px)!important;margin-left:-20px;background-position:58% 42%!important;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 78%,transparent 100%);mask-image:linear-gradient(180deg,#000 0%,#000 78%,transparent 100%)}.od-hero__photo-fade{background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,253,250,.78))}.od-hero__inner--v13{padding-right:20px}}

/* Ver.1.6.2 — official-brand visual refinement */
.od-hero__visual--photo{background-position:center center!important;background-size:cover!important;-webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.30) 10%,#000 27%,#000 100%)!important;mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.30) 10%,#000 27%,#000 100%)!important;}
.od-hero__photo-fade{background:linear-gradient(90deg,rgba(255,253,250,.92) 0%,rgba(255,253,250,.48) 13%,rgba(255,253,250,.08) 29%,transparent 43%)!important;}
@media(max-width:1180px){.od-hero__visual--photo{background-position:54% center!important}}
@media(max-width:720px){.od-hero__visual--photo{background-position:58% 48%!important}}

/* Ver.1.6.3 — First View final-balance baseline (2026-08-26) */
.od-hero--v13{
  min-height:calc(100vh - 92px);
  padding-bottom:72px;
  background:#fffdfa;
}
.od-hero__inner--v13{
  width:100%;
  max-width:1600px;
  min-height:calc(100vh - 92px);
  margin:0 auto;
  padding:34px 0 54px 56px;
  display:grid;
  grid-template-columns:48.5% 51.5%;
  gap:0;
  align-items:center;
}
.od-hero__copy--v13{
  z-index:4;
  max-width:760px;
  padding:20px 28px 0 0;
}
.od-hero__brandmark{margin-left:68px;margin-bottom:19px}
.od-hero__copy--v13 h1 small{margin-left:68px}
.od-hero__copy--v13 .od-lead{margin-left:68px}
.od-hero__copy--v13 .od-rule{margin-left:68px;width:72%}
.od-hero__copy--v13 .od-intro{margin-left:68px}
.od-storyflow{margin-left:41px;margin-top:26px}

/* The visual should feel like part of the page, not a pasted rectangular photograph. */
.od-hero__visual--photo{
  align-self:stretch;
  width:100%;
  height:auto!important;
  min-height:650px!important;
  margin:0;
  border-radius:0!important;
  background-size:cover!important;
  background-position:53% 50%!important;
  box-shadow:none!important;
  overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.14) 5%,rgba(0,0,0,.64) 17%,#000 31%,#000 100%)!important;
  mask-image:linear-gradient(90deg,transparent 0%,rgba(0,0,0,.14) 5%,rgba(0,0,0,.64) 17%,#000 31%,#000 100%)!important;
}
.od-hero__photo-fade{
  background:linear-gradient(90deg,#fffdfa 0%,rgba(255,253,250,.82) 8%,rgba(255,253,250,.32) 20%,rgba(255,253,250,.05) 34%,transparent 47%)!important;
}
.od-hero__bridge{
  bottom:17px;
  width:min(1450px,92vw);
  padding:15px 34px;
  border-radius:31px;
  background:rgba(255,247,242,.88);
}
.od-hero__wave{display:none}

@media(min-width:1601px){
  .od-hero__inner--v13{max-width:none;padding-left:max(56px,calc((100vw - 1600px)/2 + 56px));grid-template-columns:minmax(680px,48.5%) 1fr}
}
@media(max-width:1180px){
  .od-hero__inner--v13{padding-left:30px;grid-template-columns:51% 49%}
  .od-hero__brandmark,.od-hero__copy--v13 h1 small,.od-hero__copy--v13 .od-lead,.od-hero__copy--v13 .od-rule,.od-hero__copy--v13 .od-intro{margin-left:30px}
  .od-storyflow{margin-left:8px}
  .od-hero__visual--photo{min-height:590px!important;background-position:56% 50%!important}
}
@media(max-width:1050px){
  .od-hero__inner--v13{padding-left:22px;grid-template-columns:54% 46%}
  .od-hero__visual--photo{min-height:545px!important}
}
@media(max-width:720px){
  .od-hero--v13{padding-bottom:92px}
  .od-hero__inner--v13{display:flex;flex-direction:column;padding:24px 20px 48px}
  .od-hero__copy--v13{padding-right:0;width:100%}
  .od-hero__visual--photo{width:calc(100% + 40px)!important;margin:28px -20px 0!important;height:330px!important;min-height:330px!important;background-position:58% 50%!important;-webkit-mask-image:linear-gradient(180deg,#000 0%,#000 80%,transparent 100%)!important;mask-image:linear-gradient(180deg,#000 0%,#000 80%,transparent 100%)!important}
  .od-hero__photo-fade{background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,253,250,.8))!important}
}

/* ===== Ver.1.7 — OUR STORY implementation ===== */
.od-story{position:relative;overflow:hidden;background:linear-gradient(120deg,#fffdfa 0%,#fffaf6 52%,#faf4ee 100%);padding:112px 40px 0;color:var(--od-brown)}
.od-story__inner{position:relative;z-index:2;max-width:1280px;margin:0 auto 86px;display:grid;grid-template-columns:1.08fr .92fr;gap:86px;align-items:start}
.od-story__copy{padding:12px 0 0 28px}.od-story__script{width:430px;max-width:82%;margin:0 auto 12px;color:#df7f89;text-align:center;font:italic 38px/1.1 "Brush Script MT","Segoe Script",cursive;letter-spacing:.02em;transform:rotate(-1.5deg);transform-origin:center}
.od-story__copy h2{margin:0;font-size:clamp(36px,3.3vw,52px);line-height:1.52;letter-spacing:.045em;font-weight:400;color:#5d493b}.od-story__copy h2>span{display:block;white-space:nowrap}.od-story__copy h2 em{font-style:normal;color:#df7f89}.od-story__ornament{width:430px;max-width:82%;height:38px;display:flex;align-items:center;gap:10px;margin:24px 0 20px}.od-story__ornament span{height:1px;background:var(--od-gold);flex:1}.od-story__ornament i{font-style:normal;color:var(--od-gold);font-size:18px}.od-story__text{font-size:16px;line-height:2.08;letter-spacing:.055em}.od-story__text p{margin:0 0 20px}.od-story__text .od-story__accent{color:#df7f89;font-weight:600;margin:26px 0}.od-story__text em{font-style:normal;color:#df7f89}.od-story__closing{margin-top:30px;text-align:center}.od-story__closing span{display:block;color:var(--od-gold);font-size:25px;margin-bottom:12px}.od-story__closing p{font-size:18px;letter-spacing:.07em;margin:0}
.od-story__flow{padding:48px 46px;border:1px solid rgba(255,255,255,.9);border-radius:28px;background:rgba(255,255,255,.55);box-shadow:0 18px 55px rgba(111,88,72,.045);backdrop-filter:blur(6px)}.od-story__step{display:grid;grid-template-columns:140px 1fr;gap:28px;align-items:center;min-height:132px}.od-story__step>div:last-child{padding-top:2px}.od-story__step h3{font-size:25px;font-weight:500;letter-spacing:.08em;margin:0 0 10px}.od-story__step i{display:block;width:100%;height:1px;background:var(--od-gold);position:relative;margin-bottom:12px}.od-story__step i:after{content:"✦";position:absolute;right:-3px;top:-10px;color:var(--od-gold);font-size:14px;background:rgba(255,255,255,.72);padding-left:5px}.od-story__step p{font-size:13px;line-height:1.75;letter-spacing:.045em;margin:0}.od-story__step--suki h3{color:#df7f89;font-size:28px;font-weight:600}.od-story__step--katachi h3{color:#c89b46}.od-story__step--tsunagari h3{color:#b88d58}.od-story__step--egao h3{color:#df7f89}.od-story__step--future h3{color:#c89b46}.od-story__icon{width:124px;height:108px;display:flex;align-items:center;justify-content:center;position:relative}.od-story__icon:before{content:"";position:absolute;width:112px;height:98px;border-radius:48% 52% 45% 55%;background:rgba(232,164,169,.11);filter:blur(2px)}.od-story__icon img{position:relative;z-index:1;display:block;width:102px;height:88px;object-fit:contain}.od-story__step--suki .od-story__icon{width:132px;height:116px}.od-story__step--suki .od-story__icon:before{width:120px;height:106px;background:rgba(232,164,169,.15)}.od-story__step--suki .od-story__icon img{width:116px;height:100px}.od-story__step--katachi .od-story__icon:before,.od-story__step--future .od-story__icon:before{background:rgba(212,182,122,.14)}.od-story__step--tsunagari .od-story__icon:before{background:linear-gradient(135deg,rgba(232,164,169,.11),rgba(212,182,122,.12))}.od-story__connector{height:18px;margin-left:61px;border-left:1px dotted rgba(212,182,122,.75);position:relative}.od-story__connector b{position:absolute;left:-7px;top:3px;font-size:12px;color:var(--od-gold);font-weight:400;background:#fffaf6}
.od-story__next{position:relative;z-index:2;margin:0 -40px;padding:52px 30px 34px;text-align:center;background:rgba(248,241,234,.72);border-radius:50% 50% 0 0/22px 22px 0 0}.od-story__next>span{display:block;color:var(--od-gold);font-size:30px}.od-story__next p{margin:8px 0 6px;font-size:22px;letter-spacing:.07em}.od-story__next em{font-style:normal;color:#df7f89}.od-story__next a{display:inline-block;color:var(--od-gold)!important;text-decoration:none!important;font-size:34px;line-height:1}
.od-story__botanical{position:absolute;z-index:1;pointer-events:none;opacity:.7}.od-story__botanical--left{left:-28px;top:72px;width:150px;height:520px;background:radial-gradient(ellipse at 35% 10%,rgba(232,164,169,.28) 0 4%,transparent 5%),radial-gradient(ellipse at 58% 22%,rgba(168,195,166,.5) 0 6%,transparent 7%),radial-gradient(ellipse at 30% 38%,rgba(232,164,169,.22) 0 5%,transparent 6%),radial-gradient(ellipse at 62% 54%,rgba(168,195,166,.45) 0 7%,transparent 8%),radial-gradient(ellipse at 25% 72%,rgba(212,182,122,.22) 0 5%,transparent 6%)}.od-story__botanical--right{right:-30px;bottom:0;width:210px;height:220px;background:radial-gradient(ellipse at 25% 65%,rgba(168,195,166,.5) 0 10%,transparent 11%),radial-gradient(ellipse at 52% 46%,rgba(168,195,166,.43) 0 11%,transparent 12%),radial-gradient(ellipse at 77% 72%,rgba(168,195,166,.46) 0 10%,transparent 11%),radial-gradient(ellipse at 65% 24%,rgba(212,182,122,.22) 0 7%,transparent 8%)}
@media(max-width:1050px){.od-story{padding:90px 28px 0}.od-story__inner{grid-template-columns:1fr;gap:55px;max-width:820px}.od-story__copy{padding-left:0}.od-story__flow{padding:42px 44px}.od-story__next{margin-left:-28px;margin-right:-28px}}
@media(max-width:720px){.od-story{padding:72px 20px 0}.od-story__script{font-size:31px}.od-story__copy h2{font-size:clamp(24px,7.6vw,32px);letter-spacing:.035em}.od-story__text{font-size:14px;line-height:2}.od-story__closing p{font-size:15px}.od-story__flow{padding:28px 20px}.od-story__step{grid-template-columns:92px 1fr;gap:15px;min-height:112px}.od-story__icon,.od-story__step--suki .od-story__icon{width:86px;height:86px}.od-story__icon:before,.od-story__step--suki .od-story__icon:before{width:80px;height:74px}.od-story__icon img{width:74px;height:66px}.od-story__step--suki .od-story__icon img{width:82px;height:72px}.od-story__step h3,.od-story__step--suki h3{font-size:20px}.od-story__step p{font-size:11px;line-height:1.7}.od-story__connector{height:15px;margin-left:43px}.od-story__next{margin-left:-20px;margin-right:-20px;padding-top:40px}.od-story__next p{font-size:16px}}

/* ===== Ver.1.8 — OUR SERVICES implementation ===== */
.od-services{position:relative;overflow:hidden;background:#fffdfa;padding:96px 32px 108px;color:var(--od-brown)}
.od-services:before,.od-services:after{content:"";position:absolute;pointer-events:none;border-radius:50%;filter:blur(2px)}
.od-services:before{width:420px;height:420px;left:-210px;top:70px;background:radial-gradient(circle,rgba(232,164,169,.15),transparent 68%)}
.od-services:after{width:430px;height:430px;right:-190px;bottom:-150px;background:radial-gradient(circle,rgba(168,195,166,.17),transparent 70%)}
.od-services__inner{position:relative;z-index:2;max-width:1360px;margin:0 auto}
.od-services__head{text-align:center;max-width:850px;margin:0 auto 48px}
.od-services__eyebrow{margin:0 0 16px;color:#c89b46;font:600 13px/1.2 Georgia,"Times New Roman",serif;letter-spacing:.24em}
.od-services__head h2{margin:0;color:#5d493b;font-size:clamp(34px,3.6vw,54px);font-weight:400;line-height:1.48;letter-spacing:.055em}
.od-services__head h2 em{font-style:normal;color:#df7f89}
.od-services__intro{margin:22px 0 0;font-size:15px;line-height:2;letter-spacing:.07em;color:#786255}
.od-services__ornament{display:flex;align-items:center;justify-content:center;gap:10px;width:330px;max-width:70%;margin:25px auto 0}
.od-services__ornament span{height:1px;background:rgba(212,182,122,.7);flex:1}.od-services__ornament i{font-style:normal;color:var(--od-gold)}
.od-services__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:stretch;max-width:1220px;margin:0 auto}
.od-service-card{--od-card-accent:var(--od-gold);--od-card-bg:#f9f2e6;position:relative;min-width:0;display:grid;grid-template-columns:42% minmax(0,1fr);grid-template-rows:auto auto auto 1fr auto;column-gap:30px;padding:34px 34px 30px;border:1px solid color-mix(in srgb,var(--od-card-accent) 24%,transparent);border-radius:29px;background:linear-gradient(155deg,rgba(255,255,255,.9),var(--od-card-bg));box-shadow:inset 0 2px 0 color-mix(in srgb,var(--od-card-accent) 16%,transparent),0 17px 46px rgba(111,88,72,.07);overflow:hidden}
.od-service-card:after{content:"";position:absolute;width:175px;height:175px;right:-70px;top:-72px;border-radius:50%;background:color-mix(in srgb,var(--od-card-accent) 20%,transparent)}
.od-service-card--product{--od-card-accent:#c9a760;--od-card-bg:#f7f1e4}.od-service-card--community{--od-card-accent:#d98791;--od-card-bg:#fbefef}.od-service-card--creative{--od-card-accent:#8ca27e;--od-card-bg:#eef4eb}.od-service-card--more{--od-card-accent:#a996b9;--od-card-bg:#f2eef6}
.od-service-card__top{position:relative;z-index:2;grid-column:1/-1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;margin-bottom:18px}
.od-service-card__no{font:600 12px/1 Georgia,serif;letter-spacing:.16em;color:var(--od-card-accent)}
.od-service-card__en{margin:0;text-align:right;font:600 12.5px/1.2 Georgia,"Times New Roman",serif;letter-spacing:.14em;color:var(--od-card-accent)}
.od-service-card__icon{position:relative;width:82px;height:74px;display:flex;align-items:center;justify-content:center}
.od-service-card__icon:before{content:"";position:absolute;inset:1px;border-radius:46% 54% 51% 49%;background:color-mix(in srgb,var(--od-card-accent) 11%,white);box-shadow:0 8px 24px color-mix(in srgb,var(--od-card-accent) 13%,transparent);transform:rotate(-4deg)}
.od-service-card__icon svg{position:relative;z-index:1;width:72px;height:62px;overflow:visible}.od-service-card__icon svg *{fill:none;stroke:var(--od-card-accent);stroke-width:2.35;stroke-linecap:round;stroke-linejoin:round}
.od-service-card h3{position:relative;z-index:2;grid-column:1/-1;margin:0 0 22px;padding-bottom:18px;color:#5d493b;font-size:clamp(24px,1.85vw,30px);font-weight:400;line-height:1.58;letter-spacing:.045em}
.od-service-card h3:after{content:"";position:absolute;left:0;bottom:0;width:48px;height:1px;background:var(--od-card-accent)}
.od-service-card h3 em{font-style:normal;color:var(--od-card-accent)}
.od-service-card__visual{position:relative;z-index:2;grid-column:1/2;grid-row:3/5;min-height:228px;display:flex;align-items:center;justify-content:center;align-self:stretch;margin:-8px 0 16px}
.od-service-card__visual:before{content:"";position:absolute;width:92%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--od-card-accent) 13%,white),transparent 70%)}
.od-service-card__visual img{position:relative;z-index:1;display:block;width:100%;height:228px;object-fit:contain;filter:drop-shadow(0 9px 13px rgba(111,88,72,.08))}
.od-service-card__lead{grid-column:2/3;margin:0 0 16px;color:#665246;font-size:15px;line-height:1.85;letter-spacing:.045em}
.od-service-card__body{grid-column:2/3;margin:0 0 25px;color:#756054;font-size:13.5px;line-height:1.95;letter-spacing:.035em}
.od-service-card__brand{position:relative;z-index:2;grid-column:1/-1;display:grid;grid-template-columns:1fr auto;gap:5px 10px;align-items:center;padding:17px 18px;border-radius:18px;background:rgba(255,255,255,.76);border:1px solid color-mix(in srgb,var(--od-card-accent) 32%,transparent);text-decoration:none!important;color:var(--od-brown)!important;transition:transform .22s ease,background .22s ease}
.od-service-card__brand span{font:500 17px/1.35 Georgia,"Times New Roman",serif;color:var(--od-card-accent)}
.od-service-card__brand small{grid-column:1/2;font-size:10.5px;line-height:1.65;color:#776357}.od-service-card__brand b{grid-column:2/3;grid-row:1/3;font-weight:400;color:var(--od-card-accent);font-size:20px}
.od-service-card__brand--story span{font-style:italic;font-size:16px}
@media (hover:hover) and (pointer:fine){.od-service-card__brand:hover{transform:translateY(-2px);background:rgba(255,255,255,.9)}}
.od-services__closing{text-align:center;margin-top:58px}.od-services__closing>span{display:block;color:var(--od-gold);font-size:29px;margin-bottom:10px}.od-services__closing p{margin:0;font-size:20px;letter-spacing:.07em}.od-services__closing em{font-style:normal;color:#df7f89}
@media(max-width:1180px){.od-services__grid{gap:24px}.od-service-card{grid-template-columns:40% minmax(0,1fr);column-gap:24px;padding:30px}.od-service-card h3{font-size:27px}.od-service-card__visual,.od-service-card__visual img{height:205px;min-height:205px}}
@media(max-width:900px){.od-services__grid{grid-template-columns:1fr;max-width:660px}.od-service-card{grid-template-columns:42% minmax(0,1fr)}}
@media(max-width:720px){.od-services{padding:78px 20px 76px}.od-services__head{margin-bottom:38px}.od-services__head h2{font-size:31px}.od-services__br{display:none}.od-services__intro{font-size:13px}.od-services__grid{grid-template-columns:1fr;gap:18px}.od-service-card{display:flex;flex-direction:column;padding:24px 22px;border-radius:22px}.od-service-card h3{font-size:24px}.od-service-card__visual{order:3;width:100%;height:205px;min-height:205px;margin:-8px 0 12px}.od-service-card__visual img{height:205px}.od-service-card__lead{order:4;font-size:13px}.od-service-card__body{order:5;font-size:12.5px}.od-service-card__brand{order:6}.od-services__closing{margin-top:42px}.od-services__closing p{font-size:16px;line-height:1.8}}


/* ===== Ver.1.10.22 — OUR VALUES five guiding attitudes ===== */
.od-values{position:relative;overflow:hidden;padding:112px 36px 70px;background:linear-gradient(180deg,#faf5ef 0%,#fffdfa 48%,#fbf6f1 100%);color:var(--od-brown)}
.od-values__inner{max-width:1280px;margin:auto}.od-values__head{text-align:center;max-width:820px;margin:0 auto 58px}.od-values__eyebrow{margin:0 0 16px;color:#df7f89;font:600 13px/1.2 Georgia,serif;letter-spacing:.24em}.od-values__head h2{margin:0;font-size:clamp(34px,3.5vw,52px);line-height:1.5;font-weight:400;letter-spacing:.055em;color:#5d493b}.od-values__head h2 em{font-style:normal;color:#df7f89}.od-values__head>p:last-of-type{margin:20px 0 0;font-size:15px;line-height:2;letter-spacing:.07em;color:#786255}.od-values__ornament{display:flex;align-items:center;gap:12px;width:330px;max-width:70%;margin:25px auto 0;color:var(--od-gold)}.od-values__ornament span{height:1px;background:rgba(212,182,122,.65);flex:1}.od-values__ornament i{font-style:normal;font-size:18px}
.od-values__grid{display:grid;grid-template-columns:repeat(6,1fr);gap:24px}.od-value{--accent:#d98791;position:relative;grid-column:span 2;padding:24px 24px 32px;text-align:center;border-radius:28px;background:linear-gradient(155deg,color-mix(in srgb,var(--accent) 7%,white),rgba(255,255,255,.84) 54%);border:1px solid color-mix(in srgb,var(--accent) 22%,transparent);box-shadow:0 16px 46px rgba(111,88,72,.055)}.od-value:nth-child(4){grid-column:2/span 2}.od-value:nth-child(5){grid-column:4/span 2}.od-value--gold{--accent:#c9a760}.od-value--sage{--accent:#8ca27e}.od-value--lavender{--accent:#a996b9}.od-value--community{--accent:#b47f86}.od-value__no{position:absolute;left:20px;top:18px;z-index:1;color:var(--accent);font:500 10px/1 Georgia,serif;letter-spacing:.14em}.od-value__visual{height:205px;margin:0 auto 10px;display:flex;align-items:center;justify-content:center}.od-value__visual img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 9px 14px rgba(111,88,72,.06))}.od-value__en{margin:0 0 5px!important;color:var(--accent)!important;font:600 10px/1.3 Georgia,serif!important;letter-spacing:.18em!important}.od-value h3{margin:0 0 17px;padding-bottom:16px;position:relative;font-size:25px;line-height:1.5;font-weight:400;letter-spacing:.07em}.od-value h3:after{content:"";position:absolute;width:42px;height:1px;background:var(--accent);left:calc(50% - 21px);bottom:0}.od-value h3 em{font-style:normal;color:var(--accent)}.od-value p{margin:0;font-size:12.5px;line-height:2;letter-spacing:.035em;color:#756054}.od-values__closing{text-align:center;margin-top:58px}.od-values__closing>span{display:block;color:var(--od-gold);font-size:24px}.od-values__closing p{margin:8px 0 4px;font-size:18px;letter-spacing:.07em}.od-values__closing a{font-size:32px;line-height:1;color:var(--od-gold)!important;text-decoration:none!important}
@media(max-width:1180px){.od-values__grid{gap:18px}.od-value{padding-inline:20px}.od-value__visual{height:185px}}
@media(max-width:900px){.od-values__grid{grid-template-columns:repeat(2,1fr);max-width:760px;margin-inline:auto}.od-value,.od-value:nth-child(4){grid-column:span 1}.od-value:nth-child(5){grid-column:1/-1;max-width:371px;width:100%;justify-self:center}.od-value__visual{height:220px}}
@media(max-width:720px){.od-values{padding:78px 20px 58px}.od-values__head{margin-bottom:38px}.od-values__head h2{font-size:31px}.od-values__head>p:last-of-type{font-size:13px}.od-values__grid{grid-template-columns:1fr;gap:16px;max-width:520px}.od-value,.od-value:nth-child(4),.od-value:nth-child(5){grid-column:1;max-width:none;padding:22px 20px 28px}.od-value__visual{height:210px;margin-bottom:8px}.od-value h3{font-size:24px}.od-values__closing{margin-top:40px}.od-values__closing p{font-size:15px}}

/* Ver.1.9.1 approved OUR VALUES closing */
.od-values__closing p{line-height:1.9}.od-values__closing p em{font-style:normal;color:#df7f89}

/* ===== Ver.1.9.2 — ABOUT OFFICE♡DEAR approved implementation ===== */
.od-about{position:relative;overflow:hidden;padding:92px 36px 74px;background:linear-gradient(180deg,#fffdfa 0%,#fbf7f1 100%);color:var(--od-brown)}
.od-about:after{content:"";position:absolute;right:-100px;top:15px;width:330px;height:500px;opacity:.18;background:radial-gradient(ellipse at 40% 30%,#a8c3a6 0 3px,transparent 4px),radial-gradient(ellipse at 60% 55%,#d4b67a 0 2px,transparent 3px);pointer-events:none}
.od-about__inner{max-width:1280px;margin:auto;position:relative;z-index:1}.od-about__head{text-align:center;max-width:860px;margin:0 auto 54px}.od-about__eyebrow{margin:0 0 32px!important;padding:0!important;border:0!important;box-shadow:none!important;background:none!important;color:#c99635;font:600 13px/1.2 Georgia,serif;letter-spacing:.24em}.od-about__eyebrow:before,.od-about__eyebrow:after{content:none!important;display:none!important}.od-about__head h2{margin:0;color:#5d493b;font-size:clamp(34px,3.5vw,52px);font-weight:400;line-height:1.5;letter-spacing:.055em}.od-about__head h2 em{font-style:normal;color:#df7f89}.od-about__intro{margin:20px 0 0;font-size:15px;line-height:2;letter-spacing:.07em;color:#786255}.od-about__ornament{display:flex;align-items:center;justify-content:center;gap:14px;width:330px;max-width:70%;margin:24px auto 0;color:var(--od-gold)}.od-about__ornament span{height:1px;flex:1;background:rgba(212,182,122,.75)}.od-about__ornament i{font-style:normal;font-size:18px}
.od-about__grid{display:grid;grid-template-columns:.96fr 1.04fr;gap:54px;align-items:stretch}.od-about__story{padding:0}.od-about__visual{height:330px;margin:-10px 0 10px;display:flex;align-items:center;justify-content:center}.od-about__visual img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(111,88,72,.07))}.od-about__story p{margin:0 0 20px;font-size:15px;line-height:2.05;letter-spacing:.04em;color:#665246}
.od-about__company{padding:25px 30px 28px;border:1px solid rgba(212,182,122,.55);border-radius:22px;background:rgba(255,255,255,.62);box-shadow:0 15px 45px rgba(111,88,72,.045)}.od-about__company dl{margin:0}.od-about__company dl>div{display:grid;grid-template-columns:180px 1fr;gap:18px;align-items:center;padding:22px 8px;border-bottom:1px dotted rgba(212,182,122,.7)}.od-about__company dt{font-size:16px;font-weight:500;line-height:1.65;letter-spacing:.05em;color:#765d49}.od-about__company dt span{display:inline-block;width:34px;color:#c99635;font-size:22px;vertical-align:middle}.od-about__company dd{margin:0;font:500 20px/1.55 Georgia,"Times New Roman",serif;color:#513c2f}.od-about__company dd small{display:block;margin-top:3px;font:400 12px/1.6 sans-serif;color:#765f50}.od-about__button{display:flex;align-items:center;justify-content:center;gap:25px;margin-top:24px;padding:18px 28px;border-radius:16px;background:#74844e;color:white!important;text-decoration:none!important;font-size:18px;letter-spacing:.12em;transition:transform .2s ease,opacity .2s ease}.od-about__button span{font-size:28px;line-height:1}.od-about__button:hover{transform:translateY(-2px);opacity:.92}
@media(max-width:960px){.od-about__grid{grid-template-columns:1fr;gap:35px}.od-about__story{text-align:center}.od-about__visual{height:390px}.od-about__company{max-width:720px;width:100%;margin:auto}}
@media(max-width:720px){.od-about{padding:72px 20px 58px}.od-about__head{margin-bottom:35px}.od-about__eyebrow{font-size:12px;letter-spacing:.22em}.od-about__head h2{font-size:31px}.od-about__intro{font-size:13px}.od-about__story p{font-size:13px;line-height:2}.od-about__pc{display:none}.od-about__visual{height:255px;margin:-8px 0 8px}.od-about__company{padding:15px 18px 20px;border-radius:19px}.od-about__company dl>div{grid-template-columns:1fr;padding:17px 4px;gap:7px}.od-about__company dt{font-size:13px}.od-about__company dd{font-size:16px;padding-left:34px}.od-about__company dd small{font-size:10.5px}.od-about__button{font-size:15px;padding:16px}}


/* ===== Ver.1.9.3 — NEWS approved implementation ===== */
.od-news{position:relative;overflow:hidden;padding:104px 36px 78px;background:#fffdfa;color:var(--od-brown)}
.od-news:before,.od-news:after{content:"";position:absolute;bottom:-18px;width:210px;height:210px;opacity:.24;pointer-events:none;background:radial-gradient(ellipse at 20% 75%,rgba(168,195,166,.8) 0 4px,transparent 5px),radial-gradient(ellipse at 38% 58%,rgba(168,195,166,.65) 0 3px,transparent 4px),radial-gradient(ellipse at 57% 43%,rgba(212,182,122,.7) 0 2px,transparent 3px)}
.od-news:before{left:-65px;transform:rotate(-18deg)}.od-news:after{right:-65px;transform:scaleX(-1) rotate(-18deg)}
.od-news__inner{max-width:1260px;margin:0 auto;position:relative;z-index:1}
.od-news__head{text-align:center;max-width:860px;margin:0 auto 52px}.od-news__eyebrow{margin:0 0 32px;padding:0;border:0;color:#df7f89;font:600 13px/1.2 Georgia,serif;letter-spacing:.24em}.od-news__eyebrow:before,.od-news__eyebrow:after{content:none!important;display:none!important}.od-news__head h2{margin:0;color:#5d493b;font-size:clamp(32px,3vw,44px);font-weight:400;line-height:1.5;letter-spacing:.035em;white-space:nowrap}.od-news__head h2 em{font-style:normal;color:#df7f89}.od-news__head>p{margin:20px 0 0;font-size:15px;line-height:2;letter-spacing:.07em;color:#786255}
.od-news__list{overflow:hidden;border:1px solid rgba(212,182,122,.42);border-radius:24px;background:rgba(255,255,255,.58);box-shadow:0 15px 42px rgba(111,88,72,.04)}.od-news__item{display:grid;grid-template-columns:145px 175px 1fr 44px;gap:22px;align-items:center;min-height:108px;padding:20px 28px;border-bottom:1px dotted rgba(212,182,122,.78);color:var(--od-brown)!important;text-decoration:none!important;transition:background .2s ease,transform .2s ease}.od-news__item:last-child{border-bottom:0}.od-news__item time{font:500 19px/1.2 Georgia,"Times New Roman",serif;letter-spacing:.06em;color:#806957}.od-news__tag{display:inline-flex;align-items:center;justify-content:center;min-height:40px;border-radius:999px;padding:7px 17px;font-size:14px;letter-spacing:.03em;border:1px solid currentColor;white-space:nowrap}.od-news__tag--office{color:#df7f89;background:#fff3f5}.od-news__tag--aloha{color:#7f946f;background:#f3f7ee}.od-news__tag--dearhula{color:#b68a3b;background:#fff9ed}.od-news__tag--creative{color:#9a82ae;background:#f6f1f9}.od-news__item strong{font-size:19px;line-height:1.65;font-weight:400;letter-spacing:.04em}.od-news__item>b{justify-self:end;font:400 29px/1 Georgia,serif;color:#c99635}
@media(hover:hover) and (pointer:fine){.od-news__item:hover{background:rgba(250,246,241,.62);transform:translateX(3px)}}
.od-news__actions{text-align:center;margin-top:38px}.od-news__all{display:inline-flex;align-items:center;gap:32px;padding:15px 38px;border:1px solid #c99635;border-radius:14px;color:#8a6938!important;text-decoration:none!important;font-size:18px;letter-spacing:.08em;background:rgba(255,255,255,.45)}.od-news__all span{font-size:25px}
.od-news__closing{text-align:center;margin-top:50px}.od-news__closing p{margin:0;font-size:17px;line-height:1.9;letter-spacing:.07em;color:#766154}
@media(max-width:900px){.od-news__item{grid-template-columns:120px 150px 1fr 32px;gap:14px;padding-inline:20px}.od-news__item time{font-size:17px}.od-news__tag{font-size:12px;min-height:38px}.od-news__item strong{font-size:17px}}
@media(max-width:720px){.od-news{padding:78px 20px 60px}.od-news__head{margin-bottom:36px}.od-news__eyebrow{font-size:12px;letter-spacing:.22em}.od-news__head h2{font-size:31px;white-space:normal}.od-news__head>p{font-size:13px}.od-news__list{border-radius:19px}.od-news__item{grid-template-columns:1fr auto;gap:10px 14px;padding:20px 18px;min-height:0}.od-news__item time{grid-column:1/2;font-size:15px}.od-news__tag{grid-column:2/3;grid-row:1/2;font-size:11px;min-height:34px;padding:6px 12px}.od-news__item strong{grid-column:1/2;font-size:16px;line-height:1.65}.od-news__item>b{grid-column:2/3;grid-row:2/3;font-size:25px}.od-news__pc{display:none}.od-news__all{font-size:14px;padding:13px 23px}.od-news__closing{margin-top:38px}.od-news__closing p{font-size:14px;line-height:1.8}}


/* ===== Ver.1.9.4 — CONTACT approved implementation ===== */
.od-contact{padding:90px 36px 64px;background:linear-gradient(180deg,#fffdfa,#fffaf6);color:var(--od-brown)}.od-contact__inner{max-width:1260px;margin:auto}.od-contact__head{text-align:center;margin-bottom:34px}.od-contact__head h2{margin:0;font:500 clamp(44px,4.4vw,66px)/1 Georgia,"Times New Roman",serif;letter-spacing:.12em;color:#b27a22}.od-contact__head p{font-size:20px;letter-spacing:.14em}.od-contact__titleline{width:520px;max-width:72%;margin:0 auto 16px;display:flex;align-items:center;gap:14px;color:var(--od-gold)}.od-contact__titleline span,.od-contact__signature span{height:1px;flex:1;background:rgba(212,182,122,.8)}.od-contact__titleline i{font-style:normal;font-size:25px}.od-contact__hero{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:stretch}.od-contact__copy h3{font-size:clamp(38px,4vw,58px);line-height:1.45;font-weight:400;letter-spacing:.045em;margin:0}.od-contact__copy h3 em{font-style:normal;color:#e16f7b}.od-contact__rule{height:1px;background:rgba(212,182,122,.55);margin:22px 0}.od-contact__copy p{font-size:16px;line-height:2;letter-spacing:.035em;margin:12px 0}.od-contact__copy strong{display:block;color:#df6674;font-size:23px;line-height:1.7;letter-spacing:.04em;margin-top:20px}.od-contact__visual{min-height:440px;border-radius:30px;background:radial-gradient(circle at 70% 20%,rgba(168,195,166,.23),transparent 38%),linear-gradient(135deg,#fffdf8,#f7f0e5);position:relative;overflow:hidden}.od-contact__flowers{position:absolute;right:10%;top:8%;font-size:54px;line-height:1.7;color:#9aab72;opacity:.6}.od-contact__card{position:absolute;left:28%;top:30%;width:55%;padding:34px 20px;text-align:center;background:#fff9ef;box-shadow:0 14px 35px rgba(111,88,72,.12);transform:rotate(4deg)}.od-contact__card i{font:italic 31px/1.45 Georgia,serif;color:#c39245}.od-contact__card b{display:block;font-size:30px;color:#c39245}.od-contact__pen{position:absolute;bottom:7%;left:18%;font:120px/1 Georgia,serif;color:#b9883b;transform:rotate(48deg)}.od-contact__maincta{margin:38px 0 22px;border:1px solid #e78b94;border-radius:20px;min-height:140px;display:grid;grid-template-columns:130px 1fr 70px;align-items:center;padding:20px 36px;color:var(--od-brown)!important;text-decoration:none!important;background:linear-gradient(90deg,#fffafa,#fff7f7)}.od-contact__mail{width:88px;height:88px;border:1px solid #e78b94;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:40px;color:#e16f7b}.od-contact__maincta strong{display:block;color:#df6674;font-size:31px;font-weight:400;letter-spacing:.08em}.od-contact__maincta small{display:block;font-size:15px;margin-top:10px}.od-contact__maincta>b{font-size:42px;color:#df6674}.od-contact__brands{display:grid;grid-template-columns:1fr 1fr;gap:20px}.od-contact__brand{position:relative;padding:28px 34px;border:1px solid;border-radius:18px;text-decoration:none!important;color:var(--od-brown)!important;min-height:220px}.od-contact__brand h3{text-align:center;font-size:24px;line-height:1.5;font-weight:400;margin:0 0 24px;padding-bottom:17px;border-bottom:1px dotted}.od-contact__brand p{font-size:15px;line-height:1.9}.od-contact__brand b{position:absolute;right:30px;bottom:22px;font-size:30px}.od-contact__brand--hula{border-color:#d4b67a;background:#fffaf1}.od-contact__brand--hula h3,.od-contact__brand--hula b{color:#b9862d}.od-contact__brand--aloha{border-color:#a8c3a6;background:#f8fbf4}.od-contact__brand--aloha h3,.od-contact__brand--aloha b{color:#728a5d}.od-contact__closing{margin-top:22px;padding:28px;text-align:center;border:1px solid #c9b6d5;border-radius:18px;background:linear-gradient(90deg,#faf7ff,#fff,#faf7ff)}.od-contact__closing h3{margin:0;color:#9279ac;font:italic 38px/1.3 Georgia,serif;letter-spacing:.04em}.od-contact__closing span{color:#a990bd;font-size:27px}.od-contact__closing p{font-size:18px;line-height:1.8;margin:8px 0 0}.od-contact__signature{display:flex;align-items:center;gap:20px;width:520px;max-width:75%;margin:32px auto 0;color:#a77a36}.od-contact__signature b{font:400 21px/1 Georgia,serif;letter-spacing:.08em;white-space:nowrap}
@media(max-width:800px){.od-contact{padding:70px 20px 48px}.od-contact__hero{grid-template-columns:1fr}.od-contact__visual{min-height:320px}.od-contact__copy h3{font-size:36px}.od-contact__copy p{font-size:14px}.od-contact__copy strong{font-size:19px}.od-contact__maincta{grid-template-columns:70px 1fr 30px;padding:18px 16px;min-height:110px}.od-contact__mail{width:56px;height:56px;font-size:28px}.od-contact__maincta strong{font-size:21px}.od-contact__maincta small{font-size:12px}.od-contact__brands{grid-template-columns:1fr}.od-contact__closing h3{font-size:29px}.od-contact__closing p{font-size:15px}}

/* ===== Ver.1.9.5 — approved Header / Footer ===== */
.od-header{background:rgba(255,253,250,.94);border-bottom:1px solid rgba(201,150,53,.68);box-shadow:0 3px 18px rgba(111,88,72,.035)}
.od-header__inner{max-width:1540px;height:108px;padding:0 48px;gap:34px}.od-brand{flex:0 0 auto}.od-brand__word{font-size:35px;color:#b67c22;letter-spacing:.055em}.od-heart{color:#b67c22;font-size:38px}.od-sparkles{font-style:normal;color:#c99031;font-size:17px;vertical-align:top;margin-left:5px}.od-nav{gap:0}.od-nav a{position:relative;min-width:105px;padding:15px 16px;border-radius:0}.od-nav a:not(:last-child):after{content:"";position:absolute;right:0;top:24%;height:52%;width:1px;background:rgba(212,182,122,.48)}.od-nav span{font-size:14px}.od-nav small{font-size:10px}.od-nav .od-nav__contact{min-width:150px;margin-left:16px;border:1px solid #ef9da6;border-radius:30px;background:#fff2f4;color:#e16f7b!important}.od-nav .od-nav__contact:after{display:none}.od-nav__contact i{font-style:normal;font-size:23px;margin-left:9px}.od-main{padding-top:108px}
.od-footer{position:relative;overflow:hidden;background:linear-gradient(180deg,#fffdfa,#fcf7f1);border-top:1px solid rgba(212,182,122,.45);color:var(--od-brown)}.od-footer:before,.od-footer:after{content:"❧";position:absolute;bottom:40px;color:rgba(201,144,43,.34);font-size:150px;line-height:1;pointer-events:none}.od-footer:before{left:-18px;transform:rotate(-35deg)}.od-footer:after{right:-18px;transform:scaleX(-1) rotate(-35deg)}.od-footer__inner{position:relative;z-index:1;max-width:1460px;margin:auto;padding:58px 44px 45px;display:grid;grid-template-columns:1.15fr .9fr 1.1fr .9fr;gap:42px}.od-footer__identity,.od-footer__nav,.od-footer__brands{border-right:1px solid rgba(212,182,122,.38);padding-right:34px}.od-footer__logo{font:400 32px/1.2 Georgia,serif;letter-spacing:.04em;color:#b67c22;white-space:nowrap}.od-footer__logo span{font-size:38px}.od-footer__logo i{font-style:normal;font-size:15px;vertical-align:top}.od-footer__tagline{font-size:16px;line-height:2;letter-spacing:.04em;margin:24px 0 14px}.od-footer__heartline{display:flex;align-items:center;gap:10px;color:#c89239;width:280px;max-width:100%}.od-footer__heartline span{height:1px;background:rgba(212,182,122,.7);flex:1}.od-footer__heartline i{font-style:normal;font-size:24px}.od-footer__social{display:flex;gap:20px;margin-top:18px}.od-footer__social a{width:46px;height:46px;border:1px solid currentColor;border-radius:50%;display:flex;align-items:center;justify-content:center;text-decoration:none!important;color:#d97984!important;font:13px Georgia,serif}.od-footer__social a:nth-child(2){color:#789365!important;font:9px Arial,sans-serif}.od-footer__social a:nth-child(3){color:#b9852e!important;font-size:20px}.od-footer__nav{display:flex;flex-direction:column;gap:13px}.od-footer__nav a{text-decoration:none!important;color:var(--od-brown)!important}.od-footer__nav b{font:400 15px Georgia,serif;letter-spacing:.05em}.od-footer__nav small{font-size:11px;margin-left:12px}.od-footer__brands h2{margin:0 0 17px;color:#b67c22;font:400 20px Georgia,serif;letter-spacing:.08em}.od-footer__brands h2 i{font-style:normal}.od-footer__brands>a{position:relative;display:block;padding:13px 34px 15px 0;border-bottom:1px solid rgba(212,182,122,.45);text-decoration:none!important;color:#b67c22!important}.od-footer__brands>a.aloha{color:#748c61!important}.od-footer__brands strong{display:block;font:400 22px Georgia,"Yu Mincho",serif}.od-footer__brands small{display:block;margin-top:7px;color:var(--od-brown);font-size:12px}.od-footer__brands b{position:absolute;right:4px;top:25px;font-size:24px}.od-footer__company h2{margin:6px 0 18px;font:400 16px Georgia,serif}.od-footer__company p{font-size:13px;line-height:1.8}.od-footer__links{display:flex;align-items:center;gap:18px;margin-top:35px;padding-top:22px;border-top:1px dotted rgba(212,182,122,.6)}.od-footer__links a{color:var(--od-brown)!important;text-decoration:none!important;font:14px Georgia,serif}.od-footer__links span{width:1px;height:20px;background:rgba(212,182,122,.6)}.od-footer__copyright{position:relative;z-index:1;text-align:center;border-top:1px solid rgba(212,182,122,.34);padding:20px 20px 16px;background:rgba(250,246,241,.66)}.od-footer__copyright p{margin:0;font:14px Georgia,serif;letter-spacing:.07em}.od-footer__copyright>div{display:flex;align-items:center;gap:10px;width:350px;max-width:70%;margin:10px auto 0;color:#c89239}.od-footer__copyright span{height:1px;flex:1;background:rgba(212,182,122,.65)}.od-footer__copyright i{font-style:normal;font-size:20px}
@media(max-width:1180px){.od-header__inner{padding:0 28px}.od-brand__word{font-size:28px}.od-nav a{min-width:90px;padding-left:10px;padding-right:10px}.od-nav span{font-size:12px}.od-nav .od-nav__contact{min-width:128px}.od-footer__inner{grid-template-columns:1fr 1fr;gap:34px}.od-footer__nav{border-right:0}.od-footer__brands{border-top:1px solid rgba(212,182,122,.3);padding-top:28px}.od-footer__company{border-top:1px solid rgba(212,182,122,.3);padding-top:28px}}
@media(max-width:1050px){.od-header__inner{height:82px}.od-main{padding-top:82px}.od-brand__word{font-size:29px}.od-heart{font-size:31px}.od-menu-toggle{display:flex;width:52px;height:52px;border:0;background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:7px}.od-menu-toggle span{width:29px;height:1px;background:var(--od-brown)}.od-nav{top:82px;width:min(380px,90vw);padding:24px 28px;background:rgba(255,253,250,.985)}.od-nav a{min-width:0;text-align:left;padding:16px 6px;border-bottom:1px dotted rgba(212,182,122,.6)}.od-nav a:not(:last-child):after{display:none}.od-nav span{font-size:15px}.od-nav small{font-size:11px}.od-nav .od-nav__contact{margin:12px 0 0;padding:14px 16px;border-radius:12px}}
@media(max-width:720px){.od-header__inner{padding:0 20px}.od-brand__word{font-size:24px}.od-heart{font-size:27px}.od-sparkles{font-size:12px}.od-footer__inner{padding:46px 25px 34px;grid-template-columns:1fr;gap:30px}.od-footer__identity,.od-footer__nav,.od-footer__brands{border-right:0;padding-right:0;border-bottom:1px solid rgba(212,182,122,.34);padding-bottom:28px}.od-footer__logo{font-size:28px}.od-footer__tagline{font-size:14px}.od-footer__nav{display:grid;grid-template-columns:1fr 1fr}.od-footer__nav small{display:block;margin:4px 0 0}.od-footer__brands{border-top:0;padding-top:0}.od-footer__company{border-top:0;padding-top:0}.od-footer:before,.od-footer:after{font-size:90px;opacity:.45}.od-footer__copyright p{font-size:12px}}


/* ===== Ver.1.9.7 — Header refinement / official logo master Ver.2.2 ===== */
@media(min-width:1051px){
  .od-header__inner{height:92px;max-width:1540px;padding:0 48px;gap:30px}
  .od-main{padding-top:92px}
  .od-brand{flex:0 0 auto;display:flex;align-items:center;justify-content:flex-start;min-width:0}
  .od-brand__master-logo{display:block;width:260px;max-width:22vw;height:auto}
  .od-nav{display:flex;align-items:center;gap:0;margin-left:auto}
  .od-nav a{min-width:96px;padding:11px 13px;border-radius:0;display:flex;min-height:58px;flex-direction:column;justify-content:center;align-items:center;box-sizing:border-box}
  .od-nav span{font-size:13px;line-height:1.15}
  .od-nav small{font-size:9px;margin-top:5px;line-height:1.1}
  .od-nav a:not(:last-child):after{top:22%;height:56%}
  .od-nav .od-nav__contact{min-width:134px;min-height:58px;margin-left:14px;padding:10px 18px;border:1px solid rgba(232,164,169,.92);border-radius:18px;background:rgba(255,244,246,.96);color:#df7480!important;box-shadow:none}
  .od-nav .od-nav__contact span{font-size:13px;letter-spacing:.08em}
  .od-nav .od-nav__contact small{font-size:9px;margin-top:4px}
  .od-nav__contact i{font-style:normal;font-size:14px;margin-left:4px;vertical-align:1px}
}
@media(min-width:1051px) and (max-width:1240px){
  .od-header__inner{padding:0 28px;gap:18px}
  .od-brand__master-logo{width:225px;max-width:20vw}
  .od-nav a{min-width:84px;padding-left:9px;padding-right:9px}
  .od-nav span{font-size:11.5px}.od-nav small{font-size:8px}
  .od-nav .od-nav__contact{min-width:122px;margin-left:10px}
}
@media(max-width:1050px){
  .od-brand__master-logo{display:block;width:238px;max-width:58vw;height:auto}
}
@media(max-width:720px){
  .od-brand__master-logo{width:205px;max-width:62vw}
}

/* ===== Ver.1.9.8 — Header wordmark raster-safe refinement ===== */
.od-brand__master-logo{
  display:block;
  width:238px;
  max-width:22vw;
  height:auto;
  image-rendering:auto;
}
@media(max-width:1180px){.od-brand__master-logo{width:218px;max-width:20vw}}
@media(max-width:1050px){.od-brand__master-logo{width:225px;max-width:58vw}}
@media(max-width:720px){.od-brand__master-logo{width:200px;max-width:62vw}}

/* ===== Ver.1.10.1 — Mobile menu + First View mobile refinement ===== */
@media(max-width:1050px){
  /* Menu is an independent foreground panel. */
  .od-header{overflow:visible}
  .od-menu-toggle{position:relative;z-index:10040;flex:0 0 auto}
  .od-nav{
    position:fixed!important;
    z-index:10030!important;
    top:82px!important;
    right:0!important;
    bottom:auto!important;
    width:min(390px,92vw)!important;
    height:calc(100dvh - 82px)!important;
    max-height:calc(100dvh - 82px)!important;
    padding:22px 24px 34px!important;
    margin:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    overflow-y:auto!important;
    overscroll-behavior:contain;
    background:#fffdfa!important;
    opacity:1!important;
    box-shadow:-18px 18px 48px rgba(111,88,72,.16)!important;
    transform:translate3d(105%,0,0)!important;
    transition:transform .28s ease!important;
  }
  .od-nav.is-open{transform:translate3d(0,0,0)!important}
  .od-nav a{
    width:100%!important;
    min-height:55px!important;
    padding:14px 6px!important;
    display:flex!important;
    flex-direction:row!important;
    align-items:center!important;
    justify-content:flex-start!important;
    text-align:left!important;
    border-radius:0!important;
    border-bottom:1px dotted rgba(212,182,122,.62)!important;
    background:transparent!important;
  }
  .od-nav a span{font-size:15px!important;line-height:1.2!important;letter-spacing:.055em}
  .od-nav a small{display:inline-block!important;margin:0 0 0 14px!important;font-size:10.5px!important;line-height:1.2!important;color:var(--od-brown)!important;opacity:.88}
  .od-nav a:not(:last-child):after{display:none!important}
  .od-nav .od-nav__contact{
    width:100%!important;
    min-height:54px!important;
    margin:16px 0 0!important;
    padding:13px 16px!important;
    border:1px solid rgba(232,164,169,.82)!important;
    border-radius:14px!important;
    background:#fff1f3!important;
    color:#df7480!important;
  }
  .od-nav .od-nav__contact span{color:#df7480!important}
  .od-nav .od-nav__contact small{color:#df7480!important}
  body.od-menu-open{overflow:hidden!important;touch-action:none}
  body.od-menu-open:after{
    content:"";
    position:fixed;
    z-index:10010;
    inset:82px 0 0 0;
    background:rgba(80,67,58,.18);
    backdrop-filter:blur(2px);
    -webkit-backdrop-filter:blur(2px);
  }
  .od-header,.od-header__inner{z-index:10020}
  .od-menu-toggle span{transition:transform .22s ease,opacity .18s ease}
  body.od-menu-open .od-menu-toggle span:nth-child(1){transform:translateY(8px) rotate(45deg)}
  body.od-menu-open .od-menu-toggle span:nth-child(2){opacity:0}
  body.od-menu-open .od-menu-toggle span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}
}

@media(max-width:720px){
  /* Keep the completed header; make the hero a compact, readable mobile story. */
  .od-hero--v13{
    min-height:auto!important;
    padding-bottom:74px!important;
    overflow:hidden;
  }
  .od-hero__inner--v13{
    min-height:0!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-start!important;
    padding:0 18px 34px!important;
    gap:0!important;
  }
  .od-hero__visual--photo{
    order:-1!important;
    width:calc(100% + 36px)!important;
    height:205px!important;
    min-height:205px!important;
    margin:0 -18px 10px!important;
    background-size:cover!important;
    background-position:59% 43%!important;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 78%,rgba(0,0,0,.82) 88%,transparent 100%)!important;
    mask-image:linear-gradient(180deg,#000 0%,#000 78%,rgba(0,0,0,.82) 88%,transparent 100%)!important;
  }
  .od-hero__photo-fade{background:linear-gradient(180deg,transparent 0 70%,rgba(255,253,250,.78) 93%,#fffdfa 100%)!important}
  .od-hero__copy--v13{width:100%!important;padding:0!important;text-align:center!important}
  .od-hero__brandmark{width:92px!important;margin:0 auto 9px!important}
  .od-hero__brandmark svg{width:62px!important}
  .od-hero__brandmark span{font-size:7.5px!important}
  .od-hero__copy--v13 h1{margin:0!important;font-size:30px!important;line-height:1.42!important;letter-spacing:.045em!important}
  .od-hero__copy--v13 h1 small{margin:0 auto 1px!important;font-size:.52em!important}
  .od-h1-line{display:block!important;white-space:normal!important;font-size:1em!important}
  .od-hero__copy--v13 .od-lead{margin:12px auto 0!important;font-size:14px!important;line-height:1.72!important;letter-spacing:.04em!important}
  .od-hero__copy--v13 .od-rule{width:74%!important;height:18px!important;margin:12px auto 6px!important}
  .od-hero__copy--v13 .od-rule:before{top:8px!important}
  .od-hero__copy--v13 .od-rule i{top:5px!important}
  .od-hero__copy--v13 .od-intro{margin:9px auto 0!important;font-size:11.5px!important;line-height:1.82!important;letter-spacing:.035em!important}
  .od-storyflow{
    width:100%!important;
    max-width:356px!important;
    margin:17px auto 0!important;
    justify-content:center!important;
    align-items:flex-start!important;
    gap:0!important;
  }
  .od-storyflow__item{width:53px!important;gap:2px!important}
  .od-storyflow__item.future{width:76px!important}
  .od-storyflow__item svg{width:37px!important;height:30px!important}
  .od-storyflow__item.future svg{width:43px!important}
  .od-storyflow__item b{font-size:7.5px!important;line-height:1.25!important}
  .od-storyflow>span{font-size:9px!important;padding-top:12px!important}
  .od-scroll--down{margin:17px auto 0!important;gap:5px!important;font-size:9px!important}
  .od-scroll--down i{height:18px!important}
  .od-scroll--down i:after{top:11px!important}
  .od-hero__bridge{
    bottom:10px!important;
    width:calc(100% - 34px)!important;
    padding:10px 12px!important;
    border-radius:18px!important;
    font-size:9.5px!important;
    line-height:1.65!important;
    letter-spacing:.035em!important;
  }
  .od-story{padding-top:54px!important}
}

@media(max-width:390px){
  .od-hero__visual--photo{height:185px!important;min-height:185px!important;background-position:60% 43%!important}
  .od-hero__copy--v13 h1{font-size:28px!important}
  .od-hero__copy--v13 .od-intro{font-size:11px!important}
  .od-storyflow{transform:scale(.96);transform-origin:center top;margin-bottom:-3px!important}
}


/* Ver.1.10.2 — Mobile first-view visual polish only. Header/navigation behavior is intentionally unchanged. */
@media(max-width:720px){
  .od-hero--v13{padding-bottom:58px!important}
  .od-hero__inner--v13{padding:0 20px 25px!important}
  .od-hero__visual--photo{
    width:calc(100% + 40px)!important;
    height:192px!important;
    min-height:192px!important;
    margin:0 -20px 3px!important;
    background-position:59% 42%!important;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 74%,rgba(0,0,0,.78) 86%,transparent 100%)!important;
    mask-image:linear-gradient(180deg,#000 0%,#000 74%,rgba(0,0,0,.78) 86%,transparent 100%)!important;
  }
  .od-hero__brandmark{width:86px!important;margin:0 auto 6px!important}
  .od-hero__brandmark svg{width:58px!important}
  .od-hero__copy--v13 h1{font-size:29px!important;line-height:1.38!important;letter-spacing:.035em!important}
  .od-hero__copy--v13 h1 small{margin-bottom:0!important}
  .od-hero__copy--v13 .od-lead{margin-top:9px!important;font-size:13.5px!important;line-height:1.65!important}
  .od-hero__copy--v13 .od-rule{width:70%!important;margin:9px auto 4px!important}
  .od-hero__copy--v13 .od-intro{max-width:340px!important;margin:6px auto 0!important;font-size:11.2px!important;line-height:1.75!important}
  .od-storyflow{max-width:350px!important;margin-top:13px!important}
  .od-storyflow__item{width:52px!important}
  .od-storyflow__item.future{width:73px!important}
  .od-storyflow__item svg{width:36px!important;height:29px!important}
  .od-storyflow__item.future svg{width:42px!important}
  .od-storyflow>span{padding-top:11px!important}
  .od-scroll--down{margin-top:12px!important}
  .od-hero__bridge{bottom:7px!important;padding:8px 11px!important;line-height:1.55!important}
  .od-story{padding-top:40px!important}
}
@media(max-width:390px){
  .od-hero__visual--photo{height:178px!important;min-height:178px!important;margin-bottom:2px!important}
  .od-hero__brandmark{width:82px!important;margin-bottom:5px!important}
  .od-hero__brandmark svg{width:55px!important}
  .od-hero__copy--v13 h1{font-size:27px!important;line-height:1.4!important}
  .od-hero__copy--v13 .od-lead{font-size:13px!important}
  .od-hero__copy--v13 .od-intro{font-size:10.8px!important;line-height:1.72!important}
  .od-storyflow{transform:scale(.94)!important;margin-top:11px!important;margin-bottom:-5px!important}
}




/* Ver.1.10.4 — First View five-symbol optical balance refinement
   Official FINAL VOL.4 image data is unchanged.
   Only display sizing is adjusted per symbol for equal visual presence. */

.od-storyflow__item img{
  display:block;
  object-fit:contain;
  object-position:center;
  margin:0 auto 4px;
}

/* Desktop / tablet optical sizing */
.od-storyflow__item:nth-of-type(1) img{ width:50px; height:46px; }  /* 好き */
.od-storyflow__item:nth-of-type(2) img{ width:46px; height:48px; }  /* かたち */
.od-storyflow__item:nth-of-type(3) img{ width:76px; height:46px; }  /* つながり */
.od-storyflow__item:nth-of-type(4) img{ width:78px; height:44px; }  /* 笑顔 */
.od-storyflow__item:nth-of-type(5) img{ width:88px; height:44px; }  /* やさしい未来へ */

@media(max-width:1180px){
  .od-storyflow__item:nth-of-type(1) img{ width:48px; height:44px; }
  .od-storyflow__item:nth-of-type(2) img{ width:44px; height:46px; }
  .od-storyflow__item:nth-of-type(3) img{ width:72px; height:44px; }
  .od-storyflow__item:nth-of-type(4) img{ width:74px; height:42px; }
  .od-storyflow__item:nth-of-type(5) img{ width:84px; height:42px; }
}

/* Smartphone: enlarge 3–5 so they do not collapse into thin lines */
@media(max-width:720px){
  .od-storyflow__item:nth-of-type(1) img{ width:34px!important; height:30px!important; }
  .od-storyflow__item:nth-of-type(2) img{ width:31px!important; height:32px!important; }
  .od-storyflow__item:nth-of-type(3) img{ width:49px!important; height:30px!important; }
  .od-storyflow__item:nth-of-type(4) img{ width:50px!important; height:29px!important; }
  .od-storyflow__item:nth-of-type(5) img{ width:56px!important; height:29px!important; }
  .od-storyflow{ column-gap:4px; }
  .od-storyflow > span{ margin:0 1px; }
}

/* Ver.1.10.5 — First View five-symbol true optical balance fix
   The source PNG artwork remains unchanged. Symbols 3–5 contain substantial
   transparent vertical padding, so their CSS image boxes must be taller to
   make the visible artwork optically match symbols 1–2. */
@media(max-width:720px){
  .od-storyflow__item:nth-of-type(1) img{width:34px!important;height:30px!important}
  .od-storyflow__item:nth-of-type(2) img{width:31px!important;height:32px!important}
  .od-storyflow__item:nth-of-type(3) img{width:82px!important;height:50px!important}
  .od-storyflow__item:nth-of-type(4) img{width:84px!important;height:50px!important}
  .od-storyflow__item:nth-of-type(5) img{width:94px!important;height:54px!important}
  .od-storyflow__item:nth-of-type(3),
  .od-storyflow__item:nth-of-type(4){width:62px!important}
  .od-storyflow__item:nth-of-type(5){width:78px!important}
  .od-storyflow__item img{max-width:none!important;flex:0 0 auto}
  .od-storyflow{align-items:flex-start!important}
  .od-storyflow>span{padding-top:18px!important}
}
@media(max-width:390px){
  .od-storyflow__item:nth-of-type(3) img{width:78px!important;height:48px!important}
  .od-storyflow__item:nth-of-type(4) img{width:80px!important;height:48px!important}
  .od-storyflow__item:nth-of-type(5) img{width:90px!important;height:52px!important}
}


/* Ver.1.10.6 — First View 5 Symbols alignment completion
   FINAL VOL.4 master artwork is unchanged.
   Web copies are only tightly trimmed for reliable optical sizing. */

.od-storyflow{
  display:flex!important;
  align-items:flex-start!important;
}

.od-storyflow__item{
  display:grid!important;
  grid-template-rows:46px auto!important;
  align-items:start!important;
  justify-items:center!important;
  gap:5px!important;
  flex:0 0 auto!important;
}

.od-storyflow__item img{
  display:block!important;
  object-fit:contain!important;
  object-position:center!important;
  align-self:center!important;
  justify-self:center!important;
  max-width:none!important;
  margin:0!important;
}

/* PC：見た目の高さを揃え、横長3点は十分な存在感を確保 */
.od-storyflow__item:nth-of-type(1){width:70px!important}
.od-storyflow__item:nth-of-type(2){width:70px!important}
.od-storyflow__item:nth-of-type(3){width:92px!important}
.od-storyflow__item:nth-of-type(4){width:92px!important}
.od-storyflow__item:nth-of-type(5){width:112px!important}

.od-storyflow__item:nth-of-type(1) img{width:46px!important;height:42px!important}
.od-storyflow__item:nth-of-type(2) img{width:34px!important;height:42px!important}
.od-storyflow__item:nth-of-type(3) img{width:78px!important;height:40px!important}
.od-storyflow__item:nth-of-type(4) img{width:80px!important;height:40px!important}
.od-storyflow__item:nth-of-type(5) img{width:94px!important;height:38px!important}

.od-storyflow__item b{
  line-height:1.25!important;
  margin:0!important;
  text-align:center!important;
}
.od-storyflow>span{
  align-self:flex-start!important;
  padding-top:15px!important;
  line-height:1!important;
}

/* スマホ：5点の上端・中心・ラベル位置を完全に共通化 */
@media(max-width:720px){
  .od-storyflow{
    justify-content:center!important;
    gap:0!important;
    transform:none!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
  .od-storyflow__item{
    grid-template-rows:34px auto!important;
    gap:3px!important;
  }
  .od-storyflow__item:nth-of-type(1){width:45px!important}
  .od-storyflow__item:nth-of-type(2){width:43px!important}
  .od-storyflow__item:nth-of-type(3){width:56px!important}
  .od-storyflow__item:nth-of-type(4){width:56px!important}
  .od-storyflow__item:nth-of-type(5){width:72px!important}

  .od-storyflow__item:nth-of-type(1) img{width:31px!important;height:30px!important}
  .od-storyflow__item:nth-of-type(2) img{width:23px!important;height:30px!important}
  .od-storyflow__item:nth-of-type(3) img{width:49px!important;height:28px!important}
  .od-storyflow__item:nth-of-type(4) img{width:50px!important;height:28px!important}
  .od-storyflow__item:nth-of-type(5) img{width:59px!important;height:26px!important}

  .od-storyflow__item b{
    font-size:7.5px!important;
    line-height:1.2!important;
  }
  .od-storyflow>span{
    font-size:9px!important;
    padding-top:12px!important;
    margin:0!important;
  }
}

@media(max-width:390px){
  .od-storyflow__item:nth-of-type(1){width:42px!important}
  .od-storyflow__item:nth-of-type(2){width:40px!important}
  .od-storyflow__item:nth-of-type(3){width:52px!important}
  .od-storyflow__item:nth-of-type(4){width:52px!important}
  .od-storyflow__item:nth-of-type(5){width:67px!important}
}

/* ===== Ver.1.10.7 — First View: master logo v2.3 applied ===== */
.od-hero__brandmark{
  width:124px;
  height:auto;
}
.od-hero__brandmark img{
  display:block;
  width:100%;
  height:auto;
  margin:0;
}
@media(max-width:720px){
  .od-hero__brandmark{width:108px;}
}

/* ===== Ver.1.10.9 — Mobile hero photo framing: show a little more flowers ===== */
@media(max-width:720px){
  .od-hero__visual--photo{
    background-position:58% 42%!important;
  }
}


/* Ver.1.10.10 — final first-view position tuning based on approved PC/mobile mockup. */
@media(max-width:720px){
  .od-hero__visual--photo{
    height:310px!important;
    min-height:310px!important;
    margin:0 -18px 4px!important;
    background-position:54% 42%!important;
    -webkit-mask-image:linear-gradient(180deg,#000 0%,#000 86%,rgba(0,0,0,.88) 93%,transparent 100%)!important;
    mask-image:linear-gradient(180deg,#000 0%,#000 86%,rgba(0,0,0,.88) 93%,transparent 100%)!important;
  }
  .od-hero__photo-fade{background:linear-gradient(180deg,transparent 0 80%,rgba(255,253,250,.58) 94%,#fffdfa 100%)!important}
  .od-hero__brandmark{margin:2px auto 7px!important}
  .od-hero__copy--v13 h1{font-size:27px!important;line-height:1.38!important}
  .od-h1-line{white-space:nowrap!important;font-size:1em!important}
  .od-hero__copy--v13 .od-lead{margin-top:9px!important}
  .od-hero__copy--v13 .od-rule{margin-top:9px!important}
}
@media(max-width:390px){
  .od-hero__visual--photo{height:285px!important;min-height:285px!important;background-position:54% 42%!important}
  .od-hero__copy--v13 h1{font-size:25px!important}
  .od-h1-line{white-space:nowrap!important}
}

/* Ver.1.10.11 — Desktop first-view final vertical balance. Mobile intentionally unchanged. */
@media(min-width:721px){
  .od-hero--v13{
    min-height:calc(100vh - 122px)!important;
    padding-bottom:58px!important;
  }
  .od-hero__inner--v13{
    min-height:calc(100vh - 122px)!important;
    padding-top:16px!important;
    padding-bottom:42px!important;
  }
  .od-hero__copy--v13{
    transform:translateY(-18px);
  }
  .od-storyflow{margin-top:21px!important}
  .od-scroll--down{margin-top:12px!important}
  .od-hero__visual--photo{
    min-height:610px!important;
  }
  .od-hero__bridge{
    bottom:12px!important;
    padding:15px 34px!important;
    font-size:18px!important;
    line-height:1.65!important;
    letter-spacing:.065em!important;
  }
}
@media(min-width:721px) and (max-width:1180px){
  .od-hero__bridge{font-size:16px!important}
  .od-hero__visual--photo{min-height:565px!important}
}


/* Ver.1.10.12 — PC-only final micro-adjustment: bring the brand statement fully into the first viewport and strengthen readability. Mobile is intentionally unchanged. */
@media(min-width:721px){
  .od-hero--v13{padding-bottom:50px!important;}
  .od-hero__inner--v13{padding-bottom:36px!important;}
  .od-storyflow{margin-top:19px!important;}
  .od-scroll--down{margin-top:10px!important;}
  .od-hero__bridge{
    bottom:36px!important;
    font-size:19px!important;
    line-height:1.6!important;
    padding:14px 34px!important;
  }
}
@media(min-width:721px) and (max-width:1180px){
  .od-hero__bridge{font-size:16.5px!important;bottom:30px!important;}
}


/* ===== Ver.1.10.38 — Branded COMPANY / PRIVACY subpages ===== */
body.officedear-subpage{margin:0;background:#fffdfa;color:var(--od-brown);font-family:"Noto Serif JP","Yu Mincho",YuMincho,"Hiragino Mincho ProN",serif}
.officedear-subpage .site-header,.officedear-subpage .site-footer,.officedear-subpage .breadcrumb,.officedear-subpage .page-header{display:none!important}
.od-subpage{padding-top:92px;background:#fffdfa;min-height:70vh}
.od-subhero{position:relative;padding:92px 28px 68px;text-align:center;background:linear-gradient(135deg,#fffdfa 0%,#fff7f3 55%,#faf5ee 100%);overflow:hidden}
.od-subhero:before,.od-subhero:after{content:"";position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}
.od-subhero:before{width:280px;height:280px;left:-130px;top:-120px;background:rgba(232,164,169,.10)}
.od-subhero:after{width:330px;height:330px;right:-160px;bottom:-180px;background:rgba(168,195,166,.10)}
.od-subhero__inner{position:relative;z-index:2;max-width:900px;margin:auto}
.od-subhero__eyebrow{margin:0 0 18px;color:var(--od-gold);font:600 13px/1.2 Georgia,serif;letter-spacing:.24em}
.od-subhero h1{margin:0;color:#5e4b3e;font-size:clamp(34px,4vw,54px);font-weight:400;letter-spacing:.09em}
.od-subhero__inner>p:not(.od-subhero__eyebrow){margin:22px 0 0;font-size:15px;line-height:1.9;letter-spacing:.06em}
.od-subhero__ornament{display:flex;align-items:center;justify-content:center;gap:13px;max-width:340px;margin:28px auto 0;color:var(--od-gold)}
.od-subhero__ornament span{height:1px;background:var(--od-gold);flex:1}.od-subhero__ornament i{font-style:normal;font-size:20px}

.od-company{padding:76px 28px 110px;background:#fffdfa}
.od-company__inner{max-width:980px;margin:auto}
.od-company__intro{display:grid;grid-template-columns:300px 1fr;gap:52px;align-items:center;margin-bottom:48px;padding:34px 40px;border:1px solid rgba(212,182,122,.34);border-radius:28px;background:rgba(250,246,241,.68)}
.od-company__intro img{width:100%;max-width:280px;justify-self:center}.od-company__intro p{margin:0 0 13px;font-size:15px;line-height:2;letter-spacing:.055em}
.od-company__table{margin:0;border:1px solid rgba(212,182,122,.38);border-radius:26px;overflow:hidden;background:white}
.od-company__table>div{display:grid;grid-template-columns:210px 1fr;border-bottom:1px solid rgba(212,182,122,.28)}
.od-company__table>div:last-child{border-bottom:0}.od-company__table dt,.od-company__table dd{margin:0;padding:24px 30px}
.od-company__table dt{background:rgba(250,246,241,.72);font-weight:600;letter-spacing:.08em;color:#81694f}.od-company__table dd{font-size:15px;line-height:1.9;letter-spacing:.04em}
.od-company__table a{color:var(--od-brown)!important;text-decoration:none;border-bottom:1px solid rgba(212,182,122,.65)}
.od-company__note{margin:30px auto 0;padding:20px 24px;text-align:center;border-radius:22px;background:#fff7f3;color:#7d6653}
.od-company__note span{display:block;color:var(--od-pink);font-size:24px;margin-bottom:5px}.od-company__note p{margin:0;font-size:13px;line-height:1.8}

.od-policy{padding:72px 28px 110px;background:#fffdfa}.od-policy__inner{max-width:980px;margin:auto}
.od-policy__lead{margin:0 0 42px;padding:28px 32px;border-radius:22px;background:#fff7f3;border:1px solid rgba(232,164,169,.28);font-size:14px;line-height:2}
.od-policy article{padding:0 0 34px;margin:0 0 34px;border-bottom:1px solid rgba(212,182,122,.35)}
.od-policy article:last-of-type{border-bottom:0}.od-policy h2{margin:0 0 16px;color:#6f5848;font-size:22px;font-weight:500;letter-spacing:.055em}
.od-policy p,.od-policy li{font-size:14px;line-height:2;letter-spacing:.025em}.od-policy p{margin:0 0 12px}.od-policy ul{margin:12px 0 0;padding-left:1.6em}
.od-policy__contact{margin-top:18px!important;padding:20px 24px;border-radius:18px;background:rgba(168,195,166,.10)}
.od-policy a{color:#806748!important;text-decoration:none;border-bottom:1px solid rgba(212,182,122,.7)}

.od-subpage__back{display:flex;justify-content:space-between;gap:18px;margin-top:52px;padding-top:30px;border-top:1px solid rgba(212,182,122,.36)}
.od-subpage__back a{display:inline-flex;align-items:center;justify-content:center;min-width:190px;padding:15px 22px;border:1px solid rgba(212,182,122,.75);border-radius:999px;background:#fffdfa;color:#725a46!important;text-decoration:none!important;font-size:13px;letter-spacing:.05em;transition:.2s}
.od-subpage__back a:hover{background:#faf3eb;transform:translateY(-1px)}

.od-footer__company .od-footer__links{display:flex!important;align-items:center;gap:11px;flex-wrap:wrap}
.od-footer__company .od-footer__links span{width:1px;height:15px;background:rgba(111,88,72,.24)}

@media(max-width:1050px){.od-subpage{padding-top:78px}.od-company__intro{grid-template-columns:240px 1fr}}
@media(max-width:720px){
  .od-subhero{padding:68px 20px 52px}.od-subhero h1{font-size:32px}.od-subhero__inner>p:not(.od-subhero__eyebrow){font-size:13px}
  .od-company,.od-policy{padding:52px 18px 78px}
  .od-company__intro{grid-template-columns:1fr;gap:20px;padding:26px 22px;text-align:center}.od-company__intro img{max-width:230px}
  .od-company__table>div{grid-template-columns:1fr}.od-company__table dt{padding:16px 20px 8px;background:rgba(250,246,241,.78)}.od-company__table dd{padding:8px 20px 18px;font-size:14px}
  .od-policy__lead{padding:22px 20px}.od-policy h2{font-size:19px}.od-policy p,.od-policy li{font-size:13px}
  .od-subpage__back{flex-direction:column}.od-subpage__back a{width:100%}
}


/* Ver.1.10.40 — footer Instagram icon */
.od-footer__social .od-social-instagram svg{
  width:18px;height:18px;display:block;fill:none;stroke:currentColor;stroke-width:1.7;
}


/* Footer OFFICE♡DEAR marks are HOME links */
.od-footer__home-brand,
.od-footer__home-company{
  color:inherit!important;
  text-decoration:none!important;
}
.od-footer__home-brand:hover,
.od-footer__home-company:hover{
  opacity:.78;
}


/* Ver.1.10.42 — footer left OFFICE♡DEAR is a real HOME link */
.od-footer__identity .od-footer__logo.od-footer__home-brand{
  display:inline-block;
  position:relative;
  z-index:3;
  pointer-events:auto;
  cursor:pointer;
  color:inherit!important;
  text-decoration:none!important;
}

/* ===== Ver.1.10.47 — mobile layout guard + NEWS archive ===== */
.od-news-archive{padding:104px 36px 110px;background:#fffdfa;color:var(--od-brown);min-height:70vh}
.od-news-archive__inner{max-width:1260px;margin:0 auto}
.od-news-archive__head{text-align:center;max-width:860px;margin:0 auto 52px}
.od-news-archive__head h1{margin:0;color:#5d493b;font-size:clamp(32px,3vw,44px);font-weight:400;line-height:1.5;letter-spacing:.035em}
.od-news-archive__head h1 em{font-style:normal;color:#df7f89}
.od-news-archive__head>p{margin:20px 0 0;font-size:15px;line-height:2;letter-spacing:.07em;color:#786255}
.od-news-archive__back{text-align:center;margin-top:42px}
.od-news-archive__back a{display:inline-flex;align-items:center;justify-content:center;padding:15px 24px;border:1px solid rgba(212,182,122,.75);border-radius:16px;color:#725a46!important;text-decoration:none!important;background:#fffdfa;font-size:13px;letter-spacing:.04em}

@media(max-width:720px){
  /* Never allow a front-page section/card to protrude past the phone viewport. */
  html,body.officedear-front{max-width:100%;overflow-x:hidden}
  .od-main,.od-main section,.od-main section>div,.od-footer,.od-footer__inner{max-width:100%;box-sizing:border-box}
  .od-story__copy h2>span{white-space:normal}
  .od-news__head h2{white-space:normal;font-size:29px;line-height:1.55}
  .od-news__item strong,.od-about__company dd,.od-service-card,.od-value,.od-contact{overflow-wrap:anywhere;word-break:normal}
  .od-news__pc{display:none}
  .od-footer__links{gap:10px;flex-wrap:wrap}
  .od-footer__links a{font-size:12px}

  .od-news-archive{padding:70px 20px 78px}
  .od-news-archive__head{margin-bottom:38px}
  .od-news-archive__head h1{font-size:29px;line-height:1.55}
  .od-news-archive__head>p{font-size:13px}
  .od-news-archive__back{margin-top:30px}
  .od-news-archive__back a{width:100%;padding:15px 18px}
}
@media(max-width:390px){
  .od-news__head h2,.od-news-archive__head h1{font-size:27px}
}


/* ===== Ver.1.10.48 — smartphone refinement + NEWS route cleanup ===== */
@media(max-width:720px){

  /* Keep every inner block inside the narrow preview / real phone viewport. */
  .od-story__inner,
  .od-story__copy,
  .od-story__text,
  .od-story__flow,
  .od-contact__inner,
  .od-contact__hero,
  .od-contact__copy,
  .od-contact__brands,
  .od-contact__closing{
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }

  /* OUR STORY text: no right-edge clipping. */
  .od-story__copy{padding-left:0!important;padding-right:0!important}
  .od-story__text{
    font-size:13px!important;
    line-height:1.95!important;
    letter-spacing:.025em!important;
    overflow:visible!important;
  }
  .od-story__text p{
    max-width:100%;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  /* Five-symbol explanation panel: the old 92px icon column left too little
     room for Japanese copy on a narrow phone. */
  .od-story__flow{
    padding:24px 14px!important;
    overflow:hidden;
  }
  .od-story__step{
    grid-template-columns:64px minmax(0,1fr)!important;
    gap:10px!important;
    min-height:100px!important;
  }
  .od-story__icon,
  .od-story__step--suki .od-story__icon{
    width:60px!important;
    height:72px!important;
  }
  .od-story__icon:before,
  .od-story__step--suki .od-story__icon:before{
    width:58px!important;
    height:62px!important;
  }
  .od-story__icon img{
    width:54px!important;
    height:56px!important;
  }
  .od-story__step--suki .od-story__icon img{
    width:58px!important;
    height:58px!important;
  }
  .od-story__step>div:last-child{min-width:0!important}
  .od-story__step h3,
  .od-story__step--suki h3{
    font-size:18px!important;
    line-height:1.45!important;
    letter-spacing:.035em!important;
  }
  .od-story__step p{
    font-size:10.5px!important;
    line-height:1.75!important;
    letter-spacing:.015em!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
  .od-story__connector{margin-left:29px!important}

  /* Do not split English brand names character-by-character. */
  .od-service-card,
  .od-service-card__brand span,
  .od-contact,
  .od-contact__brand h3,
  .od-contact__closing h3{
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  /* CONTACT main copy: keep 「好き」 together and reduce forced awkward wraps. */
  .od-contact__copy h3{
    font-size:31px!important;
    line-height:1.5!important;
    letter-spacing:.025em!important;
  }
  .od-contact__copy h3 em{white-space:nowrap!important}

  .od-contact__brand{
    padding:24px 20px!important;
    min-width:0!important;
  }
  .od-contact__brand h3{
    font-size:20px!important;
    line-height:1.55!important;
    letter-spacing:.02em!important;
  }
  .od-contact__brand p{
    font-size:12.5px!important;
    line-height:1.85!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  .od-contact__closing{
    padding:24px 18px!important;
  }
  .od-contact__closing h3{
    font-size:23px!important;
    line-height:1.55!important;
    letter-spacing:.025em!important;
  }
  .od-contact__closing h3 span{white-space:nowrap}
  .od-contact__closing p{
    font-size:13px!important;
    line-height:1.8!important;
  }

  /* NEWS archive also stays clean at narrow widths. */
  .od-news-archive__inner,
  .od-news-archive__head,
  .od-news-archive .od-news__list,
  .od-news-archive .od-news__item{
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }
}

@media(max-width:390px){
  .od-story{padding-left:16px!important;padding-right:16px!important}
  .od-story__flow{padding-left:12px!important;padding-right:12px!important}
  .od-story__step{
    grid-template-columns:58px minmax(0,1fr)!important;
    gap:8px!important;
  }
  .od-story__icon,
  .od-story__step--suki .od-story__icon{width:54px!important}
  .od-story__step h3,
  .od-story__step--suki h3{font-size:17px!important}
  .od-story__step p{font-size:10px!important}

  .od-contact{padding-left:16px!important;padding-right:16px!important}
  .od-contact__copy h3{font-size:28px!important}
  .od-contact__brand h3{font-size:18px!important}
  .od-contact__closing h3{font-size:21px!important}
}


/* ===== Ver.1.10.49 — official OFFICE♡DEAR logo master v2.3 =====
   Source files are copied verbatim from the formal brand asset set.
   No artwork editing/reconstruction is applied. */
.od-hero__brandmark img{
  display:block;
  width:100%;
  height:auto;
  max-height:100%;
  object-fit:contain;
}


/* ===== Ver.1.10.50 — footer official logo replacement ===== */
.od-footer__identity .od-footer__logo img{display:block;width:240px;max-width:100%;height:auto}
.od-footer__company .od-footer__home-company{display:inline-block}
.od-footer__company .od-footer__home-company img{display:block;width:150px;max-width:100%;height:auto}
@media(max-width:720px){.od-footer__identity .od-footer__logo img{width:220px}.od-footer__company .od-footer__home-company img{width:145px}}


/* ===== Ver.1.10.51 — tablet-only First View photo composition =====
   Desktop and smartphone remain unchanged.
   On tablet, shift the crop toward the flower side so the composition has
   one clear focal point instead of splitting attention between flower/cup. */
@media (min-width:721px) and (max-width:1050px){
  .od-hero__visual--photo{
    background-position:43% 50%!important;
  }
}


/* ===== Ver.1.10.52 — stronger tablet First View photo composition =====
   Tablet only. Desktop and smartphone stay exactly as approved.
   The prior position shift was too subtle, so this version also zooms the
   background and moves the focal point clearly toward the flower/vase side. */
@media (min-width:721px) and (max-width:1050px){
  .od-hero__visual--photo{
    background-size:138% auto!important;
    background-position:31% 46%!important;
    background-repeat:no-repeat!important;
  }
}


/* ===== Ver.1.10.53 — tablet First View: force the intended crop =====
   The WP Customizer tablet preview can report a narrower CSS viewport than
   a physical tablet, so the former 721px lower bound did not always apply.
   This version targets 481px–1050px, leaving ordinary phones <=480px unchanged. */
@media (min-width:481px) and (max-width:1050px){
  .od-hero__visual--photo{
    background-size:168% auto!important;
    background-position:18% 41%!important;
    background-repeat:no-repeat!important;
  }
}


/* ===== Ver.1.10.54 — tablet First View: show the flowers, not only the vase =====
   Keep desktop and phone unchanged. */
@media (min-width:481px) and (max-width:1050px){
  .od-hero__visual--photo{
    background-size:158% auto!important;
    background-position:22% 12%!important;
    background-repeat:no-repeat!important;
  }
}


/* ===== Ver.1.10.56 — footer company mini-profile =====
   Replace the redundant phonetic/English name line with concise current
   operating information, keeping the footer visually balanced and useful. */
.od-footer__company-meta{
  margin:20px 0 0;
  padding:0;
  border-top:1px solid rgba(212,182,122,.34);
}
.od-footer__company-meta>div{
  display:grid;
  grid-template-columns:64px 1fr;
  gap:14px;
  align-items:center;
  padding:12px 0;
  border-bottom:1px dotted rgba(212,182,122,.48);
}
.od-footer__company-meta dt{
  margin:0;
  font-size:11px;
  letter-spacing:.08em;
  color:#9b7a5e;
  white-space:nowrap;
}
.od-footer__company-meta dd{
  margin:0;
  font-size:13px;
  line-height:1.6;
  color:var(--od-brown);
}
.od-footer__company .od-footer__links{
  margin-top:20px;
}
@media(max-width:720px){
  .od-footer__company-meta>div{
    grid-template-columns:58px 1fr;
    gap:12px;
  }
}

/* Ver.1.10.57 */
.od-preparing-note{display:block;margin-top:9px;font-size:10px!important;letter-spacing:.06em;color:#9b7a5e}
.od-footer__brand--preparing em{display:block;margin-top:7px;font-size:10px;font-style:normal;letter-spacing:.05em;color:#9b7a5e}
.od-creative-page{background:#fffdf9;color:var(--od-brown)}
.od-creative-hero{padding:128px 24px 92px;background:linear-gradient(180deg,#eef4e9 0%,#f8f5e9 68%,#fffdf9 100%)}
.od-creative-hero__inner{max-width:940px;margin:auto;text-align:center}.od-creative-kicker{font:13px Georgia,serif;letter-spacing:.22em;color:#829276}
.od-creative-hero h1{font-family:Georgia,"Noto Serif JP",serif;font-size:58px;line-height:1.35;font-weight:400;letter-spacing:.06em}.od-creative-hero h1 em{font-style:normal;color:#a45f70}
.od-creative-lead{margin-top:32px;font-size:17px;line-height:2}.od-creative-copy{font-size:14px;line-height:2.1;color:#715d51}
.od-creative-art{position:relative;width:180px;height:110px;margin:38px auto 0}.od-creative-art__window{position:absolute;left:28px;top:12px;width:116px;height:76px;border:2px solid #819176;border-radius:10px;background:#fff;box-shadow:8px 9px 0 rgba(180,199,164,.32)}
.od-creative-art__window i{display:inline-block;width:6px;height:6px;margin:9px 1px 0;border-radius:50%;background:#d7bd80}.od-creative-art__window b{display:block;margin-top:10px;font-size:30px;color:#a45f70}.od-creative-art__leaf{position:absolute;left:5px;bottom:0;font-size:48px;color:#9eaf90}.od-creative-art__spark{position:absolute;right:4px;top:0;font-size:27px;color:#d3b56e}
.od-creative-help{padding:90px 24px}.od-creative-help__inner{max-width:1080px;margin:auto}.od-creative-help header{text-align:center;margin-bottom:48px}.od-creative-help header p{font:11px Georgia,serif;letter-spacing:.24em;color:#829276}.od-creative-help h2{font-family:Georgia,"Noto Serif JP",serif;font-size:34px;font-weight:400;line-height:1.55}
.od-creative-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.od-creative-cards article{padding:34px 28px;border:1px solid #e4dfcf;border-radius:14px;background:#fff}.od-creative-cards article>span{color:#a45f70}.od-creative-cards h3{font-size:19px}.od-creative-cards p{font-size:13px;line-height:1.9;color:#715d51}
.od-creative-contact{padding:84px 24px 104px;background:#eef4e9}.od-creative-contact__inner{max-width:760px;margin:auto;text-align:center}.od-creative-contact__inner>span{font-size:27px;color:#a45f70}.od-creative-contact h2{font-family:Georgia,"Noto Serif JP",serif;font-size:31px;font-weight:400}.od-creative-contact p{font-size:14px;line-height:2}
.od-creative-contact a:not(.od-creative-back){display:inline-flex;gap:28px;margin-top:26px;padding:16px 28px;border:1px solid #8c9c80;border-radius:999px;background:#fff;color:inherit;text-decoration:none}.od-creative-back{display:block;margin-top:26px;font-size:12px;color:#806f63;text-decoration:none}
@media(max-width:720px){.od-creative-hero{padding:96px 20px 70px}.od-creative-hero h1{font-size:38px}.od-creative-help{padding:68px 18px}.od-creative-help h2{font-size:28px}.od-creative-cards{grid-template-columns:1fr}.od-creative-contact{padding:68px 18px 84px}.od-creative-contact h2{font-size:25px}}

/* Ver.1.10.58 — approved Creative illustration */
.od-creative-art{
  position:static!important;
  width:min(460px,72%)!important;
  height:auto!important;
  margin:38px auto 0!important;
}
.od-creative-art img{
  display:block;
  width:100%;
  height:auto;
  margin:0 auto;
}
.od-creative-art__window,
.od-creative-art__leaf,
.od-creative-art__spark{display:none!important}

@media(max-width:720px){
  .od-creative-art{width:min(330px,88%)!important;margin-top:30px!important}
}

/* ===== Ver.1.10.59 — final responsive polish =====
   Final pre-publication adjustment only:
   1) phone: calm the three large section headings and prevent awkward Japanese splits;
   2) portrait tablet: contain front-page content inside the viewport.
   Desktop and tablet landscape styling are otherwise unchanged. */
@media(max-width:720px){
  .od-services__head h2,
  .od-values__head h2,
  .od-news__head h2{
    font-size:clamp(26px,7.2vw,29px)!important;
    line-height:1.58!important;
    letter-spacing:.035em!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
  }
  .od-services__head h2 em,
  .od-values__head h2 em,
  .od-news__head h2 em{word-break:keep-all!important;overflow-wrap:normal!important}
}

/* iPad/tablet portrait safety net. The visual design remains the same; this
   only prevents wide descendants from pushing/cropping the page on the right. */
@media (min-width:721px) and (max-width:900px) and (orientation:portrait){
  html,body.officedear-front{max-width:100%;overflow-x:hidden}
  body.officedear-front .od-main,
  body.officedear-front .od-main section,
  body.officedear-front .od-main section>div,
  body.officedear-front .od-footer,
  body.officedear-front .od-footer__inner{
    width:100%;
    max-width:100%;
    min-width:0;
    box-sizing:border-box;
  }
  .od-hero__inner--v13{grid-template-columns:minmax(0,54%) minmax(0,46%);overflow:hidden}
  .od-hero__copy--v13,.od-hero__visual--photo{min-width:0;max-width:100%}
  .od-story__inner,.od-services__inner,.od-values__inner,.od-about__inner,.od-news__inner,.od-contact__inner{min-width:0;max-width:100%}
}

/* ===== Ver.1.10.60 — final device fit correction =====
   Based on final iPhone/iPad portrait checks.
   Scope: large front-page headings + iPad portrait first view only. */
@media(max-width:720px){
  .od-services__head h2,
  .od-values__head h2,
  .od-news__head h2{
    font-size:24px!important;
    line-height:1.62!important;
    letter-spacing:.025em!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
    white-space:normal!important;
    max-width:100%!important;
  }
  .od-services__head h2 em,
  .od-values__head h2 em,
  .od-news__head h2 em{
    word-break:normal!important;
    overflow-wrap:normal!important;
    white-space:normal!important;
  }
  /* The SERVICES source contains a desktop-only forced break. On phones,
     let the browser choose the cleanest line break instead. */
  .od-services__br{display:none!important}
}

@media (min-width:721px) and (max-width:900px) and (orientation:portrait){
  .od-hero__inner--v13{
    grid-template-columns:minmax(0,60%) minmax(0,40%)!important;
    gap:0!important;
    padding-left:20px!important;
    padding-right:0!important;
  }
  .od-hero__copy--v13 h1{
    font-size:36px!important;
    line-height:1.38!important;
    letter-spacing:.045em!important;
  }
  .od-h1-line{white-space:nowrap!important}
  .od-hero__brandmark,
  .od-hero__copy--v13 h1 small,
  .od-hero__copy--v13 .od-lead,
  .od-hero__copy--v13 .od-rule,
  .od-hero__copy--v13 .od-intro{margin-left:10px!important}
  .od-storyflow{margin-left:0!important}
}


/* ===== Ver.1.10.61 — corrected final responsive rules =====
   Important: 1.10.60 was packaged with stale 1.10.59 cache version.
   These rules use direct element IDs and a fresh asset version so browsers
   must load the corrected CSS. */

/* iPhone / smartphone: fit the three large section titles inside the viewport. */
@media (max-width:720px){
  #od-services-title,
  #od-values-title,
  #od-news-title{
    display:block!important;
    width:auto!important;
    max-width:calc(100vw - 48px)!important;
    margin-left:auto!important;
    margin-right:auto!important;
    box-sizing:border-box!important;
    font-size:23px!important;
    line-height:1.62!important;
    letter-spacing:.015em!important;
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }
  #od-services-title em,
  #od-values-title em,
  #od-news-title em{
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:anywhere!important;
  }
  #od-services-title .od-services__br,
  .od-services__br{
    display:none!important;
  }
}

/* Portrait tablet: give the first-view copy enough room and keep the key line intact. */
@media (min-width:721px) and (max-width:900px) and (orientation:portrait){
  .od-hero__inner--v13{
    grid-template-columns:minmax(0,62%) minmax(0,38%)!important;
    gap:0!important;
    padding-left:14px!important;
    padding-right:0!important;
  }
  .od-hero__copy--v13{
    padding-left:0!important;
    min-width:0!important;
  }
  .od-hero__copy--v13 h1{
    font-size:30px!important;
    line-height:1.36!important;
    letter-spacing:.03em!important;
  }
  .od-h1-line{
    white-space:nowrap!important;
  }

  /* CONTACT on portrait tablet: stop the right illustration from being
     vertically stretched/cropped by the taller text column. */
  .od-contact__hero{
    grid-template-columns:minmax(0,52%) minmax(0,48%)!important;
    gap:24px!important;
    align-items:start!important;
  }
  .od-contact__copy{
    min-width:0!important;
  }
  .od-contact__copy h3{
    font-size:30px!important;
    line-height:1.45!important;
    letter-spacing:.025em!important;
  }
  .od-contact__storybook{
    align-self:start!important;
    min-height:0!important;
    height:auto!important;
  }
  .od-contact__storybook img{
    display:block!important;
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    aspect-ratio:auto!important;
    object-fit:contain!important;
    object-position:center!important;
  }
}
