﻿@font-face {
    font-family: 'fontface1';
    src: url('../fonts/IDHeiUltra.woff2') format('woff2');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'fontface1';
    src: url('../fonts/NotoSansTC-Medium.woff2') format('woff2');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'fontface1';
    src: url('../fonts/NotoSansTC-Bold.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}





html, body {
	overflow-x: hidden;
}
a:hover {
	text-decoration: none;
}
/* --------------------------------------------- 2025.04.25 simon 排版改版 --------------------------------------------- */
#page{
	background-color: #f6f6f6;
}
.header{
	letter-spacing: 1px;
}
#cart {
    z-index: 50;
    width: 100%;
    text-align: center;
}
#cart nav .wrapper > a:hover{
	background-color: #e2e6c6 !important;
	font-weight: bold;
	border-radius: 10px;
}
#cart nav .wrapper > a.active {
	color: #674931 !important;
	background-color: #e2e6c6 !important;
	font-weight: bold;
	border-radius: 10px;
}

.navblock{
	display: block !important;
}
nav {
    right: auto;
    box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.50);
    position: relative;
    z-index: 1;
    transition: all 400ms ease;
    background-color: #674931;
    padding: 0px;
}
nav .wrapper {
    position: relative;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    height: 65px;
}
nav .wrapper>a {
    display: inline-block;
    height: 46px;
    color: #674931;
    font-size: 20px;
    padding: 10px;
    margin: 9px;
    text-align: center;
    /* font-weight: bold; */
	background-color: #fff;
    border-radius: 20px;
}
nav .wrapper>a:hover {
	background-color: #fff;
	text-decoration: none;
	border-radius: 20px;
}
nav .wrapper>a.active {
	background-image: none;
	background-color: #ad0f0f!important;
	color: #fff;
}





.bgimg{
	/* background-color: #06bceb; */
	background-image: url('../images/bg.jpg');
}
.bigimg img {
    width: 100%;
    max-width: 1920px;
    margin: auto;
    display: block;
    height: auto;
}
@media screen and (max-width: 768px){
	.bigimg{
		height: 19rem;
		background-size: calc(180vw);
	}
	.bigimg img {
        width: 100%;
        height: 19rem;
        object-fit: cover;
        object-position: center;
    }
}





/* 各個行程整個框 */
.mix{
	background-color: #fff;
	display:flex;
	width:95%;
	margin: 1.5% auto 0 auto;
	border-radius: 10px;
	position: relative;
	box-shadow:
		-1px -1px 3px rgba(0, 0, 0, 0.05),
		3px  3px 8px rgba(0, 0, 0, 0.3);
}
.mix:hover{
	background-color: #f1f1f1;
	box-shadow:
		-2px -2px 5px rgba(0, 0, 0, 0.08),
		6px  6px 12px rgba(0, 0, 0, 0.35);
}
.mix-mobile{
	display: none;
}
.mix:hover .effect-Beauty img {
	transform: scale(1.2);
	filter: brightness(1.05); 
}
@media (max-width: 768px) {
	.mix{
		display: none;
	}
	.mix-mobile {
		display:inline-block;
		flex: 0 0 auto;
		width: 95%;
		max-width: 400px;    
		margin: 10px; 
		background: #fff;
		border-radius: 10px;
		box-shadow: 0 3px 6px rgba(0, 0, 0, 0.15);
		position: relative;
		overflow: hidden;
		transition: transform 0.3s ease;
	}
}





/*整個行程區塊*/
.traveldata{
	color: #000000;
	margin-left:10%;
	margin-right:10%;
	margin-bottom:3%;
	text-align: center;
}
@media(max-width: 768px){
	.traveldata {
		margin: 0;
	}
}





