@charset "utf-8";
/* CSS Document */
/*搜尋中訊息*/
#loading_msg{
    text-align: center;
}
#loading_msg .title{
    font-size: 17px;
    color: #000;
    text-align: center;
}

.gray_bg{
	background-color:#f7f7f7;
	display:block;
	width:100%;
}
.tourlist_margin{
	padding-top:180px;
	padding-bottom:80px;
}
/*團控表*/
.search_bar{
	padding:15px 15px 0 15px;
	background:#fff;
}
.search_bar h2{
	margin:0;
	padding-bottom:15px;
	padding-left:10px;
	font-size:21px;
    font-weight: bold;
	color:#2780C1;
}
.search_line{
/*	overflow:hidden;*/
	border-top:2px solid #c0c0c0;
	padding-top:15px;
	padding-bottom:15px;
    font-size:15px;
}
.search_bar .form-group{
/*	overflow:hidden;*/
    display: table;
    width: 100%;
}
.search_bar .input_css{
    -webkit-appearance: none;
    height: 42px;
    padding: 10px;
    font-size: 15px;
    border-radius: 0px;
	border:1px solid #bbb;
	outline:none;
	box-shadow: inset 0 0px 0px rgba(0,0,0,.075);
}
.search_bar .select_css{
    background-image: url(../images/icon_select.svg) !important;
	background-repeat: no-repeat !important;
	background-position: right 10px center !important;
	background-size: 8px !important;
    height: 42px;
    padding: 10px;
    font-size: 15px;
    border-radius: 0px;
	border:1px solid #bbb;
	outline:none;
	box-shadow: inset 0 0px 0px rgba(0,0,0,.075);
}
.search_bar .input_w100{
	width:100%;
}
.search_bar .search_label{
	display: table-cell;
	text-align:left;
	font-weight:normal;
	width:85px;
	color: #000;
    vertical-align: middle;
}
.search_bar .search_float{
    position: relative;
    display: table-cell;
	width: calc(100% - 85px);
}
.search_bar .DateClearBtn {
    padding: 0px;
    width: 30px;
    height: 30px;
    color: #15AAEA;
    line-height: 30px;
    font-size: 25px;
    text-align: center;
    cursor: pointer;
    position: absolute;
    bottom: 7px;
    right: 0;
}
.search_bar .btn_search{
    background-color: #20a2e5;
    width: 100%;
    color: #FFF;
    font-size: 17px;
    padding: 8px;
    border-radius: 20px;
}
.search_bar .btn_reset{
	background-color:#fff;
	border:2px solid #20a2e5;
	color:#000;
	width:100%;
	font-size: 17px;
    padding: 8px;
    border-radius: 20px;
}
/*目的地*/
.search_bar .search_input{
    cursor: pointer;
    background-color: #fff;
}
.search_bar .place_wrapper{
    display: none;
    position: absolute;
    top: 50px;
    z-index: 99999;
    width: 650px;
}
.search_bar .place_box{
    position: relative;
    background-color: #fff;
    border-radius: 6px;
    filter: drop-shadow(0 0 4px rgba(0,0,0,.2));
/*    box-shadow: 0 1px 10px 0 rgb(0 0 0 / 30%);*/
    padding: 20px 25px 25px 25px;
}
.search_bar .place_box:before{
    position: absolute;
    content: '';
    display: block;
    top:-12px;
    left: 100px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 15px 13px 15px;
    border-color: transparent transparent #fff transparent;
}
.search_bar .place_nav{
    margin: 0;
    padding: 0;
    padding-bottom: 13px;
    border-bottom: 0;
}
.search_bar .place_nav>li.active>a, 
.search_bar .place_nav>li.active>a:focus, 
.search_bar .place_nav>li.active>a:hover {
    color: #2d7cd1;
    border: 0;
    border-bottom: 2px solid #20a2e5;
    cursor: pointer;
}
.search_bar .place_nav>li>a, 
.search_bar .place_nav>li>a:focus, 
.search_bar .place_nav>li>a:hover {
    background-color: #fff;
    border: 0;
    border-bottom: 2px solid #fff;
    font-size: 16px;
    color: #222;
    text-align: center;
    border-radius: 0;
    padding: 4px;
    margin: 0 5px 10px 5px;
}
.search_bar .place_nav>li>a:hover{
    border-bottom: 2px solid #20a2e5;
}
.search_bar .place_nav>li:first-child>a{
    margin-left: 0;
}
.search_bar .place_content .place_item{
    display: flex;
    width: 100%;
    border-bottom: 1px solid #e8e8e8;
}
.search_bar .place_content .place_item .place_country{
    background-color: #e5f3fa;
    color: #2d7cd1;
    width: 120px;
    padding: 10px 20px;
    font-size: 15px;
    font-weight: 600;
}
.search_bar .place_content .place_item .place_area{
    background-color: #eff8fc;
    width: calc(100% - 120px);
    color: #222;
}
.search_bar .place_content .place_item .place_area ul{
    margin: 0 ;
    padding:10px 15px 5px 20px;
    width: 100%;
}
.search_bar .place_content .place_item .place_area li{
    list-style: none;
    display: inline-block;
    cursor: pointer;
    margin: 0 0 7px 0;
    width: 48%;
    font-size: 14px;
    vertical-align: top;
}
.search_bar .place_content .place_item .place_area li:nth-child(odd){
    margin: 0 15px 7px 0;
}
.search_bar .place_content .place_item .place_area span:hover{
    text-decoration: underline;
}
.search_bar .place_content .place_item .place_area span.active,
.search_bar .place_content .place_item .place_area span:hover .active{
    text-decoration: none;
    color:#2d7cd1;
}
.search_bar .SearchType{
    width: 100%;
    color: #525252;
    display: table;
    padding-bottom: 5px;
}
.search_bar .SearchType>div {
    margin: 0;
    padding: 0 0 0 30px;
    width: 50%;
    height: 36px;
    line-height: 36px;
    display: table-cell;
    text-align: left;
    cursor: pointer;
}
.search_bar .SearchType>div:nth-child(1) {
    border: 1px solid #20bb99;
    border-radius: 0;
}
.search_bar .SearchType>div:nth-child(2) {
    border: 1px solid #20bb99;
    border-left: none;
    border-radius: 0;
}
.search_bar .SearchType .select {
    color: #fff!important;
    background-color: #20bb99;
    background-image: url(../images/search_home_select.svg);
    background-position: left 5px center;
    background-size: 22px;
    background-repeat: no-repeat;
}


