@charset "utf-8";
@font-face {
  font-family: ChenYuluoyan-Thin;
  src: url("https://events.eslite.com/font/ChenYuluoyan-Thin.ttf");
}
.subtitle {
  font-family: ChenYuluoyan-Thin;
}
@font-face {
  font-family: GlowSansTC-Compressed-Bold;
  src: url("../font/GlowSansTC-Compressed-Bold.otf");
}
.promo-container {
  font-family: GlowSansTC-Compressed-Bold;
}
@font-face {
  font-family: GlowSansTC-Compressed-ExtraBold;
  src: url("../font/GlowSansTC-Compressed-ExtraBold.otf");
}
.container .badge i,
.container .highlight-red {
  font-family: GlowSansTC-Compressed-ExtraBold;
}

/* 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;
}

/* --- 公版改色 --- */
.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: #f44862; /*桃紅色*/
  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 {
  background: #f4e35e; /*黃色*/
  color: black;
}
.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,
.alternate ul:nth-child(even) li:last-child,
.tabs .tabs-head li,
.half ul,
.quotes li:nth-child(odd) {
  background: #173a7d; /*深藍色*/
}

.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 {
  color: #f4e35e;
}

.quotes li:nth-child(even) {
  background: #039361;
} /*綠色*/
.scene .font p {
  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 {
  object-fit: contain;
}

/* --- 公版調整///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;
}

.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 14px;
  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: 2vw 12vw;
    display: none;
  }
}

/*五品優惠輪播*/
.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: #221510;
}

.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;
  }
}

/**--  menu 通用版  --**/
.menustyle2 {
  width: 150px;
  display: block;
  background: #fffdea;
  z-index: 999;
  height: auto;
  position: fixed;
  top: 100px;
  right: 18px;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  padding: 0;
  overflow: hidden;
  border: 2.5px solid #000;
  -webkit-box-shadow: 4px 4px 0 #000;
  box-shadow: 4px 4px 0 #000;
}
@media screen and (max-width: 991px) {
  .menustyle2 {
    webkit-overflow-scrolling: touch;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -webkit-transition: background-color 1s, opacity 1s, visibility 1s;
    transition: background-color 1s, opacity 1s, visibility 1s;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    padding: 1vw 1vw;
    overflow-x: auto;
    white-space: nowrap;
    border: unset;
    background-color: #e6332f;
    top: 0;
    left: 0;
  }
  .menustyle2.show {
    opacity: 1;
    visibility: visible;
  }
  .menustyle2::-webkit-scrollbar {
    display: none;
  }
}
.menustyle2 .nav-pills .nav-link {
  border-radius: 0;
}
.menustyle2 .nav-link:focus,
.menustyle2 .nav-link:hover {
  background: #f5e25f;
  color: #e6332f;
}
@media screen and (max-width: 991px) {
  .menustyle2 .nav-link:focus,
  .menustyle2 .nav-link:hover {
    background: unset;
    color: unset;
  }
}
.menustyle2 ul {
  width: 100%;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  padding: 0;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
@media screen and (max-width: 991px) {
  .menustyle2 ul {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
}
.menustyle2 li {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  border-bottom: 0.5px solid #e6332f;
  -webkit-transform: scale(1);
  transform: scale(1);
}
@media screen and (max-width: 991px) {
  .menustyle2 li {
    width: auto;
    font-size: 20px;
    color: #fff;
    border-right: 0.5px solid rgba(255, 255, 255, 0.5647058824);
    border-bottom: unset;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
  }
}
@media screen and (max-width: 450px) {
  .menustyle2 li {
    -webkit-box-flex: 0;
    -ms-flex-positive: 0;
    flex-grow: 0;
  }
}
.menustyle2 li:nth-last-child(1) {
  border-bottom: unset;
  border-right: unset;
}
.menustyle2 a {
  text-align: center;
  margin: 0 auto;
  text-decoration: none;
  font-size: 16px;
  color: #f44862;
  letter-spacing: 1px;
  width: 100%;
  height: 100%;
  line-height: 1.3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 6px 6px;
  border-radius: 0;
}
@media screen and (max-width: 991px) {
  .menustyle2 a {
    font-size: 1.1rem;
    letter-spacing: 0px;
    font-weight: 700;
    color: #fff;
    padding: 0.7em 1em;
  }
}
.menustyle2 .active {
  width: 100%;
  height: 100%;
  border-radius: 0;
  background: #f5e25f !important;
  color: #e6332f !important;
  border-radius: 0;
}
.menustyle2 .menutitle a,
.menustyle2 .menutitle a:hover {
  color: #fff;
  background: #f44862;
}
@media screen and (max-width: 991px) {
  .menustyle2 .menutitle a,
  .menustyle2 .menutitle a:hover {
    background: rgb(156.2231759657, 21.7811158798, 18.7768240343);
  }
}
.menustyle2 .showByDate {
  width: 100%;
}
.menustyle2 .showByDate .nav-item {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.menustyle2 .nav-item-50 {
  width: 50%;
}
.menustyle2 .nav-item-50:nth-child(even) {
  border-left: 0.5px solid #e6332f;
}
@media screen and (max-width: 991px) {
  .menustyle2 br {
    display: none;
  }
}
.menustyle2 .showByDate {
  border-bottom: 0.5px solid #e6332f;
}

/**--  menu 手機版下拉選單  --**/
#MobileMenu {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
  padding: 0px;
  background: #f44862;
  -webkit-transition: background-color 1s, opacity 1s, visibility 1s;
  transition: background-color 1s, opacity 1s, visibility 1s;
  opacity: 0;
  visibility: hidden;
}
#MobileMenu.show {
  opacity: 1;
  visibility: visible;
}
#MobileMenu > * {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: calc(100% / 3);
}
#MobileMenu > *:nth-of-type(1),
#MobileMenu > *:nth-of-type(2) {
  z-index: 2;
}
#MobileMenu > *:nth-of-type(3),
#MobileMenu > *:nth-of-type(4) {
  z-index: 1;
}
#MobileMenu > *:nth-last-child(1) {
  border-right: 0;
}
#MobileMenu a {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  letter-spacing: 1px;
  color: #fff;
}
#MobileMenu .dropdown-menu {
  background: #fff;
  padding: 0 10px;
}
#MobileMenu .dropdown-menu .dropdown-item {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 0;
  border-bottom: 0.5px solid rgba(0, 0, 0, 0.2509803922);
  color: #212529;
}
#MobileMenu .dropdown-menu > *:nth-last-child(1) .dropdown-item {
  border-bottom: 0px solid transparent;
}

