@charset "utf-8";

body{
	font-family: 'Helvetica Neue',Helvetica,Arial,sans-serif;
	font-weight: 500;
	background:#fff;
	word-break: break-word;
}

body,h1,h2,h3,h4,ol,ul,dl,dt,dd,p{
	margin:0;
	padding:0;
}

#conts{
	padding-top:0 !important;
	width:100% !important;
	background:#f5f5f5;
}

.modal{
	-webkit-overflow-scrolling: touch;
}

a,
a.visited {
    color: #212529;
}
a:hover {
	color: #212529;
}
ul li{
	list-style:none;
}

dl,dt {
	font-weight: normal;
}

select:hover{
	cursor:pointer !important;
}

.container{
	width:1140px;
	max-width:100%;
}

*:hover{
	transition: all  0.2s ease;
}

.btn{
	display:inline-block !important;
}

.btn-group input{
	-webkit-appearance: none;
}

.nav-tabs .nav-item.show .nav-link,
.nav-tabs .nav-link.active {
    background-color: none;
    border-color: none;
}
.nav-tabs {
    border-bottom: none;
}
.nav-tabs .nav-link {
    border: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.nav-link {
    padding: 0;
}

.nav-link {
    display: block;
    padding: 0;
}

select{
	outline:none;
	text-indent: 0.01px;
	text-overflow: '';
	background: none transparent;
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
}
select option{
	background-color: #fff;
	color: #333;
}
select::-ms-expand {
	display: none;
}
select:-moz-focusring { 
	color: transparent; 
	text-shadow: 0 0 0 #828c9a;
}

.layout-row-50{
	margin-left:-25px;
	margin-right:-25px;
}

.layout-row-50 >div{
	 padding-right:25px;
	 padding-left:25px
}

@media only screen and (min-width : 992px) and (max-width : 1199px) {
	.layout-row-50{
		margin-left:-15px;
		margin-right:-15px;
	}

	.layout-row-50 >div{
		padding-right:15px;
		padding-left:15px;
	}

}

@media(max-width:991px) {
	.layout-row-50{
		margin-left:0;
		margin-right:0;
	}

	.layout-row-50 >div{
		 padding-right:0;
		 padding-left:0;
	}

}

.reverse {
	text-align: center;
}

a.btn-reverse {
	width: 100px;
	display: block;
	color: #fff;
	background: #B1B1B1;
	border-radius: 50px;
	margin: 15px auto;
	padding: 5px 0;
}

a.btn-reverse:hover {
	text-decoration: none;
}

a.btn-reverse i {
	transform: rotate(-90deg);
	color: #fff;
}

/* JBL 追加分*/

/*
header
********************************************/

.header-wrapper {
	margin-bottom: 0 !important;
}

/*
breadcrumb
********************************************/
ul.breadcrumbs {
    width: 100%;
    display: table;
    font-size: 12px;
    padding: 0 0 20px 0;
    margin: 0 auto !important;
}
ul.breadcrumbs::after {
    content: "";
    display: block;
    clear: both;
}

ul.breadcrumbs li {
    margin: 0 5px 0 0;
    float: left;
    position: relative;
    padding-left: 10px;
}
ul.breadcrumbs li a {
    color: #333399;
}
ul.breadcrumbs li::after{
  content: '';
  width: 4px;
  height: 4px;
  border: 0px;
  border-top: solid 1px #333399;
  border-right: solid 1px #333399;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -1px;
}
ul.breadcrumbs li:first-child {
    padding-left: 0;
}
ul.breadcrumbs li:first-child::after {
    content: none;
}

@media screen and (max-width:1200px) {
    ul.breadcrumbs {
        width: 100%;
        line-height: 1.3;
    }
}
@media(max-width:576px) {
	ul.breadcrumbs {
		padding: 10px 0;
	}
}


/*
search-from-dep
*************************************/

.search-from-dep {
	text-align: center;
}

.search-from-dep nav {
	border-bottom:4px solid #035AA6;
	margin: 0 auto;
}

.search-from-dep .search-from-dep-text {
	text-align:center;
	background-color: #F9FBFD;
}

.search-from-dep_ttl{
	font-size: 30px;
	font-weight:bold;
	text-align:center;
	padding: 50px 0 30px;
	color:#333;
	margin-bottom:0;
}

.search-from-dep_ttl span.search-areaname{
	color:#E12222;
}

.search-from-dep p{
	display:inline-block;
}

.search-from-dep p:first-child a{
	border-radius: 3px 0 0 0;
}

.search-from-dep p:last-child a{
	border-radius: 0 3px 0 0;
}

.search-from-dep p a{
	color:#333;
	font-weight:bold;
	background:#e8e8e8;
	display:block;
	padding:10px 30px;
	text-decoration:none;
}

.search-from-dep p a:hover{
	text-decoration:none;
	color:#fff;
	font-weight:bold;
	background:#035AA6;
}

.search-from-dep p a.active{
	font-weight:bold;
	color:#fff;
	background:#035AA6;
}

@media(max-width:767px) {
    .search-from-dep {
        margin-top: 10px;
    }
	.search-from-dep p a {
		font-size:14px;
		text-align:center;
		line-height: 1.4;
		padding:10px 20px;
		width:160px;
	}
	.search-from-dep_ttl{
		font-size:26px;
		font-weight:bold;
		text-align:center;
		padding:25px 10px 10px 10px;
	}
}

@media (max-width:375px) {
	.search-from-dep p a{
		padding: 10px 12px;
		width: 140px;
	}

	.search-from-dep p a:before{
		margin-right:5px;
	}

	h1.search-from-dep_ttl {
		font-size: 22px;
		line-height: 1.3;
	}

	
}


/*
txt-dep-arr
*************************************/

.search-from-dep_text{
	text-align:center;
	line-height:1.6;
	background-color:#F9FBFD;
}

.search-from-dep_text span.search-areaname{
	color:#E12222;
	font-size:18px;
	font-weight:bold;
	margin-right:3px;
}

@media(max-width:767px) {
	.search-from-dep_text{
		padding:10px;
		font-size:14px;
		text-align: left;
	}
}


.ttl03-multi{
	font-size:18px;
	font-weight:bold;
	margin: 0px 0 10px 0;
	text-align:center;
	line-height: 1.2;
}

.ttl03-multi i{
	margin-right:5px;
}

/*
page-chukan-main
*************************************/

.page-chukan-main {
	background-color:#F9FBFD;
	padding: 50px 0 60px;
}
.page-chukan-main table {
	background: #FFF;
}
.page-chukan-main_left .bestprice-area h2 {
	font-size: 20px;
	font-weight: bold;
	line-height: 100%;
	color: #035AA6;
	border-left: 5px solid #035AA6;
	margin-bottom: 30px;
	padding-left: 10px;
}
@media screen and (max-width:768px) {
    .page-chukan-main {
        padding: 30px 0;
    }
}

/*
tabs
*************************************/

.tabs-month .nav-item a {
	font-weight: bold;
	background: #e8e8e8;
	border-right: 1px solid #c1c1c1 !important;
}

.tabs-month .nav-item a.active {
	background: #00396A !important;
	color: #FFF !important;
	font-weight: bold;
	border-right: none;
}

.tabs-month .nav-item a:hover {
	background: #00396A;
	color: #FFF;
}

.tabs-month .nav-item:last-child a {
	border-right: none !important;
}

.tabs-month .nav-link {
	border: none;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

.tabs-month .nav-link {
	padding: .6rem 1.5rem;
}

.bestprice-area-tab {
    text-align: center;
}

.tabs-area {
    padding-bottom: 20px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.tabs-area .nav-item {
    width: 49%;
}

.tabs-area .nav-item a {
	font-weight: bold;
    color: #FFF !important;
	background: #cccccc !important;
    border-radius: 50px;
    padding: 10px 20px;
    text-align: center;
}

.tabs-area .nav-item a.active,
.tabs-area .nav-item a:hover{
    color: #ffe163 !important;
	background: #035AA6 !important;
}

.tabs-area .from-place::before,
.tabs-area .to-place::before {
    content: "Best bus fare departing from";
    font-size:16px;
    padding-right: 0.3em;
}

.tab-content .best-price {
    font-size: 16px;
	text-align: center;
    margin-bottom: 30px;
}

.tab-content .best-price .from-place {
    color: #CF0000;
    font-size: 16px;
    font-weight: 600;
}

.tab-content .best-price .from-place::before {
    content: "Best bus fare departing from";
    font-size:16px;
    padding-right: 0.3em;
}

@media screen and (max-width:768px) {
    .nav.tabs-area {
    width: 80%
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    }
    
    .tabs-area .nav-item {
        width: 100%;
    }
    
    .tabs-area .nav-item li {
        text-align: center;
    }
    
    .tabs-area .nav-item:nth-child(2) {
        margin-left: 0;
        margin-top: 10px;
    }
}

@media screen and (max-width:480px) {
    .tabs-area {
        width: 100%;
    }
    
    .tabs-area .nav-item {
        width: 100%;
    }
}

/*
page-chukan-pricelist
*************************************/

.tabs-month + .tab-content {
	border-top: 2px solid #00396A;
	margin-top: 2px;
}

.page-chukan-pricelist .region_title {
	color: #035AA6;
	background: #E8F4FF;
	border-top: 2px solid #AFCBE5;
}

.page-chukan-pricelist .pref,
.page-chukan-pricelist .region_title_city {
	font-weight: normal !important;
}

.page-chukan-pricelist .this_month a {
	color: #CF0000;
}

.page-chukan-pricelist .this_month a:hover {
	text-decoration: underline;
}

@media screen and (max-width:767px) {
	.page-chukan-pricelist .pref,
	.page-chukan-pricelist .region_title_city {
		font-size: 14px;
	}
	.table td, .table th {
		padding: .75rem .25rem;
	}
	.page-chukan-pricelist-area {
		font-size: 15px;
		padding: .75rem !important;
	}
}

/*
page-chukan-main-area
*************************************/

.page-chukan-main-area {
	margin-top: 50px;
}

.page-chukan-main-area h3 {
	font-size: 18px;
	font-weight: bold;
	color: #fff;
	background: #00396A;
	padding: 10px 15px;
}

.page-chukan-main-area dd {
	background: #fff;
	padding: 2%;
}
.page-chukan-main-area ul::after {
    content: "";
    display: block;
    clear: both;
}

.page-chukan-main-area li {
	width: 31.3%;
    font-size: 14px;
	float: left;
	position: relative;
	background-color: #F3F3F3;
	border: 1px solid #C2C2C2;
	box-sizing: border-box;
	margin: 1%;
}

.page-chukan-main-area li::after {
	content:"";
    display: block;
    width: 8px;
    height: 8px;
    border-top: #666 1px solid;
    border-right: #666 1px solid;
    position: absolute;
    right: 15px;
    top: 0;
    bottom: 0;
    margin: auto;
	-webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    transition-duration: 0.3s;
}

.page-chukan-main-area li a {
	display: block;
	padding: 5px;
	text-decoration: none;
}

.page-chukan-main-area li a:hover {
	background-color: #DDDDDD;
}

@media screen and (max-width:576px) {
    .page-chukan-main-area li {
        width: 48%;
    }
}

.accordion_menu a{
    color: #666;
}
.accordion_menu a[data-toggle="collapse"]{
    display: block;
    text-decoration: none;
  	position: relative;
}

.accordion_menu a[data-toggle="collapse"]::after{
    content:"";
    display: block;
    width: 8px;
    height: 8px;
    border-top: #fff 1px solid;
    border-right: #fff 1px solid;
    position: absolute;
    right: 15px;
    top: 0;
    bottom: 0;
    margin: auto;
}
.accordion_menu a[aria-expanded=false]::after{
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
    transition-duration: 0.3s;
}
.accordion_menu a[aria-expanded=true]::after{
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
    transition-duration: 0.3s;
}

@media screen and (max-width:767px) {
	.page-chukan-main-area h2 {
		font-size: 18px;
	}
}


/*
sidebox-search
*************************************/

.page-chukan-main_side {
    margin-top: 88px;
}

.page-chukan-main_side section {
	margin-top: 30px;
}

.page-chukan-main_side section:first-child {
	margin-top: 0;
}

.sidebox-search h2 {
	font-size: 17px;
	color: #FFF;
	font-weight: bold;
	padding: 10px 0;
	text-align: center;
	background-color: #00396A;
}

.sidebox-search_fromto,
.sidebox-search_title {
	font-size: 16px;
	font-weight: bold;
	color: #333;
}

.sidebox-search_title {
	margin: 15px 0 8px;
}

.sidebox-search_title:first-child {
	margin: 0 0 8px;
}

.sidebox-search > ul {
    background: #FFF;
	border-left: 1px solid #bcbcbc;
	border-right: 1px solid #bcbcbc;
	box-sizing: border-box;
    padding: 30px;
}

.sidebox-search > ul:last-child {
	border-bottom: 1px solid #bcbcbc;
}

.sidebox-search_pref {
    border: 0;
    border-bottom: 1px solid #ccc;
	background: url("/stc/178/image/common/icon/map-marker-alt-solid.svg");
	background-repeat: no-repeat;
	background-position: 0 8px;
	text-align: right;
}

.sidebox-search_pref-input {
	border: none;
	width: 100%;
	margin-bottom: 5px;
    padding: 5px;
}

.sidebox-search_button {
	text-align: center;
}

.sidebox-search_button a {
	width: 180px;
	display: block;
	font-size: 18px;
	color: #fff;
	background: #00396A;
	border-radius: 50px;
	margin: 30px auto 0;
	padding: 5px 0;
}

.sidebox-search_button a:hover {
	text-decoration: none;
}

.form-control {
	border-radius: 2px;
}

.form-control {
    color: #000;
    border-color: #DBDBDB;
}

@media screen and (max-width:991px) {
	.sidebox-search {
		display: none;
	}
}


@media(max-width:767px) {
	.page-chukan-main_side {
		margin-top: 40px;
	}
	.sidebox-search_pref-input {
		width: 100%;
	}
}

/*
calendar
*************************************/

.calendar-wrap {
	position:relative;
}

.calendar-wrap:before {
	z-index: 1;
	position: absolute;
	right: 15px;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	content: "\f073";
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	line-height: 43px;
	color: #ddd;
	font-size:16px;
	pointer-events: none;
}
.datepicker{z-index:1070}

.datepicker--day-name{
	color:#fff;
	background:#333;
}

.datepicker--cell-day:nth-child(7n+1) ,
.datepicker--cell-day.holiday{
	color:#da4453;
}

.datepicker--cell.-current-{
	font-weight:bold;
	color:#F989B1;
	background:#fce9f0;
}

.datepicker--cell-day:nth-child(7n) {
	color:#3bafda;
}

.datepicker--cell.-selected-, .date{
	color:#fff !important;
}

.datepicker--cell-day.-other-month-, .datepicker--cell-year.-other-decade-{
	color:#dedede !important;
}


.datepicker--cell.-disabled-{
	color:#aaa !important;
}

.datepicker--cell.-disabled-.-focus-{
	background:none !important;
}

/*
Number of passenger
*************************************/

.sidebox-search_passenger::after {
    content: "";
    display: block;
    clear: both;
}
.sidebox-search_passenger input{
	text-align:center;
}

.sidebox-search_passenger {
	margin-top: 10px;
}

.input-group{
	position: relative;
}

.input-group .sex-txt{
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left:50px;
	font-size:12px;
	color:#999;
}

.input-group .fa-plus,
.input-group .fa-minus{
	color:#555;
}

.sidebox-search_passenger .input-group {
	width: 60%;
	float: right;
}

.passenger_gender {
	font-size: 14px;
	font-weight: 500;
	line-height: 2.4;
	
}

#child_count_box p{
	text-align: center;
	margin:15px 0;
}

#child_count_box p a,
#child_count_box p a:hover{
	color:#666;
	font-size:14px;
	font-weight:bold;
	text-decoration:none;
}

#child_count_box p a.ac:before{
	content:"\f146";
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	margin-right:5px;
	color:#F53D7E;
}
#child_count_box p a.ac.collapsed:before{
	content:"\f0fe";
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	margin-right:5px;
	color:#F53D7E;
}

