@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,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td, figure, mark, video {
    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;}*/
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;}
img {max-width: 100%;image-rendering: -webkit-optimize-contrast;}
.clean { clear:both;}
a {color: #333333; text-decoration: none; blr:expression(this.onFocus=this.blur()); outline: none; /* for Firefox */hlbr:expression(this.onFocus=this.blur());}
a:hover {}
a:focus{ -moz-outline-style: none;}
.b-box{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	margin: 0;
	padding: 0;
	font-size:15px;	
}

/*wow*/
.wow:first-child {
visibility: hidden;
visibility:visible \9;
}
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;}

img { max-width:100%;}

/************************************************************************************
STRUCTURE 主要區塊
*************************************************************************************/

body {   
	-webkit-text-size-adjust: none;/*防止allpe的safari瀏覽器字體變大*/
	background-color: #58b2dc;
}

/*基本變數*/
:root {
	/*基本*/
	--white-color:#fff;
	--black-color:#141115;
	--family-basic:Verdana,'微軟正黑體';
	--family-noto:"Noto Sans TC",Verdana;	
}
/*-------------------------------------選單---------------------------------------------*/
#main-nav{
   position: relative;
   z-index: 990;
   margin:0 auto;  
}

#block_menu {
	width: 100%;
    overflow: hidden;
}

.sticky {
    top:40px;	
}

#main-nav ul {background-color: #023a8e;text-align: center; height: 65px;text-align: center;}
#main-nav ul li {display:inline-block;font-family: var(--family-basic);}
#main-nav .nav001{background-color: #fff600;color: #023a8e; width: 55px;line-height: 1.2em;font-weight: 600; border-radius: 0 0 30px 30px;padding-top:5px;padding-bottom: 10px;}
#main-nav .nav002{background-color: #0298cf;color: #fff; width: 55px;line-height: 1.2em;font-weight: 600;border-radius: 0 0 30px 30px;padding-top:5px;padding-bottom: 10px;}
#main-nav ul li a { display:block;font-size: 18px;line-height: 1em;font-weight: 600;  text-align: center; text-decoration: none;border-radius: 25px; color: #fff;padding: 5px 8px;margin: 0 5px;}
#main-nav ul li a:hover,#main-nav ul li a.active { background: #fff;  color:#023a8e;}
.active {
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -o-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

#web-outer{	
	clear: both;
	overflow: hidden;
	min-height: 5000px;
}

header h1 {
    text-indent: 101%;
    overflow: hidden;
    white-space: nowrap;
    position: absolute;
}

.header-content{
	padding-top: 40px;	
	background-color: #001147;
	text-align: center;	
	clear: both;
	overflow: hidden;
}

.header-content .product-slide{max-width: 1200px; margin: 0 auto;padding-bottom: 40px;}

