@charset "utf-8";
	/* CSS Document */
*{word-break: break-all;}
header *,footer *{vertical-align: top; box-sizing:border-box;}
header a,footer a{text-decoration: none;}

header h1{float: left;}
header h1 a{
	background: url("../../img/common/logo.png") no-repeat;
	background-size: cover;
	width: 224px;
	padding-top: 28px;
	height: 0;
	overflow: hidden;
	display: inline-block;
	margin-top: 20px;
}

header .box01{
	padding: 0 10px 20px;
	max-width: 1240px;
	overflow: hidden;
	margin: 0 auto;
}

header .inner{
	float: right;
}

/* サイト内検索 */
header .btn01{
	background: #FFFFFF;
	padding: 5px 10px;
	border: 1px solid #c4c4c4;
	border-radius: 5px;
	display: inline-block;
	margin-top: 20px;
}

header .btn01 *{vertical-align: middle;}
header .btn01 .text{width: 160px; color: #a1a1a1;}

header .btn01 .icon{
	width: 15px;
	height: 15px;
	background: url("../../img/common/search_icon.gif") center no-repeat;
	background-size: 14px;
	cursor: pointer;
}

/* 言語切り替えメニュー */
.lang_menu {
	width: 200px;
	padding: 0;
	margin: 20px 0 0;
	display: inline-block;
}

.lang_menu label{
	width: 200px;
	padding: 5px 10px;
	margin: 0 ;
	border: 1px solid #c4c4c4;
	color: #a1a1a1;
	border-radius: 5px;
	background: url("../../img/common/arrow_bb.png") center right 10px no-repeat;
	display: inline-block;
}

.lang_menu a {
	display: block;
	padding: 10px;
	text-decoration: none;
	color: #000;
	line-height: 1;
	font-size: 12px;
}

#menu_bar01,#menu_bar02 {
	display: none;
}

.lang_menu ul {
	padding: 0;
	background :#f4f4f4;
	list-style: none;
	position: absolute;
	z-index: 10;
}

.lang_menu li {
	max-height: 0;
	overflow-y: hidden;
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
}

.lang_menu li a:hover{background: #FFF;}

#menu_bar01:checked ~ #links01 li,
#menu_bar02:checked ~ #links02 li {
	width: 200px;
	max-height: 46px;
	opacity: 1;
}

/* 言語の切り替えオンオフ */
.lang_api{display: none;}
.lang_api.lang_none{display: none;}
.lang_google.lang_none{display: none;}
.lang_api.lang_active{display: inline-block;}
.lang_google.lang_active{display: inline-block;}

/* お問合せとか */
.btn_hed_db{
	background: #133c82;
	color: #FFFFFF;
	min-width: 130px;
	padding: 20px 20px 10px;
	display: inline-block;
	text-align: center;
	font-size: 15px;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}

.btn_hed_b{
	height: 49px;
	display: inline-block;
	font-size: 0;
	width: 70px;
	background: url("../../img/common/twitter.png") center bottom 10px no-repeat;
	background-color: #1da1f2;
	color: #FFFFFF;
	border-bottom-right-radius: 10px;
	border-bottom-left-radius: 10px;
}

.btn_hed_b.Instagram{
	background: url(../../img/common/Instagram.png),linear-gradient(45deg, rgba(254,212,117,1) 0%,rgba(229,61,93,1) 50%,rgba(194,49,134,1) 70%,rgba(156,56,187,1) 100%);
	background-repeat: no-repeat;
	background-position: center;
}

/* headerのメインメニュー */
#main_menu{
	background: #133c82;
	width: 100%;
	text-align: center;
	font-size: 0; 
	letter-spacing: 0;
}

#main_menu li{display: inline-block; padding: 10px 0;}
#main_menu li a{
	display: inline-block;
	color: #FFFFFF;
	width: 300px;
	padding: 10px 0;
	border-right: 1px solid #FFFFFF;
	font-size: 15px;
}

