/* --- init --- */
html,
body { overflow-x:hidden !important; padding: 0; margin: 0;  font-family: "微軟正黑體", "Microsoft JhengHei", "Segoe UI", Arial, sans-serif;            border: none;    
}
a { cursor : pointer; display : inline-block; text-decoration : none;  background-color: transparent; color:inherit; border : none; }
p { margin: 0 }
img {  max-width : 100%; vertical-align: middle; border : none }
* { box-sizing: border-box; margin : 0; padding : 0; outline : none; }
span { display: inline-block; }
ul, ol { margin : 0; padding-left: 22px;}
ul.decimal, ol.decimal { list-style: decimal; }
ul.disc, ol.disc { list-style: decimal; }
ul.upper_alpha, ol.upper_alpha { list-style: upper-alpha; }
ul.cus, ol.cus { list-style: none;  padding: 0; }
ul.cus>li, ol.cus>li {  position : relative;  padding-left: 22px; }
/*ul.cus>li::before, ol.cus>li::before {  content : attr(str);  position: absolute; top : 0;  left : 0; }
ul.cus._gh>li::before, ol.cus._gh>li::before {  content: "("attr(str) ")" }
ul.cus._num>li:nth-child(n + 10), ol.cus._num>li:nth-child(n + 10) { padding-left: 30px; }*/
ul.none, ol.none { list-style: none; padding: 0;}
@media (min-width:1025px) {
  .up_lg_hide {display: none !important }
}

@media (max-width:1024px) {
  .lg_hide { display: none !important}
}

@media (min-width:769px) {
  .up_md_hide { display: none !important }
}

@media (max-width:768px) {
  .md_hide { display: none !important }
}

@media (min-width:577px) {
  .up_sm_hide { display: none !important }
}

@media (max-width:576px) {
  .sm_hide { display: none !important }
}

@media (min-width:451px) {
  .up_ssm_hide { display: none !important }
}

@media (max-width:450px) {
  .ssm_hide { display: none !important }
}

/* --- header ------------------------------------------------------------------------------------------------------- */
header { position: fixed; top: 0; left: 0; right: 0; display: block; background-color: #ffffff; border-bottom:10px solid #ed1b2e; 
         font-size:0; z-index:5; }
