@charset "utf-8";
@font-face {
  font-family: 'book';
  src: url('fonts/VBOOKMB.TTF');
}
body,p,span,li,a,strong,b,td,th{
  line-height: 1.3;
}
.pt30{
	padding-top: 30px;
}
.pt80{
	padding-top: 80px;
}
.pt60{
	padding-top: 60px;
}
.pb80{
	padding-bottom: 80px;
}
.pb150{
	padding-bottom: 150px;
}
.pb60{
	padding-bottom: 60px;
}
.mt30{
  margin-top: 30px;
}
.mt60{
  margin-top: 50px;
}
.mt50{
	margin-top: 50px;
}
.mt40{
	margin-top: 40px;
}
.mt20 {
	margin-top: 20px;
}
.mt10{
  margin-top: 10px;
}
.clearfix{ 
	clear: both; 
}
.block-768{
	display: none;
}
.textred{
	color: #ff0000;
}
.mt5{
	margin-top: 5px;
}
.mt15{
	margin-top: 15px;
}
a:hover{
	opacity: 0.8;
}
.textlink{
  text-decoration: underline;
}
.textblue{
  color: #298CF4;
}
.disblock{
  display: block;
}
img{
  max-width: 100%;
  height: auto;
}
@media(min-width:575px){
  .block-575{
    display: none;
  }
}
@media(min-width:767px){
  .block-767{
    display: none;
  }
}
@media (max-width:767px){
	.hidden-767{
		display: none !important;
	}
  .pt120{
    padding-top: 60px;
  }
  .pb80{
    padding-bottom: 60px;
  }
	.pb150{
    padding-bottom: 100px;
  }
	.pt80{
		padding-top: 60px;
	}
	.pt60{
		padding-top: 40px;
	}
	.pb60{
		padding-bottom: 40px;
	}
	.mt50{
		margin-top: 30px;
	}
	.mt40{
		margin-top: 20px;
	}
}
.title-cm{
  font-family: 'book';
  font-size: 50px;
  text-align: center;
	padding-bottom: 45px;
	color: #0077B6;
}
.tour-info-title{
  font-family: 'book';
  font-size: 30px;
  text-align: center;
  color: #0077B6;
  margin-bottom: 30px;
}
.bg-blue .title-cm{
  color: #fff;
}
@media(max-width:991px){
	.title-cm{
    font-size: 45px;
  }
  .tour-info-title{
    font-size: 26px;
  }
}
@media(max-width:767px){
  .title-cm{
    font-size: 36px;
  }
  .tour-info-title{
    font-size: 22px;
    text-align: left;
  }
}
/*--------------------
Banner -----*/
.banner{
  position: relative;
  overflow: hidden;
}
.banner h1 img{
  width: 100%;
  height: auto;
}
.banner .container{
	text-align: right;
}
.bnr-inner{
  border:1px soldi red;
  position: absolute;
  width: 100%;
  top: 17%;
  /*text-align: center;*/
}
.banner > img{
  width: 100%;
  height: auto;
}
.bnr-content-wrap{
  top: 17%;
  width: 100%;
  left: 0;
}
.bnr-content{
	/*position: relative;*/
	display: inline-block;
	text-align: left;
}
.bnr-content .sticker-limited{
  margin: 0 auto;
  display: block;
}
.bnr-inner h1{
  font-family: 'book';
/*  font-size: 3vw;*/
  font-size: 39px;
  text-shadow: 2px 3px 1px #fff, 2px 3px 1px #fff, 2px 3px 1px #fff, 1px 3px 1px #fff;
  color: #0D71C8;
  margin-top: -5px;
	text-align: center;
}
.bnr-inner h1 span{
  display: block;
  font-size: 80px;
/*  text-shadow: 0 4px 1px #fff;*/
  
  text-shadow: 0px -3px 1px #fff, 1px -2px 1px #fff, 3px 6px 1px #fff, -1px 6px 1px #fff;
  line-height: 1.2;
}
.txt-area{
  font-family: 'book';
  color: #053168;
  font-size: 39px;
	font-weight: bold;
	text-shadow: 2px 3px 1px #fff, 2px 3px 1px #fff, 2px 3px 1px #fff, 1px 3px 1px #fff;
	text-align: center;
}
.btn-book{
  border-radius: 50px;
  padding: 8px 60px;
  text-decoration: none;
  font-size: 20px;
  background: #FF9454;
  color: #FFF;
  margin-left: 20px;
  font-weight: bold;
  display: inline-block;
	min-width: 220px;
}
.btn-book:hover{
  background: #ff9351;
  color: #fff;
  text-decoration: none;
  opacity: 1 !important;
}
@media(max-width:1900px){
  .txt-area,
  .bnr-inner h1{
    font-size: 2.2vw;
  }
  .bnr-inner h1 span{        
    font-size: 4.4vw;
  }
  .bnr-content .sticker-limited{
    max-width: 60%;
  }
  .btn-book{
    font-size: 20px;
		padding: 10px 40px;
		min-width: 200px;
  }
}
@media(max-width:1400px){
	.bnr-inner {
    top: 17%;
	}
	.txt-area,
  .bnr-inner h1{
    font-size: 2.5vw;
  }
  .bnr-inner h1 span{        
    font-size: 5vw;
  }
}
@media(max-width:1200px){
  .txt-area, .bnr-inner h1{
    font-size: 2.8vw;
  }
  .bnr-inner h1 span {
    font-size: 5.6vw;
  }
}
@media(max-width:991px){
  .banner > img {
    width: 125%;
    max-width: inherit;
    margin-left: -16%;
  }
  .txt-area, .bnr-inner h1{
    font-size: 3.5vw;
  }
  .bnr-inner h1 span{
    font-size: 7vw;
  }
}
@media(max-width:767px){
  .bnr-content{
    text-align: center;
    width: 100%;
  }
  .banner > img {
    width: 100%;
    margin-left: 0;
  }
  .txt-area, .bnr-inner h1{
    font-size: 5.3vw;
  }
  .bnr-inner h1 span {
    font-size: 10.7vw;
    text-shadow: 0px -3px 1px #fff, 1px -2px 1px #fff, 3px 3px 1px #fff, -1px 3px 1px #fff;
  }  
	.bnr-content .sticker-limited {
		width: 58%;
    margin-bottom: 5px;
	}
	.bnr-inner {
		top: 15%;
	}
}
/*- Wander Japan text -*/
.wander-japan-txt-wrap{
  position: absolute;
  right:15px;
  top:20px;
  z-index: 2;
}
.wander-japan-txt{
	padding: 5px 10px;
	display: inline-block;
	background-color:rgb(8 25 81 / 37%);
}
.wander-japan-txt-wrap p{
	font-size: 14px;
	text-shadow: 0px 1px 2px rgba(11, 38, 102, 0.50), 0px 1px 10px rgba(11, 38, 102, 0.50), 0px 1px 20px rgba(11, 38, 102, 0.50);
	color: #fff;
}
@media screen and (max-width:991px){  
  .wander-japan-txt-wrap{
    top: 10px;
    right:10px;
  }
	.wander-japan-txt{
		padding: 3px 6px;
	}
	.wander-japan-txt-wrap p{
		font-size: 12px;
	}
}
@media screen and (max-width:767px){
  .wander-japan-txt-wrap{
    top: 7px;
    right:10px;
  }
	.wander-japan-txt{
		padding: 2px 5px;
	}
}
/*-Wander Japan text end-*/
/*----- End Banner -----*/

