@charset "utf-8";
/* ===========================================
 * #search 検索
=========================================== */

/* #oneway　便一覧
=========================================== */
.s-oneway #contents {
	margin-top: 0;
	padding-top: 0;
	background: #fff;
}

.s-oneway #pageName {
	padding: 15px 15px 10px;
}

/* モーダルウィンドウのスタイル */
body {
	position: relative;
}

.modal {
	position: fixed;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	display: none;
	z-index: 10;
}

@media screen and (min-width: 641px) {
	.s-oneway #pageName {
		padding: 15px 0 10px;
	}
}

/* #searchBox
----------------------- */
/*search-head*/
.s-oneway .search-head {
	background: #e7f0fb;
}

.s-oneway .search-head .spbutton,
.s-oneway .search-head .sort {
	display: inline-block;
}

.s-oneway .hitcount {
	display: inline-block;
	color: #1c56a1;
	line-height: 60px;
}

.s-oneway .hitcount span {
	color: #ff0000;
	font-size: 24px;
	font-weight: bold;
}

.s-oneway .search-head .sort {
	padding-bottom: 10px;
}

.s-oneway .search-head .sort .formSelect {
	height: 42px;
}

@media screen and (min-width: 641px) {
	#oneway #searchBox {}
}

/* .head */
#oneway #searchBox .head {
	position: relative;
	height: 42px;
	padding: 15px 72px 15px 15px;
	background: #fff;
}

#oneway #searchBox .head .place {
	padding: 8px 0 0;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
}

#oneway #searchBox .head .place span:nth-child(1) {
	padding: 0 30px 0 0;
}

#oneway #searchBox .head .place span:nth-child(1)::before {
	top: 7px;
}

#oneway #searchBox .head .place span:nth-child(1)::after {
	top: 3px;
}

#oneway #searchBox .head .place span:nth-child(2) {
	padding: 0 0 0 6px;
}

#oneway #searchBox .head .btn {
	position: absolute;
	top: 15px;
	right: 15px;
	width: 42px;
	height: 42px;
	border-radius: 3px;
	background: #1a54a2 url(../img/btn_search01.png) no-repeat 0 0;
	background-size: 42px;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}

#oneway #searchBox .head .btn span {
	position: absolute;
	left: 6px;
	width: 30px;
	height: 3px;
	border-radius: 1px;
	background: #414347;
	transition: all .2s linear;
	opacity: 0;
}

#oneway #searchBox .head .btn span {
	top: 12px;
}

#oneway #searchBox .head .btn span+span {
	top: 30px;
}

/* .head .btn.open */
#oneway #searchBox .head .btn.open {
	background: #fff;
}

#oneway #searchBox .head .btn.open span {
	opacity: 1;
}

#oneway #searchBox .head .btn.open span {
	top: 19px;
	transform: rotate(45deg);
}

#oneway #searchBox .head .btn.open span+span {
	top: 19px;
	transform: rotate(-45deg);
}

/* .content */
#oneway #searchBox .content {
	display: none;
	/*position: absolute;*/
	top: 197px;
	left: 0;
	width: 100%;
	padding: 15px 15px;
	background: #e7f0fb;
	box-sizing: border-box;
	z-index: 500;
}

.search_agn {
	background: #fff;
	text-align: center;
	padding: 10px;
}

.search_agn a {
	background: #1a54a2;
	color: #fff;
	display: block;
	border-radius: 5px;
	padding: 8px 0;
	text-decoration: none;
	font-size: 118%;
	position: relative;
}

.search_agn a::after {
	content: "";
	width: 8px;
	height: 8px;
	border-top: 3px solid #1c56a1;
	border-right: 3px solid #1c56a1;
	border-left: none;
	border-bottom: none;
	position: absolute;
	top: 45%;
	margin-top: -5px;
	transform: rotate(135deg);
	right: 16px;
}

.search_agn a.ac_show::after {
	content: "";
	width: 8px;
	height: 8px;
	border-top: 3px solid #1c56a1;
	border-right: 3px solid #1c56a1;
	border-left: none;
	border-bottom: none;
	position: absolute;
	top: 45%;
	margin-top: -5px;
	transform: rotate(-45deg);
	right: 16px;
}

.search_agn a.ac_show::before {
	content: "";
	background: url(/include/ib/search/img/letter-x.png) no-repeat;
	background-size: 15px 15px;
	width: 15px;
	height: 15px;
}

@media screen and (min-width: 641px) {
	#oneway #searchBox .content {
		display: none;
		position: static;
		width: auto;
		margin: 10px 0;
		padding: 12px 20px 20px;
		border: 1px solid #ccc;
		border-radius: 10px;
		background: #F5F5F5;
		box-sizing: content-box;
	}

	.show_sp {
		display: none;
	}

	#pageName h2 span.arrow_01 {
		font-size: 24px;
		position: relative;
		margin-right: 30px;
		padding-right: 0;
	}
}

/* .content .general */
#oneway #searchBox .content .regular {
	overflow: hidden;
	position: relative;
}

#oneway #searchBox .content .regular dl+dl {
	margin: 10px 0 0;
}

#oneway #searchBox .content .regular dl {
	position: relative;
}

#oneway #searchBox .content .regular dl dt {
	padding: 10px 0 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
	background: none;
	float: none;
	position: absolute;
	z-index: 1;
	left: 10px;
}

#oneway #searchBox .content .regular dl.place {
	margin-top: 15px;
	position: relative;
}

#oneway #searchBox .content .regular dl.place::before,
#oneway #searchBox .content .regular dl.place::after {
	display: none;
}

#oneway #searchBox .content .regular dl.place dd {
	width: 100%;
	position: relative;
}

#oneway #searchBox .content .regular dl.place dd input[type="text"]:focus {
	outline: 0;
}

#searchBox .content .regular #btn-place {
	position: absolute;
	top: 48px;
	right: 20px;
	width: 30px;
	height: 30px;
	background-size: 30px auto;
	background-image: url(/include/ib/common/img/btn_switch01.png);
	background-repeat: no-repeat;
	cursor: pointer;
}

#oneway #searchBox .content .regular dl.date {
	margin-top: 10px;
}

#oneway #searchBox .content .regular dl.date dd {
	width: 100%;
}

#oneway #searchBox .content .regular dl.date dd .icoCalender {
	position: absolute;
	top: 6px;
	right: 8px;
	width: 17px;
	height: 17px;
	content: '';
	background: url(../../common/img/btn_date02.png) no-repeat 0 0;
	background-size: 17px;
}

#oneway #searchBox .content .regular dl.gender {
	float: left;
	width: 48%;
	padding: 0 0 10px;
}

#oneway #searchBox .content .regular dl.gender::after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 7px 5px 0 5px;
	border-color: #999 transparent transparent transparent;
	position: absolute;
	top: 55%;
	margin-top: -5px;
	right: 10px;
}

#oneway #searchBox .content .regular dl.gender+.gender {
	float: right;
	margin: 0;
}

#oneway #searchBox .content .regular dd select {
	display: block;
	width: 100%;
	height: 40px;
	padding: 6px 10px 4px 100px;
	border: none;
	border-radius: 30px;
	background: #fff;
	outline: none;
	font-size: 13px;
	line-height: 1.5;
	box-sizing: border-box;
}

@media screen and (min-width: 641px) {
	#oneway #searchBox .content .regular {
		margin: 0 0 17px;
	}

	#oneway #searchBox .content .regular dl {
		float: left;
	}

	#oneway #searchBox .content .regular dl+dl {
		margin: 0;
	}

	#oneway #searchBox .content .regular dl.place {
		margin: 0;
		width: 247px;
		padding-right: 50px;
	}

	#oneway #searchBox .content .regular dl.place+.place {
		padding-right: 10px;
	}

	#oneway #searchBox .content .regular dl.place::before,
	#oneway #searchBox .content .regular dl.place::after {
		display: block;
	}

	#oneway #searchBox .content .regular dl.place::before {
		top: 32px;
		right: 18px;
	}

	#oneway #searchBox .content .regular dl.place::after {
		top: 28px;
		right: 10px;
	}

	#searchBox .content .regular #btn-place {
		position: absolute;
		top: 5px;
		right: 670px;
		width: 30px;
		height: 30px;
		background-size: 30px auto;
		transform: rotateZ(90deg);
	}

	#oneway #searchBox .content .regular dl.date {
		margin: 0;
		width: 177px;
		padding-right: 10px;
	}

	#oneway #searchBox .content .regular dl.gender {
		width: 100px;
		padding: 0;
	}

	#oneway #searchBox .content .regular dl.gender::after {
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 7px 5px 0 5px;
		border-color: #999 transparent transparent transparent;
		position: absolute;
		top: 55%;
		margin-top: -5px;
		right: 10px;
	}

	#oneway #searchBox .content .regular dl dt {
		color: #2F3232;
		font-size: 13px;
		float: none;
	}

	#oneway #searchBox .content .regular dd select {
		padding: 6px 10px 4px 60px;
	}
}

/* .content .option */
#oneway #searchBox .content .option-search {
	margin: 0 0 15px;
	padding: 10px;
	border-radius: 15px;
	background: #fff;
}

#oneway #searchBox .content .option-search .option-header {
	margin: 0;
}

#oneway #searchBox .content .option-search p {
	margin: 10px 0 3px;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
}

#oneway #searchBox .content .option-search #content-option div {
	padding: 0 10px;
}

#oneway #searchBox .content .option-search #content-option div .annotation {
	display: none;
}

#oneway #searchBox .content .option-search #content-option div ul .formCheck label {
	line-height: 1.5;
}

#oneway #searchBox .content .option-search #content-option div ul p {
	margin: 0 0 5px 20px;
	color: #707070;
	font-weight: normal;
	font-size: 11px;
	line-height: 1;
}

#oneway #searchBox .content .option-search #content-option div ul .formCheck label img {
	height: 18px;
	width: 20px;
	padding-bottom: 3px;
	display: inline-block;
}

#oneway #searchBox .content .option-search #content-option div ul .formCheck label img:first-child {
	margin-left: 5px;
}

#oneway #searchBox .content .option-search #content-option div ul .seat-4 label img:nth-child(1),
#oneway #searchBox .content .option-search #content-option div ul .seat-4 label img:nth-child(3),
#oneway #searchBox .content .option-search #content-option div ul .seat-3row label img:nth-child(1) {
	width: 15px;
}

@media screen and (max-width: 640px) {
	#oneway #searchBox .content .option-search #btn-option {
		margin: 10px 0 3px;
		padding: 10px 0 10px;
		border: solid 2px #1a54a2;
		font-size: 14px;
		font-weight: bold;
		line-height: 1.0;
		background: #1a54a2;
		height: inherit;
		text-align: center;
		color: #fff;
		display: block;
		text-decoration: none;
	}

	#oneway #searchBox .content .option-search #btn-option::after {
		content: '+';
		display: block;
		color: #fff;
		position: absolute;
		top: 4px;
		right: 10px;
		font-size: 195%;
	}

	#oneway #searchBox .content .option-search #btn-option.ac_open::after {
		content: '-';
		display: block;
		color: #fff;
		position: absolute;
		top: 1px;
		right: 10px;
		font-size: 195%;
	}

	/*
    #content-option{
        display: none;
    }
*/
}

#oneway #searchBox .content .option-search ul li+li {
	margin: 2px 0 0;
}