/*--  錨點微調--*/
.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: 30px;
}
.block_sp3 .sp3_item .type {
  background-color: #358d5a;
  border: 2px solid #000;
  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;
  background-color: #358d5a;
  color: #fff;
  text-align: center;
  border: 2px solid #000;
}
@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: #ffd800;
  font-size: 19px;
}
.block_sp3 .sp3_item big {
  color: #ffd800;
  font-size: 29px;
}

.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: cover;
  object-fit: cover;
}
@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;
}
@media screen and (max-width: 991px) {
  .evimg {
    width: 100%;
  }
  .evimg img {
    width: 100%;
  }
}
/*---- new此封新增 ----*/
.kv {
  background: url("../images/kv.jpg") top center no-repeat;
  position: relative;
}
.topbox {
  height: 800px;
}
.top100 {
  position: absolute;
}
.top100.title01 {
  top: 152px;
  left: 216px;
}
.top100.title02 {
  top: 328px;
  left: 216px;
}
.top100.event {
  top: 470px;
  left: 230px;
  animation-name: pulse;
  animation-duration: 2s;
}
.top100.title03 {
  top: 133px;
  left: 342px;
}
.top100.title04_01 {
  top: 231px;
  left: 251px;
  animation-name: tilt-in-top-1;
}
.top100.title04_02 {
  top: 231px;
  left: 427px;
  animation-name: tilt-in-top-1;
  animation-delay: 0.2s;
}
.top100.title04_03 {
  top: 231px;
  left: 603px;
  animation-name: tilt-in-top-1;
  animation-delay: 0.4s;
}
.top100.title04_04 {
  top: 231px;
  left: 779px;
  animation-name: tilt-in-top-1;
  animation-delay: 0.6s;
}
.top100.title_tag {
  top: 28px;
  left: 133px;
}
.top100.title05 {
  top: 138px;
  left: 207px;
  animation-name: tilt-in-top-1;
}
.PART1 > .top100.top100.title_tag {
  left: 82px;
  top: 0px;
}

