@font-face {
  font-family: 'coopbl';
  src: url("../fonts/COOPBL.TTF");
}
:root {
	--c-pink: #DB3D6C;
	--f-title: "coopbl", sans-serif;
}
body {
	line-height:1.3;
}
img{
  max-width: 100%;
}
.mt10{margin-top: 10px;}
.mt15{margin-top: 15px;}
.mt30{margin-top: 30px;}
.mt50{margin-top: 50px;}
.pb100{ padding-bottom: 100px;}
.pt100{ padding-top: 100px;}
@media(max-width:767px){
  .pb100{ padding-bottom: 70px;}
  .pt100{ padding-top: 70px;}
}
.bg-gray{
  background: #F3F3F3;
}
.textred{
  color: #FF0000;
}
.textblue{
  color: #005FFF;
}
.textlink{
  text-decoration: underline;
}
.textpink{
  color: var(--c-pink);
}
@media(min-width:767px){
  .decs{
    text-align: center;
  }
}
.title-cm{
  font-family: var(--f-title);
  font-size: 35px;
  text-align: center;
  margin-bottom: 60px;
}
/*----- Banner -----*/
.banner{
  position: relative;
  padding: 30px 0;
  background: url("../img/bnr.jpg") no-repeat center top;
  background-size: auto 100%;
}
.bnr-title{
  padding-bottom: 75px;
}
.banner-inner .banner-txt{
  position: relative;  
}

@media(min-width:767px){
  .bnr-bus{
    position: absolute;
    right: -15%;
    bottom: 0;
  }
}
@media(min-width:2080px){
  .banner{
    background-size: 100% auto;
  }
}
@media(max-width:1900px){
  .bnr-bus{
    width: 42%;
  }
  .bnr-title img{
    width: 77%;
  }
}
@media(max-width:1440px){
  .bnr-bus{
    width: 37%;
    right: 0;
  }
  .bnr-title img{
    width: 67%;
  }
  .bnr-title{
    padding-bottom: 6vw;
  }
}
@media(max-width:991px){
  .banner{
    padding: 15px 0;
  }
}
@media(max-width:767px){
  .banner{
    background: url("../img/bnr-mb.jpg") no-repeat center top;
    background-size: 100% 100%;
    padding: 5vw 0;
  }
  .banner-txt{
    text-align: right;
  }
  .bnr-title img{
    width: 100%;
  }
  .bnr-bus {
    width: 70%;
    margin-top: -22vw;
    margin-right: 29px;
  }
}

/*----- End Banner -----*/