/*----- control -----*/
.tour-info .container > p{
  width: 1010px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.control {
  padding-top: 20px;
}
.control ul {
  display: flex;
  justify-content: space-between;
}
.control li a{
  font-weight: bold;
	font-size: 15px;
}
.control li a:after{
  content:'\f078' ;
  font-family: "Font Awesome 5 Free";
	margin-left: 6px;
	font-size: 11px;
}
@media(max-width:767px){
	.control ul{		    
		justify-content: space-between;
	}
	.control {
    padding-top: 10px;
	}
}
@media(max-width:1140px){
	.control li a{
		font-size: 14px;
	}
}
@media(max-width:991px){
  .control{
    /*padding-top: 10px;*/
		justify-content: space-between;
  }
  .control ul{
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-left: -10px;
    margin-right: -10px;
  }
  .control li{
    width: 33.333%;
    padding: 0px 10px;
  }
  .control li a {
    font-weight: bold;
    width: 100%;
    display: block;
    padding: 8px 10px 7px 0;
    border-bottom: 1px solid #E6E6E6;
    position: relative;
		font-size: 15px;
  }
  .control li a:after{
    position: absolute;
    right: 0;
    font-size: 11px;
		top: 10px;
  }
}
@media(max-width:767px){
	.control li{
    width: 50%;
  }
}
@media(max-width:374px){
	.control li{
    width: 100%;
  }
}
/*----- End control -----*/

/*----- Short intro-----*/
.tour-info{
	width: 80%;
	margin: 0 auto;
/*	text-align: center;*/
}
.tour-info .notice-wrap{
	padding: 30px 20px;
	background-color: #fff7eb;
	border: 1px solid #f79b71;
	border-radius: 5px;
	margin-top: 30px;
}
@media(max-width:1200px){
	.tour-info{
		width: 100%;
	}
}
@media(max-width:991px){
	.tour-info{
		text-align: left;
	}
}
/*----- Short intro end-----*/

/*----- Tour point -----*/
.bg-blue{
	background-color: #1595B4;
}
.bg-blue-02{
	background-color: #CBECF4;
}
.tourpoint-wrap {
	background-color: #fff;
	margin-bottom: 30px;
	padding: 15px 15px 25px 15px;
}
.tourpoint-wrap .content-name{
	font-size: 20px;
	font-weight: bold;
	padding-bottom: 15px;
}
.tourpoint-wrap .content-name span{
	font-size: 20px;
	color: #ff0000;
}
.tourpoint-img img{
  width: 100%;
}
@media(min-width:768px){
  .tourpoint-wrap{
    display: flex;
    align-items: center;
		background-color: #fff;
		margin-bottom: 30px;
		padding: 20px;
  } 
  .tourpoint-wrap:last-child{
		margin-bottom: 0px;
  } 
}
@media(min-width:768px){
	.tour-point .tourpoint-img{
		width: 48%;
	}
	.tour-point .content-info{
		width: 52%;
		padding-left: 30px;
	}	
}
@media(max-width:991px){
	.content-name{
		margin-top: 20px;
	}
	.tourpoint-wrap .content-name {
    font-size: 20px;
	}
	.tourpoint-wrap .content-name span{
		font-size: 18px;
	}
}
/*----- End Tour point -----*/
/*----- booking -----*/
.booking{
  background: url("img/bg.jpg") no-repeat bottom center;
  background-size: 100% 100%;
}
.booking-title{
  font-size: 33px;
  font-weight: bold;
  text-align: center;
}
.booking-info{
	padding-top: 10px;
}
.booking-info p{
	color: #333;
	font-size: 16px;
	font-weight: normal;
}
.sub-title{
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	padding: 0 0 30px 0;
}
.busPlanBlockSec {
    background-color: #fff;
}
.tbl-plan {
  margin-left: auto;
  margin-right: auto;
  table-layout: fixed;
  border-top: 1px solid #C4D5F1;
  border-right: 1px solid #C4D5F1;
  width: 100%;
}
.tbl-plan .important-note{
	background: #17A52A;
	display: inline-block;
	padding: 2px 8px;
	color: white;
	font-size: 14px;
	margin-top: 10px;
}
.booking-sub-title{    
    text-align: center;    
    padding: 20px;
    z-index: 2;
}
.booking-sub-title h3{
  font-size: 24px;
  font-weight: bold;
  /*color: #0059AB;*/
	color: #333;
}
.booking-sub-title p{
  color: #333;
  font-size: 16px;
  margin-top: 5px;
}
.tbl-plan {
    margin-left: auto;
    margin-right: auto;
    table-layout: fixed;
    border-top: 1px solid #F1DDBB;
    border-right: 1px solid #F1DDBB;
}
.tbl-plan td, .tbl-plan th {
    text-align: center;
    border-bottom: 1px solid #F1DDBB;
    border-left: 1px solid #F1DDBB;
    padding: 24px 1px 12px;
    font-size: 25px;
    font-weight: bold;
    line-height: 1;
    color: #F14482; 
}
.tbl-plan td {
    background: #fff;
}
.tbl-plan th {
    padding: 10px 0;
    font-size: 20px;
    background: #F1DDBB;
    color: #000;
}
.tbl-plan td small, .tbl-plan th small {
    color: #292929;
    font-size: 14px;
    display: block;
    margin-top: 6px;
}
.tbl-plan td {
  text-align: center;
  border-bottom: 1px solid #F1DDBB;
  border-left: 1px solid #F1DDBB;
  padding: 24px 1px 12px;
  font-size: 25px;
  font-weight: bold;
  line-height: 1;
  color: #FF3D00; 
}
.tbl-plan td {
  background: #FFF8EC;
}
.tbl-plan td small {
  color: #292929;
  font-size: 14px;
  display: block;
  margin-top: 6px;
}
.small, small {
  font-size: 80%;
  font-weight: 400;
}
.badge {
  display: inline-block;
  padding: 0.25em 0.4em;
  font-size: 75%;
  font-weight: 700;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0.25rem;
}
.badge-danger {
  color: #fff;
  background-color: #dc3545;
}
.tbl-plan .badge.badge-sale {
  background: #F14482;
}
.tbl-plan .badge.badge-comming {
  background: #ccc;
  color: #333;
}
.tbl-plan .badge {
  font-size: 12px;
  font-weight: normal;
  display: block;
  max-width: 80%;
  margin: 10px auto 0;
  padding: 0.2rem 0.1rem;
}
@media (max-width: 1990px) {
  .booking{
    background-size: auto 100%;
  }
}
@media (max-width: 767px) {
  .booking-title{
    font-size: 24px;
  }	
	#booking .booking-title{
    font-size: 27px;
  }	
	.sub-title {
    font-size: 20px;
	}
  .tbl-plan {
    width: 100%;
  }
  .tbl-plan tr {
    display: flex;
    flex-wrap: wrap;
  }
  .tbl-plan th {
    width: 100%;
  }
  .tbl-plan td {
    width: calc(100%/2);
  }
  .tbl-plan td, .tbl-plan th {
    font-size: 24px;
  }
  .tbl-plan .badge {
    word-break: break-word;
    white-space: pre-wrap;
  }	
	.booking-sub-title h3{
  	font-size: 20px;
	}
}
@media (max-width: 424px) {
  .tbl-plan .important-note{
		font-size: 13px;
	}
}
.booking-02{
  background-size: 100% auto !important;
}
@media(max-width:767px){
  .booking-02{    
    background-size: auto 100% !important
  }
}
.list-inline li{
  display: inline-block;
}
.note-box{
  text-align: center;
  margin-bottom: 5px;
}
.note-box li{
  margin: 0 20px;
  font-size: 14px;
}
.booking-area{
	display: flex;
}
.booking-area .price-section {
    width: 100%;
}
.booking-btn{
	text-align: center;
	align-self: center;
	display: flex; 
}
.booking-btn a{
	/* margin-left: auto; */
    /* margin-right: auto; */
}
.price-section{
	font-weight: bold;
    width: 100%; 
    display: flex;
}
.price-list {
	width: 100%;
	display: flex;
	justify-content: space-between;
}
.price-item {
	padding: 20px 10px 30px 10px;
	/*width: calc(100% / 2);*/
	width: 570px;
	height: 168px;
	display: flex;
	justify-content: center;
	background: url(img/bg_ticket.png) no-repeat top left;
	background-size: contain;
	
}
.price-item-block {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}
.price-item:last-child {
	border: none;
}
.price-item-nameRoute {
	font-weight: bold;
	font-size: 22px;
	text-align: center;
}
.price-item-nameRoute span {
    font-weight: normal;
    font-size: 16px;
}
.price-item-priceRoute {
	text-align: center;
	padding: 5px 0;
}
.price-item-priceRoute span {
    font-size: 16px;    
    font-weight: bold;
    line-height: 1.5;
} 
.price-item-linkRoute {
    display: flex;
}
.price-item-linkRoute a {
    border-radius: 50px;
    padding: 12px 0;
    text-decoration: none;
    font-size: 16px;
    background: #FF9454;
    color: #FFF;
    margin-top: 5px;
		width: 200px;
    text-align: center;
		font-weight: bold;
}
.price-item-linkRoute .comingsoon{
	background:rgb(187 184 184);
	cursor: auto !important;
}
.price-item-linkRoute .comingsoon:hover{
	opacity: 1 !important;
}
.price-item-linkRoute.coming-soon-btn a, .price-item-linkRoute.coming-soon-btn a:hover{
    background: #93c1ef;
		width: 200px;
		padding: 8px 0;
}
.price-item-linkRoute.coming-soon-btn a:hover{
    opacity: 1 !important;
}
.price-title {
    width: 30%;
	border: 1px solid #C4D5F1;
    border-bottom: none;
    padding: 30px 20px;
}
.price-title h4{
  font-weight: bold;
}
.price-content {
	width: 70%;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 30px 20px;
    /* margin-left: 20px; */
    border: 1px solid #C4D5F1;
    border-bottom: none;
    border-left: none;
    line-height: 1.5;
}
.circle-list {
	padding-left: 45px;
}
.price-content span {
	font-weight: normal;
	line-height: 1.6;
}
.price-content p {
	font-weight: normal;
}
.price-label{
	font-size: 16px;
	font-weight: normal;
	list-style: disc; 
}
.price-section .nmTxt{
	font-weight: normal !important;
}
.f14{
	font-size: 14px;
}
.price{
	padding-bottom: 10px;
}
.price-section .normal-txt{
	font-weight: normal;
    padding: 0 3px;
    font-size: 25px;
}
.campaign-price{
	font-size: 30px;
	color: #f10000;
}
.campaign-price span{
	font-size: 17px;
}
.basic-price{
	font-size: 22px;
}
.basic-price span{
	font-size: 17px;
}
.flex{
	display: flex;
}
.flex .price-label, .flex .price{
	padding:10px 0 0 0;
}
@media(max-width: 1140px){
	.price-item-block {
	 	display: inline-block;
	}
	.price-item-priceRoute {
    padding: 0; 
	}
	.price-item-linkRoute a {
    padding: 8px 0;
    width: 180px;
	}
}
@media(max-width: 992px){
	.price-list {
    display: inherit;
	}
	.price-item {
    padding: 20px 10px 30px 10px;     
    margin: 0 auto;
    margin-bottom: 30px;
	}
	.booking-area {
    display: inherit;
	}
	.booking-btn {
    padding: 15px 0;
	}
}
@media (max-width: 767px) {
}
@media(max-width:767px){
    .tour-outline .busPlanBlockSec{
        padding: 0 20px;
    }  
		.price-item{
			width: 100%;
			background-size: cover;
			background-repeat: repeat-y;
		}
    .price-content,
    .price-title{
        width: 100%;
        padding: 0;
        border:none;
    }
    .price-title h4{
        font-weight: bold;
        margin-bottom: 5px;
    }
    .circle-list {
        padding-left: 20px;
    }
    .plan-list > li{
        border-bottom: 1px solid #C4D5F1;
    }
    .plan-list > li:last-child{
        border-bottom: none;
    }
 
}
@media(max-width:600px){
	.price-item{
			background-size: contain;
		}
}
.calendar{
	display: inline-block;
	width: 100%;
	border: #dad7d7 1px solid;
	background: white;
}
.calendar ul li, .calendarDes ul li{
	display: inline-block;
	float: left;
}
.calendar ul li{
	width: 16.5%;
	text-align: center;	
}
.calendar ul li div{
	display: inline-block;
	margin: 20px auto 0 auto;
}
.calendar ul li p{
	font-size: 18px;
	font-weight: bold;
}
.calendarDes{
	display: inline-block;
	width: 80%;
	background: #f6f5f5;
	margin-left: auto;
	margin-right: auto;
	border-left: #dad7d7 1px solid;
	border-right: #dad7d7 1px solid;
	border-bottom: #dad7d7 1px solid;
	padding: 10px 0;
	margin-top: -2px;
}
.calendarDes ul li{
	width: 33%;
	text-align: center;
}
.calendarDes ul li span{
		padding-left: 5px;
		line-height: 20px;
	}
