@charset "utf-8";

/* CSS Document */
/************************************************************************************
RESET
*************************************************************************************/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,figure,article,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td ,header {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}
body {
    line-height: 1;	
	-webkit-text-size-adjust: none;/*防止allpe的safari瀏覽器字體變大*/
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}

/* remember to define focus styles! */
:focus {
    outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
    text-decoration: none;
}
del {
    text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
   /* border-collapse: collapse;*/
    border-spacing: 0;
}

a img {
	border: none;
}

.clean { clear:both;}

.clearfix {
  overflow: auto;
}

img { max-width:100%;}

.left { float: left;}
.right { float: right;}

*{
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}


/************************************************************************************
STRUCTURE 主要區塊
*************************************************************************************/

html { scroll-behavior: smooth; }

#web-outer {
  font-family:"微軟正黑體","Roboto", sans-serif;
	max-width: 1920px;
  background:#023353;
　overflow-x: hidden;
}

/*======================
====Main CSS=====
=======================*/

/*----header------*/

.mainpic { 
    margin: 0 auto;
    text-align: center;
    max-width: 1920px;
    height: 570px;
    padding:0 15px;
}

header h1 {
    text-indent: 101%;
    overflow: hidden;
    white-space: nowrap;
    position: absolute;
    width: 100%;
}

.logo { 
	z-index: 700;
	position:relative;
	top:90px;
  background:url("img/logo-nor.webp") top center no-repeat;
  height: 274px;
  margin-left: 35%;
}
.v { 
	z-index: 710;
  padding-top: 240px;
}
.v img {  max-width: 25px;}

.v {
  animation: animationFrames ease-in 1s;
  animation-iteration-count: infinite;
  transform-origin: 0% 50%;
  -webkit-animation: animationFrames ease-in 1s;
  -webkit-animation-iteration-count: infinite;
  -webkit-transform-origin:0% 50%;
  -moz-animation: animationFrames ease-in 1s;
  -moz-animation-iteration-count: infinite;
  -moz-transform-origin: 50% 50%;
  -o-animation: animationFrames ease-in 3s;
  -o-animation-iteration-count: infinite;
  -o-transform-origin: 50% 50%;
  -ms-animation: animationFrames ease-in 3s;
  -ms-animation-iteration-count: infinite;
  -ms-transform-origin: 50% 50%;
}

@keyframes animationFrames{
  0% {
    transform:  translate(0px,1px)  ;
  }
  33% {
    transform:  translate(0px,4px)  ;
  }
  83% {
    transform:  translate(0px,13px)  ;
  }
  100% {
    transform:  translate(0px,18px)  ;
  }
}

@-moz-keyframes animationFrames{
  0% {
    -moz-transform:  translate(0px,1px)  ;
  }
  33% {
    -moz-transform:  translate(0px,4px)  ;
  }
  83% {
    -moz-transform:  translate(0px,13px)  ;
  }
  100% {
    -moz-transform:  translate(0px,18px)  ;
  }
}

@-webkit-keyframes animationFrames {
  0% {
    -webkit-transform:  translate(0px,1px)  ;
  }
  33% {
    -webkit-transform:  translate(0px,4px)  ;
  }
  83% {
    -webkit-transform:  translate(0px,13px)  ;
  }
  100% {
    -webkit-transform:  translate(0px,18px)  ;
  }
}

@-o-keyframes animationFrames {
  0% {
    -o-transform:  translate(0px,1px)  ;
  }
  33% {
    -o-transform:  translate(0px,4px)  ;
  }
  83% {
    -o-transform:  translate(0px,13px)  ;
  }
  100% {
    -o-transform:  translate(0px,18px)  ;
  }
}

@-ms-keyframes animationFrames {
  0% {
    -ms-transform:  translate(0px,1px)  ;
  }
  33% {
    -ms-transform:  translate(0px,4px)  ;
  }
  83% {
    -ms-transform:  translate(0px,13px)  ;
  }
  100% {
    -ms-transform:  translate(0px,18px)  ;
  }
}

