@charset "utf-8";

/* initialization
------------------------------*/
a,abbr,address,article,aside,audio,b,blockquote,body,canvas,caption,cite,code,dd,del,details,dfn,div,dl,dt,em,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,main,mark,menu,nav,object,ol,p,pre,q,samp,section,small,span,strong,sub,summary,sup,table,tbody,tfoot,thead,time,tr,th,td,ul,var,video {margin: 0; padding: 0; outline: 0;}
article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section {display: block;}
abbr[title], dfn[title] {border-bottom: 1px dotted; cursor: help;} address,caption,cite,code,dfn,th,var {font-style: normal; font-weight: normal;}
body {line-height: 1; -webkit-text-size-adjust: 100%; font-size: medium;} blockquote, q {quotes: none;} blockquote:before, blockquote:after, q:before, q:after {content: ''; content: none;}
del {text-decoration: line-through;} ins {background-color: #ff9; color: #000; text-decoration: none;} mark {background-color: #ff0; color: #000;}
table {border-collapse: collapse; border-spacing: 0;} caption,th {text-align: left;} fieldset,img {border: 0; vertical-align: top;} img {-ms-interpolation-mode: bicubic;} ol,ul {list-style: none;}
input, textarea, select {font-family: inherit; font-weight: inherit;} label{cursor: pointer;} hr {display: block; height: 1px; border: 0; border-top: 1px solid #000;} h1,h2,h3,h4,h5,h6 {font-size: 100%;}

/* clearfix */
.clearfix {zoom: 1;}
.clearfix:after {content: ""; display: block; clear: both;}

/* リンク */
a:link, a:active, a:visited {text-decoration: underline; color: #0000ff;}
a:hover, a:focus {text-decoration: underline; color: #ff0000;}
a:hover img {
	-webkit-transition: opacity 0.1s ease-out;
	-moz-transition: opacity 0.1s ease-out;
	-o-transition: opacity 0.1s ease-out;
	-ms-transition: opacity 0.1s ease-out;
	transition: opacity 0.1s ease-out;
	opacity: 0.7;
	filter: alpha(opacity=70);
	zoom: 1;
}

/* 値指定 */
html {
	overflow: auto;
}
body {
	background: #fff;
	line-height: 1.7;
	font-family: "Hiragino Kaku Gothic ProN", Meiryo, 'MS PGothic', sans-serif;
	color: #000;
	overflow: hidden;
}

#main {
	z-index: 1;
	background: #fff;
	box-shadow: 0 0 3px #999;
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: middle;
}
.container {
	width: 961px;
	margin: 0 auto;
}

.sp {
	display: none;
}

@media screen and (max-width: 767px) {
	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	.container {
		width: 100%;
	}
}


/* スライドメニュー
------------------------------*/
.slidemenu {
	background-color: #fff;
	top: 0;
	width: 260px;
	position: fixed;
	visibility: hidden;
	z-index: -1;
}
	.slidemenu .slidemenu-body {
		height: 100%;
		overflow: hidden;
		position: relative;
	}
		.slidemenu .slidemenu-body .slidemenu-content {
			position: relative;
		}
	.slidemenu-right {
		right: 0;
	}
	
	.slidemenu .slidemenu-header {
		background: #c7e1f5;
		height: 56px;
		position: relative;
		box-shadow: 0 0 3px #999;
	}
	.slidemenu .slidemenu-header .button {
		position: absolute;
		right: 10px;
		top: 10px;
	}
	.slidemenu .slidemenu-content > ul > li {
		border-bottom: 1px solid #009bd8;
	}
		.slidemenu .slidemenu-content > ul > li > span,
		.slidemenu .slidemenu-content > ul > li a {
			display: block;
			padding: 15px;
			text-decoration: none;
			font-weight: bold;
			color: #000;
			position: relative;
		}
		.slidemenu .slidemenu-content > ul > li a:after {
			content: "";
			position: absolute;
			right: 15px;
			top: 50%;
			margin-top: -5px;
			display: block;
			width: 8px;
			height: 8px;
			border-top: 2px solid #009bd8;
			border-right: 2px solid #009bd8;
			transform: rotate(45deg);
		}
		.slidemenu .slidemenu-content > ul > li.company a:after {
			content: "";
			position: absolute;
			right: 15px;
			top: 50%;
			margin-top: -10px;
			display: block;
			width: 18px;
			height: 16px;
			background: url(../img/ico_blank2.png);
			background-size: 18px 16px;
			transform: none;
			border: none;
		}
	.slidemenu .slidemenu-content > ul > li.entry {
			border-bottom: 1px solid #fff;
		}
		.slidemenu .slidemenu-content > ul > li.entry a {
			background: #006ab4;
			color: #fff;
		}
		.slidemenu .slidemenu-content > ul > li.entry a:after {
			border-top: 2px solid #fff;
			border-right: 2px solid #fff;
		}
		
		.slidemenu .slidemenu-content > ul > li > span:after {
			content: "＋";
			position: absolute;
			right: 8px;
			top: 50%;
			margin-top: -11px;
			color: #009bd8;
			font-size: 20px;
			font-weight: bold;
			line-height: 1;
		}
		.slidemenu .slidemenu-content > ul > li > span.open:after {
			content: "－";
		}
		
	.slidemenu .slidemenu-content > ul > li ul {
		display: none;
	}
		.slidemenu .slidemenu-content > ul > li ul li a {
			background: #ddedf9;
			border-top: 1px solid #fff;
			color: #009bd8;
		}
		.slidemenu .slidemenu-content > ul > li ul li a span {
			font-size: 12px;
			margin-right: 10px;
		}

/* ヘッダ
------------------------------*/
header {
	background: #0693d7;
	position: absolute;
	width: 100%;
	height: 80px;
}
	header h1 {
		float: left;
		padding: 17px 0;
	}
	header nav {
		float: right;
	}
		header nav ul {
			float: left;
		}
			header nav ul.menu {
				margin: 25px 20px;
			}
			header nav ul.menu > li {
				float: left;
				margin-right: 30px;
				position: relative;
			}
				header nav ul.menu li a {
					color: #fff;
					text-decoration: none;
				}
				header nav ul.menu li a.active,
				header nav ul.menu li a:hover {
					text-decoration: underline;
				}
			header nav ul.entry > li {
				margin: 7px 0;
			}
			header nav ul.menu > li ul {
				background: #fff;
				position: absolute;
				left: -33px;
				width: 192px;
				border-top: 28px solid #0693d7;
				display: none;
				z-index: 2;
			}
				header nav ul.entry li a {
					background: #006ab4;
					color: #fff;
					display: block;
					padding: 7px 10px;
					line-height: 1;
					font-weight: bold;
					text-align: center;
					text-decoration: none;
				}
	header .button {
		display: none;
	}

@media screen and (max-width: 767px) {
	header {
		height: 56px;
		position: fixed;
		z-index: 2;
	}
		header h1 {
			padding: 12px 10px;
		}
			header h1 img {
				width: 100px;
			}
		header nav {
			float: left;
		}
			header nav .menu {
				display: none;
			}
				header nav ul.entry li {
					float: left;
					margin: 10px 0 10px 3px;
					font-size: 13px;
				}
				header nav ul.entry li a {
					padding: 5px 7px;
					font-weight: normal;
				}
				header nav ul.entry li a span {
					display: block;
					font-size: 11px;
				}
			header .button {
				display: block;
				float: right;
				margin: 10px;
			}
}

/* フッタ
------------------------------*/
footer {
	background: #009bd8;
	color: #fff;
	padding: 17px 0;
}
	footer #pagetop {
		bottom: 20px;
		display: none;
		position: fixed;
		right: 20px;
	}
	
	footer h1 {
		float: left;
	}
		footer h1 img {
			width: 116px;
		}
	footer nav {
		float: right;
	}
		footer nav ul {
			float: left;
			margin: 10px 0;
		}
		footer nav ul li {
			float: left;
			border-right: 1px solid #fff;
			padding: 0 10px;
			line-height: 1;
			font-size: 84%;
			font-weight: bold;
		}
		footer nav ul li:last-child {
			float: left;
			border: none;
		}
		footer nav ul li a:link, footer nav ul li a:active, footer nav ul li a:visited {
			text-decoration: none;
			color: #fff;
		}
		footer nav ul li a:hover, footer nav ul li a:focus, footer nav ul li a.active {
			text-decoration: underline;
		}
		footer nav a.company {
			background: url(../img/bg_btn_company.png) no-repeat;
			display: inline-block;
			width: 198px;
			height: 30px;
			padding: 5px 0 5px 20px;
			box-sizing: border-box;
			font-size: 91%;
			text-decoration: none;
			color: #fff;
		}
	footer p {
		clear: both;
		text-align: right;
		font-size: 84%;
	}

@media screen and (max-width: 767px) {
	footer #pagetop {
		bottom: 10px;
		right: 10px;
	}
		footer #pagetop img {
			width: 50px;
		}
	footer h1 {
		padding: 0 15px;
	}
		footer h1 img {
			width: 92px;
		}
		footer nav ul {
			float: none;
			margin: 0;
		}
		footer nav ul li {
			float: none;
			border-right: none;
			padding: 5px;
			line-height: 1;
			font-size: 91%;
			font-weight: normal;
		}
		footer nav ul li a:before {
			content: ">";
			margin-right: 5px;
			font-size: 10px;
		}
		footer nav a.company {
			background: url(../img/ico_blank.png) 4px center no-repeat;
			background-size: auto 8px;
		}
	footer p {
		text-align: center;
	}
}