@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@300;400;500;700&family=Roboto:wght@300;400;500;700&display=swap");
*,
*::before,
*::after {
  margin: 0;
  padding: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
button,
textarea,
p,
blockquote,
th {
  font-family: "Roboto", Arial, "Noto Sans TC", "Microsoft JhengHei", sans-serif !important;
}

img,
object,
embed,
video {
  max-width: 100%;
}

.ie6 img {
  width: 100%;
}

body {
  font-size: 15px;
  min-width: 320px;
  overflow-x: hidden;
}

.overflow-x-scroll {
  overflow-x: scroll;
}

.dot-carousel {
  height: 4rem;
  width: 4rem;
  padding: 1rem;
  border-radius: 3rem;
  background-color: #003bff;
}

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: auto;
  }
}
h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.4;
  margin: 0;
  padding: 0;
}

p {
  line-height: 1.4;
  margin-bottom: 0;
}

a {
  text-decoration: none;
  color: inherit;
}

ul,
ol {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

.text-hidden {
  height: 0;
  text-indent: -9999px;
  padding: 0;
  margin: 0;
}

.all-content {
  background-color: #fff;
  position: relative;
  font-size: 1.2em;
  overflow: hidden;
}

.airpods_block {
  padding: 1em 0;
  background-color: #fff35f;
  position: relative;
}
.airpods_block::before {
  content: "";
  display: block;
  position: absolute;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  top: 50%;
  width: 225px;
  height: 100%;
  background: url(../images/flower-left.png) no-repeat left center/contain;
}
.airpods_block::after {
  content: "";
  display: block;
  position: absolute;
  -webkit-transform: translate(-100%, -50%);
          transform: translate(-100%, -50%);
  top: 50%;
  left: 100%;
  width: 225px;
  height: 100%;
  background: url(../images/flower-right.png) no-repeat right center/contain;
}

.product_block {
  width: 90%;
  padding-top: 80px;
  padding-bottom: 60px;
  margin: auto;
}

.b6 {
  margin-top: -1px;
  min-height: 250px;
  position: relative;
  padding-top: 35.5px;
  text-align: center;
}
.b6 > a img {
  width: 50%;
  min-width: 300px;
  max-width: 520px;
  margin-bottom: 10px;
}

.block-5 .col-sm-2 {
  width: 20%;
}

.pathPic {
  background: url(../images/path.png) no-repeat center top/1440px auto;
  height: 100rem;
}

.navbar-pink {
  background: #ec87b5;
}
.navbar-pink .logo {
  max-height: 50px;
}
.navbar-pink .date {
  max-height: 40px;
}

.kv-reflex {
  background: url(../images/kv.png) no-repeat center top/101% auto, url(../images/stripe.png) repeat top/80px auto;
  height: 100vw;
}

.promotion {
  padding: 40px 0;
  text-align: center;
  margin-bottom: 40px;
}
.promotion img {
  max-width: 90%;
}

.tag {
  position: relative;
}
.tag::before {
  content: "";
  display: block;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  top: 5%;
  left: 5%;
  z-index: 99;
  width: 160px;
  max-height: 40%;
  height: 160px;
  background: url(../images/tag.png) no-repeat bottom center/contain;
}

.bg_1 {
  background: #75e5fd;
}
.bg_1 .container {
  background: url(../images/stripe.png) repeat top/80px auto;
  padding-left: 0;
  padding-right: 0;
}

.b1,
.b2,
.b3,
.b4,
.b5 {
  margin-top: -1px;
  background: #f7e4c2;
  padding-top: 40px;
  position: relative;
}
.b1::before,
.b2::before,
.b3::before,
.b4::before,
.b5::before {
  content: "";
  display: block;
  position: absolute;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  top: 0px;
  left: 50%;
  width: 80%;
  height: 10vw;
  min-width: 300px;
  max-width: 800px;
  background: url(../images/title1.png) no-repeat bottom center/contain;
  z-index: 99;
}

.b2,
.b5 {
  background: #1860a1;
}
.b2::before,
.b5::before {
  background: url(../images/title2.png) no-repeat bottom center/contain;
}

.b3 {
  margin-top: 120px;
}
.b3::before {
  background: url(../images/title3.png) no-repeat bottom center/contain;
}

.b4::before {
  background: url(../images/title4.png) no-repeat bottom center/contain;
}

.b5 {
  margin-top: 120px;
  margin-bottom: 120px;
}
.b5::before {
  background: url(../images/title5.png) no-repeat bottom center/contain;
}

.b6 {
  padding-top: 15vw;
  background: #75e5fd;
  padding-bottom: 120px;
}

.downloadApp {
  margin: auto;
  max-width: 1080px;
}

@media screen and (min-width: 576px) {
  .kv-reflex {
    height: 610.9px;
  }
  .deco-on-product {
    position: relative;
  }
  .deco-on-product ::before {
    content: "";
    display: block;
    position: absolute;
    -webkit-transform: translate(-50%, -100%);
            transform: translate(-50%, -100%);
    top: 0px;
    left: 50%;
    width: 200px;
    height: 150px;
    max-width: 80%;
    background: url(../images/deco-1-1.png) no-repeat bottom center/contain;
    z-index: 99;
  }
  .deco-1-3 ::before {
    max-width: 70%;
    background: url(../images/deco-1-3.png) no-repeat bottom center/contain;
  }
  .deco-2-9 ::before {
    -webkit-transform: translate(-100%, -100%);
            transform: translate(-100%, -100%);
    max-width: 40%;
    left: 110%;
    background: url(../images/deco-2-9.png) no-repeat bottom center/contain;
  }
  .deco-title-2-1 ::before {
    left: 10%;
    max-height: 80%;
    background: url(../images/deco-bg-1.png) no-repeat bottom center/contain;
  }
  .deco-title-2-1 ::after {
    content: "";
    display: block;
    position: absolute;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    top: 20%;
    left: 90%;
    width: 200px;
    height: 200px;
    max-height: 80%;
    background: url(../images/deco-title2.png) no-repeat bottom center/contain;
    z-index: 99;
  }
}
@media screen and (min-width: 768px) {
  .kv-reflex {
    height: 804.4px;
  }
}
@media only screen and (min-width: 992px) {
  .kv-reflex {
    height: 1054.8px;
  }
}
@media only screen and (min-width: 1200px) {
  .kv-reflex {
    height: 1400.5px;
  }
}
@media only screen and (min-width: 1440px) {
  .container {
    max-width: 1440px;
    padding-left: 0;
    padding-right: 0;
  }
  .kv-reflex {
    height: 1662px;
  }
  .bg_1 .container {
    border-top: 0;
    border-bottom: 0;
  }
  .bg_2 {
    background: url(../images/bg2-left.png) repeat-y calc(50% - 820px) top/476px auto, url(../images/bg2-right.png) repeat-y calc(50% + 820px) bottom/476px auto, #288de0;
  }
  .bg_2 .container {
    border-top: 0;
    border-bottom: 0;
  }
}
@media only screen and (max-width: 912px) {
  .kv {
    height: 72.45vw;
    background-size: 136vw;
  }
  .kv a {
    width: 33.4vw;
    height: 10.4vw;
    margin-left: -18.7vw;
  }
  .product_block {
    padding-top: 40px;
  }
}
.btn_block {
  text-align: center;
}
.btn_block img {
  width: 90%;
  max-width: 200px;
}

@media only screen and (max-width: 767px) {
  .all-content {
    font-size: 1.1em;
  }
  .block_title h3 {
    font-size: 1.4em;
    padding: 10px 52px;
  }
  .block_title h3::before {
    width: 32px;
    height: 32px;
    left: 10px;
  }
  .product_block {
    padding-bottom: 60px;
  }
  .block_style::before {
    height: 40px;
    background: repeating-linear-gradient(90deg, #edf1ff, #edf1ff 8px, transparent 8px, transparent 14px);
  }
}
@media only screen and (max-width: 575px) {
  .block-5 .col-sm-2 {
    width: 50%;
  }
  .all-content {
    font-size: 1.05em;
  }
  .airpods_block::before {
    content: "";
    display: block;
    position: absolute;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    top: 50%;
    width: 225px;
    height: 50%;
    background: url(../images/flower-left.png) no-repeat left center/contain;
  }
  .airpods_block::after {
    content: "";
    display: block;
    position: absolute;
    -webkit-transform: translate(-100%, -50%);
            transform: translate(-100%, -50%);
    top: 50%;
    left: 100%;
    width: 225px;
    height: 50%;
    background: url(../images/flower-right.png) no-repeat right center/contain;
  }
  .bg_3 {
    margin-top: -3rem;
    border-radius: 40px 40px 0 0;
    position: relative;
    background: url(../images/bg_footer.png) repeat-y center/100% auto, #522e9c;
    display: block;
    z-index: 99;
  }
  .bg_3 .footer_title {
    max-width: 200px;
    min-width: 100px;
  }
  .product_block {
    padding-top: 20px;
  }
  .block_title img {
    max-height: 95px;
    margin-bottom: -3rem;
  }
  .block_title h2 {
    font-size: 1.5rem;
  }
  .block_title h4 {
    font-size: 1.25rem;
  }
  .block_title.brands img {
    margin-bottom: -50px;
  }
  .block_style {
    padding: 0px 20px 0px 20px;
  }
  .container {
    padding: 0;
  }
  .kv {
    height: 122.4vw;
    background: url(../images/kv.png) no-repeat center/cover;
  }
  .kv a {
    width: 48vw;
    height: 14vw;
    margin-left: -27vw;
    bottom: 10%;
  }
  .downloadApp {
    text-align: center;
  }
}