.input-group-btn .btn{
	background:#fff;
	border-color:#ccc;
}

.form-control{
	color:#000;
	border-color:#DBDBDB;
}

.form-control:disabled, 
.form-control[readonly]{
	background:#fff;
}


.input-group .form-control{
	border-left:none;
	border-right:none;
}

.input-group .form-control,
.input-group-btn .btn-left,
.input-group-btn .btn-right{
	height:36px;
}

.input-group-btn .btn-left,
.input-group-btn .btn-right{
	width:46px;
	font-size:10px;
}

.input-group-btn .btn-left{
	color:#999;
}

.input-group-btn .btn-right{
	color:#999;
}


/*
Check-box
*************************************/

.sidebox-search_advanced {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	background: #F2F2F2;
	border-left: 1px solid #bcbcbc;
	border-right: 1px solid #bcbcbc;
	padding: 5px 0;
}

.checkbox .list_item {
	margin: 0 0 0.5rem 0;
	padding: 0;
	display: inline;
}

.checkbox.block .list_item {
	margin: 0;
	display: block;
}

.checkbox  label {
	line-height: 135%;
	position: relative;
	cursor: pointer;
}

.checkbox  label:first-child {
	margin-right: 10px;
}

.checkbox .option {
	position: relative;
	margin: 0 1rem 0 0;
	cursor: pointer;
}
.checkbox .option:before {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0.1875rem;
	width: 0.95rem;
	height: 0.575rem;
	content: '';
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	        transition:         transform 0.4s cubic-bezier(0.45, 1.8, 0.5, 0.75);
	-webkit-transform: rotate(-45deg) scale(0, 0);
	        transform: rotate(-45deg) scale(0, 0);
	border: 3px solid #71A4D0;
	border-top-style: none;
	border-right-style: none;
}
.checkbox .option:checked:before {
	-webkit-transform: rotate(-45deg) scale(1, 1);
	        transform: rotate(-45deg) scale(1, 1);
}
.checkbox .option:after {
	position: absolute;
	top: -0.125rem;
	left: 0;
	width: 1.2rem;
	height: 1.2rem;
	content: '';
	cursor: pointer;
	border: 2px solid #CCC;
	background: #ffffff;
}

/*
sidebox-terminal
*************************************/

.sidebox-terminal h2 {
	color: #004581;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 10px;
}

.sidebox-terminal h2 span {
	background: url("/stc/178/image/common/icon/map-marked-alt-solid.svg");
	background-repeat: no-repeat;
	background-position: 0 3px;
	padding-left: 28px;
}

.sidebox-terminal ul {
  background: #FFF;
	border: 1px solid #bcbccb;
	box-sizing: border-box;
  padding: 20px 30px;
}

.sidebox-terminal li {
	font-size: 14px;
    border-bottom: 1px dotted #bcbccb;
    padding: 10px 0;
    line-height: 1.3;
}

.sidebox-terminal li:last-child {
    border-bottom: none;
}

@media(max-width:767px) {
	.sidebox-terminal h2 {
		font-size: 26px;
	}
}


/*
sidebox-info
*************************************/
.sidebox-include section {
	margin-top: 50px !important;
}

.sidebox-info h2 {
	text-align: center;
}

.sidebox-info h2 img {
	width: 80%;
	height: auto;
}

.sidebox-info dl {
	margin-top: 10px;
}

.sidebox-info dt {
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	border-top: 2px solid #9a9a9a;
	border-bottom: 2px solid #9a9a9a;
	padding: 10px;
	margin-top: 20px;
}

.sidebox-info dd {
	font-size: 14px;
	padding-top: 20px;
}

.sidebox-info_img img {
	width: 70%;
	height: auto;
}

.sidebox-info_img {
	text-align: center;
}

@media screen and (max-width:991px) {
	.sidebox-info h2 img {
		width: 36%;
	}
	
	.sidebox-info_img {
		text-align: center;
	}
	
	.sidebox-info_img img {
		width: 40%;
	}
}

@media screen and (max-width:575px) {
	.sidebox-info h2 img {
		width: 70%;
	}
	
	.sidebox-info_img img {
		width: 70%;
	}
}

/*
sidebox-blog
*************************************/
.sidebox-blog {
	margin-top: 50px;
}
.sidebox-blog h2 {
	color: #004581;
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	padding-bottom: 15px;
}
.sidebox-blog h2 i {
	margin-right: 3px;
}
#blog-entry-post {
	background: #FFF;
	border: 1px solid #bcbcbc;
	box-sizing: border-box;
}
.recentPost {
	color: #333 !important;
    line-height: 1.3;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px dotted #ccc;
}
.recentPost li:first-child {
	width: 40%;
}
.recentPost li:first-child a {
	padding: 15px;
}
.recentPost li:last-child {
	width: 60%;
	font-size: 13px;
	line-height: 1.5;
}
.recentPost li:last-child a {
	padding: 15px 15px 15px 0;
}
.recentPost li img {
	width: 100%;
}
.recentPost a {
	display: block;
}
@media(min-width : 576px) and (max-width : 991px) {
	#blog-entry-post {
		border: none;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	#posts {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	#recent-post {
		width: 100%;
	}
	.recentPost {
		width: 100%;
		display: block;
		box-sizing: content-box;
		margin-right: 2%;
		border-bottom: none;
	}
	.recentPost:last-child {
		margin-right: 0%;
	}
	.recentPost li:first-child {
		width: 100%;
	}
	.recentPost li:first-child a {
		padding: 0;
	}
	.recentPost li:last-child {
		width: 100%;
		line-height: 1.3;
		padding-top: 5px;
		padding-left: 0;
	}
	.recentPost li:last-child a {
		padding: 0;
	}
}

/*
notice
*************************************/

.notice {
	font-size: 16px;
	background: #FFFED6;
	margin: 0 0 30px;
	padding-bottom: 20px;
}

.notice .notice-link {
	color: #FF0000;
}

.notice-info-title::after {
    content: "";
    display: block;
    clear: both;
}

.notice ul {
	padding-top: 20px;
}

.notice-icon {
	width: 120px;
	font-size: 14px;
	color: #fff;
	display: block;
	font-weight: bold;
	border-radius: 5px;
	padding: 5px 0;
	margin: -3px 10px 0 0;
	text-align: center;
	float: left;
}

