@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@100;400;500;600;700&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Inter:wght@100..900&family=Sora:wght@100..800&display=swap);

* {
  position: relative;
  -webkit-tap-highlight-color: transparent;
}
html,body{
  font-family:Sora,'Noto Sans TC','微軟正黑體',sans-serif;
  font-size:10px;
    color: #000;
  text-size-adjust:100%;
  -webkit-text-size-adjust:100%;
  overflow-x: hidden;
  letter-spacing: .125em;
}
html { width:100%; height:100%; text-rendering: optimizeLegibility;}
body { width:100%; min-height:100%; color:#000; font-size:16px; font-weight: 400; line-height:1.5; font-family: Roboto, 'Noto Sans TC';}

body.night{background: #000;}
/* body.fin .sound-btn{display: none;} */
main{width: 100%;height: 100%;}
section{position: relative;}
html, body, * {
    touch-action: manipulation;
}
img,svg{width: 100%;height: auto;}

img{max-width: 100%;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);display: block;}
ol {
    list-style-type: decimal;
}


img{width: 100%;}
#wrap {
    width: 100%;
    height: 100%;
    min-width: 320px;
    overflow-x: hidden;
}

.container {
    width: 90%;
    max-width: 375px;
    margin: 0 auto;
    padding: 30px 0 40px;
    position: relative;
}

.container{ width: 90%; max-width: 375px; margin: 0 auto; padding: 30px 0 40px; position: relative;}
.container h2{ font-size: 28px; text-align: center; margin-bottom: 20px;font-weight: bold;}

.kv{
   /* margin: 0 auto;
  width: 666px; */
  background: #efefee;
  height: 852px;
}
.kv .kv-bar{
  position: absolute;
  width: 100%;
  height: 482px;
  background: #00a2fe;
}
.kv .kv-bg{
  position: absolute;
  top: 0;
  width: 666px;
  height: 100%;
  left: calc(50% - 333px);
  background: url(../images/kv-bg.png);
}

.logo{
  width: 150px;
  margin: 0 auto;
}
.kv-title{
  width: 339px;
  margin:44px auto 10px auto;
}

.kv-title2{
  width: 339px;
  margin:0 auto;
}
.kv-tiger{width: 271px;margin: 0 auto;margin-top: 28px}
.kv-tips{    font-size: 15px;
    color: #fff;
    text-align: center;
    margin-top: 20px;
    font-weight: 300;
    letter-spacing: 0.025em;}

.sec1{
  padding-top: 10px;
  background: #efefee;
}
.sec1 .container{
  margin-top: 0;
  padding-top: 0;
}

.sec1 .container > p{
      font-size: 18px;
    text-align: center;
    font-weight: 700;
    /*margin-top: 10px;*/
    line-height: 1.4em;
  letter-spacing: 0.05em;
}

.area1{
  width: 362px;
  height: 325px;
  background: url(../images/area1.png);
  margin: 24px auto 0 8px;
  padding-top: 20px;
}

.area2{
  width: 362px;
  height: 332px;
  background: url(../images/area2.png);
  margin: 28px auto 0 8px;
   padding-top: 20px;
}


.area3{
  width: 362px;
  height: 87px;
  background: url(../images/area3.png);
  margin: 28px auto 0 8px;
   padding-top: 14px;
}

h3{
  font-size: 30px;
  text-align: center;
      letter-spacing: 0;
    font-weight: 900;
    /*margin-bottom: 15px;*/
}
h4{
  font-size: 20px;
  text-align: center;
      letter-spacing: 0;
    font-weight: 900;
    margin-top: 15px;
}
.area1 p,.area2 p,.area3 p{
      width: 80%;
    margin: 0 auto;
    letter-spacing: 0.025em;
    line-height: 1.4em;
}
.area3 p{text-align: center;}
.area1 span,.area2 span,.area3 span{
  font-weight: bold;
}
.area1 h3,.area1 h4,.area1 span{
  color: #00a16d;
}