/*標題動效*/
.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: 752px;
  height: 248px;
  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;
  }
}

/*背景*/
.bg_repeat {
  background: url("../images/bg_repeat.png") top center repeat-y #5492cf;
}
.bg02 {
  background: url("../images/bg_02.png") top center no-repeat;
  position: relative;
  padding: 0 0 23px;
}
.bg02-2 {
  background: url("../images/bg_02_2.png") top center no-repeat;
  position: relative;
  padding: 30px 0 23px;
}
.bg03 {
  background: url("../images/bg_03.png") top center repeat-y;
  position: relative;
  padding: 20px 0 0px;
}
.bg03:after,
.bg07:after,
.bg14:after {
  content: "";
  background: url("../images/bg_04.png") top center no-repeat;
  display: block;
  padding: 12px;
  margin: 0 0 34px;
}
.bg05 {
  background: url("../images/bg_05.png") top center no-repeat;
  position: relative;
  padding: 0 0 34px;
  margin: 0 0 34px;
}
.bg07 {
  background: url("../images/bg_07.png") top center repeat-y;
  position: relative;
  padding: 20px 0 0;
}
.bg07:after {
  background: url("../images/bg_08.png") top center no-repeat;
}
.bg11 {
  background: url("../images/bg_11.png") top center no-repeat;
  position: relative;
  padding: 0 0 58px;
}
.bg14 {
  background: url("../images/bg_14.png") top center repeat-y;
  position: relative;
}
.bg14:after {
  background: url("../images/bg_16.png") top center no-repeat;
}
@media screen and (max-width: 991px) {
  .bg02 {
    padding: 0;
  }
  .bg02-2 {
    background: none;
    padding: 2vw 1vw 0vw;
  }
  .bg03 {
    background: url("../images/bgm_03.jpg") top center repeat-y;
    position: relative;
    padding: 6px 0 0px;
    background-size: contain;
  }
  .bg03:after {
    background: url("../images/bgm_04.jpg") top center no-repeat;
    padding: 5px;
    margin: 0 0 3vw;
    background-size: contain;
  }
  .bg05 {
    background: url("../images/bgm_05.jpg") top center no-repeat,
      url("../images/bgm_06.jpg") top center repeat-y;
    background-size: contain;
    padding: 0;
    margin: 0 0 3vw;
  }
  .bg05:after {
    content: "";
    background: url("../images/bgm_10.jpg") top center no-repeat;
    display: block;
    padding: 10px 0 0px;
    background-size: contain;
  }
  .bg07 {
    background: url("../images/bgm_12.jpg") top center repeat-y;
    background-size: contain;
    padding: 2vw 0 0;
  }
  .bg07:after {
    background: url("../images/bgm_13.jpg") top center no-repeat;
    padding: 0 1vw 2.1vw;
    margin: 0 0 3vw;
    background-size: cover;
  }
  .bg11 {
    background: url("../images/bgm_12.jpg") top center repeat-y;
    background-size: contain;
    padding: 0;
    margin: 0 0 3vw;
  }
  .bg11:after {
    content: "";
    background: url("../images/bgm_13.jpg") top center no-repeat;
    display: block;
    padding: 2.1vw 0 0px;
    background-size: cover;
  }

  .bg14 {
    background: url("../images/bgm_15.jpg") top center repeat-y;
    background-size: contain;
  }
  .bg14:after {
    background: url("../images/bgm_16.jpg") top center no-repeat;
    padding: 2vw 0vw 0.1vw;
    background-size: cover;
  }
}
/* 背景///END */