figure{
	background-color: #FFFFFF;
}
figure img{
	width: 320px;
    height: 240px;
}
figure.effect-Beauty {
    position: relative; 
}
.effect-Beauty {
	overflow: hidden; /* 防止圖片放大時超出範圍 */
}
.effect-Beauty img {
	transition: all 0.5s ease;
	display: block;
}
.figcaption-content{
	width:70%;
}
@media screen and (max-width: 768px){
	figure img {
		width: 100%;
		max-width: 400px;
		height: auto;
	}
	figure.effect-Beauty {
		margin: 5px;
	}
	/* 內部結構保持原樣 */
	.effect-Beauty-mobile img {
		width: 100%;
		display: block;
	}
}





/*行程標題*/
.travelname{
	width:100%;
	display: inline-block;
	text-align:left;
	font-size: 20px;
    font-weight: bold;
	margin: 2% 0 0 3.2%;
    text-align: left;
	color: #454545;
}
.travelname-mobile{
	height:44px;
	width:98%;
	display: inline-block;
	text-align:left;
	font-size: 20px;
    font-weight: bold;
	margin: 5% 0% 7% 0%;
    text-align: center;
	color: #454545;
}





.salefocus-ul{
	margin-top: 1%;
}
.salefocus{
	text-align: left;
    color: #333;
    margin: 4px auto;
    width: 95%;
    padding: 2px 0 2px 7px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 5px; 
}
.salefocus .salefocus-icon img {
	width: 20px;
	height: 20px;
	vertical-align: middle;
}





.date-label{
	margin: 1% 0 0 3%;
	text-align: left;
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
}
.date-label a {
	display: inline-block;
	background: #06bceb;
	color: #fff;
	border-radius: 6px;
	padding: 4px 8px;
	font-size: 18px;
}
.date-label a:hover {
	background: #0b9fc4;
}
@media screen and (max-width: 768px){
	.date-label-mobile{
		padding: 5%;
		text-align: left;
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-behavior: smooth;
		gap: 10px;
	}
	.date-label-mobile a {
		flex: 0 0 auto;
		display: inline-block;
		background: #06bceb;
		color: #fff;
		border-radius: 6px;
		padding: 4px 8px;
		font-size: 18px;
		white-space: nowrap;
		text-decoration: none;
	}
}





 /* ---------------------------- 2025.04.25 simon 頁尾 footer ---------------------------- */
