@charset "utf-8";
/* CSS Document */

*,body,h1, h2, h3, h4, h5, h6 {
	font-family: "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ' , Meiryo , Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #222;}

html,
body,
.height100 {
	height: 100%;}
	
.row {
	min-width: 75rem;}
	.row .row {
		min-width: auto;
		max-width: 75rem;}
	
.button i {
	color: #FFF;}
	
.panel {
	border: 1px solid #DDD;
	background-color: #FFF;
	padding: 1rem;
	box-shadow:0px 5px 4px -4px #555555;
	-moz-box-shadow:0px 5px 4px -4px #555555;
	-webkit-box-shadow:0px 5px 4px -4px #555555;
	border-radius:6px;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;}
	
.radius {
	border-radius:6px;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;}

.mar-top01 {margin-top: 1rem;}
.mar-top02 {margin-top: 2rem;}
.mar-top03 {margin-top: 3rem;}
.mar-top04 {margin-top: 4rem;}
.mar-top05 {margin-top: 5rem;}

.mar-btm01 {margin-bottom: 1rem;}
.mar-btm02 {margin-bottom: 2rem;}
.mar-btm03 {margin-bottom: 3rem;}
.mar-btm04 {margin-bottom: 4rem;}
.mar-btm05 {margin-bottom: 5rem;}

.w100 {
	width: 100%;}

div.dmy {
	background-color: #E1E1E1;
	height: 180px;}
	
h4 {
	color: #3261b0;}

p.alert {
	background-color: #FFEFEF;
	font-size: 0.8rem;
	padding: 1rem;
	color: #CB0003;}
p.alert span {
	font-weight: bold;
	text-decoration: underline;
	color: #CB0003;}



/******** Webicon ********/

@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?9juzx5');
  src:  url('fonts/icomoon.eot?9juzx5#iefix') format('embedded-opentype'),
    url('fonts/icomoon.ttf?9juzx5') format('truetype'),
    url('fonts/icomoon.woff?9juzx5') format('woff'),
    url('fonts/icomoon.svg?9juzx5#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
}

[class^="icon-"], [class*=" icon-"] {
  /* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;

  /* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.icon-checkmark3:before {
  content: "\e907";
}
.icon-sitemap:before {
  content: "\e909";
}
.icon-list:before {
  content: "\e900";
}
.icon-attachment:before {
  content: "\e901";
}
.icon-in:before {
  content: "\e902";
}
.icon-export:before {
  content: "\e903";
}
.icon-arrow-up:before {
  content: "\e904";
}
.icon-arrow-right:before {
  content: "\e612";
}



/******** header ********/

header {
	min-width: 75rem;
	border-top: 5px solid #3261b0;
	padding: 1rem;}
	header h1 {
		color: #3261b0;
		font-size: 0.8rem;
		height: 4.25rem;
		display: table-cell;
		vertical-align: middle;}
	header .menu li {
		border-left: 1px solid #b8b8b8;
		text-align: center;
		width: 16%;}
		header .menu li a {
			font-size: 0.9rem;
			color: #555555;
			font-weight: bold;
			line-height: 1.3;}
			header .menu li:hover {
				background-color: #d5e5ff;}
				
body.about_bus header .menu li.aboutbus a span,
body.merit header .menu li.merit a span,
body.price header .menu li.price a span,
body.flow header .menu li.flow a span {
	display: block;
	padding-bottom: 0.2rem;
	border-bottom: 3px solid #3261b0;}
				
				
/******** sidebar ********/

.sidebar {
	height: 100%;}
	.sidebar .sidebar-bg {
		background-color: #eaeff7;
		height: 100%;}
		.sidebar .sidebar-bg .sidecontact {
			margin-bottom: 2rem;}
		.sidebar .sidebar-bg .bn {
			padding: 0.8rem;}
			.sidebar .sidebar-bg .bn a {
				color: #000;
				font-size: 0.8rem;}
			.sidebar .sidebar-bg .bn a:hover {
				filter:alpha(opacity=80);
				-moz-opacity: 0.8;
				opacity: 0.8;}
				.sidebar .menu li {
					border-bottom: 1px solid #DDD;}
					.sidebar .menu li>a {
						padding: 1.5rem 0  1.5rem 0.5rem;
						color: #222;
						line-height: 1;
						font-size: 0.8rem;}
					.sidebar .menu li>a:hover {
						text-decoration: underline;}
						.sidebar .menu li>a i {
							color: #3261b0;
							font-size: 1.2rem;}
					.sidebar .menu .nested {
						margin-left: 0;
						background-color: #FFF;}
						.sidebar .menu .nested li {
							padding: 0.3rem 0.2rem 0.3rem 0.5rem;
							border-bottom: 1px dotted #DDD;;}
							.sidebar .menu .nested li>a {
								padding: 0.3rem 0;
								color: #222;
								line-height: 1;
								font-size: 0.7rem;
								border-bottom: none;}
							.sidebar .menu .nested li>a:hover {
								text-decoration: underline;}
								.sidebar .menu .nested li>a i {
									color: #3261b0;
									font-size: 1.2rem;}

body.use .sidebar .menu li.use>a,
body.bus .sidebar .menu li.bus>a,
body.faq .sidebar .menu li.faq>a,
body.voice .sidebar .menu li.voice>a {
	background-color: #3261b0;
	color: #FFF;}
	body.use .sidebar .menu li.use>a i,
	body.bus .sidebar .menu li.bus>a i,
	body.faq .sidebar .menu li.faq>a i,
	body.voice .sidebar .menu li.voice>a i {
		color: #FFF;}
			
			
/******** フッター問い合わせ ********/

.footer-contact {
	min-width: 75rem;
	background-color: #f6f6f6;
	box-shadow:0px 2px 4px 0px #9c9c9c;
	-moz-box-shadow:0px 2px 4px 0px #9c9c9c;
	-webkit-box-shadow:0px 2px 4px 0px #9c9c9c;
	border-top: 1px solid #ededed;
	padding: 1.5rem;
	clear: both;
	margin-bottom: 1rem;}
	.footer-contact .ttl {
		margin-bottom: 1.5rem;}
	.footer-contact .visit {
		text-align: center;}
	.footer-contact .web {
		text-align: right;}
	.footer-contact .tel {
		text-align: left;}

.footer-contact>.row {
	max-width: 75rem;}
		
/******** サブページ共通問い合わせ ********/

.com-contact {
	background-color: #f6f6f6;
	box-shadow:0px 2px 4px 0px #9c9c9c;
	-moz-box-shadow:0px 2px 4px 0px #9c9c9c;
	-webkit-box-shadow:0px 2px 4px 0px #9c9c9c;
	border-top: 1px solid #ededed;
	padding: 1rem;
	clear: both;
	margin-bottom: 1rem;}
	.com-contact .ttl {
		border-bottom: 1px solid #3261b0;
		padding-bottom: 0.5rem;
		margin-bottom: 1rem;}
	.com-contact .visit {
		text-align: right;}
	.com-contact .web {
		text-align: center;}
	.com-contact .tel {
		text-align: left;}


/******** footer ********/

footer {
	clear: both;
	min-width: 75rem;
	background-color: #575757;}
	footer ul.menu li>a {
		color: #FFF;
		padding: 2rem 1rem;}
		footer ul.menu li>a:hover {
			background-color: #737373;}
			footer ul.menu li>a i {
				color: #FFF;}
				
footer p.copyright {
	font-size: 0.8rem;
	background-color: #FFF;
	text-align: center;
	margin: 0;
	padding: 0.5rem 0;}

footer>.row {
	max-width: 75rem;}


/******** top-img ********/
.top-img {
	background: url(../images/top-img.png) no-repeat;
	height: 15.625rem;}

.top-inq-bt .button {
	width: 100%;
	margin-bottom: 0;}
	
	
/******** top ********/

section.contents {
	padding-bottom: 2rem;}
	
body.top div.safety h3 {
	text-align: center;
	font-size: 1.5rem;
	color: #3261b0;
	padding: 0.6rem 0  0.3rem;
	margin-top: 2rem;
	margin-bottom: 1rem;
	border-radius:5px;
	background-color: #d5e5ff;}
	
.top-contact {
	background-color: #f6f6f6;
	padding: 1.5rem;}
	.top-contact .ttl {
		margin-bottom: 1.5rem;}
	.top-contact .visit {
		text-align: right;}
	.top-contact .web {
		text-align: center;}
	.top-contact .tel {
		text-align: left;}

h3.top-h3 {
	color: #3261b0;
	padding-bottom: 0.2rem;
	border-bottom: 1px solid #3261b0;
	margin-top: 2rem;
	margin-bottom: 1rem;}
	
body.top .app-exp .columns {
	margin-bottom:1rem;}
	body.top .app-exp .columns a {
		display: block;
		padding-top: 7rem;}
	body.top .app-exp .use01 a {background: url(../images/top-use-img01.png) no-repeat center center;}
	body.top .app-exp .use02 a {background: url(../images/top-use-img02.png) no-repeat center center;}
	body.top .app-exp .use03 a {background: url(../images/top-use-img03.png) no-repeat center center;}
	body.top .app-exp .use04 a {background: url(../images/top-use-img04.png) no-repeat center center;}
	body.top .app-exp .use05 a {background: url(../images/top-use-img05.png) no-repeat center center;}
	body.top .app-exp .use06 a {background: url(../images/top-use-img06.png) no-repeat center center;}
	body.top .app-exp .use07 a {background: url(../images/top-use-img07.png) no-repeat center center;}
	body.top .app-exp .use08 a {background: url(../images/top-use-img08.png) no-repeat center center;}
	body.top .app-exp .columns a:hover {
		filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;}
		body.top .app-exp .columns a span {
			display: block;
			font-size: 0.9rem;
			background-color: #3261b0;
			color: #FFF;
			padding: 0.2rem;}
			body.top .app-exp .columns a span i {
				color: #FFF;}
				
.top-flow img {
	margin-bottom: 1rem;}
	
div.onayami {
	border: 1px solid #DDD;
	padding: 0.6rem;}
	div.onayami p {
		margin: 0.3rem 0 0 0;}
	
	
/******** sub page 共通 ********/
.sub-ti {
	min-width: 75rem;
	background-color: #ebebeb;}
	.sub-ti h2{
		color: #3261b0;
		font-size: 1.6rem;
		padding-top: 1.2rem;
		padding-bottom: 0.7rem;}
		
ul.breadcrumbs li {
	font-size: 0.8rem;
	color: #000;}
	ul.breadcrumbs li a {
		color: #000;}
	
.sub-catch-ti {
	text-align: center;
	font-size: 2.25rem;
	padding: 1rem;
	border-top: 1px solid #3261b0;
	border-bottom: 1px solid #3261b0;
	margin-bottom: 2.5rem;
	color: #3261b0;}
	
h3.sub-ti {
	min-width: auto;
	max-width: 75rem;
	font-size: 2.25rem;
	background-color: #FFF;
	border-bottom: 1px solid #3261b0;
	margin-top: 2rem;
	margin-bottom: 1.5rem;
	color: #3261b0;}


/******** about_bus ********/

p.merit {
	display: table-cell;
	vertical-align: middle;
	height: 12.5rem;}

body.about_bus .app-exp .columns {
	margin-bottom:1rem;}
body.about_bus .app-exp .use01 a {background: url(../images/top-use-img01.png) no-repeat center center;}
body.about_bus .app-exp .use02 a {background: url(../images/top-use-img02.png) no-repeat center center;}
body.about_bus .app-exp .use03 a {background: url(../images/top-use-img03.png) no-repeat center center;}
body.about_bus .app-exp .use04 a {background: url(../images/top-use-img04.png) no-repeat center center;}
body.about_bus .app-exp .use05 a {background: url(../images/top-use-img05.png) no-repeat center center;}
body.about_bus .app-exp .use06 a {background: url(../images/top-use-img06.png) no-repeat center center;}
body.about_bus .app-exp .use07 a {background: url(../images/top-use-img07.png) no-repeat center center;}
body.about_bus .app-exp .use08 a {background: url(../images/top-use-img08.png) no-repeat center center;}
body.about_bus .app-exp .columns a {
	display: block;
	background-color: #DDDDDD;
	padding-top: 8rem;}
body.about_bus .app-exp .columns a:hover {
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;}
	body.about_bus .app-exp .columns a span {
		display: block;
		font-size: 0.9rem;
		background-color: #3261b0;
		color: #FFF;
		padding: 0.2rem;}
		body.about_bus .app-exp .columns a span i {
			color: #FFF;}

	

/******** price ********/

.est-info dl {
	margin-bottom: 0;}
.est-info dt {
  clear: left;
  float: left;
  width: 25%;}
	.est-info dd {
		margin: 0 0 0.5rem 25%;}
	.est-info dl dd:last-child {
		margin-bottom: 0;}
	.est-info dd:before {
		content: '……　';}
		
table.agreement th {
	background-color: #6790d5;
	color: #FFF;}
table.agreement td {
	text-align: center;}
table.agreement td.ti {
	font-weight: bold;}
	
	
	
/******** use ********/

body.use .app-exp .columns {
	margin-bottom:1rem;}
	body.use .app-exp .use01 a {background: url(../images/top-use-img01.png) no-repeat center center;}
	body.use .app-exp .use02 a {background: url(../images/top-use-img02.png) no-repeat center center;}
	body.use .app-exp .use03 a {background: url(../images/top-use-img03.png) no-repeat center center;}
	body.use .app-exp .use04 a {background: url(../images/top-use-img04.png) no-repeat center center;}
	body.use .app-exp .use05 a {background: url(../images/top-use-img05.png) no-repeat center center;}
	body.use .app-exp .use06 a {background: url(../images/top-use-img06.png) no-repeat center center;}
	body.use .app-exp .use07 a {background: url(../images/top-use-img07.png) no-repeat center center;}
	body.use .app-exp .use08 a {background: url(../images/top-use-img08.png) no-repeat center center;}
	body.use .app-exp .columns a {
		display: block;
		background-color: #DDDDDD;
		padding-top: 8rem;}
	body.use .app-exp .columns a:hover {
		filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8;}
		body.use .app-exp .columns a span {
			display: block;
			font-size: 0.9rem;
			background-color: #3261b0;
			color: #FFF;
			padding: 0.2rem;}
			body.use .app-exp .columns a span i {
				color: #FFF;}
				

body.use h5 {
	color: #3261b0;
	background-color: #d1e2ff;
	font-size: 1.2rem;
	padding: 0.3rem 0.5rem;
	margin-bottom: 1.2rem;
	margin-top: 2.5rem;
	font-weight: bold;}
		
		
/******** bus ********/

a.bus {
	display: block;}
body.bus a.largebus {
		background: url(../images/bus_pic01.png) no-repeat top;
		background-size: 80%;}
body.bus a.large2bus {
		background: url(../images/bus_pic06.png) no-repeat top;
		background-size: 80%;}
body.bus a.middlebus {
		background: url(../images/bus_pic02.png) no-repeat top;
		background-size: 80%;}
body.bus a.smallbus {
		background: url(../images/bus_pic03.png) no-repeat top;
		background-size: 80%;}
body.bus a.microbus {
		background: url(../images/bus_pic04.png) no-repeat top;
		background-size: 80%;}
body.bus a.commuterbus {
		background: url(../images/bus_pic05.png) no-repeat top;
		background-size: 80%;}
body.top a.largebus {
		background: url(../images/bus_pic01.png) no-repeat top;
		background-size: 80%;}
body.top a.large2bus {
		background: url(../images/bus_pic06.png) no-repeat top;
		background-size: 80%;}
body.top a.middlebus {
		background: url(../images/bus_pic02.png) no-repeat top;
		background-size: 80%;}
body.top a.smallbus {
		background: url(../images/bus_pic03.png) no-repeat top;
		background-size: 80%;}
body.top a.microbus {
		background: url(../images/bus_pic04.png) no-repeat top;
		background-size: 80%;}
body.top a.commuterbus {
		background: url(../images/bus_pic05.png) no-repeat top;
		background-size: 80%;}


a.bus:hover {
	filter:alpha(opacity=80);
	-moz-opacity: 0.8;
	opacity: 0.8;}
dl.bus {border:1px solid #DDD;}
	dl.bus dt {
		margin-top: 10rem;
		background-color: #d5e5ff;
		color: #3261b0;
		font-size: 1.5rem;
		text-align: center;
		margin-bottom: 0;
		padding: 0.3rem;}
		dl.bus dd.number {
			text-align: center;
			background-color: #f6f6f6;
			margin-bottom: 0;
			font-size: 0.8rem;
			padding: 0.2rem;}
			dl.bus dd.number span {
				font-size: 1.5rem;}
		dl.bus dd.btn {
			padding: 0.5rem;}
			dl.bus dd.btn .button {
				margin-bottom: 0;}
					
dl.bus.sub {}
	dl.bus.sub dt {
		margin-top: 4.5rem;
		font-size: 1rem;}
		dl.bus.sub dd.number {
			font-size: 0.6rem;}
			dl.bus dd.number span {
				font-size: 1rem;}
				
table.busdetail {}
	table.busdetail th {
		border: 1px solid #DDD;
		background-color: #d5e5ff;}



/******** faq ********/

dl.faq {}
	dl.faq dd {
		margin-bottom: 1rem;
		padding-left: 1.5rem;}
	dl.faq span.qa {
		color: #0024FF;}
	dl.faq span.ans {
		color: #CB0003;}


/******** voice ********/
	
dl.voice dt {
	color: #3261b0;
	background-color: #d1e2ff;
	font-size: 1.2rem;
	padding: 0.3rem 0.5rem;
	margin-bottom: 1.2rem;
	margin-top: 2.5rem;
	font-weight: bold;}
	dl.voice dt i {
		color: #3261b0;
		font-size: 1.3rem;
		margin-right: 0.3rem;}
dl.voice dd {
	margin-bottom: 2rem;
	padding: 0.5rem;}
	
	
/******** merit ********/

body.merit h6 {
	background-color: #DDD;
	text-align: center;
	padding: 0.3rem;}
	

/******** safety ********/


body.safety h4 {
	color: #3261b0;
	background-color: #d1e2ff;
	font-size: 1.2rem;
	padding: 0.3rem 0.5rem;
	margin-bottom: 1.2rem;
	margin-top: 2.5rem;
	font-weight: bold;}
	
body.safety div.safety .columns {
	text-align: center;}
	body.safety div.safety img {
		margin-bottom: 0.5rem;}
		
body.safety dl.safety dt {
	color: #3261b0;}
body.safety dl.safety dd {
	margin-bottom: 1rem;}

	

/******** form ********/

form#mailformpro label {
	display: inline-block;}
	
label.inline{
	cursor:pointer;
	display: inline-block;
	margin-left:.5rem;
	margin-right:1rem;
	margin-bottom:0;
	vertical-align:baseline;}
	

small.req {
	background-color: #CB0003;
	font-size: 1rem;
	color: #FFF;
	padding: 0.1rem 0.3rem;
	border-radius: 3px;
	line-height: 1;
	margin-right: 0.5rem;}
	
div.mfp_buttons button#mfp_button_send {
	display: inline-block;
	text-align: center;
	line-height: 1;
	cursor: pointer;
	-webkit-appearance: none;
	transition: background-color .25s ease-out,color .25s ease-out;
	vertical-align: middle;
	border: 1px solid transparent;
	border-radius: 5px;
	padding: .85em 1em;
	margin: 0 3rem 1rem;
	font-size: .9rem;
	background-color: #3261b0;
	color: #fefefe;}
	
div.mfp_buttons button#mfp_button_cancel {
	padding: .85em 1em;
	font-size: 0.7rem;}



/*201702　約款リニュ*/
.table_privacy tr td, .table_yakkan tr td, .table_yakkan_tehai tr td, .table_ryokinhyo tr td, .table_joken_setsumei tr td {
	background-color: white;
	font-size: 16px;
}

.table_privacy_title01 {
	font-weight: bold;
	padding-top: 15px;
	border-bottom: 2px solid #3261b0;
}
.table_privacy_link {
	line-height:  30px;
}
.table_privacy_list {
	margin-left: 2em;
}
.td_yakkan_tehai,.td_yakkan_juchu {
	width: 10%;
	vertical-align: top;
	text-align: center
}
.table_joken_setsumei {
	font-size: 16px;
}
.table_joken_setsumei2,.table_joken_setsumei3 {
	width: 100%;
}
.td_joken_setsumei3, .td_joken_setsumei3b, .td_joken_setsumei4 {
	background-color: #597ab9;
	color: white;
	font-size: small;
}
.td_joken_setsumei3 {
	width: 50%;
}
.td_joken_setsumei4 {
	width: 33%;
}
.table_joken_setsumei3 tr td {
	font-size: small;
}
.table_ryokinhyo, .table_ryokinhyo td, .table_ryokinhyo th {
	border: 1px solid #595959;
	padding: 5px;
	font-size: small;
}
.table_price_01 {
	width: 18%;
}
.table_price_color01 {
	color: white;
	background-color: #597ab9;
}
.table_price_color02 {
	color: white;
	background-color: #597ab9;
}
table tbody {
	border: none;
}
.td_yakkan {
	width: 30%;
}
/*tableに枠*/
.table_waku td,.table_waku th {
       border: 1px solid #a7a7a7; }


/*Pマーク用フォームCSS*/
#for_p_mark {
	margin: 0px;
	background-color: white;
	/*padding-left: 20px;
	padding-right: 20px;*/
}
#for_p_mark1 {
	float: none !important;
	width: 100% !important;
	text-align: left !important;
	font-size: 8pt !important;
	padding-top: 0px !important;
	padding-bottom: 0px !important;
	border: none !important;
}
#for_p_mark2 {
	padding-left: 2em !important;
	padding-top: 0px !important;
	padding-right: 0px !important;
	padding-bottom: 0px !important;
	font-size: 8pt !important;
	border: none !important;
}

/** コロナ対策 **/
body.safe_shuttle_bus ol.list ,
body.safe_shuttle_bus ul.list {
	padding: 1rem;
}
body.safe_shuttle_bus ul.list li {
	list-style: disc;
}
body.safe_shuttle_bus ul.list.nodisc {
	margin-left: 0;
}
body.safe_shuttle_bus ul.list.nodisc li {
	list-style: none;
}
body.safe_shuttle_bus ul.list.flarge {
	font-size: 125%;
}
body.top div.covid19sp {
	margin-top: 1.5rem;
}
body.top div.safety h3 { /* override */
	margin-top: 1rem !important;
}
.small-2_5 {width: 16%;}
.grid-6 {width: 16.6%;}
.dt-margintop {
  margin-top: 4.5rem !important;
  font-size: 1rem !important;
}
.covid19sp .button {background-color: #3261b0;}
.covid19sp .button:hover {background-color: #79a8f7;}
.safety .button {background-color: #3261b0;}
.safety .button:hover {background-color: #79a8f7;}
.top-h3 .button {background-color: #3261b0;}
.top-h3 .button:hover {background-color: #79a8f7;}
.color0317 .button {background-color: #3261b0;}
.color0317 .button:hover {background-color: #79a8f7;}
.color0317 a span {background-color: #3261b0 !important;}
.color0317 a:hover span {background-color: #79a8f7 !important;}
.color0317 a .number span {background-color: #f6f6f6 !important;}
.color0317 a:hover .number span {background-color: #f6f6f6 !important;}


/** フォーム遷移ボタン色変更 **/
img[src*="contact-bt"], img[src*="side-bt-contact"] {
  filter : hue-rotate(315deg);
}

img.btn_on[src*="contact-bt"], img.btn_on[src*="side-bt-contact"] {
  z-index : 100;
}