@charset "utf-8";


#header{
	-webkit-transition:padding-bottom .3s;
	transition:padding-bottom .3s;
}
#la-nav{
	height:0;
	-webkit-transition:height .3s;
	transition:height .3s;
}


/* ==========================================================================
   min-width: 767px
   ========================================================================== */
@media screen and (min-width: 767px){
	/* ==================== #header ==================== */
	#header{
	}
	.la-nav-active #header{
		padding-bottom:40px;
	}
		#header #btn-switch{
			height:65px;
			border-right:solid 1px #e2e4e8;
		}
			#btn-switch .menu{
				display:none;
			}


	/* ==================== #nav ==================== */
	#nav{
		height:40px;
		position:relative;
		z-index:1;
		box-shadow:0 1px 2px rgba(0,0,0,.15);
	}
	.la-nav-active #la-nav{
		height:40px;
	}
		#nav ul{
			height:40px;
			margin-left:60px;
			overflow:visible;
		}
			#nav li,
			#la-nav li{
				float:left;
				width:25%;
				height:40px;
				line-height:40px;
			}
			#nav li:first-child{
				width:60px;
				margin-left:-60px;
			}
				#nav li:first-child span{
					display:none;
				}
				#nav li:first-child span.fa{
					display:inline;
				}

			#nav li{
/* 20200206 変更
				width:17%;
*/
				width:16%;
			}
			#nav li:nth-child(7){
/* 20200206 削除
				width:15%;
*/
			}
			#nav li:nth-child(n+8){
/* 20200206 削除
				display:none;
*/
			}
			#nav li.current{
				color:#1c579c;
			}
				#nav li:after{
					content:"";
					display:block;
					position:absolute;
					width:100%;
					height:4px;
					right:0;
					left:0;
					margin:-8px auto auto;
					-webkit-transition:all .3s;
					transition:all .3s;
				}
				#nav li.current:after,
				#nav li:hover:after{
					margin-top:-4px;
				}
				#nav li.current:after{
					background:#1c579c;
				}
				#nav li:hover:after{
					background:#27A9D7;
				}
					#nav li a{
						position:relative;
					}
						#nav li a:before,
						#la-nav li a:before{
							content:"";
							position:absolute;
							border-left:solid 1px #aaa;
							position:absolute;
							height:1em;
							top:0;
							bottom:0;
							left:0;
							right:0;
							margin:auto;
						}
						#la-nav li a:before{
							border-left:dotted 1px #aaa;
						}
						#nav li:nth-child(5) a:before{
							border-right:solid 1px #aaa;
						}
						#la-nav li:nth-child(4) a:before{
							border-right:dotted 1px #aaa;
						}

	/* ==================== #content ==================== */
	#content{
	}
		#main{
		}
			#main .section h3 > span{
				display:none;
			}


	/* ==================== #footer ==================== */
	#footer{
	}
		#footer-col1{
			padding:30px 0;
			margin-right:300px;
			border-right:solid 1px #16447b;
		}
			#footer-col1 dl{
				float:left;
				width:25%;
			}
				#footer-col1 dt,
				#footer-col1 dd{
					margin-right:10px;
				}
				#footer-col1 dt{
					font-size:10pt;
					line-height:1;
					padding-bottom:10px;
					position:relative;
					overflow:hidden;
					text-overflow:ellipsis;
					white-space:nowrap;
				}
					#footer-col1 dt:before,
					#footer-col1 dt span:before{
						content:"";
						display:inline-block;
						position:absolute;
						left:0;
						bottom:0;
						width:100%;
						height:2px;
						background:white;
						font-size:0;
						line-height:1;
					}
					#footer-col1 dt span{
						display:inline-block;
						padding:0 2px;
						position:relative;
					}
						#footer-col1 dt span:before{
							bottom:-10px;
							background:#27A9D7;
						}
				#footer-col1 dd{
					font-size:8pt;
				}
					#footer-col1 dd li{
						padding-top:10px;
					}
		#footer-col2{
			width:290px;
			font-size:9pt;
			position:absolute;
			top:0;
			bottom:0;
			right:0;
			margin:auto 0;
			padding-left:10px;
			display:table;
		}
}


/* ==========================================================================
   max-width: 767px
   ========================================================================== */