@media screen and (min-width: 641px) {
	#oneway #searchBox .content .option-search {
		margin: 0 0 10px;
		padding: 0 20px 15px;

	}

	#oneway #searchBox .content .option-search #content-option {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	#oneway #searchBox .content .option-search .option-header {
		margin-top: 10px;
		width: 100%;
	}

	#oneway #searchBox .content .option-search #content-option div {
		width: 24%;
		padding: 0;
		position: relative;
	}

	#oneway #searchBox .content .option-search #content-option div .title {
		display: inline-block;
		cursor: pointer;
	}

	#oneway #searchBox .content .option-search #content-option div .title::after {
		content: '?';
		margin-left: 5px;
		padding: 0px 4px;
		color: #fff;
		background: #1C5098;
		border-radius: 50%;
		font-size: 15px;
		font-weight: bold;
		font-family: Arial, Helvetica, sans-serif;
	}

	#oneway #searchBox .content .option-search #content-option div .annotation {
		min-width: 450px;
		display: none;
		font-weight: normal;
		position: absolute;
		background: #e7f0fb;
		padding: 10px;
		border: 2px solid #1C5098;
		border-radius: 10px;
		top: 30px;
		left: 20px;
		z-index: 10;
	}

	#oneway #searchBox .content .option-search #content-option div .annotation p.subtitle {
		font-weight: bold;
	}

	#oneway #searchBox .content .option-search #content-option div .annotation p {
		font-weight: normal;
	}

	#oneway #searchBox .content .option-search #content-option div .annotation span {
		display: block;
		color: #1C5098;
		font-weight: bold;
	}

	#oneway #searchBox .content .option-search #content-option div .title:hover+.annotation {
		display: block;
	}

	/*
	#oneway #searchBox .content .option-search .head {
		color: #1a54a2;
		background: #f6f6f6;
		border-bottom: 2px solid #dadada;
		margin: 0 -30px 20px;
		padding: 5px 0 10px 20px;
		font-size: 18px;
		height: 20px;
	}#oneway #searchBox .content .all .head {
		background: #f6f6f6 url(../../common/img/ico_plus01.gif)  no-repeat 890px 9px;
	}
	#oneway #searchBox .content .option-search .box {
		padding-bottom: 20px;
	}
	#oneway #searchBox .content .option-search .all .box {
		margin-bottom: 10px;
	}
	#oneway #searchBox .content .option-search .box p {
		margin: 0 0 5px;
		padding: 0;
		border-top: none;
		border-bottom: solid 2px #1a54a2;
		color: #1a54a2;
	}
	#oneway #searchBox .content .option-search p:hover {
		cursor: pointer;
	}
	#oneway #searchBox .content .option-search ul {
		margin: 0 0 10px;
		overflow: hidden;
	}
	#oneway #searchBox .content .option-search ul li {
		float: left;
		width: 16.6%;
		margin: 5px 5px 0 0;
	}
	#oneway #searchBox .content .option-search .box-col3 li {width:32.7%;}
	#oneway #searchBox .content .option-search .box-col4 li {width: 24.4%;}
	#oneway #searchBox .content .option-search ul li + li {
		margin: 5px 5px 0 0;
	}
*/
}

/* .content .btnWrap */
#oneway #searchBox .btnWrap {
	position: fixed;
	z-index: 1;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
	background-color: rgba(0, 0, 0, 0.5);
}

#oneway #searchBox .btnWrap button {
	display: block;
	width: 90%;
	margin: 5px auto;
	padding: 6px 0 5px;
	border-radius: 20px;
	outline: none;
	box-shadow: none;
	color: #1C5098;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.4;
	cursor: pointer;
	text-decoration: none;
	background: #FFCA00;
	border: 2px #1C5098 solid;
}

@media screen and (min-width: 641px) {
	#oneway #searchBox .btnWrap {
		position: relative;
		width: 300px;
		margin: 0 auto;
		background: none;
	}

	#oneway #searchBox .btnWrap button {
		width: 100%;
		margin: 0;
	}

	#oneway #searchBox .btnWrap span {
		background-size: 18px auto;
	}
}

/* .count */
#oneway #searchBox .count {
	padding: 6px 15px 5px;
	border-bottom: solid 1px #c3c3c3;
	font-size: 12px;
	line-height: 1.5;
}

#oneway #searchBox .count span {
	color: #1a54a2;
	font-weight: bold;
}

@media screen and (min-width: 641px) {
	#oneway #searchBox .count {
		padding: 7px 15px 6px;
		background: #fff;
		border: solid 1px #dadada;
		border-width: 0 1px 1px;
		font-size: 13px;
		text-align: center;
		line-height: 2;
	}

	#oneway #searchBox .count span {
		font-size: 18px;
		line-height: 1.5;
	}
}

/* #meta
----------------------- */
@media screen and (min-width: 641px) {
	#oneway #meta {
		margin: 0 0 20px;
	}

	#metaIn {
		float: right;
		width: 340px;
	}

	#metaIn .pagerCmn01 {
		text-align: right;
	}
}

/* .howto */
#oneway #meta .howto {
	padding: 10px 15px;
	border-bottom: solid 3px #1C5098;
	display: block;
}

#oneway #meta .howto .btnHowto span {
	display: inline-block;
	width: 23px;
	height: 23px;
	margin: -3px 9px -2px 0;
	border: solid 1px #08264d;
	border-radius: 25px;
	color: #08264d;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	line-height: 1.6;
}

#oneway #meta .howto .imgHowto {
	display: none;
	position: absolute;
	top: 50px;
	left: 0;
	width: 100%;
	padding: 15px;
	box-sizing: border-box;
	z-index: 500;
}

#oneway #meta .howto .btnHowto::after {
	display: none;
}

#oneway #meta .howto .imgHowto .img {
	padding: 24px;
	border: solid 1px #000;
	border-width: 1px 1px 0;
	border-radius: 3px 3px 0 0;
	background: #fff;
}

#oneway #meta .howto .imgHowto .close {
	padding: 15px;
	border: solid 1px #000;
	border-width: 0 1px 1px;
	border-radius: 0 0 3px 3px;
	background: #e7f0fb;
}

#oneway #meta .howto .modal-click a {
	margin-right: 10px;
	color: #1C5098;
}

#oneway #meta .howto .modal-click a::before {
	content: '?';
	margin-right: 5px;
	padding: 0px 4px;
	color: #fff;
	background: #1C5098;
	border-radius: 50%;
	font-size: 15px;
	font-weight: bold;
	font-family: Arial, Helvetica, sans-serif;
}

#oneway #meta .howto .availablility {
	padding-left: 20px;
	background-image: url(/include/ib/img/icon-seat.svg);
	background-repeat: no-repeat;
	background-size: 16px 18px;
	color: #1C5098;
}

#oneway #meta .howto .availablility p span {
	color: #ff0000;
}

#oneway #meta .howto .modal-click .annotation {
	display: none;
}

.viewSP {
	display: block;
}

.viewPC {
	display: none;
}

@media screen and (min-width: 641px) {
	.viewSP {
		display: none;
	}

	.viewPC {
		display: block;
	}

	#oneway #meta .howto {
		padding: 10px 0;
		display: flex;
		justify-content: space-between;
	}

	#oneway #meta .howto .modal-click {
		position: relative;
	}

	#oneway #meta .howto .modal-click a {
		cursor: pointer;
	}

	#oneway #meta .howto .modal-click .annotation {
		display: none;
		border: 3px #1C5098 solid;
		border-radius: 10px;
		position: absolute;
		top: 40px;
		left: 20px;
		z-index: 101;
	}

	#oneway #meta .howto .modal-click a:hover+.annotation {
		display: block;
	}

	#oneway #meta .howto .modal-click div.annotation {
		min-width: 500px;
		padding: 10px;
		background: #fff;
	}

	#oneway #meta .howto .modal-click div.annotation .title {
		font-weight: bold;
		color: #1C5098;
		font-size: 18px;
	}

	#oneway #meta .howto .modal-click div.annotation p {
		margin: 5px 0;
	}

	#oneway #meta .howto .modal-click div.annotation p span {
		display: block;
		font-weight: bold;
		color: #1C5098;
	}

	#oneway #meta .howto .modal-click img.annotation {
		width: 800px;
		height: auto;
	}

	#oneway #meta .howto {
		/*
		float: left;
		width: 240px;
		padding: 25px 0 0;
		border-bottom: none;
*/
	}

	#oneway #meta .howto .btnHowto span {
		display: none;
	}

	#oneway #meta .howto .btnHowto::after {
		display: block;
		top: 18px;
		right: 13px;
	}

	#oneway #meta .howto .imgHowto {
		top: 520px;
		left: auto;
		width: 1000px;
		margin: 0 auto;
		padding: 0;
	}

	#oneway #meta .howto .imgHowto .img {
		padding: 50px;
	}

	#oneway #meta .howto .imgHowto .close {
		padding: 15px;
	}

	#oneway #meta .howto .imgHowto .close p {
		width: 300px;
		margin: 0 auto;
	}
}

/* .sort */
.search-head .contentC {
	text-align: center;
}

.search-head .sort {
	padding: 0 15px 15px;
}

.search-head .sort dt {
	position: relative;
	margin: 0 0 3px;
	padding: 0 0 0 13px;
	font-size: 12px;
	font-weight: bold;
	line-height: 30px;
	display: inline-block;
}

.search-head .sort dd {
	display: inline-block;
}

.search-head .sort dt::before {
	position: absolute;
	top: 10px;
	left: 0;
	width: 0;
	height: 0;
	content: '';
	border-style: solid;
	border-width: 0 4px 4px 4px;
	border-color: transparent transparent #1a54a2;
}

.search-head .sort dt::after {
	position: absolute;
	top: 15px;
	left: 0;
	width: 0;
	height: 0;
	content: '';
	border-style: solid;
	border-width: 4px 4px 0 4px;
	border-color: #1a54a2 transparent transparent;
}

@media screen and (min-width: 641px) {
	.search-head .contentC {
		text-align: left;
	}

	.search-head .sort {
		margin: 10px 0 0;
		padding: 0;
		overflow: hidden;
	}

	.search-head .sort dt {
		float: left;
		width: 84px;
		padding: 15px 0 0 16px;
		font-size: 14px;
		line-height: 1.1;
	}

	.search-head .sort dt::before {
		top: 16px;
		border-width: 0 6px 6px 6px;
	}

	.search-head .sort dt::after {
		top: 24px;
		border-width: 6px 6px 0 6px;
	}

	.search-head .sort dd {
		float: right;
		width: 240px;
	}
}

/* .listBus
----------------------- */
#oneway .listBus {
	padding: 15px 0;
	position: relative;
	border-bottom: #1C5098 5px solid;
	background: #fff;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#oneway .listBus+.listBus {
	margin: 15px 0 0;
}

@media screen and (min-width: 641px) {
	#oneway .listBus {
		margin: 0 0 18px;
	}

	#oneway .listBus+.listBus {
		margin: 0 0 18px;
	}
}

/* header */
#oneway .listBus header {
	width: 65%;
}

#oneway .listBus header .time {
	width: 55px;
	margin-right: 5px;
	padding: 3px 0 5px 14px;
	font-size: 11px;
	font-weight: bold;
	text-align: center;
	vertical-align: bottom;
	line-height: 1.1;
	position: absolute;
	left: 5px;
	top: 5px;
}

#oneway .listBus header .time.night {
	background: #1a54a2 url(../img/ico_time01.png) no-repeat;
	background-size: 15px auto;
	background-position: 3px 50%;
	color: #fff;
}

#oneway .listBus header .time.day {
	background: #ffba00 url(../img/ico_time02.png) no-repeat;
	background-size: 15px auto;
	background-position: 3px 50%;
	color: #fff;
}

#oneway .listBus header h1 {
	display: table-cell;
	height: 35px;
	padding: 0 0 0 12px;
	vertical-align: middle;
	line-height: 1.2;
}

#oneway .listBus header h1 a {
	color: #1a54a2;
}

@media screen and (min-width: 641px) {
	#oneway .listBus {
		display: block;
	}

	#oneway .listBus header {
		width: auto;
		margin-bottom: 20px;
		display: flex;
		align-items: center;
	}

	#oneway .listBus header:after {
		clear: both;
	}

	#oneway .listBus header .time {
		display: block;
		height: 27px;
		padding: 7px 13px 0 30px;
		font-size: 14px;
		text-align: center;
		line-height: 1.5;
		position: relative;
	}

	#oneway .listBus header .time.night {
		background-position: 8px 50%;
		background-size: 19px auto;
		white-space: nowrap;
	}

	#oneway .listBus header .time.day {
		background-position: 7px 50%;
		background-size: 19px auto;
		white-space: nowrap;
	}

	#oneway .listBus header h1 {
		display: block;
		height: auto;
		margin-left: 5px;
		padding: 4px 0 2px;
		font-size: 18px;
		line-height: 1.2;
	}
}

/* .detail */
#oneway .listBus .detail {
	padding: 15px 15px 0px;
}

#oneway .listBus .pic {
	width: 35%;
	margin: 30px 0 0 0;
	position: relative;
}

#oneway .listBus .detail-body {
	width: 96%;
	margin: 0 auto;
}

@media screen and (min-width: 641px) {
	#oneway .listBus .detail-body {
		width: 100%;
		display: flex;
		justify-content: space-between;
	}

	#oneway .listBus .detail {
		padding: 0;

	}

	#oneway .listBus .pic {
		float: left;
		width: 178px;
		height: 135px;
		margin: 0 22px 3px 0;
		position: relative;
	}

	#oneway .listBus .detail .txt {
		float: right;
		width: 570px;
	}
}

/* .schedule */
#oneway .listBus .schedule ol {
	overflow: hidden;
	position: relative;
}

#oneway .listBus .schedule .arrival {
	padding-left: 30px;
}

#oneway .listBus .schedule ol li {
	float: left;
	margin: 0px 5px 10px 0;
	padding: 3px 5px;
}

#oneway .listBus .schedule ol.departure li {
	background: #FFFBED;
	border: 1px #FFA300 solid;
}

#oneway .listBus .schedule ol.arrival li {
	background: #EDF2FA;
	border: 1px #1A54A2 solid;
}

#oneway .listBus .schedule ol.departure li:last-child {
	margin-right: 30px;
}

#oneway .listBus .schedule ol.arrival li:last-child {
	margin-right: 0;
}

