/* 首頁主視覺區塊 */
.index .hero {
  overflow: hidden;
  background: var(--color-white);
}

/* 桌機：主視覺至少一個畫面高，內容垂直置中，下一區的標題不會先露出 */
@media (min-width: 769px) {
  .index .hero {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 100vh;
    min-height: 100svh;
  }
}

/* 主視覺舞台：照設計稿 1920 × 810，內部元件都用百分比定位，跟著寬度等比縮放 */
.index .hero_stage {
  position: relative;
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  aspect-ratio: 1920 / 810;
}

/* 背景裝飾層（十字格、點點、黃圓） */
.index .hero_deco {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.index .hero_mesh,
.index .hero_plus,
.index .hero_dots,
.index .hero_dot {
  position: absolute;
}

/* 右下灰色網格線：超出主視覺的部分裁掉 */
.index .hero_mesh { left: 31.823%; top: 45.185%; width: 89.583%; }

.index .hero_dot {
  aspect-ratio: 1;
  border-radius: 50%;
  background: var(--color-yellow);
}

.index .hero_plus-01 { left: 3.438%; top: 44.198%; width: 5.104%; }
.index .hero_plus-02 { left: 22.760%; top: 45.062%; width: 5.104%; }
.index .hero_plus-03 { left: 89.583%; top: 35.802%; width: 5.104%; }
.index .hero_plus-04 { left: 68.750%; top: -6.914%; width: 6.510%; }
.index .hero_plus-05 { left: 38.542%; top: 94.815%; width: 6.510%; }

.index .hero_dots-01 { left: -5.938%; top: 52.840%; width: 14.792%; }
.index .hero_dots-02 { left: 94.531%; top: 6.667%; width: 14.792%; }
.index .hero_dots-03 { left: 80.990%; top: 85.556%; width: 17.031%; }

.index .hero_dot-01 { left: 9.740%; top: 2.840%; width: 3.177%; }
.index .hero_dot-02 { left: 80.156%; top: 3.457%; width: 2.708%; }
.index .hero_dot-03 { left: 35.000%; top: 4.444%; width: 1.615%; }
.index .hero_dot-04 { left: 17.552%; top: 11.975%; width: 1.615%; }
.index .hero_dot-05 { left: 77.344%; top: 44.938%; width: 1.927%; }
.index .hero_dot-06 { left: 72.969%; top: 50.123%; width: 1.302%; }

/* 背景裝飾的進場位移加大到 60px（animate.css 內建只有 20px，看不出從哪邊進來） */
.index .hero_deco .fadeInDown,
.index .sec_deco .fadeInDown { animation-name: hero_deco_in_down; }
.index .hero_deco .fadeInLeft,
.index .sec_deco .fadeInLeft { animation-name: hero_deco_in_left; }
.index .hero_deco .fadeInRight,
.index .sec_deco .fadeInRight { animation-name: hero_deco_in_right; }

@keyframes hero_deco_in_down {
  0% { opacity: 0; transform: translateY(-60px); }
  100% { opacity: 1; transform: translateY(0); }
}

@keyframes hero_deco_in_left {
  0% { opacity: 0; transform: translateX(-60px); }
  100% { opacity: 1; transform: translateX(0); }
}

@keyframes hero_deco_in_right {
  0% { opacity: 0; transform: translateX(60px); }
  100% { opacity: 1; transform: translateX(0); }
}

/* 三色橢圓插畫與緞帶：外框 1318 × 646，緞帶超出外框的部分裁掉 */
.index .hero_art {
  position: absolute;
  left: 14.688%;
  top: 20.247%;
  z-index: 1;
  width: 68.646%;
  aspect-ratio: 1318 / 646;
  overflow: hidden;
}

.index .hero_art_item {
  position: absolute;
}

.index .hero_art_blue { left: 0; top: 0; z-index: 1; width: 43.285%; }
.index .hero_art_pink { left: 19.120%; top: 16.409%; z-index: 2; width: 51.024%; }
.index .hero_art_green { left: 56.753%; top: 59.133%; z-index: 3; width: 43.285%; }
/* 緞帶進場：用斜向漸層遮罩，從左上往右下慢慢露出 */
.index .hero_art_ribbon {
  left: 5.311%;
  top: 11.146%;
  z-index: 4;
  width: 53.680%;
  -webkit-mask-image: linear-gradient(135deg, #000 45%, transparent 55%);
  mask-image: linear-gradient(135deg, #000 45%, transparent 55%);
  -webkit-mask-size: 300% 300%;
  mask-size: 300% 300%;
  -webkit-mask-position: 0 0;
  mask-position: 0 0;
}

.index .hero_art_ribbon.hero_ribbon_in {
  animation-name: hero_ribbon_reveal;
  animation-timing-function: ease-in-out;
}

@keyframes hero_ribbon_reveal {
  0% {
    opacity: 1;
    -webkit-mask-position: 100% 100%;
    mask-position: 100% 100%;
  }
  100% {
    opacity: 1;
    -webkit-mask-position: 0 0;
    mask-position: 0 0;
  }
}

/* NEW 標籤要蓋在緞帶上：疊一張藍色橢圓，只露出 NEW 那一圈 */
.index .hero_art_new {
  left: 0;
  top: 0;
  z-index: 5;
  width: 43.285%;
  clip-path: circle(10% at 78.6% 31%);
}

.index .hero_art .hero_dot {
  z-index: 6;
}

.index .hero_dot-07 { left: 48.179%; top: 84.830%; width: 2.959%; }
.index .hero_dot-08 { left: 54.552%; top: 94.427%; width: 1.442%; }
.index .hero_dot-09 { left: 15.781%; top: 82.817%; width: 3.718%; }
.index .hero_dot-10 { left: 11.229%; top: 70.898%; width: 1.897%; }

/* 主標、日期、地點 */
.index .hero_title,
.index .hero_date,
.index .hero_place {
  position: absolute;
  z-index: 2;
}

.index .hero_title { left: 44.062%; top: 5.679%; width: 37.161%; }
.index .hero_date { left: 17.917%; top: 59.753%; width: 8.880%; }
.index .hero_place { left: 64.792%; top: 57.531%; width: 16.172%; }

/* 錨點導覽 */
.index .hero_nav {
  padding-top: min(2.708vw, 52px);
  padding-bottom: min(3.125vw, 60px);
}

.index .hero_nav_list {
  display: flex;
  justify-content: center;
  gap: min(4.375vw, 84px);
}

.index .hero_nav_item {
  width: min(7.5vw, 144px);
}

.index .hero_nav_link {
  display: block;
  transition: transform 0.3s ease;
}

@media (hover: hover) {
  .index .hero_nav_link:hover {
    transform: translateY(-4px);
  }
}

/* 導覽按鈕上下浮動，提示可以點擊；動畫掛在 img，不跟連結的 hover 位移互相蓋掉 */
.index .hero_nav_link img {
  animation: hero_nav_float 2.4s ease-in-out infinite;
}

/* 每顆錯開起跳，形成波浪 */
.index .hero_nav_item:nth-child(2) .hero_nav_link img { animation-delay: -0.4s; }
.index .hero_nav_item:nth-child(3) .hero_nav_link img { animation-delay: -0.8s; }
.index .hero_nav_item:nth-child(4) .hero_nav_link img { animation-delay: -1.2s; }
.index .hero_nav_item:nth-child(5) .hero_nav_link img { animation-delay: -1.6s; }
.index .hero_nav_item:nth-child(6) .hero_nav_link img { animation-delay: -2s; }

@keyframes hero_nav_float {
  0%,
  100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-8px);
  }
}

/* 系統設定減少動態時不浮動 */
@media (prefers-reduced-motion: reduce) {
  .index .hero_nav_link img {
    animation: none;
  }
}

@media (max-width: 768px) {
  /* 手機：照手機設計稿 768 × 1085 重新排列，元件都用百分比定位 */
  .index .hero_stage {
    aspect-ratio: 768 / 1085;
  }

  .index .hero_art {
    inset: 0;
    width: 100%;
    aspect-ratio: auto;
  }

  .index .hero_plus-02,
  .index .hero_plus-03,
  .index .hero_plus-05,
  .index .hero_dots-01,
  .index .hero_dots-02,
  .index .hero_dot-06,
  .index .hero_art .hero_dot,
  .index .hero_nav {
    display: none;
  }

  .index .hero_plus-04 { left: 57.943%; top: -4.516%; width: 13.542%; }
  .index .hero_plus-01 { left: 10.807%; top: 37.604%; width: 13.542%; }
  .index .hero_dots-03 { left: 80.339%; top: 93.548%; width: 25.911%; }
  .index .hero_dot-01 { left: 67.578%; top: 27.097%; width: 4.167%; }
  .index .hero_dot-02 { left: 3.776%; top: 46.452%; width: 5.469%; }
  .index .hero_dot-03 { left: 8.854%; top: 54.839%; width: 3.125%; }
  .index .hero_dot-04 { left: 86.523%; top: 64.931%; width: 3.516%; }
  .index .hero_dot-05 { left: 94.141%; top: 68.940%; width: 1.823%; }
  .index .hero_art_blue { left: -2.734%; top: 23.041%; width: 64.714%; }
  .index .hero_art_new { left: -2.734%; top: 23.041%; width: 64.714%; }
  .index .hero_art_pink { left: 17.708%; top: 34.470%; width: 80.599%; }
  .index .hero_art_green { left: 28.516%; top: 79.171%; width: 64.583%; }
  .index .hero_art_ribbon { left: 5.339%; top: 30.230%; width: 75.521%; }
  .index .hero_mesh { left: -2.214%; top: 74.747%; width: 129.948%; }
  .index .hero_title { left: 12.109%; top: 3.963%; width: 82.422%; }
  .index .hero_date { left: 5.078%; top: 67.742%; width: 22.396%; }
  .index .hero_place { left: 56.771%; top: 72.535%; width: 37.891%; }
}

/* ========== 內容區塊共用 ========== */
/* 主內容照設計稿 1920 寬等比縮放；裝飾用百分比定位，左右超出的部分裁掉 */
.index .page_section {
  overflow-x: clip;
}

/* 區塊之間加大間距 */
.index .page_section + .page_section {
  padding-top: min(5.208vw, 100px);
}

.index .page_section .container {
  position: relative;
  max-width: 1920px;
  margin: 0 auto;
}

.index .sec_deco {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

.index .sec_deco_item {
  position: absolute;
}

.index .sec_block {
  position: relative;
  z-index: 1;
  margin-right: auto;
  margin-left: auto;
}

/* 活動介紹內文：照設計稿逐行換行 */
.index .intro_text {
  color: var(--color-text);
  font-family: var(--font-family-tc);
  font-size: max(0.8125rem, min(0.9375vw, 1.125rem));
  line-height: 1.78;
  letter-spacing: 0.02em;
  text-align: center;
}

.index .intro_para + .intro_para {
  margin-top: 1.33em;
}

/* 換行位置桌機、手機不同：-pc 在桌機換行，-m 在手機換行 */
.index .intro_seg-pc::after {
  content: "\A";
  white-space: pre;
}

/* 參觀資訊區塊 */
.index .visit_section .container { padding-top: min(1.458vw, 28px); padding-bottom: min(1.198vw, 23px); }
.index .visit_title { width: 11.667%; }
.index .visit_info { width: 50.938%; margin-top: min(0.938vw, 18px); }
.index .visit_plus { left: 14.062%; top: 59.524%; width: 5.182%; }

/* 活動介紹區塊 */
.index .intro_section .container { padding-top: min(1.458vw, 28px); padding-bottom: min(3.281vw, 63px); }
.index .intro_title { width: 54.766%; }
.index .intro_text { width: 62.578%; margin-top: min(1.771vw, 34px); }
.index .intro_dots-01 { left: 92.969%; top: 6.970%; width: 11.250%; }
.index .intro_beer { left: 9.792%; top: 19.394%; width: 8.255%; }
.index .intro_dots-02 { left: -1.979%; top: 50.606%; width: 11.250%; }
.index .intro_cup { left: 18.333%; top: 86.667%; width: 5.911%; }
.index .intro_basket { left: 73.750%; top: 87.879%; width: 8.464%; }

/* 展區地圖區塊 */
.index .map_section .container { padding-top: min(2.500vw, 48px); padding-bottom: 0; }
.index .map_title { width: 11.667%; }
.index .map_img { width: 65.885%; margin-top: min(1.823vw, 35px); }
.index .map_plus { left: 87.292%; top: -2.264%; width: 5.182%; }
.index .map_dots-01 { left: 6.250%; top: 33.019%; width: 15.729%; }
.index .map_dots-02 { left: 80.417%; top: 70.000%; width: 15.729%; }

/* 品牌名稱區塊 */
.index .brand_section .container { padding-top: min(1.250vw, 24px); padding-bottom: min(0.781vw, 15px); }
.index .brand_title { width: 11.667%; }
.index .brand_show { width: 62.812%; margin-top: min(2.005vw, 38.5px); }
.index .brand_sale { width: 60.208%; margin-top: min(3.229vw, 62px); }
.index .brand_dots-01 { left: 1.875%; top: 14.386%; width: 15.729%; }
.index .brand_dots-02 { left: 76.562%; top: 42.544%; width: 15.729%; }
.index .brand_dots-03 { left: 6.146%; top: 82.632%; width: 15.729%; }
.index .brand_plus-01 { left: 93.438%; top: 21.930%; width: 5.182%; }
.index .brand_plus-02 { left: 0.000%; top: 48.684%; width: 5.182%; }
.index .brand_cupcake { left: 73.542%; top: 39.123%; width: 6.146%; }
.index .brand_bucket { left: 19.583%; top: 87.368%; width: 7.995%; }
.index .brand_teapot { left: 77.083%; top: 90.702%; width: 18.542%; }

/* 活動時間表區塊（舞台時刻表、表演團體簡介） */
.index .schedule_section .container { padding-top: min(1.667vw, 32px); padding-bottom: min(2.188vw, 42px); }
.index .schedule_title { width: 13.490%; }
.index .schedule_table { width: 64.635%; margin-top: min(1.953vw, 37.5px); }

/* 時刻表上的插圖：照設計稿疊在表格上，各自持續小幅擺動 */
.index .schedule_canvas {
  position: relative;
}

.index .schedule_icon {
  position: absolute;
  pointer-events: none;
}

/* 跳躍的女生：一直顯示，持續左右微幅擺動 */
.index .schedule_icon-01 {
  top: 45.538%;
  left: 14.424%;
  width: 17.647%;
  animation: schedule_icon_sway 1.6s ease-in-out infinite alternate;
}

/* 拍照的手：裡面那層外框的底線當邊界，往下移時超出的部分裁掉 */
.index .schedule_icon_clip {
  position: absolute;
  top: 84.634%;
  left: 53.062%;
  width: 10.032%;
  height: 13.298%;
  overflow: hidden;
  pointer-events: none;
}

.index .schedule_icon-02 {
  top: 26.667%;
  left: 0;
  width: 100%;
  animation: schedule_icon_bob 1.4s ease-in-out infinite alternate;
}

/* 驚嘆號對話框：一直顯示，以對話框尖角為中心左右微幅晃動 */
.index .schedule_icon-03 {
  top: 76.832%;
  left: 91.418%;
  width: 6.044%;
  transform-origin: 72.333% 100%;
  animation: schedule_icon_wobble 1.2s ease-in-out infinite alternate;
}

@keyframes schedule_icon_sway {
  from { transform: translateX(-6%); }
  to { transform: translateX(6%); }
}

@keyframes schedule_icon_wobble {
  from { transform: rotate(-8deg); }
  to { transform: rotate(8deg); }
}

@keyframes schedule_icon_bob {
  from { transform: translateY(-15%); }
  to { transform: translateY(25%); }
}

@media (prefers-reduced-motion: reduce) {
  .index .schedule_icon {
    animation: none;
  }
}

.index .schedule_show { width: 62.188%; margin-top: min(2.266vw, 43.5px); }
.index .schedule_dots-01 { left: 79.688%; top: 24.103%; width: 13.594%; }
.index .schedule_dots-02 { left: 19.167%; top: 38.205%; width: 13.594%; }
.index .schedule_dots-03 { left: 4.167%; top: 73.718%; width: 13.594%; }
.index .schedule_plus { left: 94.792%; top: 95.128%; width: 5.182%; }

/* 好禮兌換區塊 */
.index .gift_section .container { padding-top: min(2.292vw, 44px); padding-bottom: min(2.031vw, 39px); }
.index .gift_title { width: 36.589%; }
.index .gift_main { width: 66.094%; margin-top: min(2.188vw, 42px); }
.index .gift_plus { left: 0.833%; top: 15.676%; width: 5.182%; }
.index .gift_icon-01 { left: 19.271%; top: 8.919%; width: 6.562%; }
.index .gift_icon-02 { left: 83.125%; top: 49.730%; width: 6.589%; }
.index .gift_dots-01 { left: 3.646%; top: 47.297%; width: 16.276%; }
.index .gift_dots-02 { left: 85.833%; top: 73.514%; width: 16.276%; }

@media (max-width: 768px) {
  /* 手機：照手機設計稿 768 寬等比縮放，尺寸都換算成 vw */
  /* 區塊之間的間距：比手機稿再多留 40px（以 384 寬計） */
  .index .page_section,
  .index .page_section + .page_section {
    padding-top: 10.417vw;
  }

  .index .sec_block {
    margin-top: 0;
  }

  .index .brand_m_item,
  .index .schedule_show_m_item {
    margin-right: auto;
    margin-left: auto;
  }

  /* 參觀資訊 */
  .index .visit_section .container { padding: 1.172vw 0 0; }
  .index .visit_title { width: 37.630vw; }
  .index .visit_m_info { width: 52.865vw; margin-top: 4.557vw; }
  .index .visit_m_map { width: 61.458vw; margin-top: -0.391vw; }
  .index .visit_m_dots { left: 92.318%; top: 50.651vw; width: 10.156%; }

  /* 活動介紹 */
  .index .intro_section .container { padding: 4.167vw 0 0; }
  .index .intro_title { width: 37.630vw; }

  .index .intro_lead {
    margin-top: 3.516vw;
    color: var(--color-pink);
    font-family: var(--font-family-tc);
    font-size: max(0.625rem, 3.385vw);
    font-weight: 900;
    line-height: 1.2;
    text-align: center;
  }

  .index .intro_lead_line {
    display: block;
  }

  .index .intro_text {
    width: 100%;
    margin-top: 2.865vw;
    font-size: max(0.5rem, 2.539vw);
    line-height: 1.64;
    letter-spacing: 0;
  }

  .index .intro_para + .intro_para {
    margin-top: 2.214vw;
  }

  .index .intro_seg-pc::after {
    content: none;
  }

  .index .intro_seg-m::after {
    content: "\A";
    white-space: pre;
  }

  .index .intro_m_dots-01 { left: -1.953%; top: -0.911vw; width: 10.417%; }
  .index .intro_m_dots-02 { left: 91.406%; top: 95.703vw; width: 10.677%; }

  /* 展區地圖 */
  .index .map_section .container { padding: 6.641vw 0 0; }
  .index .map_title { width: 37.630vw; }
  .index .map_img { width: 89.583vw; margin-top: 2.734vw; }
  .index .map_m_dots { left: -4.688%; top: 21.615vw; width: 19.010%; }

  /* 品牌名稱 */
  .index .brand_section .container { padding: 5.078vw 0 0; }
  .index .brand_title { width: 37.630vw; }
  .index .brand_m { width: 100%; margin-top: 2.865vw; }
  .index .brand_m_item-01 { width: 26.693vw; }
  .index .brand_m_item-02 { width: 44.857vw; margin-top: 3.776vw; }
  .index .brand_m_item-03 { width: 44.792vw; margin-top: 3.385vw; }
  .index .brand_m_item-04 { width: 45.052vw; margin-top: 3.776vw; }
  .index .brand_m_item-05 { width: 51.367vw; margin-top: 3.646vw; }
  .index .brand_m_item-06 { width: 51.367vw; margin-top: 3.776vw; }
  .index .brand_m_item-07 { width: 26.693vw; margin-top: 10.026vw; }
  .index .brand_m_item-08 { width: 44.857vw; margin-top: 3.255vw; }
  .index .brand_m_item-09 { width: 44.792vw; margin-top: 3.646vw; }
  .index .brand_m_item-10 { width: 44.857vw; margin-top: 3.776vw; }
  .index .brand_m_dots-01 { left: 90.755%; top: 13.542vw; width: 18.099%; }
  .index .brand_m_new { left: 87.370%; top: 66.927vw; width: 7.161%; }
  .index .brand_m_basket { left: 74.740%; top: 80.729vw; width: 13.542%; }
  .index .brand_m_dots-02 { left: -4.688%; top: 89.583vw; width: 13.151%; }
  .index .brand_m_cup { left: 11.719%; top: 127.734vw; width: 14.193%; }
  .index .brand_m_dots-03 { left: -2.734%; top: 226.042vw; width: 16.536%; }
  .index .brand_m_teapot { left: 75.391%; top: 226.302vw; width: 22.266%; }
  .index .brand_m_plus-01 { left: 89.844%; top: 265.234vw; width: 17.708%; }
  .index .brand_m_plus-02 { left: 4.948%; top: 389.714vw; width: 17.708%; }
  .index .brand_m_cupcake { left: 79.427%; top: 439.193vw; z-index: 1; width: 7.943%; }
  .index .brand_m_dots-04 { left: 83.464%; top: 442.578vw; width: 21.224%; }
  .index .brand_m_bucket { left: 1.432%; top: 538.542vw; z-index: 1; width: 15.234%; }
  .index .brand_m_dots-05 { left: 1.562%; top: 549.349vw; width: 26.172%; }

  /* 活動時間表 */
  .index .schedule_section .container { padding: 10.026vw 0 0; }
  .index .schedule_title { width: 43.880vw; }
  .index .schedule_m { width: 100%; margin-top: 5.078vw; }
  .index .schedule_day { margin-right: auto; margin-left: auto; }
  .index .schedule_day-01 { width: 48.698vw; }
  .index .schedule_day-02 { width: 48.698vw; margin-top: 3.125vw; }
  .index .schedule_day-03 { width: 48.307vw; margin-top: 2.214vw; }

  /* 手機的插圖位置：照手機稿縮小，放在各自那一天 */
  .index .schedule_day .schedule_icon-01 { top: 74.126%; left: 65.775%; width: 31.818%; }
  .index .schedule_day .schedule_icon_clip { top: 84.700%; left: 62.834%; width: 27.005%; height: 13.230%; }
  .index .schedule_day .schedule_icon-02 { top: 40%; }
  .index .schedule_day .schedule_icon-03 { top: 86.280%; left: 73.854%; width: 20.755%; }

  .index .schedule_show_m { width: 100%; margin-top: 12.370vw; }
  .index .schedule_show_m_item-01 { width: 34.766vw; }
  .index .schedule_show_m_item-02 { width: 41.471vw; margin-top: 6.771vw; }
  .index .schedule_show_m_item-03 { width: 41.471vw; margin-top: 8.464vw; }
  .index .schedule_show_m_item-04 { width: 41.471vw; margin-top: 8.464vw; }
  .index .schedule_m_dots-01 { left: -4.688%; top: 43.880vw; width: 33.984%; }
  .index .schedule_m_dots-02 { left: 77.734%; top: 160.807vw; width: 29.167%; }
  .index .schedule_m_dots-03 { left: -2.214%; top: 265.885vw; width: 33.984%; }
  .index .schedule_m_plus-01 { left: 92.057%; top: 352.734vw; width: 16.406%; }
  .index .schedule_m_star-01 { left: 23.958%; top: 385.938vw; width: 3.385%; }
  .index .schedule_m_plus-02 { left: -1.432%; top: 442.839vw; width: 15.885%; }
  .index .schedule_m_star-02 { left: 70.573%; top: 447.656vw; width: 3.646%; }

  /* 好禮兌換：卡片右上的 FB、LINE 圖示超出卡片，所以卡片靠左對齊 */
  .index .gift_section .container { padding: 13.281vw 0 10.547vw; }
  .index .gift_title { width: 91.406vw; }
  .index .gift_m { width: 100%; margin-top: 4.688vw; }
  .index .gift_m_item { margin-left: 22.786vw; }
  .index .gift_m_item-01 { width: 54.557vw; }
  .index .gift_m_item-02 { width: 52.344vw; margin-top: 3.971vw; }
  .index .gift_m_item-03 { width: 54.427vw; margin-top: 3.581vw; }
  .index .gift_m_item-04 { width: 52.474vw; margin-top: 2.995vw; }
  .index .gift_m_plus { left: 83.854%; top: 72.396vw; width: 8.594%; }
  .index .gift_m_icon-01 { left: 7.682%; top: 104.427vw; width: 10.807%; }
  .index .gift_m_dots-01 { left: 82.292%; top: 149.740vw; width: 26.823%; }
  .index .gift_m_icon-02 { left: 78.776%; top: 187.891vw; width: 10.547%; }
  .index .gift_m_dots-02 { left: 1.562%; top: 257.292vw; width: 22.005%; }
}