.calendarIcon{
	display: block;
	width: 18px;
	height: 18px;
}
.circle {
	width: 18px;
	height: 18px;
	background: white;
	border-radius: 50%;
	border: #333 3px solid;
}
.deny::before {
	content: "";
    margin: 5px auto 0;
    display: inline-block;
    width: 3px;
    height: 22px;
    background-color: #333;
    transform: rotate(45deg) translate(45%, -50%);
    transform-origin: top left;
}
.deny::after {
	content: "";
    display: inline-block;
    width: 3px;
    height: 22px;
    background-color: #333;
    transform: rotate(135deg) translate(20%, -55%);
    transform-origin: top left;
}
.triangle-up {
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-bottom: 16px solid #333;
}
.glyphicon {
	font-size: 18px;
	color: red;	
	display: block;
	margin: 15px auto 0;
}
.calendarDes .circle, .calendarDes .triangle-up{
	display: inline-block;
}
.calendarDes span{
	line-height: 20px;
}
.calendarNote{
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
.asterisk{
	position: relative;
}
.asterisk:before{
	content: '*';
	display: block;
	position: absolute;
	top: -6px;
	right: -15px;
}
@media (max-width:991px){
	.calendarDes, .calendar{
		width: 100%;
	}
}
@media (max-width:768px){
	.calendar,.calendarDes,.calendarNote{
		width: 100%;
		padding: 10px;
	}
	.calendar ul li p{
		font-size: 14px;
	}
	.calendar ul li div {
    margin: 10px auto 0 auto;
	}
	.circle {
    width: 16px;
    height: 16px;
    border: #333 2px solid;
	}
	.glyphicon {
    font-size: 16px;
    color: red;
	}
}
@media (max-width:767px){
	.calendarDes ul li{
		width: 100%;
		text-align: left;
		padding-bottom: 5px;
	}
	.triangle-up {
		border-bottom: 14px solid #333;
	}
	.calendarDes {
    padding: 10px 10px 10px 15px;
	}
}	
@media (max-width: 374px){
	.calendar ul li p {
			font-size: 12px;
	}
}
.busPlanBlockSec-01 {
    border: 1px solid #EBC871;
}
.busPlanBlockSec-01 .price-item{
    border-right: 1px solid #EBC871;
}
.busPlanBlockSec-01 .price-item:last-child{
    border-right: none;
}
.busPlanBlockSec-01 .booking-area{
    background-color: #FFFFD9;
}
.busPlanBlockSec-01 .booking-sub-title{
  position: relative;
  background-color: #ffedbb;
  border-bottom: 1px solid #EBC871;
  text-align: center;
}
.recommend-txt:after{
    content: '';
    width: 100%;
    height: 100%;
    background: url("img/schedule-bg.png") no-repeat center center;
    display: inline-block;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
  background-size: 100% 100%;
}
.recommend-txt{
   color: #fff;
   display: inline-block;
   position: relative;
   font-size: 16px;
   font-weight: bold;
   padding: 10px 38px 14px 22px;
   transform: rotate(-3deg);
}
.recommend{
  position: absolute;
  top: -22px;
  left: 0;
  width: 100%;
  text-align: center;
}
@media(max-width:767px){
    .busPlanBlockSec-01 .price-item{
        border-right: none;
    }
}
/*----- End booking -----*/


/*----- Schedule -----*/
.schedule-wrap{
	background-color: #fff;
	padding: 25px;
  height: 100%;
}
.schedule-day{
  width: 100%;
  background-color: #6aa3db;
  color: #fff;
  display: block;
  font-weight: bold;
  font-size: 30px;
  padding: 20px;
  text-align: center;
}
.schedule-list{
	position: relative;
	margin-top: 30px;
}
.line{
	width: 5px;
  height: calc(100% - 90px);
  position: absolute;
  top: 11px;
  left: 38px;
  border-left: 4px dotted #9A9A9A;
}
.time{
  width: 80px;
  height: 70px;
  background: url(img/schedule-bg.png) no-repeat;
  background-size: 100%;
  border-radius: 50%;
  text-align: center;
  float: left;
  position: relative;
}
.time > span{
  position: absolute;
  top: 50%;
  left: 50%;
  margin-right: -50%;
  transform: translate(-50%, -50%);
}
.time span{
	font-size: 19px;
	font-weight: bold;
  color: #333;
	line-height: 1;
}
.freetime span{
  font-size: 19px;
  line-height: 1;
  font-weight: bold;
}
.schedule-list li{
	padding-left: 95px;
	margin-bottom: 25px;
}
.schedule-list li:last-child{
  margin-bottom: 0;
}
.schedule-list li .time{
	margin-left: -95px;
}
.schedule-list li:after{
  content: '';
  display: block;
  clear: both;
}
.schedule-content{
	padding-top: 20px;
}
.schedule-content p,
.schedule-content strong{
	line-height: 22px;
}
.schedule-link{
	color: #223fed;
	text-decoration: underline !important;
	margin-top: 15px;
	display: block;
}
.bus-icon{
  width: 25px;
  height: 35px;
  background: url(img/bus.png) no-repeat center center #fff;
  background-size: 25px;
  margin-left: -74px;
}
.schedule-list > ul{
  position: relative;
  z-index: 2;
	padding-bottom: 20px;
}
.schedule .short-desc{
		margin-top: 60px;
	}
@media(max-width:767px){	
	.schedule-wrap{
		padding:30px 15px 0px 15px;
		width: 100%;
    border:1px solid #A0C8D2;
    margin-top: -1px;
	}
	.schedule-list{
		margin-top: 0;
    width: calc(100% - 30px);
	}
	.time span{
		font-size: 17px;
	}
	.time{
		width: 70px;
		height: 60px;
	}
	.line{
		left: 32px;
	}
	.schedule-content {
    padding-top: 20px;
	}
	.schedule-list li .time {
    margin-left: -85px;
	}
	.schedule-list li {
    padding-left: 85px;
    margin-bottom: 15px;
	}
	.schedule-link{
		margin-top: 0;
	}
  .bus-icon{
    margin-left: -64px;
  }
  .schedule  .tab-pane .row > .col-md-6:first-child{
    margin-bottom: 20px;
  }
	.schedule .short-desc{
		margin-top: 30px;
	}
}
/*----- Spot information -----*/

/*----- Spot information end-----*/
.spot-information-box > img,
.spot-information-box > div{
  width: 100%;  
}
.item_inner {
  display: flex;
  gap: 15px;
  justify-content: center;
  
}
.item_inner > div{
  width: calc(50% - 15px);  
}
@media(min-width:767px){
  .item_inner{
    flex-wrap: wrap;
    gap: 30px;
  }
}
@media(max-width:767px){
  #spot-information{
    padding-right: 0;
  }
  #spot-information .title-cm{
    padding-right: 15px;
  }
  .sliderScroll {
    overflow-x: auto;
    width: 100%;            
    padding-bottom: 20px;
  }
  .four_item {
    width: 340%;
    justify-content: flex-start;
  }
  .content_item{
		width: 75%;
	}
  .sliderScroll .content-name{
    margin-top: 0;
  }
}
.spot-information-box{
  border: 1px solid #D8D8D8;
  padding: 15px 15px 30px 15px;
  height: 100%;
}
.spot-name{
	font-size: 18px;
	font-weight: bold;
	margin: 15px 0;
}
/*----- Tour outline -----*/
.outline-table{
  width: 100%;
  background-color: #fff;
}
.outline-table th,
.outline-table td{
  border-collapse: collapse;
  border:1px solid #EEEEEE;
  padding: 15px 30px;
}
.list-dot li{
  margin-bottom: 7px;
}
.list-dot li:last-child{
  margin-bottom: 0;
}
.outline-table a.textblue{
	color: #0A4CBE;
	text-decoration: underline !important;
}
.list-dot li{
	padding-left: 20px;
	position: relative;
}
.list-dot li:before {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #000;
	position: absolute;
	left: 0;
	top: 9px;
}
.map-box {
    margin-top: 10px;
    width: 400px;
    max-width: 100%;
}
@media(min-width:767px){
  .outline-table th{
    width: 230px;
  }
}
@media(max-width:1200px){
}
@media(max-width:767px){
  .outline-table th, .outline-table td{
    display: block;
    width: 100%;
    padding: 15px 15px;        
    vertical-align: middle;
		border-top:none;
  }
  .outline-table th{
    border-bottom: none;
    padding-bottom: 0;
  }
  .outline-table td{
    border-top:none;
    padding-top: 5px;
  }
}
@media (max-width: 575px){
	.map-box {
			width: 100%;
	}
}
/*----- End Tour outline -----*/