.guide {
  width: 1200px;
  margin: 0 auto;
  display: flex;
  padding: 38px 0 24px;
}
.A2 > .guide {
  padding: 16px 0 10px;
}
.guide_title {
  width: 1330px;
  margin: 0 auto;
  position: relative;
}
.guide_title.tt02 {
  background: url("../images/bg_06.png") top center no-repeat;
  padding: 0 0 23px;
}
.guide_title.tt03 {
  background: url("../images/bg_10.png") top center no-repeat;
}
.guide_title.tt04 {
  background: url("../images/bg_13.png") top center no-repeat;
  padding: 0 0 23px;
}
.guide_title h2 {
  padding: 28px 0 34px;
  color: #000000;
  font-size: 60px;
  font-weight: 800;
}
.guide_title h2 span {
  font-size: 48px;
}
.guide_title > .rule {
  position: absolute;
  top: 17px;
  right: 100px;
}
.bg11 > .guide {
  padding: 42px 0 0;
  position: relative;
}
.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;
}
.bg14 > .top100ad {
  width: 1200px;
  padding: 30px 0px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
}
.top100ad > .slickbg {
  width: 1236px;
}
.top100ad .slickbg .slick5itam-2 .slick5.showByDate {
  display: none;
}
.section_bg {
  width: 1330px;
  margin: 0 auto;
  padding: 16px 0 28px;
  background: #0773ba;
  border-style: solid;
  border-color: black;
  border-width: 0 2px 2px 2px;
}
.subtitle {
  background: url("../images/subtitle.png") top center no-repeat;
  display: flex;
  justify-content: space-evenly;
  align-items: center;
}
.subtitle h3 {
  border: none;
  font-size: 4.5rem;
  padding: 21px 10px 21px 40px;
  color: #5191cd;
}
.subtitle .more {
  background: url("../images/subtitle_more.png") 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: 86px 0 14px;
  color: #000000;
  font-size: 60px;
  font-weight: 800;
}
.titleCsub {
  margin: 0px auto 0px;
  text-align: center;
}

.titleCsub h3 {
  padding: 8px 150px;
  color: #000000;
  font-size: 40px;
  background: #b8d8eb;
  display: inline-block;
  border-radius: 50px;
  margin: 0 0 10px;
}
.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;
}
/*-- block_0 --*/
.A3 > .guide {
  padding: 20px 0 24px;
}
.A7 > .guide {
  padding: 4px 0 18px;
}
.block_1 .alternate {
  padding: 0 0 10px;
}
.block_1 .alternate ul.pd10 li:first-child {
  width: 536px;
  background: #173a7d;
  height: 280px;
  border-radius: 100px 0 0;
}
.block_1 .alternate ul.pd10 li:last-child {
  width: 536px;
  background: #173a7d;
  height: 280px;
  border-radius: 0 0 100px;
}
.block_1 .alternate ul.pd10 li:nth-child(4),
.block_1 .alternate ul.pd10 li:nth-child(5),
.block_1 .alternate ul.pd10 li:nth-child(8),
.block_1 .alternate ul.pd10 li:nth-child(9) {
  margin: -106px 8px 4px;
}
.block_1 .alternate ul.pd10 span.dis_for_alternate,
.block_3 .quotes ul li span.dis_for_alternate {
  position: absolute;
  top: 0px;
  left: 0px;
  border-radius: 0 0 50px 50px;
  background: #f44862;
  width: 55px;
  height: 80px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
  flex-wrap: wrap;
  flex-direction: column;
  padding: 0 14px 4px;
}
.block_1 .alternate ul.pd10 span.dontshow {
  display: none;
}
.block_1 .alternate ul.pd10 li:last-child .font {
  text-align: left;
  color: #fff;
  margin: auto 0 auto 30px;
}
.block_1 .alternate ul.pd10 li:last-child .font .price {
  color: #fff;
}
.block_1 .alternate ul.pd10 li:last-child .font .price big {
  color: #ead42d;
}
.block_1 .alternate ul.pd10 li:last-child img {
  width: 260px;
  height: 260px;
}
.block_1 .alternate ul.pd10 li:last-child .font h4 {
  font-size: 1.4rem;
  text-align: left;
  line-height: 1.6rem;
}
.block_1 .alternate ul.pd10 li:last-child a {
  flex-wrap: nowrap;
  justify-content: flex-start;
}

.block_1 .titleC:after,
.block_2 .titleC:after,
.block_3 .titleC:after,
.block_4 .titleC:after,
.block_5 .titleC:after,
.block_6 .titleC:after,
.block_7 .titleC:after,
.block_8 .titleC:after,
.block_9 .titleC:after,
.block_10 .titleC:after {
  content: "";
  background-image: url("../images/category_01.png");
  width: 1200px;
  position: absolute;
  top: 0;
  left: 60px;
  height: 160px;
}
.block_2 .section_bg .titleCsub:nth-child(5) {
  margin: 40px 0 0;
}
.block_2 .titleC:after {
  background-image: url("../images/category_02.png");
}
.block_2 h4 {
  color: white;
}

