/* Lightweight responsive brand system — 20261015 */
body.um-brand{--brand-ink:#102c46;--brand-accent:#3de0ed;--neo-button:#123e62;--neo-button-text:#fff;--neo-button-radius:6px}
body.em-brand{--brand-ink:#582b3b;--brand-accent:#c56768;--neo-button:#743d50;--neo-button-text:#fff;--neo-button-radius:8px;background:#fbf8f3}
.neo-wp-top.um-brand .japacart-header{background:#fff!important;color:#102c46!important}
.neo-wp-top.em-brand .japacart-header{background:#fbf8f3!important;color:#582b3b!important}
.neo-wp-top.um-brand .japacart-header a,.neo-wp-top.em-brand .japacart-header a{color:var(--brand-ink)!important}
.neo-wp-top.um-brand .main-menu-wrapper{background:#102c46!important}
.neo-wp-top.em-brand .main-menu-wrapper{background:#582b3b!important}
.neo-wp-top.um-brand .main-menu{background:#102c46!important}
.neo-wp-top.em-brand .main-menu{background:#582b3b!important}
.neo-wp-top .custom-logo.brand-logo{display:block!important;width:280px!important;height:auto!important;max-width:100%!important;max-height:none!important;object-fit:contain}
.neo-wp-top.um-brand input[type=search],.neo-wp-top.em-brand input[type=search]{border-radius:7px!important;border:1px solid #cdd4db!important;background:#fff!important;color:#152d40!important}
.neo-wp-top.em-brand .search-submit,.neo-wp-top.em-brand .wp-block-search__button{background-color:#582b3b!important;color:#fff!important}
.neo-wp-top #neo-wp-slider.brand-hero{box-sizing:border-box;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;position:relative;overflow:hidden;background:#081c30;color:#fff;isolation:isolate;font-family:Arial,'Noto Sans JP','Yu Gothic',Meiryo,sans-serif}
.neo-wp-top.em-brand #neo-wp-slider.brand-hero{background:#f5eee6;color:#582b3b}
.brand-hero *{box-sizing:border-box}
.brand-hero .brand-slide{position:relative;display:none;min-height:446px;padding:54px max(28px,calc((100% - 1200px)/2)) 84px;overflow:hidden}
.brand-hero .brand-slide.is-active{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);align-items:center;gap:40px}
.brand-hero .brand-slide:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 84% 45%,#14659170,transparent 50%),linear-gradient(115deg,#061b2b,#0b2942);z-index:-1}
.em-brand .brand-hero .brand-slide:before{background:radial-gradient(ellipse at 87% 48%,#e6c3b6,transparent 47%),linear-gradient(115deg,#fffaf3,#f0e4da)}
.brand-hero .brand-copy{position:relative;z-index:2;max-width:680px}
.brand-hero .brand-kicker{display:flex;align-items:center;gap:12px;margin:0 0 18px;font-size:11px;letter-spacing:.23em;font-weight:700;color:#76deed}
.brand-hero .brand-kicker:before{content:'';display:block;width:28px;height:2px;background:currentColor}
.em-brand .brand-hero .brand-kicker{color:#a04e5c}
.brand-hero .brand-title{color:inherit!important;font-size:clamp(29px,3.5vw,48px)!important;line-height:1.4!important;letter-spacing:.02em;font-weight:750;margin:0 0 18px!important;padding:0!important;border:0!important;background:none!important;text-align:left!important}
.brand-hero .brand-title:before,.brand-hero .brand-title:after{display:none!important}
.brand-hero .brand-description{margin:0 0 18px!important;font-size:14px;line-height:1.9;max-width:490px;color:#d2e0e9}
.em-brand .brand-hero .brand-description{color:#755e64}
.brand-hero .brand-price{display:flex;align-items:baseline;gap:10px;margin:-4px 0 19px;line-height:1;color:inherit;font-size:15px}
.brand-hero .brand-price strong{font-size:66px;font-weight:700;letter-spacing:-.045em;color:#61dfed}
.em-brand .brand-hero .brand-price strong{color:#8d4256}
.brand-hero .brand-price small{font-size:12px;opacity:.7;margin-left:5px}
.brand-hero .brand-cta{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:46px;padding:12px 20px;background:#fff;color:#102c46!important;border-radius:5px;text-decoration:none!important;font-size:13px;font-weight:700;transition:transform .2s,box-shadow .2s}
.em-brand .brand-hero .brand-cta{background:#582b3b;color:#fff!important;border-radius:24px}
.brand-hero .brand-cta:hover{transform:translateY(-2px);box-shadow:0 7px 22px #0002}
.brand-hero a:focus-visible,.brand-hero button:focus-visible{outline:3px solid #e9af45!important;outline-offset:4px}
.brand-hero .brand-art{position:relative;height:290px;width:100%;max-width:430px;justify-self:center;align-self:center;pointer-events:none}
.brand-hero .disc{position:absolute;right:3%;top:2%;width:270px;aspect-ratio:1;border-radius:50%;background:repeating-radial-gradient(circle,transparent 0 18px,#ffffff12 19px 20px),conic-gradient(from 25deg,#143b58,#6de8f0,#28496d,#eee7db,#14698a,#143b58);box-shadow:0 25px 50px #0006,inset 0 0 0 1px #fff8;transform:rotate(-16deg)}
.brand-hero .disc:after{content:'';position:absolute;inset:42%;border-radius:50%;background:#0a2035;border:8px solid #ffffff80;box-shadow:0 0 0 1px #00182b60}
.em-brand .brand-hero .disc{background:repeating-radial-gradient(circle,transparent 0 18px,#ffffff30 19px 20px),conic-gradient(from 25deg,#b8767e,#efd8bd,#d98a7d,#fff4df,#b27680,#b8767e);box-shadow:0 25px 45px #66394c25,inset 0 0 0 1px #fff}
.em-brand .brand-hero .disc:after{background:#eee0d7;border-color:#fff9}
.brand-hero .disc-card{position:absolute;left:1%;bottom:5%;width:180px;height:225px;display:flex;flex-direction:column;justify-content:space-between;padding:23px;border:1px solid #5a8ead75;background:linear-gradient(145deg,#143b52,#091f32);border-radius:8px;box-shadow:0 20px 30px #0005;transform:rotate(-9deg);color:#eaf9ff}
.em-brand .brand-hero .disc-card{background:linear-gradient(145deg,#895065,#512f40);border-color:#fff5;box-shadow:0 20px 30px #532b4025}
.brand-hero .disc-card small{font-size:10px;letter-spacing:.2em}
.brand-hero .disc-card b{font-size:28px;line-height:1.1;letter-spacing:.03em}
.brand-hero .disc-card span{font-size:10px;letter-spacing:.12em;border-top:1px solid #ffffff40;padding-top:12px}
.brand-hero .brand-art svg{display:block;width:100%;height:100%;color:#68dceb;filter:drop-shadow(0 18px 22px #0002)}
.em-brand .brand-hero .brand-art svg{color:#9a5364}
.brand-hero .brand-controls{position:absolute;z-index:3;bottom:18px;left:0;right:0;display:flex;align-items:center;justify-content:center;gap:5px}
.brand-hero .brand-controls button{display:flex;align-items:center;justify-content:center;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;border:0;border-radius:50%;background:none;color:#c9e6f0;font:16px/1 Arial;cursor:pointer}
.em-brand .brand-hero .brand-controls button{color:#794352}
.brand-hero .brand-dot:before{content:'';height:5px;width:7px;border-radius:5px;background:currentColor;opacity:.4;transition:width .2s}
.brand-hero .brand-dot[aria-pressed=true]:before{width:27px;opacity:1}
.brand-hero .brand-controls button:hover{background:#ffffff12}
.em-brand .brand-hero .brand-controls button:hover{background:#713a4d0a}
.brand-hero .brand-pause{margin-left:9px;border-left:1px solid #ffffff25!important;border-radius:0!important;font-size:12px!important}
.em-brand .brand-hero .brand-pause{border-left-color:#713a4d30!important}
@media(max-width:700px){
 .neo-wp-top .custom-logo.brand-logo{width:206px!important;max-width:48vw!important}
 .brand-hero .brand-slide{min-height:560px;padding:31px 24px 65px}
 .brand-hero .brand-slide.is-active{grid-template-columns:minmax(0,1fr);gap:14px;align-content:start}
 .brand-hero .brand-kicker{font-size:10px;margin-bottom:14px;letter-spacing:.18em}
 .brand-hero .brand-title{font-size:30px!important;line-height:1.38!important;margin-bottom:13px!important}
 .brand-hero .brand-description{font-size:12px;line-height:1.85;margin-bottom:15px!important;max-width:100%}
 .brand-hero .brand-price{margin:0 0 15px;font-size:13px;gap:7px}.brand-hero .brand-price strong{font-size:52px}.brand-hero .brand-price small{font-size:10px}
 .brand-hero .brand-cta{min-height:44px;padding:10px 18px;font-size:12px}
 .brand-hero .brand-art{height:170px;width:240px;max-width:85%;justify-self:end;margin-top:-8px;opacity:.92}
 .brand-hero .disc{width:170px;right:0;top:0}.brand-hero .disc-card{width:108px;height:137px;padding:14px;left:6%;bottom:0;border-radius:6px}
 .brand-hero .disc-card b{font-size:18px}.brand-hero .disc-card small,.brand-hero .disc-card span{font-size:7px}.brand-hero .disc-card span{padding-top:7px}
 .brand-hero .brand-controls{bottom:9px}.brand-hero .brand-slide:before{background:radial-gradient(ellipse at 90% 80%,#175c7e80,transparent 65%),#081e32}.em-brand .brand-hero .brand-slide:before{background:radial-gradient(ellipse at 90% 85%,#e7c1b4,transparent 65%),#faf3eb}
}
@media(max-width:360px){.brand-hero .brand-slide{padding-left:18px;padding-right:18px;min-height:570px}.brand-hero .brand-title{font-size:27px!important}.brand-hero .brand-price small{display:none}}
@media(prefers-reduced-motion:reduce){.brand-hero *{transition:none!important}.brand-hero .brand-cta:hover{transform:none}}
.brand-hero .brand-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.brand-hero .brand-benefits>div{display:flex;flex-direction:column;justify-content:center;min-height:127px;padding:20px 18px;border:1px solid #a16b7140;border-radius:12px;background:#fff8;color:#582b3b}
.brand-hero .brand-benefits small{font-size:9px;letter-spacing:.15em;color:#9b6370;margin-bottom:12px}
.brand-hero .brand-benefits b{font-size:17px;line-height:1.5;margin-bottom:5px}
.brand-hero .brand-benefits span{font-size:12px;color:#7b5f67}
.em-brand .brand-hero .brand-slide{min-height:477px}
@media(max-width:700px){.em-brand .brand-hero .brand-slide{min-height:600px}.brand-hero .brand-benefits{gap:9px;margin-top:4px}.brand-hero .brand-benefits>div{padding:12px;min-height:95px;border-radius:8px}.brand-hero .brand-benefits small{font-size:8px;margin-bottom:5px}.brand-hero .brand-benefits b{font-size:13px;margin-bottom:3px}.brand-hero .brand-benefits span{font-size:10px}.brand-hero .brand-value-slide .brand-title{font-size:29px!important}.brand-hero .brand-value-slide .brand-description{font-size:12px}.brand-hero .brand-value-slide .brand-price{margin-bottom:14px}}

.neo-wp-top.em-brand .japacart-header button[type=submit]{background-color:#582b3b!important;border-color:#582b3b!important;color:#fff!important}
