@charset "UTF-8";
/* COLOR

 #1EA33E

*/

/* BOX */
header, article, section, aside, footer, 
div, dl, dt, dd, ul, ol, li {
	position: relative;
	}
.inner {
	display: block;
	margin: auto;
	width: 940px;
	}
@media screen and (max-width:640px) {
	.inner {
		width: 580px;
		}
}


/* COLUMN */
.col_list {
	clear: both;
	overflow: hidden;
	zoom: 1;
	}
.col_list:after {
	content: " ";
	display: block;
	clear: both;
	height: 1px;
	visibility: hidden;
	}
.col_list > .col {
	display: block;
	float: left;
	margin: 0.5rem 0 0.5rem 2%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	}
.col01 > .col { width: 100%; }
.col02 > .col { width:  49%; }
.col03 > .col { width:  32%; }
.col04 > .col { width:  23.5%; }
.col01 > .col, 
.col02 > .col:nth-child(2n+1), 
.col03 > .col:nth-child(3n+1), 
.col04 > .col:nth-child(4n+1) {
	clear: left;
	margin-left: 0;
	}
@media screen and (max-width:640px) {
	.col_list > .col {
		margin-right: auto;
		margin-left: auto;
		}
	.col01 > .col, 
	.col02 > .col, 
	.col03 > .col, 
	.col04 > .col { width: 100%; }
	
	.col_list.sp_col02 > .col {
		clear: none !important;
		width: 49% !important;
		}
}


/* HEADER 
==================== */
#header {
	z-index: 100;
	}
#header #hnav {
	display: table;
	z-index: auto;
	}
#header #hnav ._logo, 
#header #hnav .header_menu {
	display: table-cell;
	vertical-align: middle;
	}
#header ._panel {
	z-index: 101;
	}


/* logo */
#header ._logo {
	position: relative;
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	text-align: left;
	z-index: 102;
	}
#header ._logo > a {
	display: inline-block;
	width: 12rem;
	}
	
/* header_menu */
#header .header_menu {
	text-align: right;
	}
#header .header_menu > .menu_list {
	font-size: 0.857em;
	}	
#header .header_menu > .menu_list > li {
	width: 20rem;
	}
#header .btn_inquiry:before {
	content: '？';
	top: -0.1rem;
	bottom: -0.1rem;
	left: -0.1rem;
	padding-top: 0.3rem;
	padding-bottom: 0.3rem;
	width: 2.6rem;
	height: 2.6rem;
	border-radius: 50%;
	background-image: none;
	color: #FFF;
	font-size: 2rem;
	text-align: center;
	line-height: 1;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	}

@media screen and (max-width:640px) {

	#header {
		display: block;
		border-bottom: solid 0.1rem #1EA33E;
		}
	#header #hnav {
		width: 100%;
		}
	#header #hnav ._logo, 
	#header #hnav .header_menu {
		display: block;
		text-align: center;
		}
	#header ._logo {
		background-color: #FFF;
		}
	#sitemenu_switch + #header {
		margin-bottom: 0;
		}
	#sitemenu_switch + #header ._panel {
	float: left;
	margin-top: -100%;
	width: 100%;
	transition: margin-top 0.4s;
		}
	#sitemenu_switch:checked + #header {
		margin-bottom: -0.1rem;
		}
	#sitemenu_switch:checked + #header ._panel {
		margin-top: 0;
		}
	#header .header_menu {
		padding-top: 0.5em;
		padding-bottom: 0.5em;
		background-color: #1EA33E;
		}
	#header .header_menu > .menu_list > li {
		width: 48%;
		}
	#header .header_menu > .menu_list .btn._link {
		display: block;
		padding-top: 0.25em;
		padding-bottom: 0.25em;
		}
	#header .header_menu > .menu_list .btn._link:before {
		left: 0.25em;
		}
	#header .header_menu > .menu_list .btn._link.btn_inquiry {
		padding-top: 0.75em;
		padding-bottom: 0.75em;
	}

	#header #sitemenu_btn {
		display: block;
		position: absolute;
		top: 100%;
		right: 0;
		padding: 0.25em 0;
		width: 5em;
		border-radius: 0 0 0.5rem 0.5rem;
		background-color: #1EA33E;
		color: #FFF;
		font-weight: bold;
		}
}


