@charset "utf-8";

/* Google Fonts
========================================================================== */

@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:400,700&amp;subset=japanese');
@import url('https://fonts.googleapis.com/css?family=Noto+Serif+JP:400,700&amp;subset=japanese');



/* layout
========================================================================== */

html {
	overflow-y: scroll;
}

body {
}

#wrap {
	width: 100%;
	min-width: 960px;
	min-height: 100%;
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", Meryo, "メイリオ", "ヒラギノ角ゴ ProN W3", Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
	font-size: 108%; /* 14px */
	position: relative;
}


/* selected text
-------------------------------------------------------------------------- */

::selection {
	background: #dddddd; /* Safari */
}
::-moz-selection {
	background: #dddddd; /* Firefox */
}



/* anchor
========================================================================== */

a {
	color: #333;
	text-decoration: none;
}

a:hover {
	color: #ccc;
}

a:link,
a:visited,
a:active,
a:hover {
	outline: none;
}



/* header
========================================================================== */

header {
	width: 960px;
	height: 110px;
	margin: 0 auto;
	padding: 0 40px;
	text-align: left;
	position: relative;
	zoom: 1;
}
header:after {
	content:"";
	display: block;
	clear: both;
}

#logo {
	float: left;
}
#logo img {
	width: 400px;
	margin-top: 25px;
}


/* global navi
-------------------------------------------------------------------------- */

#gnav {
	margin-top: 25px;
	float: right;
	zoom: 1;
}
#gnav:after {
	content:"";
	display: block;
	clear: both;
}

#gnav > ul > li {
	float: left;
	position: relative;
	z-index: 100;
}

#gnav > ul > li > a {
	height: 60px;
	padding: 0 15px;
	line-height: 60px;
	display: block;
}
#gnav > ul > li a.current,
#gnav > ul > li a:hover {
	color: #39b54a;
}


/* global navi (child)
-------------------------------------------------------------------------- */

#gnav > ul > li > ul {
	width: 180px;
	margin-left: -90px;
	background: #fff;
	border-radius: 5px;
	box-shadow: 0 0 6px -2px #000;
	text-align: center;
	display: none;
	position: absolute;
	top: 60px;
	left: 50%;
}

#gnav > ul > li > ul > li a {
	padding: .75em 0;
	border-bottom: 1px solid #ccc;
	display: block;
}
#gnav > ul > li > ul > li:last-child a {
	border-bottom: none;
}



/* title
========================================================================== */

#title {
	height: 130px;
	margin-bottom: 10px;
	background: #8cc63f;
	background: -moz-linear-gradient(left, #8cc63f 0%, #d9e021 50%, #fcee21 100%);
	background: -webkit-linear-gradient(left, #8cc63f 0%, #d9e021 50%, #fcee21 100%);
	background: linear-gradient(to right, #8cc63f 0%, #d9e021 50%, #fcee21 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#8cc63f', endColorstr='#fcee21',GradientType=1 );
	color: #fff;
	text-align: left;
}

#title h1 {
	width: 960px;
	margin: 0 auto;
	background: url(../img/common/bg_title.png) no-repeat center center;
	color: #fff;
	font-size: 172%; /* 24px */
	line-height: 130px;
}

#title p {
	width: 960px;
	height: 107px;
	margin: 0 auto;
	padding-top: 23px;
	background: url(../img/common/bg_title.png) no-repeat center center;
	color: #fff;
	line-height: 2;
}



/* breadcrumb
========================================================================== */

#breadcrumb {
	width: 960px;
	margin: 0 auto 30px;
	padding: 0 40px;
	text-align: left;
	zoom: 1;
}
#breadcrumb:after {
	content:"";
	display: block;
	clear: both;
}

#breadcrumb ul {
	float: right;
}

#breadcrumb ul li {
	margin-right: .25em;
	font-size: 86%; /* 12px */
	float: left;
}

#breadcrumb ul li a {
	text-decoration: none;
}
#breadcrumb ul li a:after {
	width: 1em;
	margin-left: .5em;
	content: "＞";
	color: #333;
	line-height: 1.2;
	text-align: center;
	display: inline-block;
}



/* footer
========================================================================== */

footer {
	width: 100%;
	min-width: 1040px;
	height: 120px;
	padding-top: 30px;
	background: #edeae0;
	text-align: left;
	position: absolute;
	bottom: 0;
}

#footer {
	width: 960px;
	margin: 0 auto;
	padding: 0 40px;
}


/* address
-------------------------------------------------------------------------- */

footer address {
	float: left;
}
footer address strong {
	font-weight: normal;
	float: left;
	display: block;
}
footer address span {
	padding-left: 4em;
	display: block;
}


/* copyright
-------------------------------------------------------------------------- */

#copyright {
	font-size: 79%; /* 11px */
	float: right;
}


/* page up
-------------------------------------------------------------------------- */

#pageup {
	display: none;
	position: fixed;
	bottom: 0;
	right: 40px;
}

#pageup a {
	width: 120px;
	height: 40px;
	background: #009245;
	background: -moz-linear-gradient(left, #009245 0%, #8cc63f 50%, #d9e021 100%);
	background: -webkit-linear-gradient(left, #009245 0%, #8cc63f 50%, #d9e021 100%);
	background: linear-gradient(to right, #009245 0%, #8cc63f 50%, #d9e021 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#009245', endColorstr='#d9e021',GradientType=1 );
	color: #fff;
	font-size: 86%; /* 12px */
	line-height: 40px;
	text-align: center;
	display: block;
}
#pageup a:after {
	margin-left: .25em;
	content: "\f106";
	color: #fff;
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 117%; /* 14px */
	display: inline-block;
}



/* print
========================================================================== */

@media only print {
	body {
		background: #fff;
		color: #000;
	}
}