@charset "utf-8";

@media (min-width: 421px) {
html {
	overflow: auto;
	}
body {
	_display: inline;
	font-size: 14px;
	-webkit-text-size-adjust: 100%;
	position: relative;
	overflow: hidden;
	_zoom: 1;
	}
}
@media only (orientation : landscape) {
body {
	min-width: 950px;
	}
}

@media (max-width: 420px) {
body {
	font-size: 12px;
	}
* {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	-o-box-sizing: border-box;
	}
}

/*----------------------------------------------

	header

----------------------------------------------*/
@media (min-width: 421px) {
header .sub-navi-wrap {
	background: rgba(33,46,120,0.8);
	font-size: 85%;
	width: 100%;
	padding: 3px 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	}
	.logo {
		width: 1000px;
		margin: 0 auto;
		position: relative;
		}
		.logo img {
			width: 183px;
			position: absolute;
			top: 50px;
			left: 409px;
			z-index: 60;
			}
	header .sub-navi-wrap .subnavi-inner {
		width: 1000px;
		margin: 0 auto;
		text-align: right;
		}
		header .sub-navi-wrap .subnavi-inner nav {
			display: inline-block;
			}
			header .sub-navi-wrap .subnavi-inner li {
				display: inline;
				padding: 0 15px;
				}
				header .sub-navi-wrap .subnavi-inner li a {
					color: #fff;
					text-decoration: none;
					}
					header .sub-navi-wrap .subnavi-inner li a:hover {
						text-decoration: underline;
						}
		header .sub-navi-wrap .subnavi-inner .search {
			text-align: inherit !important;
			}
		header .sub-navi-wrap .subnavi-inner .search,
		header .sub-navi-wrap .subnavi-inner .search form,
		header .sub-navi-wrap .subnavi-inner .search form p {
			display: inline-block;
			height: 21px;
			}
			.gsc-search-box {
				margin-bottom: 0 !important;
				padding: 0 !important;
				}
			.gsc-input {
				font-size: 100% !important;
				line-height: 1.0;
				width: 180px;
				text-align: left;
				}
				.gsc-input-box {
					width: 180px;
					height: auto !important;
					}
			.gsc-search-button {
				display: inline-block;
				}
			.gsc-clear-button {
				display: none;
				}
			.gsc-control-cse {
				padding: 0 !important;
				}
			.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
				color: #fff !important;
				}
}
@media (max-width: 420px) {
header {
	border-top: 5px solid #212E78;
	width: 100%;
	padding-top: 15px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	}
	.logo {
		width: 200px;
		text-align: center;
		margin-left: -100px;
		position: absolute;
		top: 30px;
		left: 50%;
		z-index: 60;
		}
		.logo img {
			width: 200px;
			}
	header .sub-navi-wrap {
		display: none;
		}
}

/*----------------------------------------------

	sp-menu

----------------------------------------------*/