footer {
	background-color: #FFF;
	-webkit-box-shadow: 0px 0px 8px hsla(0,0%,0%,0.50);
	box-shadow: 0px 0px 8px hsla(0,0%,0%,0.50);
	text-align: center;
	font-size: 14pt;
	padding-top: 30px;
	padding-bottom: 30px;
	z-index: 1;
	position: relative;
}
#footerfunc ul li a {
	display: inline-block;
	line-height: 100%;
	font-size: 14px;
	color: #666666;
}
#footerfunc .dropdown-menu .sub-menu {
    left: 100%;
    position: absolute;
    top: 0;
    display: none;
    margin-top: -1px;
    width:180px;
    height:150px;
    text-align:left;
}
#footerfunc .dropdown-menu li:hover .sub-menu {
    display: block;
    width:180px;
    height:150px;
    text-align:left;
}
#footerfunc .dropdown:hover .dropdown-menu {
    display: block;
    width:180px;
    height:150px;
    text-align:left;
}
#footerfunc .nav-tabs .dropdown-menu, .nav-pills .dropdown-menu, .navbar .dropdown-menu {
    margin-top: 0;
    width:180px;
    height:150px;
    text-align:left;
    line-height:200%;
}
#footerfunc .navbar .sub-menu:before {
    border-bottom: 7px solid transparent;
    border-left: none;
    border-right: 7px solid rgba(0, 0, 0, 0.2);
    border-top: 7px solid transparent;
    left: -7px;
    top: 10px;
}
#footerfunc .navbar .sub-menu:after {
    border-top: 6px solid transparent;
    border-left: none;
    border-right: 6px solid #fff;
    border-bottom: 6px solid transparent;
    left: 10px;
    top: 11px;
    left: -6px;
}
#footer {
	clear:both;
	width:100%;
	height:150px;
	position:relative;
	list-style: none;
	top:0;
	left:0;
	z-index:99;
    background-color: #67b0d1;
	text-align:center;
}
#footer_wrap {
	margin:0 auto;
	width:980px;
	position:relative;
	text-align:center;
}
#footer .company {
	text-align:center;
	float:left;
	margin:5px;
	padding:0;
}
#footer .globalcompany {
	text-align:center;

	margin:5px;
	padding:0;
}
#footer .globalcompany p {
	margin:0 5px 0;
	padding:0;
	font-size:12pt;
	line-height:1.8em;
	color: #f8f8f8;
}
#footer .icon {
	float:left;
	margin:10px auto;
	padding:0;
}
#footer p {
	margin:0 5px 0;
	padding:0;
	font-size:10pt;
	line-height:1.8em;
	color: #f8f8f8;
}
#footer p.footer_fb {
	margin:15px 0 0 12px;
}
#footer p a:link, #footer p a:visited { 
	color:#006ec5; text-decoration:none
}
#footer p  a:hover, #footer p a:active { 
	text-decoration:underline
}
#footer_csf {
	clear:both;
	width:100%;
	height:100px;
	position:relative;

	list-style: none;
	top:0;
	left:0;
	z-index:999 !important;
    background-color: #67b0d1;
	text-align:center;
}
#footer_wrap_csf {
	margin:0 auto;
	width:980px;
	position:relative;
	text-align:center;
}
#footer_csf p {
	margin:0 5px 0;
	padding:0;
	font-size:10pt;
	line-height:1.8em;
	color: #f8f8f8;
}
.footer{
	background-color: #fff;
}
.nav-tabs{
  display: flex; 
  justify-content: center;
}





.right_more{
	font-size: 24px;
	letter-spacing: 2px;
	text-align: center;
    width: 190px;
    margin: 15px auto;
    border-radius: 5px;
	transition: all 0.3s ease;
	position: relative;
	border: 1px solid #674931;
}
.right_more:hover {
	transform: scale(1.08);
}
.right_more a {
    color: #674931;
    font-size: 20px;
    line-height: 40px;
	text-decoration: none;
}
.right_more-container {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
    padding: 0px 0 50px 0;
}
.right_more-container::before, .right_more-container::after {
	content: "";
	position: absolute;
	width: 41%;
	height: 2px;
	background: repeating-linear-gradient(
		to right,
		#674931 0 3px,
		transparent 3px 6px
	);
	transform: translateY(-50%);
}
.right_more-container::before {
	left: 59%;
}
.right_more-container::after {
	right: 59%;
}
@media screen and (max-width: 768px){
	.right_more-container{
		padding: 1px 0 20px 0;
	}
	.right_more{
		top: 0px;
	}
	.right_more-container::before {
		left: 81%;
	}
	.right_more-container::after {
		right: 81%;
	}
}






.visible-xs-block{
	background-color: #fff;
}
.white-bar {
    background-color: #FFF;
    height: 50px;
}
.m_title{
	display: none;
}
#menu_mobile{
	display: none;
}
.day-tag{
    width: 70px;
    border-radius: 0 0 12px 0;
    position: absolute;
    font-size: 20px;
    background:  rgba(103, 73, 49, 0.7);;
	color: #fff;
    z-index: 15;
    text-align: center;
	font-family: 'fontface1', 'sans-serif';
	font-weight: 300;
	padding: 3px;
}
@media (max-width: 768px) {
	.day-tag-mobile{
		width: 20%;
        height: 7%;
		border-radius: 0 0 12px 0;
		position: absolute;
		font-size: 26px;
		background:  rgba(103, 73, 49, 0.7);;
		color: #fff;
		z-index: 15;
		text-align: center;
		left: 0;
		font-family: 'fontface1', 'sans-serif';
		font-weight: 300;
	}
	.m_title {
	    background-color: #674931;
	    color: #fff;
	    font-size: 30px;
	    height: 55px;
	    line-height: 55px;
	    font-weight: bold;
	    display: block;
		width: 100%;
		text-align: center;
		letter-spacing: 4px;
	}
	#cart, .white-bar{
		display: none;
	}
	#menu_mobile{
		display: inline-block;
		position: fixed;
		top: 0px;
		right: 0px;
		margin: 2px 8px;
		z-index: 100;
	}
}