.block_3 .section_bg,
.block_9 .section_bg {
  padding: 12px 0 20px;
}
.block_3 .quotes .price {
  display: none;
}
.block_3 .titleC:after {
  background-image: url("../images/category_03.png");
}
.block_3 .quotes ul li {
  position: relative;
}
.block_3 .quotes ul li:nth-child(even) span.dis_for_alternate {
  right: 0;
  left: unset;
}
.quotes .font h4 {
  color: #f4e35e;
}
.block_4 .section_bg {
  padding: 12px 0 24px;
}
.block_4 .titleC:after {
  background-image: url("../images/category_04.png");
}

.block_5 .subtitle {
  margin: 48px auto 0;
}
.block_5 .section_bg .titleCsub:nth-child(4) {
  padding: 52px 0 0;
}
.block_5 .titleC:after {
  background-image: url("../images/category_05.png");
}

.block_6 .titleC:after {
  background-image: url("../images/category_06.png");
}

.block_7 .rectangle_3p li {
  position: relative;
}
.block_7 .rectangle_3p ul span.dis_for_rectangle_3p {
  position: absolute;
  top: 10px;
  left: 10px;
  border-radius: 50px;
  width: 80px;
  height: 80px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1rem;
  font-weight: 500;
  text-align: center;
  flex-wrap: wrap;
  flex-direction: column;
}
.block_7 .titleC:after {
  background-image: url("../images/category_07.png");
}

.block_8 .titleC:after {
  background-image: url("../images/category_08.png");
}
.block_8 > .section_bg > .tabs > .tabs-item > .hightlight > .scene img,
.block_9 > .section_bg > .tabs > .tabs-item > .hightlight > .scene img {
  object-fit: contain;
}

.block_9 .section_bg .slickbg {
  padding: 0 0 36px;
}
.block_9 .titleC:after {
  background-image: url("../images/category_09.png");
}

.block_10 .title_AA .more {
  font-size: 1.2rem;
  padding: 10px;
  position: absolute;
  right: 116px;
  top: 10px;
  transition-duration: 0.3s;
  background: #173a7d;
  border-radius: 32px;
}
.block_10 .title_AA .more a {
  color: #fff;
}
.block_10 .titleC h2 {
  margin: 40px auto 0;
  padding: 25px 52px 20px;
  background: #f4e45e;
  border: 2px solid;
}
.block_10 .titleC:after {
  background-image: none;
}
.block_11 .subtitle {
  margin: 48px auto -40px;
}