/*自訂checkbox*/
.search_checkbox2 input[type=checkbox]:not(old){
  width     : 2em;
  margin    : 0;
  padding   : 0;
  font-size : 1em;
  opacity   : 0;
}
.search_checkbox2 input[type=checkbox]:not(old) + label{
  display      : inline-block;
  margin-left  : -2em;
  padding-right: 15px;
  line-height  : 1.5em;
  font-weight  :normal;
  font-size    :15px;
  color:#000;
}
.search_checkbox2 input[type=checkbox]:not(old) + label > span{
  display          : inline-block;
  width            : 22px;
  height           : 22px;
  margin           : 0.2em 0.3em 0em 0em;
  border           : 2px solid #888;
  border-radius    : 4px;
  vertical-align   : bottom;
}
.search_checkbox2 input[type=checkbox]:not(old):checked + label > span{
  border           : 2px solid #888;
  background       : rgb(255,255,255);
  background-image :    -moz-linear-gradient(rgb(167,137,95));
  background-image :     -ms-linear-gradient(rgb(167,137,95));
  background-image :      -o-linear-gradient(rgb(167,137,95));
  background-image : -webkit-linear-gradient(rgb(167,137,95));
  background-image :         linear-gradient(rgb(167,137,95));
}
.search_checkbox2 input[type=checkbox]:not(old):checked + label > span:before{
  content     : '';
  display     : block;
  color       : rgb(68,121,186);
  font-size   : 16px;
  line-height : 1em;
  text-align  : center;
  margin-left : 6px;
  margin-top  : 3px;
  width: 6px;
  height: 10px;
  border: solid #4479BA;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
/*分頁*/
.pagination>li>a, .pagination>li>span,
.pagination>.disabled>a, .pagination>.disabled>a:focus, .pagination>.disabled>a:hover, .pagination>.disabled>span, .pagination>.disabled>span:focus, .pagination>.disabled>span:hover {
	height:34px;
	font-size:14px;
}
.pagination>li>a i{
	margin-top:3px;
}

/*搜尋條件*/
.search_condition{
	font-size:18px;
	background:url(../images/icon_right.png) no-repeat;
	background-position:0px 25px;
	padding:25px 0px 25px 30px;
}
.search_condition span{
    color: #8fb223;
}
.search_array_bg{
	background-color:#fff;
	padding:7px 0px;
	margin-bottom:20px;
}
.search_array{
	font-size:15px;
	text-align:right;
	padding-top:5px;
}
.search_array label{
	margin-bottom:0;
	padding-right:5px;
}

.search_array i{
	color:#2780C1;
}

/*搜尋結果*/
.search_tab{
   border-bottom:1px solid #ddd;
   margin-bottom:20px;
}	
.search_tab a{
  font-size:14px;
  display: inline-block;
  padding: 7px 15px;
  color: #2780C1;
  text-decoration: none;
  margin-bottom: -1px;
}
.search_tab a:hover{
  background: #eee;
  border-radius: 4px 4px 0 0;
}
.search_tab a.active_on{
	background-color:#fff;
	border:1px solid #ddd;
	border-bottom:1px solid #fff;
	border-radius: 4px 4px 0 0;
	color:#555;
}
.search_tab .num{
	color:#fff;
	background-color: #f6c3ca;
}


/*圖片模式*/
#type_pic{
    margin-left:-10px;
}
.tour_pic_box{
	padding-left:10px;
	padding-right:10px;
}
.tour_pic_item{
    border-radius: 0px;
    padding: 6px;
	z-index:400;
	position:relative;
	overflow:hidden;
}
.tour_pic_item a,
.tour_pic_item a:hover,
.tour_pic_item a:focus{
	color: #333;
    text-decoration: none;
}
.tour_pic_item a h3{
	margin:0;
	padding:10px;
	font-size:16px;
	font-weight: bold;
    color:#333;
	line-height:23px;
	min-height:66px;
}
.tour_pic_item:hover a,.tour_pic_item:focus a,
.tour_pic_item:hover a h3,.tour_pic_item:focus a h3{
	text-decoration: none;
}
.tour_pic_item.item_h{
	min-height:370px;
}
.tour_pic_item .img_view {
   overflow: hidden;
   position: relative;
   display: block;
}
.tour_pic_item img,.tour_pic_item a img{
   width:100%;
   height:220px;
   object-fit: cover;
   -webkit-transition: all 0.4s ease-in-out;
   -moz-transition: all 0.4s ease-in-out;
   -o-transition: all 0.4s ease-in-out;
   -ms-transition: all 0.4s ease-in-out;
   transition: all 0.4s ease-in-out;
}
.tour_pic_item:hover img{
   -webkit-transform: scale(1.1,1.1);
   -moz-transform: scale(1.1,1.1);
   -o-transform: scale(1.1,1.1);
   -ms-transform: scale(1.1,1.1);
   transform: scale(1.1,1.1);
}
.tour_pic_item .pic_type1,.tour_pic_item .pic_type2{
	position:absolute;
	top:10px;
	left:10px;
	border-radius:4px;
	padding:2px 5px;
	color:#fff;
	font-size:15px;	
}
.tour_pic_item .pic_type1{
	background-color:#f6c3ca;
}
.tour_pic_item .pic_type2{
	background-color:#8ca5d0;
}
.tour_pic_item h3{
	margin:0;
	padding:5px;
	font-size:16px;
	color:#333;
	line-height:24px;
	min-height:60px;
}
.tour_pic_item h3 a{
	color:#333;
}
.tour_pic_item h3 a:hover{
	text-decoration:none;
}
.tour_pic_item .line1{
	border-bottom:1px solid #ccc;
	width:100%;
	display:block;
	overflow:hidden;
}
.tour_pic_item .line2{
	border-top:1px solid #ccc;
	width:100%;
	display:block;
	overflow:hidden;
}
.tour_pic_item .date_list{
    text-align: left;
    width: 100%;
    padding: 0 0 5px 5px;
	font-size:14px;
	color:#777;
}
/*
.tour_pic_item .date_list{
    float: left;
	text-align:left;
    width: 75%;
    padding: 0 0 5px 5px;
	font-size:14px;
	color:#777;
}
*/
.tour_pic_item .date_list a{
	color:#777;
}
.tour_pic_item .date_list a:hover,
.tour_pic_item .date_list a:focus{
	color:#1272cc;
	text-decoration:none;
}
.tour_pic_item .more{
    float: right;
	text-align:right;
    width: 25%;
    padding: 0 5px 5px 0;
	font-size:14px;
	color:#777;
}
.tour_pic_item .more a,
.tour_pic_item .more a:hover,
.tour_pic_item .more a:focus{
	color:#1272cc;
	text-decoration:none;
}
.tour_pic_item .more i{
	font-size:20px;
	line-height:14px;
}
.tour_pic_item .days{
    float: left;
    width: 41%;
    padding: 5px;
	font-size:14px;
	color:#777;
}
.tour_pic_item .date{
    float: left;
    width: 59%;
    padding: 5px;
	font-size:14px;
	color:#777;
}
.tour_pic_item .plane{
    float: left;
    width: 33.33%;
    padding:3px 5px;
	font-size:14px;
	color:#777;
}
.tour_pic_item .plane a,
.tour_pic_item .plane a:hover{
	color:#4479BA;
	text-decoration:none;
}
.tour_pic_item .seat{
    float: left;
    width: 33.33%;
    padding:3px 5px;
	font-size:14px;
	color:#777;
}
.tour_pic_item .seat span{
	color:#4479BA;
}
.tour_pic_item .seat .full{
	color:#F00;
}
.tour_pic_item .tour_pic_pos{
	position:absolute;
	bottom:8px;
	padding-left:10px;
	padding-right:10px;
	width:100%;
	left: 50%;
    margin-left: -50%;
    text-align: center;
}
.tour_pic_item .price_txt{
	float:left;
	width:50%;
	padding:10px 0px 0px 5px;
	font-size:14px;
	color:#777;	
	text-align:left;
}
.tour_pic_item .price_low{
	float:left;
	width:50%;
	padding:5px 5px 0px 0px;
    font-size: 20px;
    color:#F22727;
	text-align:right;
}
.tour_pic_item .price{
	float:left;
	width:50%;
	padding:5px 5px 0px 0px;
    font-size: 22px;
    color:#F22727;
}
.tour_pic_item .price span{
	font-size:15px;
}
.tour_pic_item .tour_btn{
	float:left;
	width:50%;
	padding:7px 5px 0px 5px;
	text-align:center;
}
.tour_pic_item .tour_btn a{
	color:#fff;
	width:100%;
	padding:2px 6px;
	font-size:16px;
}
.tour_pic_item .tour_btn a.btn_signup{
	background-color:#2780C1;
}
.tour_pic_item .tour_btn a.btn_waiting{
	background-color:#f17d69;
}
.tour_pic_item .tour_btn .btn_full{
	background-color:#bbb;
	color:#fff;
	width:100%;
	padding:3px 6px;
	font-size:16px;
	border-radius:4px;
	margin:0 auto;
	text-align:center;
}

