@charset 'utf-8';

/****************************************

	General Setting

*****************************************/

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
main, footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	line-height: 1;
	vertical-align: baseline;
	background: transparent;
}

html {
	font-size: 62.5%;
}
body {
	background: url(./img/common/bg.jpg) repeat 0 0;
  	color: #222;
  	font-size: 16px;
	font-size: 1.6rem; 
	font-style: normal;
	font-family: "游明朝", "YuMincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif,
				 "Font Awesome 5 Free";
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

@media only screen and (max-width: 47.9375em) {
	body {
		font-size: 14px;
		font-size: 1.4rem;
	}
}

/****************************************

	Typography (TEXT)

*****************************************/

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
	font-size: 1.6rem;
}
address {
	font-style: normal;
}
h1, h2, h3, h4, h5, h6,
p, li, blockquote {
	line-height: 1.5em;
	word-wrap: break-word;
}

.color-red { color: #ff0000; }
.color-orange { color: #DA5019; }
.color-yellow { color: #F6CA06; }
.color-green { color: #23AC0E; }
.color-blue { color: #3261AB; }
.color-purple { color: #B61972; }
.color-violet { color: #744199; }
.color-gray { color: #505050; }

.bold { font-weight: bold; }
.line-und { text-decoration: underline; }
.line-ove { text-decoration: overline; }
.line-thr { text-decoration: line-through; }

.font-10 { font-size: 1.0rem; }
.font-11 { font-size: 1.1rem; }
.font-12 { font-size: 1.2rem; }
.font-13 { font-size: 1.3rem; }
.font-14 { font-size: 1.4rem; }
.font-15 { font-size: 1.5rem; }
.font-16 { font-size: 1.6rem; }
.font-17 { font-size: 1.7rem; }
.font-18 { font-size: 1.8rem; }
.font-19 { font-size: 1.9rem; }
.font-20 { font-size: 2.0rem; }
.font-21 { font-size: 2.1rem; }
.font-22 { font-size: 2.2rem; }
.font-23 { font-size: 2.3rem; }
.font-24 { font-size: 2.4rem; }
.font-25 { font-size: 2.5rem; }
.font-30 { font-size: 3.0rem; }

::selection {
	background: rgba(0,0,0,0.2);
	text-shadow: none;
}

h1, h2, h3, h4, h5, h6, p, dl, ul, ol, a, address,
select, input, label, button {
	-ms-transform: rotate(0.028deg);
}

.animated {
	opacity: 0;
}

/****************************************

	Link

*****************************************/

a {
	color: #c64e19;
	text-decoration: none;
	
	-webkit-transition: all .3s;
    transition: all .3s;
}
a:hover {
	color: #c64e19;
	text-decoration: underline;
}

a:active,
a:hover {
  outline-width: 0;
}

a:hover img {
	opacity: .75;
		
	-webkit-transition: all .3s;
    transition: all .3s;
}

a.no-call {
	cursor: default;
}
a.no-call:hover {
	text-decoration: none;
}

/****************************************

	List

*****************************************/

ul,ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

/****************************************

	Image

*****************************************/

img {
	width: auto;
	height: auto;
}

@media only screen and (max-width: 47.9375em) {
	img {
		max-width: 100%;
		margin: 0 auto;
	}
}

/****************************************

	Layout

*****************************************/

header {
	width: 100%;
}

.wrap_container {
	width: 100%;
	height: auto;
	margin: 0 auto;
}

main {
	width: 100%;
}

main #content {
	width: 100%;
	height: auto;
}

footer {
	width: 100%;
	height: auto;
}

.wrapper {
	width: 100%;
	height: auto;
	margin: 0 auto;
}
.inner {
	width: auto;
	height: auto;
	margin: 0 auto;
}

@media only screen and (max-width: 47.9375em) {
	main #content {
		width: 100%;
		height: auto;
	}
}

/*----------------------------------------
	Layout Site (基本幅固定)
----------------------------------------*/

/*[setting]
　全体の基本幅[ 1000 = 62.5em ]に合わせて変更　*/
.inner {
	width: 1000px;
}

/*　768px以上をPC版とする　*/
@media only screen and (min-width: 48em) and (max-width: 62.5em) {
	header.body_header, /*header.body_header #header,*/
	#hero ,#hero .main_image,
	main, footer {
		min-width: 1000px !important;
		max-width: 100% !important;
	}
}
@media only screen and (min-width: 48em) and (max-width: 62.5em) {
	header.body_header, /*header.body_header #header,*/
	#hero ,#hero .main_image,
	main, footer {
		width: 1000px !important;
	}
}
/*　767px以下をスマホ版とする　*/
@media only screen and (max-width: 47.9375em) {
	.inner {
		width: 100%;
	}
}

/****************************************

	Layout (FlexBox)

*****************************************/

/*----------------------------------------
	Common
----------------------------------------*/

.display_flex,
header, main, footer, nav,
#navigation, #sidebar,
.wrapper, .inner, #content,
ul#menu-gnavi, #navigation .gnavi_base nav ul#menu-gnavi li {
    display: -webkit-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

#content,
header .inner {   
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

main {
	flex-grow: 1;
}
	main .wrapper,
	.wrap_container {
		-webkit-align-items: flex-start;
		align-items: flex-start;
	}

#navigation {
	-webkit-align-items: center;
	align-items: center;
}

ul#menu-gnavi {
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
	ul#menu-gnavi li {
		-webkit-align-items: center;
		align-items: center;
	}

/*----------------------------------------
	FlexBox Page
----------------------------------------*/

.single main section .nextprev,
form#mailformpro dl {
    display: -webkit-flex;
    display: flex;
}

.single main section .nextprev {
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-align-items: center;
	align-items: center;
}

/****************************************

	Header

*****************************************/

#header .inner {
	display: -webkit-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: center;
	align-items: center;
}

/*----- flex設定ここまで -----*/

header.body_header {
	width: 100%;
	height: auto;
	position: absolute;
	top: 0;
	z-index: 9999;
}
	#header {
		width: 100%;
		background-color: rgba(255,255,255,0.6);
	}
		#header .inner {
			width: 1150px;
			height: 110px;
		}
			#header .inner .area_logo {
				width: 311px;
			}
			#header .inner .area_btn {
				width: 200px;
			}
				#header .inner .area_btn a {
					display: block;
					padding: 15px 0;
					text-align: center;
					color: #FFF;
					background-color: #008000;
				}
				#header .inner .area_btn a:hover {
					text-decoration: none;
					background-color: #947318;
				}