.countryCn-title{
	position: relative;
    font-size: 40px;
    color: #fff;
	background: linear-gradient(to right, #674931, #06bceb);
    border-radius: 40px;
    width: 30%;
	height: 70px;
	margin: 50px auto 30px auto;
	letter-spacing: 18px;
	padding-left: 18px;
	display: flex;          
  	justify-content: center;    
  	align-items: center; 
}
.lrlTitle1{
	height: 100px;
	border-radius: 50px;
}
.lrlTitle2{
	height: 85px;
	font-size: 40px;
	padding-left: 18px;
}
.lrlTitle3{
	font-size: 16px;
	letter-spacing: 10px;
	padding-right: 17px;
}
@media screen and (max-width: 1366px){
	.lrlTitle1{
	height: 100px;
	border-radius: 50px;
	}
	.lrlTitle2{
		height: 85px;
		font-size: 3.5rem;
		padding-left: 18px;
	}
	.lrlTitle3{
		font-size: 1.5rem;
		
	}
}
.countryCn-title2{
	border: 1px solid #fff;
	border-radius: 40px;
	width: 100%;
	margin: 0 0px 0 -16px;
	font-family: 'fontface1', sans-serif;
	font-weight: 300;
}
@media screen and (max-width: 768px){
	.countryCn-title{
		display: none;
	}
}





/* 2025.10.15 simon 新版按鈕選項 * */
#mobile-bar {
	display: none;
}

@media screen and (max-width: 768px){
	/* 統一：手機版 bar 固定在最上方 */
	#mobile-bar {
		position: fixed; /* fixed讓 bar 跟著畫面走 */
		top: 0;
		left: 0;
		width: 100%;
		z-index: 1000;
		display: flex;
		align-items: center;
		overflow: hidden;
		background: #06bceb;
		border-bottom: 1px solid #ddd;
		transform: translateY(-100%);
		opacity: 0;
	}
	#mobile-bar.show{
		transform: translateY(0);
		opacity: 1;
	}
	/* 內部可水平滑動的容器 */
	#mobile-bar .scroll-wrapper {
		overflow-x: auto;
		white-space: nowrap;
		scroll-behavior: smooth;
		display: inline-block;
		padding: 8px 0;
	}
	/* 按鈕樣式 */
	#mobile-bar a {
		display: inline-block;
		padding: 6px 14px;
		margin: 0 8px;
		background: #f8f8f8;
		border-radius: 20px;
		font-size: 15px;
		color: #674931;
		text-decoration: none;
		transition: all 0.3s ease;
	}
	#mobile-bar a:hover {
		background: #eee;
	}
	#mobile-bar a.active {
		background: #674931;
		color: #fff;
	}
	/* 箭頭樣式 */
	#mobile-bar .arrow {
		position: absolute;
		top: 0;
		bottom: 0;
		width: 25px;
		/* color: #a7a7a7; */
		color: #fff;
		font-weight: bold;
		font-size: 22px; /* 30 */
		display: flex;
		align-items: center;
		justify-content: center;
		cursor: pointer;
		user-select: none;
		transition: opacity 0.3s;
		z-index: 1001;
	}
	#mobile-bar .left-arrow {
		left: 0;
		/* background: linear-gradient(to right, rgba(6, 188, 235, 0.9), rgba(251,221,84,0.1)); */
		background: linear-gradient(to right, rgba(0,0,0,0.4), rgba(0, 0, 0, 0.1));
	}
	#mobile-bar .right-arrow {
		right: 0;
		/* background: linear-gradient(to right, rgba(251,221,84,0.1), rgba(6, 188, 235, 0.9)); */
		background: linear-gradient(to right, rgba(0,0,0,0.1), rgba(0, 0, 0, 0.4));
	}
	#mobile-bar .arrow.hidden {
		opacity: 0;
		pointer-events: none;
	}
}