/* GLOBAL NAVI & FOOTER
==================== */
#gnav, 
#footer {
	background-color: #1EA33E;
	}


/* GLOBAL NAVI
==================== */
#gnav {
	}
#gnav .gnav_list {
	display: table;
	table-layout: fixed;
	}
#gnav .gnav_list > li {
	display: table-cell;
	border-style: solid;
	border-width: 0 0 0 0.1rem;
	border-color: #FFF;
	vertical-align: middle;
	}
#gnav .gnav_list > li:last-child {
	border-right-width: 0.1rem;
	}
#gnav .gnav_list > li:nth-child(3) > a {
	letter-spacing: 0.4em;
	text-indent: 0.4em;
	}
#gnav .gnav_list > li:nth-child(4) > a {
	letter-spacing: 1em;
	text-indent: 1em;
	}
#gnav .gnav_list a {
	display: block;
	padding: 1.2em 0;
/*
	background: rgb(229,229,229);
	background-image: -moz-linear-gradient(top, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%, rgba(247,247,247,1) 100%);
	background-image: -webkit-linear-gradient(top, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%,rgba(247,247,247,1) 100%);
	background-image: linear-gradient(to bottom, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%,rgba(247,247,247,1) 100%);
*/
	color: #FFF;
	font-weight: bold;
	text-decoration: none;
	background-image: -moz-linear-gradient(top, 
		rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 5%, rgba(0,0,0,0) 85%, rgba(0,0,0,0.2) 100%);
	background-image: -webkit-linear-gradient(top, 
		rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 5%, rgba(0,0,0,0) 85%,rgba(0,0,0,0.2) 100%);
	background-image: linear-gradient(to bottom, 
		rgba(0,0,0,0) 0%, rgba(0,0,0,0.1) 5%, rgba(0,0,0,0) 85%,rgba(0,0,0,0.2) 100%);
	-webkit-box-shadow: 0 0 0.1rem 0.1rem rgba(0,0,0,0.2) inset;
	-moz-box-shadow: 0 0 0.1rem 0.1rem rgba(0,0,0,0.2) inset;
	box-shadow: 0 0 0.1rem 0.1rem rgba(0,0,0,0.2) inset;
	}
#gnav .gnav_list a:hover {
	background-color: #FFF;
	color: #1EA33E;
	}


@media screen and (max-width:640px) {
	#gnav {
		padding-bottom: 0.1rem;
		}
	#gnav .gnav_list {
		display: block;
		width: auto;
		}
	#gnav .gnav_list > li {
		display: block;
		width: auto;
		margin-top: 0.1rem;
		border: none;
		}
	#gnav .gnav_list > li:last-child {
		border: none;
		}
	#gnav .gnav_list > li + li {
		border-width: 0;
		}
	#gnav .gnav_list a {
		padding: 0.5em 1em;
		background-color: #00a33e;
		text-align: left;
		}
	#gnav .gnav_list a, 
	#gnav .gnav_list > li:nth-child(3) > a,
	#gnav .gnav_list > li:nth-child(4) > a {
		letter-spacing: 0.1rem;
		text-indent: 1.2em;
		}

	#gnav .gnav_list a:before {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		left: 1em;
		margin: auto;
		width: 1em;
		height: 1em;
		border-radius: 50%;
		background: #00a33e url(../images/arrow_white.png) center center no-repeat;
		background-size: cover;
		}
}


/* BREADCRUMB 
==================== */
.bc {
	text-align: left;
	}
.bc .bc_list {
	display: inline-block;
	margin: 1em auto;
	padding-top: 0.5em;
	padding-bottom: 0.5em;
	border-style: dotted;
	border-color: #ccc;
	border-width: 0 0 0.1rem;
	font-size: 0.857em;
	line-height: 1.25;
	}
.bc .bc_list > li {
	display: inline-block;
	}
.bc .bc_list > li + li:before {
	content: '>';
	display: inline-block;
	margin: auto 0.5em;
	color: #CCC;
	}
