@charset "UTF-8";

html {
  font-size: 10px;
  -webkit-text-size-adjust: none;
  color: #3c3535;
  line-height: 1.25em;
  letter-spacing: 0.0625em;
}

@media screen and (max-width: 1200px) {
  html {
    font-size: 0.8333333vw;
  }
}

@media screen and (max-width: 800px) {
  html,
  body {
    font-size: 1.3333vw;
  }
}

body {
  background: #faf6f3;
  font-family: "sofia-pro", "Noto Sans TC", "微軟正黑體", "Microsoft JhengHei", sans-serif;
}

img {
  position: relative;
  display: block;
  border: 0;
  width: 100%;
  height: auto;
}
.ta-c {
  text-align: center;
}

.fs25 {
  font-size: 2.5rem;
}
.fs30 {
  font-size: 3rem;
}
.fs35 {
  font-size: 3.5rem;
}
.fs40 {
  font-size: 4rem;
}
.fs50 {
  font-size: 5rem;
}
.fs65 {
  font-size: 6.5rem;
}

.lh125 {
  line-height: 1.25em;
}
.lh13 {
  line-height: 1.3em;
}
.lh15 {
  line-height: 1.5em;
}

.fw-500 {
  font-weight: 500;
}
.fw-bold {
  font-weight: bold;
}
.fw-black {
  font-weight: 900;
}

.mb56 {
  margin-bottom: 5.6rem;
}

.wrap {
  position: relative;
  display: block;
  width: 100%;
  overflow: hidden;
  background-color: #e4002b;
  /* background: url(../images/bg.png);
  background-size: 100% auto; */
  max-width: 120rem;
  min-height: 100vh;
  margin: 0 auto;
}

.wrap::after {
  left: initial;
  right: 0;
}

header {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  z-index: 99;
  height: 3.6rem;
  background: #c6220f;
  max-width: 100%;
  box-shadow: 1rem 1rem 1.3rem rgb(0 0 0 / 9%);
  -webkit-box-shadow: 1rem 1rem 1.3rem rgb(0 0 0 / 9%);
  -moz-box-shadow: 1rem 1rem 1.3rem rgba(0, 0, 0, 0.09);
}

/* header .logo {
  width: 9.1rem;
  position: absolute;
  left: 11.2rem;
  top: 3.5rem;
} */

section {
  position: relative;
  z-index: 2;
}

.kv {
  margin-top: 3rem;
  /* padding-bottom: 5rem; */
}
/* .kv-bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 75.1rem;
  background: url(../images/kv_dot.png);
  background-size: 100% auto;
  z-index: 0;
} */
.kv-main {
  margin: 0 auto;
  width: 100%;
  /* width: 115.4rem;
  left: 0.5rem; */
}
.kv-main-text {
  position: absolute;
  top: 1.5%;
  right: 1.5%;
  font-size: 2rem;
  letter-spacing: 0.0625em;
  transform-origin: 0 50%;
  font-weight: bold;
  color: #000;
}

.kv-btns {
  margin-top: 3.5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}
.kv-btns > a {
  margin: 0 1.2rem;
}
.share-fb {
  width: 21.1rem;
  display: inline-block;
  position: relative;
}

.share-line {
  width: 22.3rem;
  display: inline-block;
  position: relative;
}

