@charset "utf-8";
/* CSS Document */

* {
	margin: 0;
	padding: 0;
}

body {
	font-size: 16px;
	line-height: 150%;
	font-family:"游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-weight:500;
	color:#000000;
}

@media all and (-ms-high-contrast:none){
    body {font-family:"ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;}
}

img {
	border: 0;
	vertical-align: top;
	vertical-align: bottom;
}
a {
	overflow: hidden;
	outline: none;
	color: #333333;
	text-decoration:none;
}
.pc_hide {
	display: none;
}
.sp_hide {
}
a {
	opacity: 1;
	
}
a:hover {
}
.sp_hide {
}
.pc_hide {
	display: none !important;
}


/*-----------------------------------------------------------*/

/*------------------------------------*\
    BORDERS
\*------------------------------------*/

/* Create a series of empty pseudo-elements... */
html:before,html:after,body:before,body:after{
    content:"";
    background:#045C34;
    position:fixed;
    display:block;
    z-index:100000;
}

/* ...and position them! */
html:before{
    height:5px;
    left:0;
    right:0;
    top:0;
}
html:after{
    width:5px;
    top:0;
    right:0;
    bottom:0;
}
body:before{
    height:5px;
    right:0;
    bottom:0;
    left:0;
}
body:after{
    width:5px;
    top:0;
    bottom:0;
    left:0;
}


/*-----------------------------------------------------------*/
/*全体枠*/

#all_wrap{
	width:100%;
	max-width:100%;
	min-width:1293px;
	min-height:100%;
	position:relative;
	overflow:hidden;
	/*
	border:2px solid #045C34;
	box-sizing:border-box;
	position:relative;
	*/
}

/*-----------------------------------------------------------*/
/*ヘッダー*/

#header_wrap{
	width:100%;
	margin:0px auto;
	position:absolute;
	background-color:#fff;
	left:0px;
	top:10px;
	z-index:10000;
}

#header{
	width:1293px;
	height:184px;
	margin:0px auto;
	position:relative;
}

#header h1{
	position:absolute;
	overflow:hidden;
	left:8px;
	top:31px;
}

.smaller{
	position:fixed !important;
}

.smaller #header{
	height:84px !important;
}


.smaller #header h1{
	display:none;
}

.smaller #header_info{
	display:none;
}

.smaller #head_in,
.smaller #head_fb,
.smaller #head_youtube,
.smaller #head_twitter,
.smaller #head_txtsize,
.smaller #head_sns,
.smaller #head_color,
.smaller #color_changer,
.smaller #head_language,
.smaller #google_language,
.smaller #head_contact,
.smaller #head_site_search{
	display:none;
}

.smaller #gnavi{
	top:19px !important;
}

/**/
#gnavi{
	width:1290px;
	position:absolute;
	left:50%;
	top:119px;
	/*bottom:20px;*/
	margin-left:-645px;
	z-index:100000;
}

#gnavi > ul{
	display:table;
	/*width:1051px;*/
	width:1290px;
	margin: 0 auto;
	border-right:1px solid #989898;
}

#gnavi > ul li{
	list-style-type:none;
	display:table-cell;
}

#gnavi > ul li a{
	text-decoration:none;
}



#gnavi > ul li span{
	display:block;
	overflow:hidden;
	border-left:1px solid #989898;
	box-sizing:border-box;
	text-align:center;
}

#gnavi > ul li span a:hover{
	background-color:#045C34;
	color:#fff;
}

#gnavi > ul li.block_sns span a:hover{
	background-color:#fff;
}

#gnavi ul li div.child{
	width: 1295px;
	height: 365px;
	position: absolute;
	top: 65px;
	left: -122px;
	background: #D2E9DE;
	display: none;
}

#gnavi ul li div.child .sonota_menu02 {
    width: 1295px;
    height: 325px;
    position: absolute;
    top: 65px;
    left: -122px;
    background: #D2E9DE;
    display: none;
}



#gnavi ul li:nth-child(1) div.child{
	/*left: -122px;*/
    left: -0px;
}

#gnavi ul li:nth-child(2) div.child{
	/*left: -269px;*/
    left: -150px;
}

#gnavi ul li:nth-child(3) div.child{
	/*left: -401px;*/
    left: -275px;
}

