@charset "utf-8";
@font-face {
  font-family: SourceHanSansTW-VF;
  src: url("../font/SourceHanSansTW-VF.otf");
}
.guide_title {
  font-family: SourceHanSansTW-VF;
}

/* CSS Document */
/* ---reset.css--- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
}

/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

html {
  background: url("../images/");
  scroll-behavior: smooth;
}
header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

/* --- layoutcolor公版改色 --- */
.dis-for-zasshi3,
.zasshi3-buy,
.hightlight .font h4,
.round_3p .font h4,
.hightlightAd .font h4,
.hightlight_5p .font h4,
.special_5p_1 .hightlight_5p ul li h4,
.collect_5x6 .special,
.collect_5x6 .s-row h4,
.keywordC .round_5p .font,
.zasshi3 ul li h4,
.ranks,
.block_7 .rectangle_3p ul span.dis_for_rectangle_3p,
.tabs .tabs-head li.active {
  background: #f09490;
  background: linear-gradient(
    343deg,
    rgba(240, 148, 144, 1) 44%,
    rgba(250, 216, 214, 1) 100%
  );
  color: #ffffff;
}
.menustyle2 ul li a:hover,
.menustyle2 ul .active {
  background: #f09490;
  background: linear-gradient(
    343deg,
    rgba(240, 148, 144, 1) 44%,
    rgba(250, 216, 214, 1) 100%
  );
  color: black;
}
.menustyle2,
.menustyle2 ul li a {
  background: #701517;
  color: aliceblue;
}
.various_5p.logo_5pcs li,
.alternate ul:nth-child(odd) li:first-child,
.alternate ul:nth-child(even) li:last-child,
.tabs .tabs-head li,
.half ul,
.quotes li:nth-child(odd) {
  background: #4b805a;
  color: #ffffff;
}
.zasshi3 ul li .font p,
.hightlightAd-text li:nth-child(1) h4,
.film-rectangle-for4 .rectangle ul li,
.toptitle .font h4,
.triple .font h4,
.tabs .tabs-head li:hover,
.special_5p_1 .title_AA h2,
.subtitle h3 {
  background: #9acc82;
  color: #1c650a;
}
.tabs-head li:hover a {
  color: black;
}
.round_3p img,
.keywordC .round_5p img {
  border: 4px solid #7f55cf;
}
.alternate ul:nth-child(odd) li:first-child .font h4,
.alternate ul:nth-child(even) li:last-child .font h4,
.block_1 .alternate ul.pd10 li:last-child .font h4,
.titleC h2 b {
  color: #fdd045;
}
.quotes li:nth-child(even) {
  background: #039361;
}
.scene .font p,
.titleC h2 {
  color: white;
}
/* --- 公版改色///END --- */

/* --- 公版間距 --- */
.zasshi3 {
  margin: 0 auto 12px;
}
.special_5p_1 ul {
  align-items: flex-end;
}
.special_5p_1 .hightlight_5p ul li:first-child {
  height: auto;
  width: 240px;
}
.special_5p_1 .hightlight_5p ul li:first-child img {
  width: 240px;
  height: 240px;
}
.special_5p_1 .hightlight_5p ul li {
  height: auto;
  margin-top: 0;
  padding: 10px 0;
}

.special_5p_1 .title_AA h2 {
  padding: 10px 0 10px;
  font-size: 2rem;
  width: 866px;
  left: 356px;
  display: flex;
  justify-content: center;
  align-items: center;
  letter-spacing: 0;
  border-radius: 30px;
  border: 2px solid;
}
.special_5p_1 {
  margin: 20px auto 0;
}
.crosswise_3p {
  margin: 10px auto 40px;
}
.crosswise_3p.area01 {
  background: url(../images/area01.png) top center no-repeat;
}
.crosswise_3p.area02 {
  background: url(../images/area02.png) top center no-repeat;
}

.rectangle_3p {
  margin: 0 auto;
  padding: 0 0 16px;
}
.banner,
.quotes,
.hightlight,
.hightlight_5p {
  margin: 0 auto;
  padding: 10px 0;
}
.alternate {
  margin: 0px auto 0px;
}
.alternate ul:nth-child(odd) li:first-child .font {
  margin: auto 0 auto 2vw;
  padding: 0;
}
/* --- 公版間距///END --- */
/* --- 公版調整 --- */
.hightlight img,
.hightlight_5p img {
  object-fit: contain;
}
/* 3Ex3挖2格 背景圖 */
.crosswise_3p > .img_box {
  width: 1160px;
  display: flex;
  justify-content: center;
}
.crosswise_3p > .img_box > .title_img {
  position: absolute;
  width: 377px;
}
.crosswise_3p > .img_box > .title_img img {
  width: 100%;
  height: auto;
}
.rectangle li,
.hightlight li,
.hightlight_5p li {
  position: relative;
}
@media screen and (max-width: 991px) {
  .crosswise_3p > .img_box {
    width: 100%;
  }
  .crosswise_3p > .img_box > .title_img {
    width: 100%;
    position: relative;
    padding: 0 6vw;
  }
  .crosswise_3p > .img_box > .title_img img {
    width: 100%;
    height: auto;
  }
}
/* <div class="img_box">
<div class="title_img"><img src="images/center-img1.png"></div>
</div> */
/* 3Ex3挖2格 背景圖///END */
/* --- 公版調整///END --- */

/* PC */
.WRAPPER {
  position: relative;
  width: 100%;
  min-width: 1200px;
  margin: 0 auto;
  overflow: hidden;
  display: block;
}
@media screen and (max-width: 991px) {
  .WRAPPER {
    min-width: 100%;
  }
}

.container {
  overflow: hidden;
  width: 100% !important;
  max-width: 1920px !important;
  padding: 0 0 10px;
  position: relative;
  z-index: 20;
  margin: 0 auto;
}

.topbox {
  position: relative;
  width: 1200px;
  margin: auto;
}

.kv_pc {
  width: 100%;
  position: relative;
  text-align: center;
  display: flex;
  justify-content: center;
  max-width: 1920px;
  margin: auto;
  flex-wrap: wrap-reverse;
}

.kv_pc img {
  /* display: block; */
  text-align: center;
}

.kv_m {
  display: none;
}

/* .kv_m img { display: block; } */
.kv_m a {
  font-size: 0;
  /* display: block; */
}

.for_pc {
  display: block;
}

.for_m {
  display: none;
}

/* m */
@media screen and (max-width: 991px) {
  .kv_m {
    display: block;
    width: 100%;
    position: relative;
    font-size: 0;
  }

  .kv_m img {
    width: 100%;
  }

  .kv_pc {
    display: none;
  }

  .container {
    width: 100%;
    min-width: auto;
    padding: 0 0;
  }

  .for_pc {
    display: none;
  }

  .for_m {
    display: block;
  }
}

/*omo攻略區*/
.block_0 ul.tip_a,
.block_0 ul.tip_b {
  width: 1200px;
  margin: 0px auto;
  display: flex;
  justify-content: space-evenly;
}

.notice {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  padding: 8px 0 0px;
  font-size: 1rem;
  line-height: 1.2rem;
  font-weight: 300;
  color: #ffffff;
}

@media screen and (max-width: 991px) {
  .block_0 ul.tip_a,
  .block_0 ul.tip_b {
    width: 100%;
    margin: 0 auto;
    padding: 0 3vw 0;
    flex-wrap: wrap;
  }
  .block_0 ul.tip_b li {
    width: 46%;
    margin: 0 0 1vw;
  }
  .block_0 ul.tip_a,
  .block_0 ul.tip_b li img {
    width: 100%;
    padding: 0;
  }
  .notice {
    padding: 1vw 5vw 0;
  }
  .notice p {
    font-size: 3.5vw;
  }
}

/*五品優惠輪播*/
.dct {
  width: 1140px;
  margin: 10px auto;
}