@media (min-width: 421px) {
.menubtn,
.menuwrap {
	display: none;
	opacity: 0;
	position: absolute;
	top: 0;
	z-index: -1;
	}
}
@media (max-width: 420px) {
.menubtn {
	background: #212e78;
	display: block;
	width: 44px;
	height:44px;
	position: absolute;
	top: 0;
	right: 10px;
	}
	.menubtn span {
		background: #fff;
		border-radius: 2px;
		-webkit-border-radius: 2px;
		-moz-border-radius: 2px;
		display: block;
		width: 26px;
		height: 4px;
		position: absolute;
		left: 10px;
		transition: all 0.4s;
		-webkit-transition: all 0.4s;
		-moz-transition: all 0.4s;
		}
	.menubtn span:first-child {
		top: 11px;
		}
	.menubtn span:nth-child(2) {
		margin-top: -2px;
		top: 50%;
		}
	.menubtn span:last-child {
		bottom: 12px;
		}
.menuwrap {
	background: #fff;
	display: block;
	width: 100%;
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 999;
	}
	.menuwrap.hide {
		display: none;
		}
		.menuwrap > ul {
			background: #212e78;
			list-style: none;
			margin: 0;
			}
			.menuwrap > ul > li {
				border-bottom: 1px solid #ccc;
				list-style: none;
				margin: 0;
				}
				.menuwrap > ul > li > a {
					color: #fff;
					display: block;
					margin: 0;
					padding: 10px 15px;
					text-decoration: none;
					}
				.menuwrap > ul > li > p {
					background: url(../img/icn_sp_menu_accordion.png) no-repeat 95% center;
					color: #fff;
					display: block;
					margin: 0;
					padding: 10px 15px;
					text-decoration: none;
					}
					.menuwrap > ul > li > ul {
						display: none;
						}
						.menuwrap > ul > li > ul > li {
							background: #235ec7;
							border-top: 1px solid #ccc;
							list-style: none;
							margin: 0;
							text-indent: 1em;
							}
							.menuwrap > ul > li > ul > li > a {
								color: #fff;
								display: block;
								margin: 0;
								padding: 10px 15px;
								text-decoration: none;
								}
					.menuwrap > ul > li > ul > li > p {
						background: url(../img/icn_sp_menu_accordion.png) no-repeat 95% center;
						color: #fff;
						display: block;
						margin: 0;
						padding: 10px 15px;
						text-decoration: none;
						}
						.menuwrap > ul > li > ul > li > ul {
							display: none;
							}
							.menuwrap > ul > li > ul > li > ul > li {
								background: #edfbff;
								border-top: 1px solid #ccc;
								list-style: none;
								margin: 0;
								text-indent: 0;
								}
								.menuwrap > ul > li > ul > li > ul > li > a {
									color: #525252;
									display: block;
									margin: 0;
									padding: 10px 15px 10px 3em;
									text-decoration: none;
									}
				.menuwrap > ul > li:first-child,
				.menuwrap > ul > li:last-child {
					display: block;
					margin: 0;
					}
				.menuwrap > ul > li:first-child {
					background: #fff url(../img/logo.png) no-repeat 10px 10px;
					background-size: 100px 26px;
					display: block;
					height:44px;
					padding: 0;
					position: relative;
					}
					.menuwrap > ul > li:first-child span {
						background: #212e78;
						border-radius: 2px;
						-webkit-border-radius: 2px;
						-moz-border-radius: 2px;
						display: block;
						width: 26px;
						height: 4px;
						position: absolute;
						right: 10px;
						transition: all 0.4s;
						-webkit-transition: all 0.4s;
						-moz-transition: all 0.4s;
						}
						.menuwrap > ul > li:first-child span:first-child {
							top: 12px;
							-webkit-transform: translateY(8px) rotate(45deg);
							-moz-transform: translateY(8px) rotate(45deg);
							-ms-transform: translateY(8px) rotate(45deg);
							transform: translateY(8px) rotate(45deg);
							}
						.menuwrap > ul > li:first-child span:nth-child(2) {
							margin-top: -2px;
							top: 0%;
							opacity: 0;
							}
						.menuwrap > ul > li:first-child span:last-child {
							bottom: 12px;
							-webkit-transform: translateY(-8px) rotate(-45deg);
							-moz-transform: translateY(-8px) rotate(-45deg);
							-ms-transform: translateY(-8px) rotate(-45deg);
							transform: translateY(-8px) rotate(-45deg);
							}
				.menuwrap > ul > li:last-child {
					color: #fff;
					padding: 10px 15px 10px 50px;
					position: relative;
					}
					.menuwrap > ul > li:last-child span {
						background: #fff;
						border-radius: 2px;
						-webkit-border-radius: 2px;
						-moz-border-radius: 2px;
						display: block;
						width: 26px;
						height: 4px;
						position: absolute;
						left: 10px;
						transition: all 0.4s;
						-webkit-transition: all 0.4s;
						-moz-transition: all 0.4s;
						}
						.menuwrap > ul > li:last-child span:first-child {
							top: 10px;
							-webkit-transform: translateY(8px) rotate(45deg);
							-moz-transform: translateY(8px) rotate(45deg);
							-ms-transform: translateY(8px) rotate(45deg);
							transform: translateY(8px) rotate(45deg);
							}
						.menuwrap > ul > li:last-child span:nth-child(2) {
							margin-top: -2px;
							top: 0%;
							opacity: 0;
							}
						.menuwrap > ul > li:last-child span:last-child {
							bottom: 9px;
							-webkit-transform: translateY(-8px) rotate(-45deg);
							-moz-transform: translateY(-8px) rotate(-45deg);
							-ms-transform: translateY(-8px) rotate(-45deg);
							transform: translateY(-8px) rotate(-45deg);
							}
				.menuwrap ul li.blank {
					background-image: url(../img/icn_blank.png);
					background-repeat: no-repeat;
					background-position: 95% center;
					}
				.menuwrap ul li.search {
					padding: 8px 8px 6px;
					}
					.gsc-input-box {
						height: auto !important;
						}
						input.gsc-search-button-v2 {
							width: auto !important;
							height: auto !important;
							}
					.gsc-clear-button {
						display: none !important;
						}
}

