body,p,span,a{
	line-height: 1.4;
}
@font-face {
  font-family: "Alberta";
  src: url("font/UTM Alberta Heavy.ttf");
}
h2{
	font-family: "Alberta";
	font-weight: bold;
	font-size: 50px;
	color: #406000;
	text-align: center;
	padding-bottom: 50px;
}
h3{
	font-size: 30px;
	font-weight: bold;
	padding-bottom: 20px;
	color: #406000;
}
.pt100{padding-top: 100px;}
.pb150{padding-bottom: 150px;}
.pb100{padding-bottom: 100px;}
.pb50{padding-bottom: 50px;}
.mt50 {margin-top: 50px;}
.mt40 {margin-top: 40px;}
.mt30 {margin-top: 30px;}
.mt20 {margin-top: 20px;}
.mt10 {margin-top: 10px;}
.mt5 {margin-top: 5px;}
.mb50 {margin-bottom: 50px;}
.pt30{padding-top: 30px;}
img{
	max-width: 100%;
}
.textred{
  color: #DF1700;
}
.cta-button{
  padding: 15px;
  width: 320px;
  max-width: 100%;
  background-color: #E36300;
  border-radius: 50px;
  color: white;
  font-size: 25px;
  font-weight: bold;
  display: block;  
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
a.cta-button:hover, a.cta-button:visited{
	color: white;
	text-decoration: none;
	background-color: #FB8122;
}
.text-center{
	text-align: center;
}
.txt-note{
	font-size: 14px;
}
.txt-red{
	color: #DE0000;
}
.yellow-bg{
	background-color: #FBF5DD;
}
.block-content{
	padding-top: 100px;
}
.block-mb{
	display: none;
}
.w-100{
	width: 100%;
	height: auto;
}
@media(max-width:991px){
  h2{
    font-size: 42px;
  }
  h3{
    font-size: 22px;
    padding-bottom: 10px;
  }
}
@media(max-width:767px){
   h2{
    font-size: 38px;
  }
  h3{
    font-size: 20px;
  }
	.hidden-mb{
		display: none;
	}
	.block-mb{
		display: block;
	}
	.block-content {
    padding-top: 60px;
	}
	h2 {
    padding-bottom: 40px;
	}
	.pt100{padding-top: 80px;}
	.pb150{padding-bottom: 100px;}
	.pb100{padding-bottom: 60px;}
	.pb50{padding-bottom: 30px;}
	.mt50 {margin-top: 30px;}
	.mt40 {margin-top: 40px;}
	.mt30 {margin-top: 20px;}
	.mb50 {margin-bottom: 30px;}
	.pt30{padding-top: 30px;}
}
/*----- Main banner -----*/
.main-banner{
  width: 100%;
  position: relative;
  overflow: hidden;
}
.banner > img{
  width: 100%;
}
.banner-inner{
  position: absolute;
  top:19vw;
  width: 100%;  
}
.banner-title{
  font-family: "Alberta";
  font-size: 4vw;
  color: #406000;
  position: relative;
  line-height: 1.2;
/*  -webkit-text-stroke: 1px #fff;*/
  text-shadow: -1px -1px 0 #fff, 1px -1px 0 #fff, -1px 1px 0 #fff, 1px 1px 0 #fff;
  text-transform: uppercase;
}
.banner-title-02{
	font-family: "Alberta";
	display: block;
	font-size: 8vw;
	color: #C83000;
	line-height: 1;
	font-weight: bold;
	text-transform: none;
}
/*.banner-title-02:after{
  content: '';
  width: 53px;
  height: 44px;
  background: url(img/tomato-icon.png) no-repeat right center;
  background-size: 100%;
  margin-left: 10px;
  display: inline-block;
  vertical-align: middle;
  margin-top: -8px;
}*/
.banner-inner p{
  font-size: 4vw;
  font-weight: bold;
  color: #fff;
  text-shadow: 0 0 5px #0A5992;
  line-height: 1;
}
p.bnr-departure{
  font-size: 4.7vw;
	padding-top: 10px;
}
.banner-departure-info{
	margin-top: 20px;
}
.banner-departure-info p{
  color: #fff;
  font-weight: bold;
}
.banner-price span{
  font-size: 7vw;
}
.bnr-cta-btn .cta-button {
    padding: 10px;
    width: 200px;
    max-width: 100%;
    background-color: #E36300;
    border-radius: 50px;
    color: white;
    font-size: 20px;
    font-weight: bold;
    display: block;
    margin: 10px 0 0 0;
    text-align: center;
    border: 1px solid #fff;
}
@media(min-width:767px){
  .banner-inner{
    top: 5vw;
  }
  .banner-title {
    font-size: 2.3vw;
  }
	.banner-title-02{
    font-size: 5.3vw;
  }
  .banner-inner p {
    font-size: 2.7vw;
  }	
  p.bnr-departure{
    font-size: 2.7vw;
		padding-top: 10px;
  }
  .banner-price span{
    font-size: 5vw;
  }
  .banner-departure-info{
    margin-top: 10px;
  }
}
@media(min-width:991px){	
	.bnr-cta-btn .cta-button {
			padding: 12px;
			width: 230px;
	}
  .banner-title {
    font-size: 2vw;
  }
	.banner-title-02{
    font-size: 5vw;
  }
  .banner-inner p {
    font-size: 1.7vw;
  }	
  p.bnr-departure{
    font-size: 2.4vw;
    margin-top: 5px;
  }
  .banner-price span{
    font-size: 2.8vw;
  }
  .banner-departure-info {
    margin-top: 2vw;
  }
}
@media(min-width:1140px){
  .banner-title {
    font-size: 1.9vw;
  }
	.banner-title-02{
    font-size: 4.5vw;
  }  
}
@media(min-width:1200px){
  .banner-inner p {
    font-size: 2vw;
  }	
  p.bnr-departure{
    font-size: 2.2vw;
  }
}
@media(min-width:1440px){
  .banner-title{
    font-size: 1.5vw;
  }
  .banner-title-02{
    font-size: 3.5vw;
	}
  .banner-inner p{
    font-size: 1.5vw;
  }
  p.bnr-departure{
    font-size: 1.8vw;
    margin-top: 0;
  }  
  .banner-title-02:after{
    width: 85px;
    height: 60px;
  }
  .banner-departure-info {
    margin-top: 30px;
  }
}
@media(min-width:1900px){
  .banner-inner{
    top: 100px;
  }
  .banner-title{
    font-size: 26px;
  }  
  .banner-title-02{
    font-size: 61px;    
  }
  .banner-title-02:after{
    width: 100px;
    height: 70px;
  }
  .banner-inner p{
    font-size: 23px;
  }
  p.bnr-departure{
    font-size: 33px;
  }  
  .banner-inner p span{
    font-size: 52px;
  }
}
@media(max-width:991px) and (min-width:767px){
  .main-banner {
    overflow: hidden;
  }
  .main-banner > img{
    width: 125% !important;
    max-width: inherit;
  }
}
/*----- Main banner end -----*/

/*-----Table of content -----*/
.table-content {
  padding-top: 25px;
}
.table-content ul {
  display: flex;
  justify-content: space-evenly;
}
.table-content li a{
  font-weight: bold;
}
.table-content li a:after{
  content:'\f078' ;
  font-family: "Font Awesome 5 Free";
  margin-left: 9px;
  font-size: 13px;
}
@media(max-width:767px){
  .table-content{
    padding-top: 10px;
  }
  .table-content ul{
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-left: -15px;
    margin-right: -15px;
  }
  .table-content li{
    width: 50%;
    padding: 0px 15px
  }
  .table-content li a {
    font-weight: bold;
    width: 100%;
    display: block;
    padding: 15px 0 5px 0;
    border-bottom: 1px solid #E3E3E3;
    position: relative;
  }
  .table-content li a:after{
    position: absolute;
    right: 0;
    font-size: 11px
  }
}
@media(max-width:575px){
    .table-content li{
      width: 100%;      
    }
}
/*----- End Table of content -----*/

/*----- Short description -----*/
.row-4{
  margin-left: -4px;
  margin-right: -4px;
}
.row-4 > div{
  padding-left: 4px;
  padding-right: 4px;
}
.row-4 > div img{
  margin-top: 8px;
  width: 100%;
}
.row-4 > div img:nth-child(1){
  margin-top: 0;
}
.intro-img .row > div{
  max-width: inherit;
}
.intro-img .col-md-7{
  flex: 0 0 52.4%;
}     
.intro-img .col-md-5{      
  flex: 0 0 47.6%;
}
.intro-section{
	display: flex;
	align-items: center;
	background: url(img/intro_bg.png) right bottom no-repeat, #fff;
}
.intro-section{
  background: url("img/bg-01.png") no-repeat 20px center;
}
.intro-img,
.intro-content{
  width: 50%;
}
.intro-content{
  padding-right: 30px;
  position: relative;
}
.intro-content > p{
  position: relative;
}
.intro-content > p:after{
  content: '';
  width: 194px;
  height: 119px;
  background: url("img/bg-02.png") no-repeat bottom right;
  display: block;
  position: absolute;
  left: 0;
  margin-top: -10px;
}
@media(max-width:991px){
  .intro-section {
    background: url(img/bg-01.png) no-repeat 0px center;
  }
}
@media(max-width:767px){
  .intro-section {
    background: none;    
    flex-wrap: wrap;
  }
  .intro-img, .intro-content{
    width: 100%;
  }
  .intro-content{
    padding-right: 0;
  }
  .intro-content > p:after{
    width: 94%;
    height: 72px;
    background-size: auto 100%;
    position: inherit;
  }
  .intro-content{
    background: url(img/bg-01.png) no-repeat top center;
    background-size: 100% 100%;
  }
}
/*----- Short description end -----*/

/*----- departure -----*/
.departure-info-wrap{
	background: #FBF5DD;
}
.calendar{
  background-color: #fff;
  padding: 30px;
}
.calendar-mane{
  font-size: 23px;
  font-weight: bold;
  text-align: center;
}
.calendar-table {
  width: 100%;
  margin-top: 15px;
}
.calendar-table th,
.calendar-table td,
.calendar-table{
  border-collapse: collapse;
  padding: 13px 5px;
  text-align: center;
}
.confirmed-tour{
  background: url("img/confirm_date.png") no-repeat center center;
  font-weight: bold;
	color: white;
	background-size: contain;
}
.scheduled-departure{
  background: url("img/schedule_date.png") no-repeat center center;
  font-weight: bold;
	color: white;
	background-size: contain;
}
.note-list li{
  display: inline-block;
  vertical-align: middle;
  margin: 5px 30px;
}
.note-list li > span{
  width: 30px;
  height: 30px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
  border-radius: 50%;
  background-size: 100%;
  position: relative;
  margin-top: -3px;
}
@media(max-width:991px){
  .calendar{
    padding: 20px 15px;
  }
  .calendar-table th, .calendar-table td, .calendar-table{
    padding: 10px 5px;
  }
}
@media(max-width:767px){
  .departure-info-wrap .row > div:nth-child(2){
    padding-top: 30px;
  }
  .departure-info-wrap .container > p.mt30.text-center{
    text-align: left!important;
  }
  .note-list li{
    display: block;
    width: 100%;
    margin: 10px 0;
  }
	.departure-info-wrap .container.pb100{
		padding-bottom: 120px;
	}
}
/*----- End departure -----*/

/*----- Schedule -----*/
.schedule-list{
  position: relative;
}
.schedule-list li{  
  position: relative;
  z-index: 2;
}
.time{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
	padding: 13px 0;
	background-color: #87AC2D;
}
.schedule-content{
 	background-color: #fff;
	padding: 15px 10px;
	border: 1px solid #87AC2D;
  text-align: left;
}
.schedule-content > strong{
  display: block;
  margin-bottom: 3px;
}
.schedule-inner{
  position: relative;
}
.schedule-list:after{
  content: '';
  display: block;
  position: absolute; 
  background: url("img/line.png") repeat;  
  z-index: 0;
  width: 3px;
  height: 100%;
  top: 0;
  left: 39px;
}
@media(min-width:991px){
  .schedule-list{
    display: flex;
    justify-content: space-between;
    position: relative;
  }
  .schedule-list li{
    width: 11.3%;   
    text-align: center;
  }
  .schedule-list:after{
    width: 100%;
    height: 3px;
    top: 25px;
    left: 0;
  }
  /*.schedule-content{
    margin-top: 2px;
  }*/
  .time{
    font-size: 20px;
  }
}
@media(min-width:991px){
  .time{
    font-size: 22px;
  }
}
@media(max-width:991px){
  .time{
    font-size: 20px;    
  }
}
@media(max-width:991px){
  .schedule-list li{
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
  }
  .schedule-list li:last-child{
    margin-bottom: 0;
  }
  .schedule-list:after{
    background: url("img/line02.png") repeat; 
  }
  .time{
    width: 80px;
    padding: 15px 0;
    line-height: 1;
    display: flex;
    align-items: center;
    text-align: center;
    justify-content: center;
  }
  .schedule-content{
    width: calc(100% - 80px);
    padding: 15px 15px;
  }
}
@media(max-width:767px){
  .schedule-inner > p.text-center{
    text-align: left !important;
  }
}
/*----- End Schedule -----*/

/*----- Tourpoint -----*/
.tour-point{
	display: flex;
	align-items: center;
	background-color: #FBF5DD;	
}
.tour-point .img-tour-point{
	flex: 50%;
}
.tour-point .img-tour-point img{
	width: 100%;
	height: auto;
}
.tour-point-content{
	padding: 0 30px 0 40px;
	flex: 50%;
}
#tour-point .row-reverse{
	flex-direction: row-reverse;
}
@media (max-width: 991px){
	.tour-point{
		padding: 30px;
    align-items: flex-start;
	}
	.tour-point-content{
		padding: 0 20px 0 20px;
	}
}
@media (max-width: 768px){
	#tour-point .row-reverse .tour-point-content{
		padding: 0 20px 0 0;
	}
}
@media (max-width: 767px){
	.tour-point{
		display: inherit;
		padding: 0;
	}
	.tour-point .img-tour-point, .tour-point-content{
		width: 100%;
	}
	.tour-point .tour-point-content, #tour-point .row-reverse .tour-point-content{
		padding: 30px 15px;
	}
	#tour-point h3 {
    font-size: 25px;
    padding-bottom: 15px;
	}
}
/*----- Tourpoint End -----*/

