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

/**
 * CSS Information
 * ===============================================================
 *
 * Site URL:  http://
 * File name: layout.css
 * Summary:   レイアウト用スタイル
 * Author:    CrEa Inc.
 *
 * -----------------------------------
 *
 * TOC:
 *     =1    structures
 *       =1-1    header
 *       =1-2    contents
 *                 - main contents
 *                 - navigation
 *       =1-3    sidepanel
 *       =1-4    footer
 *     =2    breakpoint checker (for javascript)
 *
 * ===============================================================
*/



/** =1
 * ========================================
 * structures
 * ========================================
 */

.l-container {
	position: relative;
	height: auto;
	min-height: 100%;
	width: 100%;
	margin: 0 auto;
}

/* -- >>> styles for narrow layout ----- */
@media screen and (max-width: 599px) {
	.l-container {
		right: 0;
		z-index: 2;
		margin: 0;
		-moz-transition: all 300ms ease-in-out;
		-webkit-transition: all 300ms ease-in-out;
		transition: all 300ms ease-in-out;
	}
	.is-panelopened .l-container {
		right: 250px;
	}
}

/* -- >>> styles for medium layout ----- */
@media screen and (min-width: 600px) and (max-width: 959px) {
	.l-container {
	}
}

/* -- >>> styles for wide layout ----- */
@media screen and (min-width: 960px) {
	.l-container {
	}
}