header .head_ctn { position  : relative;  max-width : 1140px;  margin: auto; width: 95%; text-align: left; }
header .head_ctn .logo {  position: relative;  z-index : 2; }
header .head_ctn .tab_box {  z-index: 1;  position: absolute; right: 0;  bottom: 0; color: #505050;  text-align: right; }
header .head_ctn .tab_box .tab_item { padding: 20px 15px 20px 30px; cursor: pointer; display: inline-block; font-size: 18px; color: #6d6d6d;
                                      font-weight: 700; -webkit-transition: .3s linear; transition: .3s linear}
header .head_ctn .tab_box .tab_item:hover { color: #ed1b2e; }
header .head_ctn .menu_box { cursor: pointer; position: absolute; top: 50%; right: 5%; padding-top: 6px; padding-left: 10px;
                             -webkit-transform: translateY(-50%); transform: translateY(-50%);  }
header .head_ctn .menu_box>div { background-color: #ed1b2e; width: 30px; height: 2px; margin-bottom: 6px; }
header .tab_box2 { background-color: #ffffff; cursor: pointer; position: absolute; top: 119px; left: 0; right: 0; font-size:20px; 
                   display: none; }
header .tab_box2 .tab_item { background-color: #ffffff; padding: 20px; border-bottom: 1px solid #cccccc; color: #888888; font-weight:700;                                  text-align: center; line-height: 1; -webkit-transition: .25s linear; transition: .25s linear;}
header .tab_box2 .tab_item:hover {  background-color: #efeeee;  color: #888888; opacity: .7; }
header, .head_filler { height: 119px; }
header .head_slogan { font-size: 14px; font-weight: bold; color: #667088; display: inline-block; vertical-align: bottom; padding-bottom: 2%; }
/* --- header MENU for mb------------------------------------------------------------------ */
header .nav_btn { cursor: pointer; position: absolute;  top: 50%;  right: 20px;  transform: translateY(-50%) }
header .nav_btn .nav_line { width: 32px;  height: 3px;  background-color: #ed1b2e; transition: .3s; }
header .nav_btn .nav_line:not(:last-child) { margin-bottom: 8px; }
header .nav_btn .nav_line._1 { transform-origin: left bottom; }
header .nav_btn .nav_line._3 { transform-origin: left top }
header .nav_btn.active { transition: .5s linear }
header .nav_btn.active .nav_line._1 { transform: rotate(42deg) }
header .nav_btn.active .nav_line._2 { opacity: 0; }
header .nav_btn.active .nav_line._3 { transform: rotate(-42deg) }

@media (max-width:1024px) {
  header { border-bottom-width: 8px;}
  header .head_ctn { text-align: center; width: 100%; height: 100%; }
  header .head_ctn>* { vertical-align: middle; }
  header .head_ctn::before { content: ""; display: inline-block; vertical-align: middle; width: 0; height: 100%; font-size: 0; }
  header .head_ctn .logo { margin-left: 0; }
  header .tab_box2 { top: 60px; }
  header, .head_filler { height: 60px;}
}

/* --- 外層------------------ --------------------------------------- */
.space_frame { max-width : 1920px; margin : auto; overflow-x: hidden;}



/*===========KV for PC----------------==================================================*/
.kv_frame { position: relative; }
.kv_L { width: 100%; height: auto;display: block;}
.kv_m{ display: none;}/*----手機板關掉----*/
.kv_frame #scene { position: absolute; top:70px; left:380px;    bottom: 0px; }


.kv_frame .kv_title { width: 96%;   top: 20% ;  left: 0% ; 
-webkit-animation:heartbeat 1.5s ease-in-out infinite both;animation:heartbeat 1.5s ease-in-out infinite both}



@-webkit-keyframes heartbeat{from{-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:center center;transform-origin:center center;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}10%{-webkit-transform:scale(.91);transform:scale(.91);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}17%{-webkit-transform:scale(.98);transform:scale(.98);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}33%{-webkit-transform:scale(.87);transform:scale(.87);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}45%{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes heartbeat{from{-webkit-transform:scale(1);transform:scale(1);-webkit-transform-origin:center center;transform-origin:center center;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}10%{-webkit-transform:scale(.91);transform:scale(.91);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}17%{-webkit-transform:scale(.98);transform:scale(.98);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}33%{-webkit-transform:scale(.87);transform:scale(.87);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}45%{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}


/*===========KV for PAD----------------==================================================*/
@media only	screen and (min-width: 812px) and (max-width: 1366px) {
* {	-webkit-box-sizing: border-box;	box-sizing: border-box;}
    .kv_m{ display: none;}/*----手機板關掉----*/
    .kv_L { width: 100%; height: auto;display: block;}
    .kv_frame { position: relative; }
    .kv_frame #scene { position: absolute; top:50px;  left: 270px; bottom: 0px; }
    .kv_frame .kv_title { width:70%;   top: 10% ;  left: 10% ; }
 }
@media only	screen and (min-width: 1024px) and (max-width: 1180px) {
* {	-webkit-box-sizing: border-box;	box-sizing: border-box;}
    .kv_m{ display: none;}/*----手機板關掉----*/
    .kv_L { width: 100%; height: auto;display: block;}
    .kv_frame { position: relative; }
    .kv_frame #scene { position: absolute; top:20px;  left: 180px; bottom: 0px; }
    .kv_frame .kv_title { width:65%;   top: 10% ;  left: 10% ; }
 }


/*===========KV for 手機----------------==================================================*/
@media screen and ( max-width:812px) {
* {	-webkit-box-sizing: border-box;	box-sizing: border-box;}
    html, body {-webkit-text-size-adjust: none;}    
    .kv_m{ width: 100%; height: auto; display: block;}
    .kv_L { width: 100%; height: auto;display: none;}/*----PC板關掉----*/
    .kv_frame {  }
    .kv_frame #scene { display: none; }
}




/*==================****====MRT for PC====================================*/
#MRT {   background: #fce7e9 url("../images/bg_pink.jpg") top repeat-x;   }
.MRT_BOX{ width :58%; margin: 0 auto; padding: 0% 2% 2% 2%; position: relative;}
#trip01 , #trip02 , #trip03 , #trip04 {  width:100%; margin: 0 auto; height:auto;display: block; padding: 10% 0% 0% 0%; }
#trip01 p ,#trip02 p , #trip03 p , #trip04 p{ font-size: 18px; display: block; margin: 0% 0% 0% 0%; color: #000000;  line-height: 1.8em;}
.mrt01_L , .mrt02_L , .mrt03_L , .mrt04_L{ width: 100% ; height: auto; display: block;}
.mrt01_S , .mrt02_S , .mrt03_S , .mrt04_S{display: none;}





/*======================MRT for PAD====================================*/
@media only	screen and (min-width: 812px) and (max-width: 1366px) {
* {	-webkit-box-sizing: border-box;	box-sizing: border-box;}
#trip01 , #trip02 , #trip03 , #trip04{ width:100%; margin: 0 auto; height:auto;display: block; padding: 8% 0% 0% 0% }
.mrt01_L , .mrt02_L , .mrt03_L , .mrt04_L{ width: 100% ; height: auto; display: block;}
.mrt01_S , .mrt02_S , .mrt03_S , .mrt04_S{display: none;}

.MRT_BOX{ width :75%; margin: 0 auto; padding: 0% 2% 2% 2%;  }

}

@media screen and ( max-width:1024px) {
.MRT_BOX{ width :75%; margin: 0 auto; padding:0% 2% 2% 2%;  }
}

/*======================MRT for MB====================================*/
@media screen and ( max-width:812px) {
* {	-webkit-box-sizing: border-box;	box-sizing: border-box;}
    html, body {-webkit-text-size-adjust: none;}    
#MRT{ width: 100%; }	
.MRT_BOX { width :100%; margin: 0 auto; padding: 10% 2% 1% 2%;}

.mrt01_L , .mrt02_L , .mrt03_L , .mrt04_L{ display: none;}
.mrt01_S , .mrt02_S , .mrt03_S , .mrt04_S{display: block;}
	
#trip01 p ,#trip02 p , #trip03 p , #trip04 p{ font-size: 16px;  word-break:break-all; margin: 0% 0% 0% 0%; color: #000000;  line-height: 1.8em;}
	

}

@media (max-width:576px) {
#MRT{ width: 100%; }	
.MRT_BOX { width :100%; margin: 0 auto; padding: 10% 2% 1% 2%;}
.mrt01_L , .mrt02_L , .mrt03_L , .mrt04_L{ display: none;}
.mrt01_S , .mrt02_S , .mrt03_S , .mrt04_S{display: block;}	
#trip01 p{ font-size: 16px;  word-break:break-all; margin: 0% 0% 0% 0%; color: #000000;  line-height: 1.8em;}
	
}




/*==================****====險種 for PC====================================*/
#insurance {width :100%; margin: 0 auto; padding: 2% 0% ;    }
#insurance h3{ text-align: center; font-size: 38px;  color: #26466d;   }
.insuranceBOX{ width :80%; margin: 0 auto; padding: 2% 0% 2% 3%;   }
.insuranceBOX img{ display: block; padding:  0% 4%;}
.in_L{width:80%;margin:auto;display: block; }
.in_S{ display:none;}/*===========手機板關掉=============*/




/*======================險種 for PAD====================================*/
@media only	screen and (min-width: 812px) and (max-width: 1366px) {
* {	-webkit-box-sizing: border-box;	box-sizing: border-box;}
	
#insurance {width :100%; margin: 0 auto; padding: 2% 0% ;    }
#insurance h3{ text-align: center; font-size: 38px;  color: #26466d;   }
.insuranceBOX{ width :90%; margin: 0 auto; padding: 2% 0% 2% 3%;   }
.insuranceBOX img{ display: block; padding:  0% 4%;}
.in_L{width:90%;margin:auto;display: block; }
.in_S{ display:none;}/*===========手機板關掉=============*/
}

@media screen and ( max-width:1024px) {
#insurance {width :100%; margin: 0 auto; padding: 2% 0% ;    }
#insurance h3{ text-align: center; font-size: 38px;  color: #26466d;   }
.insuranceBOX{ width :90%; margin: 0 auto; padding: 2% 0% 2% 3%;   }
.insuranceBOX img{ display: block; padding:  0% 4%;}
.in_L{width:90%;margin:auto;display: block; }
.in_S{ display:none;}/*===========手機板關掉=============*/
}


/*======================險種 for MB====================================*/
@media screen and ( max-width:812px) {
* {	-webkit-box-sizing: border-box;	box-sizing: border-box;}
    html, body {-webkit-text-size-adjust: none;}    
#insurance{ width: 100%; }	
#insurance h3{ text-align: center;  font-size: 28px; padding: 0% 2%;}
.insuranceBOX { width :100%; margin: 0 auto; padding: 0% 0% 2% 0%;}	
.insuranceBOX img{ display: block; padding:  2% 0%;}	
.in_L{display: none; }
.in_S{ width:100%;margin:auto; display:block;}/*===========手機板關掉=============*/	
}

@media (max-width:576px) {
#insurance { padding: 3% 0 0%; }
#insurancee h3{text-align: center;  font-size: 28px; padding: 0% 2%;}	
.insuranceBOX { width :100%; margin: 0 auto; padding: 0% 0% 2% 0%;}	
.insuranceBOX img{ display: block; padding:  2% 0%;}	
.in_L{display: none; }
.in_S{ width:100%;margin:auto; display:block;}/*===========手機板關掉=============*/
}






/*==================****====銅板價 for PC====================================*/
.jia_frame { padding: 2% 0%;  background-color: #FFFFFF;    }
.jia_frame h3{ text-align: center; font-size: 38px; color: #26466d;    }
.jia_frame p{ text-align: center; font-size: 18px; color: #26466d;  padding: 0% 0% 2% 0%;   }
.jia_frame p a{ color: #FF0004;     }

.giftBOX , .trip_2Box{ width :55%; margin: 0 auto; padding: 1% 2% 0% 2%;  padding: 1% 0%; }
.trip_2Box_S{  display:none; }
.gift_S {   display:none;}/*===========手機板關掉=============*/
.gift_L{ width:100%; margin: 0 auto; height:auto;display: block; }

/*======================銅板價 for ipad====================================*/
@media only	screen and (min-width: 812px) and (max-width: 1366px) {
* {	-webkit-box-sizing: border-box;	box-sizing: border-box;}
.trip_2Box_S{  display:none; }
.gift_S {   display:none;}/*===========手機板關掉=============*/
.gift_L{ width:100%; margin: 0 auto; height:auto;display: block; }
.giftBOX , .trip_2Box{ width :78%; margin: 0 auto; padding: 2% 2% 1% 2%;}
}

@media screen and ( max-width:1024px) {
.giftBOX , .trip_2Box{ width :98%; margin: 0 auto; padding: 2% 2% 1% 2%;}
.trip_2Box_S{  display:none; }	
}
/*======================銅板價 for MB====================================*/
@media screen and ( max-width:812px) {
* {	-webkit-box-sizing: border-box;	box-sizing: border-box;}
    html, body {-webkit-text-size-adjust: none;}    
.jia_frame{ width: 100%; }	
.jia_frame h3{ text-align: center; font-size: 28px;}
.jia_frame p{ text-align: center; word-break:break-all; font-size: 16px; color: #26466d; padding: 2% 2%;   }	
.trip_2Box_S{ width: 95%; margin: 0 auto;height: auto; display:block; }	
.trip_2Box_S img{ padding: 2% 0%; }		
.trip_2Box{  display:none; }		
}

@media (max-width:576px) {
.jia_frame { padding: 5%  0%; }
.jia_frame h3{ text-align: center; font-size: 28px; padding: 0% 3%;}	
.jia_frame p{ text-align: center; word-break:break-all; font-size: 16px; color: #26466d; padding: 2% 2%;   }		
.giftBOX { width :100%; margin: 0 auto; padding: 2% 2% 0% 2%;}
.gift_S{ width: 100%;  margin: 0 auto;display:block;  padding-bottom:5px;}/*====手機板===========*/
.gift_L{display:  none; } /*================桌機板===關掉==================*/
.trip_2Box_S{ width: 95%; margin: 0 auto;height: auto; display:block; }	
.trip_2Box_S img{ padding: 2% 0%; }		
.trip_2Box{  display:none; }	
}






/*============================展開內容文字==================================================================*/
#ntc_frame_annotation { color: #000000; background-color: #f3f3f3;  }/*=======備註====*/
#ntc_frame_award { color: #000000; background-color: #f3f3f3;  }/*=======責任====*/
#ntc_frame_activ, #ntc_frame_activ1, #ntc_frame_activ2, #ntc_frame_activ3, #ntc_frame_activ4, #ntc_frame_activ5 { color: #000000; background-color: #f3f3f3;  }/*=======投保====*/
#ntc_frame { color: #000000; background-color: #f3f3f3;  }/*=======注意事項====*/
/*============= 展開=====================*/
.methods_frame2 .more { font-size : 0; text-align: center;  margin : 20px auto; }
.methods_frame2 .more img, .methods_frame2 .more p { display: inline-block; vertical-align: middle; cursor: pointer; }
.methods_frame2 .more p { font-size: 38px; font-weight: bold; color : #262b33; padding-left: 15px; }
.ntc_frame .ntc_ctn { padding: 10px 40px; }
.ntc_frame .ntc_txt{ line-height: 2em ; font-size: 18px; font-weight: normal; margin: 0 auto; width: 55%;}
.ntc_frame .ntc_txt:not(.test) { display: none; }
.ntc_frame .ntc_txt x { font-weight: bold; }
.ntc_frame .ntc_title .more > * { vertical-align: middle; }
.ntc_frame .ntc_title .more::before { content: ""; display: inline-block;  vertical-align: middle;  width: 0;  height: 100%;  font-size: 0; }
.ntc_frame ._plus {  position: relative; width: 20px;  height: 20px;  display: inline-block; margin-left: 15px; }
.ntc_frame ._plus::before, .ntc_frame ._plus::after { content: ""; position: absolute; top: calc(0% - 1px); left: 0; right: 0;  height: 2px;       background-color: #262b33; transition: .3s; }
.ntc_frame ._plus:not(.active)::after { transform: rotate(-90deg) }

/*===========for PAD 展開內容===============================*/
@media only	screen and (min-width: 812px) and (max-width: 1366px) {
  .ntc_txt p { line-height: 2em ; font-size: 16px; }
.ntc_frame .ntc_txt{  margin: 0 auto; width: 72%;}
	
}

@media (max-width:1024px) {
  .ntc_txt p { line-height: 2em ; font-size: 16px; }
	.ntc_frame .ntc_txt{  margin: 0 auto; width: 72%;}
}

/*===========for MB 展開內容===============================*/
@media (max-width:768px) {
  .methods_frame li { font-size: 20px; }
  .methods_frame li p { font-size: 16px; padding-left: 3px;  }
  .methods_frame2 .more { margin: 30px auto; }
  .methods_frame2 .more p { font-size: 28px; }
  .ntc_frame .ntc_txt { line-height: 2em ; font-size: 16px; width: 100%;}
}

@media (max-width:576px) {
  .ntc_frame .ntc_ctn { padding: 20px; }    
  .ntc_frame ._plus { width: 15px; height: 15px;  margin-left: 10px; }
  .methods_frame2 .more { margin: 20px auto; }
  .methods_frame2 .more p { font-size: 28px; line-height: 1.2em; padding-left: 0;  }  
   .ntc_frame .ntc_txt { line-height: 2em ; font-size: 16px; width: 100%;}
}




/* --- footer ---------------------------------------------------------------------------------------------------- */
footer { display: block; text-align: center; padding: 25px 10px 50px 10px; border-bottom: 16px solid #ed1b2e; font-size:15px; color: #6d6d6d; 
         line-height: 1.5; box-shadow: 0px -2px 10px #eeeeee; }
footer .fo_ctn { max-width: 600px; margin: auto; }
footer .fo_ctn .fo_media a { width : 30px; padding: 0 8px 8px;  box-sizing : content-box; font-size: 0; line-height: 1; }
footer .fo_link a {  color : #6d6d6d;  -webkit-transition: .5s;  transition: .5s; line-height: 30px; text-decoration: underline;}
/*--- footer .fo_link a::after {  content: "｜";  padding: 0 5px; } ----*/
footer .fo_link a:nth-of-type(5)::after, footer .fo_link a:nth-of-type(9)::after { content: ""; }
footer .fo_link a:hover {  color: #ed1b2e; }

@media (max-width:1024px) { footer { border: none; } }

@media (max-width:576px) {
	footer { padding: 25px 10px 70px 10px; border-bottom: 16px solid #ed1b2e;
         line-height: 1.5; box-shadow: 0px -2px 10px #eeeeee; }
	footer .fo_ctn { max-width: 350px; } 
	footer .fo_link a {  color : #6d6d6d;  -webkit-transition: .5s;  transition: .5s; line-height: 24px;}
}


/*=========================================================================================*/


.fx { display: flex; }
.jcc { justify-content: center; }
.aic { align-items: center; }
.h100 { height: 100%; }
._noto { font-family: "Noto Sans TC", "微軟正黑體", "Microsoft JhengHei", "Segoe UI", Arial, sans-serif; }
.nav_mask { position: fixed; top: 0; left: 0; right: 0;  bottom: 0; z-index: 4;  background-color: rgba(0, 0, 0, 0.5) }
.nav_mask:not(.active) { display: none; }