/*----- Intro -----*/
.intro-wrap{
  padding-top: 30px;
}
.intro-inner{
  border:1px solid #E8E8E8;
  box-shadow: 0 11px 22px #E8E8E8;
}
.intro-title{
  font-size: 28px;
  color: var(--c-pink);
  text-align: center;
  font-family: var(--f-title);
  padding: 20px;
  background: #FFDAE6;
  border: 1px solid #FAD0DE;
}
.intro-content{
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  padding: 20px 25px 30px 25px;
  gap: 30px 60px;
  background: #fff;
}
.intro-content > div{
  width: 100%;
}
.price-wrap{
  position: relative;  
  display: inline-block;
}
.price {
  font-size: 36px;
  font-weight: bold;
  color: #00479C;
  position: relative;
  z-index: 2;
}
.price > span{
  font-size: 48px;
}
.price-wrap:after{
  content: '';
  width: 150px;
  height: 90px;
  background: url("../img/off-sticker.png") no-repeat;
  background-size: 100%;
  position: absolute;
  right: -40px;
  top: 35px;
}
.intro-txt .textpink{
  font-size: 20px;
}
@media(min-width:991px){  
  .intro-content > div:nth-child(1){
    width: calc(42% - 30px);
    text-align: center;
  }
  .intro-content > div:nth-child(2){
    width: calc(58% - 30px);
  }
  .price-wrap{
    padding-bottom: 40px;
  }
}
@media(max-width:991px){
  .intro-price{
    text-align: center;
  }
  .price-wrap{
    padding-bottom: 40px;
  }
  .price-wrap:after{
    width: 120px;
    height: 70px;
    right: -45px;
    top: 30px;
  }
  .price{
    font-size: 36px;
  }
  .price span{
    font-size: 44px;
  }
  .intro-title{
    font-size: 25px;
  }
  .intro-price .mt30{
    margin-top: 20px;
  }
}
@media(max-width:575px){
  .price{
    font-size: 7vw;
  }
  .price span{
    font-size: 10.5vw;
  }
  .price-wrap:after{
    top: 10vw;
    right: -10px;
    width: 25vw;
    height: 15vw;
  }
}
/*----- End Intro -----*/
/*----- Bus route -----*/
.busroute-item{	
	padding: 20px 0;	
	position: relative;
}
.busroute-item:after{
	content: '';
	width: calc(100% - 30px);
	height: 1px;
	border-bottom: 1px solid #D8D8D8;
	position: absolute;
	bottom:0;
	left: 15px;
}
.busroute-list > .busroute-item:first-child:before{
  content: '';
	width: calc(100% - 30px);
	height: 1px;
	border-bottom: 1px solid #D8D8D8;
	position: absolute;
	top:0;
	left: 15px;
}
.busroute-name > img{
	margin: 0 15px;
}
.busroute-name{
	font-weight: bold;
}
.busroute-price .num{
	font-size: 25px;
	font-weight: bold;
}
.busroute-right .btn-cta-small {
	width: 200px;
  max-width: 100%;
	min-width: inherit;
}
.busroute-right{
  display: flex;
  justify-content: center;
  gap: 10px 15px;
}
.busroute-left{
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px 0;
}
@media(min-width:991px){	
	.busroute-item{
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin-left: -15px;
		margin-right: -15px;
	}
	.busroute-item > div{
		padding-left: 15px;
		padding-right: 15px;
		gap: 10px 15px;
	}
	.busroute-right{
		display: flex;
		justify-content: flex-end;		
	}	
	.busroute-right .busroute-price{
		margin-right: 30px;
	}
}
@media(min-width:991px){
	.busroute-price,
	.busroute-name{
		font-size: 18px;
	}	
	.busroute-left{
		width: 60%;
	}
	.busroute-right{
		width: 40%;
	}
}
@media(max-width:991px){
	.busroute-right .btn-cta-small{
		width: 160px;
	}
  .busroute-right{
    flex-wrap: wrap;
  }
  .busroute-right .busroute-price{
    width: 100%;
  }
  .busroute-right > div{
    width: calc(50% - 8px);
  }
  .busroute-right > div:nth-last-child(1){
    text-align: left;
  }
  .busroute-right > div:nth-last-child(2){
    text-align: right;
  }
  .busroute-list > .busroute-item:first-child:before{
    width: 100%;    
    left: 0;
  }
}
@media(max-width:991px){
	.busroute-right{
		text-align: center;
    margin-top: 10px;
	}
	.busroute-right .btn-cta-small {
    width: 280px;  
    padding: 10px;
	}
}
@media(max-width:767px){
  .busroute-name > img {
    margin: 0 5px;
  }
  .busroute-price .num{
    font-size: 20px;
  }
}
.btn-cta{  
  border-radius: 30px;
  text-align: center;
  color: #fff;
  font-weight: bold;
  display: inline-block;
	background: #6AC3F6;
}
.btn-cta:hover{
  background: #4DABE1;
  color: #fff;
  text-decoration: none;
}
.btn-cta-small{
  min-width: 190px;
  max-width: 100%;
  padding: 8px;
  font-size: 15px;  
}
.btn-cta-medium{
  font-size: 18px;
  width: 250px;
  max-width: 100%;
  padding: 12px;
}
.btn-green{
  background: #6DAF48;  
}
.btn-green:hover{
  background: #5AA82E;  
}
.busroute-name{
  position: relative;
  padding-left: 40px;
}
.busroute-name:before{
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  background: url(../img/ico-day01.png) no-repeat center;
  background-size: 100%;
  position: absolute;
  left: 0;
  top:-3px;
}
@media(min-width:1000px){
  .busroute-name:before{
    width: 30px;
    height: 30px;
  }
}
@media(max-width:991px){
  .busroute-name{
    padding-left: 35px;
  }
  .busroute-left > p:nth-child(1){
    width: 60%;
  }
  .busroute-left > p:nth-child(2){
    width: 40%;
    text-align: right;
  }
}
/*----- End Bus route -----*/

/*----- attraction -----*/
.attraction-list > div + div{
  margin-top: 30px;
}
.attraction-item{
  padding: 12px;
  background: #fff;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 15px 30px;
}
.point-num{
  font-size: 20px;
  color: #00387C;
  font-weight: bold;
  background: url("../img/bg-title.png") no-repeat center left;
  padding: 15px 20px 5px 35px;
}
.attraction-name{
  font-size: 23px;
  font-weight: bold;
}
.attraction-item > div,
.attraction-item img{
  width: 100%;
}
@media(min-width:767px){
  .attraction-item > div{
    width: calc(50% - 15px);
  }
}
@media(max-width:767px){
  .attraction-name{
    font-size: 20px;
  }
  .attraction-item > div:nth-child(2){
    padding-bottom: 20px;
  }
}

/*----- Insta -----*/
.mt20{
  margin-top: 20px;
}
.social-item > a {
  font-size: 20px;
  font-weight: bold;
  color: #DB3D6C;
  display: block;
}
.social-item > a img{
  display: block;
  margin: 0 auto 10px auto;
}





