.l-inner {
	margin: 0 auto;
	width: 900px;
}

	/* -- >>> styles for narrow layout ----- */
	@media screen and (max-width: 599px) {
		.l-inner {
			width: 100%;
			padding: 0 5% 1%;
		}
	}

	/* -- >>> styles for medium layout ----- */
	@media screen and (min-width: 600px) and (max-width: 959px) {
		.l-inner {
			width: 100%;
			max-width: 900px;
			padding: 0 5%;
		}
	}

	/* -- >>> styles for wide layout ----- */
	@media screen and (min-width: 960px) {
		.l-inner {
			width: 900px;
		}
	}














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

		.l-header {
			width: 100%;
			height: 80px;
			background: #EBEBEB;
		}

			/* -- >>> styles for narrow layout ----- */
			@media screen and (max-width: 599px) {
				.l-header {
				}
			}

			/* -- >>> styles for medium layout ----- */
			@media screen and (min-width: 600px) and (max-width: 959px) {
				.l-header {
				}
			}

			/* -- >>> styles for wide layout ----- */
			@media screen and (min-width: 960px) {
				.l-header {
				}
			}


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

		.l-contents {
		}

			/* -- >>> styles for narrow layout ----- */
			@media screen and (max-width: 599px) {
				.l-contents {
				}
			}

			/* -- >>> styles for medium layout ----- */
			@media screen and (min-width: 600px) and (max-width: 959px) {
				.l-contents {
				}
			}

			/* -- >>> styles for wide layout ----- */
			@media screen and (min-width: 960px) {
				.l-contents {
				}
			}


			/* [ main contents ]
			------------------------------ */
			.l-main {
				padding: 20px;
				background: #FFF;
			}

				/* -- >>> styles for narrow layout ----- */
				@media screen and (max-width: 599px) {
					.l-main {
					}
				}

				/* -- >>> styles for medium layout ----- */
				@media screen and (min-width: 600px) and (max-width: 959px) {
					.l-main {
					}
				}

				/* -- >>> styles for wide layout ----- */
				@media screen and (min-width: 960px) {
					.l-main {
						float: left;
						width: 710px;/*750*/
					}
				}

			.l-article {
				margin: 0 auto 20px;
			}

				/* -- >>> styles for narrow layout ----- */
				@media screen and (max-width: 599px) {
					.l-article {
						padding: 0;
					}
				}

				/* -- >>> styles for medium layout ----- */
				@media screen and (min-width: 600px) and (max-width: 959px) {
					.l-article {
						padding: 0;
					}
				}

				/* -- >>> styles for wide layout ----- */
				@media screen and (min-width: 960px) {
					.l-article {
					}
				}

			.l-section {
			}

				/* -- >>> styles for narrow layout ----- */
				@media screen and (max-width: 599px) {
					.l-section {
					}
				}

				/* -- >>> styles for medium layout ----- */
				@media screen and (min-width: 600px) and (max-width: 959px) {
					.l-section {
					}
				}

				/* -- >>> styles for wide layout ----- */
				@media screen and (min-width: 960px) {
					.l-section {
					}
				}


			/* [ navigation ]
			------------------------------ */
			.l-nav {
				background: #09A159;
			}

			.navList {
				background: #09A159;
			}

				/* -- >>> styles for narrow layout ----- */
				@media screen and (max-width: 599px) {
					.l-nav {
						display: none;
					}

					.l-nav {
						position: absolute;
						top: 60px;
						z-index: 10;
						width: 100%;
					}

					.l-nav .navHandler {
						display: block;
					}
				}

				/* -- >>> styles for medium layout ----- */
				@media screen and (min-width: 600px) and (max-width: 959px) {
					.l-nav {
						display: block !important;
					}
				}

				/* -- >>> styles for wide layout ----- */
				@media screen and (min-width: 960px) {
					.l-nav {
						display: block !important;
						float: right;
						width: 210px;/*230*/
						padding:20px 10px;
					}
				}


		/** =1-3
		 * sidepanel
		 * ----------------------------------
		 */

		.l-sidepanel {
		}

		.l-sidepanel li a {
			display: block;
			padding: 5px;
		}

			/* -- >>> styles for narrow layout ----- */
			@media screen and (max-width: 599px) {
				.l-sidepanel {
					position: fixed;
					top: 0;
					right: -250px;
					z-index: -10;
					overflow-y: auto;
					width: 250px;
					height: 100%;
					background: #09A159;
					-moz-transition: all 300ms ease-in-out;
					-webkit-transition: all 300ms ease-in-out;
					transition: all 300ms ease-in-out;
				}

				.is-panelopened .l-sidepanel {
					display: block;
					z-index: 1;
					right: 0;
				}

				.l-sidepanel .navHandler {
					position: static;
				}
			}

			/* -- >>> styles for medium layout ----- */
			@media screen and (min-width: 600px) and (max-width: 959px) {
				.l-sidepanel {
					display: none;
				}
			}

			/* -- >>> styles for wide layout ----- */
			@media screen and (min-width: 960px) {
				.l-sidepanel {
					display: none;
				}
			}


		/** =1-4
		 * footer
		 * ----------------------------------
		 */

		.l-footer {
			width: 100%;
			height: 100px;
			background: #EBEBEB;
		}

			/* -- >>> styles for narrow layout ----- */
			@media screen and (max-width: 599px) {
				.l-footer {
				}
			}

			/* -- >>> styles for medium layout ----- */
			@media screen and (min-width: 600px) and (max-width: 959px) {
				.l-footer {
				}
			}

			/* -- >>> styles for wide layout ----- */
			@media screen and (min-width: 960px) {
				.l-footer {
				}
			}



	/** =2
	 * ========================================
	 * breakpoint checker (for javascript)
	 * ========================================
	 */

	#js-breakpointChecker {
		position: absolute;
		z-index: -100;
		width: 0;
		height: 0;
		overflow: hidden;
	}

	#js-breakpointChecker div {
		display: none;
	}

		/* -- >>> styles for narrow layout ----- */
		@media screen and (max-width: 599px) {
			#js-breakpointChecker .narrow {
				display: block;
			}
		}

		/* -- >>> styles for medium layout ----- */
		@media screen and (min-width: 600px) and (max-width: 959px) {
			#js-breakpointChecker .medium {
				display: block;
			}
		}

		/* -- >>> styles for wide layout ----- */
		@media screen and (min-width: 960px) {
			#js-breakpointChecker .wide {
				display: block;
			}
		}