.coupon {
  padding-top: 3.2rem;
  /* padding-bottom: 10rem; */
}
.coupon-box {
  width: 93rem;
  margin: 0 auto;
  margin-bottom: 2.5rem;
}
a.coupon-box {
  display: block;
}
.coupon-box .coupon-title {
  position: relative;

  width: 100%;
  height: 13.1rem;
  background: url(../images/btn.png);
  background-size: cover;
  margin: 0 auto;
  line-height: 13.1rem;
  border-radius: 2rem;
  box-shadow: 0rem 1rem 2rem rgb(0 0 0 / 24%);
  -webkit-box-shadow: 0rem 1rem 2rem rgb(0 0 0 / 24%);
  -moz-box-shadow: 0rem 1rem 2rem rgba(0, 0, 0, 0.24);
  /*padding-top: 3.4rem;*/
  cursor: pointer;
}
.coupon-box .coupon-title p {
  font-size: 5.6rem;
  font-weight: bold;
  padding-left: 5rem;
  transform: scaleX(0.9);
  transform-origin: 0 50%;
  color: #d70c19;
  letter-spacing: 0.0625em;
  /* text-shadow: 0em 0.1em rgb(0 0 0 / 0.1); */
}
.coupon-box .coupon-title p span {
  font-size: 3.5rem;
}
.coupon-box .coupon-title b {
  font-size: 1.65em;
  font-weight: 900;
  line-height: 6.3rem;
}

.coupon-box .coupon-title::after {
  content: "";
  width: 3.9rem;
  height: 6.9rem;
  position: absolute;
  right: 3.9rem;
  top: 3.4rem;
}
.coupon-box.arrow .coupon-title::after {
  background: url(../images/arrow.png);
  background-size: cover;
}
.coupon-box.arrow_white .coupon-title::after {
  background: url(../images/arrow_white.png);
  background-size: cover;
}
/* .coupon-box .coupon-title::after {
  background: url(../images/arrow.png);
}
.coupon-box .coupon-title::after {
  background: url(../images/arrow_white.png);
} */

.coupon-box:nth-child(even) .coupon-title {
  background-image: url(../images/btn2.png);
}
/* .coupon-box:nth-child(6) .coupon-title {
  background-image: url(../images/btn3.png);
} */
.coupon-box:nth-child(even) .coupon-title p {
  color: #fff;
  text-shadow: none;
}
/* .coupon-box:nth-child(even) .coupon-title::after {
  background-image: url(../images/arrow2.png);
  width: 3.5rem;
  height: 6.2rem;
} */
.coupon-box:nth-child(6) .coupon-title::after {
  /* background-image: url(../images/arrow.png); */
  /* width: 3.5rem;
  height: 6.2rem; */
}

.coupon-box.active .coupon-title::after {
  width: 7.4rem;
  height: 4.2rem;
  /* background-image: url(../images/arrow_down.png); */
  right: 6.4rem;
  top: 4.8rem;
}

.coupon-box.arrow.active .coupon-title::after {
  background-size: cover;
  background-image: url(../images/arrow_down.png);
}

.coupon-box.arrow_white.active .coupon-title::after {
  background-size: cover;
  background-image: url(../images/arrow_white_down.png);
}

/* .coupon-box.active:nth-child(even) .coupon-title::after {
  background-image: url(../images/arrow_down2.png);
  width: 6.2rem;
  height: 3.5rem;
} */

.coupon-box .coupon-body {
  background-color: #fff;
  border-radius: 2rem;
  overflow: hidden;
  padding-top: 13.1rem;
  margin-top: -13.1rem;
  box-shadow: 0rem 1rem 2rem rgb(0 0 0 / 24%);
  -webkit-box-shadow: 0rem 1rem 2rem rgb(0 0 0 / 24%);
  -moz-box-shadow: 0rem 1rem 2rem rgba(0, 0, 0, 0.24);
  display: none;
}
.coupon-detail {
  display: flex;
  flex-wrap: wrap;
  padding-top: 5rem;
  padding-left: 4rem;
  padding-right: 4rem;
  justify-content: space-between;
}
.coupon-detail a {
  width: 39rem;
  position: relative;
  display: block;
  margin-bottom: 5rem;
  /* box-shadow: 0rem 1.3rem 0.8rem rgb(0 0 0 / 18%); */
  /*    -webkit-box-shadow: 0rem 1rem 2rem rgb(0 0 0 / 18%);
    -moz-box-shadow: 0rem 1rem 2rem rgba(0,0,0,0.18);*/
}