/*-----Book btn sticky-----*/
#book-btn {
	position: relative;
	bottom: 0;  
	z-index: 9;
	padding: 20px 0;
	display: none;
  background: #0CA0D0;  
}
#book-btn .btn-cta {
	padding: 10px;
	width: 200px;
	background-color: #FFE45E;
	/*background-color: #FFBB34;*/
	text-decoration: none;
	border-radius: 50px;
	text-align: center;
	font-weight: bold;
	margin-left: 15px;
	color: #000;
	border: 1px solid #fff;
}
#book-btn .btn-cta:hover{
	background-color: #FBD519;
	 opacity: 1;
}
.btn-cta-big {
	min-width: 200px;
	max-width: 100%;
	padding: 13px;
}
.sticky {
	position: sticky !important;
}
#book-btn .box__wrap {
	width: 100%;
	display: flex; 
	justify-content: space-between;
	align-items: center;
}
#book-btn .box__semittl {
	width: auto;
} 
#book-btn .box__wrap > p {
	font-size: 25px;
/*	font-family: 'book';*/
  font-weight: bold;
	color: #fff;
	line-height: 1.2;
	width: 60%;
}
#book-btn .box__wrap > p span{
	font-size: 20px;
	display: block;
} 
.fix-price{
	font-size: 18px;
	font-weight: bold;
	color: #fff;
}
.fix-price > span{
  font-size: 35px;
}
@media  (min-width: 768px) {
	#book-btn .box__wrap .box__item {
		display: flex;
		align-items: center;
		justify-content: flex-end; 
	}
}
@media  (max-width: 991px){
	.fix-price {
    font-size: 16px;
	}
	.btn-cta-big {
    min-width: 150px;
    width: 150px;
	}
  .fix-price > span {
    font-size: 27px;
  }
	#book-btn .btn-cta{
		width: 150px;
	}
	#book-btn .box__wrap > p {
    font-size: 22px;
	}
}
@media  (max-width: 767px){
	#book-btn {
    padding: 10px 0;
	}
	#book-btn .box__wrap {
		display: inherit;
		text-align: center;
	}
	#book-btn .box__wrap > p {
		font-size: 18px;
		width: 100%;
		margin-bottom: 10px;
	}
	.box__item{
		width: 100%;		
		display: flex;
		justify-content: center;
		align-items: center;
	}
	#book-btn .btn-cta {
		width: 170px;
		max-width: inherit;
	}
	.btn-cta-big {
    min-width: 150px;
    max-width: 100%;;
	}
	.fix-price {
		font-size: 18px;
	}
}
@media  (max-width: 424px){
	#book-btn .box__wrap > p {
		width: 100%;
		margin-bottom: 10px;
	}
}