#oneway .listBus .schedule ol li.selected {
	background: #414347;
}

#oneway .listBus .schedule ol li.hidden {
	display: none;
}

#oneway .listBus .schedule ol li.arwCmn01::before {
	top: 20px;
	right: -19px;
}

#oneway .listBus .schedule ol li.arwCmn01::after {
	top: 16px;
	right: -27px;
}

#oneway .listBus .schedule ol li.arwCmn02::after {
	top: 10px;
	right: -13px;
}

#oneway .listBus .schedule ol li .place {
	font-size: 11px;
	font-weight: bold;
	line-height: 1.3;
	text-align: center;
}

#oneway .listBus .schedule ol.departure .place {
	color: #fc8a3d;
}

#oneway .listBus .schedule ol.arrival .place {
	color: #1a54a2;
}

/*
#oneway .listBus .schedule ol.departure li .place {
	color: #1a54a2;
}
#oneway .listBus .schedule ol.arrival li .place {
	color: #fc8a3d;
}
*/
#oneway .listBus .schedule ol.departure li.selected .place {
	color: #ffba00;
}

#oneway .listBus .schedule ol.arrival li.selected .place {
	color: #508ad8;
}

#oneway .listBus .schedule ol li .time {
	font-size: 10px;
	line-height: 1.3;
	text-align: center;
}

#oneway .listBus .schedule ol li.selected .time {
	color: #fff;
}

#oneway .listBus .schedule .arwCmn02::after {
	display: none;
}

#oneway .listBus .schedule ol.arrival::before {
	content: '';
	width: 20px;
	height: 20px;
	background-image: url(/include/ib/img/icon-arrow-gy.svg);
	background-repeat: no-repeat;
	background-size: 20px;
	position: absolute;
	left: 5px;
	top: 8px;
}

@media screen and (min-width: 641px) {
	#oneway .listBus .schedule {
		padding: 0 0 5px;
	}

	#oneway .listBus .schedule .arrival {
		padding-left: 40px;
	}

	#oneway .listBus .schedule ol li {
		margin: 0 5px 5px 0;
		padding: 5px 15px 4px;
		letter-spacing: -.5em;
		text-align: center;
	}

	#oneway .listBus .schedule ol.departure li:last-child {
		margin-right: 35px;
	}

	#oneway .listBus .schedule ol li.arwCmn01::before {
		top: 12px;
		right: -24px;
	}

	#oneway .listBus .schedule ol li.arwCmn01::after {
		top: 8px;
		right: -32px;
	}

	#oneway .listBus .schedule ol li.arwCmn02::after {
		top: 10px;
		right: -15px;
	}

	#oneway .listBus .schedule ol li p {
		display: block;
		letter-spacing: .05em;
	}

	#oneway .listBus .schedule ol li .place {
		margin: 0 5px 0 0;
		font-size: 14px;
		line-height: 1.3;
	}

	#oneway .listBus .schedule ol li .time {
		font-size: 12px;
		line-height: 1.5;
	}

	#oneway .listBus .schedule ol.arrival::before {
		content: '';
		width: 30px;
		height: 30px;
		background-size: 30px;
		left: 0px;
		top: 10px;
	}
}

/* .btnSchedule */
#oneway .listBus .btnSchedule {
	margin: 0 0 15px;
	padding: 9px 0 8px;
	border-bottom: 2px solid #ccc;
	border-radius: 3px;
	background-color: #08264d;
	color: #fff;
	font-size: 12px;
	text-align: center;
	text-decoration: underline;
	line-height: 1.5;
}

@media screen and (min-width: 641px) {
	#oneway .listBus .btnSchedule {
		margin: 7px 0 0;
		padding: 4px 0 3px;
		border-bottom: 2px solid #020d1c;
		color: #fff;
		font-size: 14px;
	}

	#oneway .listBus .btnSchedule:hover {
		text-decoration: none;
		opacity: .8;
		cursor: pointer;
	}
}

/* .option */
#oneway .listBus .option {
	margin: 0 -2px 0 0;
	overflow: hidden;
}

#oneway .listBus .option li {
	float: left;
	width: 27px;
	margin: 0 2px 2px 0;
}

@media screen and (min-width: 641px) {
	#oneway .listBus .option {
		margin: 0 0 10px;
	}

	#oneway .listBus .option li {
		width: 38px;
		margin: 0 3px 3px 0;
	}
}

/* .status */
#oneway .listBus .status {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}

#oneway .listBus .status div {
	width: 70%;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: center;
}

#oneway .listBus .status dl {
	width: 50%;
	overflow: hidden;
}

#oneway .listBus .status dl dt {
	padding: 5px 0 0 0;
	line-height: 1.5;
	color: #1C5098;
	font-size: 10px;
	text-align: center;
}

#oneway .listBus .status dl dd+dt {
	padding-left: 25px;
}

#oneway .listBus .status dl dd {
	color: #f1240e;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
	letter-spacing: 0;
}

#oneway .listBus .status dl dd span {
	font-size: 14px;
	line-height: 1.8;
}

#oneway .listBus .status .btn {
	width: 30%;
}

#oneway .listBus .status .btn a {
	display: block;
	width: 100%;
	padding: 6px 0 5px;
	border-radius: 30px;
	outline: none;
	box-shadow: none;
	color: #1C5098;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	cursor: pointer;
	text-decoration: none;
	background: #FFCA00;
	border: 2px #1C5098 solid;
	text-align: center;
	position: relative;
	box-sizing: border-box;
}

#oneway .listBus .status .btn a::after {
	content: "";
	width: 7px;
	height: 7px;
	border-top: 3px solid #1C5098;
	border-right: 3px solid #1C5098;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -5px;
	transform: rotate(45deg);
}

@media screen and (min-width: 641px) {
	#oneway .listBus .status {
		display: block;
	}

	#oneway .listBus .status div {
		width: 100%;
	}

	#oneway .listBus .status dl {
		width: auto;
		padding: 0;
		text-align: center;
		margin: 0 auto;
	}

	#oneway .listBus .status dl dt {
		float: none;
		padding: 0;
		font-size: 13px;
	}

	#oneway .listBus .status dl:first-child {
		padding-right: 5px;
	}

	#oneway .listBus .status dl dd+dt {
		padding-left: 0;
	}

	#oneway .listBus .status dl dd {
		float: none;
		margin: 0 0 10px;
		line-height: 1.5;
		font-size: 30px;
	}

	#oneway .listBus .status dl dd span {
		line-height: 2.5;
	}

	#oneway .listBus .status .btn {
		width: 170px;
		margin: 0 auto;
	}

	#oneway .listBus .status .btn a {
		padding: 10px 20px 8px;
		border-bottom: solid 2px #403208;
		color: #414347;
		font-size: 20px;
		font-weight: bold;
		text-decoration: none;
	}

	#oneway .listBus .status .btn a::after {
		right: 20px;
	}

	#oneway .listBus .status .btn a:hover {
		opacity: .8;
	}
}


/* .box-calendar（カレンダー）
--------------------------- */
#oneway .box-calendar {
	background: #f3f3f3;
	border-bottom: solid 1px #1a54a2;
	border-top: solid 1px #1a54a2;
}

#oneway .box-calendar input#sp-btn-cal {
	display: none;
}

#oneway .box-calendar label#sp-btn-cal-label {
	position: relative;
	display: block;
	padding: 7px;
	color: #1a54a2;
	font-weight: bold;
	font-size: 130%;
	text-align: center;
}

#oneway .box-calendar label#sp-btn-cal-label:after {
	position: absolute;
	top: 50%;
	right: 10px;
	display: block;
	content: '';
	width: 8px;
	height: 8px;
	margin-top: -7px;
	border-top: 1px solid #888;
	border-right: 1px solid #888;
	-webkit-transform: rotate(135deg);
	transform: rotate(135deg);
}

#oneway .box-calendar .wrap-calendar {
	height: 0;
	overflow: hidden;
}

#oneway .box-calendar input#sp-btn-cal:checked+label#sp-btn-cal-label:after {
	margin-top: -3px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

#oneway .box-calendar input#sp-btn-cal:checked~.wrap-calendar {
	height: auto;
	padding: 0 2px;
}

#oneway .box-calendar .btn-month {
	overflow: hidden;
	width: 100%;
	margin-bottom: 5px;
}

#oneway .box-calendar .btn-month .btn-previous {
	float: left;
	margin-left: 2px;
}

#oneway .box-calendar .btn-month .btn-next {
	float: right;
	margin-right: 2px;
}

#oneway .box-calendar .btn-month li a {
	display: inline-block;
	color: #1a54a2;
	background: #FFF;
	border-radius: 4px;
	line-height: 1;
	font-size: 100%;
	text-decoration: none;
	padding: 5px;
	border: solid 2px #1a54a2;
}

#oneway .box-calendar .tbl-cheapest {
	width: 100%;
	table-layout: fixed;
	background: #FFF;
}

#oneway .box-calendar .tbl-cheapest th {
	text-align: center;
	background: #f3f3f3;
	color: #1a54a2;
	font-weight: normal;
}

#oneway .box-calendar .tbl-cheapest td {
	text-align: center;
	border: solid 1px #f3f3f3;
}

#oneway .box-calendar .tbl-cheapest td a {
	display: block;
	text-decoration: none;
}

#oneway .box-calendar .tbl-cheapest td .wrap-day {
	display: block;
	text-decoration: none;
	line-height: 1;
	font-size: 140%;
	padding: 10px 0 20px;
}

#oneway .box-calendar .tbl-cheapest td.bestday a {
	background: #ffed9b;
}

#oneway .box-calendar .tbl-cheapest .txt-day {
	display: block;
}

#oneway .box-calendar .tbl-cheapest .txt-price {
	font-size: 54%;
	color: #e90000;
	text-decoration: underline;
}

#oneway .box-calendar .tbl-cheapest .txt-price .yen {
	display: none;
}

#oneway .box-calendar .tbl-cheapest .no-plan .txt-price {
	color: #414347;
	text-decoration: none;
}

#oneway .box-calendar .txt-note {
	font-size: 90%;
	line-height: 1.4;
	margin: 7px 10px 10px;
}

#oneway .box-calendar .txt-note .txt-attention {
	color: #e90000;
	font-weight: bold;
}

#oneway .box-calendar .txt-note .clr-bestday {
	display: inline-block;
	background: #ffed9b;
	width: 1em;
	margin-right: 5px;
	height: 1em;
	border: solid 1px #797979;
	vertical-align: top;
}

/* PCの場合 */
@media screen and (min-width: 641px) {
	#oneway .box-calendar {
		position: relative;
		border: solid 1px #1a54a2;
		padding: 15px;
	}

	#oneway .box-calendar input#sp-btn-cal {
		display: none;
	}

	#oneway .box-calendar label#sp-btn-cal-label {
		position: relative;
		display: block;
		padding: 7px;
		color: #1a54a2;
		font-weight: bold;
		font-size: 190%;
		text-align: center;
	}

	#oneway .box-calendar label#sp-btn-cal-label:after {
		border: none;
		width: inherit;
		height: inherit;
		top: inherit;
		right: inherit;
		position: none;
		margin: 0;
		-webkit-transform: none;
		transform: none;
	}

	#oneway .box-calendar .wrap-calendar {
		height: inherit;
	}

	#oneway .box-calendar input#sp-btn-cal:checked+label#sp-btn-cal-label:after {
		margin: 0;
		-webkit-transform: none;
		transform: none;
	}

	#oneway .box-calendar input#sp-btn-cal:checked~.wrap-calendar {
		height: inherit;
		padding: 0;
	}

	#oneway .box-calendar .btn-month li {
		margin: 0;
		float: none;
		position: absolute;
		top: 17px;
	}

	#oneway .box-calendar .btn-month .btn-previous {
		left: 5px;
	}

	#oneway .box-calendar .btn-month .btn-next {
		right: 5px;
	}

	#oneway .box-calendar .btn-month li a {
		padding: 10px;
		font-size: 130%;
	}

	#oneway .box-calendar .btn-month li a:hover {
		background: #1a54a2;
		color: #FFF;
	}

	#oneway .box-calendar .btn-month li a i {
		width: 8px;
		height: 8px;
		border-top: 3px solid #1a54a2;
		transform: rotate(45deg);
		display: inline-block;
		vertical-align: top;
		margin-top: 4px;
		border-right: 3px solid #1a54a2;
	}

	#oneway .box-calendar .btn-month li a:hover i {
		border-right: 3px solid #FFF;
		border-top: 3px solid #FFF;
	}

	#oneway .box-calendar .btn-month li a .ico-arrow-l {
		margin-right: 4px;
		transform: rotate(-135deg);
	}

	#oneway .box-calendar .btn-month li a .ico-arrow-r {
		margin-left: 4px;
		transform: rotate(45deg);
	}

	#oneway .box-calendar .tbl-cheapest td {
		border: solid 2px #f3f3f3;
	}

	#oneway .box-calendar .tbl-cheapest td .wrap-day {
		padding: 8px 0 10px;
	}

	#oneway .box-calendar .tbl-cheapest td a:hover {
		background: #fdcb72;
	}

	#oneway .box-calendar .tbl-cheapest .txt-day {
		margin-bottom: 5px;
	}

	#oneway .box-calendar .tbl-cheapest .txt-price {
		font-size: 100%;
		font-weight: bold;
	}

	#oneway .box-calendar .tbl-cheapest .no-plan .txt-price {
		font-size: 70%;
	}

	#oneway .box-calendar .tbl-cheapest .no-plan a:hover {
		background: none;
	}

	#oneway .box-calendar .tbl-cheapest .txt-price .yen {
		display: inline;
	}

	#oneway .box-calendar .txt-note .txt-attention {
		font-size: 110%;
	}
}