.notice-info .notice-icon {
	background: #FFA846;
}

.notice-info-contents {
	margin-top: 10px;
	font-size: 14px;
}

.notice-important-title {
	font-size: 15px;
	font-weight: 500;
}

.notice-important .notice-icon {
	background: #CF0000;
}

.notice-honbun {
	font-size: 15px;
	font-weight: 500;
	position: relative;
}

.notice-info-title a[data-toggle="collapse"]{
  	position: relative;
}

@media screen and (max-width:575px) {
	.notice {
		margin: 0;
	}
	
	.notice-icon {
	   float: none;
	}
	
	.notice-icon {
		margin-bottom: 5px;
	}
}


/*
page-ichiran-main
*************************************/

.page-ichiran-main {
	padding: 30px 0 60px;
}

.page-ichiran-main_left h1 {
	font-size: 24px;
	font-weight: bold;
	line-height: 1.2;
	border-bottom: 2px solid #555;
	margin-top: 5px;
	padding-bottom: 10px;
}

.page-ichiran-main_left .bestprice-area h2 {
    border-bottom: none;
    margin-top: 0;
    padding-bottom: 5px;
}

.page-ichiran-main-route {
    margin-bottom: 20px;
}

.page-ichiran-main-route:after{
  content: "";
  display: block;
  clear: both;
}

.page-ichiran-main-route .from-place::before {
    content: "Dep.";
    font-size:16px;
    padding-right: 0.3em;
}

.page-ichiran-main-route .to-place::before {
    content: "Arr.";
    font-size:16px;
    padding: 0 0.3em;
}
.page-ichiran-main-route .option_name::before {
    content: ",";
}

.page-ichiran-main-result {
  font-size: 18px;
  float: left;
  padding: 3px 0;
}
.page-ichiran-main-resultnum {
  font-size: 22px;
  font-weight: bold;
}

.page-ichiran-main-route .btn-reverse {
  width: 80px;
  margin: 10px 0;
  font-size: 13px;
  float: right;
}

@media screen and (max-width:575px) {
	.page-ichiran-main_left h2 {
		font-size: 22px;
	}
	
	.page-ichiran-main-resultnum {
		font-size: 20px;
	}
}


/*
page-ichiran-main-calendar
*************************************/

.page-ichiran-main-calendar {
    margin-bottom: 50px;
}

.page-ichiran-main-calendartable {
	font-size: 14px;
	text-align: center;
	margin-bottom: 10px;
}

.page-ichiran-main-calendartable th,
.page-ichiran-main-calendartable td {
	width: calc(100% / 7);
	border: 1px solid #dee2e6;
}

.page-ichiran-main-calendartable th {
	color: #fff;
	background: #B1B1B1;
	padding: 3px 0;
}

.page-ichiran-main-calendartable td {
	font-size: 15px;
	padding: 0;
}

.page-ichiran-main-calendartable .day {
	font-size: 14px;
	padding: 3px 0;
	background: #EDEDED;	
}

.page-ichiran-main-calendartable .day-empty .day-num {
	color: #B2B2B2;
}

.page-ichiran-main-calendartable .cal-price {
	font-weight: bold;
}

.page-ichiran-main-calendartable .cal-price a {
	display: block;
	padding: 20px 0;
}

.page-ichiran-main-calendartable .cal-price a:hover {
	background: #FFEAF2;
}

.page-ichiran-main-calendartable tr:nth-child(even) td:first-child  {
	color: #FF0000;
}

.page-ichiran-main-calendartable tr:nth-child(even) td:last-child  {
	color: #0069C5;
}

.page-ichiran-main-calendartable .day-bestprice {
	background: #FFFFD6;
}

.page-ichiran-main-calendartable .day-selected {
	background: #FFEAF2;
}

.calendar-icon {
	font-size: 13px;
}

.calendar-icon::after {
    content: "";
    display: block;
    clear: both;
}

.calendar-icon li {
	float: left;
	position: relative;
	margin-right: 10px;
	padding-left: 14px;
}

.calendar-icon li:last-child {
	margin-right: 0;
}

.calendar-icon li::before {
	display: block;
	content: '';
	position: absolute;
	top: .4em;
  	left: 0;
	width: 10px;
	height: 10px;
}

.calendar-icon li.calendar-icon_select::before {
	background-color: #FFEAF2;
	border: 1px solid #FFC6DC;
}

.calendar-icon li.calendar-icon_bestprice::before {
	background-color: #FFFFD6;
	border: 1px solid #F0D496;
}

@media screen and (max-width:767px) {
	.page-ichiran-main-calendartable td {
		font-size: 12px;
		line-height: 1.2;
	}
}

@media screen and (max-width:575px) {
	.page-ichiran-main-calendar {
		margin-top: 20px;
	}

	.page-ichiran-main-calendartable td {
		font-size: 11px;
	}
	
	.page-ichiran-main-calendartable .cal-price a {
		padding: 15px 5px;
	}

}

@media screen and (max-width:375px) {
	.page-ichiran-main-calendartable {
		font-size: 12px;
	}
	
	.page-ichiran-main-calendartable .cal-price a {
		padding: 10px 5px;
	}

}

/*
page-ichiran-main-changer
*************************************/

.page-ichiran-main-changer {
	margin-top: 30px;
	text-align: center;
}

.page-ichiran-main-changer h3 {
	font-size: 20px;
	font-weight: bold;
	border-bottom: 2px solid;
	padding-bottom: 3px;
}

.page-ichiran-main-changer .changer-inner {
    content: "";
    display: block;
    clear: both;
}

.page-ichiran-main-changer dl {
	float: left;
	width: 32%;
	margin-left: 2%;
	margin-top: 10px;
}

.page-ichiran-main-changer dl:first-child {
	margin-left: 0;
}

.page-ichiran-main-changer dt {
	font-weight: bold;
	margin-bottom: 5px;
}

.page-ichiran-main-changer dd a:hover {
	color: #FFF;
	background-color: #C9C9C9;
	text-decoration: none;
}

.page-ichiran-main-changer dd a:first-child {
	margin-right: 2%;
}

.page-ichiran-main-changer input {
	display: none;
}

.changer-inner label {
    width: 49%;
    font-size: 14px;
    border: 2px solid #C9C9C9;
    border-radius: 0;
    padding: 5px;
}

.changer-inner label:hover {
	color: #FFF;
	background: #C9C9C9;
}

@media screen and (max-width:991px) {
	.page-ichiran-main-changer {
		margin-top: 10px;
	}
	
	.page-ichiran-main-changer .changer-wrapper {
		background: #E8F4FF;
		margin: 10px -15px 0px -15px;
		padding: 0;
		overflow-x: scroll;
		-webkit-overflow-scrolling: touch;
	}
	
	.page-ichiran-main-changer .changer-inner {
		width: 1100px;
		padding: 15px 10px 15px 15px;
		overflow: hidden;
	}

	.page-ichiran-main-changer dl {
		float: none;
		width: auto;
		margin-top: 0;
	}
	
	.page-ichiran-main-changer dt {
		float: left;
		font-size: 15px;
		font-weight: 500;
		color: #FFF;
		background: #3A80BD;
		border-bottom: none;
		padding: 6px 20px;
		margin-bottom: 0;
	}
	
	.page-ichiran-main-changer dd {
		float: left;
		margin: 0 5px;
	}

	.page-ichiran-main-changer dd::after {
		content: "";
		display: block;
		clear: both;
	}
	
	.changer-inner label {
		width: 100px;
		font-size: 15px;
		background: #FFF;
		margin-bottom: 0;
		padding: 4px;
	}
}

/*
search-result
*************************************/

.search-result-num {
	font-size: 16px;
	font-weight: 500;
	text-align: right;
	margin-top: 20px;
}

.result-all-num {
	font-size: 20px;
	font-weight: bold;
	color: #CF0000;
}

.search-result-wrap {
	border-top: 5px solid #00396A;
	border-right: 1px solid #bcbcbc;
	border-bottom: 1px solid #bcbcbc;
	border-left: 1px solid #bcbcbc;
	margin-bottom: 30px;
}
.search-result-detail {
	padding: 25px;
	border-bottom: 1px solid #bcbcbc;
}

.search-result-detail::after,
.search-result-stop::after {
    content: "";
    display: block;
    clear: both;
}

.search-result-detail h3 {
	clear: both;
	font-size: 22px;
	font-weight: bold;
	line-height: 1.3;
	padding: 20px 0;
}

.search-result-detail > section {
	border-bottom: 1px solid #ccc;
	padding-bottom: 30px;
}

.search-result-stop {
	background: url("/stc/178/image/common/icon/arrow-right-solid.svg") no-repeat;
	background-position: center 100px;
}

.search-result_dep {
	width: 47%;
	float: left;
}

.search-result_arr {
	width: 47%;
	float: right;
}

.search-result-bustime {
    width: 80px;
	font-size: 13px;
	font-weight: bold;
    line-height: 1.2;
    text-align: center;
	margin-top: -24px;
	padding: 15px 15px;
	float: left;
}

.search-result-bustime.day {
	color: #FA8F8F;
    background: #FFEDED;
}

.search-result-bustime.night {
	color: #79A1C3;
    background: #E8F4FF;
}

.search-result-businfo {
	float: left;
	padding-left: 20px;
}

.search-result-company {
	font-size: 16px;
	font-weight: 500;
	margin-top: -10px;
}

.search-result-busnum {
	font-size: 14px;
	line-height: 1.3;
}

.search-result_ttl {
	color: #FFF;
	font-weight: bold;
	text-align: center;
	padding: 3px 0;
	background-color: #00396A;
}

.search-result .search-result-page {
	text-align: center;
	margin: 15px 0; 
}

.search-result .search-result-page ul {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	-webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
}

.search-result .search-result-page li {
	font-size: 16px;
	margin: 0 10px;
	line-height: 1.0;
}

.search-result .search-result-page li.active {
	font-weight: bold;
}

.busstop dt {
	font-size: 16px;
	font-weight: bold;
	padding-top: 5px;
}

.busstop dd {
	font-size: 13px;
	line-height: 1.2;
}

.busstop dd a::after {
    content: "";
    display: block;
    clear: both;
}

.busstop dd a {
	display: block;
	border: 1px solid #B5B5B5;
	padding: 8px;
}

.busstop dd a:nth-child(n+1) {
	margin-top: 5px;
}

.busstop dd a:hover .busstop-name {
	text-decoration: underline;
}

.busstop-name {
	float: left;
}

.busstop-time {
	float: right;
}

.btn-viewcity {
	background: #9f9f9f;
	color: #FFF !important;
}

.btn-viewcity:hover {
	background: #AAAAAA;
	text-decoration: none;
}

.search-result-notice {
	font-size: 14px;
	color: #666;
	background: #FFFFD6;
	margin-top: 20px;
}

.search-result-notice_icon {
	font-size: 12px;
	font-weight: 500;
	text-align: center;
	color: #FFF;
	width: 120px;
	display: block;
	background: #CF0000;
	padding: 3px 0;
	border-radius: 50px;
	float: left;
}

.search-result-notice_title {
	font-size: 13px;
	font-weight: 500;
}

.search-result-notice p {
	font-size: 13px;
	padding: 0 10px 10px 15px;
}