#gnavi ul li:nth-child(6) div.child{
	/*left: -401px;*/
    left: -1130px;
}

/*#gnavi ul li div.child{
	width: 1295px;
	height: 325px;
	position: absolute;
	top: 65px;
	left: -2px;
	background: #D2E9DE;
	display: none;
}*/


#gnavi ul li div.child .child_list{
	list-style: none;
	text-align: center;
	margin-top: 17px;
}

#gnavi ul li div.child .child_list li{
	display: inline-block;
	width: 287px;
	height: 285px;
	background: #fff;
	text-align: left;
	vertical-align: top;
}


#gnavi ul li div.child .child_list li.sonota_menu {
    display: inline-block;
    width: 287px;
    height: 330px;
    background: #fff;
    text-align: left;
    vertical-align: top;

}	


#gnavi ul li div.child .child_list li .child01{
	padding: 15px 0 10px 45px;
}

#gnavi ul li div.child .child_list li .child01 a{
	font-size: 16px;
	font-weight: bold;
	position: relative;
}

#gnavi ul li div.child .child_list li .child01 a::before{
	content: '> ';
	display: inline-block;
	font-size: 17px;
	font-weight: bold;
	color: #045C34;
	position: absolute;
	left: -23px;
	top: 50%;
	transform: translateY(-50%);
}


#gnavi ul li div.child .child_list li .child02{
	width: 267px;
	margin: 0 auto 3px;
}

#gnavi ul li div.child .child_list li .child02 a{
	display: block;
	width: 100%;
	line-height: 42px;
	font-size: 15px;
	padding-left: 34px;
	box-sizing: border-box;
	background: #F1F1F1;
	position: relative;
}

#gnavi ul li div.child .child_list li .child02 a::before{
	content: '> ';
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	color: #045C34;
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
}



#gnavi > ul li:nth-child(1){
	width:145px;
}

#gnavi > ul li:nth-child(2){
	width:130px;
}

#gnavi > ul li:nth-child(3){
	width:145px;
}

#gnavi > ul li:nth-child(4){
	width:240px;
}

#gnavi > ul li:nth-child(5){
	width:240px;
}

#gnavi > ul li:nth-child(6){
	width:130px;
}

#gnavi > ul li.last span{
	border-right:1px solid #989898;
	position: relative;
}

#gnavi > ul li span a{
	display:block;
	text-align:center;
	line-height:45px;
	font-weight:bold;
	font-size:113%;
	overflow:hidden;
	width:100%;
}


#gnavi .ac01{
	position: relative;
}


#gnavi .ac01 span a::before{
	content: '';
	display: inline-block;
	background: url("common/ico_menu.png")no-repeat;
	background-size: contain;
	width: 16px;
	height: 7px;
	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 100000;
}

/*
#gnavi .ac01 span a{
	background-image: url("common/ico_menu.png");
	background-repeat: no-repeat;
	background-size: 25px 15px;
	background-position: bottom -10px center;
}
*/
/*

#gnavi{
	width:1290px;
	position:absolute;
	left:50%;
	top:119px;
	transform: translateX(-50%);
	z-index:100000;
}

#gnavi > ul{
	width:100%;
	list-style: none;
	font-size: 0;
	line-height: 0;
	text-align: center;
}

#gnavi > ul li{
	display: inline-block;
	border-left: 1px solid #989898;
	padding: 0px 2px;
}

#gnavi > ul li.last{
	border-right: 1px solid #989898;
}

#gnavi > ul li span{
	display: block;
	line-height: 45px;
	box-sizing: border-box;
}
#gnavi ul li:nth-child(1) span{
	width:145px;
}

#gnavi ul li:nth-child(2) span{
	width:130px;
}

#gnavi ul li:nth-child(3) span{
	width:145px;
}

#gnavi ul li:nth-child(4) span{
	width:130px;
}

#gnavi ul li:nth-child(5) span{
	width:240px;
}

#gnavi ul li:nth-child(6) span{
	width: 240px;
}



#gnavi > ul li span a{
	display: block;
	width: 100%;
	line-height: 45px;
	font-size: 18px;
	font-weight: bold;
}

#gnavi > ul li span a:hover{
	background: #005E30;
	color: #fff;
}



#gnavi ul li div.child{
	overflow:hidden;
	display:none;
	margin-top:20px;
}

#gnavi ul li div.child p{
	overflow:hidden;
	margin-bottom:1px;
}

#gnavi ul li div.child p a{
	display:block;
	line-height:42px;
	overflow:hidden;
	background-image:url(annai/shisetsu/gnavi_child_arrow.png);
	background-repeat:no-repeat;
	background-position:left 14px center;
	text-align:center;
	background-color:#cfe6db;
}
*/