/* #intro
	----------------------- */
#confirm1 #intro table {
	width: 50%;
	border-top: solid 1px #c2c2c2;
}

#confirm1 #intro table:nth-of-type(1) {
	width: 50%;
	float: left;
	border-right: 1px solid #e7f0fb;
}

#confirm1 #intro table:nth-of-type(2) {
	width: 50%;
	float: right;
}

#confirm1 #intro table:nth-of-type(3) {
	width: 100%;
}

#confirm1 #intro table th,
#confirm1 #intro table td {
	display: block;
	border-bottom: solid 1px #c2c2c2;
	vertical-align: top;
}

#confirm1 #intro table th {
	line-height: 1.6;
	padding: 11px 15px 10px;
	background: #414347;
	color: #fff;
	font-weight: bold;
	font-size: 15px;
}

#confirm1 #intro table td {
	line-height: 1.5;
	padding: 17px 15px 16px;
	background: #fff;
	font-size: 13px;
}

@media screen and (min-width: 641px) {
	#confirm1 #intro table {
		width: 490px;
		border-top: none;
	}

	#confirm1 #intro table:nth-of-type(1) {
		float: left;
		margin-bottom: 8px;
	}

	#confirm1 #intro table:nth-of-type(2) {
		float: right;
		margin-bottom: 8px;
	}

	#confirm1 #intro table:nth-of-type(3) {
		width: 100%;
	}

	#confirm1 #intro table:nth-of-type(3) td {
		text-align: left;
	}

	#confirm1 #intro table th,
	#confirm1 #intro table td {
		display: table-cell;
	}

	#confirm1 #intro table th {
		width: 200px;
		line-height: 1.5;
		padding: 15px 19px 14px;
		font-size: 16px;
	}

	#confirm1 #intro table td {
		padding: 17px 19px 16px;
	}
}

#confirm1 td.price {
	color: #f1240e;
}

#confirm1 section:not(#intro) {
	margin: 20px 0;
}

#confirm1 #policy td {
	font-weight: bold;
	text-align: center;
}

#confirm1 #platform th,
#confirm1 #subtotal th {
	text-align: center;
}

@media screen and (min-width: 641px) {
	#confirm1 section:not(#intro) {
		margin-top: 30px;
	}

	#confirm1 #policy th {
		width: 460px;
	}
}

/* #info
----------------------- */
#confirm1 #info {
	margin-bottom: 30px;
}

#confirm1 #info h1 {
	display: block;
	padding: 11px 0;
	background-color: #f1240e;
	color: #fff;
	font-size: 16px;
	text-align: center;
}

#confirm1 #info .artBox {
	height: 100px;
	overflow: scroll;
	margin: 0 0 30px;
	padding: 25px 30px;
	border: 1px solid #c2c2c2;
	background-color: #fff;
}

#confirm1 #info header {
	margin-bottom: 16px;
	padding-bottom: 5px;
	border-bottom: 1px dotted #c2c2c2;
	font-weight: bold;
	font-size: 15px;
}

#confirm1 #info article {
	margin-bottom: 20px;
}

#confirm1 #info .accept {
	margin: auto;
	font-weight: bold;
	text-align: center;
}

#confirm1 #info label {
	display: block;
	margin-top: 3px;
	color: #f1240e;
	font-weight: bold;
	text-align: center;
}

@media screen and (min-width: 641px) {
	#confirm1 #info {
		margin-bottom: 40px;
	}

	#confirm1 #info h1 {
		padding: 15px 0;
	}

	#confirm1 #info .artBox {
		height: 100px;
	}

	#confirm1 #info article {
		margin-bottom: 15px;
	}
}

/* #singleBus　便詳細
=========================================== */
/* #intro
----------------------- */
#singleBus #intro {
	padding: 0 10 15px;
	border-top: solid 2px #ccc;
	background: #fff;
}

@media screen and (min-width: 641px) {
	#singleBus #intro {
		position: relative;
		min-height: 210px;
		margin: 0 0 40px;
		padding: 22px 22px 22px 248px;
		border: solid 2px #ccc;
		box-sizing: border-box;
	}
}

/* header */
#singleBus #intro header {
	display: table;
	width: 100%;
	margin: 0 auto 15px;
	padding: 15px;
	border-bottom: solid 1px #e5e5e5;
	border-spacing: 0;
	box-sizing: border-box;
}

#singleBus #intro>div,
#singleBus #intro>ul {
	padding: 0 15px;
}

#singleBus #intro>ul {
	padding-bottom: 15px;
}

#singleBus #intro header .time {
	display: table-cell;
	width: 55px;
	height: 32px;
	padding: 0 0 3px;
	font-size: 11px;
	font-weight: bold;
	text-align: center;
	vertical-align: bottom;
	line-height: 1.1;
}

#singleBus #intro header .time.night {
	background: #1a54a2 url(../img/ico_time01.png) no-repeat 50% 4px;
	background-size: 15px auto;
	color: #fff;
}

#singleBus #intro header .time.day {
	background: #ffba00 url(../img/ico_time02.png) no-repeat 50% 4px;
	background-size: 15px auto;
	color: #f1240e;
}

#singleBus #intro header h1 {
	display: table-cell;
	height: 35px;
	padding: 0 0 0 12px;
	vertical-align: middle;
}

@media screen and (min-width: 641px) {
	#singleBus #intro header {
		position: relative;
		display: block;
		width: auto;
		margin: 0 0 30px;
		padding: 0 0 0 123px;
		border-bottom: none;
	}

	#singleBus #intro header .time {
		position: absolute;
		top: 0;
		left: 0;
		display: block;
		width: 97px;
		height: 27px;
		padding: 7px 0 0 13px;
		font-size: 14px;
		text-align: center;
		line-height: 1.5;
	}

	#singleBus #intro header .time.night {
		background-position: 16px 50%;
		background-size: 19px auto;
	}

	#singleBus #intro header .time.day {
		background-position: 16px 50%;
		background-size: 19px auto;
	}

	#singleBus #intro header h1 {
		display: block;
		height: auto;
		padding: 4px 0 2px;
		font-size: 18px;
		line-height: 1.5;
	}

	#singleBus #intro>ul {
		padding: 0;
	}
}

/* .imgs */
#singleBus #intro .imgs {
	margin: 0 0 15px;
	padding-bottom: 15px;
	border-bottom: 1px solid #e5e5e5;
}

#singleBus #intro .imgs .pic {
	margin: 0 auto 15px;
	border: solid 2px #e7e7e7;
	max-width: 200px;
}

#singleBus #intro .imgs .seats {
	max-width: 240px;
	margin: 0 auto;
}

@media screen and (min-width: 641px) {
	#singleBus #intro .imgs {
		position: absolute;
		top: 22px;
		left: 22px;
		width: 200px;
		margin: 0;
	}

	#singleBus #intro .imgs .pic {
		border: solid 1px #e7e7e7;
	}
}

/* .schedule */
#singleBus #intro .schedule ol {
	overflow: hidden;
}

#singleBus #intro .schedule ol li {
	float: left;
	margin: 0 20px 10px 0;
	padding: 8px 10px 7px;
	background: #f2f2f2;
}

#singleBus #intro .schedule ol.departure li:last-child {
	margin-right: 30px;
}

#singleBus #intro .schedule ol.arrival li:last-child {
	margin-right: 0;
}

#singleBus #intro .schedule ol li.hidden {
	display: none;
}

#singleBus #intro .schedule ol li.arwCmn01::before {
	top: 20px;
	right: -19px;
}

#singleBus #intro .schedule ol li.arwCmn01::after {
	top: 16px;
	right: -27px;
}

#singleBus #intro .schedule ol li.arwCmn02::after {
	top: 20px;
	right: -13px;
}

#singleBus #intro .schedule ol li .place {
	font-size: 13px;
	font-weight: bold;
	line-height: 1.3;
	text-align: center;
}

#singleBus #intro .schedule ol.departure li .place {
	color: #fc8a3d;
}

#singleBus #intro .schedule ol.arrival li .place {
	color: #1a54a2;
}

#singleBus #intro .schedule ol li .time {
	font-size: 12px;
	line-height: 1.3;
}

#singleBus #intro .schedule ol li.selected .time {
	color: #fff;
}

@media screen and (min-width: 641px) {
	#singleBus #intro .schedule {
		padding: 0 0 5px;
	}

	#singleBus #intro .schedule ol {}

	#singleBus #intro .schedule ol li {
		margin: 0 25px 5px 0;
		padding: 5px 15px 4px;
		letter-spacing: -.5em;
	}

	#singleBus #intro .schedule ol.departure li:last-child {
		margin-right: 35px;
	}

	#singleBus #intro .schedule ol li.arwCmn01::before {
		top: 12px;
		right: -24px;
	}

	#singleBus #intro .schedule ol li.arwCmn01::after {
		top: 8px;
		right: -32px;
	}

	#singleBus #intro .schedule ol li.arwCmn02::after {
		top: 10px;
		right: -15px;
	}

	#singleBus #intro .schedule ol li p {
		display: inline-block;
		letter-spacing: .05em;
	}

	#singleBus #intro .schedule ol li .place {
		margin: 0 5px 0 0;
		font-size: 16px;
		line-height: 1.3;
	}

	#singleBus #intro .schedule ol li .time {
		font-size: 14px;
		line-height: 1.5;
	}
}

/* .option */
#singleBus #intro .option {
	margin: 0 -2px 0 0;
	overflow: hidden;
}

#singleBus #intro .option li {
	float: left;
	width: 27px;
	margin: 0 2px 2px 0;
}

@media screen and (min-width: 641px) {
	#singleBus #intro .option {
		margin: 22px 0 0;
	}

	#singleBus #intro .option li {
		width: 38px;
		margin: 0 3px 3px 0;
	}
}

/* #date
----------------------- */
#singleBus #date {
	padding: 15px;
	background: #414347;
}

#singleBus #date dt {
	padding: 0 0 5px;
	color: #fff;
	font-size: 13px;
	font-weight: bold;
	text-align: center;
	line-height: 1.3;
}

#singleBus #date dd input {
	/*padding-right: 35px;*/
	background: #fff url(../../common/img/btn_date02.png) no-repeat 95% 50%;
	background-size: 17px auto;
	color: #f1240e;
	font-weight: bold;
}

#singleBus #date .txt-notes {
	color: #fff;
}

@media screen and (min-width: 641px) {
	#singleBus #date {
		margin: 0 0 15px;
		padding: 17px;
		text-align: center;
	}

	#singleBus #date dt {
		display: inline-block;
		margin-right: 16px;
		padding: 0;
		text-align: left;
		line-height: 2;
	}

	#singleBus #date dd {
		display: inline-block;
		width: 207px;
	}

	#singleBus #date dd input {
		padding-right: 0;
		background: #fff url(../../common/img/btn_date02.png) no-repeat 95% 50%;
		background-size: 23px auto;
		font-weight: normal;
	}
}

#searchBox #content-search .regular .place input,
#searchBox #content-search .regular .date input {
	width: 100%;
	height: 38px;
	border: none;
	border-radius: 30px;
	padding: 0 35px 0 60px;
	box-sizing: border-box;
}

@media screen and (min-width: 641px) {
	#content-search .place input {
		width: 85%;
		height: 38px;
		padding-right: 15%;
		padding-left: 15px;
	}

	#searchBox #content-search .regular .place input,
	#searchBox #content-search .regular .date input {
		padding: 0 30px 0 57px;
	}
}

#content-search .place .letter_x {
	position: absolute;
	background: url(/include/ib/search/img/remove.png) no-repeat;
	background-size: 20px auto;
	width: 20px;
	height: 20px;
	top: 0;
	bottom: 0;
	right: 10px;
	margin: auto 0;
}

#content-search .date dd {
	float: right;
	width: 80%;
}

#content-search .date .input input {
	display: block;
	width: 100%;
	height: 40px;
	-webkit-appearance: none;
	appearance: none;
	padding: 6px 33px 4px 15px;
	border: none;
	border-radius: 30px;
	outline: none;
	font-size: 16px;
	line-height: 1.5;
	box-sizing: border-box;
	background: #fff url(../../common/img/btn_date01.png) no-repeat 90% 50%;
	background-size: 17px auto;
	cursor: pointer;
}