.dct .slick-list {
  padding-top: 20px;
  margin-bottom: 0;
}

.dct ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.dct li {
  width: 100%;
  background: #ff5d20;
  margin: 6px;
  padding: 0;
  border-radius: 15px;
  border: 2px solid #ff5d20;
  position: relative;
}

.dct .font {
  display: block;
  text-align: center;
}

.dct .font h4 {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
  padding: 8px 20px;
  margin: 0 auto;
  color: #fff;
  background: #ff5d20;
  border-radius: 50px;
  border: 3px solid #fff;
  font-weight: 500;
  font-size: 1.3rem;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.dct .font p {
  margin: 0;
  padding: 5px 0;
  color: #fff;
  font-weight: 500;
  font-size: 1.2rem;
  line-height: 1.8rem;
}

.dct .font p span {
  color: #fff000;
}

.dct .font p big {
  color: #fff000;
  font-size: 1.8rem;
}

.link_d .dct .slick-slide img {
  width: 100%;
  height: 212px;
  background-color: #fff;
  border-radius: 13px 13px 0 0;
  object-fit: contain;
}

.link_d .slick-initialized .slick-slide.showByDate {
  display: none;
}

@media screen and (max-width: 991px) {
  .dct {
    width: 100%;
    margin: 2vw auto;
  }

  .dct .slick-list {
    padding-top: 4vw;
  }

  .dct .slider {
    margin: 0 auto;
  }

  /*
  .slickbg.dct .slick-next{right: -3vw;z-index: 99;}
  .slickbg.dct .slick-prev{left: -3vw;z-index: 99;}
  */
  .dct ul {
    flex-wrap: wrap;
  }

  .dct li {
    width: 46vw;
    padding: 0;
    margin: 1vw;
  }

  .dct .font {
    margin: 0;
  }

  .dct .font h4 {
    padding: 1.5vw 4vw;
    border: 2px solid #fff;
  }

  .dct .font p {
    padding: 2vw 0;
  }

  .dct .font p big {
    font-size: 1.5rem;
  }

  .link_d .dct .slick-slide img {
    height: 45vw;
  }
}

/*--輪播 左右箭頭去點點 統一設定--*/
.slick-list,
.slider {
  margin: 0 !important;
}

.slickbg .slick-prev,
.slickbg .slick-next {
  display: block !important;
  height: 40px;
  width: 40px;
}

.slickbg .slick-prev:before {
  content: "";
  background: url("../images/arrow-f.svg") center center no-repeat, #221510;
  background-size: 20px 20px;
  height: 30px;
  width: 30px;
  font-weight: bold;
  border-radius: 99em;
  display: block;
  opacity: 1;
  z-index: 98;
}

.slickbg .slick-next:before {
  content: "";
  background: url("../images/arrow-b.svg") center center no-repeat, #221510;
  background-size: 20px 20px;
  height: 30px;
  width: 30px;
  font-weight: bold;
  border-radius: 99em;
  display: block;
  opacity: 1;
  z-index: 98;
}

.slickbg .slick-next {
  right: -10px;
  z-index: 98;
  opacity: 0.6;
  display: flex !important;
  justify-content: flex-end;
}

.slickbg .slick-prev {
  left: -10px;
  z-index: 98;
  opacity: 0.6;
  display: flex !important;
  justify-content: flex-start;
}

.slickbg .slick-dots li {
  display: none;
}

.slickbg .slick-dotted.slick-slider {
  margin: 0 !important;
  padding-bottom: 0px !important;
}

.slickbg.slick3item {
  width: 1172px;
}

.slick5itam-2 h4,
.slick5itam-2 p {
  color: #fff;
}

.link_c .slickbg .slick5itam-2 .slick5.showByDate {
  display: none;
}

@media screen and (max-width: 991px) {
  .slickbg {
    width: 96vw !important;
  }

  .slick5itam-2 h4,
  .slick5itam-2 p {
    padding-top: 2vw;
  }

  .slickbg .slick-next {
    right: 0 !important;
    opacity: 0.6;
  }

  .slickbg .slick-prev {
    left: 0 !important;
    opacity: 0.6;
  }

  .slick3item .slick-slide img {
    width: 86vw !important;
  }
}

/*--  nav 選單 固定側邊--*/
@media only screen and (min-width: 992px) {
  .menustyle2 {
    width: 156px;
    display: flex;
    flex-wrap: wrap;
    z-index: 999;
    height: auto;
    position: fixed;
    top: 180px;
    right: 10px;
    border-radius: 2em;
    border: 1px solid #e03540;
  }

  .menustyle2 ul {
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    padding: 25px 0px;
    flex-wrap: wrap;
  }

  .menustyle2 ul li {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .menustyle2 ul li a {
    text-decoration: none;
    font-size: 1rem;
    display: flex;
    width: fit-content;
    justify-content: center;
    align-items: center;
    padding: 6px 12px;
    margin: 1px auto;
    flex-direction: column;
    line-height: 1.2;
    font-weight: 700;
    text-align: center;
  }

  .menustyle2 a br {
    display: block;
  }

  .menustyle2 ul li a:hover {
    transform: scale(1);
    border-radius: 99em;
  }

  .menustyle2 ul .active {
    border-radius: 99em;
  }
}

@media screen and (max-width: 991px) {
  .menustyle2 ul {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
  }

  .menustyle2::-webkit-scrollbar {
    display: none;
  }

  .menustyle2 {
    width: 100%;
    z-index: 999;
    padding: 2vw 1vw;
    display: block;
    border-bottom: 1.5px solid #e03540;
    flex-direction: column;
    flex-wrap: wrap;
    position: absolute;
    overflow-x: auto;
    justify-content: center;
    white-space: nowrap;
    webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    height: auto;
  }

  .menustyle2 ul {
    flex-wrap: nowrap;
    display: flex;
  }

  .menustyle2 ul li {
    width: inherit;
    display: flex;
    justify-content: center;
    align-items: center;
    box-sizing: border-box;
  }

  .menustyle2 ul li a {
    font-size: 1rem;
    letter-spacing: 0px;
    box-sizing: border-box;
    padding: 1.5vw 2.5vw;
    font-weight: 700;
  }

  .menustyle2 a br {
    display: none;
  }

  .menustyle2 ul .active {
    width: 100%;
    justify-content: center;
    align-items: center;
    text-align: center;
    border-radius: 999em;
  }

  .sticky {
    position: fixed;
    top: 0;
  }
}

/*手機版選單下滑出現*/
@media screen and (max-width: 991px) {
  #TopMenu2 {
    transition: background-color 1s, opacity 1s, visibility 1s;
    opacity: 0;
    visibility: hidden;
    z-index: 999;
    position: absolute;
    top: 0;
  }

  #TopMenu2.show {
    opacity: 1;
    visibility: visible;
    position: fixed;
    top: 0;
  }
}

/*--  錨點微調--*/
.target-fix {
  position: relative;
  top: 0px;
  display: block;
  height: 0;
  overflow: hidden;
}
@media screen and (max-width: 991px) {
  .target-fix {
    top: -30px;
  }
}
/*--  錨點微調--*/