.bc .bc_list a {
	color: #666;
	}
@media screen and (max-width:640px) {
	.bc {
		margin-top: 1.5rem;
		}
	.bc .bc_list {
		border-width: 0.1rem 0 0;
		}
}


/* CONTENT  
==================== */
#content {
	padding-bottom: 20rem; /* #footer height +α */
	text-align: left;
	z-index: 0;
	}
#content .content_body {
	background: -moz-linear-gradient(left, 
		rgba(255,255,255,1) 77%, rgba(247,247,247,1) 77%); 
	background: -webkit-linear-gradient(left, 
		rgba(255,255,255,1) 77%,rgba(247,247,247,1) 77%); 
	background: linear-gradient(to right, 
		rgba(255,255,255,1) 77%,rgba(247,247,247,1) 77%); 
	}
#content .content_main {
	float: left;
	width: 75%;
	}
#content .content_side {
	float: right;
	width: 23%;
	}
#content .category_detail.-no_side .content_body {
	background: none;
	}
#content .category_detail.-no_side .content_main {
	float: none;
	width: auto;
	}
@media screen and (max-width:640px) {
	#content {
		padding-bottom: 2rem;
		}
	#content .content_body {
		background-image: none;
		}
	#content .content_main, 
	#content .content_side {
		float: none;
		width: auto;
		}
}


/* CATEGORY */
#content .category_head {
	position: relative;
	margin-bottom: 2rem;
	padding: 0.5em 0;
	width: auto;
	}
#content .category_head:after {
	content: '';
	display: block;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	margin: auto;
	height: 0.5rem;
	background-color: #F08200;
	background-image: -moz-linear-gradient(-45deg, 
		rgba(255,255,255,1) 25%, rgba(255,255,255,0) 25%, 
		rgba(255,255,255,0) 50%, rgba(255,255,255,1) 50%, 
		rgba(255,255,255,1) 75%, rgba(255,255,255,0) 75%, 
		rgba(255,255,255,0)); 
	background-image: -webkit-linear-gradient(-45deg, 
		rgba(255,255,255,1) 25%, rgba(255,255,255,0) 25%, 
		rgba(255,255,255,0) 50%, rgba(255,255,255,1) 50%, 
		rgba(255,255,255,1) 75%, rgba(255,255,255,0) 75%, 
		rgba(255,255,255,0)); 
	background-image: -o-linear-gradient(-45deg, 
		rgba(255,255,255,1) 25%, rgba(255,255,255,0) 25%, 
		rgba(255,255,255,0) 50%, rgba(255,255,255,1) 50%, 
		rgba(255,255,255,1) 75%, rgba(255,255,255,0) 75%, 
		rgba(255,255,255,0)); 
	background-image: -ms-linear-gradient(-45deg, 
		rgba(255,255,255,1) 25%, rgba(255,255,255,0) 25%, 
		rgba(255,255,255,0) 50%, rgba(255,255,255,1) 50%, 
		rgba(255,255,255,1) 75%, rgba(255,255,255,0) 75%, 
		rgba(255,255,255,0)); 
	background-image: linear-gradient(135deg, 
		rgba(255,255,255,1) 25%, rgba(255,255,255,0) 25%, 
		rgba(255,255,255,0) 50%,　rgba(255,255,255,1) 50%, 
		rgba(255,255,255,1) 75%, rgba(255,255,255,0) 75%, 
		rgba(255,255,255,0)); 
	background-size: 0.8rem 0.8rem;
	}
#content .category_head > ._title {
	display: block;
	color: #333;
	font-size: 1.286em;
	}
#content .category_list {
	background-color: #CEE0C1;
	padding: 3rem 0;
	}
#content .category_list .category_info {
	border-radius: 0.5rem;
	background-color: #FFF;
	overflow: hidden;
	}

/* category_info */
#content .category_info {
	}
#content .category_info > ._title {
	display: table;
	width: 100%;
	border-bottom: solid 0.1rem #ccc;
	background-color: #1EA33E;
	}