.search-result-notice a {
	padding: 10px 30px 10px 10px;
}

.search-result-notice span {
	margin-right: 10px;
}

.search-result-notice a[data-toggle="collapse"]::after{
    border-top: #FFA846 1px solid;
    border-right: #FFA846 1px solid;
}

@media screen and (max-width:768px) {
	.search-result-wrap {
		margin-top: 10px;
	}
}

@media screen and (max-width:575px) {
	.search-result-detail {
		padding: 15px;
	}
	
	.search-result-bustime {
    margin-top: -14px;
	}
	
	.search-result-detail h3 {
		font-size: 20px;
		line-height: 1.2;
	}
	
	.search-result_dep,
	.search-result_arr {
		width: 100%;
		float: none;
	}
	
	.search-result_arr {
		margin-top: 20px;
	}
	
	.search-result-stop {
		background: none;
	}
	
	.busstop dd:after{
		content: "";
		display: block;
		clear: both;
	}
	
	.search-result-notice_icon {
		float: none;
		margin-bottom: 5px;
	}

	.search-result-notice_title {
		display: block;
		margin-top: 10px;
		padding: 0 5px 5px;
	}

	

}

@media(max-width:375px) {
	.search-result-detail {
		padding: 15px;
	}
	
	.search-result-detail h3 {
		font-size: 18px;
	}
	
	.search-result-bustime {
		margin-top: -14px;
	}
	
	.search-result-company {
		margin-top: 0;
	}
	
	.search-result_ttl {
		font-size: 14px;
		font-weight: 500;
		padding: 0 0 3px;
	}
}

/*
search-result-select
*************************************/

.search-result-book {
	padding: 25px;
	border-bottom: 1px solid #bcbcbc;
	position: relative;
}

.search-result-book:last-child {
	border-bottom: none;
}

.search-result-book h3 {
	width: 80%;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.3;
}

.search-result-book .fa-ellipsis-v {
	color: #9C9C9C;
	font-size: 13px;
}

.search-result-book .btn-ellipsis {
	position: absolute;
	top: 20px;
	right: 25px;
	padding: 5px;
}

.search-result-book-fare {
	padding: 20px 0;
	border-bottom: 1px dotted #bcbcbc;
}

.search-result-book-fare::after {
    content: "";
    display: block;
    clear: both;
}

.search-result-book-fare div:nth-child(1) {
	float: left;
}

.search-result-book-fare div:nth-child(2) {
	float: right;
}

.search-result-book-cat {
	font-size: 16px;
	padding-right: 10px;
}

.search-result-book-price {
	font-size: 24px;
	font-weight: bold;
	line-height: 1.0;
	color: #CF0000;
}

.search-result-book-ava {
	font-size: 14px;
}

.search-result-book-num {
	font-size: 16px;
	font-weight: bold;
	color: #CF0000;
	padding-right: 10px;
}

.search-result-book-fare a {
	font-size: 18px;
	font-weight: bold;
	color: #FFF;
	background: #D8611A;
	padding: 6px 50px;
	border-radius: 50px;
	position: relative;
}

.search-result-book-fare a:hover {
	background: #c9520d;
	text-decoration: none;
}

.search-result-book-fare a::after {
	content:"";
	display: block;
	width: 8px;
	height: 8px;
	border-top: #FFF 1px solid;
	border-right: #FFF 1px solid;
	position: absolute;
	right: 15px;
	top: 0;
	bottom: 0;
	margin: auto;
-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
	transition-duration: 0.3s;
}

.search-result-book-facility {
	padding-top: 20px;
}

.search-result-book-facility::after {
	content: "";
	display: block;
	clear: both;
}

.search-result-book-facility figure {
	float: left;
	width: 20%;
	margin: 0;
}

.search-result-book-facility figure img {
	width: 100%;
}

.facility-list {
	float: left;
	width: 77%;
	padding-left: 3%
}

.facility-list .plan-label {
	font-size: 13px;
	color: #FFF;
	font-weight: 500;
	background: #00396A;
	padding: 3px 10px;
	border-radius: 3px;
}

.facility-list .plan-label:first-child {
	margin-right: 5px;
}

.facility-list .plan-label + dl {
	margin-top: 10px;
}

.facility-list dl::after {
	content: "";
	display: block;
	clear: both;
}

.facility-list dt {
	font-size: 13px;
	float: left;
	width: 16%;
	text-align: center;
	background: #F1F1F1;
	border: 1px solid #CFCFCF;
	padding: 10px 0;
}

.facility-list dd {
	font-size: 13px;
	float: left;
	width: 82%;
	padding-left: 2%;
}

.facility-list dd span:nth-child(n+2) {
	margin-left: 10px;
}

.icon-seat {
	background: url("/stc/178/image/common/icon/i-seat.png") 0 3px no-repeat;
	padding-left: 15px;
}

.icon-wc {
	background: url("/stc/178/image/common/icon/i-wc.png") 0 3px no-repeat;
	padding-left: 15px;
}

@media screen and (max-width:575px) {
	.search-result-book {
		padding: 15px;
	}
	
	.search-result-book-fare {
		padding: 10px 0 20px;
		border-bottom: 1px dotted #bcbcbc;
	}
	
	.search-result-book-fare div:nth-child(1) {
		float: none;
		margin-bottom: 20px;
	}
	
	.search-result-book-fare a {
		padding: 6px 40px;
	}
	
	.search-result-book-facility figure {
		width: 40%;
	}
	
	.facility-list {
    width: 60%;
	}
	
	.facility-list .plan-label {
		display: inline-block;
	}

	.facility-list .plan-label:first-child {
		margin-bottom: 3px;
	}
	
	.facility-list dt {
		float: none;
		width: 30%;
		padding: 2px 0;
		margin-bottom: 5px;
	}

	.facility-list dd {
		float: none;
		width: 100%;
		padding-left: 0;
	}

	.facility-list dd span:nth-child(n+2) {
		margin-left: 10px;
	}
}


/*
search-more
*************************************/

.search-more {
	margin-top: 30px;
}

.search-more h4 {
	font-size: 22px;
	font-weight: bold;
}

.search-more .from-place,
.search-more .to-place {
	font-size: 18px;
}

.search-more .from-place::before {
    content: "From";
    font-size:16px;
    padding-right: 0.3em;
}

.search-more .to-place::before {
    content: "to";
    font-size:16px;
    padding: 0 0.3em;
}

.search-more table {
	width: 100%;
	font-size: 14px;
	border: 1px solid #bcbcbc;
	box-sizing: border-box;
	border-collapse: inherit;
	margin-top: 10px;
}

.search-more th {
	width: 30%;
	font-weight: normal;
	background: #F2F2F2;
	padding: 8px;
}

.search-more td {
	width: 70%;
	padding: 8px;
}

.search-more td ul li {
	display: inline;
	border-right: 1px solid #bcbcbc;
	padding-right: 8px;
	margin-right: 8px;
}

.search-more td ul li:last-child {
	border-right: none;
}

@media screen and (max-width:375px) {
	.search-more h3 {
		font-size: 18px;
	}
}


/*
Modal search box
*************************************/

@media screen and (max-width:991px) {
	.modal-header {
		background: #f4f4f4;
		color: #FFF;
		border-top-left-radius: 0;
		border-top-right-radius: 0;
	}
	.modal-header .close {
		opacity: 1;
		padding: 0.8rem;
    	margin: -1.1rem -1rem -1rem auto;
	}
	.modal-header h2 {
		font-size: 18px;
		border-bottom: none;
		margin-top: 0;
		padding-bottom: 0;
	}
	.modal-body {
		padding: 1.5rem;
	}
	.modal-body .sidebox-search_title {
		font-size: 16px;
    	margin: 10px 0 8px;
	}
	.modal-body .sidebox-search_advanced {
		font-size: 18px;
		border-left: none;
    	border-right: none;
		margin-top: 30px;
	}
	.checkbox.block .list_item {
    	margin-top: 6px;
	}
	.modal-body a.btn-reverse {
		margin: 15px auto 0;
	}
	.modal-body .btn-search {
		color: #fff;
		font-weight: bold;
		background: #035AA6;
		display: block;
		width: 100%;
		margin: 20px 0 10px;
	}
	.page-ichiran-main_left .modal-header h2 {
		font-size: 20px;
		font-weight: bold;
		line-height: 100%;
		color: #035AA6;
	}
}

/*
menu-fixed
********************************************/
binlist-calendar{
	padding-bottom:0;
}
.menu-fixed .btn-search{
	color: #FFF;
	margin:20px auto;
	font-weight: bold;
	padding: .375rem 1.5rem;
	background: #035AA6;
	white-space:normal;
}
.menu-fixed {
	padding-bottom:0;
	text-align: center;
}
.menu-fixed .fa-search {
	margin-right: 5px;
}
@media(min-width:992px) {
	.menu-fixed{
		display:none;
	}
}
@media(max-width:991px) {
	.menu-fixed{
		position: -webkit-sticky;
		position: sticky;
		top: 0px;
		z-index:20;
		padding:1px 15px 0px 15px;
		background:rgba(255,255,255,0.8);
		margin-left:-15px;
		margin-right:-15px;
	}
	.menu-fixed .conditions-change{
		padding:10px 0 15px 0 ;
	}
	.menu-fixed .result-box{
		margin-bottom:5px;
	}
	.menu-fixed .sort-box{
		margin-bottom:0;
	}
	.menu-fixed .result-all-num{
		color:#fff;
		margin:0 0 0 5px;
	}
	.binlist-condition-box{
		border:none;
		background:#E8F4FF;
		margin: 0 -15px 0px -15px;
		padding:7px 5px;
		overflow-x: scroll;
    	-webkit-overflow-scrolling: touch;
	}
	.binlist-condition-box-in:after{
		content: "";
		clear: both;
		height: 0;
		display: block;
		visibility: hidden;
	}
	.binlist-condition-box h2 {
		color: #fff;
		font-weight: bold;
		display: block;
		float: left;
		padding: 10px 10px 5px 2px;
	}
	.binlist-condition-box-in .btn-group{
		margin-bottom:0;
	}
	.binlist-condition-box .btn-group .btn + .btn{
		border-left:1px solid #ccc;
		margin-left:0;
	}
	.binlist-condition-box .btn-group .btn.active:before{
		position: absolute;
		top: 50%;
		-webkit-transform: translateY(-50%);
		transform: translateY(-50%);
		left: 3px;
		content:"\f00c";
		font-family: "Font Awesome 5 Free";
		font-size:10px;
		font-weight:900;
	}
}

@media(min-width : 768px) and (max-width : 991px) {
	.menu-fixed{
		padding:1px 15px 5px 15px;
	}
	.binlist-condition-box-in{
		width: 2080px;
		overflow: hidden;
	}
	.binlist-condition-box h2 {
		font-size: 15px;
	}
	.binlist-condition-box .btn-group .btn{
		width:100%;
		font-size:15px;
		padding-left:15px;
	}
	
	/* 昼行、夜行 */
	.binlist-condition-box .btn-group:first-child{
		width:200px;
	}
	
	/* USB充電、コンセント */
	.binlist-condition-box .btn-group:nth-child(2){
		width:350px;
	}
	
	/* 2列、3列、4列 */
	.binlist-condition-box .btn-group:nth-child(3){
		width:440px;
	}
	
	/* 独立シート、ゆったり */
	.binlist-condition-box .btn-group:nth-child(4){
		width:300px;
	}
	
	/* 座席指定、MYカーテン */
	.binlist-condition-box .btn-group:nth-child(5){
		width:260px;
	}
	
	/* 女性安心、トイレ付き */
	.binlist-condition-box .btn-group:nth-child(6){
		width:270px;
	}
	
}

