@charset "UTF-8";  

body {  
	font-size	: 3.6vw;
	line-height	: 180%;
	-webkit-text-size-adjust: 100%; /* for iOS */
	background: #fff;
	font-family	: 'Noto Serif JP', "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}  
.pc ,.pc2 {
	display: none;
}

.sp {
	display: inline-block ;
}

.sp2 {
	display: block ;
}


#wrapper {
	width: 100%;
	margin: auto;
	padding: 0;
}


/*====================================
ヘッダー
=====================================*/
header {
	position: fixed;
	width: 100%;
	margin: auto;
	padding: 3% 2%;
	text-align: left;
	background: #fff;
	top: 0;
	left: 0;
	z-index: 100;
}
	header h1 {
		width: 60%;
		margin: 0;
		padding: 0;
	}
		header h1 a {
			margin: 0;
			padding: 0;
			font-size: 4.2vw;
			line-height: 160%;
			font-weight: 500;
			letter-spacing: 0.02em;
			font-family: 'Noto Serif JP', serif;
			color: #000 !important;
			text-decoration: none !important;
			display: flex;
			align-items: flex-end;

		}
			header h1 a img {
				display: inline-block;
				width: 20%;
				height: auto;
				margin: 0 0.2em 0.2em 0;
			}
			header h1.brightness {
				display: none;
			}

	header #menu {
		position: fixed;
		width: 11%;
		height: 3em;
		margin: auto;
		padding: 0;
		cursor: pointer;
		background: url(../images/common/menu_off.png) no-repeat center center;
		background-size: contain;
		transition: 0.3s;
		top: 0.3em;
		right: 2%;
		z-index: 110;
	}
		header #menu.active {
			cursor: pointer;
			background: url(../images/common/menu_on.png) no-repeat center center;
			background-size: contain;
		}
	header nav {
		display: none;
	}

#accordion {
	display: none;
	position: fixed;
	width: 100%;
	height: 100vh;
	margin: auto;
	padding: 0;
	top: 0;
	left: 0;
	background: rgba(255,255,255,0.9);
	z-index: 90;
}
	#accordion .accordion_in {
		width: 100%;
		height: 100vh;
		margin: auto;
		padding: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	#accordion h2 {
		width: 100%;
		margin: 0;
		padding: 0;
	}
		#accordion h2 img {
			width: 25%;
			height: auto;
		}
	#accordion ul {
		width: 100%;
		margin: 10% 0 0;
		padding: 0 0 20%;
		list-style: none;
	}
		#accordion ul li {
			display: block;
			margin: 0 auto 0;
			padding: 0;
		}
			#accordion ul li a {
				display: inline-block;
				margin: 0 auto;
				padding: 2% 0;
				font-size: 4.6vw;
				line-height: 200%;
				font-weight: bold;
				color: #005124;
				letter-spacing: 0.2em;
				text-decoration: none;
			}
			#accordion ul li span {
				display: inline-block;
				margin: 0 auto;
				padding: 2% 0 1%;
				font-size: 4.6vw;
				line-height: 200%;
				font-weight: bold;
				color: #000;
				letter-spacing: 0.2em;
			}
		#accordion ul .sub_menu {
			margin: 0 auto 2%;
			padding: 0;
		}
			#accordion ul .sub_menu a {
				width: 70%;
				margin: 0 auto;
				padding: 0;
				border: 1px solid #73A883;
				background: #fff !important;
				text-decoration: none;
				display: flex;
				justify-content: space-between;
				align-items: center;
			}
				#accordion ul .sub_menu a:nth-of-type(n+2) {
					margin: 1% auto 0;
				}
				#accordion ul .sub_menu a p {
					margin: 0 auto;
					padding: 0;
					font-size: 4.0vw;
					line-height: 180%;
				}
				#accordion ul .sub_menu a img {
					width: 35%;
					height: auto;
				}


/*====================================
共通
=====================================*/
main {
	width: 100%;
	margin: auto;
	padding: 5em 0 0;

}
/* 下層ページコンテンツ */
div.contents_in {
	clear: both;
	width: 100%;
	margin: 0 auto;
	padding: 0 3%;
}


/*====================================
下層ページ共通
=====================================*/
/* ページタイトル */
#sub_kv {
}
	#sub_kv h2 {
	}

/* パンくず */
#breadcrumb {
	display: none;
}

/* コンテンツのタイトル */
h3.cont_ttl {
}


/*====================================
フッター
=====================================*/
#footer {
	width: 100%;
	height: 10em;
	margin: 0 auto;
	padding: 0;
	background: url(../images/common/sp_footer_bg.jpg) center / cover no-repeat;
}
footer {
	width: 100%;
	margin: 0 auto;
	padding: 10% 3% 2%;
	background: #fff;
	position: relative;
	z-index: 1;
}
	footer div.footer_in {
		width: 100%;
		margin: 0 auto;
		padding: 0;
		text-align: left;
	}
	footer div.footer_in h6 {
		width: 60%;
		margin: 0 auto;
		padding: 0;
	}
		footer div.footer_in h6 a {
			margin: 0;
			padding: 0;
			font-size: 4.2vw;
			line-height: 160%;
			font-weight: 400;
			letter-spacing: 0.02em;
			font-family: 'Noto Serif JP', serif;
			color: #000 !important;
			text-decoration: none !important;
			display: flex;
			align-items: flex-end;
		}
			footer div.footer_in h6 a img {
				display: inline-block;
				width: 20%;
				height: auto;
				margin: 0 0.2em 0.2em 0;
			}
		footer div.footer_in h6 p { 
			margin: 1% 0 0;
			padding: 0 0 0 calc(20% + 0.2em);
			font-size: 3.0vw;
			line-height: 120%;
			font-weight: 400;
		}
	footer div.footer_in .footer_nav {
		margin: 0 auto;
		padding: 3% 0 0;
		text-align: left;
	}
		footer div.footer_in .footer_nav ul {
			width: 90%;
			margin: 5% auto 0;
			padding: 0;
			list-style: none;
			display: flex;
			flex-wrap: wrap;
		}
			footer div.footer_in .footer_nav ul li {
				width: 100%;
				margin: 2% 0 0;
				padding: 0;
				font-size: 3.6vw;
				line-height: 140%;
			}
				footer div.footer_in .footer_nav ul li a,
				footer div.footer_in .footer_nav ul li span {
					margin: 0;
					padding: 0;
					color: #000 !important;
					text-decoration: none;
				}
				footer div.footer_in .footer_nav ul li.sub1,
				footer div.footer_in .footer_nav ul li.sub2 {
					width: 50% !important;
				}
					footer div.footer_in .footer_nav ul li.sub1 a:before {
						display: inline-block;
						content: '－';
						margin: 0 5px;
						padding: 0;
						color: #73A883;
					}
	footer div.copy {
		width: 100%;
		margin: 10% auto 0;
		padding: 0;
		font-size: 3.2vw;
		line-height: 120%;
		font-weight: 400;
	}

#page_top {
    position: fixed;
	display: none;
    bottom: 15px;
    right: 1%;
	z-index: 30;
}
	#page_top a {
		display: inline-block;
		width: 90%;
		margin: 0;
		padding: 0;
	}
		#page_top a img {
			width: 100%;
			height: auto;
		}