#content .category_info > ._title a {
	display: table-cell;
	padding: 1rem 2.5rem 1rem 1rem;
	background-image: -moz-linear-gradient(top, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%, rgba(247,247,247,1) 100%);
	background-image: -webkit-linear-gradient(top, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%,rgba(247,247,247,1) 100%);
	background-image: linear-gradient(to bottom, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%,rgba(247,247,247,1) 100%);
	color: #333;
	text-decoration: none;
	vertical-align: middle;
	}
#content .category_info > ._title a:after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 1em;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.4em 0 0.4em 0.6em;
	border-color: transparent transparent transparent #1EA33E;
	}
#content .category_info > ._title a:hover {
	color: #1EA33E;
	text-shadow: 0 0 0.2rem #FFF;
	}
#content .category_info > ._text {
	padding: 1rem;
	}


/* CATEGORY MENU*/
#content .category_menu {
	}
#content .category_menu > .menu_list {
	background-color: #1EA33E;
	}
#content .category_menu > .menu_list > li {
	display: block;
	margin-top: 0;
	}
#content .category_menu > .menu_list a {
	padding: 1em 1em 1em 2em;
	line-height: 1.2;
	border-bottom: solid 0.1rem #CCC;
	background-color: #F7F7F7;
	background-image: -moz-linear-gradient(top, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%, rgba(247,247,247,1) 100%);
	background-image: -webkit-linear-gradient(top, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%,rgba(247,247,247,1) 100%);
	background-image: linear-gradient(to bottom, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%,rgba(247,247,247,1) 100%);
	color: #333;
	text-decoration: none;
	}
#content .category_menu > .menu_list a:after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 1em;
	margin: auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0.4em 0 0.4em 0.6em;
	border-color: transparent transparent transparent #1EA33E;
	}
#content .category_menu > .menu_list a:hover {
	color: #1EA33E;
	}
@media screen and (max-width:640px) {
	#content .category_menu > .menu_list a {
		padding: 0.5em 1em 0.5em 2em;
		}
}


/* ARTICLE 
==================== */

#content article {
	}
#content article .article_title {
	position: relative;
	margin-bottom: 2rem;
	padding-left: 2.5rem;
	font-size: 1.286em;
	}
#content article .article_title:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 1rem;
	height: 1rem;
	border: solid 0.5rem #1EA33E;
	border-radius: 50%;
	}
#content article .article_subtitle {
	margin-bottom: 0.2em;
	color: #1EA33E;
	/*font-size: 1.143em;*/
	}

/* SECTION */
#content article section {
	clear: both;
	margin-top: 3rem;
	margin-bottom: 3rem;
	padding-left: 1.5rem;
	padding-right: 1.5rem;
	}
#content .section_title {
	position: relative;
	margin: 1rem -1.5rem;
	padding: 0.3em 1em 0.3em 1.5em;
	border-radius: 0.8em;
	background-color: #CEE0C1;
	line-height: 1;
	z-index: auto;
	}
#content .section_title:before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0.3em;
	margin: auto;
	width: 1em;
	height: 1em;
	border-radius: 50%;
	background-color: #1EA33E;
	}
#content .section_text {
	margin: 1rem auto;
	}
#content .section_text ol, 
#content .section_text ul {
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
	}
#content .section_text .mark_block > ._title {
	margin-top: 1em;
	margin-bottom: 0.5em;
	padding-left: 1em;
	border-style: solid;
	border-color: #F08200;
	border-width: 0 0 0.1rem;
	}
#content .section_text .mark_block > ._title:before {
	content: '';
	display: inline-block;
	margin-left: -1em;
	margin-right: 0.4em;
	width: 0.6em;
	height: 0.6em;
	background-color: #F08200;
	}
#content .section_text li > ._title {
	margin: -1.2em 0 0.5em -1em;
	padding-left: 1em;
	border-style: solid;
	border-color: #F08200;
	border-width: 0 0 0.1rem;
	}

@media screen and (max-width:640px) {

}