/**/

#header_info{
	overflow:hidden;
	border:2px solid #375e4b;
	box-sizing:border-box;
	width:380px;
	/*height:74px;*/
	position:absolute;
	top:30px;
	left: 270px;
}

#header_info dl{
	width:100%;
	/*height:74px;*/
	height: 49px;
	overflow:hidden;
}

#header_info dl dt{
	font-weight:bold;
	font-size:17px;
	text-align:center;
	overflow:hidden;
	/*line-height:20px;
	margin-top:12px;*/
	/*padding: 9px 0 10px;*/
	background: #265F4A;
	color: #fff;
}

#header_info dl dt span{
	font-size: 14px;
	font-weight: normal;
	margin-right: 10px;
}

	
#header_info dl dd{
	overflow:hidden;
	text-align:center;
	color:#265F4A;
	font-size:16px;
	/*padding: 5px 0 6px;*/
}

/**/

#gnavi > ul li.block_sns {
	position: relative;
    border-left: 1px solid #989898;
}

#head_youtube{
	position:absolute;
	overflow:hidden;
    /*\right: 30px;*/
    top: -8px;
    right: 0px;
}

#head_in{
	position:absolute;
	overflow:hidden;
    top: -5px;
    right: 135px;
	right:45px;
}

#head_fb{
	position:absolute;
	overflow:hidden;
    top: -5px;
    /*right: 105px;*/
   
	right: 90px;
}

#head_twitter{
	position:absolute;
	overflow:hidden;
    top: -5px;
    /*right: 180px;*/
    right: 135px;
}

/**/

#head_sns{
	line-height:30px;
	font-size:15px;
	position:absolute;
	top: 25px;
    right: 370px;
}


#head_sns ul li{
	list-style-type: none;
}

/**/

#head_txtsize{
	line-height:30px;
	font-size:15px;
	position:absolute;
	top:20px;
	right:242px;
}

#head_txtsize dl{
	width:120px;
	overflow:hidden;
	display:table;
}

#head_txtsize dl dt{
	display:table-cell;
	vertical-align:middle;
    font-size: 14px;
    text-align: right;
    padding-right: 10px;
}

#head_txtsize dl dd{
	display:table-cell;
	vertical-align:middle;
}

#head_txtsize dl dd a{
	display:block;
	width:30px;
	line-height:30px;
	text-align:center;
}

#head_txtsize a{
	text-decoration:none;
	background-color:#e5e5e5;
}

#head_txtsize .textresizer-active{
	background: #005E30 !important;
	color: #fff;
}

/**/

#head_color{
	position:absolute;
	top:20px;
	right:138px;
	
}

#head_color a{
	display:block;
	text-decoration:none;
	background-color:#e5e5e5;
	line-height:30px;
	font-size:16px;
	width:98px;
	text-align:center;
}

#color_changer{
	position:absolute;
	top:50px;
	right:138px;
	z-index:100000;
	background-color:#fff;
	border:1px solid #666;
	padding:0px 10px;
	height:50px;
	display:none;
}

#color_changer ul{
	overflow:hidden;
}

#color_changer ul li{
	list-style-type:none;
	float:left;
	line-height:30px;
	margin:10px 5px;
}

#color_changer ul li a{
	text-decoration:none;
	display:block;
	width:30px;
	line-height:30px;
	text-align:center;
}

#bg1{
	background-color:#000000;
	border:1px solid #000;
	box-sizing:border-box;
}

#bg1 a{
	color:#FFFF00 !important;
}

#bg2{
	background-color:#FFFF00;
	border:1px solid #000;
	box-sizing:border-box;
}

#bg2 a{
	color:#000000 !important;
}

#bg3{
	background-color:#0000FF;
	border:1px solid #000;
	box-sizing:border-box;
}