/*---- new此封新增m版 ----*/
@media screen and (max-width: 991px) {
  #TopMenu2 {
    display: none;
  }
  .topbox {
    width: 100%;
    height: 121vw;
  }
  .top100_guide,
  .top100_bookfair {
    display: none;
  }
  .top100.event {
    top: 58vw;
    left: 11vw;
  }
  .event_scene,
  .event.only1 {
    width: 78vw;
    height: 26vw;
  }
  .event.only1 img {
    width: 100%;
  }
  .titleC {
    width: 100%;
    margin: 5vw 0vw 0vw;
    background: linear-gradient(
      to top,
      var(--bg-highlight) 95%,
      transparent 95%
    );
  }
  .block_1 .titleC:after,
  .block_2 .titleC:after,
  .block_3 .titleC:after,
  .block_4 .titleC:after,
  .block_5 .titleC:after,
  .block_6 .titleC:after,
  .block_7 .titleC:after,
  .block_8 .titleC:after,
  .block_9 .titleC:after,
  .block_10 .titleC:after {
    background-size: contain;
    left: -8vw;
    width: 113%;
    background-repeat: no-repeat;
    top: -2vw;
  }
  .block_3 .titleC:after {
    left: -5vw;
  }
  .block_6 .titleC:after,
  .block_8 .titleC:after,
  .block_9 .titleC:after {
    left: 3vw;
  }

  .titleC h2 {
    font-size: 7vw;
    padding: 2.5vw 0 2.3vw;
  }
  .titleCsub h3 {
    font-size: 5vw;
    padding: 1vw 24vw;
    margin: 0;
  }
  .titleC h2 {
    font-size: 7vw;
    padding: 2.5vw 0 2vw;
  }
  .section_bg {
    width: 100%;
    border-radius: 0;
    padding: 1vw 0 2vw;
    border-width: 0 0 1px 0;
  }
  /* block_0 m */
  .guide {
    width: 100%;
    flex-wrap: wrap;
    padding: 1.5vw 1vw 0.5vw;
  }
  .guide_title.tt02 {
    background: url("../images/bgm_11.jpg") top center no-repeat;
    background-size: cover;
    width: 100%;
    padding: 0;
  }
  .guide_title h2,
  .guide_title h2 span {
    font-size: 8vw;
    padding: 4.5vw 0 6.2vw;
  }
  .guide_title > .rule {
    width: 18%;
    right: 2vw;
  }
  .guide_title > .rule img {
    width: 100%;
  }
  .guide_title.tt03 {
    background: url("../images/bgm_17.jpg") top center no-repeat;
    background-size: cover;
    width: 100%;
    padding: 0;
  }
  .A1 .evimg:nth-child(1),
  .A4 .evimg:nth-child(1) {
    padding-bottom: 2vw;
  }
  .A2 > .guide,
  .A3 > .guide,
  .A7 > .guide {
    padding: 1vw 4vw;
  }
  .A2 > .guide .evimg,
  .A3 .evimg:nth-child(1),
  .A5 .evimg:nth-child(1),
  .A5 .evimg:nth-child(2),
  .A7 > .guide .evimg,
  .A7 > .evimg {
    padding-bottom: 1vw;
  }

  .bg11 > .guide {
    padding: 3vw 0 0;
  }
  .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: 1vw 3vw 1vw;
  }
  .guide .item .small {
    width: 48%;
  }
  .guide_title.tt04 {
    background: url("../images/bgm_14.jpg") top center no-repeat;
    background-size: cover;
    width: 100%;
    padding: 0;
  }
  .bg14 > .top100ad {
    width: 100%;
    padding: 4vw;
  }
  .top100ad > .slickbg {
    width: 95vw !important;
  }
  .blk_sp {
    margin-top: 0;
  }
  .block_sp3 {
    padding-bottom: 0px;
  }
  .bg05 > .guide .evimg:nth-child(2) {
    margin: -2vw auto 0;
  }
  .bg05 > .guide .evimg {
    text-align: center;
  }
  .guide.event {
    width: 100%;
    margin: -1vw 0;
  }
  .guide > .event_scene {
    width: 100%;
    height: 20vw;
  }
  .subtitle {
    background-size: 130%;
  }
  .subtitle h3 {
    font-size: 9vw;
    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);
  }
  .block_1 .subtitle {
    margin: 0 auto;
  }
  .block_1 .titleC {
    margin: 0;
  }
  .block_1 .alternate ul.pd10 li:first-child {
    width: 94vw;
    height: auto;
    border-radius: 50px 0 0;
  }
  .block_1 .alternate ul.pd10 li:last-child {
    width: 94vw;
    height: auto;
    border-radius: 0 0 50px;
  }
  .block_1 .alternate ul.pd10 li:nth-child(4),
  .block_1 .alternate ul.pd10 li:nth-child(5),
  .block_1 .alternate ul.pd10 li:nth-child(8),
  .block_1 .alternate ul.pd10 li:nth-child(9) {
    margin: 1vw;
  }
  .block_1 .alternate ul.pd10 span.dis_for_alternate,
  .block_3 .quotes ul li span.dis_for_alternate {
    width: 8vw;
    height: 16vw;
    padding: 0 1vw 1vw;
  }
  .block_1 .alternate ul.pd10 li:last-child img {
    width: 46vw;
    height: 46vw;
    border-radius: 0;
  }
  .block_1 .alternate ul.pd10 li:last-child .font {
    margin: auto 0 auto 4vw;
    padding: 0;
  }
  .block_1 .alternate ul.pd10 li:last-child .font h4 {
    font-size: 1.2rem;
    line-height: 1.4rem;
    padding: 0;
  }
  .block_2 .section_bg .titleCsub:nth-child(4) {
    margin: 3vw 0 0;
  }
  .block_2 .alternate {
    margin: 0 0 8vw;
  }

  .block_4 .section_bg,
  .block_5 .section_bg,
  .block_6 .section_bg,
  .block_7 .section_bg,
  .block_8 .section_bg,
  .block_9 .section_bg,
  .block_10 .section_bg {
    padding: 1vw 0 1vw;
  }
  .block_5 .subtitle {
    margin: 5vw auto 0;
  }
  .block_5 .subtitle h3 {
    padding: 0 0 0 6vw;
    margin-bottom: -12vw;
  }
  .block_5 .titleC .more {
    top: -4vw;
    right: 3vw;
    width: 40vw;
    background-size: contain;
    padding: 2.5vw 2vw;
    font-size: 4vw;
  }

  .block_7 .rectangle_3p ul span.dis_for_rectangle_3p {
    width: 10vw;
    height: 10vw;
    font-size: 3vw;
  }
  .block_10 .titleC {
    background: linear-gradient(
      to top,
      var(--bg-highlight) 55%,
      transparent 55%
    );
    margin: 0vw auto 0;
  }
  .block_10 .titleC h2 {
    padding: 4vw 7vw 3vw;
    font-size: 6vw;
    border: none;
    background: none;
  }
  .block_10 .title_AA .more {
    top: 2vw;
    right: 5vw;
    padding: 1vw 3vw 2vw;
  }
  .block_10 .special_5p_1 .hightlight_5p ul {
    margin: 5vw auto 0;
  }
  .half ul {
    padding: 1vw 0;
  }
  .half ul h3 {
    font-size: 5vw;
  }
  .hightlight,
  .collect_5x6 {
    margin: 0 auto;
  }
  .titleB {
    margin: 5vw auto 0vw;
  }
  .titleB h2 {
    color: #5c35a5;
    letter-spacing: 1vw;
    font-size: 6vw;
  }
  .sports .titleB:first-child {
    margin: 0 auto;
  }
  .sports .titleB h2 {
    letter-spacing: 0vw;
    padding: 1vw 7vw 1vw;
  }
  .sports .titleB h2:before,
  .sports .titleB h2:after {
    width: 4vw;
  }
  .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;
  }
  .block_5 .section_bg .titleCsub:nth-child(4) {
    padding: 8vw 0 0;
  }
  .slickbg.slick3item {
    margin: 3vw auto 0;
  }
}