/*--goto top--*/
#gotop {
  display: inline-block;
  background-color: #000;
  width: 40px;
  height: 40px;
  text-align: center;
  border-radius: 100%;
  position: fixed;
  bottom: 0px;
  right: 0px;
  transition: background-color 0.3s, opacity 0.5s, visibility 0.5s;
  opacity: 0;
  visibility: hidden;
  z-index: 1000;
  margin: 30px;
}
#gotop::after {
  position: absolute;
  display: block;
  font-family: FontAwesome;
  content: "　";
  font-weight: normal;
  font-style: normal;
  font-size: 2em;
  line-height: 50px;
  color: #fff;
  opacity: 0.5;
  background: url("../images/top.png") center no-repeat;
  background-size: 50%;
  background-position: 85% 35%;
}
#gotop:hover {
  cursor: pointer;
  background-color: #666;
}
#gotop:active {
  background-color: #ccc;
}
#gotop.show {
  opacity: 0.4;
  visibility: visible;
}
@media screen and (max-width: 991px) {
  #gotop {
    bottom: 70px;
    right: 0;
    margin: 2vw;
  }
}
/* share url */
#share {
  display: inline-block;
  background-color: #000;
  opacity: 0.4;
  width: 40px;
  height: 40px;
  text-align: center;
  border-radius: 100%;
  position: fixed;
  bottom: 50px;
  right: 0px;
  transition: background-color 0.3s, opacity 0.5s, visibility 0.5s;
  z-index: 1000;
  margin: 30px;
}
#share::after {
  position: absolute;
  display: block;
  font-family: FontAwesome;
  content: "　";
  font-weight: normal;
  font-style: normal;
  font-size: 2em;
  line-height: 50px;
  color: #fff;
  opacity: 0.5;
  background: url("../images/share.png") center no-repeat;
  background-size: 50%;
  background-position: 80% 35%;
}
#share:hover {
  cursor: pointer;
  background-color: #666;
}
#share:active {
  background-color: #666;
}
@media screen and (max-width: 991px) {
  #share {
    bottom: 115px;
    right: 0;
    margin: 2vw;
  }
}
@media screen and (max-width: 991px) {
  html {
    padding-bottom: 80px;
  }
}

/*前往按鈕*/
.gobtn {
  margin: 40px auto 0;
  padding: 0 0 26px 0;
}
.gobtn a {
  text-align: center;
  width: 50%;
  height: 80px;
  display: flex;
  background: #f4e35e;
  margin: 0 auto;
  border-radius: 0em;
  color: black;
  transition: 0.2s;
  font-size: 2.6rem;
  font-weight: 900;
  align-items: center;
  justify-content: center;
  border: 2px solid black;
}
.gobtn span {
  background: #f44862;
  color: white;
  font-size: 1rem;
  padding: 0.8rem 0.5rem;
  border-radius: 4rem;
  margin-left: 0.8rem;
}
@media screen and (max-width: 991px) {
  .gobtn {
    margin: 2vw auto 4vw;
  }
  .gobtn a {
    text-align: center;
    width: 90%;
    height: auto;
    line-height: 3.5rem;
    font-size: 6vw;
  }
  .gobtn span {
    margin-left: 0.3rem;
  }
}
/*前往按鈕///END*/

/*--- 館別好康5個1排輪播 ---*/
.block_sp3 .blk_body {
  padding: 0 22px;
}
@media screen and (max-width: 991px) {
  .block_sp3 .blk_body {
    padding: 0 9px;
  }
}

.block_sp3 {
  padding-bottom: 18px;
}
.block_sp3 .sp3_item .type {
  background-color: #4e5995;
  border: 2px solid #2b2f46;
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0.3em 1em;
  border-radius: 999em;
  position: relative;
  left: 50%;
  -webkit-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
}
@media screen and (max-width: 991px) {
  .block_sp3 .sp3_item .type {
    border: 1.5px solid #000;
  }
}
.block_sp3 .sp3_item .sp3_item_body {
  border-radius: 10px;
  overflow: hidden;
  text-align: center;
  border: 2px solid #2b2f46;
  background: #4e5995;
  color: white;
}
@media screen and (max-width: 991px) {
  .block_sp3 .sp3_item .sp3_item_body {
    border: 1.5px solid #000;
  }
}
.block_sp3 .sp3_item .txt {
  padding: 10px;
}
.block_sp3 .sp3_item p {
  font-size: 19px;
  font-weight: 500;
}
.block_sp3 .sp3_item p:nth-of-type(1) {
  padding-bottom: 5px;
}
.block_sp3 .sp3_item span {
  display: inline-block;
  color: #fdd045;
  font-size: 19px;
}
.block_sp3 .sp3_item big {
  color: #fdd045;
  font-size: 22px;
}

.blk_sp .slickbg {
  width: 100%;
}
@media screen and (max-width: 991px) {
  .blk_sp .slickbg {
    width: 96%;
  }
}
.blk_sp .slickbg .slider {
  margin-bottom: 0;
}
.blk_sp .slickbg .for_pc {
  display: block;
}
@media screen and (max-width: 991px) {
  .blk_sp .slickbg .for_pc {
    display: none;
  }
}
.blk_sp .slickbg .for_m {
  display: none;
}
@media screen and (max-width: 991px) {
  .blk_sp .slickbg .for_m {
    display: block;
  }
}
.blk_sp .slick-prev,
.blk_sp .slick-next {
  display: block !important;
  width: 30px;
  height: 30px;
  z-index: 1;
}
@media screen and (max-width: 991px) {
  .blk_sp .slick-prev,
  .blk_sp .slick-next {
    width: 26px;
    height: 26px;
  }
}
.blk_sp .slick-prev {
  left: 5px;
}
@media screen and (max-width: 991px) {
  .blk_sp .slick-prev {
    left: -5px;
  }
}
.blk_sp .slick-next {
  right: 5px;
}
@media screen and (max-width: 991px) {
  .blk_sp .slick-next {
    right: -5px;
  }
}
.blk_sp .slick-prev:before,
.blk_sp .slick-next:before {
  content: "";
  background-image: url(../images/arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 30% auto;
  display: block;
  border-radius: 999em;
  width: 30px;
  height: 30px;
  background-color: #ffd800;
  opacity: 1;
}
@media screen and (max-width: 991px) {
  .blk_sp .slick-prev:before,
  .blk_sp .slick-next:before {
    width: 26px;
    height: 26px;
  }
}
.blk_sp .slick-next:before {
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
}
.blk_sp .slick-slide img {
  height: auto;
}

.blk_sp .blk_item_btt {
  background-color: #e6332f;
  color: #fffdea;
  -webkit-box-shadow: 0 -5px 0 #000;
  box-shadow: 0 -5px 0 #000;
  margin-top: 1em;
  position: relative;
}
@media screen and (max-width: 991px) {
  .blk_sp .blk_item_btt {
    padding: 0.35em 2.5em 0.4em 1em;
  }
}
.blk_sp .blk_item_btt:before,
.blk_sp .blk_item_btt:after {
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: auto 100%;
  width: 200%;
  padding-bottom: 2em;
  position: absolute;
  top: 50%;
}
@media screen and (max-width: 991px) {
  .blk_sp .blk_item_btt:before,
  .blk_sp .blk_item_btt:after {
    width: 80%;
  }
}
.blk_sp .blk_item_btt:before {
  background-image: url(../images/stt_decoL.png);
  background-position: right 30px center;
  left: 0;
  -webkit-transform: translate(-100%, -50%);
  transform: translate(-100%, -50%);
}
@media screen and (max-width: 991px) {
  .blk_sp .blk_item_btt:before {
    display: none;
  }
}
.blk_sp .blk_item_btt:after {
  background-image: url(../images/stt_decoR.png);
  background-position: left 30px center;
  right: 0;
  -webkit-transform: translate(100%, -50%);
  transform: translate(100%, -50%);
}
@media screen and (max-width: 991px) {
  .blk_sp .blk_item_btt:after {
    display: none;
  }
}
.blk_sp img {
  max-width: 100%;
  width: 100%;
}

@media screen and (max-width: 450px) {
  .blk_sp {
    margin-top: 30px;
  }
}

.blk_body {
  max-width: 1240px;
  margin: 0 auto;
  padding: 12px 0;
}

.blk_sp .blk_body > *:nth-child(1) {
  margin-top: 0px;
  padding-top: 0;
}
.blk_sp .blk_body > *:nth-last-child(1) {
  margin-bottom: 0px;
  padding-bottom: 0;
}

.swiper-button-prev:after {
  content: "";
  background-image: url(../images/arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 30% auto;
  display: block;
  border-radius: 999em;
  width: 30px;
  height: 30px;
  background-color: #ffd800;
  opacity: 1;
}
@media screen and (max-width: 991px) {
  .swiper-button-next:after,
  .swiper-button-prev:after {
    width: 26px;
    height: 26px;
  }
}

.swiper-button-next:after {
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
}

.swiper {
  position: relative;
}

.swiper-slide a {
  display: block;
}
.swiper-slide img {
  width: 100%;
  height: 212px;
  -o-object-fit: contain;
  object-fit: contain;
  background: white;
}
@media screen and (max-width: 991px) {
  .swiper-slide img {
    height: 35vw;
  }
}

.swiper-button-next,
.swiper-button-prev {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}

.swiper-button-next.swiper-button-disabled,
.swiper-button-prev.swiper-button-disabled {
  opacity: 1;
  pointer-events: unset;
}

.swiper-button-prev,
.swiper-rtl .swiper-button-next,
.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  top: 50%;
  -webkit-transform: translateY(25%);
  transform: translateY(25%);
}

.swiper-button-prev {
  left: 0;
}

.swiper-button-next {
  right: 0;
}

.swiper-button-next:after,
.swiper-button-prev:after {
  content: "";
  background-image: url(../images/arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 30% auto;
  display: block;
  border-radius: 999em;
  width: 30px;
  height: 30px;
  background-color: #221510;
  opacity: 0.6;
}
@media screen and (max-width: 991px) {
  .swiper-button-next:after,
  .swiper-button-prev:after {
    width: 26px;
    height: 26px;
  }
}

.swiper-button-next:after {
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg);
}

/*--- 館別好康5個1排輪播///END ---*/

/*---- 新增固定 ----*/
.evimg {
  width: 1200px;
  margin: 0 auto;
}
.promotion_a .evimg {
  margin-bottom: 8px;
}
@media screen and (max-width: 991px) {
  .evimg,
  .title_bn {
    width: 100%;
  }
  .evimg img,
  .title_bn img {
    width: 100%;
  }
}
/*---- 新增固定///END ----*/

/*標題動效*/
.tilt-in-top-1 {
  -webkit-animation: tilt-in-top-1 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94)
    both;
  animation: tilt-in-top-1 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) both;
}
/* ----------------------------------------------
 * Generated by Animista on 2025-12-9 11:35:12
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info.
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation tilt-in-top-1
 * ----------------------------------------
 */