#toolbar-options a { text-decoration: none;}

/*======================
====nav CSS=====
=======================*/

.side-nav {
	position:fixed;
	z-index: 999;
	top:220px;
	right:10px;
	padding-top: 79px;
	width: 90px;
}

.nav-top { background:url("img/nav-top.png") center top no-repeat; height: 81px; text-indent: -3000px; }
.nav-bom {	
    width: 100%;  
	background: url("img/nav-bom.png") center top no-repeat;
	height: 42px;
     text-align: center;
}

.nav-bom a {
    width: 100%;
    height: 100%;
    display: block;
	color: #ded3ca;
    font-size: 16px;
    line-height:48px;
    text-decoration: none;
}

.nav-bom a:hover {
	color:#ffffff;
    font-size: 16px;
    text-decoration: none;
}

.side-nav li {
	text-align: center;
	line-height: 22px;
	width: 90px;
	font-size:14px;
	font-weight: bold;
	font-family: "微軟正黑體","黑體";
    background: #ded3ca; 
    padding: 2px 0;
}

.side-nav li a {
	width: 90%;
	display: block;
	color:#937664;
	outline: none;
	border:1px solid #b9ada3; 
    margin: 0 5px;
    text-decoration: none;
}


.side-nav li#btn1 a:hover,.side-nav li#btn1 a.active {
	color:#ffffff;
	background: #8862a0;
}

.side-nav li#btn2 a:hover,.side-nav li#btn2 a.active {
	color:#ffffff;
	background: #31808a;
}

.side-nav li#btn3 a:hover,.side-nav li#btn3 a.active {
	color:#ffffff;
	background: #223550;
}

.side-nav li#btn4 a:hover,.side-nav li#btn4 a.active {
	color:#ffffff;
	background: #006444;
}

.side-nav li#btn5 a:hover,.side-nav li#btn5 a.active {
	color:#ffffff;
	background: #4f357c;
}

.side-nav li#btn6 a:hover,.side-nav li#btn6 a.active {
	color:#ffffff;
	background: #00416b;
}

/*======================
====main CSS=====
=======================*/ 

main {
  background:url("img/snow.webp") center top repeat-y;     
}
.aurora-outer {
  max-width: 1100px;
  margin:0 auto;
  padding:0 30px;
}
.info-bg01 { background:url("img/ph39.webp") left top no-repeat; min-height: 265px; padding-left: 425px; padding-top: 40px; }
.info-bg02 { background:url("img/ph40.webp") right top no-repeat; min-height: 423px; padding-right: 450px; padding-top: 150px; margin-top: -100px; }
.info-bg03 { background:url("img/ph41.webp") right top no-repeat; min-height: 405px; padding-right: 625px; padding-top: 50px; margin-top: -100px; }

.tit01 {
	color:#ffe6c2;
	font-family: "微軟正黑體","黑體";
	font-size: 22px;
	letter-spacing: 1px;
  font-weight: 500;
	padding: 0px 0 0 40px;
	line-height: 50px;
	text-indent:-22px;
	margin-bottom: 10px;
}
.tit01 span { 
	color:#05e5ff;
	font-size: 28px;
	letter-spacing: 1px;
    padding:0 4px;
}

.tit-long { background: url("img/line-long.webp") left bottom no-repeat; }
.tit-short { background: url("img/line-short.webp") left bottom no-repeat; }

.ct01 { 
	color:#ffffff;
	font-family: "微軟正黑體","黑體";
	font-size: 16px;
  font-weight: 500;
  line-height: 1.7em;
  padding-left: 20px;
}
.ct01 span { 
  display: block;
	font-size: 14px;
  color:#8ccad8;
}

.ttop { 
  background: url("img/bg-subtitle.webp") center top no-repeat;
	color:#ffe6c2;
	font-family: "微軟正黑體","黑體";
	font-size: 28px;
  font-weight: 500;
  letter-spacing: 1px;
  text-align: center;
  line-height: 40px;
  margin: 30px 0 30px 0;
}
.ttop span { 
	color:#05e5ff;
	font-size: 36px;
}

