/* クリスマス仕様（トップのみ）。xmas.js が期間中（11/15〜12/25）だけ html に .xmas を付ける */
/* 白い霧（動画はうっすら見える） */
html.xmas .hscrim{background:linear-gradient(180deg,rgba(255,253,248,.9) 0%,rgba(255,252,246,.8) 45%,rgba(255,250,242,.92) 100%)!important}
html.xmas .hscrim::after{display:none}
html.xmas #hero .vdot{opacity:.12}
html.xmas #hero{color:#1E2630!important;background:#FBF8F1!important}
/* ヘッダー・本文を濃い色に */
html.xmas #hero nav a{color:#1E2630!important}
html.xmas .hx>p:first-child{color:#9A7330!important;text-shadow:none!important}
html.xmas .hx h1+p{color:#2E3440!important;text-shadow:none!important}
html.xmas .hx>p:last-child{color:#8A7550!important}
html.xmas .hx .btn:first-child{background:#B3202C!important;color:#fff!important;box-shadow:0 8px 24px rgba(179,32,44,.25)}
html.xmas .hx .btn:last-child{border-color:#B08A3E!important;color:#6E4E16!important;background:rgba(255,255,255,.6)}
/* 見出し：明朝体＋赤・緑・ゴールド */
html.xmas .hx h1{font-family:'Noto Serif JP','Noto Serif CJK JP','Hiragino Mincho ProN','Yu Mincho',serif;font-weight:700;letter-spacing:.01em;text-shadow:none!important;background:linear-gradient(100deg,#8C6420 0%,#C9A04C 30%,#7A561A 52%,#B9913F 70%,#8C6420 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-fill-color:transparent;filter:drop-shadow(0 2px 10px rgba(255,255,255,.9));animation:xmShine 9s ease-in-out infinite}
html.xmas .hx h1 span:nth-of-type(1){color:#C41E2E!important;-webkit-text-fill-color:#C41E2E}
html.xmas .hx h1 span:nth-of-type(2){color:#1D7445!important;-webkit-text-fill-color:#1D7445}
/* 雪・光 */
.xm-glow,.xm-snow,.xm-frame{position:absolute;left:0;top:0;width:100%;height:100%;z-index:1;pointer-events:none}
.xm-glow{overflow:hidden}
.xm-glow i{position:absolute;border-radius:50%;background:radial-gradient(circle,rgba(224,186,104,.32) 0%,rgba(224,186,104,.1) 40%,rgba(224,186,104,0) 70%);animation:xmFloat 16s ease-in-out infinite alternate}
.xm-glow i:nth-child(1){width:340px;height:340px;left:-80px;top:20%;animation-duration:18s}
.xm-glow i:nth-child(2){width:220px;height:220px;right:10%;top:14%;animation-duration:14s;animation-delay:-4s}
.xm-glow i:nth-child(3){width:160px;height:160px;left:24%;bottom:14%;animation-duration:20s;animation-delay:-8s}
.xm-glow i:nth-child(4){width:280px;height:280px;right:-60px;bottom:16%;animation-duration:17s;animation-delay:-2s}
.xm-glow i:nth-child(5){width:110px;height:110px;left:60%;top:22%;animation-duration:13s;animation-delay:-6s}
.xm-glow i:nth-child(6){width:90px;height:90px;left:10%;top:60%;animation-duration:15s;animation-delay:-10s}
@keyframes xmFloat{from{transform:translate3d(0,0,0) scale(1);opacity:.6}to{transform:translate3d(24px,-30px,0) scale(1.12);opacity:1}}
/* 金の二重枠 */
.xm-frame::before,.xm-frame::after{content:"";position:absolute;border:1px solid rgba(176,138,62,.55);border-radius:6px}
.xm-frame::before{left:16px;right:16px;top:16px;bottom:22px}
.xm-frame::after{left:23px;right:23px;top:23px;bottom:29px;border-color:rgba(176,138,62,.28)}
/* 四隅の飾り */
.xm-c{position:absolute;z-index:2;pointer-events:none;width:clamp(150px,21vw,310px);height:auto}
.xm-c svg{display:block;width:100%;height:auto;overflow:visible}
.xm-tl{left:0;top:92px}.xm-tr{right:0;top:92px;transform:scaleX(-1)}
.xm-bl{left:0;bottom:6px}.xm-br{right:0;bottom:6px;transform:scaleX(-1)}
.xm-bell{transform-box:fill-box;transform-origin:50% 0;animation:xmSwing 3.6s ease-in-out infinite}
.xm-bell.b2{animation-duration:4.4s;animation-delay:-1.2s}
@keyframes xmSwing{0%,100%{transform:rotate(-7deg)}50%{transform:rotate(7deg)}}
/* リース＋Merry Christmas */
.xm-wreath{display:block;width:72px;height:72px;margin:16px auto 0}
.xm-greet{display:flex!important;align-items:center;justify-content:center;gap:16px;margin:6px 0 0!important;text-shadow:none!important}
.xm-greet::before,.xm-greet::after{content:"";width:clamp(36px,6vw,72px);height:1px;background:linear-gradient(90deg,rgba(176,138,62,0),#B08A3E)}
.xm-greet::after{transform:scaleX(-1)}
.xm-greet span{font-family:'Cormorant Garamond','Noto Serif JP',serif;font-style:italic;font-weight:500;font-size:clamp(22px,2.4vw,32px);letter-spacing:.05em;line-height:1.2;background:linear-gradient(100deg,#8C6420 0%,#C9A04C 30%,#7A561A 52%,#B9913F 70%,#8C6420 100%);background-size:220% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:xmShine 7s ease-in-out infinite}
.xm-greet b{font-weight:400;font-size:12px;color:#B08A3E}
@keyframes xmShine{0%,100%{background-position:0% 0}50%{background-position:100% 0}}
html.xmas #hero::after{content:"";position:absolute;left:0;right:0;bottom:6px;height:1px;z-index:3;background:linear-gradient(90deg,rgba(176,138,62,0),rgba(176,138,62,.9) 50%,rgba(176,138,62,0))}
@media (max-width:700px){
  html.xmas .hx h1{font-size:min(8vw,40px)!important;letter-spacing:0}
  .xm-glow i:nth-child(n+5){display:none}.xm-greet{gap:10px}
  .xm-c{width:104px}.xm-tl,.xm-tr{top:176px}
  .xm-wreath{width:54px;height:54px;margin-top:12px}
  .xm-frame::before{left:8px;right:8px;top:8px;bottom:14px}.xm-frame::after{left:13px;right:13px;top:13px;bottom:19px}
}
@media (prefers-reduced-motion:reduce){.xm-glow i,.xm-greet span,html.xmas .hx h1,.xm-bell{animation:none}}
/* ロゴにサンタ帽 */
html.xmas #hero .lg{position:relative}
.xm-hat{position:absolute;left:24px;top:-19px;width:42px;height:auto;transform:rotate(16deg);pointer-events:none;filter:drop-shadow(0 2px 3px rgba(0,0,0,.18))}
@media (max-width:700px){.xm-hat{left:19px;top:-15px;width:34px}}