@media(max-width : 767px){
	.binlist-condition-box-in{
		width: 1740px;
		overflow: hidden;
	}
	
	.binlist-condition-box h2 {
		font-size: 14px;
	}
	
	.binlist-condition-box .btn-group .btn{
		width:100%;
		font-size:12px;
        padding-left: 15px;
        padding-right: 15px;
	}
	
	.binlist-condition-box .btn-group{
		margin-bottom:0;
		width:170px;
	}
	
	/* 昼行、夜行 */
	.binlist-condition-box .btn-group:first-child{
		width:180px;
	}
	
	/* USB充電、コンセント */
	.binlist-condition-box .btn-group:nth-child(2){
		width:280px;
	}

	/* 2列、3列、4列 */
	.binlist-condition-box .btn-group:nth-child(3){
		width:380px;
	}
	
	/* 独立シート、ゆったり */
	.binlist-condition-box .btn-group:nth-child(4){
		width:220px;
	}
	
	/* 座席指定、MYカーテン */
	.binlist-condition-box .btn-group:nth-child(5){
		width:210px;
	}
	
	/* 女性安心、トイレ付き */
	.binlist-condition-box .btn-group:nth-child(6){
		width:240px;
	}
}


/*
box
*************************************/

.box-alert {
  border: 4px solid #FFDCDC;
  color: #CF0000;
  font-weight: 600;
  line-height: 1.4;
  padding: 10px 15px;
  box-sizing: border-box;
  margin-bottom: 30px;
}

@media screen and (max-width:575px) {
	.box-alert {
		line-height: 1.2;
	}
}
.arrow{
    position: relative;
    display: inline-block;
    padding: 0 0 0 16px;
    color: #000;
    vertical-align: middle;
    text-decoration: none;
    font-size: 15px;
}
.arrow::before,
.arrow::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.arrow::before{
    left: 3px;
    width: 7px;
    height: 1px;
    background: #7a0;
}
.arrow::after{
    left: 3px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #7a0;
    border-right: 1px solid #7a0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* 20200915 修正分
便一覧
********************************************/
.notice {
	margin: 0;
}
.search-from-dep {
    padding-top: 40px;
}

@media (max-width:991px) {
	.page-ichiran-main {
		padding: 20px 0 30px;
	}
}
@media (max-width:576px) {
	ul.breadcrumbs {
		padding: 10px 0 30px;
	}
}	
/* 
20200915 便一覧 便が0件の時
********************************************/
.tab-content .best-price .to-place {
    color: #CF0000;
    font-size: 16px;
    font-weight: 600;
}
.tab-content .best-price .to-place::before {
    content: "Best bus fare arriving in";
    font-size:16px;
    padding-right: 0.3em;
}
.tabs-area .to-place::before {
    content: "Best bus fare arriving in";
    font-size:16px;
    padding-right: 0.3em;
}

/* 
20200915 便変更ページ
********************************************/
.change-fixed{
	position: sticky;
	top: 0px;
	z-index: 20;
	padding: 20px 0 0;
	background:rgba(255,255,255,0.8);
}

.change-fixed-in{
	padding:15px 30px;
	border:3px solid #DC000C;
	background:#fff;
}

.ttl-change{
	font-size:24px;
	font-weight:bold;
	color: #DC000C;
}

.btn-change-cxl{
	color:#fff;
	font-size:18px;
	font-weight:bold;
	padding:15px 30px;
	background:#B5B5B5;
	display:block;
	float:right;
	text-align:center;
	border-radius: 5px;
}

.btn-change-cxl:hover{
	color:#fff;
	background:#838383;
	text-decoration:none;
}

.btn-change-cxl i{
	margin-right:10px;
}

#change-mode .menu-fixed{
	position:static;
}

.bin-selected,
.option-selected{
	border:3px solid #09b5fd !important;
}

.bin-selected.bin-box{
	border-top:3px solid #09b5fd;
}

.bin-selected .bin-ttl-box{
	padding-top:10px;
}

.bin-selected.bin-box .card-header .icon-list{
	top:60px;
}


.change-before-label{
	font-size:18px;
	font-weight:bold;
	color:#fff;
	background:#09b5fd;
	width:100%;
	padding:5px 10px;
}

/*
modal時
***************************/

.modal .change-fixed{
	top: 40px;
}

.modal .change-fixed-in{
	padding:10px 15px;
}

.modal .ttl-change{
	font-size:18px;
}

.modal .btn-change-cxl{
	font-size:14px;
	padding:10px 20px;
}


@media(max-width:767px) {
	.change-fixed {
		padding:10px 0 0;
	}
	.change-fixed .container{
		padding-left:5px;
		padding-right:5px;
	}
	.change-fixed-in{
		padding:8px 10px;
	}
	
	.ttl-change{
		font-size:18px;
	}

	.btn-change-cxl{
		font-size:14px;
		padding:10px 12px;
	}
	.change-before-label{
		top:10px;
		right:15px;
	}
}

@media screen and (max-width:767px) {
	.page-ichiran-main-calendar {
		margin-bottom: 20px;
	}
}

/*
200911 便一覧修正
***************************/

@media screen and (max-width:767px) {
	.menu-fixed .btn-search{
		padding: .45rem 1.0rem;
	}
	.facility-list dt {
		width: 20%;
		padding: 0;
		margin-bottom: 5px;
	}
}
@media screen and (max-width: 575px) {
	.facility-list dt {
		width: 40%;
	}
}

.facility-list .plan-label {
	font-size: 11px;
}

/* 20200915 messege-box02 修正
******************************/

.messege-box02{
	padding:0 10px 0 10px;
	margin-top: 20px;
	background-color: #FFFED6;
}

.messege-box02 .collapse{
	padding-bottom:10px;
}

.messege-box02 a{
	background:none;
	border:none;
	font-size:12px;
	font-weight:bold;
	color:#f5aa53;
	padding:10px 20px 10px 0px;
	position: relative;
	text-align:left;
	word-wrap: break-word;
	display:block;
	text-decoration:none;
}

.messege-box02 a:hover,
.messege-box02 a:focus{
	cursor:pointer;
	outline:none;
}

.messege-box02 a:after{
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	right: 0px;
	font-size:24px;
	color:#faaf5a;
	content: "\f106";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-left: 10px;
}

.messege-box02 a.collapsed:after {
	content: "\f107";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	margin-left: 10px;
}

.messege-box02 a span.label{
	color: #fff;
	background: #faaf5a;
	font-size: 12px;
	margin-right: 7px;
	padding: 4px 5px;
	border-radius: 2px;
	position: absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left: 0;
}

.messege-box02 a span.label + p.messege-ttl {
	padding: 0px 0px 0px 80px;
	font-size: 15px;
}

.messege-box02 table{
	width:100%;
	margin:10px 0 0px 0;
}

.messege-box02 table th{
	background:#eee;
	font-weight: normal;
}

.messege-box02 table td{
	background:#fff;
}

.messege-box02 table th,
.messege-box02 table td{
	border:1px solid #ccc;
	padding:5px;
}

.messege-box02 dt{
	font-weight:normal;
}
.messege-box02 dl.warning-txt {
	font-size:14px;
}

/* 20200915 カレンダー高さ 修正
******************************/
.page-ichiran-main-calendartable tr:nth-child(odd) td {
	height: 64px;
}
@media screen and (max-width:767px) {
	.page-ichiran-main-calendartable tr:nth-child(odd) td {
		height: 50px;
	}
}

/* 20200915 2便目以降のアイコン
******************************/
h1 .label-box{
	font-size:14px;
	font-weight:bold;
	color:#fff;
	margin-right:10px;
	padding:4px 10px;
	background:#00396a;
	vertical-align: 3px;
	display: inline-block;
	border-radius: 2px;
}

/* 20200915 便一覧表示条件選択修正
******************************/
.changer-inner label {
	color: #9f9f9f;
}
.changer-inner label:hover {
	border: 2px solid #9f9f9f;
	background: #9f9f9f;
}
.changer-inner label.active {
	color: #FFF;
	border: 2px solid #9f9f9f;
	background: #9f9f9f;
}

@media screen and (max-width:992px) {
	.changer-inner label {
		color: #87b6e0;
		border: 2px solid #87b6e0;
	}
	.changer-inner label:hover {
		border: 2px solid #87b6e0;
		background: #87b6e0;
	}
	.changer-inner label.active {
		color: #FFF;
		border: 2px solid #87b6e0;
		background: #87b6e0;
	}
}

@media screen and (min-width:992px) and (max-width:1200px) {
	.changer-inner label {
		width: 48%;
	}
}

/* 20200915 検索ボタン追加
******************************/
.sidebox-search .btn-search {
	width: 100%;
	color: #FFF;
	background-color: #484848;
	margin-top: 20px;
}

/*　20201026 追加分
**************************************/

/** 便一覧 **/

.modal-header {
	background-color: #f4f4f4;
}
.modal-body .btn-search i {
	margin-right: 5px
}
.modal-footer button {
	background-color: #035AA6;
	color: #FFF;
}
.modal-footer button:hover {
	background-color:#046cc8;
}

.modal-header.sticky-top {
	padding-right: 17px !important;
    margin-right: 0 !important;
}
.modal-open {
	padding-right: 0px !important;
	overflow: auto;
  }
.modal {
	padding-right: 0px !important;
}
.binlist-calendar{
	padding:16px 15px;
	margin:0 -15px;
	text-align:center;
	background:#fff;
}

@media(max-width:374px) {
	.binlist-calendar{
		padding:10px 5px;
	}

}

@media(min-width:992px) {
	
	.binlist-calendar{
		padding:0;
		margin:0 0 20px 0;
		background:none;
	}

}

.binlist-calendar .btn-group{
	margin-bottom:16px;
	width:100%;
	border:none;
}

.binlist-calendar .btn-group .monthly{
	font-size:14px;
	color:#000;
	border-top:1px solid #e7e7e7;
	border-bottom:1px solid #e7e7e7;
	background:#fff;
	width:100%;
}

.binlist-calendar .btn-group .monthly:hover{
	cursor:auto;
	color:#000;
	background:#fff;
}

.binlist-calendar .btn-group .monthly-prev{
	border-radius: 18px 0 0 18px !important;
	color:#71A4D0;
	font-size:12px;
	background:#fff;
	width:47px;
	margin-right:1px;
	border:1px solid #e7e7e7;
}
.binlist-calendar .btn-group .monthly-next{
	border-radius: 0 18px 18px 0 !important;
	color:#71A4D0;
	font-size:12px;
	background:#fff;
	width:47px;
	margin-left:1px;
	border:1px solid #e7e7e7;
}

.binlist-calendar table{
	width:100%;
}

.binlist-calendar table th{
	font-size:12px;
	color:#fff;
	background:#71A4D0;
	border:1px solid #fff;
	width: 14.285714285714286%;
}