#main_menu li:first-child a{border-left: 1px solid #FFFFFF;}

#main_menu li a::before {
	content: "";
	display: inline-block;
	width: 40px;
	height: 40px;
	margin-right: 5px;
	margin-top: -30px;
    margin-bottom: -15px;
}

#main_menu li:nth-child(2){background: #fb7f09;}

#main_menu li:nth-child(1) a::before { background: url("../../img/common/menu_icon01.png") center no-repeat;}
#main_menu li:nth-child(2) a::before { background: url("../../img/common/menu_icon02.png") center no-repeat;}
#main_menu li:nth-child(3) a::before { background: url("../../img/common/menu_icon03.png") center no-repeat;}
#main_menu li:nth-child(4) a::before { background: url("../../img/common/menu_icon04.png") center no-repeat;}


/* 運行情報等 */
header .box02{
	width: 100%;
	text-align: center;
	background: #ebebeb;
	padding: 20px 0;
}

header .chika_nabi{
	display: inline-block;
	background: url("../../img/common/arrow_w.png") center right 20px no-repeat;
	background-color: #fb7f09;
	border-radius: 10px;
	color: #FFFFFF;
	font-weight: 500;
	font-size: 21px;
	padding: 17px 50px 15px 30px;
	letter-spacing: 0;
	margin-right: 15px;
}

header .chika_nabi span{font-size: 14px; padding-left: 10px;}

#News_Feed{
	border-radius: 10px;
	overflow: hidden;
	background: #FFFFFF;
	display: inline-block;
}
#News_Feed *{vertical-align:middle;}

#News_Feed table{width: auto; border: none;}

#News_Feed td{padding: 10px 30px;}

#News_Feed .title{
	background: #0074bf;
	color: #FFFFFF;
	font-weight: bold;
}

#News_Feed table tr th:nth-child(even), 
#News_Feed table td:nth-child(even){border: none;}

#News_Feed table ul li{display: inline-block;}
#News_Feed li.txt{width: 480px; text-align: left; padding-right: 20px;}

#News_Feed .statusBtn a{
	display: inline-block;
	border: 1px solid #65b5e8;
	background: #d9f0ff;
	border-radius: 5px;
	padding: 5px 25px;
	color: #0074bf;
}

/* 計画 */
#suspension{
	border-radius: 10px;
	overflow: hidden;
	background: #FFFFFF;
	display: inline-block;
	width: 1180px;
	margin-top: 10px;
}
#suspension *{vertical-align:middle;}

#suspension table{width: 100%; border: none;}

#suspension td{padding: 10px 30px;}

#suspension .title{
	background: #0074bf;
	color: #FFFFFF;
	font-weight: bold;
}

#suspension table tr th:nth-child(even), 
#suspension table td:nth-child(even){border: none;}

#suspension table ul li{display: inline-block;}

#suspension ul{text-align: left;}
#suspension li.txt{
	width: 860px;; 
	text-align: left; 
	padding-right: 20px;
}

#suspension .statusBtn a{
	display: inline-block;
	border: 1px solid #65b5e8;
	background: #d9f0ff;
	border-radius: 5px;
	padding: 5px 25px;
	color: #0074bf;
}


@media screen and (max-width: 1250px) {
	#main_menu li{width:calc(100% / 4) ;}
	#main_menu li a{width: 100%;}
	
	#News_Feed td{padding: 10px 15px;}
	#News_Feed li.txt{width: 400px;}
	
	#suspension{width: 970px;}
	#suspension td{padding: 10px;}
	#suspension ul{text-align: left;}
	#suspension li.txt{width: 660px;}
	
	header .chika_nabi{font-size: 18px;  padding: 17px 30px 15px 20px; margin-right: 10px;}
	header .chika_nabi span{font-size: 11px; padding-left: 5px;}
	
	.btn01 .text{width: 100px;}
	.lang_menu,
	.lang_menu label,
	#menu_bar01:checked ~ #links01 li, #menu_bar02:checked ~ #links02 li{width: 130px;}
	
	.btn_hed_db{min-width: 100px;}
}

