/*
@font-face {
    font-family: 'BertholdAkzidenzGroteskBE';
    src: url('../fonts/en/BertholdAkzidenzGroteskBE-Ita.woff2') format('woff2'),
        url('../fonts/en/BertholdAkzidenzGroteskBE-Ita.woff') format('woff');
    font-weight: normal;
    font-style: italic;
    font-display: swap;
}

@font-face {
    font-family: 'BertholdAkzidenzGroteskBE';
    src: url('../fonts/en/BertholdAkzidenzGroteskBE.woff2') format('woff2'),
        url('../fonts/en/BertholdAkzidenzGroteskBE.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'BertholdAkzidenzGroteskBE';
    src: url('../fonts/en/BertholdAkzidenzGroteskBE-Bold.woff2') format('woff2'),
        url('../fonts/en/BertholdAkzidenzGroteskBE-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}
*/
/*
@font-face {
    font-family: 'SFProDisplay';
    src: url('../fonts/3/SFProDisplay-Regular.woff2') format('woff2'),
        url('../fonts/3/SFProDisplay-Regular.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'SFProDisplay';
    src: url('../fonts/3/SFProDisplay-Bold.woff2') format('woff2'),
        url('../fonts/3/SFProDisplay-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'BertholdAkzidenzGroteskBE';
    src: url('../fonts/3/BertholdAkzidenzGroteskBE.woff2') format('woff2'),
        url('../fonts/3/BertholdAkzidenzGroteskBE.woff') format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'BertholdAkzidenzGroteskBE';
    src: url('../fonts/3/BertholdAkzidenzGroteskBE-Bold.woff2') format('woff2'),
        url('../fonts/3/BertholdAkzidenzGroteskBE-Bold.woff') format('woff');
    font-weight: bold;
    font-style: normal;
    font-display: swap;
}
*/
@font-face {
  font-family: "Supreme LL";
  src: url("../fonts/en/SupremeLL-Light.woff2") format("woff2"), url("../fonts/en/SupremeLL-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: "Supreme LL";
  src: url("../fonts/en/SupremeLL-Medium.woff2") format("woff2"), url("../fonts/en/SupremeLL-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}
.loading {
  opacity: 0;
}

* {
  -webkit-text-size-adjust: none;
}

button {
  -webkit-appearance: none;
  border-radius: 0px;
}

body, html {
  margin: 0px;
  padding: 0px;
}

img, a {
  border: 0px;
  outline: 0;
}

.cssClear {
  clear: both;
}

.cssHide {
  display: none;
}

.cssFull {
  width: 100%;
}

.cssPage { /*padding-top:20vh*/ }

.cssFrame {
  padding: 0rem 0 0 0;
}

.notval {
  opacity: 0.7;
}

.mainbg {
  display: none;
}

.loading {
  background: rgba(0, 0, 0, 0.75);
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  z-index: 120;
}

html {
  font-size: 10px;
}

body {
  text-align: center;
  color: #ffffff;
  font-family: "Supreme LL";
  font-weight: normal;
  min-height: 100vh;
  background: #d1000c;
  /*
  background:url('../20240921/mobile_bg_otherpage.jpg') top center no-repeat #000000;
  background-size:contain;
  */
}

/*
body.home {background-image:url('../20240921/mobile_bg_homepage.jpg') ;}
*/
.producttitle {
  font-size: 3.4rem;
}

.headtitle {
  display: block;
  border-width: 0 0 1px;
  border-style: solid;
  border-color: #ffffff;
  font-size: 3.4rem;
  padding: 0 0 5px;
}

.total {
  border-width: 1px 0 0;
  border-style: solid;
  border-color: #ffffff;
  display: block;
  padding: 10px 0 0;
}

.pinfo {
  padding: 5px 0 15px;
}

.packagerow {
  padding: 0 0 20px;
}

.mainbg {
  position: absolute;
  z-index: -1;
  top: 0px;
  left: 0px;
  width: 100%;
}
.mainbg img {
  width: 100%;
}

body.tc {
  font-family: "Noto Sans TC", sans-serif;
  font-optical-sizing: auto;
}

body.sc {
  font-family: "Noto Sans SC", sans-serif;
  font-optical-sizing: auto;
}

.cssMasterpanelOut {
  min-height: 100vh;
  height: 100%;
  background-size: contain;
  background-position: 0% 12rem;
}

.cssMasterpanel {
  height: 100%;
  position: relative;
  text-align: center;
  width: 100%;
  max-width: 1080px;
  margin: 0 auto;
}

.cssContent {
  max-width: 768px;
  margin: 0 auto;
}

.headline {
  font-family: "Supreme LL";
  font-weight: bold;
}

body.tc .headline {
  font-family: "Noto Sans TC", sans-serif;
}

body.sc .headline {
  font-family: "Noto Sans SC", sans-serif;
}

.cssSubtitle {
  font-size: 5rem;
}
.cssSubtitle.smallersize {
  font-size: 4rem;
}

.schlink {
  text-align: right;
}

.cssTopbar {
  position: fixed;
  top: 0px;
  left: 0px;
  width: 100%;
  z-index: 100;
  /* background-color: #111d37; */
  /* background:url('../images/1101/long_top2.png') top center repeat-x;
   background-color:#071434;*/
  overflow: hidden;
  /*
      &::after {position:absolute;content:" ";width:100%;height:2px;background:#70090a;bottom:2px;left:0px;z-index:2;}
    */
}

.scroll .cssTopbar {
  background: #d1000c;
}

.cssDis {
  color: #ffffff;
  font-size: 2.4rem;
}

.cssIntro {
  min-height: 40rem;
}

.cssIntro .banner {
  margin: 0 -35px;
}
.cssIntro .banner img {
  width: 100%;
}

.cssIntro .text {
  color: #ffffff;
  padding: 0rem 0 0;
}
.cssIntro .text .bold {
  font-weight: bold;
}

.cssIntro .banners {
  display: flex;
  padding: 20px 0;
  justify-content: center;
  flex-wrap: wrap;
}
.cssIntro .banners .col {
  max-width: 180px;
  margin: 0 40px;
}
.cssIntro .banners .col img {
  width: 100%;
}
.cssIntro .banners .col .name {
  padding: 10px 0;
}
.cssIntro .banners .col .pics {
  padding: 20px 0 0;
}
.cssIntro .banners .col2 {
  width: 100%;
  max-width: 100%;
}

/*
.cssTopbar .cssBg a {
    position:absolute;top:10%;/*transform: translateX(-50%);left:50%;*height:80%;
    img {width:auto;height: 90%;
        margin-top: 1.3rem;}
}
*/
.cssTopbar .cssBg { /*background:#d6ac64*/
  width: 70%;
  position: relative;
  position: relative;
  left: 15%;
  height: 100%;
  padding: 5rem 0 2rem 0;
  /*
  display:flex;
  a {display:block;width:50%;position:relative;text-align:left;}

  img {width:auto; position:absolute;top:50%;transform: translateY(-50%)}

  .cssRlogo {text-align:right;
      img {right:0px}

  }

  @media screen and (max-width: 640px) {
      .cssLlogo img {width:121px !important;}
      .cssRlogo img {width:95px !important;}
  }
  */
}
.cssTopbar .cssBg img {
  width: 51%;
  max-width: 350px;
}

.cssTopbar .cssArrow {
  position: absolute;
  top: calc(50% + 1rem);
  transform: translateY(-50%);
  left: 5%;
  height: 35%;
}

.cssTopbar .cssArrow img {
  width: auto;
  height: 70%;
}

.cssTopbar .cssLang {
  position: absolute;
  top: 4rem; /*transform: translateY(-50%);*/
  right: 5%;
}
.cssTopbar .cssLang a {
  color: #ffffff;
  text-decoration: none;
  margin-left: 2rem;
  font-size: 4.1rem;
}
.cssTopbar .cssLang a.act {
  text-decoration: underline;
}

.cssTopbar .cssArrow img {
  width: auto;
  height: 70%;
}

body.scroll .cssTopbar .cssLang {
  /* a {color:#000000;
       &.act {color:#cdab6c}
   }
       */
}

body.scroll .cssTopbar .cssLlogo, body.scroll .cssTopbar .cssRlogo {
  display: none;
}

.cssPage {
  font-size: 3.2rem;
}

.cssPage .cssTitle {
  margin: 0 auto;
  width: 100%;
  font-size: 6rem;
  text-transform: uppercase;
}
.cssPage .cssTitle img {
  width: 100%;
}

.cssBtn {
  text-transform: uppercase; /*font-weight:bold;*/
  cursor: pointer;
}

.cssFrame {
  margin: 0 35px 0;
}

.cssBtn {
  border-width: 1px;
  border-style: solid;
  border-color: #1d418d;
}

.qtycheck .lbl2 {
  font-size: 3.2rem;
  padding-top: 2rem !important;
  color: #000000;
}

.cssLanding .cssTitle {
  padding: 0 0;
}
.cssLanding .cssIntro {
  padding: 3.7rem 0 3.7rem;
  margin: 0 0;
  text-align: center;
  line-height: 150%;
}
.cssLanding .cssBtns {
  padding: 5rem 0 3rem;
}
.cssLanding .banner img {
  width: 100%;
}
.cssLanding .cssBtns .cssBtn {
  font-size: 4.1rem;
  margin: 3rem auto;
  padding: 3rem 0;
  background: #ffffff; /*color:#cdab6c;*/
  color: #d1000c;
  border-width: 0px;
  border-style: solid;
  border-color: #ffffff;
  text-decoration: none;
  display: block;
  width: 64.5rem;
  /*
   background:url('../20240921/bngbg.png') center center no-repeat;
   background-size: contain;
   */
  /*
          &.s1 {background:#cdab6c; border-color:#cdab6c;color:#ffffff}
    */ /*          
&.s1 {background: url('../images/1101/btn_red_big.png') no-repeat center center;background-size: contain;}
&.s2 {background: url('../images/1101/btn_bule_big.png') no-repeat center center;background-size: contain;}
&.s3 {background: url('../images/1101/btn_wood_big.png') no-repeat center center;background-size: contain;}
*/
}
.cssLanding .cssBtns .cssRemark {
  font-size: 2.7rem;
  padding: 4rem 0;
}
.cssLanding .cssBtns .cssRemark a {
  color: #1d418d;
}
@media screen and (max-width: 768px) {
  .cssLanding .cssBtns {
    padding: 5rem 0 3rem; /*position: fixed;bottom:3rem;*/
    left: 0;
    width: 100%;
  }
}

.cssThx .cssContentText {
  padding: 7.5rem 0 0;
  margin: 0 0%;
}
.cssThx .cssIntro {
  padding: 0 0 2rem;
  min-height: auto;
}
.cssThx .cssIntro2 {
  color: #ffffff;
}
.cssThx .cssBtns {
  padding: 3rem 0;
}
.cssThx .cssBtns .cssBtn {
  font-size: 4.1rem;
  margin: 1rem auto;
  padding: 4rem 0;
  /*
  background:url('../20240921/bngbg.png') center center no-repeat;
  background-size: contain;*/
  color: #d1000c;
  background: #ffffff;
  text-decoration: none;
  display: block;
  width: 64.5rem;
  border: 0;
  /*
              background:#ffffff;color:#cdab6c;
              border-width:1px;border-style: solid;border-color:#cdab6c;
              &.s1 {background: #cdab6c;color:#ffffff}
              */
  /*
  &.s1 {background: url('../images/1101/btn_red_big.png') no-repeat center center;background-size: contain;}
  &.s2 {background: url('../images/1101/btn_bule_big.png') no-repeat center center;background-size: contain;}
  &.s3 {background: url('../images/1101/btn_wood_big.png') no-repeat center center;background-size: contain;}
  */
}
.cssThx .cssBtns .cssBtn.small {
  border-width: 1px;
  border-style: solid;
  border-color: #ffffff;
  font-size: 2.1rem;
  padding: 2rem 0;
  width: 32.5rem;
  background: #d1000c;
  color: #ffffff;
}
.cssThx .cssBtns .cssRemark {
  font-size: 2rem;
  padding: 2rem 0;
}
.cssThx .cssBtns .cssRemark a {
  color: #1d418d;
}
.cssThx .qrframe {
  color: #ffffff;
}
.cssThx .qr {
  padding: 2rem;
}
.cssThx .qr div {
  border-style: solid;
  border-width: 10px;
  border-color: #ffffff;
  display: inline-block;
  background-color: #ffffff;
}
.cssThx .screencap {
  display: flex;
  padding: 0 0 1rem;
  justify-content: center;
}
.cssThx .screencap img {
  width: 4.8rem;
}

.bgreq {
  background-color: #ffffff;
}

.schlink a {
  text-transform: uppercase;
  border-width: 1px;
  border-style: solid;
  border-color: #cdab6c;
  color: #cdab6c;
  font-weight: bold;
  padding: 5px 10px;
}

.quicklinkremark {
  padding: 10px 20px;
}

.hl.white {
  color: #ffffff;
}

.noshade {
  text-shadow: none;
}

#payinfo {
  border: 1px solid #b8303d;
}

.err {
  color: #000000;
  text-align: left;
}

.cssForm {
  /*padding:0 0 10rem;*/
}
.cssForm .cssSubtitle {
  padding: 1rem 0 7.5rem;
  text-transform: uppercase;
}
.cssForm .text {
  text-align: left;
}
.cssForm .cssDetail {
  margin: 0 0 5rem;
}
.cssForm .cssDetail .cssLabel {
  text-align: left;
  font-size: 3.2rem;
  margin: 0 0 1rem;
}
.cssForm .cssDetail .cssField {
  margin: 0 0 2rem;
  position: relative;
}
.cssForm .cssDetail .cssField.nopadding {
  margin: 0px;
}
.cssForm .cssDetail select {
  width: 100%;
  font-size: 3.2rem;
  padding: 2rem 0.5rem;
  color: #ffffff;
  background: none;
  border-width: 1px;
  border-color: #ffffff;
  border-style: solid;
}
.cssForm .cssDetail select option {
  color: #000000;
  background: #ffffff;
}
.cssForm .cssDetail .err {
  color: #000000;
  text-align: left;
}
.cssForm .cssTabs {
  margin: 0 0% 0;
  font-size: 3.2rem; /* 10rem */
}
.cssForm .cssTab {
  padding: 0 0 5rem;
}
.cssForm .cssTab .cssHead {
  text-align: left;
  padding: 2rem;
  color: #ffffff;
  border-color: #ffffff;
  border-style: solid;
  border-width: 1px;
  font-weight: bold;
  position: relative;
}
.cssForm .cssTab .cssHead .cssIcon {
  position: absolute;
  right: 2%;
  top: 50%;
  transform: translateY(-50%);
  width: 5%;
}
.cssForm .cssTab .cssHead span {
  width: 95%;
  display: block;
}
.cssForm .cssTab select {
  border-color: #ffffff;
  border-style: solid;
  border-width: 1px;
  width: 100%;
  font-size: 3.2rem;
  margin: 1rem 0 1rem;
  padding: 2rem 0.5rem;
  background: none;
  color: #ffffff;
}
.cssForm .cssTab select option {
  color: #000000;
  background: #ffffff;
}
.cssForm .cssTab .cssPan {
  border-color: #ffffff;
  border-style: solid;
  border-width: 1px;
  color: #ffffff;
  text-align: left;
  padding: 0rem;
  /*background: url('../images/1101/windows_02.png') repeat-y;*/
  background-size: contain;
}
.cssForm .cssTab .cssPan .cssText {
  padding: 2rem 2rem;
}
.cssForm .cssTab .cssPan .cssTop img, .cssForm .cssTab .cssPan .cssBottom img {
  width: 100%;
  display: none;
}
.cssForm .cssTab .cssPan .cssText {
  font-size: 3.2rem;
}
.cssForm .cssTab .cssPan .cssQty {
  padding: 0.5rem 0 0;
}
.cssForm .cssTab .cssPan .cssQty .qtyrow1 {
  margin: 0 0 1rem;
}
.cssForm .cssTab .cssPan .cssQty .qtyrow2 .input {
  background: none;
  padding: 1px;
}
.cssForm .cssTab .cssPan .cssQty button, .cssForm .cssTab .cssPan .cssQty input {
  font-size: 3.2rem;
  text-align: center;
  color: #ffffff;
  background: none;
}
.cssForm .cssTab .cssPan .cssQty button {
  font-size: 6.6rem;
  line-height: 1;
  width: 8.2rem;
  height: 8.2rem;
  border-radius: 0;
  -webkit-border-radius: 0px;
  padding: 0px;
  text-align: center;
  background-color: #ffffff;
  color: #d1000c;
  border-style: none;
}
.cssForm .cssTab .cssPan .cssQty input {
  bordeR: 1px;
  width: 12rem;
  font-size: 3.8rem;
  padding: 0.2rem 0;
  height: 7.4rem;
  border-color: #ffffff;
  border-style: solid;
}
.cssForm .cssTab .cssPan .cssQty ul {
  margin: 0px;
  padding: 0px;
}
.cssForm .cssTab .cssPan .cssQty ul::after {
  content: " ";
  display: block;
  clear: both;
}
.cssForm .cssTab .cssPan .cssQty li {
  margin: 0px;
  padding: 0px 0px 0 0;
  list-style-type: none;
  float: left;
}
.cssForm .cssTab .cssPan .cssQty li.lbl {
  padding-top: 2.5rem;
}

.fillfoem .cssDetail,
.cssPlanPage {
  padding-bottom: 20.4rem !important;
}

.cssBottombar {
  position: fixed;
  bottom: 0;
  z-index: 10;
  left: 0;
  height: 10.4rem;
  width: 100%;
  background: #ffffff;
  text-align: center;
  padding: 3rem 0px;
}
@media screen and (max-width: 768px) {
  .cssBottombar {
    /*  background:none;
      */
  }
}
.cssBottombar .cssSummary {
  margin: 0 auto;
  max-width: 1040px;
  width: calc(100% - 40px);
  display: flex;
}
.cssBottombar .cssSummary .cssPrice {
  width: 50%;
  font-size: 3rem;
  height: 6.4rem;
  position: relative;
  color: #d1000c;
  padding-top: 4rem;
}
.cssBottombar .cssSummary .cssPrice span {
  display: block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  padding: 0 2rem;
  font-size: 6.4rem;
}
.cssBottombar .cssSummary .cssCall {
  text-align: right;
  width: 100%;
}
.cssBottombar .cssSummary .cssCall .cssBtn {
  font-size: 4.1rem;
  margin: 0 auto;
  padding: 3rem 5rem;
  /*width: 64.5rem;;*/
  /*
  background:#cdab6c;border-color:#cdab6c;background-size:cover;color:#ffffff;
  */
  color: #ffffff;
  border: 0px;
  /*
  background:url('../20240921/bngbg.png') center center no-repeat;
  */
  background: #d1000c;
  background-size: contain;
  text-decoration: none;
  display: inline-block;
  text-align: center;
}

.bold {
  font-weight: bold;
}

.cssPaymentPage .payinfo {
  padding: 8rem 0;
}
.cssPaymentPage .total {
  display: flex;
  padding: 4rem 0;
  border-width: 1px 0 0 0;
  border-style: solid;
  border-color: #ffffff;
}
.cssPaymentPage .total .ll {
  width: 50%;
  font-size: 6.4rem;
  text-align: left;
  padding: 0 2rem;
}
.cssPaymentPage .total .rr {
  text-align: right;
  width: 50%;
  font-weight: bold;
  padding: 0 2rem;
  font-size: 6.4rem;
}
.cssPaymentPage .cssBtn {
  font-size: 4.1rem;
  margin: 0 auto;
  padding: 2rem 0;
  border: 0px;
  /*
      background:url('../20240921/bngbg.png') center center no-repeat;
      background-size: contain;color:#f9f4c5;
      */
  /*
  background:#cdab6c;background-size:cover;border-color:#cdab6c;
  color:#ffffff;*/
  text-decoration: none;
  display: block;
  width: 30%;
  text-align: center;
  background: #ffffff;
  color: #d1000c;
}

.cssConfirmation a {
  color: #cdab6c;
}
.cssConfirmation .cssSubtitle {
  padding: 1rem 0 7.5rem;
  text-transform: uppercase;
}
.cssConfirmation .cssDetail {
  text-align: center;
  margin: 0 0%;
  text-align: left;
  padding: 5rem 2rem;
}
.cssConfirmation .cssDetail .bold {
  font-weight: bold;
}
.cssConfirmation .cssDetail .cssBtn {
  font-size: 4.1rem;
  margin: 0 auto;
  padding: 2rem 0;
  border: 0px;
  /*
      background:url('../20240921/bngbg.png') center center no-repeat;
      background-size: contain;color:#f9f4c5;
      */
  /*
  background:#cdab6c;background-size:cover;border-color:#cdab6c;
  color:#ffffff;*/
  text-decoration: none;
  display: block;
  width: 30%;
  text-align: center;
  background: #ffffff;
  color: #d1000c;
}
.cssConfirmation .cssDetail .cssBtn.cssLl {
  margin: 0 auto;
  width: 64.5rem;
  padding: 4rem 0px;
  font-size: 3.2rem;
  /*color:#ffffff;
  background:#cdab6c;background-size:contain;border-color:#cdab6c;
  */
  border: 0;
}
.cssConfirmation .cssDetail .cssBtn.cssLl1 {
  width: 40%;
}
.cssConfirmation .cssDetail .box {
  background: none;
  color: #ffffff;
  padding: 0rem;
}
.cssConfirmation .cssDetail .btnsbar {
  margin-top: 60px;
}
.cssConfirmation .cssCta {
  text-align: center;
  padding: 3rem 0;
  position: relative;
  width: 100%; /*padding-top:45%;*/
}
.cssConfirmation .cssCta .cssBtn { /*position: absolute;bottom:3rem;left:15%;*/
  font-size: 4.1rem;
  margin: 0 auto;
  padding: 4rem 0;
  color: #ffffff;
  text-decoration: none;
  display: block;
  width: 64.5rem;
  text-align: center;
  background: #ffffff;
  color: #d1000c;
  /*
   background:#cdab6c;color:#ffffff;background-size:contain;
   border-color:#cdab6c;


  &.s1 {color:#cdab6c;background:#ffffff;}
  */
  border: 0px;
  /*
  background:url('../20240921/bngbg.png') center center no-repeat;
  background-size: contain;color:#f9f4c5;
  */
}

.fillfoem select,
.fillfoem input {
  color: #000000;
  background: #ffffff;
}

.hl {
  color: #ffffff;
}

.cssTimeslot select, .cssTimeslot input {
  width: calc(100% - 2rem);
  font-size: 3.2rem;
  padding: 2rem 0.5rem;
  background: none;
  color: #ffffff;
  border-width: 1px;
  border-color: #ffffff;
  border-style: solid;
}
.cssTimeslot select option, .cssTimeslot input option {
  background: #ffffff;
  color: #000000;
}
.cssTimeslot .cbox {
  position: relative;
}
.cssTimeslot .cbox .checkmark {
  background-color: #ffffff;
  border-radius: 1rem;
  width: 5.5rem;
  height: 5.5rem;
  display: block;
  content: " ";
}
.cssTimeslot .cbox input[type=checkbox] {
  opacity: 0;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0px;
  left: 0px;
}
.cssTimeslot .cbox input[type=checkbox]:checked ~ .checkmark {
  background-image: url("../202412/icon_right.png");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
.cssTimeslot input[type=checkbox] {
  accent-color: #ffffff;
  color: #d1000c;
  width: 2rem;
  height: 2rem;
}
.cssTimeslot .cssSubtitle {
  padding: 1rem 0 7.5rem;
  text-transform: uppercase;
}
.cssTimeslot .cssDetail {
  margin: 0 0%;
  padding: 0 0 10rem 0;
}
.cssTimeslot .cssDetail.bottom {
  padding-bottom: 0;
}
.cssTimeslot .text {
  text-align: left;
}
.cssTimeslot .cssLabel {
  text-align: left;
  font-size: 3.2rem;
  margin: 0 0 1rem;
}
.cssTimeslot .cssField {
  margin: 0 0 2rem;
  position: relative;
}
.cssTimeslot .cssField.nopadding {
  margin: 0px;
}
.cssTimeslot .cssField span {
  font-size: 80%;
  text-align: left;
  display: block;
}
.cssTimeslot .cssField a {
  color: blue;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
.cssTimeslot .cssCta {
  text-align: center;
  padding: 3rem 0;
  position: relative;
  width: 100%; /*padding-top:55%;*/
}
.cssTimeslot .cssCta .cssBtn {
  font-size: 4.1rem;
  margin: 0 auto;
  padding: 4rem 0;
  border: 0;
  /* background:#cdab6c;background-size:contain;
  /*  position: absolute;bottom:3rem;left:50%;/*17.75%;*/
  /*  transform: translateX(-50%);border-color:#cdab6c;*/
  /* color:#ffffff;*/
  text-decoration: none;
  display: block;
  width: 64.5rem;
  text-align: center;
  /*
  background:url('../20240921/bngbg.png') center center no-repeat;
  background-size: contain;color:#f9f4c5;
  */
  /*
  &.s1 {background:#cdab6c;border-color:#cdab6c;}
  */
  background: #ffffff;
  color: #d1000c;
}
.cssTimeslot .cssCta .cssBtn.coupon {
  padding: 2rem 0;
  border-color: #d1000c;
  border-width: 1px;
  border-style: solid;
}
.cssTimeslot .cssCta .cssBtn.coupon.couponrm {
  background: #d1000c;
  color: #ffffff;
  border-color: #ffffff;
}
.cssTimeslot .adp1 {
  display: flex;
  align-items: center;
}
.cssTimeslot .adp1 input {
  width: calc(80% - 2rem);
}
.cssTimeslot .adp1 input.applied {
  background-image: url("../202412/icon_right.png");
  background-position: center right;
  background-repeat: no-repeat;
  background-size: contain;
}
.cssTimeslot .adp1 .cssCta {
  padding: 0px;
  margin: 0 0 0 2rem;
  width: 20%;
  text-align: center;
}
.cssTimeslot .adp1 .cssCta .cssBtn {
  text-align: center;
  transform: translateY(0);
  position: static;
  width: 100%;
  color: #d1000c;
  background: #ffffff;
  border-width: 1px;
  border-style: solid;
  border-color: #ffffff;
  border-width: 1px;
  border-style: solid;
}
.cssTimeslot .adp1 .cssCta .cssBtn span {
  text-align: center;
}
.cssTimeslot .adp {
  text-align: left;
}
.cssTimeslot .adp select {
  width: auto;
  margin-right: 1rem;
  width: 19.5%;
}
.cssTimeslot .adp .ccode {
  width: 20%;
}
.cssTimeslot .adp input {
  width: calc(77% - 2rem);
}
.cssTimeslot .cssTabs {
  margin: 0 0% 10rem;
  font-size: 3.2rem;
}
.cssTimeslot .cssTab {
  padding: 0 0 5rem;
}
.cssTimeslot .cssTab .cssHead {
  text-align: left;
  padding: 2rem;
  color: #ffffff;
  background: #000000;
  font-weight: bold;
  position: relative;
}
.cssTimeslot .cssTab .cssHead .cssIcon {
  position: absolute;
  right: 2%;
  top: 50%;
  transform: translateY(-50%);
  width: 5%;
}
.cssTimeslot .cssTab .cssHead span {
  width: 95%;
  display: block;
}
.cssTimeslot .cssTab select {
  width: 100%;
  font-size: 3.2rem;
  margin: 1rem 0 1rem;
  padding: 2rem 0px;
}
.cssTimeslot .cssTab .cssPan {
  background: #ffffff;
  color: #000000;
  text-align: left;
  padding: 0rem;
  /*background: url('../images/1101/windows_02.png') repeat-y;*/
  background-size: contain;
}
.cssTimeslot .cssTab .cssPan .cssText {
  padding: 2rem 2rem;
}
.cssTimeslot .cssTab .cssPan .cssTop img, .cssTimeslot .cssTab .cssPan .cssBottom img {
  width: 100%;
  display: none;
}
.cssTimeslot .cssTab .cssPan .cssText {
  font-size: 3.2rem;
}
.cssTimeslot .cssTab .cssPan .cssQty .qtyrow1 {
  margin: 0 0 1rem;
}
.cssTimeslot .cssTab .cssPan .cssQty .qtyrow2 .input {
  background: #b8303d;
  padding: 1px;
}
.cssTimeslot .cssTab .cssPan .cssQty button, .cssTimeslot .cssTab .cssPan .cssQty input {
  font-size: 3.2rem;
  text-align: center;
}
.cssTimeslot .cssTab .cssPan .cssQty button {
  border: 0px;
  width: 8.2rem;
  height: 8.2rem;
  border-radius: 0;
  -webkit-border-radius: 0px;
  padding: 0px;
  text-align: center;
  background-color: #b8303d;
  color: #ffffff;
  border-style: none;
}
.cssTimeslot .cssTab .cssPan .cssQty input {
  bordeR: 0px;
  width: 12rem;
  font-size: 3.8rem;
  padding: 0.2rem 0;
  height: 7.4rem;
  border-color: #b8303d;
}
.cssTimeslot .cssTab .cssPan .cssQty ul {
  margin: 0px;
  padding: 0px;
}
.cssTimeslot .cssTab .cssPan .cssQty ul::after {
  content: " ";
  display: block;
  clear: both;
}
.cssTimeslot .cssTab .cssPan .cssQty li {
  margin: 0px;
  padding: 0px 0px 0 0;
  list-style-type: none;
  float: left;
}
.cssTimeslot .cssTab .cssPan .cssQty li.lbl {
  padding-top: 2.5rem;
}
.cssTimeslot .remark {
  padding: 3rem 0 0;
}
.cssTimeslot .cssTnc {
  text-align: left;
  margin: 0;
}
.cssTimeslot .cssTnc .cssRow {
  display: flex;
  padding: 2rem 0 2rem;
}
.cssTimeslot .cssTnc .col1 {
  width: 40px;
}
.cssTimeslot .cssTnc .col1 input {
  transform: scale(2);
  width: auto;
}
.cssTimeslot .cssTnc .col2 {
  width: 100%;
  font-size: 2.7rem;
}
.cssTimeslot .cssTnc a {
  color: #ffffff;
}
.cssTimeslot .cssRemark1 {
  font-size: 2.7rem;
}
.cssTimeslot .cssRemark {
  font-size: 2.7rem;
  text-align: left;
  margin: 0 0 2rem;
  padding: 1rem 0 0;
}
.cssTimeslot .err {
  text-align: left;
  color: #000000;
}

.boxbg {
  background: none;
  color: #ffffff;
}

.remarkbox {
  margin: 4rem 0;
}
.remarkbox .cssboxframe {
  background: none;
  color: #ffffff;
  padding: 0px;
  background-size: cover;
  padding: 2rem;
  border-width: 1px;
  border-color: #ffffff;
  border-style: solid;
}
.remarkbox .cssT, .remarkbox .cssB {
  display: none;
}
.remarkbox .cssT img, .remarkbox .cssB img {
  width: 100%;
  display: block;
}
.remarkbox .text {
  text-align: Center;
}
.remarkbox .text .cssMs1 {
  color: #ffffff;
  font-size: 3.2rem;
  padding: 2rem 0 0;
}
.remarkbox .text .cssMs2 {
  color: #ffffff;
  font-size: 3.2rem;
  padding: 1rem 0;
}
.remarkbox .text .cssMs3 {
  color: #ffffff;
  display: flex;
  font-weight: bold;
  justify-content: center;
  font-size: 3.2rem;
  padding: 0 0 2rem;
}
.remarkbox .text .cssMs3 img {
  height: 3rem;
}

.popupbg {
  position: fixed;
  z-index: 10000;
  top: 0%;
  width: 100%;
  left: 0%;
  height: 100%;
  background: rgba(0, 0, 0, 0.75);
}

.popup {
  position: fixed;
  z-index: 10001;
  top: 50%;
  width: 60%;
  left: 20%;
  transform: translateY(-50%);
  background: #d1000c;
  padding: 0px;
  background-size: contain;
  color: #ffffff;
}
.popup .frame {
  /*    border-width:3px;border-style:solid;border-color:#871417;*/
  padding: 10rem 0;
  font-size: 3.2rem;
  color: #ffffff;
}
.popup .frame .text {
  padding: 0 0 5rem;
}
.popup .btn {
  background: #ffffff;
  color: #d1000c;
  /*
  background:url('../20240921/view_button_bg.png') center center no-repeat;
  background-size: contain;color:#f9f4c5;
  */
  margin: 0 1rem;
  font-size: 4.1rem;
  text-decoration: none;
  background-size: cover;
  /*
          padding:1.5rem 0;
          display:inline-block;

          min-width:30.5rem;
  */
  padding: 2.6rem 0;
  display: inline-block;
  min-width: 26.5rem;
}
.popup .btn span {
  padding: 2rem 4rem;
}
.cssHistory .cssSubtitle {
  padding: 0 0 7.5rem;
}
.cssHistory .cssTabs {
  margin: 0 10%;
  font-size: 3.2rem;
}
.cssHistory .cssTab {
  padding: 0 0 5rem;
  margin: 0 0rem;
}
.cssHistory .cssTab .cssTop, .cssHistory .cssTab .cssBottom {
  display: none;
}
.cssHistory .cssTab .cssPan {
  border-color: #ffffff;
  border-width: 1px;
  border-style: solid;
  color: #ffffff;
  text-align: left;
  padding: 2rem 6rem 2rem;
  /* background: url('../202403/bg_ticket.png') no-repeat top center;*/
  background-size: cover;
  background: none;
  position: relative;
}
.cssHistory .cssTab .cssPan .cssBottom img, .cssHistory .cssTab .cssPan .cssTop img {
  width: 100%;
}
.cssHistory .cssTab .cssPan .cssText {
  padding: 0 rem;
}
.cssHistory .cssTab .cssPan .bold {
  font-weight: bold;
}
.cssHistory .cssTab .cssPan .cssBtn {
  text-align: right;
  font-size: 4rem;
  margin: 0;
  padding: 3rem 0;
  /*background:#cdab6c;*/
  text-decoration: none;
  display: block;
  width: 39.5rem;
  text-align: center;
  /*border-color:#cdab6c;border-style:solid;border-width:1px;/*;font-weight: bold;*/
  /*color:#ffffff;*/
  /*
  background:url('../20240921/view_button_bg.png') center center no-repeat;
  background-size: contain;color:#f9f4c5;
  text-decoration:none;border:0;
  */
  background: #ffffff;
  color: #d1000c;
  border-color: #ffffff;
  /*background:url('../images/1101/btn_red_small.png') center center no-repeat;background-size:contain;*/
}

.changerow {
  text-align: left;
}

.schedule .tabheads {
  display: grid;
  gap: 0;
  grid-template-columns: 50% 50%;
}
.schedule .tabheads img {
  width: 100%;
}
.schedule .headl {
  padding-top: 30px;
  color: #cdab6c;
  font-size: 3rem;
  text-align: left;
}
.schedule .lists {
  padding: 30px 0 0;
}
.schedule .lists .block {
  text-align: left;
  margin: 0 0 30px;
}
.schedule .lists .block .head {
  background: #cdab6c;
  color: #000000;
  font-size: 3rem;
  font-weight: bold;
}
.schedule .lists .block .head > span {
  display: block;
  padding: 2rem 3rem;
}
.schedule .lists .block .title {
  color: #000000;
  font-size: 3rem;
  font-weight: bold;
}
.schedule .lists .block .content {
  background: #ffffff;
}
.schedule .lists .block .content > div {
  padding: 2rem 3rem;
}
.schedule .lists .block .dcontent {
  font-size: 3rem;
  color: #000000;
}
.schedule .dmore {
  font-size: 2.8rem;
  color: #7a7a7a;
}
.schedule .dmore span {
  color: #cdab6c;
}
.schedule .dmore a {
  color: #7a7a7a;
}

.emptybanner {
  padding-top: 60%;
}

.mobi {
  display: none;
}

.desk {
  display: block;
}

.mainbg {
  top: 0;
  overflow: hidden;
  height: 835px;
}

.cssIntro .banners .col:nth-child(2) .pics {
  padding: 0px 0 0;
}

@media screen and (max-width: 768px) {
  .mobi {
    display: block;
  }
  .desk {
    display: none;
  }
}
@media screen and (min-width: 1000px) {
  .cssIntro .banners .col:nth-child(2) .pics {
    padding: 20px 0 0;
  }
  .mainbg {
    top: 0;
    height: 955px;
  }
  /*
      body
      {
          background:url('../20240921/desktop_bg_other_page.jpg') top center no-repeat #000000;
          background-size: contain;

      }


      body.home {background-image:url('../20240921/desktop_bg_homepage.jpg') ;} 
  */
  .emptybanner {
    padding-top: 20vh;
  }
  .cssMasterpanelOut {
    background-size: contain;
    background-position: 0% 30%;
  }
  .cssIntro .banner {
    margin: 0 -70px;
  }
  .cssTopbar .cssBg {
    width: 56%;
    left: 22%;
  }
  .cssTopbar .cssBg img {
    max-width: 280px;
  }
  .cssLanding .cssBtns {
    /*
    display:flex;
    flex-wrap: wrap;
    justify-content: center;
    */
    padding-top: 0;
  }
  .cssLanding .cssBtns .cssBtn {
    margin: 0 auto 4rem;
    max-width: 54.5rem;
    width: 50%;
  }
  .cssLanding .cssBtns .break {
    display: block;
    width: 100%;
    height: 1px;
  }
  .cssPage .cssTitle img {
    width: 70%;
  }
  .cssContent {
    max-width: 920px;
  }
  .cssTimeslot .adp input {
    width: calc(79% - 2rem);
  }
  .cssForm .cssTab .cssHead .cssIcon {
    width: 2.5%;
  }
}
.maskBg {
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 1000;
  background: rgba(0, 0, 0, 0);
  width: 100%;
  height: 100%;
}

.cssForm .cssTab .cssPan .cssText .img {
  margin: -2.2rem -2.2rem 0;
}

.cssForm .cssTab .cssPan .cssText .img img {
  width: 100%;
}/*# sourceMappingURL=main.css.map */