.binlist-calendar table tr,
.binlist-calendar table td{
	border:1px solid #e7e7e7;
}
.binlist-calendar table td{
	background:#fff;
	vertical-align:bottom;
	position:relative;
}

@media(min-width:992px) {
	.binlist-calendar table td{
		height: 64px;
	}
}

.binlist-calendar table td:first-child .day-num{
	color:#da4453;
}
.binlist-calendar table td:last-child .day-num{
	color:#3bafda;
}

.binlist-calendar .c-price{
	font-size:10px;
	font-weight:bold;
	color:#000;
}

.binlist-calendar .day-num{
	font-size:10px;
	text-align:right;
	text-decoration:none !important;
	position: absolute;
	top: 0;
	right: 3px;
}


.binlist-calendar .empty-day .day-num{
	color:#B2B2B2 !important;
}

.binlist-calendar table a{
	display:block;
}

.binlist-calendar table a:hover{
	text-decoration:none;
	background:#FEEBF2;
}

.binlist-calendar table .day-checked{
	background:#FEEBF2;
}

.binlist-calendar table a:hover .c-price{
	text-decoration:underline;
}

.conditions-change{
	padding:16px 0 16px 0;
}


.card.bin-box{
	margin-bottom:15px;
	border-top:6px solid #F53D7E;
}

.bin-box .card-body{
	padding:0;
    line-height: 1.4;
}

.bin-box .card-header{
	padding:15px 20px 10px 20px;
	background:#fff;
}

@media(min-width:992px) {
	.card.bin-box{
		margin-bottom:15px;
		border-top:4px solid #F53D7E;
	}

	.bin-box .card-header .bin-ttl-box{
		position: relative;
	}
	

	.bin-box .card-header .icon-list{
		position: absolute;
		top:30px;
		right: 20px;
	}
	
	.binlist-calendar .c-price{
		font-size:18px;
		padding:5px 0;
	}
	.binlist-calendar .day-num{
		font-size:14px;
		text-align:right;
		padding:0px 3px 3px 0px;
	}
}

/*
modal binlist-calendar
************************************/

.modal .binlist-calendar{
	padding:0;
}

@media(min-width : 768px) {
	.modal-body .binlist-calendar .c-price{
		font-size:14px !important;
	}
}


@media(max-width:374px) {
	.modal-dialog{
		margin:0;
	}

}

.bin-ttl-box{
	padding:20px 0;
}

.card-header .bin-ttl-box h2{
    font-size:18px;
	font-weight:bold;
}

.card-header .bin-ttl-box .bin-ttl-box-company {
	font-size:12px;
	font-weight:bold;
	color:#B2B2B2;
}

.bin-ttl-box-number:before {
    content: "Bus No. ";
    font-size:12px;
    font-weight: normal;
}

.bin-box .card-header .icon-list{
	border-top:1px solid #efefef;
	border-bottom:1px solid #efefef;
	padding:8px 0;
	margin-bottom:10px;
	font-size:12px;
	color:#000;
}

.bin-box .card-header .icon-list .ic{
	margin-right:5px;
}


.box-shadow{
	box-shadow:0px 0px 6px #E7E7E7;
}

@media(min-width:992px) {

	.bin-box .card-header .icon-list{
		padding: 0px 0;
		border: none;
	    text-align: right;
	    font-size:12px;
	}
}

@media (min-width : 768px){
	.binlist-calendar table a {
		display: block;
		height: 64px;
		padding-top: 20px;
	}
}

@media (min-width : 768px) and (max-width : 991px) {
	.ttl-box .day-select{
		font-size:12px;
	}
	.from-name, .to-name {
		font-size: 22px;
	}
	.from-txt, .to-txt {
		font-size: 16px;
	}
	.bin-box .card-header .icon-list{
		position: absolute;
		top:30px;
		right: 20px;
		border:none;
	}
	
	.binlist-calendar .c-price{
		font-size:18px;
		padding:5px 0;
	}
	.binlist-calendar .day-num{
		font-size:14px;
		text-align:right;
		padding:0px 3px 3px 0px;
	}
	.binlist-calendar table td{
		height:64px !important;
	}
	
	.btn-search{
		display:block !important;
		width:60% !important;
		margin-left:auto;
		margin-right:auto;
	}
}

@media(max-width:767px) {
	.binlist-calendar table td{
		height:50px !important;
	}
	
	.binlist-calendar table a {
		display: block;
		height: 33px;
		padding-top: 13px;
	}

}

/*
20210416 便一覧調整
************************************/

.binlist-calendar table .day-bestprice{
	background:#FFFFD6;
}
.search-result-stop {
	background-position: center center;
}

/*
20210527 調整分
************************************/

/* バス停モーダル内 */

.modal-body h1 {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 15px;
    color: #000;
}
.modal-body #mapzone {
	margin-bottom: 15px;
}
	
.modal-body .card {
	margin-bottom: 15px;
}
.modal-body .card:last-child {
	margin-bottom: 0px;
}

/*Blog欄 */

@media(min-width : 576px) and (max-width : 991px) {
	#recent-post {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
	#recent-post a {
		width: 31%;
		display: block;
	}
}

/* 便一覧運行バス会社 */

.search-result-businfo {
	float: left;
	padding-left: 20px;
	width: 85%;
}
@media screen and (max-width:636px) {
	.search-result-businfo {
		width: 75%;
	}
}
@media screen and (max-width:480px) {
	.search-result-businfo {
		width: 65%;
	}
}

/* 検索候補ワード */
.box-suggest {
	width: 100% !important;
}
.box-suggest-list li {
	cursor: pointer;
	padding: 2px 10px;
}
.box-suggest-list li:hover {
	background: #F2F2F2;
}
.sidebox-search_pref {
	text-align: left !important;
}
@media screen and (max-width:991px) {
	.box-suggest-list li {
		padding: 5px 10px;
	}
}

/* 詳細モーダル内 */

h1#seat-type-name {
	font-size: 1.2rem;
	font-weight: bold;
	padding-top: 5px;
}
.card-header h2 {
	font-size: 1.2rem;
 }
#brand-name {
	background-color: #505050;
	color: #FFF;
	padding: 2px 0 2px 6px;
	margin-bottom: 10px;
}
ul.service-spec li {
	position: relative;
}
.service-spec .ellipsis {
	position: absolute;
	right: 0;
	top: 0;
 }
 #overview-description {
	padding: 10px 0;
 }
.thumb-txt li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
 }
.thumb-txt dl {
	padding-left: 15px;
 }
.thumb-txt li:nth-child(n+2) {
	margin-top: 15px;
 }
.thumb-txt img {
	width: 70px;
	height: 70px;
}
.tbl-txt th {
	width: 220px;
}
@media screen and (max-width:636px) {
	.tbl-txt th,
	.tbl-txt td {
		display: block;
	}
}

/* 発地・着地のみ表示ページ */
@media screen and (max-width:480px) {
	.nav-tabs {
		width: 100%;
	}
	.tabs-month .nav-item {
		width: 25%;
	}
	.tabs-month .nav-link {
		padding: .6rem 0;
    	text-align: center;
	}
}

/* 各種ツール */

.mt0{
	margin-top:0 !important;
}
.mt10{
	margin-top:10px !important;
}
.mt15{
	margin-top:15px !important;
}
.mt20{
	margin-top:20px !important;
}
.mt30{
	margin-top:30px !important;
}
.mt--30{
	margin-top:-30px !important;
}
.mt40{
	margin-top:40px !important;
}
.mt50{
	margin-top:50px !important;
}
.mb0{
	margin-bottom:0 !important;
}
.mb5{
	margin-bottom:5px !important;
}
.mb10{
	margin-bottom:10px !important;
}
.mb15{
	margin-bottom:15px !important;
}
.mb20{
	margin-bottom:20px !important;
}
.mb30{
	margin-bottom:30px !important;
}
.mb--30{
	margin-bottom:-30px !important;
}
.mb40{
	margin-bottom:40px !important;
}
.mb50{
	margin-bottom:50px !important;
}
.mb100{
	margin-bottom:100px !important;
}
.mr5{
	margin-right:5px !important;
}
.mr10{
	margin-right:10px !important;
}
.mr15{
	margin-right:15px !important;
}
.mr20{
	margin-right:20px !important;
}
.pd10{
	padding:10px !important;
}
.pd15{
	padding:15px !important;
}
.pd20{
	padding:20px !important;
}
.pt0{
	padding-top:0px !important;
}
.pt10{
	padding-top:10px !important;
}
.pt20{
	padding-top:20px !important;
}
.pb0{
	padding-bottom:0px !important;
}
.pb10{
	padding-bottom:10px !important;
}
.pb20{
	padding-bottom:20px !important;
}
.btn{
	border-radius: 2px;
	
}
.txt-red{
	color:#cc0000 !important;
	font-weight:bold;
}
.fa-angle-right{
	color:#F53D7E;
	margin-right:10px;
}

/*----------------------
 20210802 もぎり追加
----------------------*/

/* もぎりリンク */

.mogiri-link a{
	position:relative;
	color:#fff;
	font-weight:bold;
	background: #3bafda;
	padding:3px 10px 3px 25px;
	margin-bottom:15px;
	display:inline-block;
	border-radius:3px;
	text-decoration:none;
	line-height:1.2;
}
.mogiri-link a:before{
	position:absolute;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	left:5px;
	content: "\f06a";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
}
.mogiri-link + .bin-ttl-box{
	padding-top:0;
}
.mogiri-link + .bin-ttl-box .ellipsis{
	top:23px;
}

/* もぎりスケジュール確認リンク */

.mogiri-schedule-link{
	text-align:center;
}
.mogiri-schedule-link a{
	position:relative;
	color:#035AA6;
	font-size:16px;
	font-weight:bold;
	padding:10px 15px;
	margin-top:15px;
	display:inline-block;
	border-radius:3px;
	text-decoration:none;
	border:1px solid #035AA6;
	border-radius:4px;
}
.mogiri-schedule-link a:hover{
	color:#FFF;
	background:#035AA6;
}
.mogiri-schedule-link a i {
	margin-right: 5px;
}

/* もぎり運行スケジュール */

.sch-modal .bus-station-name{
	margin-bottom:0px;
}
.sch-modal .bus-station-time{
	margin-top:3px;
}
.sch-modal .time-table-box{
	margin-bottom:30px;
}
.sch-modal .time-table-box .bus-station-box{
	min-width:100%;
}
.sch-modal .time-table-box .bus-station-box.bus-get-arrow{
	width:50px;
	min-width:50px;
}
.sch-modal .bus-station-box a,
.sch-modal .bus-station-box a:hover{
	display: block;
	padding-top:6px;
}
.sch-modal .time-table{
	width:100%;
}
.sch-modal .bus-station-box{
	width: 100%;
	overflow-x: scroll;
	display: flex;
	justify-content: space-between;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
	white-space: nowrap;
}
.sch-modal .bus-station-box table{
	width:100%;
	margin-bottom:10px;
}
.sch-modal .bus-station-box table th {
	font-size:13px;
	font-weight:normal;
	width:155px !important;
	color:#333;
	padding-left: 70px !important;
}
.sch-modal .bus-station-box table td{
	font-size:13px;
	width:75px;
	text-align:center;
}
.sch-modal .bus-station-box table th,
.sch-modal .bus-station-box table td{
	padding:5px 10px;
}
.sch-modal .bus-station-box table td.map-cell{
	text-align:center;
	width:30px !important;
}
.sch-modal .bus-station-box table td.map-cell a{
	display:inline-block;
	padding:5px;
}
.btn-primary{
	border:none;
}
.sch-modal .bus-station-box table td.bg-arrow{
	background:none;
	text-align:left;
}
.sch-modal .bus-station-box table td{
	background:#fafafa;
}
.sch-modal .bus-station-box table tr + tr{
	border-top:5px solid #fff;
}