/*列表表格*/
.tour_list {
    width: 100%;
    border: 1px solid #ddd;
    font-size: 15px;
}
.tour_list tr {
    width: 100%;
    display: flex;
    border-bottom: 1px solid #ddd;
}
.tour_list tbody tr:last-child {
    border-bottom: 0;
}
.tour_list th,
.tour_list td{ 
    display: flex;
/*    flex: 1;*/
    -webkit-box-align: center;
    justify-content: center;
    align-items:center;
    line-height: 20px;
}
.tour_list th {
    background-color: #23303e;
    color: #fff;
    font-weight: normal;
    padding: 15px 5px;
}
.tour_list td {
    background-color: #fff;
    padding: 16px 5px;
}
.tour_list a,
.tour_list a:hover{
    color: #333;
    text-decoration: none;
}
.tour_list .btn_order{
    background-color:#2780C1;
    color: #fff;
    padding: 6px 15px;
    border-radius: 20px;
    font-weight: 700;
}
.tour_list .btn_order:hover{
    background-color: #20a2e5;
    color: #fff;
}

/*航班參考*/
.flight_info {border: 1px solid #464646;}
.flight_info .flight_title {background-color: #252525; color:#fff}
.flight_info ul {padding:0; margin:0;width: 100%; display: table; border-bottom: 1px solid #464646;}
.flight_info ul:nth-last-child(1) {border-bottom: none;}
.flight_info ul li { list-style:none;margin:0;float: left; width: 15%;line-height:21px; text-align: center; padding: 13px 10px; font-size: 15px;}
.flight_info ul li:nth-child(1) {width: 10%; text-align: center;}
.flight_info .flight_content:nth-child(odd) {background: #F7F7F7;}

/*更多出團日期*/
@media (min-width: 768px){
.Modal_date .modal-dialog {
    width: 700px;
    margin: 100px auto;
}
}
.Modal_date .modal-content{
	border-radius:0;
	border:0;
}
.Modal_date .close{
	outline: none; /* for Firefox Google Chrome  */
    behavior:expression(this.onFocus=this.blur()); /* for IE */
	position:absolute;
	z-index:1000;
	top:-55px;
	right:-35px;
	color: #fff;
    text-shadow: 0 0px 0 #fff;
	font-size:50px;
	line-height:50px;
	filter: alpha(opacity=100);
    opacity:1;
}
.Modal_date .modal-body{
	padding:0;
}

@media all and (max-width: 1440px) {
.tour_pic_item img,.tour_pic_item a img{
   height:180px;
}
}

@media all and (max-width: 1200px) {
.tour_pic_item img, .tour_pic_item a img {
    height: 200px;
}	
}

@media all and (max-width: 992px) {	
.search_bar{
    margin-bottom: 20px;
}
.search_list_pad {
	margin:0;
}
#type_pic{
    margin-left:0;
}
.tour_pic_box{
	padding-left:6px;
	padding-right:6px;
}
.tour_pic_item img,.tour_pic_item a img{
   height:200px;
}
/*
.tour_pic_item .tour_pic_pos{
	position:inherit;
	bottom:0px;
	padding-left:0px;
	padding-right:0px;
}
*/
.tour_pic_item .tour_btn{
	width:30%;
}
.tour_pic_item .price{
	width:70%;
}
.tour_pic_item .price_low {
    font-size: 18px;
}
.tour_pic_item .tour_btn a{
	padding:6px;
}
.tour_pic_item .tour_btn .btn_full{
	padding:7px 6px;
}
.Modal_date .modal-dialog {
    margin: 40px 10px 10px 10px;
}
.Modal_date .close{
	top:-40px;
	right:0;
	font-size:38px;
	line-height:38px;
}
}

@media all and (max-width: 768px) {
/*列表模式*/
.tour_list{
    border: 0;
}
.tour_list tr{
    display: block;
    border: 0;
    border-bottom: 1px solid #ddd;
    background-color: #fff;
    padding: 12px 0 16px 0;
    margin-bottom: 20px;
}
.tour_list thead{
    display: none;
}
.tour_list tbody tr:last-child {
    border-bottom: 1px solid #ddd;
}
.tour_list td{
    padding: 0;
    -webkit-box-align: stretch;
    align-items: stretch;
    justify-content: center;
    width: 100%;
    background-color:transparent;
    padding: 7px 0;
}
.tour_list td:nth-child(n){
    width: 100%; 
}
.tour_list td::before {
    content: attr(data-th) " ";
    color: #666;
    width: 90px;
/*    background-color: #f5f5f5;*/
/*    border-right: 1px solid #ccc;*/
    display: flex;
    -webkit-box-align: center;
    align-items: flex-start;
    justify-content: center;
}
.tour_list td div{
    width: calc(100% - 90px);
    text-align: left;
}

/*航班資訊*/
.flight_info {border: 1px solid #464646;}
.flight_info .flight_title {display: none;}
.flight_info ul {width: 100%; display: table; border-bottom: 1px solid #464646;}
.flight_info ul:nth-last-child(1) {border-bottom: none;}
.flight_info ul li {float: left; width: 50%;line-height:26px; text-align: left; padding: 6px 5px; border-bottom: 1px solid #464646;}
.flight_info ul li:nth-child(odd) {width: 50%;}
.flight_info ul li:nth-child(even) {width: 50%;}
.flight_info ul li:nth-child(1) {width: 100%; text-align: center; background-color: #252525; color:#fff}
.flight_info .flight_content:nth-child(odd) {background: #F7F7F7;}
.flight_info ul li:nth-child(1):before {content:'第'; margin-right: 5px;}
.flight_info ul li:nth-child(1):after {content:'天'; margin-left: 5px;}
.flight_info ul li:nth-child(2):before {content:'航空公司：';}
.flight_info ul li:nth-child(3):before {content:'航班：';}
.flight_info ul li:nth-child(4):before {content:'出發地：';width: 100%;display: table;}
.flight_info ul li:nth-child(5):before {content:'起飛時間：';width: 100%;display: table;}
.flight_info ul li:nth-child(6):before {content:'目的地：';width: 100%;display: table;}
.flight_info ul li:nth-child(7):before {content:'抵達時間：';width: 100%;display: table;}
/*
.tour_pic_item.item_h{
	min-height:inherit;
}
*/
.tour_pic_item img, .tour_pic_item a img {
    height: 220px;
}
.search_bar .place_wrapper{
    width: 100%;
}
}

@media screen and (max-width: 640px) {
.tour_pic_item.item_h {
    min-height: 360px;
}
.tour_pic_item img, .tour_pic_item a img {
    height: 180px;
}
.search_bar .place_content .place_item .place_area li{
    width: 46%;
}
}

@media screen and (max-width: 480px) {
.tour_pic_box{
    width: 100%;
}
.tour_pic_item img, .tour_pic_item a img {
    height: 200px;
}
.tour_pic_item.item_h {
    min-height: 350px;
}
.search_bar .place_box {
    padding: 15px 20px 20px 20px;
}
.search_bar .place_content .place_item .place_country{
    width: 100px;
    padding: 10px 15px;
}
.search_bar .place_content .place_item .place_area{
    width: calc(100% - 100px);
}
.search_bar .place_content .place_item .place_area li {
    display: block;
    width: 100%;
    margin: 0 0 7px 0;
}
.search_bar .place_content .place_item .place_area li:nth-child(odd){
    margin: 0 0 7px 0;
}
}


/*手機版查詢*/
.mobile_search_box{
   display: none; 
}
@media screen and (max-width: 992px) {
.mobile_search_box{
    cursor: pointer;
    display: table;
    width: 100%;
    padding: 0 5px; 
    margin-bottom: 30px;
}
.mobile_search_box .search_left{
    display:table-cell;
    width:calc(100% - 80px);
    border:1px solid #ddd;
    background-color: #fff;
    padding: 10px 15px;
    height: 48px;
    color:#999;
    -webkit-border-top-left-radius: 4px;
    -webkit-border-bottom-left-radius: 4px;
    -moz-border-radius-topleft: 4px;
    -moz-border-radius-bottomleft: 4px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
}
.mobile_search_box .search_right{
    display:table-cell;
    width: 80px;
}
.mobile_search_box .btn_search{
    background-color: #20a2e5;
    width: 100%;
    color: #FFF;
    padding: 12px;
    border: 0;
    outline: none;
    font-size: 16px;
    height: 48px;
    -webkit-border-top-right-radius: 4px;
    -webkit-border-bottom-right-radius: 4px;
    -moz-border-radius-topright: 4px;
    -moz-border-radius-bottomright: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
}    
}