.product-slide .slick-dots li button:before {color: rgba(194,194,194,0.5);}
.product-slide .slick-dots li.slick-active button:before{color: #58b2dc;}

.header-img {aspect-ratio: 300 / 157;}

.bg{padding: 50px 0;}
.bg02{background-color: #fff;padding-top: 50px;padding-bottom: 50px;}

/*標題*/
h2.big-title {
	max-width: 1100px;
	background: url("../img/title_bg.webp") top no-repeat;
	text-align: center;
	margin: 0 auto 30px auto;
}

h2.big-title span {
	min-width: 280px;
      display: inline-block;
      padding: 15px;
	  font-size: 35px;
	  font-family: var(--family-basic);
	  margin: 0 auto;
      border: 2px solid #023a8e;
      background-color: #ade1f8;
      color: #023a8e;     
      font-weight: bold;
      border-radius: 999px;
      text-align: center;
      position: relative;
      box-sizing: border-box;
		
    }

    .big-title span::before {
      content: '';
      position: absolute;
      top: 0px;
      bottom: 0px;
      left: 0px;
      right: 0px;
      border: 3px solid #fff;
      border-radius: 999px;
      pointer-events: none;
    }
h2.big-title span em{font-style: normal;position: absolute;font-size: 15px;color: #fff;left: 0; right: 0;top: -30px;font-family: var(--family-basic);transform: rotate(-5deg);}

.main-top{padding-top: 40px;}
.main-top02{padding-top: 50px;}

/*tab*/
.intro-wrap{clear: both;overflow: hidden;}
ul.tabs {width: 100%;margin: 0 auto;margin-top: 20px;text-align: center;}
ul.tabs li {display: inline-block;margin-bottom: 5px;}
ul.tabs li em{display: block;margin: 0 auto;width: 100px;font-style: normal;font-family: var(--family-basic); font-size: 15px;font-weight: 500; background-color: #fff;color: #2960d4;padding: 2px 5px;border-radius: 10px;}
ul.tabs li a {display: block;padding: 5px 10px;margin-left: 5px;margin-right: 5px;}
ul.tabs li a.tabs-nav {color: #023a8e;border: 1px solid #023a8e;background: #fff;border-radius: 25px;font-family: var(--family-basic); font-size: 18px;font-weight: 600;}
ul.tabs a:hover.tabs-nav,ul.tabs li.active a.tabs-nav{color: #fff;background: #023a8e;}
ul.tabs li a.tabs-nav1 {color: #023a8e;border: 1px solid #023a8e;background: #fff;border-radius: 25px;font-family: var(--family-basic); font-size: 18px;font-weight: 600;}
ul.tabs a:hover.tabs-nav1,ul.tabs li.active a.tabs-nav1{color: #fff;background: #023a8e;}

div.tab-container {width: 100%;margin: 0 auto;}
div.tab-container .tab-content {padding-top: 30px;}


/*綜合行程*/
.all-main{max-width: 1100px;border-radius: 25px;background-color: #fff;margin: 0 auto;padding: 30px 0;}
.tour-list {width: 95%;margin: 0 auto;}
.tour-list a {display:flex;padding: 10px;overflow: hidden;border-bottom: dashed 1px #696969;text-decoration: none;
			justify-content:space-between;align-items:center;}
.tour-list a:hover {}
.name-l{flex:0 0 85%;font-family: var(--family-basic);font-size: 18px;color:#666;line-height: 1.5em;}
.name-l em{font-style:normal;color: #fff;font-family: var(--family-basic);font-size: 15px;border-radius: 5px;background-color: #3e86c1; padding: 3px;margin-right: 5px;}
.name-l strong{font-family: var(--family-basic);font-size: 15px;color: #3e86c1;margin-left: 5px;}
.price-r{flex:0 0 15%; text-align:right;font-family: var(--family-basic);font-weight: 600; font-size: 15px;line-height: 1.5em;color: #f74040;}
.price-r strong{font: 600 20px "Anton", sans-serif;margin: 0 2px;letter-spacing:1px;}

.tour-list02 {width: 95%;margin: 0 auto;}
.tour-list02 a {display:flex;padding: 10px;overflow: hidden;border-bottom: dashed 1px #696969;text-decoration: none;
			justify-content:space-between;align-items:center;}
.name-l02{flex:0 0 85%;font-family: var(--family-basic);font-size: 18px;color:#666;line-height: 1.5em;}
.name-l02 em{font-style:normal;color: #fff;font-family: var(--family-basic);font-size: 15px;border-radius: 5px;background-color: #3e86c1; padding: 3px;margin-right: 5px;}
.name-l02 strong{font-family: var(--family-basic);font-size: 15px;color: #3e86c1;margin-left: 5px;}
.name-l02 p span{display: inline-block;padding: 3px 5px;margin: 3px 3px; font-size: 15px;font-weight: 500;line-height: 1.5em; color: #259ed4;border-radius: 20px;border: 1px #259ed4 solid;}
.price-r02{flex:0 0 15%; text-align:right;font-family: var(--family-basic);font-weight: 600; font-size: 15px;line-height: 1.5em;color: #f74040;}
.price-r02 strong{font: 600 20px "Anton", sans-serif;margin: 0 2px;letter-spacing:1px;}

.tour-list03 {width: 95%;margin: 0 auto;}
.tour-list03 a {display:flex;padding: 10px;overflow: hidden;text-decoration: none;
			justify-content:space-between;align-items:flex-start;}
.name-l03{flex:0 0 75%;font-family: var(--family-basic);font-size: 18px;color:#666;line-height: 1.5em;}
.name-l03 em{font-style:normal;color: #fff;font-family: var(--family-basic);font-size: 15px;line-height: 1.5em;border-radius: 5px;background-color: #3e86c1; padding: 3px;margin-right: 5px;}
.name-l03 strong{font-family: var(--family-basic);font-size: 15px;color: #3e86c1;margin-left: 5px;}

.price-r03{flex:0 0 25%; text-align:right;font-family: var(--family-basic);font-weight: 600; font-size: 15px;line-height: 1.5em;color: #f74040;}
.price-r03 strong{font: 600 20px "Anton", sans-serif;margin: 0 2px;letter-spacing:1px;}

ul.pkg-mark{width: 95%; padding-left: 10px;}
ul.pkg-mark li{font-family: var(--family-basic); font-size: 15px;font-weight: 500;line-height: 1.5em;color: #259ed4;margin-top: 10px;margin-left: 25px; list-style-image: url("../img/icon.webp");}

/*影片*/
.cf{
	max-width: 1100px;margin: 0 auto;
	padding: 1% 0;		
}
.cf p{font-family: var(--family-basic); font-size: 15px;font-weight: 500;color: #fff;text-align: center;margin: 1% 0 0 0;}

.video {
	width: 100%;
    height: 500px !important;	
  }

h2.min-title {	
	text-align: center;
	margin: 50px auto 30px auto;
}

h2.min-title span {
	max-width: 800px;
   display: inline-block;
   padding: 15px;
   border: 2px solid #023a8e;
   background-color: #fff600;
   color: #023a8e;     
   font-weight: bold;
   border-radius: 10px;
   text-align: center;
   position: relative;
  box-sizing: border-box;
  font-size: 18px;
  line-height: 1.5em; 
  font-family: var(--family-basic);
  font-weight: 600;
  margin: 0 10px;
    }
.min-title span::before {
      content: '';
      position: absolute;
      top: 0px;
      bottom: 0px;
      left: 0px;
      right: 0px;
      border: 2px solid #fff;
      border-radius: 10px;
      pointer-events: none;
    }

/*超級任天堂世界*/
.supermario-wrap{max-width: 1100px;clear: both;overflow: hidden;margin: 0 auto;}

.playwild-wrap{		
	margin: 0 auto;	
	width: 100%;	
}

.playwild-wrap h2{color: #023a8e;font-family: var(--family-basic);font-size: 35px;font-weight: 600;line-height: 1.5em; text-align: center;padding-top: 40px; padding-bottom: 20px;}
.playwild-wrap h2 span{margin-left: 10px;}
.playwild-box{
	position: relative;	
    display:flex;
	flex-wrap: wrap;
	margin: 0 auto;	
	width: 100%;
	z-index: 30;
	align-items:center;
}

.playwild-txt{width: 45%;margin: 0 2% 0 2%;}
.playwild-txt h3{color: #023a8e;font-family: var(--family-basic); font-size: 25px;line-height: 1.5em; font-weight: 600; text-align: center;}
.playwild-txt p{margin-top: 5px;font-family: var(--family-basic);font-weight: 600; color: #323232;font-size: 15px;line-height: 1.8em;} 
.playwild-txt p a{border-bottom: 1px solid;float: right;}
.playwild-img{width: 50%;}
.playwild-img{
  aspect-ratio: 192 / 139;
}
.playwild-img02{width: 50%;}
.playwild-img02{
  aspect-ratio: 802 / 535;
}
.animate-A{
	max-width: 1100px;
	margin:  30px auto 0 auto;
	height: 250px;
    background: url("../img/animate_01.webp") top center repeat-x;
    animation: AA 40s 0s linear infinite;
    background-position: 0 0;	
	
}
@-webkit-keyframes AA{
	0%{
		background-position: 0 0;
	}
	100%{
		background-position: -1925px 0;
	}
}

.animate-B{
	max-width: 1100px;
	height: 250px;
	margin:  30px auto 0 auto;
    background: url("../img/animate_02.webp") top center repeat-x;
    animation: AA 40s 0s linear infinite;
    background-position: 0 0;
	padding: 1% 0 0 0;	
}
@-webkit-keyframes AA{
	0%{
		background-position: 0 0;
	}
	100%{
		background-position: -2310px 0;
	}
}
.num {	
  width: 100%;
  text-align: right;
  font-size: 13px;
  line-height: 1.5em;
  font-family: var(--family-basic);
 margin: 0 auto;
}


/*Q&A*/
#qa{background-color: #fff;}
.accordion {
    max-width: 1100px;
    margin: 0 auto 120px auto;      
    overflow: hidden;
	font-family: var(--family-basic); 	
    }

    .accordion-item {      
	margin-bottom: 5px;		
    }
	  
    .accordion-header {
	background: #d9f4ff; 
      cursor: pointer;
      padding: 10px 15px 10px 10px;
      display: flex;
      justify-content: space-between;
      align-items: center;
      transition: background 0.3s ease;	
    }
	
	.accordion-header h3{
	color: #023a8e;
	font-size: 25px;	
	font-size: 18px;
	line-height: 1.5em;
	font-weight: 600;
	padding-right: 5px;	 
	} 

    .accordion-header:hover {
      background: #c9efff;
    }

  /* 箭頭樣式：純 CSS 寫的 V 形箭頭 */
  .arrow {
  width: 3px;
  height: 3px;
  border: solid black;
  border-width: 0 1px 1px 0;
  border-color: #64c2e9;
  display: inline-block;
  padding: 3px;
  transform: rotate(45deg);
  transition: transform 0.3s ease;  
    }

    .accordion-item.active .arrow {
      transform: rotate(225deg);
    }

    /* 展開動畫 */
    .accordion-content {
      max-height: 0;
      overflow: hidden;
      opacity: 0;
      transform: translateY(-10px);
      padding: 0 20px;
      background: #ffffff;
      transition:
        max-height 0.4s ease,
        opacity 0.4s ease,
        transform 0.4s ease,
        padding 0.3s ease;
    }
	  
.accordion-content p{color: #323232;font-size: 15px;line-height: 1.8em; font-weight: 600;padding: 10px 0 5px 0;}
.accordion-content p strong{color: #dd1138;}
.accordion-content p.down{margin-bottom: 15px;}
.accordion-content ol{margin: 5px 5px 5px 20px;list-style:decimal;color: #323232;}
.accordion-content ol li{font-size: 15px;line-height: 1.8em; font-weight: 600;margin-top: 5px;}

.accordion-content ul{margin: 5px 5px 5px 20px;list-style:circle;color: #323232;}
.accordion-content ul li{font-size: 15px;line-height: 1.8em; font-weight: 600;margin-top: 5px;} 

.accordion-content a{color: #023a8e;text-decoration:underline; display:inline-block;}
.accordion-content a:hover{text-decoration: none;}

.accordion-content span{color: #023a8e; background-color: #fff600;display: inline-block;padding: 3px;margin-right: 3px;border-radius: 5px;}
 .accordion-item.active .accordion-content {
      opacity: 1;
      transform: translateY(0);
      padding: 0 20px;
      /* max-height 由 JS 動態控制 */
    }

/*錨點*/
.block-first{overflow: hidden;padding-top: 130px;margin-top: -130px;padding-bottom: 70px;}
.block-second{overflow: hidden;padding-top: 100px;margin-top: -100px;}

.flex-center {	
	justify-content: center;
}
.flex-end {	
	justify-content: flex-end;	
}
.flex-between {	
	justify-content: Space-between;	
}
.flex-row-right {	
	flex-direction: row-reverse;	
}

/*------media query----------*/
@media only screen and ( max-width:1100px) {
h2.min-title span {max-width: inherit;width: 90%;}
.all-main{max-width: inherit;width: 90%;}
.accordion { max-width: inherit;width: 90%;}
.supermario-wrap{max-width: inherit;width: 90%;}
}
@media only screen and ( max-width:959px) {
}
@media only screen and ( max-width:800px) 	
{	
.name-l,.name-l02{flex:0 0 80%;}
.price-r,.price-r02{flex:0 0 20%;}	
.name-l03{flex:0 0 70%;}
.price-r03{flex:0 0 30%;}	
}
/*---平板-----*/
@media only screen and ( max-width:768px) 
{
.bg{margin-top: 0;padding-top: 30px;padding-bottom: 30px;}
.bg02{padding-top: 0;padding-bottom: 30px;}	
#main-nav{display: none;}
	
.video {height: 300px !important;}	
	
.playwild-box{display:contents;}	
.playwild-txt{width: 90%;margin: 0 auto;padding-bottom: 20px;}
.playwild-img{width: 90%;margin: 0 auto 10px auto;}
.playwild-img02{width: 90%;margin: 0 auto 10px auto;}	
	
.accordion { margin: 0 auto 30px auto;}
		
/*錨點*/
.block-first{padding-top:initial ;margin-top: initial;padding-top: 10px; padding-bottom: 30px;}	
.block-second{padding-top:initial ;margin-top: initial;}	
}

@media only screen and ( max-width:600px) {
	
ul.tabs li {margin-bottom: 15px;}	
ul.tabs li a {display: block;padding: 15px 10px;}	
	
.tour-list a,.tour-list02 a,.tour-list03 a{display:inherit;}	
.name-l,.name-l02,.name-l03{flex:initial;width: 100%; display: block;}
.price-r,.price-r02,.price-r03{flex:initial;width: 100%;display: block;margin-top: 5px;}
}	
/*---手機版-----*/
@media only screen and (max-width:480px) 
{.accordion-header h3{font-size: 16px;}
}

