@font-face {
	font-family: "IsadoraBold";
	src: url("/sys/will/share/tw/fonts/UTM IsadoraBold.ttf");
}

.bg-gray {
  background: url(../../../img/common/bg_gray.png);
}
.form-group{
  margin-bottom: 0;
}
.main-content .form-date:after{
  top:7px;
}
.main-content .form-control:disabled, .main-content .form-control[readonly]{
  background: #fff;
}
.select2-container .select2-selection--single{
	height: 40px !important;
}
.pt20{
	padding-top: 20px;
}
.display-block{
	display: block;
}
.wrap-cm > .col-md-9{
	-ms-flex: 0 0 73%;
	flex: 0 0 73%;
	max-width: 73%;
}
.wrap-cm > .col-md-3{
	-ms-flex: 0 0 27%;
	flex: 0 0 27%;
	max-width: 27%;
}
@media(max-width:991px){
	.wrap-cm > .col-sm-12{
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
  .sidebar-right{
    display: none;
  }
}

.bus-route {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.bus-route h1 {
	font-size: 18px;
	font-weight: 500;
	margin: 0 50px 0 0;
	line-height: 2em;
}
.bus-route p {
	font-size: 20px;
	font-weight: 500;
}
button.icon-arrow-right {
	border:none;
	background-color: inherit;
}
@media(max-width:991px) {
	.bus-route h1 {
		margin-right: 20px;
	}
}
@media(max-width:767px) {
	.bus-route {
		display: block;
		margin-top: 30px;
		position: relative;
	}
	.bus-route h1 {
		margin-right: 0;
	}
	.bus-route .btn-change {
		position: absolute;
		bottom: 0;
		right: 0;
	}
}
@media(max-width:425px){
	.bus-route .f35 {
		font-size: 26px;
		line-height: 1;
	}
}
@media(max-width:375px) {
	.bus-route h1 {
		font-size: 16px;
	}
	.bus-route .f35 {
		font-size: 23px;
	}
}
.border-gray{
	border:1px solid #C8C8C8;
	border-radius: 3px;
	overflow: hidden;
}
.box-shadow{
       box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.161);
}
.title-f28{
	font-size: 28px;
	text-align: center;
	padding: 17px 0;
}
@media(max-width:767px){
	.title-f28{
		font-size: 25px;
		padding: 0;
	}
	.title-f28.mt40{
		margin-top: 30px;
	}
	.seat-note.mt30{
		margin-top: 20px;
	}
	.border-gray{
		border:none;
	}
}
.step-head{
  width: calc(66.666% - 15px);
}
.step-head > ul{
  display: flex;
}
.step-head > ul{
  padding: 0 4px;
}
.step-head > ul > li {
  width: calc(33.333% + 20px);
  position: relative;
  margin-left: -4px;
  margin-right: -4px;
}
.step-head > ul > li:nth-child(1) p{
  width: calc(100% - 20px);
}
.step-head > ul > li p{
  font-weight: 500;
  margin-top: 10px;
  padding: 8px 0;
  background: #d2d2d2;
  width: calc(100% - 42px);
  text-align: center;
  margin: 0 21px;
  position: relative;
  z-index: 2;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.step-head > ul > li:nth-child(1) p{
  width: calc(100% - 21px);
  margin-left: 0;
}
.step-head li:before,
.step-head li:after{
  content: '';
  width: 21px;
  height: 100%;
  position: absolute;
}
.step-head li:before{
  background: url("/sys/will/share/img/arrow-left.png") no-repeat left center;
  background-size: 100% 100%;
  left: 0;
  top:0;
}
.step-head li:after{
  background: url("/sys/will/share/img/arrow-right.png") no-repeat left center;
  background-size: 100% 100%;
  right: 0;
  top:0;
}
.step-head li.active p{
  background: #FFC6D3;
}
.step-head li:first-child.active:before{
  background: #FFC6D3;
}
.step-head li.active:before{
  background: url("/sys/will/share/img/arrow-left-active.png") no-repeat left center;
  background-size: 100% 100%;
}
.step-head li.active:after{
  background: url("/sys/will/share/img/arrow-right-active.png") no-repeat left center;
  background-size: 100% 100%;
}
@media(max-width:991px){
  .step-head{
    width: 100%;
  }
}
@media(max-width:767px){
  .step-head > ul > li p{
    font-size: 15px;
  }
  .step-head li:before,
  .step-head li:after{
    width: 20px;
  }
  .step-head > ul{
    padding: 0 7px;
  }
  .step-head > ul > li {
    margin-left: -7px;
    margin-right: -7px;
  }
  .step-head > ul > li p{
    width: calc(100% - 40px);
    margin: 0 20px;
    line-height: 1;
    padding: 5px 0;
  }
  .step-head > ul > li:nth-child(1) p{
    width: calc(100% - 20px);
  }
}

.seat-note{
	background-color: #FCFCFC;
	padding: 10px 15px;
}
.seat-note-item {
	padding-left: 30px;
	position: relative;
}
.seat-note-item p{
	font-size: 12px;
}
.seat-note-item p strong,
.seat-note-item p span{
	font-size: 16px;
  font-weight: 500;
}
.seat-note-item:before{
	content: '';
	display: block;
	width: 19px;
	height: 21px;
	transform: rotate(90deg);
	position: absolute;
	left: 0;
	top:0;
}
.icon-seat-vip:before{
	background: url(/sys/will/share/img/seat-VIP.svg) no-repeat top left;
	background-size: 100%;
}
.icon-seat-s:before{
	background: url(/sys/will/share/img/seat-S.svg) no-repeat top left;
	background-size: 100%;
}
.icon-seat-std:before{
	background: url(/sys/will/share/img/seat-std.svg) no-repeat top left;
	background-size: 100%;
}
.seat-status{
	margin-top: 20px;
	text-align: right;
}
.seat-status li{
	display: inline-block;
	margin: 0 23px;
	padding-left: 30px;
}
.seat-status li:last-child{
	margin-right: 0;
}
.seat-status li:before{
	content: '';
	width: 19px;
	height: 21px;
	display: inline-block;
	vertical-align: middle;
	transform: rotate(90deg);
}
.seat-status li:nth-child(2):before{
	background: url(/sys/will/share/img/seat-non.svg) no-repeat top left;
	background-size: 100%;
	margin-right: 10px;
}
.seat-status li:nth-child(1):before{
	width: 28px;
	height: 26px;
	background: url(/sys/will/share/img/seat-std.svg) no-repeat center center #E86594;
	background-size: 19px;
	box-shadow: 0px 2px 3px rgba(0,0,0,0.3);
	margin-right: 7px;
}

@media(min-width:1170px){
	.row-30{
		margin-left: -30px;
		margin-right: -30px;
	}
	.row-30 > div{
		padding-left: 30px;
		padding-right: 30px;
	}
}
@media(max-width:767px){
	.seat-note{
		padding: 10px;
	}
	.seat-note-item p{
		display: inline-block;
		margin-right: 5px;
	}
	.seat-note-item{
		margin-bottom: 10px;
	}
	.seat-note .row > div:last-child .seat-note-item{
		margin-bottom: 0;
	}
}
@media(max-width:575px){
	.seat-status li{
		width: 50%;
    text-align: left;
    display: block;
    float: left;
    margin: 0;
		padding-left: 0;
	}
	.seat-status:after{
		content: '';
		display: block;
		clear: both;
	}
}

/*--- Seat ---*/
.floor-name{
	font-size: 20px;
	margin-top: 30px;
	font-weight: 500;
}
.seatlayout-tbl{
	width: 100%;
	overflow: hidden;
}
.seatlayout-tbl dd{
	height: 45px;
	margin: 10px 0;
}
.icon_wc_area,
[class^='seat_'][class$='_drive'],
.empty,
[class^='seat_'][class$='_gray']>div,
[class^='seat_'][class$='_vip']>div,
[class^='seat_'][class$='_seat']>div,
[class^='seat_'][class$='_s']>div,
[class^='seat_'][class$='_std']>div,
[class^='seat_'][class$='_reserved']>div,
[class^='seat_'][class$='_group']>div {
	height: 46px;
	width: 50px;
}
.seatlayout-tbl dd > div{
	margin: 0 auto;
	line-height: 46px;
	padding-right: 7px;
	font-size: 14px;
	font-weight: 500;
	text-align: center;
}

[class^='seat_'][class$='_gray']>div,
[class^='seat_'][class$='_vip']>div,
[class^='seat_'][class$='_s']>div,
[class^='seat_'][class$='_std']>div {
	position: relative;
  z-index: 2;
}

[class^='seat_'][class$='_gray']>div:after,
[class^='seat_'][class$='_vip']>div:after,
[class^='seat_'][class$='_s']>div:after,
[class^='seat_'][class$='_std']>div:after {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
}

[class^='seat_'][class$='_vip']>div {
	background-image: url(/sys/will/share/img/seat-VIP.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 34px;
}

[class^='seat_'][class$='_s']>div {
	background: url(/sys/will/share/img/seat-S.svg) no-repeat center center;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 34px;
}

[class^='seat_'][class$='_std']>div {
	background: url(/sys/will/share/img/seat-std.svg) no-repeat center center;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 34px;
}

[class^='seat_'][class$='_gray']>div {
	background: url(/sys/will/share/img/seat-non.svg) no-repeat center center;
	background-repeat: no-repeat;
	background-position: center;
	background-size: 34px;
}

[class^='seat_'][class$='_stair'] {
	background-position: left;
/*	background-size: 130% 100%;*/
/*	height: 26px !important;*/
}

[class^='seat_'][class$='_infants'] {
	width: 100%;
	background: url(../img/doors.svg) left center;
	background-repeat: repeat-x;
	background-position: center;
	background-size: 46px auto;
}

.seat_stair{
	width: 100%;
	background-size: 46px auto;
}

[class^='seat_'][class$='_drive'] {
background: url(/sys/will/share/img/driver-seat.svg) no-repeat center center;
	background-size: 45px;
}

.seat_vip.choose:hover > div:after,
.seat_vip.choose > div:after,
.seat_s.choose:hover > div:after,
.seat_s.choose > div:after,
.seat_std.choose:hover > div:after,
.seat_std.choose > div:after{
	background-color: #E86594;
	box-shadow: 0px 3px 4px rgba(0,0,0,0.3);
}

[class^='seat_'][class$='_std_reserved']>div {
	background-image: url(/sys/will/share/img/seat-std.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 34px;
	background-color: #E86594;
	box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.3);
}

[class^='seat_'][class$='_s_reserved']>div {
	background-image: url(/sys/will/share/img/seat-S.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 34px;
	background-color: #E86594;
	box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.3);
}

[class^='seat_'][class$='_vip_reserved']>div {
	background-image: url(/sys/will/share/img/seat-VIP.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 34px;
	background-color: #E86594;
	box-shadow: 0px 3px 4px rgba(0, 0, 0, 0.3);
}
.icon_wc_area{
	position: relative;
	overflow: visible;
}
.icon_wc_area:after{
	content: '';
	display: block;
	width: 110px;
	height: 88px;
	background-size: 30px;
	border-radius: 4px;
	border: 1px solid #C8C8C8;
	position: absolute;
	top: 0px;
	right: 0;
}
.seat-list .tab-content>.tab-pane{
	display: block;
}
.seat-list .fade:not(.show) {
    opacity: 1;
}
.price-box-mb{
	width: 100%;
	border-top:3px solid #E8E8E8;
	padding: 15px 15px 0 15px;
}
@media(max-width:767px){
	.hidden-mb{
		display: none;
	}
	.seatlayout-tbl dd > div{
		margin: 5px auto;
	}
	.seat-page .btn{
		font-size: 17px;
	}
	.seat-page{
		padding-bottom: 0;
	}
	.seatlayout-tbl{
		width: 85%;
		margin: 0 auto;
	}
	.seatlayout-tbl dd.seat_passage,
	.seatlayout-tbl dd{
		height: 50px;
	}
	.icon_wc_area,
	.seat_drive,
	.empty{
		height: 35px;
		width: 35px;
	}
	.seat-list .tab-content>.tab-pane{
		display: block;
	}
	.seat-list .fade:not(.show) {
		opacity: 0;
		display: none;
	}
	.seat-page .fade.show{
    opacity: 1 !important;
	}
	.icon_wc_area:after{
		width: 90px;
		height: 110px;
		top: inherit;
		right: 0;
		bottom: 0;
	}
	.seat_passage{
		background-size: auto;
	}
	.seat_stair{
		height: 40px;
		background-size: 50px auto;
	}

	[class^='seat_'][class$='_stair'] {
		background: url(../img/lobby_mb.svg) repeat-y center top;
		background-size: auto;
	}

	[class^='seat_'][class$='_infants'] {
		height: 40px;
		background-size: 50px auto;
	}

	.seatlayout-tbl td{
		width: 100%;
		display: block;
		clear: both;
	}
	.rs_rows_5 dl{
		width: 100%;
		margin: 0;
		padding: 0;
		overflow: hidden;
	}
	.rs_rows_5 dl:after{
		content: '';
		display: block;
		clear: both;
	}
	.seatlayout-tbl .rs_rows_5 dd{
		width: 20%;
    display: inline-block;
    vertical-align: middle;
    float: right;
		text-align: center;
		margin: 0;
    padding: 0;
	}
	.icon_wc_area,
	[class^='seat_'][class$='_seat']>div,
	[class^='seat_'][class$='_gray']>div {
		display: inline-block;
		vertical-align: middle;
	}

	[class^='seat_'][class$='_gray']>div:after,
	[class^='seat_'][class$='_seat']>div:after {
		transform: rotate(90deg);
	}
	.seat_stair	{
		transform: rotate(90deg);
	}
	[class^='seat_'][class$='_infants'] {
		transform: rotate(90deg);
	}

	.seatlayout-tbl tr > td:last-child dl{
		overflow: visible;
	}
	.num_row{
		display: block;
    padding-top: 8px !important;
		text-align: left !important;
		width: 35px !important;
		font-size: 21px;
	}

	[class^='seat_'][class$='_drive'] {
		background-size: auto 80%;
		transform: rotate(90deg);
	}
	.seat-list .tab-content {
		padding-top: 20px;
	}
	.seat-list .nav:after{
		content: "";
		display: block;
		clear: both;
	}
	.seatlayout-tbl dd > div{
		padding-right: 0;
	}

	[class^='seat_'][class$='_gray']>div,
	[class^='seat_'][class$='_vip']>div,
	[class^='seat_'][class$='_s']>div,
	[class^='seat_'][class$='_std']>div,
	[class^='seat_'][class$='_seat']>div {
		transform: rotate(90deg);
		background-size: 37px;
	}

	div .seat {
		transform: rotate(-90deg);
	}

	[class^='seat_'][class$='_reserved']>div {
		transform: rotate(90deg);
		background-size: 37px;
	}

  .seat-list{
    padding: 0 15px 30px;
  }
  .choose-seat .box-cm{
    padding-left: 15px;
    padding-right: 15px;
  }
  .seat-note {
    background-color: #E8E8E8;
  }
}
@media(max-width:424px){
	.seatlayout-tbl{
		width: 84%;
	}
}

.f12{
  font-size: 12px;
}
.f14{
  font-size: 14px;
}
.btn-transit-area{
  display: inline-block;
  margin-top: 10px;
}
.booking-title{
	font-size: 22px;
	padding: 10px 20px;
  background: #8F8F8F;
  color: #fff;
  line-height: 1.2;
}
@media(max-width:767px){
  .booking-title{
    font-size: 20px;
  }
}
.border-3-gray{
	border-top:3px solid #E8E8E8;
}
.choose-location-box{
	border:1px solid #E8E8E8;
	border-radius: 4px;
	overflow: hidden;
}
.box-head{
	font-size: 20px;
	font-weight: 500;
	padding: 11px 20px;
}
.box-cm-content{
	padding: 0 20px;
}
.point-list .point-item{
	border-bottom: 2px dotted#C8C8C8;
	padding: 20px 0;
}
.point-list >.point-item:last-child{
	border-bottom: none;
}
.location-time{
	font-size: 20px;
	font-weight: 500;
	display: block;
	margin-bottom: 5px;
  line-height: 1.2;
}
.point-content-wrap{
	position: relative;
	padding-right: 45px;
}
/*
.point-content{
	background: url(../../../img/common/icon_option.svg) no-repeat left 4px;
	padding-left: 30px;
	cursor: pointer;
}
.point-content:hover{
	background: url(../../../img/common/icon_checked_pink.svg) no-repeat left 4px;
}
.point-content[aria-expanded="true"]{
  background: url(../../../img/common/icon_checked_pink.svg) no-repeat left 4px;
}
*/
.btn-pointmap{
	position: absolute;
	right:0;
	top:37px;
}
.tbl-bookingdetail .btn-pointmap{
	position: inherit;
	right: inherit;
	top:inherit;
	margin-left: 15px;
	font-weight: normal;
}
.icon-edit{
	font-weight: normal;
	display: inline-block;
}
.point-input{
	margin-top: 10px;
	padding-left: 30px;
}
.point-input lable{
	margin-bottom: 5px;
	display: block;
}
.tabs-nav-cm{
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
}
.tabs-nav-cm li{
  width: calc(50% - 1px);
}
.tabs-nav-cm a span{
  font-weight: bold;
  font-size: 18px;
  position: relative;
  z-index: 1;
  color: #707070;
}
.tabs-nav-cm .nav-link{
  background: #E8E8E8;
  border:none;
  padding: 12px 5px;
  overflow: hidden;
  text-align: center;
}
.tabs-nav-cm .nav-link.active{
  background: url(../../../img/common/bg_gray.png) #F8F8F8;
  position: relative;
}
.tabs-nav-cm .nav-link.active span{
  color: #3C3C3C;
}
.tabs-nav-cm .nav-link.active:after{
  content: '';
  display: block;
  position: absolute;
  top:0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #97979752;
  z-index: 0;
}
@media(min-width:767px){
  .tabs-nav-cm.block-767{
    display: none;
  }
  .choose-boarding .tab-content>.tab-pane{
    display: block;
  }
  .choose-boarding .fade:not(.show) {
      opacity: 1;
  }
}
@media(max-width:991px){
  .choose-boarding{
    padding-bottom: 20px;
  }
}
@media(max-width:767px){
  .wrap-cm{
    background: #F8F8F8;
    padding-top: 20px;
    margin-top: 20px;
  }
  .box-cm-content {
    padding: 0 15px;
  }
  .choose-boarding {
    border:1px solid #C8C8C8;
    box-shadow:0 3px 6px rgb(0 0 0 / 16%);
    border-radius: 4px;
    padding: 0 0 20px 0;
    background-color: #fff;
  }
  .choose-boarding .box-cm{
    padding-left: 15px;
    padding-right: 15px;
  }
  .choose-location-box.mt30{
    margin-top: 0;
  }
  .tabs-nav-cm a span{
    font-size: 16px;
  }
}





.plan-list > li{
  padding: 20px 0 20px 0px;
  border-bottom: 2px dotted #C8C8C8;
}
.plan-list > li:last-child{
  border-bottom: none;
  padding-bottom: 0;
}
/*
.plan-item{
	padding-left: 30px;
	background: url(../../../img/common/icon_option.svg) no-repeat left 24px;
	cursor: pointer;
}
.plan-item:hover{
	background: url(../../../img/common/icon_checked_pink.svg) no-repeat left 24px;
}
.plan-item.active{
  background: url(../../../img/common/icon_checked_pink.svg) no-repeat left 24px;
}
*/
.plan-name span{
	font-size: 20px;
	font-weight: 500;
	margin-bottom: 10px;
}
.plan-wrap{
	display: flex;
  align-items: center;
  justify-content: space-around;
}
.plan-content{
	width: 70%;
	height: 60px;
}
.plan-price{
	width: 40%;
	text-align: left;
}
.plan-wrap:after{
	content: '';
	display: block;
	clear: both;
}
.plan-price{
	padding-left: 15px;
}
.plan-price > p{
	font-size: 16px;
}
.plan-price > p > span{
	font-size: 20px;
	font-weight: bold;
	color: #F80707;
	display: inline-block;
}
.form-box .form-group{
	display: inline-block;
	width: 200px;
	margin-right: 20px;
}
label{
	margin-bottom: 3px;
}
@media(max-width:991px){
	.form-box{
		margin-left: -10px;
		margin-right: -10px;
	}
	.form-box > a,
	.form-box .form-group{
		width: 50% !important;
		display: block;
		float: left;
		padding-left: 10px;
		padding-right: 10px;
		margin-right: 0;
	}
	.form-box > a{
		margin-top: 30px;
	}
}
@media(max-width:767px){
  .choose-plan .box-cm{
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 30px;
  }
  .choose-plan .plan-content .mt-2.textblue{
    margin-top: 0 !important;
  }
  .choose-plan .plan-list.mt20{
    margin-top: 0 !important;
  }
  .choose-plan .plan-price{
    text-align: left;
  }
	.form-box > a{
		width: 200px !important;
		margin: 0px auto 0 10px;
		max-width: 95%;
	}
	.form-box .form-group{
		width: 100% !important;
	}
	.plan-img{
		width: 105px;
	}
  .plan-wrap{
    flex-wrap: wrap;
  }
	.plan-content{
		width: 100%;
		float: inherit;
	}
	.plan-price{
		width: 100%;
		text-align: center;
		padding: 0;
	}
}

@media(min-width:991px){
  .plan-option{
    box-shadow: 0 3px 6px rgb(0 0 0 / 15%);
    padding: 20px;
    border:1px solid #E8E8E8;
  }
}
.plan-option> div{
  display: flex;
}
.plan-img{
	width: 120px;
}
.plan-content-wrap{
  width: calc(100% - 120px);
  padding-left: 20px;
}

.choose-option-below-item{
	margin-left: -15px;
	margin-right: -15px;
	padding: 30px 0;
	border-bottom: 1px solid #E8E8E8;
}
.choose-option-below-item .w-01,
.choose-option-below-item .w-02{
	padding-left: 15px;
	padding-right: 15px;
}
.choose-option-below-list > .choose-option-below-item:last-child{
	border-bottom: none;
}
.choose-option-below-item:after{
	content: '';
	display: block;
	clear: both;
}
.w-01{
	width: 35%;
}
.w-02{
	width: 65%;
}
.choose-option-img img{
	width: 100%;
}
.choose-option-below-item.active .choose-option-img-wrap{
	border:2px solid #F989B1;
	position: relative;
	box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
}
.choose-option-below-item.active .choose-option-img-wrap:after{
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	background: url(../../../img/common/icon_checked_pink.svg) no-repeat;
	background-size: 100%;
	position: absolute;
	bottom:7px;
	right:7px;
}
.choose-option-below-item.active .btn-gray{
	background-color: rgb(249 137 177 / 50%);
	color: #fff;
}
.choose-option-below-item.active .btn-gray:before{
	content: '';
	width: 13px;
	height: 10px;
	display: inline-block;
	margin-right: 5px;
	background: url(../../../img/common/icon-choose.svg) no-repeat;
	background-size: 100%;
}
.form-box-list{
	margin-left: -7px;
	margin-right: -7px;
}
.form-box-02{
	width: 200px;
  margin-bottom: 0;
}
.form-box-list .form-box-02{
	display: inline-block;
	padding-left: 7px;
	padding-right: 7px;
}
.form-box-02 label{
  display: block;
}
.form-box-list:after{
	content: '';
	display: block;
	clear: both;
}
.choose-option-price{
	font-size: 20px;
	font-weight: 500;
}
.choose-option-price-old{
	text-decoration: line-through;
	font-size: 16px;
	margin-left: 5px;
}
/*
@media(max-width:991px) and (min-width:767px){
  .choose-option-below{
    padding-bottom: 30px;
  }
  .plan-option{
    border-bottom: 2px dotted #C8C8C8;
    padding: 20px 0;
    margin-top: 0;
  }
}
*/
@media(max-width:991px){
	.form-box-02{
		width: 50%;
	}
	.form-box-list .form-box-02{
		display: block;
		float: left;
	}
  .plan-option{
    box-shadow: none;
    border:none;
    position: relative;
    margin-top: 0;
    padding: 30px 15px;
  }
  .plan-option:after{
    content: '';
    width: calc(100% - 30px);
    height: 2px;
    border-top: 2px dotted #C8C8C8;
    position: absolute;
    bottom: 0;
    left: 15px;
  }
  .plan-option:last-child:after{
    content: none;
  }
  .check-option .box-cm,
  .choose-option-below .box-cm{
    padding-left: 5px;
    padding-right: 5px;
  }

}
@media(max-width:767px){
  .main-content .form-group{
    margin-bottom: 0;
  }
	.w-01{
		width: 55%;
	}
	.w-02{
		width: 45%;
	}
	.choose-option-below-item {
		margin-left: -7px;
		margin-right: -7px;
	}
	.choose-option-below-item .w-01, .choose-option-below-item .w-02{
		padding-left: 7px;
		padding-right: 7px;
	}
	.choose-option-form-wrap{
		width: 100%;
	}
	.form-box-list > .form-box-02:last-child{
		margin-bottom: 0;
	}
	.choose-option-below-item .btn-gray{
		margin-left: auto;
		margin-right: auto;
		display: block;
	}
  .form-box-02{
    width: 230px;
    max-width: 100%;
  }
  .form-box-list .form-box-02{
    margin-bottom: 20px;
  }
  .form-box-list .form-box-02:last-child{
    margin-bottom: 0;
  }
  .plan-img{
    width: 80px;
  }
  .plan-content-wrap{
    width: calc(100% - 80px);
  }
  .choose-plan,
  .choose-seat,
  .other-option-available,
  .choose-option-below,
  .check-option{
    background-color: #fff;
    border: 1px solid #C8C8C8;
    border-radius: 4px;
    overflow: hidden;
    box-shadow: 0 3px 6px rgb(0 0 0 / 16%);
    margin-top: 20px;
  }
  .other-option-available .box-cm{
    padding-left: 15px;
    padding-right: 15px;
  }
  .check-option .box-cm,
  .choose-option-below .box-cm{
    padding-left: 0;
    padding-right: 0;
  }
  .plan-content-wrap .mt-2{
    margin-top: 0 !important;
  }
}

.step-foot{
	padding: 25px 20px;
}
.step-foot:after{
	content: '';
	display: block;
	clear: both;
}
.step-content-btn .icon-back{
  float: left;
	margin: 20px 0;
}
.icon-back{
  display: flex;
  align-items: center;
}
.icon-back:before {
  width: 6px;
  vertical-align: middle;
  margin-right: 6px;
}
.other-option-list > div.other-option{
  border-bottom: 2px dotted #C8C8C8;
  padding: 20px 0;
}
.other-option-list > div.other-option:last-child{
  border-bottom: none;
}
.other-option > div{
  display: flex;
}
.icon-dropdown{
  position: relative;
  padding-right: 35px;
}
.icon-dropdown:after{
  content: '';
  width: 30px;
  height: 30px;
  border: 2px solid #707070;
  background: url("../../../img/common/icon_back.svg") no-repeat center center;
  transform: rotate(90deg);
  position: absolute;
  right:0;
  top:calc(50% - 15px);
  border-radius: 50%;
}
.icon-dropdown.collapsed:after{
  transform: rotate(-90deg);
}
.other-option .btn-medium{
  width: 186px;
}
@media(max-width:991px){
  .other-option .btn-medium{
    width: calc(50% - 7px);
  }
}
@media(max-width:767px){
  .other-option .btn-medium{
    width: calc(230px - 14px);
    max-width: 100%;
  }
  .icon-dropdown:after{
    width: 20px;
    height: 20px;
    background-size: 37%;
  }
  .plan-name span{
    font-size: 18px;
  }
}

.route-code{
	display: inline-block;
	margin-right: 20px;
}
.route-time{
	position: relative;
	padding-left: 50px;
	padding-right: 20px;
}
.route-time p{
	font-size: 16px;
}
.end-time span,
.departure-time span{
	font-size: 30px;
	font-weight: 500;
}
.end-time > span,
.departure-time > span{
	position: relative;
}
.departure-time > span:before,
.end-time > span:before{
	content: '';
	display: inline-block;
	position: absolute;
	left: -30px;
	top:7px;
}
.departure-time > span:before{
	width: 20px;
	height: 20px;
	background: url(/sys/will/share/tw/img/common/icon_location.svg) no-repeat center center;
	background-size: 100%;
}
.end-time > span:before{
	width: 16px;
	height: 20px;
	background: url(../../../img/common/icon_map.svg) no-repeat center center;
	background-size: 100%;
	left: -28px;
}
.route-line{
	position: absolute;
	left: 29px;
	top:35px;
	height: calc(100% - 85px);
	width: 2px;
	background: url(../../../img/common/line-route.svg) repeat-y top left;
	background-size: 100%;
	overflow: hidden;
}
.route-time strong{
	font-weight: 500;
}
.seat-name{
	font-size: 18px;
	font-weight: 500;
}
.bg-gray02{
	background: #E8E8E8;
	font-weight: 500;
	padding: 5px 20px;
}
.box-cm{
	padding-left: 20px;
	padding-right: 20px;
}
@media(max-width:767px){
	.box-cm {
    padding-left: 0;
    padding-right: 0;
	}
	.wrap-cm > .col-md-9 >.border-gray{
		border: none;
	}
}

.num-passenger-form {
	width: 170px;
  margin: 10px auto 50px auto;
}
.num-passenger-form .select2-container--default .select2-selection--single {
    padding-left: 40px;
    border: 1px solid #C8C8C8;
}
.w650{
	width: 650px;
	max-width: 100%;
	display: block;
	margin-left: auto;
	margin-right: auto;
}
.bg-gray03{
	background-color: #F8F8F8;
	padding: 25px 20px;
}
.step-02 .form-group{
	margin-bottom: 20px;
}
.step-02-c2{
	padding-bottom: 50px !important;
}
.row-7{
	margin-left: -7px;
	margin-right: -7px;
}
.row-7 > div{
	padding-left: 7px;
	padding-right: 7px;
}
.tell-box{
	width: 100%;
	display: table;
}
.tell-num .custom-select   {
  background-color: #E8E8E8;
  border-right: none;
}
.tell-num{
	width: 107px;
	display: table-cell;
	vertical-align: middle;
}
.tell-input{
	display: table-cell;
	vertical-align: middle;
}
.tell-num.custom-select-group .select2-container--default .select2-selection--single .select2-selection__arrow{
	width: 40px;
	height: 40px;
	border-left: none;
	background-color: #E8E8E8;
}
.tell-num .select2-container--default .select2-selection--single{
	background-color: #E8E8E8;
}
.tell-num.custom-select-group .select2-container--default .select2-selection--single{
	border-right: none;
/*	margin-top: -1px;*/
}

/*----- sing up -----*/
.w610{
	width: 610px;
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
}
.sing-up .bg-gray02 {
    padding: 10px 20px;
}
.row-10{
	margin-left: -10px;
	margin-right: -10px;
}
.row-10 > div{
	padding-left: 10px;
	padding-right: 10px;
}
.email-box{
	position: relative;
}
.email-box .check-box{
	position: absolute;
	top: 0;
	left: 150px;
}
.singup-content .bg-gray02{
  padding: 5px 15px;
}
@media(max-width:991px){
  .w610{
    width: 100%;
  }
}
/*----- End sing up -----*/

/*---- Sidebar -----*/
.sticky-sidebar{
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  max-height: 100vh;
  overflow-y: scroll;
}
.booking-title-02{
  font-size: 22px;
  padding: 10px 20px;
  background: #C8C8C8;
  line-height: 1.2;
}
.sidebar-right > .box-cm{
  padding-top: 10px;
  padding-bottom: 20px;
}
.sidebar-tbl{
  width: 100%;
}
.sidebar-tbl td{
  border-collapse: collapse;
  padding: 5px;
  vertical-align: text-top;
  line-height: 1.3;
  font-size: 14px;
}
.sidebar-tbl td:nth-child(1){
  width: 30%;
}
.sidebar-tbl .dis-flex{
  justify-content: space-between;
  flex-wrap: wrap;
}
.dis-flex{
  display: flex;
}
.btn-edit{
  width: 50px;
  text-align: right;
}
.sidebar-tbl .dis-flex > p{
  width: calc(100% - 55px);
}
.bus-info-footer{
  padding: 20px;
}
.ticket-total{
  font-size: 18px;
  font-weight: bold;
}
.ticket-total .ticket-total-price{
  font-size: 28px;
  margin-left: 10px;
}
.bus-info-footer .dis-flex {
  align-items: center;
}
.bus-info-footer .dis-flex > p{
  margin-right: 15px;
}
/*-- total-price-mb --*/
.total-price-mb {
  padding: 15px 20px;
  box-shadow: 3px 0 6px rgb(0 0 0 / 17%);
}
.total-price-mb .btn{
  width: 130px;
  height: 40px;
  padding: 6px;
}
.total-price-mb .dis-flex {
  justify-content: space-between;
  align-items: center;
}
.total-price-mb .ticket-total .ticket-total-price{
  margin-left: 0;
  line-height: 1;
}
.fix {
	position: fixed;
/*  bottom: 60px;*/
  bottom: 0;
  width: 100%;
  z-index: 2;
}
@media(max-width:991px){
  .total-price-mb .btn{
    width: 200px;
  }
}
@media(max-width:767px){
  .ticket-total{
    font-size: 17px;
  }
  .ticket-total .ticket-total-price{
    font-size: 22px;
  }
  .total-price-mb .btn{
    width: 160px;
  }
}
/*-- End total-price-mb --*/
/*---- End Sidebar -------------*/

/*----- Process 2 -----*/
@media(min-width:1140px){
  .row-50{
    margin-left: -25px;
    margin-right: -25px;
  }
  .row-50 > div{
    padding-left: 25px;
    padding-right: 25px;
  }
}
.coupon-box{
  border-top: 2px dotted #9F9F9F;
  padding-top: 20px;
}
.opacity-box{
  position: relative;
}
.opacity-box:after{
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top:0;
  left: 0;
  background-color: rgb(255 255 255 / 68%);
}
.note-box{
  padding: 20px 20px;
  background: #F8F8F8;
}
.border-top-dotted{
  border-top: 2px dotted #C8C8C8;
}
.border-bottom-dotted{
  border-bottom: 2px dotted #C8C8C8;
}
.btn-viewmore-option{
  padding: 30px 0 50px 0;
  display: block;
  text-align: center;
}
.btn-viewmore-option-hidden{
  display: none;
}
.btn-viewmore-option-hidden .other-option-list > div.other-option:first-child{
  border-top: 2px dotted #C8C8C8;
}
.form-group-list .form-group{
  margin-bottom: 20px;
}
.note-confirm-box{
  margin-top: 20px;
  padding-top: 20px;
  position: relative;
}
.note-confirm-box:after{
  content: '';
  width: calc(100% + 40px);
  height: 2px;
  position: absolute;
  top: 0;
  left: -20px;
  border-top:2px dotted #C8C8C8;
}
.note-confirm-list > .note-confirm-box:nth-child(1){
  margin-top: 0;
}
.note-confirm-list > .note-confirm-box:nth-child(1):after{
  border-top: none;
  margin-top: 0;
}
@media(max-width:991px){
  .step-02-main .col-lg-8 .border-gray{
    border:none;
  }
  .note-box{
    margin-top: 30px;
  }
}
/*----- End Process 2 -----*/

/*------- Process 3 --------*/
.thank-txt{
  font-family: "IsadoraBold";
  color: #F25C92;
  font-size: 30px;
  text-align: center;
  display: block;
  margin-bottom: 20px;
}
@media(max-width:767px){
  .thank-txt{
    font-size: 22px;
  }
}
.coupon-member{
  width: 520px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  border:1px solid #DE7626;
  background: #FFFDEB;
  padding: 20px 40px;
}
.coupon-note{
  font-weight: bold;
  font-size: 20px;
  color: #F25C92;
  line-height: 1.2;
}
.coupon-note-02{
  font-weight: bold;
  font-size: 22px;
  color: #333;
  line-height: 1.2;
}

.coupon-member .dis-flex{
  align-items: center;
}
.coupon-member .dis-flex .form-control{
  width: 245px;
  max-width: 50%;
  margin-right: 10px;
}

.coupon-price{
  width: 55%;
  text-align: right;
  padding-top: 34px;
}
.coupon-price strong{
  font-size: 20px;
  color: #F80707;
}

.coupon-list > li{
  padding: 6px 0 14px;
  border-bottom: 2px dotted #C8C8C8;
}

.coupon-list > li:last-child{
  border-bottom: none;
}

.coupon-wrap{
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.coupon-wrap:after{
  content: '';
  display: block;
  clear: both;
}

.coupon-content{
  width: 45%;
}

.coupon-name span{
  font-size: 20px;
  font-weight: 500;
  margin-bottom: 10px;
  word-break: break-all;
}

.coupon-list-box > .no-coupon-available {
  font-weight: bold;
  padding: 12px 6px 0;
}

@media(max-width:767px){
  .coupon-member{
    padding: 20px 15px;
  }
}
@media(max-width:424px){
  .coupon-member .dis-flex .textlink{
    font-size: 14px;
  }
  .coupon-member .dis-flex .form-control{
    max-width: 48%;
  }
}
.checkbox-list > li{
  margin-bottom: 20px;
}
.checkbox-list li label span{
  font-weight: normal;
}
.border-top-dotted-1{
  border-top: 1px dotted #CCCCCC;
}
.payment-note{
  padding-left: 30px;
}
.btn-remove{
  border: none;
  background: inherit;
  text-decoration: underline;
  font-size: 14px;
  cursor: pointer;
}
.coupon-member .btn{
  width: 150px;
  min-height: 35px;
  padding: 4px;
  margin-right: 10px;
}
.coupon-member .btn-gray{
  pointer-events: none;
}
.coupon-member .btn-gray:hover{
  color: #333;
}
.coupon-member .textgray{
  pointer-events: none;
}
.textgray{
  color: #979797;
}
.btn-remove.textgray .icon-remove{
  opacity: 0.6;
}
.btn-remove.textgray{
  pointer-events: none;
}
@media(max-width:424px){
  .coupon-member .btn{
    margin-right: 0;
  }
}

.note-error {
	max-width: 100%;
	min-height: 48px;
	background-color: #F8F8F8;
	border: 1px solid #F25C92;
	border-radius: 5px;
	padding: 7px 24px;
	display: inline-block;
}

.note-error p {
	font-size: 17px;
	font-weight: bold;
	color: #F25C92;
	background: url(/sys/will/share/tw/img/common/icon_error.png) no-repeat center left;
	background-size: 25px;
	padding: 5px 0 3px 40px;
}

/*-------- End Process 3 --------*/

/*-------- Process 4 --------*/
.title-confirm{
  font-family: "IsadoraBold";
  color: #F25C92;
  font-size: 35px;
  text-align: center;
}
.booking-incomplete-title {
	color: #FE0000;
	font-size: 35px;
	text-align: center;
}

.confirm-content{
  width: 725px;
  max-width: 100%;
  margin: 30px auto 0 auto;
}
.confirm-content > ul > li .dis-flex{
  align-items: center;
  min-height: 45px;
}
.confirm-content > ul > li .dis-flex > p:nth-child(1){
  width: 130px;
}
.confirm-content ul > li{
  margin-bottom: 10px;
}
.confirm-content li .bg-gray03{
  padding: 5px 20px;
}
.confirm-payment-tbl tr,
.confirm-payment-tbl td{
  vertical-align: top;
}
.list-dics li{
  position: relative;
  margin-bottom: 5px;
  padding-left: 15px;
}
.list-dics li:last-child{
  margin-bottom: 0;
}
.list-dics li:before{
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #707070;
  position: absolute;
  left: 0;
  top:10px;
}
@media(min-width:767px){
  .confirm-content{
    padding: 40px 30px;
  }
  .confirm-payment{
    border:1px solid #F8F8F8;
  }
  .confirm-payment-tbl{
    margin: 20px;
  }
  .confirm-payment-tbl span.bg-gray03{
    padding: 5px 20px;
    display: block;
  }
  .confirm-payment-tbl td:nth-child(1){
    width: 190px;
  }
  .confirm-payment-tbl td:nth-child(2){
    padding: 8px 0 8px 30px;
  }
}
@media(max-width:767px){
  .confirm-content p.f20{
    font-size: 16px;
  }
  .confirm-payment-tbl {
    padding: 0px 15px;
    display: block;
  }
  .confirm-payment-tbl tr,
  .confirm-payment-tbl td{
    display: block;
    width: 100%;
  }
  .confirm-content li .bg-gray03 {
    padding: 5px 15px;
  }
  .confirm-payment-tbl .bg-gray03{
    background: #fff;
    padding: 0 !important;
  }
  .confirm-payment-tbl tr td:nth-child(1){
    margin-top: 15px;
  }
  .confirm-payment-tbl tr td:nth-child(1),
  .confirm-payment-tbl tr td:nth-child(1) span{
    font-weight: bold;
  }
  .title-confirm{
    font-size: 24px;
    margin-top: 40px;
  }
  .confirm-content > ul > li .dis-flex > p:nth-child(1){
    width: 100px;
  }
}
/*-------- End Process 4 --------*/

/*-------- Process 1 - 02 --------*/
@media(max-width:767px){
  .choose-seat >.box-cm{
    padding-bottom: 30px;
  }
  .select-type-seat.dis-flex{
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .select-type-seat.dis-flex > div{
    width: 100%;
    margin-bottom: 5px;
  }
  .select-type-seat.dis-flex > div:last-child{
    margin-bottom: 0;
  }
}

/*-------- End Process 1 - 02 --------*/

.bg-gray04{
  background: #F8F8F8;
  padding: 5px 5px;
  font-weight: bold;
}
.sidebar-note-box{
  padding: 15px 15px;
  background: #F8F8F8;
}
.sidebar-route{
  display: flex;
  margin-left: -10px;
  margin-right: -10px;
}
.sidebar-route > p{
  padding: 0 10px;
}
.sidebar-route .icon-arrow-right{
  width: 30px;
  padding-top: 5px;
}
.sidebar-route .icon-arrow-right:before{
  max-width: 100%;
  margin: 0 0;
}
.step-content .row{
  margin-left: -10px;
  margin-right: -10px;
}
.step-content .row > div{
  padding-left: 10px;
  padding-right: 10px;
}
.form-calendar{
  position: relative;
}
.step-content .form-calendar input{
  padding-left: 0.75rem;
  padding-right: 40px;
}
.step-content .form-calendar:after{
  right:10px;
  left: inherit;
}
.phone-box{
  display: flex;
  justify-content: space-between;
  align-items: center;
  overflow: visible;
  padding-left: 0;
  padding-right: 0;
}
.phone-area{
  position: relative;
  width: 110px;
  padding: 5px 10px;
}
.phone-area:after{
  content: '';
  width: 14px;
  height: 8px;
  background: url("../../../../img/common/icon-dropdown.svg") no-repeat center center;
  display: inline-block;
  position: absolute;
  right:0;
  top:16px;
}
.dropdown_toggle.phone-area:after{
  transform: rotate(0.5turn);
}
.phone-box > input{
  width: calc(100% - 90px);
  padding-right: 0;
  border:none;
  height: 100%;
  min-height: 100%;
}
.phone-item{
  display: flex;
  align-items: center;
}
.phone-item > img{
  margin-right: 7px;
  border-radius: 14px;
  width: 30px;
}
.dropdown__inner{
  position: relative;
}
.dropdownSub{
  width: 100%;
  background: #fff;
  position: absolute;
  top: 41px;
  left: 0;
  z-index: 3;
  padding: 0 10px;
  display: none;
}
.phone-area-list li{
  display: block;
  padding: 5px 0;
}
.more-option {
  text-align: center;
  background-color: #fcecf2;
  padding: 20px 20px 30px 20px;
}
.more-option .option-title {
    font-weight: bold;
    font-size: 20px;
}