/* ============================================
   common.css — HP改修v2 共通スタイル（T749）
   zip 全22ページの <style> 共通ルール（ルール単位比較で全ページ一致 66ルール）
   + @media(max-width:720px) はページごとに中身が異なるため、内部サブルール単位で
     比較した全ページ共通9件をマージ（SP ナビ切替 .burger/.nav-left 等 — E2E CP5 で発見）
   ソース正本: ceevs_website/design/ceevs-site-v2/index.html
   ============================================ */

:root{--white:#ffffff;--ink:#141414;--stone:#8c8c8c;--line:#ececec;--mist:#f3f2f0;--maxw:1360px;}

*{box-sizing:border-box;margin:0;padding:0}

html{scroll-behavior:smooth}

a{color:inherit;text-decoration:none}

img{max-width:100%;display:block}

.wrap{max-width:var(--maxw);margin:0 auto;padding:0 40px}

.eyebrow{font-size:10px;letter-spacing:.34em;text-transform:uppercase;color:var(--stone);font-weight:400}

.jp{font-family:"Noto Sans JP","Century Gothic","Jost",sans-serif}

.link-underline{font-size:11px;letter-spacing:.24em;text-transform:uppercase;border-bottom:1px solid var(--ink);padding-bottom:4px}

header{position:fixed;top:0;left:0;right:0;z-index:40;transition:background .35s ease,border-color .35s ease;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}

body:not(.home){padding-top:84px}

.home header{background:transparent;border-color:transparent;backdrop-filter:none}

.home header.scrolled{background:rgba(255,255,255,.92);border-color:var(--line);backdrop-filter:blur(10px)}

.brand .logo-light{display:none}

.icon-btn{display:inline-flex;align-items:center;justify-content:center}

.bar-left{display:none;align-items:center;gap:16px;grid-column:1;justify-self:start}

.icon-btn svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}

.nav-right{gap:20px}

.cart{position:relative}

@media(max-width:720px){body:not(.home){padding-top:64px}}

.bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;height:84px;position:relative}

.bar>.nav-left{grid-column:1;justify-self:start}

.bar>.nav-right{grid-column:3;justify-self:end}

.nav-left,.nav-right{display:flex;align-items:center;gap:34px}

.nav-right{justify-content:flex-end}

.nav-left a,.nav-right a,.icon-btn{font-size:11px;letter-spacing:.2em;text-transform:uppercase;font-weight:400;color:var(--ink);background:none;border:0;cursor:pointer;position:relative}

.nav-left a::after{content:"";position:absolute;left:0;bottom:-5px;width:0;height:1px;background:var(--ink);transition:width .35s ease}

.nav-left a:hover::after{width:100%}

.brand{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center}

.brand img{height:22px;width:auto;display:block}

.cart .count{position:absolute;top:-7px;right:-9px;background:var(--ink);color:#fff;font-size:9px;width:15px;height:15px;border-radius:50%;display:flex;align-items:center;justify-content:center;letter-spacing:0}

.burger{display:none}

footer{padding:90px 0 44px;border-top:1px solid var(--line)}

.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;padding-bottom:60px}

footer .fbrand{height:20px;width:auto;display:block}

footer h4{font-size:10px;letter-spacing:.24em;text-transform:uppercase;color:var(--stone);margin-bottom:22px;font-weight:400}

footer ul{list-style:none}

footer li{margin-bottom:13px}

footer a{font-size:13px;font-weight:300;transition:opacity .2s}

footer a:hover{opacity:.55}

.foot-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-top:34px;border-top:1px solid var(--line);flex-wrap:wrap}

.foot-bottom .langs{display:flex;gap:24px;font-size:11px;letter-spacing:.16em;text-transform:uppercase}

.foot-bottom .cp{font-size:10px;letter-spacing:.14em;color:var(--stone)}

.reveal{opacity:0;transform:translateY(20px);transition:opacity .9s ease,transform .9s ease}

.reveal.in{opacity:1;transform:none}