#content-search .date .input input:focus {
	cursor: auto;
}

#content-search .date .input input::-ms-clear {
	visibility: hidden
}

@media screen and (min-width: 640px) {
	#content-search .date dd {
		float: none;
		width: 100%;
	}

	#content-search .place .letter_x {
		right: 5px;
	}
}

/**********ボタン仮********/
#content-search .regular .btns {
	margin: 10px 0;
	display: flex;
	justify-content: space-between;
	clear: both;
}

#content-search .regular .btns #btn-before,
#content-search .regular .btns #btn-next {
	margin-top: 10px;
	padding: 2px 15px;
	background: #1a54a2;
	border-radius: 15px;
	color: #fff;
	cursor: pointer;
	font-size: 10px;
	position: relative;
}

#content-search .regular .btns #btn-before::before,
#content-search .regular .btns #btn-next::after {
	content: '';
	width: 0;
	height: 0;
	content: '';
	border-style: solid;
	position: absolute;
	top: 6px;
}

#content-search .regular .btns #btn-before::before {
	border-width: 4px 6px 4px 0;
	border-color: transparent #f0be05 transparent;
	left: 4px;
}

#content-search .regular .btns #btn-next::after {
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #f0be05;
	right: 4px;
}

@media screen and (min-width: 640px) {
	#content-search .regular .btns {
		display: none;
	}
}

.listBus .heart {
	border: none;
	background-color: transparent;
	width: 30px;
	height: 30px;
	background-image: url(/include/ib/img/icon-heart-ol.svg);
	background-size: 30px 30px;
	background-repeat: no-repeat;
	position: absolute;
	top: -28px;
	right: 0;
	cursor: pointer;
}

.listBus .activeheart {
	width: 30px;
	height: 30px;
	background-image: url(/include/ib/img/icon-heart-rd.svg);
	background-size: 30px 30px;
	background-repeat: no-repeat;
	position: absolute;
	top: -28px;
	right: 0;
}

.listBus .heart:focus {
	outline: 0;
}

@media screen and (min-width: 640px) {
	.listBus .heart {
		top: -10px;
	}

	.listBus .activeheart {
		top: -10px;
	}
}

/* #points
----------------------- */
#singleBus #points {
	padding: 15px 15px 20px;
	background: #fff;
}

#singleBus #points .boarding {
	margin: 0 0 15px;
}

#singleBus #points h2 {
	margin: 0 0 10px;
	padding: 0 0 5px;
	border-bottom: solid 2px #414347;
	font-weight: bold;
	line-height: 1.5;
}

#singleBus #points .boarding h2 {
	color: #fc8a3d;
}

#singleBus #points .dropping h2 {
	color: #1a54a2;
}

#singleBus #points ul {
	border-top: solid 1px #c2c2c2;
}

#singleBus #points ul li {
	position: relative;
	padding: 9px 80px 9px 9px;
	border: solid 1px #c2c2c2;
	border-width: 0 1px 1px;
}

#singleBus #points ul li:nth-child(2n) {
	background: #f7f7f7;
}

#singleBus #points .dropping ul li {
	padding: 9px;
}

#singleBus #points ul li label span {
	display: block;
	padding-right: 10px;
	font-size: 13px;
	line-height: 1.4;
}

#singleBus #points .dropping ul li label span {
	padding-right: 0;
}

#singleBus #points ul li label span.place {
	display: inline-block;
}

#singleBus #points ul li label span.time {
	color: #39f;
	font-weight: bold;
}

#singleBus #points ul li .btnMap {
	position: absolute;
	top: 9px;
	right: 9px;
	width: 80px;
}

#singleBus #points ul li.selected {
	background: #d8ecff;
}

@media screen and (min-width: 641px) {
	#singleBus #points {
		margin: 0 0 40px;
		padding: 0;
		background: transparent;
		overflow: hidden;
	}

	#singleBus #points .boarding {
		float: left;
		width: 490px;
		margin: 0;
	}

	#singleBus #points .dropping {
		float: right;
		width: 490px;
	}

	#singleBus #points h2 {
		margin: 0 0 20px;
		font-size: 18px;
		line-height: 1.5;
	}

	#singleBus #points ul {
		background: #fff;
	}

	#singleBus #points ul li:hover,
	#singleBus #points ul li.selected {
		background: #d8ecff;
	}

	#singleBus #points ul li label:hover {
		cursor: pointer;
	}

	#singleBus #points ul li label span {
		padding-right: 85px;
	}
}

/* #passenger
----------------------- */
#singleBus #passenger {
	padding: 0 15px 20px;
	background: #fff;
}

#singleBus #passenger h2 {
	font-weight: bold;
}

#singleBus #passenger .unit {
	border: solid 1px #d0d0d0;
}

#singleBus #passenger .unit+.unit {
	border-top: 0;
}

#singleBus #passenger h3 {
	padding: 6px 5px 5px;
	background: #dedede;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
	word-wrap: break-word;
}

#singleBus #passenger .gender {
	padding: 12px 0 15px;
	text-align: center;
}

#singleBus #passenger .gender dl {
	display: inline-block;
	width: 75px;
	margin: 0 12px;
	text-align: left;
}

#singleBus #passenger .gender dl dt {
	font-size: 13px;
	font-weight: bold;
}

#singleBus #passenger .price {
	padding: 10px 0 8px;
	border-top: solid 1px #d0d0d0;
	color: #f1240e;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

@media screen and (min-width: 641px) {
	#singleBus #passenger {
		width: 850px;
		margin: 0 auto 35px;
		padding: 0;
		background: transparent;
		overflow: hidden;
	}

	#singleBus #passenger .unit {
		float: left;
		width: 49.3%;
		border: solid 1px #d0d0d0;
		background: #fff;
	}

	#singleBus #passenger .unit+.unit {
		border-top: solid 1px #d0d0d0;
		border-left: 0;
	}

	#singleBus #passenger h3 {
		padding: 7px 5px 6px;
		background: #414347;
		color: #fff;
		font-size: 16px;
	}

	#singleBus #passenger .gender {
		padding: 20px 0 7px 87px;
		text-align: left;
	}

	#singleBus #passenger .gender dl {
		display: block;
		width: auto;
		overflow: hidden;
	}

	#singleBus #passenger .gender dl dt {
		clear: left;
		float: left;
		width: 60px;
		margin: 0 0 12px;
		padding: 5px 0 0;
	}

	#singleBus #passenger .gender dl dd {
		float: left;
		width: 62px;
		margin: 0 0 12px;
	}

	#singleBus #passenger .price {
		padding: 12px 0 11px;
		border-top: dotted 1px #d0d0d0;
	}
}

/* #seatWrap
----------------------- */
#singleBus #seatWrap {
	position: relative;
	padding: 0 15px;
	background-color: #fff;
}

#singleBus #seatWrap h2 {
	border-bottom: solid 1px #d0d0d0;
	padding: 6px 0 5px;
	background: #dedede;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

#singleBus #seatWrap .wrap {
	border: solid 1px #d0d0d0;
	text-align: center;
}

#singleBus #seatWrap .box {
	padding: 15px 0 20px;
}

#singleBus #seatWrap .box .btnSeat {
	width: 260px;
	margin: 0 auto;
}

#singleBus #seatWrap .contentSeat {
	display: none;
	position: absolute;
	top: -200px;
	left: 0;
	width: 100%;
	padding: 15px;
	box-sizing: border-box;
	z-index: 500;
}

#singleBus #seatWrap .contentSeat .img {
	padding: 24px;
	border: solid 1px #000;
	border-width: 1px 1px 0;
	border-radius: 3px 3px 0 0;
	background: #fff;
}

#singleBus #seatWrap .contentSeat .close {
	padding: 15px;
	border: solid 1px #000;
	border-width: 0 1px 1px;
	border-radius: 0 0 3px 3px;
	background: #e7f0fb;
}

@media screen and (min-width: 641px) {
	#singleBus #seatWrap {
		padding: 0;
		background-color: #fff;
		margin-bottom: 40px;
	}

	#singleBus #seatWrap h2 {
		padding: 7px 0 6px;
		line-height: 1.5;
		background-color: #414347;
		color: #fff;
	}

	#singleBus #seatWrap .box {
		padding: 15px 0 20px;
	}

	#singleBus #seatWrap .box .btnSeat {
		width: 270px;
	}

	#singleBus #seatWrap .contentSeat {
		position: absolute;
		top: -400px;
		left: 326px;
		width: 300px;
		padding: 0;
	}
}

/* #feeWrap
----------------------- */
#singleBus #feeWrap {
	padding: 15px 0 20px;
	background: #fff;
}

@media screen and (min-width: 641px) {
	#singleBus #feeWrap {
		padding: 0 0 29px;
		border-bottom: dotted 1px #414347;
		background: transparent;
		overflow: hidden;
	}
}

/* #cancel
----------------------- */
#singleBus #cancel {
	padding: 0 0 15px;
}

#singleBus #cancel h2 {
	font-weight: bold;
	font-size: 16px;
	text-align: center;
}

#singleBus #cancel table th,
#singleBus #cancel table td {
	padding: 6px 14px 5px;
	border: solid 1px #d0d0d0;
	font-weight: bold;
	vertical-align: middle;
}

#singleBus #cancel table th {
	width: 73%;
	text-align: left;
}

@media screen and (min-width: 641px) {
	#singleBus #cancel {
		float: left;
		width: 490px;
		padding: 0;
	}

	#singleBus #cancel h2 {
		/*height: 35px;*/
		font-size: 16px;
		text-align: center;
	}

	#singleBus #cancel table th,
	#singleBus #cancel table td {
		padding: 12px 24px 11px;
		font-size: 13px;
	}

	#singleBus #cancel table th {
		width: 306px;
	}

	#singleBus #cancel table td {
		text-align: center;
	}
}

/* #total
----------------------- */
#singleBus #total {
	border: solid 1px #d0d0d0;
}

#singleBus #total h2 {
	border-bottom: solid 1px #d0d0d0;
	text-align: center;
}

#singleBus #total .num {
	padding: 2px 0 6px;
	text-align: center;
}

#singleBus #total .num dl {
	display: inline-block;
	overflow: hidden;
}

#singleBus #total .num dl dt {
	position: relative;
	clear: left;
	float: left;
	width: 65px;
	margin: 10px 0 0;
	padding: 4px 24px 3px 0;
	font-weight: bold;
	line-height: 1.5;
}

#singleBus #total .num dl dt::after {
	position: absolute;
	top: 5px;
	right: 7px;
	content: '×';
}

#singleBus #total .num dl dd {
	float: left;
	width: 35px;
	margin: 10px 0 0;
	padding: 5px 0 4px;
	border-radius: 3px;
	background: #e8eaec;
	font-size: 13px;
	text-align: center;
	line-height: 1.5;
}

#singleBus #total .price {
	padding: 10px 0 8px;
	border-top: solid 1px #d0d0d0;
	color: #f1240e;
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

@media screen and (min-width: 641px) {
	#singleBus #total {
		position: relative;
		/*top: 35px;*/
		float: right;
		width: 490px;
		background: #fff;
	}

	#singleBus #total h2 {
		border-bottom: solid 1px #d0d0d0;
		text-align: center;
	}

	#singleBus #total .num {
		padding: 1px 0 15px;
	}

	#singleBus #total .num dl dt {
		position: relative;
		clear: left;
		float: left;
		width: 90px;
		margin: 15px 0 0;
		padding: 4px 36px 2px 0;
		font-size: 16px;
	}

	#singleBus #total .num dl dt::after {
		top: 5px;
		right: 16px;
	}

	#singleBus #total .num dl dd {
		float: left;
		width: 52px;
		margin: 15px 0 0;
		padding: 4px 0 2px;
		font-size: 16px;
	}

	#singleBus #total .price {
		padding: 16px 0 15px;
		border-top: dotted 1px #d0d0d0;
		font-size: 18px;
	}
}

/* #infoWrap
----------------------- */
#singleBus #infoWrap {
	padding: 0 15px 10px;
	background: #fff;
}

@media screen and (min-width: 641px) {
	#singleBus #infoWrap {
		margin: 0 0 40px;
		padding: 30px 0 0;
		background: transparent;
		overflow: hidden;
	}
}

.grad-wrap {
	position: relative;
}

.grad-wrap+.grad-wrap {
	margin-top: 40px;
}

.grad-trigger {
	z-index: 2;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	padding: 5px 0;
	border-radius: 2px;
	background: #1a54a2;
	color: #fff;
	font-size: 1.3rem;
	text-align: center;
	cursor: pointer;
}

.grad-trigger::after {
	content: "▼";
}

.grad-trigger .fa {
	margin-right: .5em;
}