.ttop02 {
  background: url("img/bg-subtitle2.webp") center top no-repeat;
  margin: 80px 0 30px 0;
}

.spots-ctbox {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}
.spots-ctbox h3 {
    flex:0 0 136px;
    width:136px;
    height:136px;
    background: linear-gradient(to bottom, rgba(30,87,153,1) 0%,rgba(19,204,203,1) 100%); 
    border-radius: 50%;
    color:#ffffff;
    font-size: 22px;
    font-weight: 500;
    text-align: center;
    line-height: 1.2em;
    padding-top: 42px;
}
.spots-ctbox h3 span { display: block;}

.ct02 { 
	color:#ffffff;
	font-family: "微軟正黑體","黑體";
	font-size: 16px;
    font-weight: 500;
    line-height: 1.7em;
    padding:0 30px;
    
}
.ct02 span { 
    display: block;
	font-size: 14px;
    color:#ffd186;
}
.spot-pic { 
    flex:0 0 350px;    
}
.o01 { order:1;}
.o02 { order:2;}
.o03 { order:3;}

/*----tour-list---*/

.subtitle { padding:50px 0 20px 0; }
.tour-outer { padding:10px 0px;  }
.tour-title {  margin-top: 15px; padding-bottom:8px; font: 500 13px "微軟正黑體"; color:#023353;  }
.tour-title span {  font: 600 18px "微軟正黑體"; padding:3px 8px; background-color:#ffffff; border-radius: 10px 0; }

.tour-box { padding:0 0 26px 0;}
.tour-list { text-align: left;  }

.tour-list li  { 
    font: 500 18px "微軟正黑體" ; color: #5de1ff; 
    line-height: 1.8em;
    margin:15px 0;
    border-bottom: 1px solid #9ebac0;
}
.tour-list li a { 
     color: #5de1ff;  padding-bottom: 8px; 
     text-decoration:none; width: 100%; height:100%; display:flex; overflow:hidden;  
     justify-content: space-between;  align-items: stretch;
}

.tour-list li a::before { 
    content: url("img/icon02.webp");
    padding-right: 6px;
    display: inline-block;
    width:21px;
    height:24px;
}

.name_l { flex:1; }
.price_r { flex:0 0 18%; align-self: flex-end; text-align: right; color: #ffffff; font: 600 13px "微軟正黑體"; }
.price_r span { font: 600 24px "微軟正黑體";  color: #f9d34d; padding:0 2px; font-family: 'Barlow', sans-serif; }

.tour-list li a h3 span { font: 600 15px "微軟正黑體" ; display: inline;  color: #f9d34d; padding-left:6px; display: block; }
.tour-list li a h3 span:empty { display:none;}
.tour-list li a p { display: block; margin-top: 8px; }
.tour-list li a p span { font-style: normal; font: 600 15px "微軟正黑體" ;  color: #e8e8e8; text-decoration: none;   display: block; line-height: 1.7em;  padding-left: 21px; text-indent: -11px;}
.tour-list li a p span::before {  
    content: "‧";
    font-size: 15px;
    padding-right: 6px;
 }
.tour-pic { text-align: center;}

/*-----Q&A-----*/

.toggle_wraper { margin-bottom: 50px;}
.qa-outer {  
  max-width: 1100px;
  margin:0 auto;
  padding:0 30px;
 }
.qa-topic { 
    color:#ffffff;
    font-family: "微軟正黑體","黑體";
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 1px;
    line-height: 50px;
    margin: 20px 0 20px 0;
}
.qa_wraper{ border-bottom: 1px solid #c0c0c0;}

h4.qa_title > a {
    display: flex;
    padding: 20px 50px;
    color: #05e5ff;
    font-size: 18px;
    font-weight: 500;
    position: relative;
    text-decoration: none;
    line-height: 1.6em;
}
h4.qa_title > a::before{
	content: '';
	display: block;
	width: 25px;
	height: 21px;
	background: url('img/icon03.webp') center left;
	background-repeat: no-repeat;
	left: 16px;
	position: absolute;
} 
h4.qa_title>a.qa_active::before{
	background: url('img/icon03.webp') center left;
}
h4.qa_title>a::after {
    content: '';
    display: block;
    width: 15px;
    height: 10px;
    background: url("img/icon-down.webp") center right;
	  background-repeat: no-repeat;
    position: absolute;
	  background-size: contain;
    right: 16px;
	  top:40%;
	  transition: all .3s linear;
	  transform: rotate(0deg);
}
h4.qa_title > a.qa_active::after{
  background: url("img/icon-up.webp") center right;
	background-size: contain;
	background-repeat: no-repeat;
	transform: rotate(360deg);
}
.qa_container {
    padding: 18px 0 24px 0;
}

.qa_container > p {
  color: white;
  line-height: 1.7em;
  padding-left: 50px;
}

#BOX {display:none;}

/*------media query----------*/


@media only screen and ( max-width:1024px) 
{ 
  .spots-ctbox { margin-bottom: 40px;}
}

@media only screen and ( max-width:960px) 
{ 

  .tit01 { font-size: 18px; line-height: 46px; text-indent:-18px; }
  .tit01 span { font-size: 24px; }
  .info-bg01 { padding-left: 405px;  }
  .info-bg02 { padding-right: 370px;  padding-top: 50px; margin-top: 0px;  }
  .info-bg03 { padding-right: 400px; }
}

@media only screen and ( max-width:850px) 
{ 
  .info-bg01 { padding-left: 305px;  background:url("img/ph39.webp") -50px top no-repeat; }
  .spots-ctbox { margin-bottom: 50px; flex-wrap:wrap; } 
  .spot-pic { flex:1 0 100%; padding-top: 30px; text-align: center;}
  .spots-ctbox .ct02 { flex:0 0 80%; }
  .o01 { order:3;}
  .o02 { order:1;}
  .o03 { order:2;}
}

/*---平板-----*/

@media only screen and ( max-width:768px) 
{ 
  .mainpic { height: 530px; }
  .logo { margin-left: 0%; }
  .side-nav { display: none;} 
  .tour-list li a { flex-wrap: wrap; }
  .name_l {  flex:0 0 95%;  }
  .price_r { flex:0 0 95%; padding-top: 12px; }
  .info-bg01 { background:url("img/ph39.webp") center bottom no-repeat; min-height: 410px; padding-left: 0px; }
  .info-bg02 { background:url("img/ph40.webp") center bottom no-repeat; min-height: 500px; padding-right: 0px;  margin-top: 0px; }
  .info-bg03 { background:url("img/ph41.webp") center bottom no-repeat; min-height: 510px; padding-right: 0px;  margin-top: 0px; }
  .tit01 { line-height: 2em; margin-top: -50px; }
  .spots-ctbox .ct02 { flex:0 0 60%; }
  
}

@media only screen and (max-width:600px) 
{   
  .info-bg01 { min-height: 460px; }
  .info-bg02 { min-height: 550px; }
  .spots-ctbox .ct02 { flex:0 0 100%; padding:0; }
  .tour-list li a::before { display: none; }

}
/*---手機版-----*/

@media only screen and (max-width:480px) 
{
  /*.tour-list li  {font-size:17px; } */
  .tit01 { text-indent:0px; padding:0 0 0 0px;}
  .tit01 img { display: none; }
  .ct01 { padding-left: 0;}
  .tit-long { background: url("img/line-long.webp") right bottom no-repeat; }
  .tit-short { background: url("img/line-short.webp") rigth bottom no-repeat; }
  .info-bg01 { min-height: 500px; }
  .info-bg02 { min-height: 600px; }
  .info-bg03 { min-height: 550px; }
  .info-bg01 { min-height: 560px; }
  .ttop { background: none; background: url("img/line-short.webp") center bottom no-repeat; line-height:50px; }
  .ttop02 { background: none; background: url("img/line-short.webp") center bottom no-repeat; line-height:50px; }
  .tour-outer { padding:10px 0px;  }
}