@media(prefers-reduced-motion:reduce){*{transition:none!important}.reveal{opacity:1;transform:none}html{scroll-behavior:auto}}

.drawer{position:fixed;inset:0;z-index:60;background:var(--white);transform:translateX(100%);transition:transform .4s ease;padding:28px 24px;display:flex;flex-direction:column}

.drawer.open{transform:none}

.drawer .x{align-self:flex-end;font-size:22px;background:none;border:0;cursor:pointer}

.drawer a{font-size:24px;font-weight:200;padding:16px 0;border-bottom:1px solid var(--line);letter-spacing:.06em}

.search-ov{position:fixed;inset:0;z-index:120;background:rgba(255,255,255,.98);backdrop-filter:blur(6px);display:none;flex-direction:column}

.search-ov.open{display:flex}

.search-ov .sbar{display:flex;align-items:center;gap:16px;max-width:760px;width:100%;margin:0 auto;padding:44px 24px 0;box-sizing:border-box}

.search-ov input{flex:1;border:0;border-bottom:1px solid var(--ink);background:transparent;font-family:inherit;font-size:22px;font-weight:200;letter-spacing:.02em;color:var(--ink);padding:10px 2px}

.search-ov input:focus{outline:none}

.search-ov input::placeholder{color:var(--stone);font-weight:200}

.search-ov .sclose{background:none;border:0;font-size:22px;cursor:pointer;color:var(--ink);line-height:1}

.search-ov .sres{max-width:760px;width:100%;margin:0 auto;padding:8px 24px 48px;overflow-y:auto;flex:1;box-sizing:border-box}

.search-ov .sitem{display:block;padding:15px 2px;border-bottom:1px solid var(--line);color:var(--ink)}

.search-ov .sitem:hover{background:var(--mist)}

.search-ov .sitem .sc{font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--stone)}

.search-ov .sitem .st{font-size:15px;font-weight:300;margin-top:3px}

.search-ov .snone{padding:22px 2px;color:var(--stone);font-size:13px}

.foot-grid .sns{display:inline-flex;align-items:center;gap:8px;color:var(--stone);font-size:11px;letter-spacing:.14em;transition:color .3s;text-decoration:none;margin-top:18px}

.foot-grid .sns:hover{color:var(--ink)}

.foot-grid .sns svg{display:block}

/* T749 漏れ補完（T750 追記）— 全22ページ共通の body ルール + 10ページ共通の .art/.n* ルール */
body{background:var(--white);color:var(--ink);font-family:"Century Gothic","Jost","Noto Sans JP",sans-serif;font-weight:300;line-height:1.85;letter-spacing:.02em;-webkit-font-smoothing:antialiased;overflow-x:hidden}

.art{display:flex;align-items:center;justify-content:center}

.art span{font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:#b3afa8}

.n1{background:linear-gradient(150deg,#d7d3cc,#c2beb6)}

.n2{background:linear-gradient(150deg,#d2cec8,#bcb8b0)}

.n3{background:linear-gradient(150deg,#cfccc4,#b7b3aa)}

.n4{background:linear-gradient(150deg,#cbc7c0,#b2aea5)}

.n5{background:linear-gradient(150deg,#d5cfca,#bfb7b1)}

.n6{background:linear-gradient(150deg,#d0ccc6,#b9b5ad)}

.n7{background:linear-gradient(150deg,#cdc9c2,#b4b0a7)}

.crumb{padding-top:34px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--stone)}

.crumb a:hover{color:var(--ink)}

.crumb span{margin:0 10px}

/* SPナビ切替 — @media 内部サブルール単位で全22ページ共通の8件。
   基底ルール（.burger{display:none} 等）を上書きするため必ずファイル末尾に置く（E2E CP5） */
@media(max-width:720px){
.wrap{padding:0 22px}
.nav-left{display:none}
.bar-left{display:flex}
.bar-left .m-search{display:none}
.burger{display:inline-flex}
.bar{grid-template-columns:auto 1fr auto;height:64px}
.brand img{height:18px}
.foot-grid{grid-template-columns:1fr 1fr}
}