/*----- Tour outline -----*/
#tour-outline{
	background: url(img/bg_leaves.png) no-repeat top center, #FBF5DD;
}
.outline-table{
  width: 100%;
  background-color: #fff;
}
.outline-table th,
.outline-table td{
  border-collapse: collapse;
  border:1px solid #F2E2C7;
  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-green li{
	padding-left: 20px;
	position: relative;
}
.list-dot-green li:before {
	content: '';
	display: block;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background: #779248;
	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){
	#tour-outline {
			background: url(img/bg_leaves.png) no-repeat top left, #FBF5DD;
	}
}
@media(max-width:767px){
	#tour-outline{
		background: url(img/bg_leaves_mb.png) no-repeat top left, #FBF5DD !important;
	}
  .outline-table th, .outline-table td{
    display: block;
    width: 100%;
    padding: 15px 15px;        
    vertical-align: middle;
  }
  .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;
	/*background: #e7b96d;*/
	padding: 15px 0;
	background: url(/en/tour/miyama/img/bg_gray.png) repeat;
	border-top: 2px solid white;
	/*display: none;*/
}
#book-btn .cta-button {
    padding: 10px 50px;
    width: 230px;
	font-size: 16px;
}
.sticky {
	position: sticky !important;
}
#book-btn .box__wrap {
	width: 100%;
	margin: 0 15px;
	display: flex; 
	justify-content: space-evenly;
	align-items: center;
}
#book-btn .box__semittl {
	width: auto;
} 
#book-btn .box__wrap .box__semittl h3 {
	font-size: 35px;
	font-family: 'Open Sans'; 
	font-weight: bold;
}
#book-btn .box__wrap .box__item {
    display: flex;
    align-items: center;
    justify-content: space-evenly;
    width: 70%; 
    text-align: center;
} 
@media screen and (max-width: 1199px) {
	#book-btn .box__wrap .box__semittl h3 {
		font-size: 28px;
	}	
}
@media screen and (min-width: 768px) and (max-width: 991px) {
	#book-btn .btn-custom {
		font-size: 14px;
		max-width: 170px;
	}
	#book-btn .btn-custom-semi {
		font-size: 14px;	
		max-width: 170px;
	}
}
@media screen and (max-width: 767px) {
	#book-btn .box__wrap {
		flex-direction: column;
		align-items: center;
		margin: 0;
	}
	#book-btn .box__semittl {
		width: 100%;
		text-align: center;
		margin-bottom: 15px;
	}
	#book-btn .box__wrap .box__item {
		width: 100%;
		justify-content: space-evenly;
	}
	#book-btn .box__wrap .box__item .btn-custom {
		width: calc((100% / 2) - 7px);
	}
}
@media screen and (max-width: 600px) {
	#backToTop2019 {
		bottom: 70px;
	}
}
@media screen and (max-width: 375px) {
	#book-btn .box__wrap .box__item .btn-custom {
		font-size: 12px;
	}	
}
/*----Adjust the position of Back to top btn in mobile----*/
@media screen and (max-width: 7670px){
	#backToTop2019 {
			bottom: 25px !important;
	}
}