.country-bg{
	padding: 10px 0 10px 0;
}
@media screen and (max-width:768px) {
	/* 外層容器：作為箭頭定位基準 */
	.country-section {
		position: relative;
	}
	/* 滾動容器：行程卡橫向滑動 */
	.country-bg {
		display: flex;
		flex-wrap: nowrap;
		overflow-x: auto;
		overflow-y: hidden;
		scroll-behavior: smooth;

		padding: 0;
		scrollbar-width: none;
	}
	.country-bg::-webkit-scrollbar {
		display: none;
	}
}





.arrow2 {
	display: none;
}
@media screen and (max-width: 768px){
	/* 箭頭樣式 */
	.arrow2 {
		position: absolute;
		top: 28%;
		transform: translateY(-50%);
		width: 42px;
		height: 42px;
		background: rgba(0, 0, 0, 0.4);
		color: #fff;
		font-size: 22px;
		border-radius: 50%;
		display: flex;
		align-items: center;
		justify-content: center;
		z-index: 20; 
		transition: all 0.3s ease;
		user-select: none;
		/* box-shadow: 0 2px 8px rgba(0, 0, 0, 0.3); */
		font-weight: bold;
	}
	.left-arrow2 {
		left: 5px;
	}
	.right-arrow2 {
		right: 5px;
	}
	/* .arrow2:hover {
		background: rgba(0, 0, 0, 0.65);
		transform: translateY(-50%) scale(1.1);
	} */
	/* 隱藏狀態 (由 JS 控制) */
	.arrow2.hidden {
		opacity: 0;
		pointer-events: none;
		transition: opacity 0.2s ease;
	}
}





/* 天數說明 */
.days-caption{
	background-color: #f3f5e0;
    padding: 12rem 0 7rem 0;
}
.days-caption1{
	font-size: 13rem;
	color: #06bceb;
	position: relative;
	display: inline-block;
	padding-bottom: 10px;
	font-family: 'fontface1', sans-serif;
	font-weight: 100;
}
.days-caption1::after{
	content: "";
	position: absolute;
	left: 50%;
	bottom: 6%;
	transform: translateX(-50%);
	width: 100%;
	height: 3px;
	background-color: #06bceb;
}
.days-caption2{
	font-size: 6.2rem;
	color: #06bceb;
    padding-bottom: 15px;
	margin-bottom: 10px;
	font-family: 'fontface1', sans-serif;
	font-weight: 100;
}
.days-caption3{
	font-size: 2.8rem;
	color: #674931;
	padding: 2px 0;
	font-family: 'fontface1', sans-serif;
	font-weight: 300;
}
@media screen and (max-width: 1366px){
	.days-caption1{
		font-size: 11rem;
	}
	.days-caption2{
		font-size: 5.2rem;
	}
	.days-caption3{
		font-size: 2.5rem;
	}
}
@media screen and (max-width:768px){
	.colon{
		display: none;
	}
	.days-caption{
		padding: 35px 0 20px 0;
	}
	.days-caption1{
		font-size: 4rem;
	}
	.days-caption1::after{
		height: 2px;
	}
	.days-caption2{
		font-size: 2.3rem;
	}
	.days-caption3{
		font-size: 1.9rem;
		padding: 10px 0 0 0 ;
		white-space: normal;
		overflow-wrap: break-word;
		font-family: 'fontface1', sans-serif;
		font-weight: 200;
	}
	.days-caption3 strong{
		display: block;
		font-family: 'fontface1', sans-serif;
		font-weight: 300;
	}
}
