@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: url("../img/bg.webp") top repeat;
}

/*基本變數*/
:root {
	/*基本*/
	--white-color:#fff;
	--black-color:#141115;
	--family-basic:Verdana,'微軟正黑體';
	--family-noto:"Noto Sans TC",Verdana;	
}

#web-outer{	
	clear: both;
	overflow: hidden;	
	background: url("../img/bg.webp") top repeat;
	min-height: 3000px;
}

header {
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden;
  clear: both;
  z-index: 1;  
}

header h1 {
    text-indent: 101%;
    overflow: hidden;
    white-space: nowrap;
    position: absolute;
}

.header-content{		
	background: url("../img/header_bg.webp") bottom no-repeat;
	clear: both;
	overflow: hidden;
	padding: 50px 0 20px 0;	
}

.header-title{max-width: 1452px;height: auto;margin: 0 auto;z-index: 50;position: relative;}
.header-photo{max-width: 1452px;z-index: 30;aspect-ratio: 484 / 263;}
.header-big{max-width: 587px;position: absolute;top: 10%; left: 0;right: 0;z-index: 80;margin: 0 auto;}

.mobile{display: none;aspect-ratio: 15 / 8;}

.petal {
      position: absolute;
      top: 0;
      pointer-events: none;
      animation: fall linear forwards;
	  z-index: 50;
    }

    @keyframes fall {
      0% {
        transform: translateY(0) rotate(0deg);
        opacity: 1;
      }
      100% {
        transform: translateY(100vh) rotate(360deg);
        opacity: 0.3;
      }
    }


/*導覽列*/
.block-menu {
	position: sticky;
	top: 40px;
	background: url("../img/bg.webp") top repeat;	
	width: 100%;
	text-align: center;
	z-index: 1;
}

#mainNav {
	box-sizing: border-box;
	display: inline-flex;
	padding: 0 20px;
	gap: 20px;
	min-height: 100px;
	align-items: center;	
}

.menu-nav-box {
	font-family: var(--family-basic);
	display: inline-block;
	text-align: center;	
	color: #d8bc8d;
	font-weight: 600;
	font-size: 25px;
	line-height: 96px;
	position: relative;	
	background: url("../img/nav_bg.webp") top no-repeat;
	width: 186px;
	height: 96px;
	
}

.menu-nav-box:hover ,.menu-nav-box.active {
}

.menu-nav-box:hover {
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	transition: all 0.3s;
}