@media screen and (max-width: 767px){
	html{
		-webkit-transition:-webkit-transform .3s;
		transition:transform .3s;
	}
	.drawer-active{
		-webkit-transform:translateX(-80%);
		transform:translateX(-80%);
	}
	.drawer-active.csscalc{
		-webkit-transform:translateX(-webkit-calc(-100% + 150px));
		transform:translateX(calc(-100% + 150px));
	}
	.drawer-active,
	.drawer-active body{
		height:100%;
		overflow:hidden;
	}
		.drawer-active body:after{
			content:"";
			display:block;
			width:100%;
			height:100%;
			background:rgba(0,0,0,.5);
			position:absolute;
			top:0;
			left:0;
			z-index:5;
		}


	/* ==================== #header ==================== */
	#header{
	}
	.la-nav-active #header{
		padding-bottom:200px;
	}
		#header h1{
			padding:10px 5px;
		}
			#header h1 img{
				height:30px;
			}
		#header #btn-switch{
			height:50px;
		}
			#btn-switch > li{
			/**
				ˆê•”iOS‚ÅƒoƒO—L
				width:50px;
				height:50px;
				box-sizing:border-box;
			**/
			}
				#btn-switch > li > a{
					padding:0;
					width:49px;
					height:50px;
					text-align:center;
				}
					#btn-switch li .fa{
						font-size:20px;
						margin-right:0;
					}
			#btn-switch > .menu{
				background:#1c579c;
				position:relative;
				z-index:10;
				-webkit-transition:background-color .3s;
				transition:background-color .3s;
			}
					#btn-switch > .menu span,
					#btn-switch > .menu span:before,
					#btn-switch > .menu span:after{
						display:block;
						width:20px;
						height:2px;
						background:white;
						position:absolute;
						top:0;
						bottom:0;
						left:0;
						right:0;
						margin:auto;
						-webkit-transition:all .3s;
						transition:all .3s;
					}
						#btn-switch > .menu span:before,
						#btn-switch > .menu span:after{
							content:"";
						}
						#btn-switch > .menu span:before{
							margin-top:-7px;
						}
						#btn-switch > .menu span:after{
							margin-bottom:-7px;
						}
			.drawer-active #btn-switch > .menu{
				background:#2cc0c0;
				border-left-color:transparent;
			}
					.drawer-active #btn-switch > .menu span{
						background:transparent;
					}
					.drawer-active #btn-switch > .menu span:before,
					.drawer-active #btn-switch > .menu span:after{
						-webkit-transition-delay: .15s;
						transition-delay: .15s;
					}
					.drawer-active #btn-switch > .menu span:before{
						margin-top:0;
						-webkit-transform:rotate(-45deg);
						transform:rotate(-45deg);
					}
					.drawer-active #btn-switch > .menu span:after{
						margin-bottom:0;
						-webkit-transform:rotate(-135deg);
						transform:rotate(-135deg);
					}
			#btn-switch > .mail{
			}
				#btn-switch > .mail > a,
				#btn-switch > .mail > #la-nav-wrapper{
					display:block; /*** Žb’èˆ’u ***/
				}
				#btn-switch > .mail > a{
					line-height:50px;
					position:relative;
				}
						#btn-switch > .mail > a:after{
							position:absolute;
							left:0;
							right:0;
							bottom:0;
						}


	/* ==================== #nav ==================== */
	#la-nav{
	}
	.la-nav-active #la-nav{
		height:200px;
	}
		#la-nav ul{
		}
			#la-nav ul li,
			#nav ul li{
				height:50px;
				line-height:50px;
				box-sizing:border-box;
			}
			#la-nav ul li{
			}
			#la-nav ul li:not(:first-child){
				border-top:solid 1px #aaa;
			}
	#nav{
		width:80%;
		height: 100%;
		position:fixed;
		z-index:1;
		top:0;
		left:100%;
		overflow-y:scroll;
		-webkit-overflow-scrolling:touch;
		outline:0;
	}
	.csscalc #nav{
		width:-webkit-calc(100% - 150px);
		width:calc(100% - 150px);
	}
	.drawer-active #nav{
		position:absolute;
	}
		#nav ul{
		}
			#nav ul:before{
				content:"MENU";
				display:block;
				height:50px;
				line-height:50px;
				text-align:center;
				color:white;
				background:#1c579c;
			}
			#nav ul li{
				border-bottom:solid 1px #aaa;
			}
				#nav li:first-child span.fa{
					display:none;
				}
				#nav ul li a:before{
					content:"\f138";
					font:normal normal normal 14px/1 FontAwesome;
					color:#27A9D7;
					margin-right:3px;
				}


	/* ==================== #content ==================== */
	#content #main{
		float: none;
		margin-right:0;
	}
		#content #main-inner{
			margin-right:0;
		}
	#content #aside-1{
		float: none;
		width: auto;
		margin: auto;
		padding-top:0;
	}


	/* ==================== #footer ==================== */
	#footer{
	}
		#footer-col1 dl{
			text-align:center;
		}
			#footer-col1 dt{
				text-align:left;
				padding:0 1em;
			}
				#footer-col1 dt:before,
				#footer-col1 dt:after{
					content:"";
					position:absolute;
					width:14px;
					height:2px;
					background:white;
					top:0;
					bottom:0;
					right:10px;
					margin:auto 0;
					-webkit-transition:-webkit-transform .3s, opacity .2s .1s;
					transition:transform .3s, opacity .2s .1s;
					opacity:1;
				}
				#footer-col1 dt:after{
					-webkit-transform:rotate(90deg);
					transform:rotate(90deg);
				}
				#footer-col1 dt.active:after{
					-webkit-transform:rotate(180deg);
					transform:rotate(180deg);
				}
				#footer-col1 dt.active:before{
					opacity:0;
					-webkit-transform:rotate(90deg);
					transform:rotate(90deg);
				}

			#footer-col1 dd{
				height:0;
				overflow:hidden;
				-webkit-transition:height .3s;
				transition:height .3s;
			}
			#footer-col1 dl:nth-child(1) dt.active + dd{
				height:150px;
			}
			#footer-col1 dl:nth-child(2) dt.active + dd{
				height:400px;
				height:300px;
			}
			#footer-col1 dl:nth-child(3) dt.active + dd{
				height:250px;
			}
			#footer-col1 dl:nth-child(4) dt.active + dd{
				height:200px;
			}

			#footer-col1 dt,
			#footer-col1 dd li{
				height:50px;
				line-height:50px;
				box-sizing:border-box;
				text-overflow:ellipsis;
				white-space:nowrap;
				overflow:hidden;
			}
			#footer-col1 dl dt{
				border-bottom:solid 1px white;
			}
			#footer-col1 dd li:not(:last-child){
				border-bottom:solid 1px #aaa;
			}
				#footer-col1 dd li{
					color:#221815;
					background:white;
				}
					#footer-col1 dd li a:before{
						content:"\f138";
					}
		#footer-col2{
			padding:10px;
		}
}