/* INFORMATION 
.information {
	margin: 1em auto;
	border-radius: 0.5rem 0.5rem 0 0;
	overflow: hidden;
	}
.information > ._title {
	padding: 0.5em;
	border-bottom: solid 0.2rem #F08200;
	background-color: #F7F7F7;
	background-image: -moz-linear-gradient(top, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%, rgba(247,247,247,1) 100%);
	background-image: -webkit-linear-gradient(top, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%,rgba(247,247,247,1) 100%);
	background-image: linear-gradient(to bottom, 
		rgba(229,229,229,1) 0%, rgba(242,242,242,1) 20%,rgba(247,247,247,1) 100%);
	}
.information ._more {
	position: absolute;
	top: 0.5em;
	right: 0.5em;
	}
.information ._more:before {
	content: '';
	display: inline-block;
	margin-right: 0.5em;
	border-style: solid;
	border-color: transparent transparent transparent #FFF;
	border-width: 0.4em 0 0.4em 0.5em;
	}
.information .info_list {
	font-size: 0.875em;
	}
@media screen and (max-width:640px) {
	.information {
		padding-bottom: 2em;
		}
	.information ._more {
		top: auto;
		bottom: 0;
		left: 0.5em;
		text-align: center;
		}
}
*/

/* FOOTER  
==================== */
#footer {
	position: absolute;
	right: 0;
	left: 0;
	bottom: 0;
	padding-top: 2rem;
	padding-bottom: 2rem;
	z-index: 100;
	}
#footer, 
#footer a {
	color: #FFF;
	}
#footer ._logo {
	display: block;
	width: 10rem;
	height: auto;
	}
@media screen and (max-width:640px) {
	#footer {
		position: relative;
		}
}

/* footer_menu */
#footer .footer_menu {
	}
#footer .footer_menu .menu_list {
	font-size: 0.857em;
	}
#footer .footer_menu .menu_list > li {
	display: inline-block;
	padding-right: 0.5em;
	padding-left: 0.5em;
	border: solid #FFF 0;
	}
#footer .footer_menu .menu_list > li + li {
	border-left-width: 0.1rem;
	}
#footer .footer_menu .menu_list a {
	display: block;
	font-weight: bold;
	}
@media screen and (max-width:640px) {
	#footer .footer_menu .menu_list > li {
		padding-right: 0.2em;
		padding-left: 0.2em;
		}
}

/* foot_message */
#footer .foot_message {
	display: inline-block;
	margin: 1em auto;
	color: #FFFFFF;
	font-size: 0.75em;
	font-weight: bold;
	letter-spacing: 0.1em;
	}

/* site_list */
#footer .site_list {
	display: table;
	margin: 1rem auto;
	}
#footer .site_list > li {
	display: table-cell;
	padding-right: 1rem;
	padding-left: 1rem;
	vertical-align: middle;
	}
#footer .btn._link {
	border-color: #FFF;
	background-color: transparent;
	color: #FFF;
	font-size: 0.857em;
	}
#footer .btn._link:before {
	border-radius: 50%;
	}
@media screen and (max-width:640px) {
	#footer .site_list > li {
		display: block;
		}
}

/* copyright */
#footer .copyright {
	font-size: 0.857em;
	}
@media screen and (max-width:640px) {
	#footer .site_list {
		display: block;
		}
	#footer .footer_copyright {
		padding-top: 0;
		}
	#footer .btn._link {
		margin-top: 1rem;
		width: 90%;
		}
}



/* PAGETOP 
==================== */
#pagetop {
	position: fixed;
	right: 5%;
	bottom: -2em;
	height: 2em;
	line-height: 1;
	opacity: 0;
	transition: all 0.4s;
	z-index: 9999;
	}
#pagetop.-active {
	opacity: 0.8;
	bottom: -0.5rem;
	}
#pagetop:hover {
	opacity: 1;
	}
#pagetop .btn_pagetop {
	padding-top: 0.5em;
	background-color: #EF8D18;
	color: #FFF;
	}
#pagetop .btn_pagetop:before {
	content: '';
	display: inline-block;
	margin-right: 0.2em;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0.4em 0.8em 0.4em;
	border-color: transparent transparent #FFF transparent;
	vertical-align: middle;
	}
@media screen and (max-width:640px) {
}