/*-----back to top----*/
#backToTop2024 {
	bottom: 100px;
}
@media  (max-width: 767px){
	#backToTop2024 {
    bottom: 110px;
	}
}

/*- Calendar common -*/
.calendar{
  background-color: #fff;
  padding: 30px;
	border:1px solid #A0C8D2;
  position: relative;
  height: 100%;
}
.tabs-name{
  font-size: 23px;
  font-weight: bold;
  text-align: center;
  border-bottom: 1px solid #E93B47;
  padding-bottom: 15px;
}
.calendar-table {
  width: 100%;
  margin-top: 5px;
}
.calendar-table th,
.calendar-table td,
.calendar-table{
  border-collapse: collapse;
  padding: 13px 5px;
  text-align: center;
}
.confirmed-tour,
.scheduled-departure{  
  font-weight: bold;
}
.scheduled-departure{
	background: url("img/departure-bg.png") no-repeat center center;
}
.confirmed-tour{
	background: url("img/confirm-bg.png") no-repeat center center;  
}
.calendar-table td{
	position: relative;
	width: calc(100% / 7);
}
@media(max-width:991px){
  .calendar{
    padding: 20px 15px;            
    margin-top: -1px;
  }
}
@media(max-width:767px){
  .departure-box .container > p.mt30.text-center{
    text-align: left!important;
  }
  .departure-box .container > div.text-center{
    text-align: left !important;
  }
}
.note-list{
	display: inline-block;
}
.note-list li {
	display: inline-block;
	vertical-align: middle;
	margin: 10px 30px;
	text-align: left;
}
.note-list li > span{
  width: 30px;
  height: 30px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  border-radius: 50%;
  background-size: 100% !important;  
	background-position: center center;
}
@media(max-width:767px){
	.note-list li{
		display: block;
		margin: 0 0 10px 0;
	}
	.note-list{
		display: block;
	}
}
/*--- Calendar Tab --*/
@media(min-width:767px){
	.departure-box .fade:not(.show) {
    opacity: 1;
	}
	.departure-box .tab-content>.tab-pane {
    display: block;
	}
	.departure-control a{
		padding: 15px;
	}
}
.departure-control{
	display: none;
}
.calander-block .tab-content>.tab-pane {
	display: block;
}
.calander-block .tab-content .fade {
	opacity: 1;
}
.calander-block ul li a br {
	display: none;
}
.departure-control li{
	width: 270px;
  max-width: calc(50% - 2px);
  text-align: center;  
}
.departure-control a{
  font-weight: bold;
  display: block;
  width: 100%;
  border-bottom: 1px solid #A0C8D2;
  font-size: 21px;	
  color: #2E8296;  
  background: #D4E9EE;
  border-radius: 6px 6px 0 0;
}
.departure-control a.active{
  color: #000;  
  border-top: 1px solid #A0C8D2;
  border-left: 1px solid #A0C8D2;
  border-right: 1px solid #A0C8D2;
  border-bottom: 1px solid #fff;
  background: #fff;
}
@media(min-width:767px){
	.fade:not(.show) {
    opacity: 1;
	}
	.tab-content>.tab-pane {
    display: block;
	}
	.departure-control a{
		padding: 15px;
	}
}
@media(max-width:767px){	
	.departure-control{
		display: block;
	}
	.departure-control{
		display: flex;    
		justify-content: center;
    gap:0 4px;
    z-index: 2;
    position: relative;
	}
	.departure-control a{
		font-size: 17px;
	}
  .tabs-name{
    display: none;
  }
  .calendar-table{
    margin-top: 0;
  }
}
/*-/ End Calendar common -*/