@media only screen and (max-width: 47.9375em) {
    header.body_header {
		height: 100px;
		position: fixed;
		top: 0;
	    z-index: 9999;
	}
	/*[setting]
	   Fixed reset */
	#header.fixed {
		padding-top: 0;
		background: transparent;
	}
	#header.fixed .gnavi_base nav {
		margin-left: 0;
	}
	#header {
		position: relative;
    	top: 0;
    	z-index: 1;
    	background-color: #FFF;
    }
	#header .inner {
    	width: 100%;
    	height: auto;
	}
	#header .inner .area_logo {
    	width: 230px;
	}
	#header .inner .area_btn {
    	width: 100%;
	}
	
	
}

/*----------------------------------------
	Header Fixed (#header)
----------------------------------------*/

header.body_header.fixed {
	bottom: auto;
	top: 0;
	transition: top 0.3s ease-in;
/*[setting]
	#headerの高さに合わせて変更　*/
	/*height: auto;*/
}

.body_header.fixed #navigation {

}
	.body_header.fixed #navigation .gnavi_base nav {
	/*[setting]
		ロゴマークの幅に合わせて変更　*/
			/*margin-left: 180px;*/
	}

.body_header.fixed .area_logo {
	
}

@media only screen and (max-width: 47.9375em) {
	
}

/****************************************

	Navigation

*****************************************/

.gnavi_base nav ul#menu-gnavi {
	display: -webkit-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: center;
	align-items: center;
}

/*----- flex設定ここまで -----*/

#navigation {
	width: 100%;
}
#navigation.clone-nav {
	transition: .3s;
	transform: translateY(-150%);
}
#navigation.is-show {
	position: fixed;
	top: 0;
	transform: translateY(0);
	z-index: 9000;
}
#navigation .wrapper {
	height: 40px;
	background-color: #FFF;
}
	#navigation .inner {
		padding: 0;
	}