/* もぎりチケット画面 */

.card.ticket{
	margin:15px auto;
}
.select-wrap:before{
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	height: 34px;
}
.card.ticket .bus-geton:before,
.card.ticket .bus-getoff:before{
	font-size:14px;
	width:45px;
	border-radius:2px;
}
.card.ticket .bus-geton:before{
	content:"From";
}
.card.ticket .bus-getoff:before{
	content:"To";
}
.card.ticket .bus-geton,
.card.ticket .bus-getoff{
	font-size:18px;
	padding:10px 5px 10px 55px;
	margin-bottom:7px;
}
.card.ticket .caution-txt p{
	margin-bottom:20px;
	text-align:center;
}
.card.ticket .caution-txt p{
	font-size:24px;
	font-weight:bold;
	color:#CC0000;
}
.card.ticket .current-time-txt{
	font-size:24px;
	font-weight:bold;
	color:#fff;
	background:#333;
	border-radius:4px 4px 0 0;
	padding:12px 5px 10px 5px;
	width:100%;
	text-align:center;
}
.current-time-ttl i{
	font-size:18px;
	margin-right:5px;
}
.card.ticket .current-date{
	margin-left:10px;
}
.card.ticket .current-time{
	margin-left:10px;
}
.card.ticket .date-txt{
	font-size:24px;
	font-weight:bold;
	margin-top:30px;
	padding:15px 0;
	border-top:1px solid #dedede;
}
.card.ticket .date-txt i{
	margin-right:15px;
}
.card.ticket .ticket-total-box{
	margin-top:20px;
	padding-top:20px;
	border-top:1px solid #dedede;
}
.card.ticket .ticket-total-box dt{
	width:145px;
	float:left;
}
.card.ticket .ticket-total-box dd{
	margin-left:148px;
	text-align:right;
}
.card.ticket a.btn-ticket,
.mogiri-caution a.btn-ticket,
.ticket-reserved a.btn-ticket{
	display:block;
	padding:20px 10px;
	margin:0px 0 10px 0;
	border-radius:5px;
	text-decoration:none;
	color:#fff;
	font-size:18px;
	font-weight:bold;
	background:#f53d7e;
	text-align:center;
}
.card.ticket a.btn-ticket:hover,
.mogiri-caution a.btn-ticket:hover{
	opacity:0.8;
}
.card.ticket select{
	margin:0 0 20px 0;
}
.card.ticket .person-type{
	font-size:18px;
	margin-right:5px;
}
.card.ticket .person-num{
	font-size:18px;
	margin-right:15px;
}
.card.ticket .ticket-price{
	font-size:18px;
}
.mogiri-link-caution{
	text-align:center;
}
.mogiri-link-caution h2{
	font-size:20px;
	text-align:center;
	margin:25px 0;
	color:#cc0000;
}
.mogiri-link-caution p{
	font-size:18px;
}

/* 運行会社選択 */
.card.ticket .btn-ticket.disabled{
	background:#ccc;
}
.card.ticket .select-wrap.disabled select,
.card.ticket .select-wrap.disabled:before{
	color:#ccc;
}
.bus-brand-name {
	color:#cc0000;
	background:#fff5f5;
	border:2px solid #ec9595;
	margin-bottom:15px;
	border-radius:3px;
}
.bus-brand-name dl dt,
.bus-brand-name dl dd{
	font-size:24px;
	font-weight:bold;
}
.bus-brand-name dl dt{
	padding:10px 10px 0 13px;
}
.bus-brand-name dl dd{
	padding:0px 10px 10px 13px;
}
.card.ticket h2.ttl-select{
	color:#cc0000;
	font-size:20px;
	font-weight:bold;
	margin-bottom:10px;
	position:relative;
	padding-left:45px;
}
.card.ticket span.hissu{
	color:#fff;
	background:#cc0000;
	font-size:14px;
	padding:3px 5px;
	position:absolute;
	top:0;
	left:0;
	border-radius:2px;
}

/* もぎり利用済 */
.reserved-date{
	background:rgba(255,255,255,0.9);
	padding:10px;
	border-radius:5px;
	margin:0 auto;
	position:relative;
}
.reserved-date dt{
	font-size:24px;
}
.reserved-date dd{
	font-size:30px;
}
.ttl-reserved{
	border:5px solid;
	border-color:rgba(213,14,7,0.7);
	border-radius:5px;
	padding:12px 10px 10px 10px;
	width:200px;
	text-align:center;
	transform:rotate(-12deg);
	position:absolute;
	top:5px;
	left:-3px;
}
.ttl-reserved span{
	font-size:32px;
	font-weight:bold;
	line-height:1.0;
	color:rgba(213,14,7,0.7);
	letter-spacing:3px;
}
.ticket-reserved{
	padding-top:30px;
}
.reserved-date-inner{
	width:100%;
	height:200px;
	border:3px solid;
	border-color:#dbd1b7;
	display: flex;
	justify-content: center;
	align-items: center;
}
.ticket-reserved a.btn-mgr-close{
	color:#fff;
	background:#333;
	border-radius:4px;
	text-align:center;
	padding:10px 15px;
	display:block;
	width:100px;
	margin:20px auto 10px auto;
	border:none;
}
.ticket-reserved a.btn-mgr-close:hover{
	opacity:0.8 !important;
	text-decoration:none;
}
.ticket-reserved .modal-content{
	background:none;
	border:none;
	outline:0;
}
.ticket-alert-box{
	padding:15px 10px;
	color:#cc0000;
	border:1px solid #cc0000;
	border-radius:6px;
	margin-bottom:15px;
}
.ticket-alert-box h2{
	font-size:18px;
	font-weight:bold;
	margin-bottom:10px;
}
.ticket-alert-box h2:before{
	content: "\f071";
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	margin-right:10px;
}
@media(min-width:992px) {
	.alert-box.mogiri{
		width:550px;
		margin:15px auto 30px auto;
	}
	.card.ticket{
		width:550px;
		margin:15px auto;
	}
	.card.ticket .caution-txt p br{
		display:none;
	}
}
@media(max-width:991px) {
	.alert-box.mogiri{
		margin-top:15px;
	}
	.card.ticket .date-txt{
		padding:10px 0;
	}
	.card.ticket a.btn-ticket{
		margin:10px 0;
	}
	
	.card.ticket .caution-txt p{
		margin-bottom:10px;
		text-align:center;
	}

	.card.ticket .caution-txt p{
		font-size:16px;
		font-weight:bold;
		color:#CC0000;
	}
}
@media(max-width:767px) {
	.card.ticket .current-time-txt{
		font-size:16px;
	}
	.ttl-reserved{
		top:-3px;
	}
	.reserved-date{
		width:95%;
	}
	.reserved-date-inner{
		border:3px solid;
		border-color:#dbd1b7;
	}
	.reserved-date-inner dd{
		font-size:32px;
	}
}
@media(max-width:374px) {
	.card.ticket .current-time-txt{
		font-size:14px;
	}
	.card.ticket .card-body{
		padding:10px;
	}
	.card.ticket .caution-txt p{
		font-size:15px;
		letter-spacing:-1px;
	}
	.card.ticket .date-txt{
		padding:10px 0;
		margin-top:20px;
	}
	.card.ticket .ticket-total-box{
		margin-top:15px;
		padding-top:10px;
		border-top:1px solid #dedede;
	}
	.card.ticket .ticket-total-box dt{
		width:100%;
		float:none;
		margin-bottom:5px;
	}
	.card.ticket .ticket-total-box dd{
		width:100%;
		margin-left:0;
		text-align:left;
	}
	.card.ticket a.btn-ticket{
		font-size:15px;
		padding:10px;
	}
	.card.ticket .bus-geton,
	.card.ticket .bus-getoff{
		font-size:18px;
	}
	.reserved-date-inner dd{
		font-size:28px;
	}
	.card.ticket h2.ttl-select{
		font-size:17px;
	}
}
.ticket-main-box h2{
	font-size:18px;
	font-weight:bold;
	padding:10px 0 10px 0;
}
.ticket-main-box table.ticket-info{
	width:100%;
	margin-bottom:10px;
}
.ticket-main-box table.ticket-info th{
	width:180px;
	padding:10px 10px 10px 0;
}
.ticket-main-box table.ticket-info td{
	padding:10px;
}
.ticket-main-box table.ticket-info tr + tr{
	border-top:1px solid #DBDBDB;
}
.ticket-main-box table.ticket-info th{
	width:90px;
}
@media(max-width:575px) {
	.ticket-main-box table.ticket-info th,
	.ticket-main-box table.ticket-info td{
		width:100%;
		display: block;
	}
	.ticket-main-box table.ticket-info td{
		padding: 10px 10px 10px 0;
	}	
}


/* もぎり多言語用調整 */

.mgr-sch-link a i {
    margin-right: 5px;
}

.modal-body h1 i {
	margin-right: 5px;
}

.card-body .mgr-sch-link {
	margin-top: 20px;
}

/* もぎり乗客リスト調整 */

.passengers-list.non-reserve .passengers-name {
	margin: 0 2% 0 0 !important;
	width:100%;
}
.passengers-list.non-reserve .passengers-age{
    width:100%;
}
.passengers-list.non-reserve .passengers-sex{
    width:100%;
}
@media(max-width:575px) {
	.passengers-list.non-reserve th {
		width: 100%;
		display: block;
	}
	.passengers-list.non-reserve td:nth-child(2) {
		width: 44%;
		display: block;
		float: left;
	}
	.passengers-list.non-reserve td:nth-child(3) {
		width: 28%;
		display: block;
		float: left;
		text-align: right;
	}
	.passengers-list.non-reserve td:nth-child(4) {
		width: 28%;
		display: block;
		float: left;
		padding-left: 5px;
		text-align: left;
	}
}
.modal-body .bus-geton,
.modal-body .bus-getoff,
.modal-body .bus-getonoff-on{
	background:#fafafa;
	min-height:30px;
	position: relative;
	padding-left:5px;
}
.modal-body .bus-geton:before,
.modal-body .bus-getonoff-on:before{
	content:"Depart";
	width:55px;
	color: #FFF;
	text-align: center;
	font-size:11px;
	font-weight: bold;
	background:#8cc152;
	position: absolute;
	top: 0;
    left: 0;
	padding: 10px 0;
}
.modal-body .bus-getoff:before,
.modal-body .bus-getonoff-off:before {
	content:"Arrive";
	width:55px;
	color: #FFF;
	text-align: center;
	font-size:11px;
	font-weight: bold;
	background:#f6bb42;
	position: absolute;
	top: 0;
    left: 0;
	padding: 10px 0;
}