@-webkit-keyframes tilt-in-top-1 {
  0% {
    -webkit-transform: rotateY(30deg) translateY(-300px) skewY(-30deg);
    transform: rotateY(30deg) translateY(-300px) skewY(-30deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotateY(0deg) translateY(0) skewY(0deg);
    transform: rotateY(0deg) translateY(0) skewY(0deg);
    opacity: 1;
  }
}
@keyframes tilt-in-top-1 {
  0% {
    -webkit-transform: rotateY(30deg) translateY(-300px) skewY(-30deg);
    transform: rotateY(30deg) translateY(-300px) skewY(-30deg);
    opacity: 0;
  }
  100% {
    -webkit-transform: rotateY(0deg) translateY(0) skewY(0deg);
    transform: rotateY(0deg) translateY(0) skewY(0deg);
    opacity: 1;
  }
}

/* 1. 場景容器：設定透視感 (Perspective) */
.event_scene {
  width: 679px;
  height: 201px;
  perspective: 1000px; /* 數值越小，3D 透視感越強烈 */
  margin: 0px auto;
}

/* 2. 卡片容器：負責旋轉的物體 */
.event_card {
  width: 100%;
  height: 100%;
  position: relative;
  transform-style: preserve-3d; /* 保留 3D 空間，讓子元素可以立體呈現 */
  animation: flipX 6s infinite; /* 執行翻轉動畫 */
}

/* 3. 圖片通用設定 */
.event_card img {
  position: absolute;
  width: 100%;
  height: 100%;
  object-fit: cover;
  top: 0;
  left: 0;
  /* 關鍵：隱藏背面。當圖片轉過去背對螢幕時，這張圖就會看不見 */
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden; /* Safari 兼容 */
}

/* 4. 正面圖片 (圖片 A) */
.img-front {
  z-index: 2;
  /* 正面不需要額外旋轉，預設就是朝向我們 */
}

/* 5. 背面圖片 (圖片 B) */
.img-back {
  z-index: 1;
  /* 背面圖片預先沿 X 軸轉 180 度，這樣當卡片翻轉時，它才會變回正面 */
  transform: rotateX(180deg);
}

/* 6. 動畫關鍵影格 */
@keyframes flipX {
  /* 0% ~ 45% : 顯示正面 (A) */
  0%,
  45% {
    transform: rotateX(0deg);
  }
  /* 50% ~ 95% : 翻轉 180 度，顯示背面 (B) */
  50%,
  95% {
    transform: rotateX(180deg);
  }
  /* 100% : 翻轉到 360 度 (回到 A) */
  100% {
    transform: rotateX(360deg);
  }
}

/* 1. 容器設定 */
.fade-scene {
  width: 100%; /* 可依需求調整 */
  height: 100%; /* 可依需求調整 */
  position: relative; /* 讓內部的絕對定位圖片以此為基準 */
  margin: 0px auto; /* 僅為了排版置中 */
  overflow: hidden; /* 確保圖片不會溢出 */
}

/* 2. 圖片通用設定 */
.fade-scene img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 3. 底部圖片 (A) - 永遠顯示，墊在下面 */
.fade-img-base {
  z-index: 1;
}

/* 4. 上層圖片 (B) - 負責閃爍/切換 */
.fade-img-overlay {
  z-index: 2;
  opacity: 0; /* 初始狀態為透明 (顯示底下的 A) */
  animation: fadeLoop 6s infinite; /* 6秒循環一次 */
}

/* 5. 動畫關鍵影格 */
@keyframes fadeLoop {
  /* 0% ~ 45%: 透明度 0 (看到 A) */
  0%,
  45% {
    opacity: 0;
  }
  /* 50% ~ 95%: 透明度 1 (看到 B) */
  50%,
  95% {
    opacity: 1;
  }
  /* 100%: 回到透明度 0 (回到 A) */
  100% {
    opacity: 0;
  }
}

/*---- layoutbg背景 ----*/
body {
  background: none;
}
html:before {
  content: "";
  position: fixed;
  z-index: -1;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url("../images/bg_bottom.jpg") center 0 no-repeat;
  background-size: cover;
}
.section_bg {
  width: 1300px;
  margin: 0 auto 8px;
  padding: 16px 0 28px;
  border-radius: 0 0 42px 42px;
  background: url("../images/category_title_2.png") top center no-repeat
    #ffffff9c;
}
.subtitle {
  background: url("../images/") top center no-repeat;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}
.block_0 {
  background: url("../images/bg_wave.png") top center no-repeat;
  position: relative;
}
.promotion_a > .titleC {
  background: url("../images/bg-guide_a_1.png") top center no-repeat;
}
.promotion_b > .titleC {
  background: url("../images/bg-guide_b_1.png") top center no-repeat;
}
.promotion_c > .titleC {
  background: url("../images/bg-guide_c_1.png") top center no-repeat;
}
.promotion_d > .titleC {
  background: url("../images/bg-guide_d_1.png") top center no-repeat;
}
.promotion_e > .titleC {
  background: url("../images/bg-guide_e_1.png") top center no-repeat;
}

.section_a,
.section_b,
.section_c,
.section_d,
.section_e,
.section_f,
.section_g {
  background: url("../images/bg-guide_a_2.png") top center repeat-y;
  position: relative;
  margin: 0 auto;
}
.section_b {
  background: url("../images/bg-guide_b_2.png") top center repeat-y;
}
.section_c {
  background: url("../images/bg-guide_c_2.png") top center repeat-y;
}
.section_d {
  background: url("../images/bg-guide_d_2.png") top center repeat-y;
}
.section_e {
  background: url("../images/bg-guide_e_2.png") top center repeat-y;
}
.section_f {
  background: url("../images/bg-guide_f_2.png") top center repeat-y;
}
.section_g {
  background: url("../images/bg-guide_g_2.png") top center repeat-y;
}
.promotion_a::after,
.promotion_b::after,
.promotion_c::after,
.promotion_d::after,
.promotion_e::after,
.promotion_f::after,
.promotion_g:after {
  content: "";
  background: url("../images/bg-guide_a_4.png") top center no-repeat;
  display: block;
  padding: 22px;
  margin: 0 0 34px;
}
.promotion_b::after {
  background: url("../images/bg-guide_b_4.png") top center no-repeat;
}
.promotion_c::after {
  background: url("../images/bg-guide_c_4.png") top center no-repeat;
}
.promotion_d::after {
  background: url("../images/bg-guide_d_4.png") top center no-repeat;
}
.promotion_e::after {
  background: url("../images/bg-guide_e_4.png") top center no-repeat;
}
.promotion_f::after {
  background: url("../images/bg-guide_f_3.png") top center no-repeat;
}
.promotion_g::after {
  background: url("../images/bg-guide_g_3.png") top center no-repeat;
}

@media screen and (max-width: 991px) {
  .section_bg {
    width: 100%;
    border-radius: 0;
    padding: 1vw 0 2vw;
    border-width: 0 0 1px 0;
  }
  .block_0 {
    padding: 0;
    background: url("../images/bg_wave_m.png") top center / contain no-repeat;
  }
  .promotion_a > .titleC {
    background: url("../images/bg-guide_a_1m.png") top center / contain
      no-repeat;
    width: 100%;
  }
  .promotion_b > .titleC {
    background: url("../images/bg-guide_b_1m.png") top center / contain
      no-repeat;
    width: 100%;
  }
  .promotion_c > .titleC {
    background: url("../images/bg-guide_c_1m.png") top center / contain
      no-repeat;
    width: 100%;
  }
  .promotion_d > .titleC {
    background: url("../images/bg-guide_d_1m.png") top center / contain
      no-repeat;
    width: 100%;
  }
  .promotion_e > .titleC {
    background: url("../images/bg-guide_e_1m.png") top center / contain
      no-repeat;
    width: 100%;
  }
  .promotion_a .titleC h2,
  .promotion_b .titleC h2,
  .promotion_c .titleC h2,
  .promotion_d .titleC h2,
  .promotion_e .titleC h2 {
    font-size: 7vw;
    padding: 3.5vw 0 5vw;
  }
  .section_a,
  .section_b,
  .section_c,
  .section_d,
  .section_e,
  .section_f {
    width: 100%;
    background: url("../images/bg-guide_a_2m.png") top center / contain repeat-y;
    padding: 2vw 4vw 0;
    margin: -1vw auto 0;
  }
  .section_b {
    background: url("../images/bg-guide_b_2m.png") top center / contain repeat-y;
  }
  .section_c {
    background: url("../images/bg-guide_c_2m.png") top center / contain repeat-y;
    padding: 2vw 0vw 0;
  }
  .section_d {
    background: url("../images/bg-guide_d_2m.png") top center / contain repeat-y;
    padding: 0;
  }
  .section_e {
    background: url("../images/bg-guide_e_2m.png") top center / contain repeat-y;
    padding: 0;
  }
  .section_f {
    background: url("../images/bg-guide_f_2m.png") top center / contain repeat-y;
    padding: 0;
  }
  .section_g {
    background: url("../images/bg-guide_g_2m.png") top center / contain repeat-y;
    padding: 0;
  }
  .promotion_a::after,
  .promotion_b::after,
  .promotion_c::after,
  .promotion_d::after,
  .promotion_e::after,
  .promotion_f::after,
  .promotion_g:after {
    background: url("../images/bg-guide_a_4m.png") top center / contain
      no-repeat;
    margin: 0 0 1vw;
  }
  .promotion_b:after {
    background: url("../images/bg-guide_b_4m.png") top center / contain
      no-repeat;
  }
  .promotion_c:after {
    background: url("../images/bg-guide_c_4m.png") top center / contain
      no-repeat;
  }
  .promotion_d:after {
    background: url("../images/bg-guide_d_4m.png") top center / contain
      no-repeat;
  }
  .promotion_e:after {
    background: url("../images/bg-guide_e_4m.png") top center / contain
      no-repeat;
  }
  .promotion_f:after {
    background: url("../images/bg-guide_f_3m.png") top center / contain
      no-repeat;
  }
  .promotion_g:after {
    background: url("../images/bg-guide_g_3m.png") top center / contain
      no-repeat;
  }
}
/*--- layoutbg背景///END ---*/

/*--- title標題 ---*/
.subtitle h3 {
  border: none;
  font-size: 3rem;
  padding: 6px 36px;
  border-radius: 3.5rem;
  margin: 16px auto 10px;
  position: relative;
}
.subtitle .more {
  background: url("../images/") top center no-repeat;
  padding: 20px 10px;
  width: 103px;
  text-align: center;
  right: 110px;
  top: 0;
  font-size: 2rem;
}
.titleB {
  color: #fff;
  justify-content: flex-start;
  width: 1200px;
  padding: 0 24px;
  margin: 0 auto;
}
.titleB h2:before,
.titleB h2:after {
  background-color: #5c35a5;
}
.titleC {
  background: url("../images/category_title.png") top center no-repeat;
  width: 1330px;
  margin: 0px auto 0px;
  position: relative;
}
.titleC h2 {
  padding: 30px 0 48px;
  font-size: 60px;
  font-weight: 600;
}
.titleCsub {
  margin: 0px auto 0px;
  text-align: center;
}
.titleCsub h3 {
  padding: 30px 10px 0px;
  font-size: 48px;
  display: inline-flex;
  align-items: center;
  font-weight: 600;
}
.titleCsub h3 b {
  font-size: 68px;
  color: #ce0f59;
}
.titleCsub h3::before {
  content: "";
  background: url("../images/subtitle_dec_l.png") top center no-repeat;
  padding: 38px 52px 30px;
}
.titleCsub h3::after {
  content: "";
  background: url("../images/subtitle_dec_r.png") top center no-repeat;
  padding: 38px 52px 30px;
}
.titleC .more {
  font-size: 1.2rem;
  padding: 15px 22px;
  position: absolute;
  right: 135px;
  bottom: 0px;
  transition-duration: 0.3s;
  background: url("../images/title_more.png") top center no-repeat;
  width: 231px;
  text-align: right;
  z-index: 2;
}
.titleC .more a {
  color: #000;
}
@media screen and (max-width: 991px) {
  .titleC {
    width: 100%;
    background-size: 155%;
  }
  .titleC h2 {
    font-size: 7vw;
    padding: 2.5vw 0 2.3vw;
  }
  .titleCsub h3 {
    font-size: 6.5vw;
    padding: 1vw 7vw 0;
    margin: 0;
  }
  .titleCsub h3 > .subtitleimg {
    width: 34vw;
  }
  .titleCsub h3 img {
    width: 100%;
  }
  .titleCsub h3::before {
    padding: 4vw 7vw;
    background-size: contain;
  }
  .titleCsub h3::after {
    padding: 4vw 6vw;
    background-size: contain;
  }
  .titleCsub h3 b {
    font-size: 6vw;
  }
  .titleC h2 {
    font-size: 7vw;
    padding: 4vw 0;
  }
  .subtitle {
    background-size: 130%;
  }
  .subtitle h3 {
    font-size: 7vw;
    padding: 0 0;
  }
  .subtitle .more {
    background: #f5e25f;
    width: 26vw;
    font-size: 5vw;
    padding: 1vw;
    border: solid 1px black;
    top: -4vw;
    right: 1vw;
    -moz-transform: rotate(5deg);
    -webkit-transform: rotate(5deg);
    -o-transform: rotate(5deg);
    -ms-transform: rotate(5deg);
    transform: rotate(5deg);
  }

  .titleB {
    margin: 5vw auto 0vw;
  }
  .titleB h2 {
    color: #5c35a5;
    letter-spacing: 1vw;
    font-size: 6vw;
  }
}
/*--- title標題///END ---*/

/*---- new此封新增 ----*/
.kv {
  background: url("../images/kv.jpg") top center no-repeat;
  position: relative;
}
.topbox {
  height: 950px;
}
.mainkv {
  position: absolute;
}
.mainkv.title {
  top: 137px;
  left: 190px;
}
.mainkv.title5th {
  top: 163px;
  left: 237px;
}
.mainkv.event {
  top: 598px;
  left: 263px;
  animation-name: pulse;
  animation-duration: 2s;
  z-index: 50;
}
.mainkv.t01 {
  top: 359px;
  left: -133px;
  animation-name: bounceIn;
  animation-duration: 2s;
}
.mainkv.t02 {
  top: 627px;
  left: 50px;
  animation-name: bounceIn;
  animation-duration: 2s;
}
.mainkv.t03 {
  top: 146px;
  left: -2px;
  animation-name: bounceIn, fadeIn;
  animation-duration: 2s, 2s;
  animation-delay: 0.2s, 0s;
}
.mainkv.t04 {
  top: 472px;
  right: -67px;
  animation-name: bounceIn, fadeIn;
  animation-duration: 2s, 2s;
  animation-delay: 0.2s, 0s;
}
.mainkv.t05 {
  top: 133px;
  right: -111px;
  animation-name: bounceIn;
  animation-duration: 2s;
}
.mainkv.t06 {
  top: 354px;
  right: -179px;
  animation-name: bounceIn;
  animation-duration: 2s;
}
.guide {
  width: 1200px;
  margin: 0 auto;
  display: flex;
  padding: 12px 0 0px;
}
.guide_title {
  width: 1330px;
  margin: 0 auto;
  position: relative;
}
.guide_title h2 {
  padding: 12px 98px 16px;
  color: #000000;
  font-size: 32px;
  font-weight: 800;
  background: #fdd045;
  display: inline-block;
  border-radius: 0 0 30px 30px;
  margin: 0 auto 22px;
  line-height: 39px;
}
.guide_title h2 span {
  font-size: 40px;
  vertical-align: -3px;
  margin-right: 2px;
}
.guide_title h2 s {
  font-size: 36px;
  text-decoration: none;
}
.guide .item {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly;
  align-content: flex-start;
  padding: 0 0 0 10px;
}
.guide .item:nth-child(2) img {
  margin: 0 0 5px;
}
.guide.event {
  width: 703px;
  margin: -38px 0;
}
.guide > .event_scene {
  width: 703px;
  height: 157px;
}

/*-- block_0 --*/
.section_a .guide > .evimg {
  padding: 0 5px;
}
.section_a .guide .evimg:nth-child(2) {
  width: 57%;
}
.section_b > .subtitle {
  padding: 0 362px 0 420px;
}
.section_b > .subtitle > .rule {
  margin: 8px 0 0;
}
.section_d .slickbg {
  width: 1240px;
}
.A8.P5-1 > .guide_title,
.A9.P5-2 > .guide_title,
.A10.P5-3 > .guide_title,
.A11.P6-1 > .guide_title,
.A12.P6-2 > .guide_title {
  background: white;
  width: 1200px;
  border-radius: 22px 22px 0 0;
  border-left: 5px solid #f52384;
  border-top: 5px solid #f52384;
  border-right: 5px solid #f52384;
  text-align: center;
}
.A11.P6-1 > .guide > .guide_title,
.A12.P6-2 > .guide > .guide_title {
  width: auto;
  margin: 0px 8px 0 -12px;
  padding: 48px 0;
}
.A11.P6-1 > .guide > .guide_title h2,
.A12.P6-2 > .guide > .guide_title h2 {
  padding: 16px 22px 22px 16px;
  border-radius: 0 58px 58px 0;
}
.A11.P6-1 > .guide > .guide_title .imgbox,
.A12.P6-2 > .guide > .guide_title .imgbox {
  margin: 2px 0 24px;
}
.A8.P5-1 > .guide,
.A9.P5-2 > .guide,
.A10.P5-3 > .guide,
.A11.P6-1 > .guide,
.A12.P6-2 > .guide {
  background: white;
  width: 1200px;
  border-radius: 0 0 22px 22px;
  border-left: 5px solid #f52384;
  border-bottom: 5px solid #f52384;
  border-right: 5px solid #f52384;
  padding: 0 0 22px;
  box-shadow: 0px 9px #65002d;
  margin: 0 auto 16px;
  justify-content: space-evenly;
}
.A11.P6-1 > .guide,
.A12.P6-2 > .guide {
  padding: 32px 18px 6px 0;
  border: 5px solid #f52384;
  border-radius: 22px;
}
.A13.P6-3 > .guide {
  justify-content: space-around;
}
.A8.P5-1 > .guide > .item,
.A9.P5-2 > .guide > .item,
.A10.P5-3 > .guide > .item {
  padding: 0;
}
.A11.P6-1 > .guide > .item,
.A12.P6-2 > .guide > .item {
  padding: 0px 6px;
}
.A13.P6-3 > .notice p {
  font-size: 1.5rem;
}

.section_b > .guide {
  background: white;
  border: 3px solid #477937;
  border-radius: 22px;
  box-shadow: 0 8px #114105;
  padding: 30px 0 28px;
  margin: 0 auto 12px;
  justify-content: center;
}
.section_b > .guide > .item {
  padding: 0;
}
.section_b > .guide:nth-child(3) {
  padding: 17px 0 10px;
  margin: 0 auto;
}
.B3 > .section_b > .guide,
.B4 > .section_b > .guide {
  margin: 0 auto;
  padding: 22px 0 16px;
}
.promotion_b > .titleC > .rule {
  position: absolute;
  top: 58px;
  right: 274px;
}
.section_d .slickbg .slick5itam-2 .slick5.showByDate {
  display: none;
}

/* block_1 */
.block_1 > .titleC h2,
.block_2 > .titleC h2,
.block_3 > .titleC h2,
.block_4 > .titleC h2,
.block_5 > .titleC h2,
.block_6 > .titleC h2,
.block_7 > .titleC h2 {
  padding: 128px 0 38px;
  font-size: 68px;
  color: white;
  text-shadow: 2px 0 6px #df3d46;
}
.block_1 > .promotion_f > .titleC,
.block_2 > .promotion_g > .titleC {
  background-image: none;
}
.block_1 > .promotion_f > .section_f .rectangle {
  margin: 20px auto 0;
}

/* block_2 */
.block_2 > .promotion_g > .section_g > .titleCsub > .evimg {
  margin: 0 auto 10px;
}
.block_2 > .promotion_g > .section_g > .titleCsub {
  position: relative;
  display: flex;
  justify-content: center;
  padding-left: 72px;
}
.block_2 > .promotion_g > .section_g > .logo_5pcs ul li .ribbon {
  font-size: 0.8rem;
  text-align: center;
  background: #f85862;
}
.block_2 > .promotion_g > .section_g > .logo_5pcs ul li .ribbon:after {
  border-left: 25px solid #f85862;
  border-right: 25px solid #f85862;
}
.block_2 > .promotion_g > .section_g > .logo_5pcs ul li .ribbon b {
  font-size: 1.6rem;
  color: #fdd045;
}
.block_2 > .promotion_g > .section_g > .various_5p.logo_5pcs h4 {
  border: none;
  border-radius: 30px;
}
.block_2 > .promotion_g > .section_g > .various_5p.logo_5pcs .font p,
.block_2 > .promotion_g > .section_g > .various_5p.logo_5pcs .price {
  color: #fff;
}
.block_2 > .promotion_g > .section_g > .various_5p.logo_5pcs .price big {
  color: #fdd045;
}
.various_5p .font .price {
  margin: 4px 0;
}
.block_2 > .promotion_g > .titleC {
  position: relative;
}
.block_2 > .promotion_g > .titleC > .rule {
  position: absolute;
  top: 165px;
  right: 58px;
}
.block_2 .various_5p {
  margin: 0 auto 0;
}
.block_2 .various_5p.logo_5pcs h4 .big {
  width: 170px;
  height: 42px;
  object-fit: cover;
}

/* blick_4 */
.block_4 .box-mix {
  margin: 0 auto;
}
/* block_5 */
.block_5 .alternate .font h4 {
  color: #4b805a;
}
/*---- new此封新增///END ----*/

/*---- new此封新增m版 ----*/
@media screen and (max-width: 991px) {
  .topbox {
    width: 100%;
    height: 84vw;
  }
  .kv_title {
    display: none;
  }
  /* 促案輪播 */
  .mainkv.event {
    top: 57vw;
    left: 11vw;
  }
  .event_scene,
  .event.only1 {
    width: 78vw;
    height: 26vw;
  }
  .event.only1 img {
    width: 100%;
  }

  /* block_0 m */
  .section_b > .subtitle {
    padding: 0 0 0 20vw;
    margin: 1vw auto 0;
  }
  .section_b > .subtitle h3 {
    padding: 2vw 5vw;
  }
  .section_b > .subtitle > .rule {
    margin: 2vw 4vw 0 0;
    width: 12vw;
  }
  .section_b > .subtitle > .rule img {
    width: 100%;
  }
  .guide {
    width: 100%;
    flex-wrap: wrap;
    padding: 1vw 0vw 0vw;
  }
  .guide_title.tt02 {
    background: url("../images/bgm_11.jpg") top center no-repeat;
    background-size: cover;
    width: 100%;
    padding: 0;
  }
  .guide_title h2 {
    font-size: 5vw;
    padding: 0vw 10vw 1vw;
    margin: -1vw auto 2vw;
    border-radius: 0 0 6vw 6vw;
    line-height: 9vw;
  }
  .guide_title h2 span {
    font-size: 6vw;
    vertical-align: -0.5vw;
  }
  .guide_title h2 s {
    font-size: 5vw;
  }
  .guide .item {
    width: 100%;
    padding: 0 4vw 0;
  }
  .guide .item img {
    width: 100%;
  }
  .guide .item a {
    display: contents;
  }
  .guide .item:nth-child(2) {
    display: flex;
    justify-content: space-around;
    padding: 2vw 3vw 0vw;
  }
  .guide .item .small {
    width: 48%;
  }

  .blk_sp {
    margin-top: 0;
  }
  .block_sp3 {
    padding-bottom: 0px;
  }
  .guide.event {
    width: 100%;
    margin: -1vw 0;
  }
  .guide > .event_scene {
    width: 100%;
    height: 20vw;
  }
  .section_a .guide .evimg:nth-child(2) {
    width: 100%;
  }
  .section_a .guide > .evimg {
    padding: 0;
  }
  .A8.P5-1 > .guide_title,
  .A9.P5-2 > .guide_title,
  .A10.P5-3 > .guide_title,
  .A11.P6-1 > .guide_title,
  .A12.P6-2 > .guide_title {
    width: 100%;
    border-width: medium;
  }
  .A11.P6-1 > .guide > .guide_title,
  .A12.P6-2 > .guide > .guide_title {
    padding: 0;
    margin: 0 auto;
    width: 100%;
    text-align: center;
  }
  .A11.P6-1 > .guide > .guide_title br,
  .A12.P6-2 > .guide > .guide_title br {
    display: none;
  }
  .A11.P6-1 > .guide > .guide_title h2,
  .A12.P6-2 > .guide > .guide_title h2 {
    border-radius: 0 0 6vw 6vw;
    padding: 0 10vw 1vw;
    line-height: 9vw;
  }
  .A8.P5-1 > .guide,
  .A9.P5-2 > .guide,
  .A10.P5-3 > .guide,
  .A11.P6-1 > .guide,
  .A12.P6-2 > .guide {
    width: 100%;
    padding: 0 2vw 2vw;
    box-shadow: 0px 1vw #65002d;
    border-width: medium;
  }
  .A9.P5-2 > .guide,
  .A10.P5-3 > .guide {
    margin: 0 auto 3vw;
  }
  .A11.P6-1 > .guide,
  .A12.P6-2 > .guide {
    padding: 0 2vw 4vw;
  }
  .A13.P6-3 > .guide .item {
    padding: 0;
  }
  .A8.P5-1 > .guide .item:nth-child(2),
  .A9.P5-2 > .guide .item:nth-child(2),
  .A10.P5-3 > .guide .item:nth-child(2),
  .A11.P6-1 > .guide .item:nth-child(2),
  .A12.P6-2 > .guide .item:nth-child(2),
  .A13.P6-3 > .guide .item:nth-child(2) {
    display: flex;
    justify-content: space-around;
    padding: 2vw 0vw 0vw;
  }
  .A11.P6-1 > .guide > .item,
  .A12.P6-2 > .guide > .item {
    padding: 0;
  }
  .A11.P6-1 > .guide > .guide_title .imgbox,
  .A12.P6-2 > .guide > .guide_title .imgbox {
    width: 62%;
    margin: 0 auto;
  }
  .A13.P6-3 > .notice p {
    font-size: 4.5vw;
  }

  .section_b > .guide {
    padding: 0 0 4vw;
  }
  .section_b > .guide > .item:nth-child(1) {
    margin-top: -1vw;
  }
  .section_b > .guide .item:nth-child(2),
  .section_b > .guide .item:nth-child(3) {
    width: 50%;
    padding: 0;
  }
  .section_b > .guide:nth-child(3) > .item,
  .B3 > .section_b > .guide > .item,
  .B4 > .section_b > .guide > .item {
    width: 100%;
  }
  .B4 > .section_b > .guide > .item {
    width: 100%;
  }
  .promotion_b > .titleC > .rule {
    width: 12vw;
    top: 1vw;
    right: 4vw;
  }
  .promotion_b > .titleC > .rule img {
    width: 100%;
  }

  .round_5p {
    width: 100%;
    margin: 0 auto;
  }
  .special_5p_1 {
    margin: 0 auto;
  }
  .hightlight_5p ul {
    margin: 0 0;
  }
  .special_5p_1 .title_AA {
    height: auto;
    position: relative;
  }
  .special_5p_1 .title_AA h2 {
    font-size: 5vw;
    padding: 2vw;
    width: 96%;
    left: 2vw;
    border-radius: 0;
  }
  .special_5p_1 .hightlight_5p ul li:first-child {
    width: 100%;
  }
  .crosswise_3p.area01,
  .crosswise_3p.area02 {
    background: none;
    margin: 1vw auto 0;
  }
  .slickbg.slick3item {
    margin: 3vw auto 0;
  }

  /* block_1 m */
  .block_1 > .titleC h2,
  .block_2 > .titleC h2,
  .block_3 > .titleC h2,
  .block_4 > .titleC h2,
  .block_5 > .titleC h2,
  .block_6 > .titleC h2,
  .block_7 > .titleC h2 {
    padding: 16.5vw 0 3.3vw;
    font-size: 8vw;
  }
  .section_f > .banner {
    padding: 0;
  }
  .block_1 > .promotion_f > .section_f .rectangle {
    margin: 0 auto 0vw;
    padding: 0 0 3vw;
  }
  .block_1 > .promotion_f > .section_f .rectangle:last-child {
    padding: 0;
  }
  /* block_2 m */
  .block_2 > .section_bg > .titleCsub {
    padding-left: 0vw;
  }
  .block_2 .titleCsub h3 {
    font-size: 6vw;
    padding: 2vw 0 0 12vw;
    margin: 0;
  }
  .block_2 .titleCsub h3 b {
    font-size: 8vw;
  }
  .block_2 .rule {
    margin: 1vw 4vw 0 0;
    width: 12vw;
    padding-top: 0;
  }
  .block_2 .rule img {
    width: 100%;
  }
  .block_2 > .promotion_g > .section_g > .logo_5pcs ul li .ribbon:after {
    display: none;
  }
  .block_2 > .promotion_g > .section_g > .logo_5pcs ul li .ribbon {
    border-radius: 0 0 6vw 6vw;
  }

  /* LOGO */
  .block_2 .various_5p.logo_5pcs li:nth-child(1) {
    width: 46vw;
  }
  .block_2 .various_5p ul li:first-child a {
    flex-wrap: wrap;
  }
  /* LOGO///END */

  /* block_5 */
  .block_5 > .section_bg > .titleCsub:nth-child(3),
  .block_5 > .section_bg > .titleCsub:nth-child(5) {
    margin: 4vw auto 0;
  }
}
/* -- new此封新增m版///END -- */

/* --- B區優惠 --- */
/* --- 基礎設定 --- */
:root {
  --main-red: #ff0033;
  --bg-highlight: #ffeb3b;
  --text-black: #000;
  --border-color: #000000;
  --pill-gradient-start: #ff4d6d;
  --pill-gradient-end: #ff0033;
}

/* --- 容器 --- */
.promo-container {
  max-width: 1200px;
  margin: 0 auto;
  background: #fff;
  padding: 20px 10px;
  border-radius: 20px;
  box-shadow: 0 5px 0px rgb(9 117 79), 0 -3px 0px rgb(138 209 179);
  border: solid 2px black;
}

/* --- 通用元件樣式 --- */
/* 紅色膠囊標籤 */
.badge {
  display: inline-block;
  background: #f44862;
  color: white;
  padding: 0px 50px;
  border-radius: 36px;
  font-weight: bold;
  font-size: 2rem;
  border: 2px solid black;
  white-space: nowrap;
  line-height: 2.5rem;
}

.badge i {
  font-style: italic;
  margin-left: -7px;
  font-size: 2.5rem;
  vertical-align: text-top;
}

/* 紅色強調文字 */
.highlight-red {
  color: var(--main-red);
  font-weight: 600;
  font-size: 4rem;
  margin: -12px 2px;
}

/* 價格小字 */
.highlight-red s {
  font-size: 2rem;
  text-decoration: auto;
  vertical-align: middle;
}

/* 黃色螢光筆底色效果 */
.highlight-bg {
  background: linear-gradient(to top, var(--bg-highlight) 25%, transparent 25%);
  background-position-y: -4px;
  padding: 0 5px;
  font-weight: 600;
  font-size: 2.8rem;
  color: var(--text-black);
}

/* --- 上半部 (優惠1) --- */
.top-section {
  display: flex;
  gap: 15px;
  padding: 6px 0 8px;
  border-bottom: 1px solid var(--border-color);
  flex-wrap: nowrap;
  align-items: center;
  margin: 0 110px;
}

.top-text {
  font-size: 3.1rem;
  font-weight: 600;
  color: var(--text-black);
  letter-spacing: 2px;
  padding-bottom: 13px;
}

/* --- 下半部 (優惠2,3,4) --- */
.bottom-section {
  display: flex;
  justify-content: space-between;
  padding-top: 20px;
}

.promo-item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  position: relative;
  padding: 0 10px;
}

