@charset "utf-8";
/* このファイルはUTF-8のBOMなし(UTF-8N)で保存しています */

/**
 * CSS Information
 * ===============================================================
 *
 * Site URL:
 * File name: layout_wide.css
 * Summary:   レイアウト用スタイル - ブラウザ横幅769px以上
 * Created:   YYYY-mm-dd NAME
 * Modified:
 *     YYYY-mm-dd NAME
 *
 * -----------------------------------
 *
 * TOC:
 *     =1    basic selectors
 *     =2    structures
 *       =2-1    header
 *       =2-2    contents
 *                 - breadcrumb list
 *                 - main contents
 *                 - navigation
 *       =2-3    help
 *       =2-4    totop
 *       =2-5    footer
 *     =3    text styles
 *     =4    clearfix
 *
 * ===============================================================
*/



/** =1
 * ========================================
 * basic selectors
 * ========================================
 */

* {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

body {
	-webkit-text-size-adjust: 100%;
}

body,
textarea {
	font-family: "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-family: "ＭＳ Ｐゴシック", "MS PGothic", "Arial", "Helvetica", sans-serif;
}

p {
	margin-bottom: 1em;
}

input,
select {
	font-family: Arial, "ＭＳ Ｐゴシック", sans-serif;
}

label input {
	margin: -3px 0 0;
	padding: 0;
	vertical-align: middle;
}

a, a:link, a:visited, a:hover, a:active {
	text-decoration: none;
	outline: none;
}
a {
	color: #016FA7;
}
a:hover,
a:focus {
	color: #005580;
	text-decoration: underline;
}



/** =2
 * ========================================
 * structures
 * ========================================
 */

html {
	height: 100%;
	/*overflow-y: scroll;*/
}

body {
	position: relative;
	height: 100%;
	line-height: 1.5;
	font-size: 12px;
	text-align: left;
	letter-spacing: 0;
}
body.popup {
	height: auto;
	background: transparent;
}
/*
#container {
	position: relative;
	min-height: 100%;
	height: 100%;
}
*/


	/** =2-1
	 * header
	 * ----------------------------------
	 */

	#header {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 10;
		width: 100%;
		height: 50px;
		-webkit-box-shadow: 0 9px 12px -9px #222222;
		-moz-box-shadow: 0 9px 12px -9px #222222;
		-o-box-shadow: 0 9px 12px -9px #222222;
		box-shadow: 0 9px 12px -9px #222222;
	}

	#header h1 {
		padding: 0 0 0 15px;
		width: 215px;
		font-size: 110%;
	}

	#header h1 a {
		display: block;
		line-height: 30px;
		font-weight: bold;
	}
	#header h1 a:hover,
	#header h1 a:focus {
		text-decoration: none;
	}

	#header h1 a span {
		display: block;
		line-height: 14px;
	}
	#header h1 a span.env {
		display: inline;
		margin-left: 5px;
		color: #6699FF;
	}

	#header .nav {
		position: absolute;
		top: 0;
		right: 10px;
		float: right;
	}

	#header .nav p,
	#header .nav ul {
		float: left;
	}

	#header .nav p {
		margin: 5px 15px 5px 0;
		padding: 5px 7px;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
		border-radius: 4px;
		line-height: 30px;
	}

	#header .nav p a,
	#header .nav p span {
		margin: 0 3px;
		font-size: 120%;
		font-weight: bold;
	}

	#header .nav li {
		display: inline-block;
		float: left;
	}

	#header .nav li a {
		display: block;
		margin: 5px 5px 5px 0;
		padding: 5px 7px;
		-moz-border-radius: 4px;
		-webkit-border-radius: 4px;
		border-radius: 4px;
		line-height: 30px;
	}
	#header .nav li a:hover {
		text-decoration: none;
	}

	#header .nav li a i {
		margin-right: 5px;
	}

	#header .navHandler {
		display: none;
	}


	/** =2-2
	 * contents
	 * ----------------------------------
	 */

	#contents {
		position: relative;
		overflow: hidden;
		padding: 50px 0 30px; /* top value must be same or larger height as the header, bottom value must be same or larger height as the footer */
		width: 100%;
		height: auto;
		min-height: 100%;
	}

		/* -- [ main contents ] ----- */
		#contents #main {
			position: relative;
			z-index: 1;
			margin-left: -200px;
			width: 100%;
			float: right;
		}
		.fullwidth #contents #main {
			margin: 0;
			float: none;
			overflow: hidden;
		}

		#contents #main .inner {
			margin-bottom: -32767px;
			padding-bottom: 32767px;
			margin-left: 200px;
		}
		.fullwidth #contents #main .inner {
			margin: 0;
			margin-bottom: -32767px;
			padding-bottom: 32767px;
		}

		#contents #main .section {
			display: block;
			margin: 0 20px 100px;
		}


		/* -- [ navigation ] ----- */
		#contents #nav {
			display: block !important;
			position: relative;
			z-index: 2;
			width: 200px;
			float: left;
			white-space: nowrap;
		}
		#contents #nav.contract {
		}
		.fullwidth #contents #nav {
			display: none !important;
		}

		#contents #nav .inner {
			margin-bottom: -32767px;
			padding-bottom: 32767px;
			padding-top: 50px;
		}

		#contents #nav .navHandler {
			position: absolute;
			top: 13px;
			right: 0;
			width: 24px;
			height: 24px;
			-moz-border-radius: 4px 0 0 4px;
			-webkit-border-radius: 4px 0 0 4px;
			border-radius: 4px 0 0 4px;
			background-color: #E9EBEC;
			background-image: -moz-linear-gradient(top, #E9EBEC, #CACED1);
			background-image: -webkit-gradient(linear, left top, left bottom, from(#E9EBEC), to(#CACED1));
			background-image: -o-linear-gradient(top, #E9EBEC, #CACED1);
			background-image: linear-gradient(top, #E9EBEC, #CACED1);
			line-height: 24px;
			text-align: center;
			font-size: 20px;
			cursor: pointer;
		}
		#contents #nav .navHandler.expand i.icon-angle-right {
			display: none;
		}
		#contents #nav .navHandler.contract i.icon-angle-left {
			display: none;
		}

		#contents #nav ul {
			margin-bottom: 20px;
		}

		#contents #nav .active.highlight {
			width: 210px;
		}
		#contents #nav .close {
			display: none;
		}

		#contents #nav li a {
			position: relative;
			display: block;
			padding: 10px 15px;
			text-decoration: none;
		}

		#contents #nav.contract li.highlight a.primary {
			width: 180px;
		}

		#contents #nav.contract li a.primary span {
			display: none;
		}
		#contents #nav.contract li.highlight a.primary span {
			display: inline;
			margin-left: 10px;
		}

		#contents #nav a i {
			margin-right: 7px;
			font-size: 18px;
			text-indent: 0;
			vertical-align: middle;
		}
		#contents #nav.contract a i {
			margin-left: -5px;
		}

		#contents #nav a i.toggle {
			position: absolute;
			right: 5px;
			line-height: 20px;
			font-size: 14px;
		}
		#contents #nav a i.toggle.hide {
			display: none;
		}
		#contents #nav .active a i.toggle {
			right: 1px;
		}

		#contents #nav .sub {
			margin: 5px 0;
		}
		#contents #nav .sub.highlight {
			display: block !important;
			position: absolute;
			margin: 0 0 0 41px;
			width: 169px;
			-moz-border-radius: 0 0 4px 4px;
			-webkit-border-radius: 0 0 4px 4px;
			border-radius: 0 0 4px 4px;
		}

		#contents #nav .sub li {
			margin: 3px 18px 3px 20px;
		}
		#contents #nav .sub.highlight li {
			margin: 1px 0;
		}
		#contents #nav .sub.highlight li:last-child {
			-moz-border-radius: 0 0 4px 4px;
			-webkit-border-radius: 0 0 4px 4px;
			border-radius: 0 0 4px 4px;
		}

		#contents #nav .sub li a {
			padding: 6px 10px;
			border: none;
			-moz-border-radius: 4px;
			-webkit-border-radius: 4px;
			border-radius: 4px;
			background-image: none;
			text-indent: 0;
		}
		#contents #nav .sub.highlight li a {
			padding: 6px 15px;
			-moz-border-radius: 0;
			-webkit-border-radius: 0;
			border-radius: 0;
		}
		#contents #nav .sub.highlight li:last-child a {
			-moz-border-radius: 0 0 4px 4px;
			-webkit-border-radius: 0 0 4px 4px;
			border-radius: 0 0 4px 4px;
		}


	/** =2-3
	 * help
	 * ----------------------------------
	 */

	#help {
	display: none;
	}


	/** =2-4
	 * totop
	 * ----------------------------------
	 */

	#totop {
		position: fixed;
		bottom: 30px;
		right: 20px;
		z-index: 20;
		display: none;
		width: 80px;
		height: 25px;
		-moz-border-radius: 5px 5px 0 0;
		-webkit-border-radius: 5px 5px 0 0;
		border-radius: 5px 5px 0 0;
	}

	#totop a {
		display: block;
		padding: 3px 0 2px;
		line-height: 20px;
		text-decoration: none;
		text-align: center;
	}


	/** =2-5
	 * footer
	 * ----------------------------------
	 */

	#footer {
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 10;
		width: 100%;
		height: 30px;
	}

	#footer .inner {
		padding: 5px 20px;
	}

	#footer p {
		height: 20px;
		line-height: 20px;
		text-align: right;
		font-size: 12px;
	}



/** =3
 * ========================================
 * text styles
 * ========================================
 */

.required,
.error,
.red {
	color: #FF3333;
}

.blue {
	color: #3333FF;
}

.green {
	color: #338833;
}

.gray {
	color: #868686;
}



/** =4
 * ========================================
 * clearfix
 * ========================================
 */

/* For modern browsers */
.cf:before,
.cf:after {
	content: "";
	display: table;
}

.cf:after {
	clear: both;
}

/* For IE 6/7 (trigger hasLayout) */
.cf {
	/*position: relative;*/
	zoom: 1;
}



/** =5
 * ========================================
 * jQuery Plugins
 * ========================================
 */