#bg3 a{
	color:#FFFF00 !important;
}

#bg4{
	border:1px solid #000;
	box-sizing:border-box;
}

#bg4 a{
	color:#000000 !important;
}

/**/

#head_contact{
	position:absolute;
	top:60px;
	right:0px;
}

#head_contact a{
	display:block;
	text-decoration:none;
	background-color:#e5e5e5;
	line-height:30px;
	font-size:16px;
    width:200px;
	text-align:center;
}

/**/

#head_language{
	position:absolute;
	top:20px;
	right:0px;
	
}

#head_language a{
	display:block;
	text-decoration:none;
	background-color:#e5e5e5;
	line-height:30px;
	font-size:16px;
	width:127px;
	text-align:center;
}

#google_language{
	position:absolute;
	top:50px;
	right:0px;
	z-index:10000;
	background-color:#fff;
	display:none;
	border:1px solid #666;
	padding:10px;
}

/**/

#head_site_search{
	width:303px;
	position:absolute;
	/*right:138px;*/
    right:210px;
	top:60px;
	border-bottom:1px solid #000;
	overflow:hidden;
}

#head_site_search dl{
	display:table;
	height:30px;
	width:100%;
}

#head_site_search dl dt{
	display:table-cell;
	width:273px;
}

#head_site_search dl dt input{
	width:273px;
	line-height:30px;
	height:30px;
	display:inline;
	border:none;
	font-family:"游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size:14px;
	color:#000;
}

#head_site_search dl dd{
	display:table-cell;
	width:30px;
}

#head_site_search dl dd input{
	width:30px;
	height:30px;
	line-height:30px;
	text-decoration:none;
	text-indent:-9999px;
	border:none;
	background-image:url(common/head_search.png);
	background-repeat:no-repeat;
	background-position:left top;
}
/*-----------------------------------------------------------*/

#page_tite{
	width:1293px;
	height: auto;
	background-color: #045c34;
	margin:184px auto 0px auto;
	display:table;
	/*overflow:hidden;*/
	position: relative;
}

#page_title_txt{
	display:table-cell;
	vertical-align:middle;
}


#page_tite h1{
	padding: 0.5em 1em;
	color: #fff;
	vertical-align:middle;
	display:inline-block;
	line-height:55px;
	font-size:30px;
	overflow:hidden;
	height:55px;
	letter-spacing:1px;
}


/*
#page_tite{
	width:1293px;
	height:394px;
	margin:184px auto 0px auto;
	display:table;
	overflow:hidden;
	background-image:url(common/dammy_bg_title.jpg);
	background-repeat:no-repeat;
	background-position:left top;
}

#page_title_txt{
	display:table-cell;
	vertical-align:middle;
}


#page_title_txt h1{
	vertical-align:middle;
	background-color:#fff;
	display:inline-block;
	line-height:55px;
	font-size:30px;
	overflow:hidden;
	padding:0px 1em;
	height:55px;
	letter-spacing:1px;
}
*/
/*-----------------------------------------------------------*/

#breadcrumb{
	width:1293px;
	margin:16px auto 0px auto;
	font-size:15px;
}

#breadcrumb dl{
	display:table;
	color:#989898;
	padding-bottom: 5px;
	border-bottom: 0.5px solid rgba(4,92,52,0.5);
}

#breadcrumb dl dt{
	display:table-cell;
	vertical-align:middle;
	line-height:18px;
}

#breadcrumb dl dd{
	display:table-cell;
	vertical-align:middle;
	line-height:18px;
	padding-left:1em;
}

#breadcrumb dl dd a{
	color:#989898;
	text-decoration:none;
}

#breadcrumb dl dd:last-child,
#breadcrumb dl dd:last-child a{
	color:#000;
	text-decoration:none;
}

/*-----------------------------------------------------------*/

#local_navi{
	width:1293px;
	margin:0px auto;
	font-size:15px;
	overflow:hidden;
	text-align:right;
}

#local_navi li{
	display:inline;
	float:right;
	overflow:hidden;
	line-height:42px;
}

#local_navi li a{
	display:inline-block;
	line-height:42px;
	background-color:#f1f1f1;
	overflow:hidden;
	text-decoration:none;
	background-image:url(common/local_navi_icon.png);
	background-repeat:no-repeat;
	background-position:left 21px center;
	padding-right:22px;
	padding-left:56px;
	border-left:2px solid #fff;
}