.coupn-memo {
  background: #eaeaea;
  padding: 5rem 4rem;
}
.coupn-memo p {
  font-size: 1.7rem;
  line-height: 1.5em;
  font-weight: bold;
  margin-bottom: 1em;
}
.coupn-memo li {
  font-size: 1.5rem;
  line-height: 1.5em;
  font-weight: 500;
  font-family: "Noto Sans TC", "微軟正黑體", "Microsoft JhengHei", sans-serif;
  text-indent: -1em;
  margin-left: 1em;
}
.coupn-memo li::before {
  content: "・";
  color: #e4002b;
}
.foot {
  width: 100%;
}
.foot div {
  display: flex;
  justify-content: flex-end;
  width: 115rem;
  margin: 0 auto;
}
.foot span {
  width: 3.2rem;  /* 32px */
  height: 4.8rem; /* 48px */
  background-color: #fff;
  margin-left: 3.2rem;
}

@media screen and (max-width: 800px) {
  header {
    height: 2.25rem;
  }

  /* header .logo {
    width: 8.9rem;
    left: 7rem;
    top: 1rem;
  } */

  .wrap {
    max-width: 75rem;
  }
  .kv-main-text {
    
  }
  /* .wrap::before,
  .wrap::after {
    width: 4.8rem;
  } */

  /* .kv-main {
    width: 74.3rem;
  } */

  .kv {
    margin-top: 2rem;
  }
  .kv-btns {
    margin-top: 2.5rem;
  }
  .kv-btns > a {
    margin: 0 1.2rem;
  }
  .share-fb {
    width: 19.8rem;
  }

  .share-line {
    width: 20.1rem;
  }
  .coupon {
    /* padding-bottom: 7rem; */
  }
  .coupon-box {
    width: 56.3rem;
    margin-bottom: 2.3rem;
  }
  .coupon-box .coupon-title {
    height: 8.2rem;
    line-height: 8.2rem;
    border-radius: 1.25rem;
  }
  .coupon-box .coupon-title p {
    font-size: 3.5rem;
    padding-left: 3rem;
    text-shadow: 0em 0.1em rgb(0 0 0 / 0.1);
  }
  .coupon-box .coupon-title p span {
    font-size: 2.2rem;
  }
  .coupon-box .coupon-title b {
    font-size: 1.65em;
    line-height: 6.3rem;
  }

  .coupon-box .coupon-title::after {
    width: 2.4rem;
    height: 4.4rem;
    right: 1.9rem;
    top: 2.1rem;
  }
  /* .coupon-box:nth-child(even) .coupon-title::after {
    background-image: url(../images/arrow2.png);
    width: 2.2rem;
    height: 3.9rem;
  } */

  .coupon-box.active .coupon-title::after {
    width: 4.9rem;
    height: 2.7rem;
    right: 4rem;
    top: 2.9rem;
  }

  .coupon-box.active:nth-child(even) .coupon-title::after {
    width: 3.9rem;
    height: 2.2rem;
  }

  .coupon-box .coupon-body {
    border-radius: 1.25rem;
    padding-top: 8.2rem;
    margin-top: -8.2rem;
    box-shadow: 0rem 1rem 2rem rgb(0 0 0 / 24%);
    -webkit-box-shadow: 0rem 1rem 2rem rgb(0 0 0 / 24%);
    -moz-box-shadow: 0rem 1rem 2rem rgba(0, 0, 0, 0.24);
    display: none;
  }
  .coupon-detail a {
    width: 46rem;
    position: relative;
    display: block;
    margin-bottom: 5.4rem;
    box-shadow: 0rem 1.3rem 0.8rem rgb(0 0 0 / 18%);
  }
  .coupn-memo {
    padding: 3rem 2rem;
  }
  .coupn-memo p {
    font-size: 1.7rem;
    line-height: 1.5em;
  }
  .coupn-memo li {
    font-size: 1.25rem;
    line-height: 2.1rem;
  }
  .foot div {
    width: 68rem;
  }
}