.grad-item {
	position: relative;
	overflow: hidden;
}

.grad-item.is-hide {
	height: 400px;
}

.grad-item::before {
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	content: "";
	width: 100%;
	height: 120px;
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #fff 100%);
	background: linear-gradient(top, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0.9) 50%, #fff 100%);
}

.grad-trigger.is-show::after {
	content: "▲";
}

.grad-trigger.is-show+.grad-item::before {
	display: none;
}

@media screen and (min-width: 641px) {
	.grad-trigger {
		padding: 10px 0;
	}

	.grad-item.is-hide {
		height: 500px;
	}
}

/* #important
----------------------- */
#singleBus #important {
	margin: 0 0 20px;
	border: solid 1px #d0d0d0;
}

#singleBus #important h2 {
	padding: 6px 0 5px;
	background: #dedede;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

#singleBus #important p {
	padding: 11px 15px 0;
	font-size: 13px;
	line-height: 1.5;
}

#singleBus #important p.all {
	height: auto;
	padding: 11px 25px 10px 10px;
	border-bottom: 0;
	background: url(../../common/img/ico_select02.png) no-repeat 100% 20%;
	background-size: 22px auto;
}

@media screen and (min-width: 641px) {
	#singleBus #important {
		float: left;
		width: 490px;
		margin: 0;
	}

	#singleBus #important h2 {
		padding: 15px 0 14px;
		font-size: 16px;
	}

	#singleBus #important p {
		height: auto;
		padding: 11px 15px 10px;
		border-bottom: none;
		background: #fff;
		transition: none;
	}
}

/* #info
----------------------- */
#singleBus #info {
	border: solid 1px #d0d0d0;
}

#singleBus #info h2 {
	padding: 6px 0 5px;
	background: #dedede;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

#singleBus #info p {
	padding: 11px 15px 0;
	font-size: 13px;
	line-height: 1.5;
}

#singleBus #info p.all {
	height: auto;
	padding: 11px 25px 10px 10px;
	border-bottom: 0;
	background: url(../../common/img/ico_select02.png) no-repeat 100% 20%;
	background-size: 22px auto;
}

@media screen and (min-width: 641px) {
	#singleBus #info {
		float: right;
		width: 490px;
		margin: 0;
	}

	#singleBus #info h2 {
		padding: 15px 0 14px;
		font-size: 16px;
	}

	#singleBus #info p {
		height: auto;
		padding: 11px 15px 10px;
		border-bottom: none;
		background: #fff;
		transition: none;
	}
}

/* .btnWrap
----------------------- */
#singleBus .btnWrap {
	padding-top: 1px;
	padding-bottom: 20px;
	background: #fff;
}

@media screen and (min-width: 641px) {
	#singleBus .btnWrap {
		padding-top: 0;
		padding-bottom: 40px;
		background: transparent;
	}
}

/* #feature
----------------------- */
#singleBus #feature {
	padding: 0 15px;
	border-top: solid 1px #c2c2c2;
}

#singleBus #feature li {
	padding: 15px 0;
	border-bottom: solid 1px #c2c2c2;
	overflow: hidden;
}

#singleBus #feature li .img {
	float: left;
	width: 35%;
	border: solid 1px #c2c2c2;
}

#singleBus #feature li .txt {
	float: right;
	width: 60%;
}

@media screen and (min-width: 641px) {
	#singleBus #feature {
		padding: 0;
		border-top: none;
		overflow: hidden;
	}

	#singleBus #feature li {
		float: left;
		width: 220px;
		padding: 0;
		border-bottom: none;
	}

	#singleBus #feature li+li {
		margin-left: 19px;
		padding-left: 19px;
		border-left: solid 1px #c2c2c2;
	}

	#singleBus #feature li .img {
		float: none;
		width: auto;
	}

	#singleBus #feature li .txt {
		float: none;
		width: auto;
		padding: 0 0 5px;
	}
}

/* #detailMap　集合場所のご案内
=========================================== */
body#detailMap {
	background: #e7f0fb;
}

@media screen and (min-width: 641px) {
	#detailMap {
		width: 800px;
		min-width: 800px;
		margin: 0 auto;
	}
}

#detailMap #gHeader,
#detailMap .gNav,
#detailMap #pageName,
#detailMap #gFooter {
	display: none;
}

#detailMap #contents {
	padding: 15px;
}

.link-gmap {
	position: absolute;
	z-index: 50;
	left: 35%;
	right: 0;
	margin: auto;
	bottom: 3%;
}

.link-gmap a {
	position: relative;
	background: #f90;
	display: inline-block;
	color: #fff;
	border-radius: 50px;
	padding: 8px 30px;
	border: 2px solid #fff;
}

.link-gmap a:before {
	position: absolute;
	content: '';
	right: 15px;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 6px;
	height: 6px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	z-index: 5;
}

.link-gmap:hover {
	opacity: 0.8;
}

/* .data
----------------------- */
#detailMap .data {
	margin: 15px 0;
}

@media screen and (min-width: 641px) {
	#detailMap .data {
		margin: 20px 0;
	}
}

/* .data .tit */
#detailMap .data .tit {
	width: 100%;
	border-top: solid 1px #c2c2c2;
}

#detailMap .data .tit th,
#detailMap .data .tit td {
	display: block;
	border: solid 1px #c2c2c2;
	border-width: 0 1px 1px;
	text-align: center;
	vertical-align: top;
}

#detailMap .data .tit th {
	line-height: 1.6;
	padding: 11px 15px 10px;
	background: #414347;
	color: #fff;
	font-weight: bold;
	font-size: 15px;
}

#detailMap .data .tit td {
	line-height: 1.5;
	padding: 17px 15px 16px;
	background: #fff;
	font-size: 13px;
}

@media screen and (min-width: 641px) {
	#detailMap .data .tit {
		width: 490px;
		margin: 0 0 10px;
		border-top: none;
	}

	#detailMap .data .tit th,
	#detailMap .data .tit td {
		display: table-cell;
		border: solid 1px #c2c2c2;
		text-align: center;
	}

	#detailMap .data .tit th {
		width: 200px;
		line-height: 1.5;
		padding: 15px 19px 14px;
		font-size: 16px;
		text-align: left;
	}

	#detailMap .data .tit td {
		padding: 17px 19px 16px;
	}
}

/* .data .tableSp */
#detailMap .data .tableSp {
	width: 100%;
	margin: 15px 0 0;
}

#detailMap .data .tableSp th,
#detailMap .data .tableSp td {
	border: solid 1px #c2c2c2;
	text-align: center;
	vertical-align: middle;
}

#detailMap .data .tableSp th {
	line-height: 1.6;
	padding: 12px 15px 10px;
	background: #dedede;
	font-weight: bold;
	font-size: 15px;
}

#detailMap .data .tableSp td {
	line-height: 1.5;
	padding: 16px 15px 15px;
	background: #fff;
	font-size: 13px;
}

#detailMap .data .tableSp td.point {
	text-align: left;
}

#detailMap .data .tableSp td.boarding {
	padding: 0;
}

@media screen and (min-width: 641px) {

	/* .data .tablePc */
	#detailMap .data .tablePc {
		display: table;
		width: 100%;
	}

	#detailMap .data .tablePc th,
	#detailMap .data .tablePc td {
		border: solid 1px #c2c2c2;
		text-align: left;
		vertical-align: middle;
	}

	#detailMap .data .tablePc th {
		line-height: 1.5;
		padding: 8px 19px 7px;
		background: #dedede;
		font-weight: bold;
		font-size: 16px;
	}

	#detailMap .data .tablePc td {
		padding: 17px 19px 16px;
		background: #fff;
	}

	#detailMap .data .tablePc .time {
		width: 190px;
		padding: 17px 0 16px;
		text-align: center;
	}

	#detailMap .data .tablePc td.boarding {
		padding: 0;
	}
}

/* .gmap
----------------------- */
#detailMap .gmap {
	position: relative;
	margin: 0 0 15px;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

#detailMap .gmap iframe,
#detailMap .gmap object,
#detailMap .gmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* .btnWrap
----------------------- */
#detailMap .btnWrap {
	margin: 0 0 15px;
}

#detailMap .btnWrap p {
	width: 200px;
	margin: 0 auto;
}

/* .info
----------------------- */
#detailMap .info {
	border: solid 1px #c2c2c2;
}

#detailMap .info h2 {
	padding: 8px 0 7px;
	background: #dedede;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	line-height: 1.5;
}

#detailMap .info p {
	padding: 10px 10px 9px;
	background: #fff;
	font-size: 12px;
}

#detailMap .info p+p {
	padding: 0 10px 19px;
}

#detailMap .info p a {
	color: #297ec1;
}

/* #represent 新規会員登録
=========================================== */
/* #ページ共通
----------------------- */
#represent #basic table .name label,
#represent #customer table .name label,
#represent #campaign table .name label {
	display: inline-block;
	width: 100%;
}

#represent #basic table .name label+label,
#represent #customer table .name label+label,
#represent #campaign table .name label+label {
	margin-top: 8px;
}

#represent #basic table .name p,
#represent #customer table .name p,
#represent #campaign table .name p {
	display: inline-block;
	width: 80px;
	line-height: 28px;
}

#represent #basic table .name input,
#represent #customer table .name input,
#represent #campaign table .name input {
	display: inline-block;
	width: calc(100% - 100px);
}

#represent #basic table .gender div,
#represent #customer table .gender div,
#represent #campaign table .gender div {
	display: inline-block;
}

#represent #basic table .gender div+div,
#represent #customer table .gender div+div,
#represent #campaign table .gender div+div {
	margin-left: 30px;
}

#represent #basic table .gender input,
#represent #customer table .gender input,
#represent #campaign table .gender input {
	padding-right: 35px;
}

#represent #basic table .birthday {
	text-align: left;
}

#represent #basic table .birthday .fare {
	margin-top: 5px;
	display: inline-block;
}

#represent table .fare select,
#represent #campaign table .birthday select,
#represent #basic table .birthday select,
#represent #customer table .birthday select,
#represent #payment table .explore select {
	display: inline-block;
	width: auto;
	margin-right: 8px;
}

#represent #basic table .birthday select {
	margin-right: 1px;
}

#represent table .tel .country {
	margin-bottom: 8px;
}

#represent table .tel .country p {
	float: left;
	line-height: 28px;
	padding-right: 8px;
	vertical-align: middle;
}

#represent table .tel .country select {
	float: left;
	width: 110px;
	margin-right: 50px;
}

#represent #basic table .tel .num,
#represent #customer table .tel .num {
	clear: both;
	margin-top: 8px;
}

#represent #basic table .tel .num input,
#represent #customer table .tel .num input {
	display: inline-block;
	width: 105px;
}

#represent #basic table .tel .num input:nth-child(1),
#represent #customer table .tel .num input:nth-child(1) {
	width: 50px;
}

#represent #basic table .tel .note,
#represent #customer table .tel .note {
	display: inline-block;
	clear: both;
	line-height: 1.4;
	margin-top: 14px;
}

#represent #basic table td br,
#represent #customer table td br {
	display: none;
}

@media screen and (min-width: 641px) {
	#represent #basic {
		margin-bottom: 40px;
	}

	#represent #basic table input,
	#represent #basic table select,
	#represent #customer table input,
	#represent #customer table select {
		width: 430px;
	}

	#represent #basic table .representative div,
	#represent #customer table .representative div,
	#represent #campaign table .representative div {
		display: inline-block;
		width: auto;
	}

	#represent #basic table .name label,
	#represent #customer table .name label,
	#represent #campaign table .name label {
		display: inline;
		float: left;
		margin-bottom: 5px;
	}

	#represent #basic table .name label+label,
	#represent #customer table .name label+label,
	#represent #campaign table .name label+label {
		display: inline-block;
	}

	#represent #basic table .name p,
	#represent #customer table .name p,
	#represent #campaign table .name p {
		display: inline-block;
		width: auto;
		width: 90px;
		line-height: 28px;
		margin-right: 10px;
	}

	#represent #basic table .name input,
	#represent #customer table .name input,
	#represent #campaign table .name input {
		display: inline-block;
		width: 200px;
	}

	#represent #basic table .gender div,
	#represent #customer table .gender div,
	#represent #campaign table .gender div {
		display: inline-block;
	}

	#represent #basic table .gender div+div,
	#represent #customer table .gender div+div,
	#represent #campaign table .gender div+div {
		margin-left: 30px;
	}

	#represent #basic table .gender input,
	#represent #customer table .gender input,
	#represent #campaign table .gender input {
		padding-right: 35px;
	}

	#represent #basic table .birthday select,
	#represent #customer table .birthday select,
	#represent #payment table .explore select {
		display: inline-block;
		width: auto;
		margin-right: 8px;
	}

	#represent #basic table .birthday {
		text-align: left;
	}

	#represent #basic table .birthday .fare {
		display: inline-block;
	}

	#represent #basic table .tel .country select,
	#represent #customer table .tel .country select {
		float: left;
		width: 110px;
		margin-right: 50px;
	}

	#represent #basic table .tel .num,
	#represent #customer table .tel .num {
		float: left;
	}

	#represent #basic table .tel .num input,
	#represent #customer table .tel .num input {
		display: inline-block;
		width: 110px;
	}

	#represent #basic table .tel .num input:nth-child(1),
	#represent #customer table .tel .num input:nth-child(1) {
		width: 50px;
	}

	#represent #basic table .tel .note,
	#represent #customer table .tel .note {
		display: inline-block;
		clear: both;
		line-height: 1.4;
		margin-top: 14px;
	}

	#represent #basic table td br,
	#represent #customer table td br {
		display: none;
	}

	#represent #basic table td .note br {
		display: block;
	}
}

