/* ((v2609.1)) */

/* ====(((( 共用開始：合併模板 CSS ))))===== */
/* ====(((( 模板開始：PC左上角 LOGO (副本) (comp_basic_20260302001__pc-momologo) ))))===== */
/*PCmomoLOGO*/
.momologo { position: absolute; top: 15px; left:15px;}
.momologo a { display:block; width:140px; height:21px;}
.momologo a svg { width:140px; height:21px; }
.momologo a path { fill:#EA27C2; }
.momologo-pink  a path { fill:#EA27C2; }/*LOGO 桃紅色*/
.momologo-white a path { fill:#ffffff; }/*LOGO 白色*/
@media screen and (max-width:767px){
  .momologo { display:none;}
}
/* ====(((( 模板結束：PC左上角 LOGO (副本) (comp_basic_20260302001__pc-momologo) ))))===== */

/* ====(((( 模板開始：錨點選單(電腦+手機) (comp_basic_20260527001__nav_001) ))))===== */
/**
 * @spec-version 1.0
 * @spec-owner
 *
 * ## 功能規格
 * - 提供 PC 錨點黏人精、手機錨點選單及多組選單的顯示樣式。
 * ## 輸入／輸出
 * - Input: 模板 HTML 的錨點選單 class 與 data-nav-secondary 屬性。
 * - Output: 錨點選單的定位、顯示與第二支起的 PC 隱藏樣式。
 * ## 限制條件
 * - 僅定義本模板的錨點選單樣式，不覆蓋系統保留 class。
 * ## 依賴
 * - 模板 HTML class 與外部 navlight 行為。
 *
 * @spec-end
 */

/*PC黏人精-區塊錨點*/
.fixarea_tabbar {z-index:101;position:fixed;right:0;top:200px;border-radius:20px 0 0 20px;width:110px; background-color: rgba(0,0,0,.65); text-align: center;font-family:"微軟正黑體", "Microsoft JhengHei", Arial;
-webkit-transform: rotate3d(0,0,0,0deg) translate3d(150px,0,0);
        transform: rotate3d(0,0,0,0deg) translate3d(150px,0,0);
-webkit-transform-origin:top right;
        transform-origin:top right;
-webkit-transition: all 0.2s ease;
-moz-transition: all 0.2s ease;
-ms-transition: all 0.2s ease;
-o-transition: all 0.2s ease;
transition: all 0.2s ease;
}
.fixarea_tabbar.fixarea_off { -webkit-transform: rotate3d(0,0,0,0deg) translate3d(0,0,0); transform: rotate3d(0,0,0,0deg) translate3d(0,0,0);}
.fixarea_tabbar .fix_box { margin:20px auto 10px; margin-left:10px;}
.fixarea_tabbar ul { margin:0; padding:0; list-style:none;}
.fixarea_tabbar li { position:relative; margin:0; padding:0; font-weight:800; font-size:15px; line-height:20px; }
.fixarea_tabbar a { display:block; text-decoration:none; color:#fff; }
.fixarea_tabbar a:hover{ color:#ffffbe; }
.fixarea_tabbar .cate-hover a { color:#ffffbe; }
.fixarea_tabbar .fix_other { }
.fixarea_tabbar .fix_other li { padding:10px 0; }
.fixarea_tabbar .fix_other li:before { content: ""; display: block; position: absolute; bottom:0; left:18%; width:64%; height:1px; background-color:#fff; opacity: 0.2}
.fixarea_tabbar .fix_other li:last-child::before { display:none;}
.fixarea_tabbar .fix_other li i { display:none; z-index:-1; position: absolute; top:53%; left:-2px; width:12px; height:12px; -webkit-transform:translate(0%,-50%); transform:translate(0%,-50%); background:url('') no-repeat center center; background-size:100%;}
.fixarea_tabbar .fix_other .cate-hover i { display: block;}
.fixarea_tabbar .fix_footer { position: relative; margin-bottom:10px; margin-left: 10px; font-weight:800; font-size:24px;}
.fixarea_tabbar .fix_footer a { display:block; padding-top:11px; color: #fff;}
.fixarea_tabbar .fix_footer a::before { content: ""; position: absolute; top:6px; left:44%; display:block; width: 0; height: 0; border-width: 0 5px 8px 5px; border-style: solid; border-color:transparent transparent #FFF transparent;}
.fixarea_tabbar .fix_footer a:hover { color:#ffffbe; }    
    /*錨點icon--用SVG格式*/
    .fixarea_tabbar .fix_other li i { mask-image: url('data:image/svg+xml,%3Csvg%20id%3D%22navlight_icon%22%20data-name%3D%22navlight%20icon%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2020%2020%22%3E%3Cdefs%3E%3Cstyle%3E.cls-1%7Bfill%3A%23ffffff%3B%7D%3C%2Fstyle%3E%3C%2Fdefs%3E%3Ctitle%3E%3C%2Ftitle%3E%3Cpath%20class%3D%22cls-1%22%20d%3D%22M10%2C0A7.17%2C7.17%2C0%2C0%2C0%2C2.8%2C7.2C2.8%2C12.9%2C10%2C20%2C10%2C20s7.2-7.1%2C7.2-12.8A7.17%2C7.17%2C0%2C0%2C0%2C10%2C0Zm0%2C11a3.8%2C3.8%2C0%2C1%2C1%2C3.8-3.8A3.8%2C3.8%2C0%2C0%2C1%2C10%2C11Z%22%2F%3E%3C%2Fsvg%3E'); background-color: #ffffbe }
    .fixarea_tabbar .fix_footer:hover a::before { border-color: transparent transparent #ffffbe transparent;}

/*Phone置頂滑動選單-內縮樣式*/
.NavArea_tabbar-inset { margin:0 auto 5vw; width:94%;}
.NavArea_tabbar-inset.cate-fixed { width:100%;}
.NavArea_tabbar-inset .Nav_box { border-radius:8px; box-shadow:-1px 0 10px rgba(150,150,150,0.2);}
.NavArea_tabbar-inset .Nav li { overflow: visible; }
.NavArea_tabbar-inset.cate-fixed .Nav_box { border-radius:0; background-color:rgba(255,255,255,0.92); box-shadow:-1px 0 10px rgba(150,150,150,0.2);}
/* 空組選單（v2608.2 #9）：選單排在頁尾、其後沒有任何已開錨點的區塊時，
   模板 JS 會貼上 data-nav-empty。此時它不會有任何項目，若照常渲染只是
   一條沒有內容的置頂條，故直接隱藏。
   ⚠ 必須 !important（Q52 驗證v2）：根節點帶 .for_phone，base.css 在手機版寬度
   有 .for_phone { display: inherit !important }，會蓋過一般權重的 display:none，
   空組因此露出一條無資料、不能展開的空白條。兩邊都 !important 後回到權重比較：
   .NavArea_tabbar[data-nav-empty]（0,2,0）> .for_phone（0,1,0）。 */
.NavArea_tabbar[data-nav-empty] { display: none !important; }
/* 第二支起的 PC 黏人精（v2608.3 Q52）：模板 JS 只啟用 DOM 順序第一個 .fixarea_tabbar，
   其後的貼 data-nav-secondary。黏人精是 fixed 常駐元件、沒有「不置頂」的顯示型態，
   且第一支已收全頁，故直接隱藏。（MB 第二支不隱藏——它在文件流內、可展開）
   這條「刻意」不加 !important：根節點帶的是 .for_pc，base.css 對 .for_pc 只有
   手機版寬度的 display:none !important（方向同為隱藏、疊加無害），桌機寬度無任何
   base 規則參與 cascade——不存在上面 .for_phone 那種 inherit !important 反向強制
   顯示的同型風險，勿盲目「補齊」。 */
.fixarea_tabbar[data-nav-secondary] { display: none; }

/* ====(((( 模板結束：錨點選單(電腦+手機) (comp_basic_20260527001__nav_001) ))))===== */

/* ====(((( 模板開始：背景 (comp_basic_20260617001__area-bgtop) ))))===== */
.Area_bgtop {
  pointer-events: none;
  z-index: -1;
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
}
@media screen and (min-width: 768px) {
  .Area_bgtop {
    left: 50%;
    transform: translateX(-50%);
    width: 2000px;
  }
}
.Area_bgtop .bgtop {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: top center;
}
@media screen and (max-width: 767px) {
  .bgtop { background-size: 100% auto; background-image: url(bgtop.png?t=1790222503834);}
}
@media screen and (min-width: 768px) {
  .bgtop { background-size: auto; background-image: url(bgtop-pc.png?t=1790222503834); }
}
/* ====(((( 模板結束：背景 (comp_basic_20260617001__area-bgtop) ))))===== */

/* ====(((( 模板開始：【超大牌】版頭+無商品資訊 (comp_header_20260526001__hero-visual_002) ))))===== */
/* 版頭 */
.Area_hero-visual_002 .Area_hero {
  position: relative;
  aspect-ratio: 960 / 624;
  overflow: hidden;
  margin-bottom: -16px;
}
@media screen and (max-width: 767px) {
  .Area_hero-visual_002 .Area_hero {
  margin-bottom: -2.5vw;
}
}

/* 版頭-圖片移除圓角 */
.Area_hero-visual_002 .Area_hero .Area_swiper_box .PD_layout li, 
.Area_hero-visual_002 .Area_hero .Area_swiper_box .PD_layout li .PD_img img {
  border-radius: 0;
}

/* 版頭品(輪播) */
.Area_hero-visual_002 .Area_hero--PD {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
}
.Area_hero-visual_002 .Area_hero .Area_swiper_box {
  padding-bottom: 0;
}
.Area_hero-visual_002 .Area_hero .Area_swiper_box .PD_layout-heroPDBN.PD_layout {
  font-size: 3vw;
  .PD .PD_into {
    display: none;
    position: absolute;
    top: 60%;
    left: 22%;
    width: 37.5%;
  }
  h3,h4 {
    color: #fff;
    text-align: left;
    font-size: 1.35em;
  }
  h4 {
    font-size: 1em;
    margin-top: -0.35em;
  }
  p {
    color: #ffe19f;
    text-align: right;
    font-size: 0.7em;
    height: 3em;
    line-height: 3em;
    b,del {
      font-size: 1.4em;
    }
    .money {
      font-size: 1.6em;
    }
    .Price {
      font-size: 2.8em;
    }
    small {
      font-size: 1.2em;
    }
  }
  .PD:hover {
    h4{
      color: #fff;
    }
  }
}
@media screen and (min-width: 768px) {
  .Area_hero-visual_002 .Area_hero .Area_swiper_box .PD_layout-heroPDBN.PD_layout {
    font-size: 30px;
  }
}

/* 品牌LOGO(輪播) */
.Area_hero-visual_002 .Area_hero--logo {
  position: absolute;
  top: 17%;
  left: 28%;
  width: 33.3%;
}

/* 限定標 */
.Area_hero-visual_002 .Area_hero--tag {
  position: absolute;
  top: 0;
  right: 0;
  width: 54.17%;
}

/* 標題(輪播) */
.Area_hero-visual_002 .Area_hero--title {
  position: absolute;
  top: 30%;
  right: 0;
  width: 100%;
  
  
  
  .swiper-pagination {
    display: none;
  }
}

/* 倒數計時 */
.Area_hero-visual_002 .Area_hero--TimerNick { 
  z-index: 8;
  position: absolute; 
  display: flex;
  align-items: center;
  column-gap: 0.35em;
  text-align: left;
  font-weight: 900;
  line-height: 1;
  .FontStyle {
    display: flex;
    align-items: center;
    column-gap: 0.35em;
  }
  b {
    font-size: 1em;
  }
  span {
    font-size: 0.8em;
  }
}
.Area_hero-visual_002 .Area_hero--TimerNick { 
  top: 30vw;
  left: 4vw;
  font-size: 3.5vw;
  color: #052724;
}
@media screen and (min-width: 768px) {
  .Area_hero-visual_002 .Area_hero--TimerNick { 
    top: 290px;
    left: 35px;
    font-size: 30px; 
  }
}
/* ====(((( 模板結束：【超大牌】版頭+無商品資訊 (comp_header_20260526001__hero-visual_002) ))))===== */

/* ====(((( 模板開始：提醒我機制 (comp_basic_20260520001__btn-remind) ))))===== */
/* 提醒按鈕，預設黑色，加 class切成白色 */
.btn_remind_black {
  --rgb: 255,255,255;
  --rgb-black: 0,0,0;
}
.btn_remind_white {
  --rgb: 0,0,0;
  --rgb-black: 255,255,255;
}
.btn_remind-right {
  right: 0;
  border-radius: 5em 0 0 5em;
  padding: 0.5em 1em 0.5em 2.25em;
}
.btn_remind-left {
  left: 0;
  border-radius: 0 5em 5em 0;
  padding: 0.5em 2.25em 0.5em 1em;
}
.btn_remind {
  --opacity: 1;
  --color: rgba(var(--rgb), var(--opacity));
  font-size: 2.5vw;
  position: absolute;
  z-index: 10;
  transform: translateY(-30%);
  background-image: linear-gradient( 0deg, rgba(var(--rgb-black),0.9) 0%, rgba(var(--rgb-black), 0.6) 100%);
  border: 1px solid rgba(var(--rgb),0.3);
}
.btn_remind_icon {
  --width: 2.5em;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height: auto;
  color: var(--color);
}
.btn_remind_icon i {
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1 / 1;
  padding: 0.25em;
  width: var(--width);
  height: var(--width);
}
.btn_remind_icon svg {
  width: var(--width);
  height: var(--width);
  aspect-ratio: 1 / 1;
  object-fit: contain;
  vertical-align: middle;
  fill: var(--color);
}
.btn_remind_icon span {
  word-break: keep-all;
}
/* ====(((( 模板結束：提醒我機制 (comp_basic_20260520001__btn-remind) ))))===== */

/* ====(((( 模板開始：影片（YouTube 嵌入） (comp_block_20260427005__youtube-video) ))))===== */

/*影片*/
.youtubeArea { position: relative; aspect-ratio: 16 / 9; width: 100%; height: auto;}
.youtubeArea .youtubeDiv,
.youtubeArea iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
/* ====(((( 模板結束：影片（YouTube 嵌入） (comp_block_20260427005__youtube-video) ))))===== */

/* ====(((( 模板開始：帶背景區標(新版) (comp_block_20260824001__pd-D3_04) ))))===== */
/* 帶背景區標(新版)：文字居中比照區塊標題。
   ⚠ class 必須是 PD_layout-D3_04、不可沿用 D3_01——兩支模板的 CSS 都會進同一份 main.css
   且皆未限縮在 .Area_{slug} 內，共用 class 時同頁並存會讓本檔的置中規則套到舊版區塊上，
   正是「新增 D3_04 是為了不影響既有專案」要避免的事。

   --font-size-scale（字級倍率，無單位，預設 1）：font-size 與 --min-height 同乘一次，
   容器高度隨字級等比變化。對應 editableField `PD_font_scale`（widget:number，step 0.1）。
   ⚠ 必須維持無單位——欄位刻意不用「數值＋單位」拆分 UI、也不標 requireUnit，
      變成 1px 會讓兩處 calc() 同時 invalid，字級與容器高度一起塌掉。

   --top（文字垂直偏移）：與 area-title 變體同一組機制——宣告在 .PD_layout-D3_04、
   消費在其下的 h3，height 同步扣除以免框超出容器。
   ⚠ 位移量是 --top 的一半（框頂下移 T、框底不動，flex 中心由 H/2 移到 (H+T)/2）。
   ⚠ 對應 editableField `area_title_top` 的 selector 必須是 .PD_layout-D3_04（宣告點），
      指到 h3 會讓覆寫落在消費者自身，單一區塊看似正常但層級語意就散了。 */
.PD_layout.PD_layout-D3_04 {
  --font-size: 5vw;
  --font-size-scale: 1;
  --font-color: #333333;
  --max-width: 960px;
  --min-height: calc(var(--font-size) * var(--font-size-scale) * 2.2);
  --top: 0%;
}
@media screen and (min-width: 768px) {
  .PD_layout.PD_layout-D3_04  {
    --font-size: 50px;
  }
}
.PD_layout.PD_layout-D3_04 .PD_into {
  padding: 0;
}
.PD_layout.PD_layout-D3_04 .PD h3 {
  position: absolute;
  top: var(--top);
  left: 0;
  margin: 0;
  padding: 0;
  width: 100%;
  height: calc(100% - var(--top));
  display: flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  font-size: calc(var(--font-size) * var(--font-size-scale));
  color: var(--font-color);
  transform: none;
  max-height: none;
}
/* ====(((( 模板結束：帶背景區標(新版) (comp_block_20260824001__pd-D3_04) ))))===== */

/* ====(((( 模板開始：EDM置底資訊 (comp_basic_20260224001__edm-notice) ))))===== */
/*注意事項區*/
.edm_notice { text-align:center; padding:10px 10px 65px 10px; color:#000000; font:12px/18px Helvetica; }/*文字顏色依視覺調整*/
.edm_notice .apple_notice { padding:10px 0px 10px 0px; }
@media screen and (min-width: 768px) {
  .edm_notice .for_phone { display: none;}
}
/* ====(((( 模板結束：EDM置底資訊 (comp_basic_20260224001__edm-notice) ))))===== */
/* ====(((( 共用結束：合併模板 CSS ))))===== */

/* ====(((( 共用開始：欄位樣式覆寫 ))))===== */
.Area_area-bgtop[org="1"]:is(.bgtop.for_phone), .Area_area-bgtop[org="1"] .bgtop.for_phone{background-image:url("comp_basic_20260617001__area-bgtop_1789010620353.jpg?t=1790222503836")}
.Area_area-bgtop[org="1"]:is(.bgtop.for_pc), .Area_area-bgtop[org="1"] .bgtop.for_pc{background-image:url("comp_basic_20260617001__area-bgtop_1789011443166.jpg?t=1790222503836")}
.Area_hero-visual_002[org="1"]:is(.Area_hero--title .js-PD_url), .Area_hero-visual_002[org="1"] .Area_hero--title .js-PD_url{pointer-events:none}
.Area_hero-visual_002[org="1"]:is(.Area_hero--logo .js-PD_url), .Area_hero-visual_002[org="1"] .Area_hero--logo .js-PD_url{pointer-events:none}
.Area_hero-visual_002[org="1"]:is(.Area_hero--TimerNick), .Area_hero-visual_002[org="1"] .Area_hero--TimerNick{color:#ead5b3}
.Area_register-activity[org="1"] .Area_danji .danji_box ul li .activityText .gifts span{color:#1634c3}
.Area_register-activity[org="2"] .Area_danji .danji_box ul li .activityText .gifts span{color:#1634c3}
.Area_register-activity[org="3"] .Area_danji .danji_box ul li .activityText .gifts span{color:#1634c3}
.Area_register-activity[org="4"] .Area_danji .danji_box ul li .activityText .gifts span{color:#1634c3}
.Area_register-activity[org="5"] .Area_danji .danji_box ul li .activityText .gifts span{color:#1634c3}
.Area_register-activity[org="6"] .Area_danji .danji_box ul li .activityText .gifts span{color:#1634c3}
.Area_register-activity[org="7"] .Area_danji .danji_box ul li .activityText .gifts span{color:#1634c3}
.Area_register-activity[org="8"] .Area_danji .danji_box ul li .activityText .gifts span{color:#f3d6c3}
.Area_pd-D3_04[org="1"] .js-PD_txt3{color:#fff1d6}
.Area_pd-D3_04[org="1"] .js-PD_url{pointer-events:none}
.Area_pd-D3_04[org="1"] .PD_layout-D3_04{--font-size-scale:1;--top:0%}
.Area_edm-notice[org="1"]:is(div.edm_notice), .Area_edm-notice[org="1"] div.edm_notice{color:#ffffff}
/* ====(((( 共用結束：欄位樣式覆寫 ))))===== */



/* 併版 */

/*版頭背景*/
.bgdeco { z-index: 0; position: absolute; top: 0; left: 0; width: 100%; min-width: 1220px; height: 100%; background: url(bgdeco.png?t=1790222503836) repeat-y center top; transition: 0.5s linear; pointer-events: none;}

.Area_bn{width: 80%;margin: 0 auto;}
@media screen and (max-width: 767px) {
  .Area_bn{width: 100%;margin: 0 auto;}
}  
.firework {
  position: absolute;
  width: 120px;
  height: 120px;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  animation: fireworkFloat 3s  linear infinite;;
}


.firework1 {
  position: absolute;
  mix-blend-mode: screen;
  pointer-events: none;
  animation: burstBoom 3s linear infinite;
}

.firework2 {
  position: absolute;
  animation-delay: 1.2s;
  mix-blend-mode: screen;
  animation-delay: 1s;
  animation: burstBoom 3s linear infinite;
  animation-delay: 1.2s;
}

@media screen and (max-width: 767px) {
  .firework1 { width: 10vw; top: 34vw; left: 44vw; }
  .firework2 { width: 20vw; top: -7vw; left: -4vw; }
}
@media screen and (min-width: 768px) {
  .firework1 {width: 50px;top: 360px;left: 943px;}
  .firework2 {width: 100px;top:50px;left: 480px;}

}


@keyframes burstBoom {
  0%, 30% {
      transform: translateY(0px) scale(0);
      opacity: 0;
  }

  40% {
      transform: translateY(10px) scale(1);
      opacity: 1;
  }

  100% {
      transform: translateY(10px) scale(2);
      opacity: 0;
  }
}


/*黏人精*/
.Area_hammerAD { z-index: 9999; position: fixed; bottom: 0; right: 0;}
.Area_hammerAD .box { position: relative; margin-right: 10px; opacity: 1;}
.Area_hammerAD img { width: 100%; height: auto; position: absolute; top: 0; left: 0;}
.Area_hammerAD .closeButton a { display: block; cursor: pointer; position: absolute; width: 20px; height: 20px; border-radius: 50%; font: bold 20px/1em "Century Gothic"; color: #FFF; text-align: center; background-color: rgba(0%,0%,0%,0.5); text-decoration: none; z-index: 2;}
.Area_hammerAD .Ahammer_text { position: absolute; z-index: 2; display: flex; align-items: center; justify-content: center; width: 90%; color: #000; font-family: "Century Gothic","Noto Sans CJK TC"; font-weight: 700;}
.Area_hammerAD .Ahammer_black .img_0, .Area_hammerAD .img_1 { filter: brightness(0%);}
.Area_hammerAD .Ahammer_black .img_1 { filter: none;}
.Area_hammerAD .Ahammer_black .Ahammer_text { color: #fff;}
@media screen and (min-width:768px){
  .Area_hammerAD { position: fixed; z-index: 300; left: 50%; right: auto; bottom: 50px; display: block; width: 210px; height: 200px; transform: translateX(618px) translate3d(0,200px,0);}
  .Area_hammerAD .closeButton a { top: 0; right: 0;}
  .Area_hammerAD .Ahammer_text { font-size: 2.3em; line-height: 1em; height: 1em; top: 40px;}
}
@media screen and (max-width:767px){
  .Area_hammerAD {display: block;width: 26%;transform: translate3d(0px, -232px, 0px) !important;}
  .Area_hammerAD .closeButton a { top: 1vw; right: 1vw;}
  .Area_hammerAD .Ahammer_text { font-size: 1.2em; line-height: 1.5em; height: 1.5em; top: 3.6vw;}
}