/* もぎりお客様情報 */
.card-body .mgr-link{
	margin-top:0 !important;
	margin-left:0;
}

/* もぎり ご利用ガイド 一時非表示対応 */

.mgr-guide-link{
	display:none;
}

/* もぎり 運行スケジュール 単独ページ */

.operating-schedule{
	padding:20px;
}
.operating-schedule .bus-station-name{
	margin-bottom:0px;
}
.operating-schedule .bus-station-time{
	margin-top:3px;
}
.operating-schedule .time-table-box{
	margin-bottom:20px;
}
.operating-schedule .time-table-box .bus-station-box{
	min-width:100%;
}
.operating-schedule .time-table-box .bus-station-box.bus-get-arrow{
	width:50px;
	min-width:50px;
}
.operating-schedule .bus-station-box a,
.operating-schedule .bus-station-box a:hover{
	display: block;
	padding-top:6px;
}
.operating-schedule .time-table{
	width:100%;
}
.operating-schedule .bus-station-box{
	width: 100%;
	overflow-x: scroll;
	display: flex;
	justify-content: space-between;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
	white-space: nowrap;
}
.operating-schedule .bus-station-box table{
	width:100%;
	margin-bottom:10px;
}
.operating-schedule .bus-station-box table th{
	font-size:13px;
	font-weight:normal;
	color:#333;
	min-width: 240px !important;
	padding-left:65px !important;
}
.operating-schedule .bus-station-box table td{
	font-size:13px;
	text-align:center;
}
.operating-schedule .bus-station-box table th,
.operating-schedule .bus-station-box table td{
	padding:5px 10px;
}
.operating-schedule .bus-station-box table td.map-cell{
	text-align:center;
}
.operating-schedule .bus-station-box table td.map-cell a{
	display:inline-block;
	padding:5px;
}
.operating-schedule .bus-station-box table td.bg-arrow{
	background:none;
	text-align:left;
}
.operating-schedule .bus-station-box table td{
	background:#fafafa;
}
.operating-schedule .bus-station-box table tr + tr{
	border-top:5px solid #fff;
}
@media(max-width:767px) { 
	.operating-schedule{
		margin-top:20px;
		padding:10px 10px 20px 10px;
	}
	.operating-schedule .bus-station-box table th, .operating-schedule .bus-station-box table td{
		padding:5px 7px;
	}
	.operating-schedule .time-table-box{
		margin-bottom:10px;
	}
	.operating-schedule .bus-station-box table th{
		min-width: 137px !important;
	}
}
.operating-schedule .bus-geton:before,
.operating-schedule .bus-getonoff-on:before{
	font-size:11px;
	background:#8cc152;
	content:"Depart";
	width:55px;
}
.operating-schedule .bus-getoff:before,
.operating-schedule .bus-getonoff-off:before {
	font-size:11px;
	background:#f6bb42;
	content:"Arrive";
	width:55px;
}


/* 便一覧テキスト追加、アコーディオン  */

.content-wrap {
	height: 120px;
	overflow: hidden;
	position: relative;
	margin: 0;
}
.content-wrap .close-btn,
.content-wrap .more-btn {
display: block;
width: 100%;
padding: 70px 0 0;
position: absolute;
bottom:0;
left: 0;
text-align: center;
background: -moz-linear-gradient(
	top,
	rgba(255, 255, 255, 0) 0%,
	rgba(255, 255, 255, 0.2) 50%,
	rgba(255, 255, 255, 1) 80%
);
background: -webkit-linear-gradient(
	top,
	rgba(255, 255, 255, 0) 0%,
	rgba(255, 255, 255, 0.2) 50%,
	rgba(255, 255, 255, 1) 80%
);
background: linear-gradient(
	to bottom,
	rgba(255, 255, 255, 0) 0%,
	rgba(255, 255, 255, 0.2) 50%,
	rgba(255, 255, 255, 1) 80%
);
filter: progid:DXImageTransform.Microsoft.gradient(
	startColorstr='#00ffffff',
	endColorstr='#ffffff',
	GradientType=0
	);
}
.close-btn {
background: none;
}
.slide-up {
height: 120px;
padding-bottom: 20px;
overflow: hidden;
}
.slide-down {
height: auto;
overflow: visible;
padding-bottom: 20px;
}
.more-btn p {
display: inline-block;
color:#F53D7E;
font-weight:bold;
cursor: pointer;
padding:0px;
margin:0;
width: 80%;
font-size:14px;
}
.close-btn {
padding:0;
}
.close-btn p {
	color:#333;
}

.in-open,
.in-close{
	position:relative;
}
.in-open:before,
.in-close:before{
	font-family: "Font Awesome 5 Free";
	font-weight:900;
	margin-right:5px;
}
.in-open:before{
	content: "\f078";
}
.in-close:before{
	content: "\f00d";
}
.slide-down .more-btn{
	background:none;
}

.slide-down .content-txt{
	margin-bottom:10px;
}

.content-txt{
	padding:5px 5px 5px 0px;
	font-size:14px;
	font-weight: normal;
	color:#555;
}

/* 路線、便用 */
.bin-rosen-txt-box.content-wrap,
.bin-rosen-txt-box.content-wrap.slide-up{
	height: 80px;
	padding-top: 20px;
}
.bin-rosen-txt-box.content-wrap.slide-down{
	height: auto;
}

/* シート用 */
.seat-txt-box.content-wrap,
.seat-txt-box.content-wrap.slide-up{
	height: 100px;
	clear: both;
	width: 77%;
	float: right;
}
.seat-txt-box.content-wrap.slide-down{
	height: auto;
	clear: both;
	width: 77%;
	float: right;
}
@media(max-width:575px) {
	.seat-txt-box.content-wrap,
	.seat-txt-box.content-wrap.slide-up{
		width: 100%;
		float: none;
		padding-top: 10px;
	}
	.seat-txt-box.content-wrap.slide-down{
		width: 100%;
		float: none;
		padding-top: 10px;
	}
}

.bin-rosen-txt-box .slide-down .content-txt{
	margin-bottom:20px;
}
@media(max-width:767px) {
	.content-wrap{
		margin-bottom:15px;
	}
	/* 路線、便用 */
	.bin-rosen-txt-box.content-wrap,
	.bin-rosen-txt-box.content-wrap.slide-up{
		height: 80px;
	}
	/* シート用 */
	.seat-txt-box.content-wrap,
	.seat-txt-box.content-wrap.slide-up{
		height:110px;
	}
}

/* レイアウト調整 */
@media(min-width:992px) {
	.action-box{
		border-left: 0;
	}
	.seat-right {
		border-right: 1px solid #e7e7e7;
	}
}

/* YouTube画面調整 */
.youtube iframe {
    width: 100%;
}

/* 時刻表PDFリンクカラー調整 */
a.txt-link01 {
	color: #007bff;
	text-decoration: underline;
}

/* 条件付き運行 */
#mordal-joukentsuki .modal-body p{
  font-size: 16px;
}
.link-service-status{
  text-decoration: underline;
}
.link-service-status:hover{
  text-decoration: none;
}
.title-joukentsuki-on{
  background: #fef6d5;
  padding: 10px 15px;
  margin-bottom: 15px;
}
.title-joukentsuki-on p{
  display: flex;
  align-items: center;
  margin:0;
}
.title-joukentsuki-on i{
  color: #e86e30;
}
.title-joukentsuki-on p span{
  border-left: 1px solid #e86e30;
  display: block;
  width: 100%;
  padding-left: 15px;
  margin-left: 15px;
  font-weight: bold;
  color: #e86e30;
}
#mordal-joukentsuki .modal-body .wrap-joukentsuki-main p {
  margin-bottom: 20px;
}
#mordal-joukentsuki .modal-body .wrap-joukentsuki-main p b{
  color: #CF0000;
}
.wrap-joukentsuki-supplement{
  background: #fffcef;
  border-radius: 4px;
  padding: 10px 15px;
}
.subtitle-reason{
  font-size: 14px;
  font-weight: bold;
  color: #e86e30;
}
#mordal-joukentsuki .modal-body .wrap-joukentsuki-supplement p{
  font-size: 14px;
  margin: 0;
}
.wrap-joukentsuki-consent{
  margin: 20px auto 20px;
  width: 100%;
  max-width: 360px;
}
.btn-joukentsuki-consent{
  background: #D8611A;
  color: #fff;
  font-weight: bold;
  padding: 15px 10px;
  position:relative;
  border-radius: 100px;
}
.btn-joukentsuki-consent:after {
  content: "\f054";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 10px;
  font-size: 12px;
  color: #fff;
}
.btn-joukentsuki-consent:hover{
  opacity: 0.5;
  color: #fff;
}
.wrap-joukentsuki-close{
  margin:0 auto;
  padding: 0 20px;
  width: 100%;
  max-width: 260px;
}
#mordal-joukentsuki .btn-close{
  background: #ccc;
  color: #666 !important;
  border:none;
}
.messege-box-joukentsuki{
  padding:0 10px;
  margin-top: 10px;
  margin-bottom:5px;
  background:#fef6d5;
  line-height:1.2;
}
.dep24-after + .messege-box-joukentsuki{
  margin-top: 8px;
}
.messege-box-joukentsuki button{
  background:none;
  border:none;
  font-size:12px;
  color:#000;
  padding:10px 20px 10px 0px;
  position: relative;
  text-align:left;
  word-wrap: break-word;
  width:100%;
  max-width:100%;
}
.messege-box-joukentsuki button:hover,
.messege-box-joukentsuki button:focus{
  cursor:pointer;
  outline:none;
}
.messege-box-joukentsuki button:after{
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0px;
  font-size:24px;
  color:#F53D7E;
}
.messege-box-joukentsuki .collapse{
  padding-bottom:10px;
}
.messege-box-joukentsuki button.collapsed:after{
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight:900;
  margin-left:10px;
}
.messege-box-joukentsuki button:after{
  content: "\f106";
  font-family: "Font Awesome 5 Free";
  font-weight:900;
  margin-left:10px;
}
.messege-box-joukentsuki button span.label{
  color:#fff;
  background:#e86e30;
  font-size:12px;
  margin-right:7px;
  padding:4px 5px;
  border-radius:2px;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
}
.messege-box-joukentsuki button span.label + p.messege-ttl{
  padding:0px 0px 0px 45px;
}
@media(min-width:992px) {
  .messege-box-joukentsuki button{
    font-size:14px;
  }
}
.messege-box-joukentsuki table{
  width:100%;
  margin:10px 0 0px 0;
}
.messege-box-joukentsuki table th{
  width: 70px;
  text-align: center;
  background:#eee;
}
.messege-box-joukentsuki table td{
  background:#fff;
}
.messege-box-joukentsuki table th,
.messege-box-joukentsuki table td{
  border:1px solid #ccc;
  padding:5px;
}
.messege-box-joukentsuki dt{
  font-size:14px;
  font-weight:normal;
}
.messege-box-joukentsuki dt a{
  color:#007bff;
  display:inline-block;
  padding:0;
  margin:5px 0;
}
.messege-box-joukentsuki dt a:after{
  display:none;
}
.messege-box-joukentsuki dt a:hover{
    text-decoration:underline;
}
.messege-box02 button {
	width: 100%;
	max-width: 100%;
}
.warning-txt {
	font-size:14px;
}