.block-menu a:hover,.menu-nav-box.active {background: url("../img/nav_bg02.webp") top no-repeat;color: #fff;}

/*特賣*/
.sale-wrap{
	max-width:1500px;	
	display: flex;
	align-items: stretch;
	justify-content: center;
	flex-wrap: wrap;	
	margin: 0 auto;
	padding: 180px 0 50px 0;	
	}

.sale-box {width:31%;display: inline-block; vertical-align: top;position: relative;margin: 0 10px;border: 1px #fff solid;text-align: center;}
.sale-top{}
.sale-top p{position: relative;display: inline-block;padding: 5px;background: url("../img/bg.webp") top repeat;margin: -100px auto 0 auto;font-size: 180px; font-family: "Anton", sans-serif;color: #fff;font-weight: 400;}
.sale-top p em{font-style:normal;position: absolute;top: 35px;right: -50px;font-size: 30px;letter-spacing:2px; transform: rotate(90deg);}
.sale-box h2{display: inline-block;color: #ffec13;font-family: var(--family-basic);font-size: 40px;line-height:1.2em;  margin: 10px auto;padding: 5px 0; border-top: 1px #ffec13 solid;border-bottom: 1px #ffec13 solid;}

p.title{width: 85%;height: 100%;display: block; font-size: 18px;line-height: 2em;color: #fff;margin: 20px auto 30px auto;text-align: left;}

/*背景輪播圖*/
.carousel-wrapper {
      overflow: hidden;
      width: 100%;
      /*max-width: 1100px;*/
      margin: 0 auto;
      /*padding: 20px;*/	
    }

    .carousel-track {
      display: flex;
      width: max-content;
      animation: scroll 20s linear infinite;
    }

    .carousel-track:hover {
      animation-play-state: paused;
    }

    .carousel-track figure {
      width: 180px;
      height: 180px;
      margin: 0 10px 0 0;     
      overflow: hidden;
      flex-shrink: 0;
	aspect-ratio: 1 / 1;
    }

    .carousel-track img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }

    .carousel-track figcaption {
      display: none; /* 如果你暫時不想顯示文字，可隱藏 */
    }

    @keyframes scroll {
      0% { transform: translateX(0); }
      100% { transform: translateX(-50%); }
    }

/*動畫*/

.a-01{ 
	-webkit-animation: swing 1.5s .2s linear infinite;
}

@-webkit-keyframes swing{ 
	10% { 
	  transform: rotate(-15deg); 
	} 
	20% { 
	  transform: rotate(10deg); 
	} 
	30% { 
	  transform: rotate(-5deg); 
	} 
	40% { 
	  transform: rotate(5deg); 
	} 
	50%,100% { 
	  transform: rotate(0deg); 
	} 
}

.a-02{ 
	-webkit-animation: swing 2s .2s linear infinite;
}

@-webkit-keyframes swing{ 
	10% { 
	  transform: rotate(-15deg); 
	} 
	20% { 
	  transform: rotate(10deg); 
	} 
	30% { 
	  transform: rotate(-5deg); 
	} 
	40% { 
	  transform: rotate(5deg); 
	} 
	50%,100% { 
	  transform: rotate(0deg); 
	} 
}

/*標題*/
h2.big-title {
	max-width: 870px;
	height: 160px;	
	text-align: center;
	margin: 80px auto 50px auto;
	font-family: var(--family-basic);
	color: #fff;
	z-index: 50;
	background: url("../img/big_bg_01.webp") top center no-repeat;	
}

h2.big-title span{
	width: 224px;
	height: 160px;	
	text-align: center;			
}

h2.big-title strong{padding-top: 25px; display: block; font-size: 40px;line-height: 1.5em; font-weight: 600;}

h2.big-title span em{
	display: inline-block;	
	font-style: normal;
	border-top: 1px #dab06d solid;
	font-size: 30px;
	font-weight: 600;
	line-height: 1.5em; 
}


/*行程*/
.tour-wrap{max-width: 1200px;margin:0 auto;z-index: 1;}
.tour-wrap a {text-decoration: none; display:flex; flex-wrap: nowrap;}

.ct55 {flex:0 0 55%; border-radius: 30px;
	justify-content:flex-start; align-items:flex-start; align-content: stretch;
	aspect-ratio: 3 / 2;}
.ct55 img{	
    border-radius: 30px;
	border: 2px #997d4f solid;
}
.ct45 {flex:0 0 45%;
	justify-content:flex-start; align-items:flex-start;  align-content: stretch;}
.tour-txt {margin-left:-40px;margin-top: 8%; background:#fff;border-radius: 25px;padding-bottom: 10px;border: 2px #997d4f solid;}
.tour-txt h3{font-family: var(--family-basic);font-size: 18px;line-height: 1.8em;color:#fff;padding: 10px 15px;background-color: #997d4f;border-radius: 22px 22px 0 0;}
.tour-txt h3 em{font-style:normal;background-color: #fff; color: #997d4f;font-size: 15px;padding: 3px;margin-right: 5px;border-radius: 5px;}

ul.tour-mark{width: 90%;text-align: left;margin: 10px 10px 10px 30px;}
ul.tour-mark li{font-family: var(--family-basic);font-size: 15px;font-weight: 500;	line-height: 2em;color: #666;margin-top: 10px;list-style-type: circle;}


.tour-txt p.price{	
	color: #d23b00;
	text-align: right;
	font-family: var(--family-basic);
	font-size: 15px;
	font-weight: 500;
	padding-right: 10px;
	font-weight: 600; 	
}

.tour-txt p em{	
	font-style:normal;
	color: #d23b00;	
	font-size: 18px;
}

.tour-txt p.price strong {
	font-family: var(--family-basic);font-size: 22px; font-weight: 600;margin: 0 2px;letter-spacing:1px;		
}

.tour-txt span{display: block;font-size: 15px;color: #717171;font-weight: 600; text-align: right;margin-bottom: 5px;}
.tour-txt span em{color:#717171;border: none;margin: 0; font-style:normal;text-decoration:line-through;}

/*綜合行程*/
.tour-list {max-width: 1200px;width: 95%;margin: 0 auto;padding: 30px 0;}
.tour-list a {display:flex;padding: 12px 10px;overflow: hidden;border-bottom: dashed 1px #dc7c7b;text-decoration: none;justify-content:space-between;align-items:center;}
.name-l{flex:0 0 85%;font-family: var(--family-basic);font-size: 18px;color:#ead6b5;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: #a38553; padding: 5px;margin-right: 5px;}
.name-l strong{font-family: var(--family-basic);font-size: 15px;color: #3e86c1;margin-left: 5px;}
.name-l p{margin-top: 5px;}
.name-l p span{display: inline-block;padding: 3px 5px;margin: 3px 3px; font-size: 15px;font-weight: 500;line-height: 1.5em; color: #fff;border-radius: 0;/*border-left: 2px #ead5b4 solid;border-bottom: 1px #ead5b4 solid;border-top: 1px #ead5b4 solid;border-right: 1px #ead5b4 solid;*/}

.name-l p span::before {
  content: '';
  display: inline-block;
  width: 5px;
  height: 5px;
  background-color: #ead5b4;
  border-radius: 50%;
  margin-right: 5px;
  vertical-align: middle;
  
}


.price-r{flex:0 0 15%; text-align:right;font-family: var(--family-basic);font-weight: 600; font-size: 15px;line-height: 1.2em;color: #ffeb0c;}
.price-r strong{font-family: var(--family-basic);font-size: 22px; font-weight: 600; margin: 0 2px;letter-spacing:1px;}
.price-r span{display: block;font-size: 15px;color: #fff;font-weight: 600; text-align: right;margin-bottom: 5px;}
.price-r em{color:#fff;border: none;margin: 0; font-style:normal;text-decoration:line-through;}

/*錨點*/
.block-first{overflow: hidden;padding-top: 0px;margin-top: 0px;margin-bottom: 80px;}
.block-second{overflow: hidden;padding-top: 30px;}

.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:1300px) {
	.header-big{max-width: inherit;width: 50%;top: 5%;}
}
@media only screen and ( max-width:1200px) {	
	.sale-box{width: 30%;}
	.tour-wrap{max-width: inherit;width: 90%;}	
}

@media only screen and ( max-width:959px) {
	.name-l{flex:0 0 78%;}
.price-r{flex:0 0 22%;}	
}

@media only screen and ( max-width:850px) 	
{
.sale-wrap{padding: 130px 0 0 0;}	
.sale-box{width: 80%;margin: 0 auto;}
p.title{height: inherit;}	
.b01{margin: 0 auto 120px auto;}	
}	
@media only screen and ( max-width:800px) 	
{
}
/*---平板-----*/
@media only screen and ( max-width:768px) 
{
.header-content{display: none;}
.mobile{display: block;padding-top: 50px;}
.petal{display: none;}
	
.block-menu {display: none;}
.tour-wrap a {	
	width: 90%;
	background: #fff;
	display: flex;
	justify-content: flex-start;
	flex-direction: column;
    border: 2px #997d4f solid;  
    border-radius: 30px; 
	padding: 0;
	margin: 0 auto;
 	}	
	
.ct55 {width:100%;margin: 0 auto;border-radius: 30px 30px 0 0; padding: 0;}
.ct55 img{border-radius: 30px 30px 0 0;border: none;}
.ct45 {width:100%;;margin: 0 auto;}	
.tour-txt {margin-left:0;margin-top:-4px;border-radius: 0 0 30px 30px;border:none;}	
.tour-txt h3{border-radius: 0;}		

/*錨點*/
.block-first{padding-top:initial ;margin-top: initial;padding-top: 10px;margin-bottom: 100px;}	
	
}

@media only screen and ( max-width:600px) {
.tour-wrap a {width: 100%;}	
.tour-list a{display:inherit;}	
.name-l{flex:initial;width: 100%; display: block;}
.price-r{flex:initial;width: 100%;display: block;margin-top: 5px;}

}	
/*---手機版-----*/
@media only screen and (max-width:480px) {

}