/* 項目之間的垂直分隔線 */
.promo-item:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 10%;
  height: 80%;
  width: 1px;
  background-color: var(--border-color);
}
.item-title {
  margin: 10px 0;
}
.item-desc {
  font-size: 2.8rem;
  font-weight: 600;
  color: var(--text-black);
  margin: 14px 0 6px;
  display: flex;
  align-items: baseline;
}
.top-section > .forsat {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: 10px;
}
.forsat .line2 {
  font-size: 28px;
  padding-top: 6px;
}
.forsat span.badge {
  background: #173a7d;
  padding: 2px 34px;
}

@media (max-width: 991px) {
  .promo-container {
    width: 88%;
    padding: 3vw 3vw 0vw;
    margin: 0 auto 3vw;
  }
  .top-section {
    justify-content: center;
    padding: 0 0 0.2vw;
    flex-wrap: wrap;
    margin: 0 5vw;
  }
  .badge {
    padding: 0vw 7vw;
    border-radius: 6vw;
    margin: 0;
    font-size: 5vw;
  }
  .badge i {
    font-size: 8vw;
    margin: -2px 2px 0 -2px;
    vertical-align: top;
  }
  .top-text {
    font-size: 7vw;
    margin: -2.5vw auto 0;
    text-align: center;
    padding-bottom: 3vw;
  }
  .highlight-red {
    font-size: 10vw;
  }
  .bottom-section {
    flex-wrap: wrap;
    justify-content: center;
    padding-top: 3vw;
  }
  .promo-item {
    flex-direction: rocolumnw;
    margin: 0 5vw 3vw;
    border-bottom: 1px solid var(--border-color);
    padding-bottom: 3vw;
  }
  .promo-item:last-child {
    border-bottom: none;
    margin-bottom: 0;
  }
  span.highlight-bg {
    font-size: 7vw;
  }
  .item-section {
    display: flex;
    padding: 3vw 0 1vw;
  }
  .item-title {
    margin: 0;
  }
  .item-desc {
    display: inline-flex;
    font-size: 7vw;
    margin: 0vw 0 1vw 1vw;
  }
  .highlight-red {
    font-size: 9vw;
  }
  .highlight-red s {
    vertical-align: middle;
    font-size: 5vw;
  }
  /* 移除原本的垂直分隔線 */
  .promo-item:not(:last-child)::after {
    display: none;
  }
  .top-section > .forsat {
    flex-direction: row;
    padding-bottom: 0;
  }
  .forsat .line2 {
    padding: 0 0 0 2vw;
  }
  .forsat span.badge {
    font-size: 6vw;
    padding: 0.5vw 6vw;
  }
  .alternate li:nth-child(2) {
    order: 6;
  }
  .alternate li:nth-child(3) {
    order: 7;
  }
  .alternate li:nth-child(6) {
    order: 8;
  }
  .alternate li:nth-child(7) {
    order: 9;
  }
}
/* --- B區優惠///END --- */

/* ---firefly--- */
.view {
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 10;
  pointer-events: none;
}
#fireflies {
  display: none;
  pointer-events: none;
  z-index: 10;
  width: 100%;
  height: 100%;
  position: absolute;
  left: 80px;
  top: 150px;
}
#fireflies {
  display: block;
}
@media (max-width: 991px) {
  .view {
    display: none;
  }
}
/* ---firefly///END--- */

/* 發光 */
.glow-png {
  /* 使用 drop-shadow 才能貼合形狀 */
  filter: drop-shadow(0 0 3px #fce350);
  animation: softBlink 5s ease-in-out infinite;
}

@keyframes softBlink {
  0%,
  100% {
    filter: drop-shadow(0 0 3px rgba(255, 215, 0, 0.4));
    opacity: 0.6;
  }
  50% {
    filter: drop-shadow(0 0 8px rgb(250, 226, 91));
    opacity: 0.8;
  }
}
/* 發光///END */

/* ---- 上下飄 ---- */
@keyframes floating {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-20px); /* 向上飄動 20px */
  }
  100% {
    transform: translateY(0px);
  }
}
.floating-balloon {
  animation: floating 6s ease-in-out infinite;
}
/* ---- 上下飄///END ---- */