@media screen and (max-width: 1024px) {
	#main_menu li a{font-size: 13px;}
	
	header .box02{padding: 20px;}
	header .chika_nabi{width: 100%;}
	#News_Feed{width: 100%; margin-top: 10px;}
	#News_Feed li.txt{width: auto;}
	
	#suspension{width: 100%;}
	#suspension li.txt{width: auto;}
	
	
	header h1 a{width: 170px; padding-top: 21px;}
	.btn_hed_db{padding: 20px 10px 10px;}
	.btn_hed_b{width: 50px;}
}
@media screen and (max-width: 911px) {
	#main_menu li:nth-child(4) a{padding: 0;}
	#main_menu li:nth-child(4) a::before {margin-bottom: -25px;}
}

@media screen and (max-width: 870px) {
	header h1 a {
		width: 190px;
		padding-top: 23px;
	}
	
	header .box02{padding: 10px 20px;}
	header .inner{width: 100%; text-align: right;}
	.lang_menu label{text-align: left;}
	
	#main_menu{padding: 0 20px;}
	#main_menu li{width:calc(100% / 2) ;}
	#main_menu li:nth-child(3) a{border-left: 1px solid #FFFFFF;}
	#main_menu li:nth-child(4){padding: 3px 0;}
	
	#main_menu li a{padding: 4px 10px; font-size: 14px;}
	
	#main_menu li a::before{
		display: none;
		/*display: block;
		margin: 0 auto 5px!important;
		width: 30px;
		height: 30px;*/
	}
	
	#main_menu li:nth-child(1) a::before,
	#main_menu li:nth-child(2) a::before,
	#main_menu li:nth-child(3) a::before,
	#main_menu li:nth-child(4) a::before {background-size: contain;}
	
	#News_Feed li.txt{
		padding: 0; 
		width: 100%; 
		margin-bottom: 5px; 
		display: block;
		font-size: 15px;
	}
	
	#News_Feed .statusBtn a{padding: 2px 25px;}
	
	#suspension li.txt{
		padding: 0; 
		width: 100%; 
		margin-bottom: 5px; 
		display: block;
		font-size: 15px;
	}
	#suspension .statusBtn a{padding: 2px 25px;}
	
	header .btn01{display: none;}
	header .box01{padding: 0 10px 5px;}
	.lang_menu{
		position: absolute;
		top: -5px;
		right: 10px;
	}
	.btn_hed_db{padding: 10px; border-radius: 5px; margin-top: 10px;}
	.btn_hed_b{
		padding: 10px; border-radius: 5px;height: 38px; margin-top: 10px;
		background-size: 20px;
	}
}


#page_top{
	display:block;
	width: 50px;
	padding-top: 50px;
	background: url("../../img/common/pagetop.svg") no-repeat;
	background-size: cover;
	font-size: 0;
	height: 0;
	overflow: hidden;
	position: fixed;
	right: 30px;
	bottom: 30px;
	z-index: 100;
	transition: 0.4s;
}

footer{
	background: #ebebeb;
	padding: 90px calc((100% - 1200px) / 2) 30px;
	text-align: center;
}

footer > div{
	background: #FFFFFF;
	border-radius: 10px;
}

footer p > a{margin: 10px auto; display: inline-block; text-decoration: underline;}

footer b{
	font-size: 22px;
	color: #0074bf;
	display: inline-block;
}

footer ul {font-size: 0; letter-spacing: 0; line-height: 0;}
footer ul li{display: inline-block;}
footer ul li img{width: 100%;}