/* #info
----------------------- */
#modal01 #info,
#modal02 #info {
	margin-bottom: 30px;
}

#modal01 #info h1,
#modal02 #info h1 {
	display: block;
	padding: 11px 0;
	background-color: #f1240e;
	color: #fff;
	font-size: 16px;
	text-align: center;
}

#modal01 #info .artBox,
#modal02 #info .artBox {
	overflow: scroll;
	margin: 0 0 10px;
	padding: 25px 30px;
	border: 1px solid #c2c2c2;
	background-color: #fff;
	height: 70%;
}

#modal01 #info header,
#modal02 #info header {
	margin-bottom: 16px;
	padding-bottom: 5px;
	border-bottom: 1px dotted #c2c2c2;
	font-weight: bold;
	font-size: 15px;
}

#modal01 #info article,
#modal02 #info article {
	margin-bottom: 20px;
}

#modal01 #info .accept,
#modal02 #info .accept {
	margin: auto;
	font-weight: bold;
	text-align: center;
}

#modal01 #info label,
#modal02 #info label {
	display: block;
	margin-top: 3px;
	color: #f1240e;
	font-weight: bold;
	text-align: center;
}

@media screen and (min-width: 641px) {

	#modal01 #info,
	#modal02 #info {
		margin-bottom: 40px;
	}

	#modal01 #info h1,
	#modal02 #info h1 {
		padding: 15px 0;
	}

	#modal01 #info .artBox,
	#modal02 #info .artBox {
		height: 77%;
	}

	#modal01 #info article,
	#modal02 #info article {
		margin-bottom: 15px;
	}
}

/* #campaign
----------------------- */
/*
#represent #campaign table tr:first-child th:first-child {
	display: none;
}
*/
#represent #campaign .age input {
	display: inline-block;
	width: 50px;
	margin-right: 12px;
}

#represent #campaign .age span {
	line-height: 28px;
}

@media screen and (min-width: 641px) {
	#represent #campaign table tr:first-child th:first-child {
		display: table-cell;
	}

	/*
	#represent #campaign table tr:first-child th:first-child {
		background-color: #fff;
		vertical-align: middle;
	}
	*/
	#represent #campaign table th {
		width: 172px;
	}

	#represent #campaign .age input {
		width: 100px;
	}
}

/* #customer
----------------------- */
@media screen and (min-width: 641px) {
	#represent #customer {
		margin-bottom: 40px;
	}
}

/* #payment
----------------------- */
#represent #payment {
	margin-top: 20px;
	background-color: #fff;
}

#represent #payment h1 {
	padding: 7px 0 8px 15px;
	background-color: #ffba00;
	font-weight: bold;
	font-size: 15px;
}

#represent #payment .notice {
	margin-bottom: 13px;
	padding-left: 15px;
}

#represent #payment .num {
	display: inline-block;
}

@media screen and (min-width: 641px) {
	#represent #payment table th {
		width: auto;
	}
}

#represent #payment .num label {
	display: inline-block;
	width: calc(40% + 1em);
}

#represent #payment .num input {
	display: inline-block;
	width: calc(100% - 1em);
}

#represent #payment .num label:nth-of-type(3),
#represent #payment .num label:nth-of-type(4) {
	margin-top: 8px;
}

#represent #payment .num span {
	line-height: 25px;
	vertical-align: middle;
}

/* .registration ------------- */
#represent #payment .registration {
	padding: 15px;
	margin-top: 10px;
	background-color: #ffffbb;
}

#represent #payment .registration label {
	display: block;
	text-align: center;
	margin: 0 auto 10px;
}

#represent #payment .registration .txt {
	color: #f1240f;
	font-weight: bold;
}

@media screen and (min-width: 641px) {
	#represent #payment .registration {
		padding: 10px;
		margin-top: 10px;
	}

	#represent #payment .registration label {
		float: left;
		padding-top: 1em;
	}

	#represent #payment .registration .txt {
		float: right;
	}

	#represent #payment .num label {
		width: 125px;
		margin-left: 3px;
	}

	#represent #payment .num input {
		margin-right: 5px;
		width: 110px;
	}
}

/* --------------------------- */
#represent .box {
	margin-top: 9px;
	padding: 0 10px;
}

#represent .box p.subject {
	margin-bottom: 8px;
	padding-bottom: 5px;
	border-bottom: 2px solid #414347;
	font-weight: bold;
	font-size: 18px;
}

#represent .code {
	padding-bottom: 25px;
}

/*
#represent .code > div {
	padding: 0 15px;
}
*/
#represent .code p.subject {
	padding: 0 15px;
	color: #1a54a2;
}

#represent .card img {
	display: inline-block;
	float: left;
	width: 60px;
	height: auto;
	margin-right: 8px;
	vertical-align: middle;
}

#represent .code .img+.img {
	margin-top: 15px;
	padding-top: 15px;
	border-top: 1px solid #c2c2c2;
}

#represent .attention {
	padding: 23px 30px 20px 27px;
	border: 1px solid #f1240e;
	border-radius: 11px;
	background-color: #fff9f8;
	color: #f1240e;
}

#represent .attention span {
	float: left;
	width: 56px;
	padding-left: 25px;
	background: url(/en/common/img/ico_caution01.png) 0 0 no-repeat;
	-webkit-background-size: 18px;
	background-size: 18px;
	font-weight: bold;
	font-size: 16px;
}

#represent .attention p {
	/*float: right;*/
	width: 95%;
}

@media screen and (min-width: 641px) {
	#represent #payment {
		padding: 0 30px 30px;
		border: 1px solid #e8eaec;
	}

	#represent #payment {
		margin-top: 40px;
	}

	#represent #payment h1 {
		margin: -1px -31px 26px;
		padding: 3px 0 3px 28px;
		font-size: 18px;
	}

	#represent #payment .num span.viewPc {
		display: inline;
	}

	#represent .code input {
		width: 158px;
	}

	#represent .box .card {
		float: left;
		width: 460px;
	}

	#represent .box .code {
		float: right;
		width: 460px;
	}

	#represent .attention {
		clear: both;
	}

	#represent .box {
		margin-top: 9px;
		padding: 0;
	}

	#represent .code>div {
		padding: 0;
	}

	#represent .box p.subject {
		margin-bottom: 8px;
		padding-bottom: 5px;
		border-bottom: 2px solid #414347;
		font-weight: bold;
		font-size: 18px;
	}

	#represent .code {
		margin-bottom: 30px;
	}

	#represent .card p.subject {
		color: #fc8a3d;
	}

	#represent .card img {
		height: auto;
		margin-right: 8px;
		vertical-align: middle;
	}

	#represent .code .img {
		float: left;
		width: 214px;
	}

	#represent .code .img+.img {
		float: right;
		margin-top: 0;
		padding: 0 0 0 20px;
		border-top: none;
		border-left: 1px solid #c2c2c2;
	}

	#represent .attention {
		padding: 23px 30px 20px 110px;
		border: 1px solid #f1240e;
		border-radius: 11px;
		background-color: #fff9f8;
		color: #f1240e;
		background-image: url(/include/ib/common/img/please_be_careful.png);
		background-repeat: no-repeat;
		background-size: 80px auto;
		background-position: 10px center;
	}

	#represent .attention span {
		float: left;
		width: 56px;
		padding-left: 25px;
		background: url(/en/common/img/ico_caution01.png) 0 0 no-repeat;
		-webkit-background-size: 18px;
		background-size: 18px;
		font-weight: bold;
		font-size: 16px;
	}

	#represent .attention p {
		/*float: right;*/
		width: 95%px;
	}
}

/* #confirm2 予約最終確認
=========================================== */
/* #intro
----------------------- */
#confirm2 #intro table {
	width: 100%;
	border-top: solid 1px #c2c2c2;
}

#confirm2 #intro table th,
#confirm2 #intro table td {
	display: block;
	border-bottom: solid 1px #c2c2c2;
	vertical-align: top;
}

#confirm2 #intro table th {
	line-height: 1.6;
	padding: 11px 15px 10px;
	background: #414347;
	color: #fff;
	font-weight: bold;
	font-size: 15px;
}

#confirm2 #intro table td {
	line-height: 1.5;
	padding: 17px 15px 16px;
	background: #fff;
	font-size: 13px;
}

@media screen and (min-width: 641px) {
	#confirm2 #intro table {
		width: 490px;
		border-top: none;
	}

	#confirm2 #intro table:nth-of-type(1) {
		float: left;
		margin-bottom: 8px;
	}

	#confirm2 #intro table:nth-of-type(2) {
		float: right;
		margin-bottom: 8px;
	}

	#confirm2 #intro table:nth-of-type(3) {
		width: 100%;
	}

	#confirm2 #intro table:nth-of-type(3) td {
		text-align: left;
	}

	#confirm2 #intro table th,
	#confirm2 #intro table td {
		display: table-cell;
	}

	#confirm2 #intro table th {
		width: 200px;
		line-height: 1.5;
		padding: 15px 19px 14px;
		font-size: 16px;
	}

	#confirm2 #intro table td {
		padding: 17px 19px 16px;
	}
}

/* #
----------------------- */
#confirm2 td.price {
	color: #f1240e;
}

#confirm2 section:not(#intro) {
	margin-top: 20px;
}

#confirm2 #policy td {
	font-weight: bold;
	text-align: center;
	vertical-align: middle;
}

#confirm2 #platform th,
#confirm2 #subtotal th {
	text-align: center;
}

#confirm2 #platform td span.place {
	font-weight: bold;
	color: #f1240e;
}

#confirm2 #policy td.regist .formRadio {
	width: 50%;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

@media screen and (min-width: 641px) {
	#confirm2 section:not(#intro) {
		margin-top: 30px;
	}

	#confirm2 #policy th {
		width: 460px;
	}

	#confirm2 #policy td.regist .formRadio {
		float: left;
	}

	#confirm2 #policy td.regist .formRadio:nth-of-type(2) {
		float: right;
	}
}

/* #regist 予約確認
=========================================== */
/* .intro
----------------------- */
#regist .intro {
	margin-bottom: 25px;
	padding: 25px 15px;
	background-color: #fff;
}

#regist .intro h1 {
	margin-bottom: 17px;
	font-weight: bold;
	font-size: 17px;
	text-align: center;
}

#regist .intro .box {
	margin-top: 17px;
	padding: 0 14px 17px;
	background-color: #f2f2f2;
	text-align: center;
}

#regist .intro .box span {
	display: block;
	height: 35px;
	margin: 0 -14px 17px;
	background-color: #dedede;
	font-weight: bold;
	font-size: 20px;
	vertical-align: top;
}

#regist .intro .box strong {
	color: #f1240e;
	font-weight: bold;
	font-size: 20px;
}

#regist .intro .box p {
	margin-top: 11px;
}

@media screen and (min-width: 641px) {
	#regist .intro {
		margin-bottom: 30px;
		padding: 38px 40px 30px;
	}

	#regist .intro h1 {
		margin-bottom: 20px;
		font-size: 24px;
	}

	#regist .intro .box {
		margin-top: 25px;
		padding: 25px 0 30px;
	}

	#regist .intro .box span {
		display: inline-block;
		background: none;
		line-height: 40px;
		margin: 0 20px 0 0;
	}

	#regist .intro .box strong {
		font-size: 26px;
	}

	#regist .intro .box p {
		margin-top: 8px;
	}
}

/*エリアページ追記*/
#contents.otherArea_page {
	background: #fff;
}

.area_map {
	margin-bottom: 30px;
}

.areapage_ttl {
	background: #1b55a1;
	padding: 10px;
	color: #fff;
	margin: 15px 0;
	font-size: 20px;
}

#show_map {
	height: 500px;
}

.other_area ul {
	font-size: 0;
	margin: 25px 5% 0;
}

.other_area li {
	font-size: 16px;
	display: inline-block;
	width: 22%;
	margin: 0 2% 10px 0;
}

.other_area a {
	color: #1c56a1;
	display: block;
	position: relative;
	margin-left: 15px;
}

.other_area a:before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: -10px;
	margin: auto;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 6.9px;
	border-color: transparent transparent transparent #1c56a1;
}