/*----------------------------------------------

	kv

----------------------------------------------*/
@media (min-width: 421px) {
.kv-wrap {
	position: relative;
	}
	.bx-wrapper {
		position: relative;
		}
		.bx-viewport {
			left: 0;
			box-shadow: none;
			border: none;
			}
			.kv-wrap .kv-slider li {
				height: 100vh;
				background: center / cover no-repeat;
				}
			.kv-wrap .kv-slider li.first {	background-image: url(/img/bg_main_1.jpg);}
			.kv-wrap .kv-slider li.second {	background-image: url(/img/bg_main_2.jpg);}
			.kv-wrap .kv-slider li.third {	background-image: url(/img/bg_main_3.jpg);}
			.kv-wrap .kv-slider li.four {	background-image: url(/img/bg_main_4.jpg);}
			.kv-wrap .kv-slider li.last {	background-image: url(/img/bg_main_5.jpg);}
			.kv-wrap .bx-controls {
				position: absolute;
				bottom: 12%;
				right: 45%;
				z-index: 200;
				}
				.kv-wrap .bx-controls-direction, .bx-pager {
					margin: 0 auto;
					text-align: right;
					overflow:hidden;
					}
					.kv-wrap .bx-controls-direction a, .bx-pager-item {
						display: inline-block;
						text-align: center;
						}
						.kv-wrap .bx-pager-item a{
							background: #fff;
							border-radius: 10px;
							display: block;
							width: 14px;
							height: 14px;
							margin: 0 5px;
							text-indent: -9999px;
							}
							.kv-wrap .bx-pager-item a.active {
								background: #212e78;
								}
						.kv-wrap .bx-controls-direction a{
							color: #000;
							padding:0 5px;
							text-decoration: none;
							}
.kv-wrap .select-btn {
	font-size: 85%;
	width: 100%;
	}
	.kv-wrap .select-btn ul {
		width: 1000px;
		margin: 0 auto;
		}
		.kv-wrap .select-btn ul li:first-child {
			background: #275fc1;
			background: -moz-linear-gradient(top, #275fc1 0%, #183ca3 100%);
			background: -webkit-linear-gradient(top, #275fc1 0%,#183ca3 100%);
			background: linear-gradient(to bottom, #275fc1 0%,#183ca3 100%);
			filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#275fc1', endColorstr='#183ca3',GradientType=0 );
			position: absolute;
			left: 10%;
			bottom: 18%;
			z-index: 200;
			}
		.kv-wrap .select-btn ul li:last-child {
			background: #1f287c;
			background: -moz-linear-gradient(top, #1f287c 0%, #131358 100%);
			background: -webkit-linear-gradient(top, #1f287c 0%,#131358 100%); 
			background: linear-gradient(to bottom, #1f287c 0%,#131358 100%);
			filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1f287c', endColorstr='#131358',GradientType=0 );
			position: absolute;
			right: 10%;
			bottom: 18%;
			z-index: 200;
			}
		.kv-wrap .select-btn ul li a {
			box-shadow: 2px 2px 3px #49423d;
			border-radius: 3px;
			-webkit-border-radius: 3px;
			-moz-border-radius: 3px;
			color: #fff;
			display: block;
			width: 225px;
			padding: 10px 0;
			text-align: center;
			text-shadow: 2px 2px 3px #49423d;
			text-decoration: none;
			}
			.kv-wrap .select-btn ul li:last-child a {
				/*background-image: url(../img/icn_blank.png);
				background-repeat: no-repeat;
				background-position: 95% center;*/
				width: 215px;
				}
			.kv-wrap .select-btn ul li a span {
				font-size: 175%;
				}
}
@media (max-width: 420px) {
.kv-wrap {
	position: relative;
	}
	.bx-wrapper {
		position: relative;
		}
		.bx-viewport {
			left: 0;
			box-shadow: none;
			border: none;
			}
			.kv-wrap .kv-slider li {
				background: center / cover no-repeat;
				}
			.kv-wrap .kv-slider li.first {	background-image: url(/img/bg_main_1_sp.jpg);}
			.kv-wrap .kv-slider li.second {	background-image: url(/img/bg_main_2_sp.jpg);}
			.kv-wrap .kv-slider li.third {	background-image: url(/img/bg_main_3_sp.jpg);}
			.kv-wrap .kv-slider li.four {	background-image: url(/img/bg_main_4_sp.jpg);}
			.kv-wrap .kv-slider li.last {	background-image: url(/img/bg_main_5_sp.jpg);}
			.kv-wrap .bx-controls {
				width: 100%;
				text-align: center;
				position: absolute;
				bottom: 80px;
				z-index: 60;
				}
				.kv-wrap .bx-controls-direction, .bx-pager {
					height: 14px;
					margin: 0 auto;
					}
					.kv-wrap .bx-controls-direction a, .bx-pager-item {
						display: inline-block;
						}
						.kv-wrap .bx-pager-item a{
							background: #fff;
							border-radius: 10px;
							display: block;
							width: 14px;
							height: 14px;
							margin: 0 5px;
							text-indent: -9999px;
							}
							.kv-wrap .bx-pager-item a.active {
								background: #212e78;
								}
						.kv-wrap .bx-controls-direction a{
							color: #000;
							padding:0 5px;
							text-decoration: none;
							}
.kv-wrap .select-btn {
	width: 100%;
	position: absolute;
	bottom: 0;
	z-index: 60;
	}
	.kv-wrap .select-btn ul {
		margin: 0 auto;
		}
		.kv-wrap .select-btn ul li {
			width: 50%;
			}
		.kv-wrap .select-btn ul li:first-child {
			float: left;
			}
		.kv-wrap .select-btn ul li:last-child {
			float: right;
			}
			.kv-wrap .select-btn ul li a {
				color: #fff;
				display: block;
				letter-spacing: 0;
				padding: 10px 0;
				text-align: center;
				text-shadow: 2px 2px 3px #49423d;
				text-decoration: none;
				}
				.kv-wrap .select-btn ul li:first-child a {
					background: #275fc1;
					}
				.kv-wrap .select-btn ul li:last-child a {
					background-color: #1f287c;
					background-image: url(../img/icn_blank.png);
					background-repeat: no-repeat;
					background-position: 95% center;
					padding-right: 25px;
					}
				.kv-wrap .select-btn ul li a span {
					font-size: 125%;
					}
}

/*----------------------------------------------

	footer

----------------------------------------------*/
@media (min-width: 421px) {
footer {
	background: rgba(33,46,120,0.8);
	font-size: 85%;
	width: 100%;
	padding-bottom: 5px;
	position: absolute;
	bottom: 54px;
	left: 0;
	z-index: 100;
	}
	footer .fnavi {
		width: 1000px;
		margin: 0 auto;
		padding-top: 5px;
		}
		footer .fnavi ul {
			}
			footer .fnavi li {
				border-right: 1px solid #fff;
				display: inline-block;
				line-height: 1;
				padding: 0 15px;
				}
				footer .fnavi li:first-child {
					padding-left: 0;
					}
				footer .fnavi li:last-child {
					border-right: none;
					}
				footer .fnavi li a {
					color: #fff;
					text-decoration: none;
					}
					footer .fnavi li a:hover {
						text-decoration: underline;
						}
.copyright {
	background: #fff;
	border-top: 1px solid #777;
	border-bottom: 1px solid #777;
	font-size: 85%;
	width: 100%;
	height: 44px;
	padding: 5px 0;
	text-align: right;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 100;
	}
	.copyright p {
		width: 1000px;
		margin: 0 auto;
		}
}
@media (max-width: 420px) {
footer {
	width: 100%;
	}
	footer .fnavi {
		display: none;
		}
	.copyright {
		letter-spacing: 0;
		line-height: 1.2;
		padding: 10px;
		}
}


/*↓↓↓ 20160906 add 重要なお知らせ*/
@media (min-width: 421px) {
	.innerText-important{
		margin:10px auto;
		width:68%;
		border:2px solid #ff1a2d;
		position: absolute;
		top: 120px;
		left: 16%;
	    z-index:200;
	}
}
@media (max-width: 420px) {
	.innerText-important{
		margin:10px auto;
		width:90%;
		border:2px solid #ff1a2d;
		position: absolute;
		top: 120px;
		left: 5%;
		z-index:60;
	    /*z-index:200;*/
	}
}
	.innerText-important-h{
		background: #ff1a2d;
		color:white;
		padding:5px;
	}
	.innerText-important-p{
		background: #ffced1;
		padding:5px;
	}

@media (max-width: 420px) {
.display-none {
	display: none;
	}
}
/*↑↑↑ 20160906 add 重要なお知らせ*/


/*メンテナンス画像の設定*/
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pc { display: block !important; }
.sp { display: none !important; }
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 420px) {
.pc { display: none !important; }
.sp { display: block !important; }
}