.area2 h3,.area2 h4,.area2 span{
  color: #0092f9;
}
.area3 h3,.area3 h4,.area3 span{
  color: #0092f9;
}
.area1 .tips,.area2 .tips,.area3 .tips{
  width: 90%;
  margin-top: 10px;
}
.tips{
      font-size: 12px;
    color: #000;
    margin-top: 20px;
    font-weight: 400;
    letter-spacing: 0.025em;
    padding: 0 1em;
    text-indent: -.5em;
    padding-left: 1.5em;
}

.tips  a{
    background: #0092f9;
    color: #fff;
    font-weight: bold;
    padding: .15em 0.5em;
    line-height: 1.25em;
    border-radius: 2px;
}
.cta-btn{
    display: block;
    width: 290px;
    height: 42px;
    background: #000;
    border-radius: 21px;
    margin: 0 auto;
    margin-top: 46px;
    color: #fff;
    line-height: 42px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;

}
.cta-btn:hover .arrow{
  transform: translateX(5px);

}

.cta-btn .arrow{
  position: relative;
  display: inline-block;
  width: 23px;
  height: 15px;
  background: url(../images/arrow.png);
  -webkit-transition: all 1s ease;
  transition: all 1s ease;
}


.notice{ 
/*   width: 666px; */
  margin: 0 auto;
}
.notice:last-child{ background-color: #f8f8f8;}
.notice .list{ color: #606060; margin-left: 20px; }
.notice .list li{ margin-bottom: 10px; }
.notice .list li a{border-bottom: 1px solid #606060;}
.notice .list li a:hover{border-bottom: 1px solid #000;color: #000;}
.notice .list li p{ margin: 1em 0; }
.notice .list li p:last-child,
.notice .list li:last-child{ margin-bottom: 0; }
.notice .list-disc{ list-style-type: disc; margin-left: 16px; }
.notice .notice-row{ display: flex; margin-bottom: 10px;}
.notice .notice-row .notice-row{ margin-bottom: 0;}
.notice .notice-row .i{ width: 20px;}
.notice .notice-row .t{ width: 100%;}
.notice .notice-row .t{ width: 100%;}
.notice .link{ color: #037c87; text-decoration: underline;}


@media screen and (max-width: 660px){
  .sec1{
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    width:660px;
  }
  .sec1 img{
    
  }
}





/* ===== 進場動態 ===== */
.kv-title,
.kv-title2,
.kv-tiger,
.sec1 .container > p,
.area1,
.area2,
.area3,
.cta-btn {
  opacity: 0;
  transition: opacity .8s ease, transform .8s ease;
}

.kv-title { transform: translateY(30px); }
.kv-title2 { transform: translateY(30px); transition-delay: .15s; }
.kv-tiger { transform: translateX(80px); transition-delay: .3s; }

.sec1 .container > p { transform: translateY(30px); }
.area1 { transform: translateY(40px); }
.area2 { transform: translateY(40px); transition-delay: .1s; }
.area3 { transform: translateY(40px); transition-delay: .2s; }
.cta-btn { transform: translateY(30px); transition-delay: .3s; }

.kv-title.is-visible,
.kv-title2.is-visible,
.kv-tiger.is-visible,
.sec1 .container > p.is-visible,
.area1.is-visible,
.area2.is-visible,
.area3.is-visible,
.cta-btn.is-visible {
  opacity: 1;
  transform: translate(0, 0);
}

/* @media (prefers-reduced-motion: reduce) {
  .kv-title,
  .kv-title2,
  .kv-tiger,
  .sec1 .container > p,
  .area1,
  .area2,
  .area3,
  .cta-btn {
    transition: none;
    opacity: 1;
    transform: none;
  }
} */



@media screen and (max-width: 375px){
  #wrap{
    width: 100vw;
  }
  .kv{
    width: 100%;
  }
  
  .kv{
    height:calc(852 / 375 * 100vw);
  }
  .kv .kv-bar{
    height:calc( 482 / 375 * 100vw);
  }
  .kv .kv-bg {
      position: absolute;
      top: 0;
      width: 177.6vw;
      left: calc(50% - 88.8vw);
      background-size: cover;
  }

  .logo{
    width:calc( 150 / 375 * 100vw);
  }
  .kv-title{
    width: calc(339 / 375 * 100vw);
    margin:calc(44 / 375 * 100vw) auto calc(10 / 375 * 100vw) auto;
  }

  .kv-title2{
    width: calc(339 / 375 * 100vw);
  }
  .kv-tiger{width: calc(271 / 375 * 100vw);margin-top: calc(28 / 375 * 100vw);}
  .kv-tips{    
    font-size: calc(15 / 375 * 100vw);
      margin-top: calc(20 / 375 * 100vw);
    }
  .sec1{
    width: 100%;
    padding-top: calc(10 / 375 * 100vw);
  }
  .container {
      width: 90%;
      max-width: 100%;
      padding: 8vw 0 10vw;
  }
  .sec1 .container{
    padding: 15px 0 20px;
    width: 100%;
  }
  .sec1 .container > p{
        font-size: calc(18 / 375 * 100vw);
  }

  .area1{
    width: calc(362 / 375 * 100vw);
    height: calc(325 / 375 * 100vw);
    margin: calc(24 / 375 * 100vw) auto 0 calc(8 / 375 * 100vw);
    padding-top: calc(20 / 375 * 100vw);
    background-size: cover;
  }

  .area2{
    width: calc(362 / 375 * 100vw);
    height: calc(332 / 375 * 100vw);
    margin: calc(28 / 375 * 100vw) auto calc(0 8 / 375 * 100vw);
     padding-top: calc(20 / 375 * 100vw);
     background-size: cover;
  }


  .area3{
    width: calc(362 / 375 * 100vw);
    height: calc(87 / 375 * 100vw);
    margin: calc(28 / 375 * 100vw) auto 0 calc(8 / 375 * 100vw);
     padding-top: calc(14 / 375 * 100vw);
     background-size: cover;
  }
  .area1 p, .area2 p, .area3 p{
 font-size: calc(16 / 375 * 100vw);
  }
      .tips {
        font-size: calc(12 / 375 * 100vw);
    }
    .container h2{
    font-size: calc(28 / 375 * 100vw);
  }
  h3{
    font-size: calc(30 / 375 * 100vw);
  }
  h4{
    font-size: calc(20 / 375 * 100vw);
      margin-top: calc(15 / 375 * 100vw);
  }
  
  .area1 .tips,.area2 .tips,.area3 .tips{
     font-size: calc(12 / 375 * 100vw);
    margin-top: calc(10 / 375 * 100vw);
  }
  .tips{
        font-size: calc(12 / 375 * 100vw);
      margin-top: calc(20 / 375 * 100vw);
  }

  .tips  a{
      border-radius: calc(2 / 375 * 100vw);
  }
  .cta-btn{
      width: calc(290 / 375 * 100vw);
      height: calc(42 / 375 * 100vw);
      font-size: calc(16 / 375 * 100vw);
      border-radius:calc(21 / 375 * 100vw);
      margin-top: calc(46 / 375 * 100vw);
      line-height: calc(42 / 375 * 100vw);
  }
  .cta-btn:hover .arrow{
    transform: translateX(calc(5 / 375 * 100vw));

  }

  .cta-btn .arrow{
    width: calc(23 / 375 * 100vw);
    height: calc(15 / 375 * 100vw);
    background-size: cover;
  }
  .notice .list{ margin-left: calc(20 / 375 * 100vw); }
  .notice .list li{ margin-bottom: calc(10 / 375 * 100vw); }
 
  .notice .list-disc{ margin-left: calc(16 / 375 * 100vw); }
  .notice .notice-row{ margin-bottom: calc(10 / 375 * 100vw);}
  .notice .notice-row .i{ width: calc(20 / 375 * 100vw);}
}