#local_navi li a:hover{
	background-color:#045C34;
	color:#fff;
	background-image:url(common/local_navi_icon_on.png);
}

/*-----------------------------------------------------------*/

#contents_container{
	width:1288px;
	margin:0px auto;
	position:relative;
}

/**/

#contents_container h2{
	overflow:hidden;
	border-bottom:1px solid #989898;
	padding-bottom:6px;
	padding-left:5px;
	font-size:175%;
	margin-bottom:40px;
	margin-top:40px;
}

#contents_container h2 span{
	border-left:8px solid #045c34;
	line-height:175%;
	overflow:hidden;
	padding-left:1em;
	
}

/**/

#contents_container h3{
	clear:both;
	overflow:hidden;
	font-size:125%;
	margin-bottom:20px;
	margin-top:20px;
	margin-left:32px;
	background-image:url(common/icon_h3.png);
	background-repeat:no-repeat;
	background-position:left center;
}

#contents_container h3.none_icon{
	background-image:none !important;
}

#contents_container h3 span{
	overflow:hidden;
	padding-left:27px;	
	color:#045c34;
}

/*-----------------------------------------------------------*/
/*フッター*/

.totop{
	width:49px;
	height:49px;
	position:fixed;
	/*position:absolute;*/
	right:50%;
	bottom:5px;
	/*top:-24px;*/
	margin-right:-645px;
	z-index:9999;
}

#footer_wrap{
	max-width:100%;
	min-width:1293px;
	margin:0px auto;
	position:relative;
	z-index:0;
	background-color:#f1f1f1;
}

#footer{
	width:1293px;
	margin:0px auto;
	overflow:hidden;
}

/**/

#footer .left_col{
	float:left;
	overflow:hidden;
	width:329px;
	margin-left:38px;
}

#footer .left_col h1{
	overflow:hidden;
	margin-top:28px;
	border-bottom:1px solid #b2b2b2;
	text-align:center;
	padding-bottom:21px;
}

#footer .left_col .txt{
	overflow:hidden;
	margin:18px 1em 1em 21px;
}

/**/

#footer .right_col{
	width:840px;
	float:right;
	overflow:hidden;
}

#footer .right_col a{
	text-decoration:none;
}

#footer .right_col ul{
	display:table;
	width:100%;
	overflow:hidden;
	margin:25px auto;
}

#footer .right_col ul li{
	overflow:hidden;
	list-style-type:none;
	display:table-cell;
}

#footer .right_col ul li:first-child{
	padding-right: 15px;
}



#footer .right_col ul li dl{
	overflow:hidden;
}

#footer .right_col ul li dl dt{
	color:#045c34;
	overflow:hidden;
	margin-bottom:0.25em;
}

#footer .right_col ul li dl dt a{
	color:#045c34;
}


#footer .right_col ul li dl dd{
	overflow:hidden;
	margin-left:1em;
	margin-bottom:0.25em;
}

/*-----------------------------------------------------------*/
/*コピーライト*/

#copy_wrap{
	max-width:100%;
	min-width:1293px;
	margin:0px auto;
	background-color:#045c34;
	color:#fff;
}

#copy{
	text-align:center;
	font-size:69%;
	line-height:37px;
	overflow:hidden;
}

/*-----------------------------------------------------------*/

.caution{
	color:#666;
}

/*-----------------------------------------------------------*/

.navi_bar ul{
	display: flex;
	max-width: 1160px;
	margin: 15px auto;
	justify-content: space-between;
	
}
.navi_bar ul li{
	flex: 1 1 0px;
	display: block;
	margin-right: 3px;
	background-color: #d2e9de;
	
}.navi_bar ul li.active{
	background-color: rgba(210,233,222,0.59)
}
.navi_bar ul li a{
	height: 60px;
	display: flex;
	align-items: center;
	font-size: 19px;
	padding-left: 60px;
	position: relative;
}
.navi_bar ul li a:before{
	content: '>';
	display: block;
	position: absolute;
	font-size: 17px;
	font-weight: bold;
	left: 10px;
	color: #045c34;
}

/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
/*-----------------------------------------------------------*/