#schedule .departure-control a{
  background: #93D5E6;
}
#schedule .departure-control a.active{
  background: #fff;
}
.schedule-info{
  display: flex;  
}

/*---- Chat online----*/
.chat{
  padding: 0 15px;
}
.chat-wrap{
	text-align: center;
}
.no-underline {
	font-size: 25px;
	font-weight: bold;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1.2;
	margin-bottom: 10px;
}
.no-underline:before {
	content: "";
	display: flex;
	width: 34px;
	height: 24px;
	background: url("../img/icon-chat.png") 0 0 no-repeat;
	background-position: center center;
	margin-right: 10px;
}
.chat .online span {
	color: #fff;
    font-size: 17px;
    line-height: 1.2;
}
.chat .online a {
	display: block;
	color: #fff;
	background: #4DC45D; 
	z-index: 99;
	padding: 20px;
	border-radius: 5px;    
	text-align: center;
	width: 500px;
	max-width: 100%;
	margin: 0 auto;
}
.chat_close {
	display: none;
}
@media screen and (max-width: 768px) {		
	.box-contact {
		width: 100%; 
	}
}
@media screen and (max-width: 767px) {		
	.box-contact {
		display: flex;
		padding: 25px 15px;
	}
	.underline,
	.no-underline {
		font-size: 19px;
	}
	.no-underline:before{
		margin-right: 5px;
	}
	.chat_close {
		z-index: 3;
		position: fixed;
		bottom: 25px;
		right: 12px;
		color: #fff;
		width: 50px;
		height: 50px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.chat_open {
		display: none;
		z-index: 2;
		width: 34px;
		height: 24px;
		background: url(../img/icon-chat.png) no-repeat;
		background-position: center center;
		margin-right: 10px;
		padding: 20px 25px;
		background-color: #4dc45d;
		border-radius: 5px;
		position: fixed;
		bottom: 35px;
		right: 10px;
	}
	.underline{
		margin-top: 5px;
    display: block;
	}
}
@media screen and (max-width: 575px) {	
	.chat .online a {
		padding: 10px;
	}
}

/*----/ End Chat online----*/

/*---------Banner ads--------*/
.onlymb {
	display: none;
}
.bnr-ads{
  margin: 50px auto 50px auto;
  text-align: center;
}
@media(max-width:767px){
  .bnr-ads img{
    width: 100%;
    height: auto;
  }
  .onlymb {
		display: block;
	}

	.onlypc {
		display: none;
	}
}