.gnavi_base {
	width: 100%;
	height: auto;
	margin: 0 0 0 auto;
}
	.gnavi_base nav {
		height: 100%;
	}
	.gnavi_base nav ul#menu-gnavi {
		width: 100%;
	}
	.gnavi_base nav ul#menu-gnavi > li {
		position: relative;
		width: auto;
		min-height: 1em;
		padding: 0;
		text-align: center;
	}
/*[setting]
	グローバルナビ　テキスト設定　*/
	.gnavi_base nav ul#menu-gnavi > li > a {
		width: 100%;
		color: #000;
		font-size: 1.4rem;
		font-weight: bold;
		line-height: 1.3em;
		letter-spacing: 0.1em;
		box-sizing: border-box;
		padding: 0;
		-webkit-transition: all .3s;
    	transition: all .3s;
	}
	.gnavi_base nav ul#menu-gnavi > li > a:hover {
		color: #000;
		text-decoration: underline;
		-webkit-transition: all .3s;
	    transition: all .3s;
	}

	
@media only screen and (max-width: 47.9375em) {
	#navigation {
		height: auto;
		position: absolute;
    	top: 0;
	}
	#navigation.is-show,
	#navigation.clone-nav {
		display: none;
	}
	#navigation .wrapper {
    	height: auto;
    }
	#navigation .inner {
		width: 100%;
		padding: 0;
	}
	
	.gnavi_base {
		width: 100%;
	}
	.gnavi_base nav ul#menu-gnavi {
		padding-bottom: 60px;
	}
	.gnavi_base nav ul#menu-gnavi > li {
    	padding: 0;
    	height: auto;
    }
    .gnavi_base nav ul#menu-gnavi > li > a {
    	font-size: 1.4rem;
    }
    .home .gnavi_base nav ul#menu-gnavi > li > a {
		padding: 1em 0;
	}

}

/*----------------------------------------
	Navigation (Toggle) responsive-nav.js
----------------------------------------*/

/*[setting]
Toggle Button */
.nav_toggle {
	display: none;
	position: absolute;
	right: 12px;
	top: 14px;
	width: 34px;
	height: 36px;
	cursor: pointer;
	z-index: 101;
}
.nav_toggle div {
	position: relative;
}
.nav_toggle span {
	display: block;
	position: absolute;
	height: 4px;
	width: 100%;
	background: #3e3e3e;
	left: 0;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
}
.nav_toggle span:nth-child(1) {
	top: 0;
}
.nav_toggle span:nth-child(2) {
	top: 11px;
}
.nav_toggle span:nth-child(3) {
	top: 22px;
}


@media only screen and (max-width: 47.9375em) {
	.mobile_head {
		width: 100%;
		height: 55px;
		z-index: 999;
		position: relative;
	}
	.global_nav {
		position: fixed;
		visibility: hidden;

		background: #3e3e3e;
		text-align: center;
		width: 100%;
		height: 100%;
		margin-top: 45px;
		
		-moz-transform: translateY(-100%);
		-webkit-transform: translateY(-100%);
		transform: translateY(-100%);
	}
	.gnavi_base nav ul#menu-gnavi {
		display: block;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
	}

	.gnavi_base nav ul#menu-gnavi li a {
		color: #FFF;
		max-width: 100%;
		width: 100%;
		height: auto;
		padding: 1em 0;
		display: block;
		border-top: 1px solid rgba(199, 199, 199, 0.5);
	}
	
	body.no-scroll {
    	overflow: hidden;
	}
	.nav_toggle {
		display: block;
	}
/*[setting]
#nav_toggle 切り替えアニメーション */
	.open .nav_toggle span:nth-child(1) {
		top: 11px;
		-webkit-transform: rotate(315deg);
		-moz-transform: rotate(315deg);
		transform: rotate(315deg);
	}
	.open .nav_toggle span:nth-child(2) {
		width: 0;
		left: 50%;
	}
	.open .nav_toggle span:nth-child(3) {
		top: 11px;
		-webkit-transform: rotate(-315deg);
		-moz-transform: rotate(-315deg);
		transform: rotate(-315deg);
	}