/* -- 優惠 -- */
/* --- 基礎設定 --- */
: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 20px;
  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: 3rem;
}

.badge i {
  font-style: italic;
  margin-left: -7px;
  font-size: 2.5rem;
  vertical-align: text-top;
}

/* 紅色強調文字 */
.highlight-red {
  color: var(--main-red);
  font-weight: 900;
  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: 900;
  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: 900;
  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: 900;
  color: var(--text-black);
  margin: 14px 0 6px;
  display: flex;
  align-items: baseline;
}
.B1 > .bg07 > .promo-container > .bottom-section,
.B4 > .bg07 > .promo-container > .bottom-section {
  padding-top: 0;
}
.top-section > .forsat {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-bottom: 10px;
}
.forsat .line2 {
  font-size: 34px;
  padding-top: 6px;
}
.B2 > .bg07 > .promo-container > .top-section {
  margin: 0 102px;
}
.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: 8vw;
    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 4vw 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: 8vw;
  }
  .item-section {
    display: flex;
    padding: 3vw 0 1vw;
  }
  .item-title {
    margin: 0;
  }
  .item-desc {
    display: inline-flex;
    font-size: 8vw;
    margin: 0vw 0 1vw 1vw;
  }
  .highlight-red {
    font-size: 10vw;
  }
  .highlight-red s {
    vertical-align: middle;
    font-size: 5vw;
  }
  /* 移除原本的垂直分隔線 */
  .promo-item:not(:last-child)::after {
    display: none;
  }
  .B2 > .bg07 > .promo-container > .top-section {
    margin: 0 auto;
  }
  .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;
  }
  .bg02-2 > .banner.banner_s {
    padding: 1vw 0 8vw;
  }

  .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;
  }
  .block_11 .subtitle h3 {
    padding: 0 0 0 5vw;
  }
  .block_11 .subtitle {
    margin: 5vw 0 -16vw;
  }
}
/* -- 優惠///END -- */
/*---- 新增///END ----*/