.otherArea_page #oneway #searchBox .content .regular dl.place {
	width: 700px;
}

.otherArea_page #content-search .place input.ui-autocomplete-input {
	width: 48%;
	display: inline-block;
}

.otherArea_page #content-search .place input.arw_ico {
	width: 47%;
	display: inline-block;
	margin-right: 30px;
	position: relative;
}

.otherArea_page #content-search .place .arrow_i {
	position: relative;
}

.otherArea_page #content-search .place .arrow_i:after {
	content: '>';
	display: block;
	position: absolute;
	color: #fff;
	top: -12px;
	bottom: 0;
	right: 10px;
}

.otherArea_page #oneway #searchBox .content .regular dl.gender {
	width: 100px;
	padding: 0;
}

.otherArea_page #oneway #searchBox .content .regular dl.date {
	width: 220px;
	padding-right: 0;
}

.otherArea_page #content-search .date .input {
	width: 74%;
	display: inline-block;
	margin-right: 10px;
}

.otherArea_page #content-search .date .change_area {
	display: inline-block;
	vertical-align: top;
	width: 30px;
	background: #fff;
	padding: 5px;
	border-radius: 5px;
}

.otherArea_page #content-search .date .change_area:hover {
	opacity: 0.6;
	cursor: pointer;
}

#modal-overlay {
	z-index: 1;
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.75);
}

.modal_content {
	display: none;
	background: #FFF;
	overflow: hidden;
	position: relative;
	cursor: pointer;
}

.modal_content .areapage_ttl {
	margin: 0 0 15px;
}

.arrow_01 {
	padding-right: 25px;
	margin-right: 5px;
}

/*バス詳細単位計算フォーム用*/
.busdetailunitform {
	display: flex;
	justify-content: center;
	padding: 10px 3px 5px;
	background-color: #fff;
	width: 100%;
}

.busdetailunitform_row {
	display: flex;
	width: 40%;
}

.busdetailunitform span {
	margin: 0 10px;
	font-size: 1.5rem;
	font-weight: bold;
}

@media screen and (max-width: 730px) {
	.busdetailunitform {
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 10px 3px 5px;
		background-color: #fff;
		width: 100%;
	}

	.busdetailunitform_row {
		display: flex;
		width: 70%;
	}

	.busdetailunitform span {
		margin: -4px auto;
		font-size: 1.5rem;
		font-weight: bold;
	}
}

.busdetailunitform_row input {
	width: 60%;
}

.busdetailunitform_row select {
	width: 40%;
}

/*注意書き追記用*/
#represent #basic table .name .addnote,
#represent #customer table .name .addnote,
#represent #campaign table .name .addnote {
	display: inline-block;
	width: 100%;
	line-height: 20px;
}

#reserve .alert {
	color: #ff0000;
	text-align: center;
	font-size: 18px;
	margin: 20px 10px;
}

/*バリデーション用*/
#represent .progressCmn01 {
	padding: 10px 15px 10px;
}

#represent .txtCmn01 {
	padding: 0 15px;
}

#represent .tableCmn01 th {
	padding: 10px 15px;
}

#represent .tableCmn01 th sup {
	color: #f1240e;
	vertical-align: middle;
	font-size: 30px;
	padding-top: 5px;
	display: inline-block;
}

#represent .tableCmn01 .age {
	padding: 14px 15px 10px;
}

#represent .tableCmn02 th {
	line-height: 1.2;
}

#represent .tableCmn02 td {
	padding: 10px 15px 10px;
}

#represent .titCmn02 {
	margin: 0;
}

#represent .birthday p {
	display: inline-block;
}

#represent input.valid,
#represent select.valid {
	border-color: #006400;
	display: inline-block;
}

#represent .formRadio input.valid {
	display: none;
}

#represent .check::after {
	content: "OK";
	color: transparent;
	background-image: url(/include/ib/img/icon-check.svg);
	background-repeat: no-repeat;
	background-size: 16px 16px;
}

#carddate-error {
	position: relative;
}

#represent #carddate-error.check::after {
	position: absolute;
	top: -22px;
}

#represent input.invalid {
	border-color: #ff0000;
}

#represent #firstname-error,
#represent #lastname-error,
#represent #gender-error,
#represent #country-error,
#represent #Repcountry-error,
#represent #birth-error,
#represent #mail-error,
#represent #basic #tel-error,
#represent #basic #Urgtel-error,
#represent #basic #pass-error,
#represent #basic #question-error,
#represent #basic #answer-error,
#represent #CardData #carddate-error,
#represent #CardData #cardcode-error,
#represent #campaign .age div {
	display: inline;
}

#represent .name div span,
#represent .gender div span,
#represent #basic #country-error span,
#represent #Repcountry-error span,
#represent #birth-error span,
#represent #mail-error span,
#represent #tel-error span,
#represent #basic #Urgtel-error span,
#represent #basic #pass-error span,
#represent #basic #question-error span,
#represent #basic #answer-error span,
#represent #CardData #credit-error span,
#represent #CardData #carddate-error span,
#represent #CardData #cardcode-error span,
#represent #campaign .age div span {
	color: #ff0000;
	display: block;
}

#represent .formRadio label::before {
	height: 12px;
	width: 12px;
	border-radius: 50%;
	box-shadow: 0 0 3px #2c2c2c;
}

#represent .formRadio label {
	line-height: 21px;
	padding-left: 24px;
}

#represent .formSelect {
	display: inline-block;
	width: 90%;
}

#represent .age .formSelect {
	width: auto;
}

@media screen and (min-width: 641px) {

	#represent .btnWrapCmn01 li,
	#Confirm1Form .btnWrapCmn01 li {
		display: inline-block;
		width: 380px;
		margin: 0 14px;
	}

	#represent .formSelect {
		display: inline-block;
		width: auto;
	}
}

/* モーダルウィンドウのスタイル */
.modal {
	position: absolute;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	display: none;
	overflow: scroll;
}

.modal-parent {
	position: relative;
}

/* オーバーレイのスタイル */
.overLay {
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.5);
	width: 100%;
	height: 100vh;
	z-index: 10000;
}

/* モーダルウィンドウの中身のスタイル */
.modal .inner1 {
	position: fixed;
	z-index: 11000;
	top: 5vh;
	left: 50%;
	transform: translate(-50%, 0);
	background-color: #fff;
	width: 80%;
	height: 85vh;
	padding: 20px;
	overflow: scroll;
}

.modal .inner1 .title {
	font-weight: bold;
	color: #1C5098;
	font-size: 18px;
}

.modal .inner1 p {
	margin: 5px 0;
}

.modal .inner1 p span {
	display: block;
	font-weight: bold;
	color: #1C5098;
}

.modal .inner1 a {
	background: #eee;
	padding: 7px 0;
	font-weight: bold;
	display: block;
	width: 100px;
	margin: 0 auto;
	text-align: center;
}

.modal .inner1 a:hover {
	opacity: 0.5;
}

.accept-notice {
	text-align: center;
	margin: 30px 5px 0;
}

.accept-notice a {
	text-decoration: underline;
	color: #1a54a2;
}

@media screen and (min-width: 641px) {
	.modal .inner1 {
		position: fixed;
		z-index: 11000;
		top: 0;
		left: 50%;
		transform: translate(-50%, 0);
		background-color: #fff;
		width: 94%;
		height: 96%;
		padding: 20px;
	}

	.modal .inner1 {
		width: 960px;
		height: 80%;
		top: 10%
	}
}

/**************ぱんくず****************/
.breadcrumb {
	width: 100%;
	margin: 0 auto;
	background: #e0dcdc;
}

.breadcrumb ul {
	width: 1000px;
	margin: 0 auto;
	padding: 0.5%;
}

.breadcrumb-inner {
	margin-left: 15%;
	color: #333;
}

.breadcrumb li {
	list-style: none;
	text-align: left;
	font-size: 12px;
	display: inline-block;
	margin-bottom: 3px;
}

.breadcrumb li a {
	color: #1c56a1;
}

.pagettl {
	font-size: 0.8em;
	padding-right: 10px;
}

.breadcrumb li+li:before {
	content: ">";
	padding: 0 3px;
}

@media screen and (max-width: 641px) {
	.breadcrumb ul {
		width: 92%;
		margin: 0 auto;
		padding: 0.5%;
	}
}

/*タイトル*/
#pageName .date {
	width: 1000px;
	margin: 0 auto;
	color: #fff;
}

#searchBox .spbutton {
	text-align: center;
}

.search_agn {
	background: none;
	display: inline-block;
}

.search_agn a {
	display: inline-block;
	padding: 8px 40px;
	border: 1px solid #CCCCCC;
	background-image: url(/include/ib/search/img/search_icon_bl.png);
	background-repeat: no-repeat;
	background-position: 10px 50%;
	background-size: 20px 20px;
	background-color: #F5F5F5;
	color: #1c56a1;
	font-weight: bold;
}

.search_agn a::before {
	background: none;
}

@media screen and (max-width: 641px) {
	#pageName .date {
		width: 100%;
	}
}

@media screen and (min-width:641) {
	.faqList {
		width: 95%;
		margin: 0 auto;
		margin-bottom: 30px;
	}

	.faqList dl {
		margin-bottom: 5px;
		margin-top: 15px;
		border: 2px solid #dadada;
		background-color: #fff;
		font-weight: bold;
	}

	.faqList dt {
		position: relative;
		font-size: 16px;
		line-height: 2;
		padding: 10px 56px 8px;
		cursor: pointer;
		background: url(/include/ib/guide/faq/img/ico_q01.png) no-repeat 20px center;
		background-size: 26px;
		color: #08264d;
	}

	.faqList dt:after {
		content: "";
		position: absolute;
		right: 20px;
		top: 50%;
		margin-top: -5px;
		width: 10px;
		height: 10px;
		background: url(/include/ib/common/img/ico_select01.png) no-repeat;
		background-size: 22px auto;
	}

	.faqList dd {
		display: none;
		font-size: 14px;
		line-height: 24px;
		padding: 16px 56px 21px;
		border-top: 1px dotted #c2c2c2;
		background: url(/include/ib/guide/faq/img/ico_a01.png) no-repeat 20px 16px;
		background-size: 26px;
	}
}
p {
    margin-block-start: 0;
    margin-block-end: 0;
}
#oneway .listBus {
    padding: 15px 10px;
}
#oneway .listBus .pic {
    width: 50%;
    margin: 0 auto 15px;
}
#oneway .listBus header {
    width: 100%;
}
#oneway .listBus header .time {
    width: fit-content;
    padding: 5px 10px 4px 25px;
    font-size: 11px;
    font-weight: bold;
    line-height: 1.1;
    position: static;
    margin-bottom: 5px;
}
#oneway .listBus header h1 {
    height: auto;
    padding: 0;
}
#oneway .listBus .option {
    margin: 0;
    display: flex;
    gap: 5px;
    justify-content: flex-start;
}
#oneway .listBus .status {
    display: block;
    width: 100%;
    padding: 15px;
}
#oneway .listBus .status dl {
    display: flex;
    flex-wrap: wrap;
    border-top: 1px solid #1c5098;
    border-left: 1px solid #1c5098;
    width: 100%;
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}
#oneway .listBus .status dl dt,
#oneway .listBus .status dl dd {
    padding: 5px;
    box-sizing: border-box; 
    text-align: center;
    border-right: 1px solid #1c5098;
    border-bottom: 1px solid #1c5098;
    margin: 0; 
}
#oneway .listBus .status dl dt {
    padding: 5px;
    line-height: 2.2;
    color: #1C5098;
    font-size: 10px;
    text-align: center;
    width: 25%;
    border-right: 1px solid #1c5098;
    border-bottom: 1px solid #1c5098;
}
#oneway .listBus .status dl dd {
    color: #f1240e;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.2;
    text-align: center;
    letter-spacing: 0;
    width: 75%;
    padding: 5px;
    border-right: 1px solid #1c5098;
    border-bottom: 1px solid #1c5098;
    margin-inline-start: 0;
    display: flex;
    justify-content: center;
    align-items: center;
}
#oneway .listBus .status dl dd+dt {
    padding-left: 5px;
}
#oneway .listBus .status .btn {
    min-width: 120px;
    margin: 20px auto 0;
}
@media screen and (min-width: 641px) {
    #oneway .listBus header {
        margin-bottom: 20px;
        display: flex;
        align-items: center;
    }
    #oneway .listBus .pic {
        width: 178px;
        margin: 0 22px 3px 0;
    }
    #oneway .listBus .status {
        display: flex;
        width: 40%;
        padding: 0;
        max-width: 370px;
    }
    #oneway .listBus .status dl dt {
        font-size: 13px;
    }
    #oneway .listBus .status dl:first-child {
        padding-right: 0;
    }
    #oneway .listBus header .time {
        padding: 10px 13px 0 30px;
        font-size: 15px;
    }
}