/*[setting]
.global_nav スライドアニメーション */
	.global_nav.narrow {
		-webkit-transition: .5s ease-in-out;
		-moz-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
	}
	.open .global_nav {
		visibility: visible;
		-moz-transform: translateY(0);
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}
}

/****************************************

	Main Visual

*****************************************/

#hero .main_image {
	display: -webkit-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: center;
	align-items: center;
}

/*----- Flexの設定ここまで -----*/

#hero {
	display: none;
}
.home #hero {
	width: 100%;
	height: 620px;
	margin-top: 0;
	background-color: #000;
	display: block;
}
	.home #hero .main_image {
		height: 620px;
		position: relative;
	}
		.home #hero .main_image .carousel-hero {
			width: 100%;
		}
			.home #hero .main_image .carousel-hero .item-list {
				width: 100%;
				height: 620px;
				display: block;
    			background-size: contain;
    			background-position: center center;
    			background-repeat: no-repeat;
			}
			.home #hero .main_image .carousel-hero .item-list.topImg01 {
				background-image: url(./img/top/hero_top1.jpg);
			}
			.home #hero .main_image .carousel-hero .item-list.topImg02 {
				background-image: url(./img/top/hero_top2.jpg);
			}
			.home #hero .main_image .carousel-hero .item-list.topImg03 {
				background-image: url(./img/top/hero_top3.jpg);
			}
			.home #hero .main_image .carousel-hero .item-list.topImg04 {
				background-image: url(./img/top/hero_top4.jpg);
			}
			.home #hero .main_image .carousel-hero .item-list.topImg05 {
				background-image: url(./img/top/hero_top5.jpg);
			}

@media only screen and (max-width: 99.9375em) {
	.home #hero .main_image .carousel-hero .item-list {
    	background-size: cover;
	}
}

@media only screen and (max-width: 47.9375em) {
	.home #hero {
		position: relative;
		height: 250px;
		margin-top: 100px;
	}
	.home #hero .main_image {
		height: 250px;
	}
	.home #hero .main_image .carousel-hero .item-list {
		height: 250px;
		background-size: cover;
	}
}

/****************************************

	Main (Common) .page

*****************************************/


/*----- Flexの設定ここまで -----*/

main {
}

main section {
	width: 100%;
	margin: 0 auto;
}
	main section .cont_title {
		width: 100%;
	}	
	main section .wrap {
		width: 100%;
	}

	
@media only screen and (max-width: 47.9375em) {
	main {
		margin-top: 0;
	}
	_::-webkit-full-page-media, _:future, :root .home main {
   		margin-bottom: 0;
	}
	
	main section {
    	padding: 0;
    	margin: 0 auto ;
	}
	main section .wrap > .inner {
		width: 95%;
	}
	
    span.br::before {
    	content: '\A';
    	white-space: pre;
	}
}


/****************************************

	Home (Page) .home

*****************************************/