footer .box01{
	width: calc(100% / 2 - 20px);
	display: inline-block;
	padding: 50px 0 40px;
	min-height: 290px;
}
footer .link{
	max-width: 500px;
    margin: 0 auto;
}
/* お問合せ部分 */
footer .left{
	margin-right: 35px;
	color: #0074bf;
	font-weight: bold;
}

footer .left p{font-size: 17px;}
footer .left span{
	background: #0074bf;
	color: #FFFFFF;
	display: inline-block;
	width: 400px;
	font-size: 17px;
	padding: 5px 0;
	margin-top: 10px;
}

footer .left .tel{
	display: block;
	margin: 30px auto 0;
}

footer .left .tel div{
	display: inline-block;
	text-align: left;
	color: #0074bf;
	font-size: 19px;
	margin-left: 10px;
}

footer .left .tel div i{
	font-size: 36px;
	line-height: 40px;
	margin-bottom: 5px;
	display: block;
}

footer .left .btn{
	text-align: center;
	color: #FFFFFF;
	background: url("../../img/common/arrow_w.png") center right 30px no-repeat;
	background-color: #0074bf;
	width: 85%;
	display: block;
	border-radius: 10px;
	margin: 30px auto 0;
	float: none;
	font-size: 15px;
	padding: 20px 0;
}

/* リンク集部分 */
footer .link b{margin-bottom: 20px;}

footer .link li:nth-child(1),
footer .link li:nth-child(2),
footer .link li:nth-child(3)
{margin-bottom: 10px;}

footer .link > a{
	background: url("../../img/common/arrow_w.png") center right 30px no-repeat;
	background-color: #133c82;
	width: 85%;
	display: inline-block;
	color: #FFFFFF;
	border-radius: 10px;
	font-weight: bold;
	padding: 10px 0;
	margin-top: 20px;
}

footer .box02{
	padding: 50px 50px 40px 50px;
	margin: 40px auto 85px;
}

footer .box02 p{
	margin: 10px auto;
}

footer .box02 ul li{
	margin-right: 25px;
	width: 255px;
	/*width: 200px;*/
}
footer .box02 ul li:last-child{margin-right: 0;}

.footer_menu{
	font-size: 14px;
	line-height: 1;
}

.footer_menu span{
	font-size: 10px;
	display: inline-block;
	padding-top: 2px;
}

.footer_menu li{margin: 0 30px;}

.footer_small{
	font-size: 12px;
	letter-spacing: 1.5px;
	color: #FFFFFF;
	background: #222222;
	display: block;
	padding: 20px;
	text-align: center;
}

@media screen and (max-width: 1230px) {
	footer{padding: 90px 20px 30px;}
	footer .left{margin-right: 10px; min-height: inherit;}
	footer .box02 ul li{margin:  0 10px 10px 0}
}

@media screen and (max-width: 1024px) {
	footer .box01{width: 100%;}
	footer .box02{margin: 20px auto 40px;}
	
	footer .left{margin-right: 0; margin-bottom: 20px;}
	
	#page_top{
		width: 30px;
		padding-top: 30px;
		right: 10px;
	}
}

@media screen and (max-width: 750px) {
	footer .box01 ul li{width: 45%; margin-bottom: 0;}
	footer .link li:nth-child(1), footer .link li:nth-child(2), footer .link li:nth-child(3)
	{margin-bottom: 0;}
	footer .link li:nth-child(1), footer .link li:nth-child(2){width: 38%;}
	footer .box02{padding: 40px 20px 30px; margin: 20px auto 30px;}
	footer .box02 ul li{margin: 0 0 5px 0;}
	footer .box02 p{text-align: justify;}
	
	footer{padding: 20px;}
	
	.footer_menu li{margin-bottom: 10px; font-size: 13px;}
	
	footer .left span{width: 90%;}
	footer .left .btn{background:#0074bf; font-size: 13px;}
	footer .box01{padding: 40px 0 30px;}
	
	footer .left .tel div{font-size: 15px;}
	footer * {vertical-align: baseline;}
	
}