.home .cont_report header.cont_title,
.home .cont_greeting header.cont_title,
.home .cont_member header.cont_title {
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.home .cont_menu .inner .unit .list {
	display: -webkit-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

.home .cont_greeting .cont_title,
.home .cont_menu .inner .unit .list li a {
	display: -webkit-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: center;
	align-items: center;
	-webkit-justify-content: center;
	justify-content: center;
}

.home .div .article .txt dl	{
	display: -webkit-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}

/*----- Flexの設定ここまで -----*/

.home .cont_about {
}
	.home .cont_about header.cont_title {
		padding: 50px 0;
		background-color: #FFF;
	}
		.home .cont_about header.cont_title h2 {
			width: 100%;
			font-size: 2.5rem;
			font-weight: bold;
    		text-align: center;
    		letter-spacing: 0.1em;
		}
.home .cont_about .inner {
	padding: 30px 0;
}
	.home .cont_about .inner .unit {
		width: 100%;
	}
		.home .cont_about .inner .unit .lead {
			font-size: 2.0rem;
			font-weight: bold;
			margin: 0 auto;
			text-align: center;
		}
		.home .cont_about .inner .unit .txt {
			font-size: 1.7rem;
			line-height: 1.8em;
			margin: 20px auto;
			text-align: center;
		}

.home .cont_point {
}
	.home .cont_point header.cont_title {
		padding: 50px 0;
		background-color: rgba(255,255,255,0.6);
	}
		.home .cont_point header.cont_title h2 {
			width: 100%;
			font-size: 2.5rem;
			font-weight: bold;
    		text-align: center;
    		letter-spacing: 0.1em;
		}
.home .cont_point .inner {
	padding: 30px 0;
}
	.home .cont_point .inner .unit {
		width: 100%;
	}
		.home .cont_point .inner .unit .lead {
			font-size: 2.0rem;
			font-weight: bold;
			margin: 0 auto;
			text-align: center;
		}
		.home .cont_point .inner .unit .txt {
			font-size: 1.7rem;
			line-height: 1.8em;
			margin: 20px auto;
			text-align: center;
		}

.home .cont_report {
}
	.home .cont_report header.cont_title {
		height: 270px;
    	background-size: contain;
    	background-position: center center;
    	background-repeat: no-repeat;
    	background-color: #000;
		background-image: url(./img/top/bg_report.jpg);
	}
		.home .cont_report header.cont_title h2 {
			font-size: 2.5rem;
			font-weight: bold;
			color: #FFF;
    		text-shadow: 0 0 5px rgba(0,0,0,0.7);
    		text-align: center;
    		letter-spacing: 0.1em;
		}
.home .cont_report .inner {
	padding: 50px 0;
}
	.home .cont_report .inner .unit {
		width: 100%;
	}
		.home .cont_report .inner .unit .list {
			width: 465px;
			margin: 0 auto;
		}
			.home .cont_report .inner .unit .list li {
				font-size: 1.5rem;
				font-weight: bold;
				line-height: 1.3em;
			}
			.home .cont_report .inner .unit .list li:not(:last-of-type) {
				margin-bottom: 1.0em;
			}

.home .cont_menu {
	background-color: rgba(255,255,255,0.7);
}
.home .cont_menu .inner {
	width: 1030px;
	padding: 60px 0;
}
	.home .cont_menu .inner .unit {
		width: 100%;
	}
		.home .cont_menu .inner .unit .list {
			width: 100%;
			margin: 0 auto;
		}
			.home .cont_menu .inner .unit .list li a {
				width: 330px;
				height: 200px;
				background: url(./img/top/bg_menu_01.jpg);
				font-size: 2.5rem;
    			font-weight: bold;
    			letter-spacing: 0.1em;
    			color: #FFF;
    			text-shadow: 0 0 10px rgba(0, 0, 0, 0.7);
			}
			.home .cont_menu .inner .unit .list li.bg02 a {
				/*background: url(./img/top/bg_menu_02.jpg);
				color: #000;
    			text-shadow: none;*/
			}
				.home .cont_menu .inner .unit .list li a {
					color: #FFF;
					text-decoration: none;
				}
				.home .cont_menu .inner .unit .list li.bg02 a {
					/*color: #000;*/
				}

#cboxLoadedContent {
    border: none !important;
    position: relative;
}
	a.closeBtn {
    	position: absolute;
    	top: 0;
    	right: 0;
    	display: inline-block;
    	font-size: 1.5rem;
    	padding: 1em;
    	font-family: san-serif;
    	color: #947318;
	}
	a.closeBtn:hover {
		color: #000;
		text-decoration: none;
	}
.home .div {
	width: 100%;
	padding: 50px 0;
	color: #000;
	background-color: #FFF;
}
	.home .div .article {
		width: 850px;
		margin: 0 auto;
	}
		.home .div .article .ttl {
			font-size: 2.5rem;
    		font-weight: bold;
    		letter-spacing: 0.1em;
			text-align: center;
			margin-bottom: 25px;
		}
		.home .div .article .txt {
			line-height: 2em;
			border: 1px solid;
			padding: 35px;
		}
			.home .div .article .txt .sub {
				font-size: 2.0rem;
			}
			.home .div .article .txt dl {
			}
				.home .div .article .txt dl dt {
					width: 40%;
					height: 2.5em;
					border: 1px solid;
					padding: 10px 0;
					text-align: center;
					box-sizing: border-box;
					position: relative;
					margin-bottom: 3em;
				}
				.home .div .article .txt dl dt:last-of-type {
					margin-bottom: 0;
				}
				.home .div .article .txt dl dt::after {
					content: "▼";
					display: block;
					position: absolute;
    				top: 3.25em;
    				left: 50%;
    				margin-left: -0.5em;
				}
				.home .div .article .txt dl dt:last-of-type::after {
					display: none;
				}
				.home .div .article .txt dl dd {
					width: 57%;
					padding: 11px 0 0;
					font-size: 1.3rem;
				}
					.home .div .article .txt dl dd .image {
						margin: 10px auto 20px 0;
    					display: block;
					}
					.home .div .article .txt dl dd .image.img2 {
						margin: 0 auto 20px 0;
					}

.home .cont_greeting {
	width: 100%;
    margin: 0 auto;
}
	.home .cont_greeting .cont_title {
		height: 240px;
    	background-size: contain;
    	background-position: center center;
    	background-repeat: no-repeat;
    	background-color: #000;
		background-image: url(./img/top/bg_greeting.jpg);
	}
		.home .cont_greeting .cont_title h2 {
			font-size: 2.5rem;
			font-weight: bold;
			color: #FFF;
    		text-shadow: 0 0 5px rgba(0,0,0,0.7);
    		text-align: center;
    		letter-spacing: 0.1em;
    		margin-left: -500px;
		}
.home .cont_greeting .inner {
	padding: 50px 0;
}
	.home .cont_greeting .inner .unit {
		width: 850px;
		margin: 0 auto;
	}
		.home .cont_greeting .inner .unit .txt {
			font-size: 1.5rem;
			font-weight: bold;
			line-height: 1.8em;
			margin: 20px auto;
		}
		.home .cont_greeting .inner .unit .sign {
			font-size: 1.5rem;
			font-weight: bold;
			text-align: right;
		}


.home .cont_member {
}
	.home .cont_member header.cont_title {
		padding: 70px 0;
    	background-color: #FFF;
	}
		.home .cont_member header.cont_title h2 {
			font-size: 2.5rem;
			font-weight: bold;
			color: #FFF;
    		text-shadow: 0 0 5px rgba(0,0,0,0.7);
    		text-align: center;
    		letter-spacing: 0.1em;
    		margin-left: -500px;
		}
.home .cont_member .inner {
	width: 100%;
}
	.home .cont_member .inner .unit {
		width: 100%;
	}
		.home .cont_member .inner .unit a {
			width: 100%;
			padding: 15px 0;
			text-align: center;
			color: #FFF;
			font-size: 2rem;
			font-weight: bold;
			letter-spacing: 0.2em;
    		background-color: #008000;
    		display: block;
		}
		.home .cont_member .inner .unit a:hover {
			text-decoration: none;
    		background-color: #69510d;
		}


@media only screen and (max-width: 99.9375em) {
	.home .cont_report header.cont_title,
	.home .cont_greeting .cont_title {
    	background-size: cover;
	}
}

@media only screen and (max-width: 47.9375em) {
	.home .cont_about header.cont_title {
    	padding: 30px 0;
    }
	.home .cont_about header.cont_title h2 {
    	font-size: 2.0rem;
    }
    .home .cont_about .inner .unit .lead {
    	font-size: 1.5rem;
    }
    .home .cont_about .inner .unit .txt {
    	font-size: 1.3rem;
    	margin: 20px auto 0;
    }
    .home .cont_point header.cont_title {
    	padding: 30px 0;
    }
    .home .cont_point header.cont_title h2 {
    	font-size: 2.0rem
    }
    .home .cont_point .inner .unit .lead {
    	font-size: 1.4rem;
    }
    .home .cont_point .inner .unit .txt {
    	font-size: 1.3rem;
    	margin: 20px auto 0;
    }
    .home .cont_report header.cont_title {
    	height: 140px;
    	background-size: cover;
    }
    .home .cont_report header.cont_title h2 {
    	font-size: 2.0rem;
    }
    .home .cont_report .inner {
    	padding: 30px 0;
	}
    .home .cont_report .inner .unit .list {
		width: 100%;
	}
    .home .cont_report .inner .unit .list li {
    	font-size: 1.3rem;
    }
	.home .cont_menu .inner {
		width: 95%;
		padding: 30px 0 20px;
	}
	.home .cont_menu .inner .unit .list li {
    	width: 100%;
    	height: 120px;
    	margin-bottom: 10px;
	}
	.home .cont_menu .inner .unit .list li a {
    	width: 100%;
    	height: 120px;
    	font-size: 2.3rem;
    	background-size: contain;
    	background: url(./img/top/bg_menu_01.jpg) no-repeat center center;
    }
    .home .cont_menu .inner .unit .list li.bg02 a {
    	background: url(./img/top/bg_menu_02.jpg) no-repeat center center;
    }
    .home .div {
		padding: 30px 0;
	}
	.home .div .article {
		width: 95%;
	}
	.home .div .article .ttl {
		font-size: 1.8rem;
		margin-bottom: 15px;
	}
	.home .div .article .txt {
		font-size: 1.2rem;
		padding: 15px;
	}
	.home .div .article .txt .sub {
		font-size: 1.4rem;
	}
	.home .cont_greeting .cont_title {
		height: 140px;
    	background-size: cover;
	}
	.home .cont_greeting .cont_title h2 {
	    font-size: 2.0rem;
    	margin-left: 0;
	}
	.home .div .article .txt dl dt {
		height: 2.75em;
	}
	.home .div .article .txt dl dt:nth-of-type(3) {
		height: 4em;
	}
	.home .div .article .txt dl dt:nth-of-type(3)::after {
    	top: 4.75em;
	}
	.home .cont_greeting .inner {
    	width: 95%;
    	padding: 30px 0;
	}
	.home .cont_greeting .inner .unit {
    	width: 100%;
	}
	.home .cont_greeting .inner .unit .txt,
	.home .cont_greeting .inner .unit .sign {
    	font-size: 1.3rem;
    }
	
}

/****************************************

	Footer

*****************************************/

footer .wrapper .inner .box .footer_nav ul {
	display: -webkit-flex;
    display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}

/*----- flex險ｭ螳壹％縺薙∪縺ｧ -----*/

footer {
	color: #FFF;
	background-color: #3e3e3e;
}
footer a {
	color: #FFF;
}
	footer .wrapper {
    	background-position: right center;
    	background-repeat: no-repeat;
		background-image: url(./img/common/footer_bg.jpg);
	}
		footer .wrapper .inner {
			padding: 70px 0;
		}
			footer .wrapper .inner .box {
				width: 800px;
			}
				footer .wrapper .inner .box .ttl {
					width: 100%;
    				font-weight: bold;
    				padding-bottom: 5px;
    				margin-bottom: 5px;
    				border-bottom: 1px solid #947318;
				}
				footer .wrapper .inner .box .footer_nav {
					width: 100%;
    				margin: 0 auto 0 0;
				}
					footer .wrapper .inner .box .footer_nav ul {
						width: 520px;
						position: relative;
						
						-webkit-margin-before: 0;
   					 	-webkit-margin-after: 0;
    					-webkit-margin-start: 0;
    					-webkit-margin-end: 0;
    					-webkit-padding-start: 0;
					}
						footer .wrapper .inner .box .footer_nav ul li {
							width: 140px;
							margin-right: 30px;
						}
						footer .wrapper .inner .box .footer_nav ul li::before {
							content: "▶︎";
							color: #947318;
							display: inline-block;
							margin-right: 3px;
						}
							footer .wrapper .inner .box .footer_nav ul li a {
								font-size: 1.3rem;
								font-weight: bold;
							}
							footer .wrapper .inner .box .footer_nav ul li a:hover {
								text-decoration: none;
							}
			
@media only screen and (max-width: 47.9375em) {
	footer .wrapper {
    	background-image: none;
	}
	footer .wrapper .inner {
    	padding: 30px 0;
    	width: 95%;
	}
	footer .wrapper .inner .box {
    	width: 100%;
	}
	footer .wrapper .inner .box .footer_nav ul {
    	width: 100%;
    }
	footer .wrapper .inner .box .footer_nav ul li {
    	width: 50%;
    	margin-right: 0;
	}
	footer .wrapper .inner .box .ttl {
    	margin-bottom: 15px;
	}

}
