@charset "utf-8";

/* ---- HTML RESET ---- */
html, body, div, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size : 14px;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, label, legend { display: block; }
body {
	font-size:100%;
	line-height: 1.6;
    font-family: 'Noto Sans JP', "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;	vertical-align: bottom;
	color: #666;
	-webkit-text-size-adjust: 100%;
}
img{vertical-align: bottom;}
blockquote, q { quotes: none; }
blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }
table { border-spacing: 0; 
}
table img {
    max-width: 100%;
    height: auto;
}

input,
textarea,
strong,
select {
    font-size: 16px;
}

/* Lists Resets */ 
ul,ol { margin: 0; }
ul {list-style: none inside;}
ol { list-style: decimal inside; margin-left: 1em;}
.disc { list-style-type: disc; padding-left: 1em; text-indent: -1em; }
.circle { list-style-type: circle; }
li {line-height: 1.6; text-align: left;}
ul ul, ol ol { margin: 0.7em 0 0 1.42em; }

/* ---- Clearfixes ---- */
.row:before,.row:after,.clearfix:before,.clearfix:after{content:'';display:table}
.row:after,.clearfix:after{clear:both}
.row,.clearfix{zoom:1}

.clearfix {
    content:" ";
    display:block;
    clear:both;
}
/* Text */
a {
	color: #00984B;
	text-decoration: none;
}
a:hover {color: #9FC238; }
a:focus {color: #9FC238; outline: none; }

sub, sup {font-size: 60%; line-height: 0; position: relative; vertical-align: baseline;}
sup {top: -0.5em;}
sub {bottom: -0.25em;}
i {font-style: italic; line-height: inherit; padding-right: 3px;}
strong, b { font-weight: bold; line-height: inherit; }
small { font-size: 70%; line-height: inherit; }
hr { border: solid #ddd; border-width: 1px 0 0; clear: both; margin: 20px 0 20px; height: 0; }


/* -----------------------------------------------
 layout
-------------------------------------------------- */
*,
*:before,
*:after {
  margin: 0;
  padding: 0;
  border: 0;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

html {background-color: #FFF;}
body {text-align: center;}
* html,body {height:100%;}
#wrapper {
	width: 100%;
	text-align: center;
	position: relative;
	padding-top:140px;
}

#wrapper:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
  clear: both;
}

/*第二階層containe-set*/
#container{
	max-width:1200px;
	width:95%;
	text-align:center;
	clear: both;
	float: none;
	margin: 0 auto;
}
.slash{
	background-image:url(../images/slash_green.png);
	background-repeat: repeat-x;
	background-position: left top;
	padding-top:30px;
}

#container:after {
  content: "";
  display: table;
  height: 0;
  visibility: hidden;
  clear: both;
}
.main-content{
}
.main-content2{
	width:70%;
	float:right;
}

/* main-content3  サイドメニューや画像つきのh2も無しの場合 */
.main-content3{
}
.main-content .row, 
.main-content2 .row,
.main-content3 .row {
	padding:40px 0;
	}
.main-content .row p,
.main-content2 .row p,
.main-content3 .row p {
	font-size : 16px; line-height:2;
	}

.side-content{
    min-width: 250px;
    width: 30%;
    float: left;
}
/*fixed*/
.fixed {
  position: fixed;
  width: 100%;
  height: 100%;
}

/* -----------------------------------------------
 header
-------------------------------------------------- */
#header {
	width: 100%;
	height: 140px;
	z-index: 300;
	position: fixed;
	left: 0px;
	top: 0px;
	background-position: bottom;
	background-color: #FFF;
	box-shadow:0px 0px 5px -1px #636363;
	-moz-box-shadow:0px 0px 5px -1px #636363;
	-webkit-box-\shadow:0px 0px 5px -1px #636363;
}
#header_inner {
	max-width: 1200px;
	height: 160px;
	position:relative;
	margin-right: auto;
	margin-left: auto;
}
#header_inner #h_logo{
	top:5px;
	left:0px;
	position:absolute;
	background-image: url(../menu/images/header_logo2.png);
	background-repeat: no-repeat;
	text-indent: -9999px;
	height: 100px;
	width: 235px;
}
#header_inner #h_logo a{
   cursor: pointer
}

/* header_topmenu */

#header_inner #topmenu{
	top:10px;
	right: 0;
	width:auto;
	height:52px;
	position:absolute;
}
#header_inner #topmenu ul{
	width:auto;
	float: left;
	padding-top: 9px;
	padding-right:38px
}
#header_inner #topmenu ul li{
	display: inline-block;
	float: left;
	margin-left: 8px;
	padding-left: 10px;
	border-left: 1px solid #CCC;
}
#header_inner #topmenu ul li a{
	font-size:12px;
	color: #000;
}
#header_inner #topmenu ul li a:hover{
	color: #666;
}
#header_inner #topmenu ul li:first-child{
  margin-left: 0;
  padding-left: 0;
  border-left: 0;
}
#header_inner #topmenu ul #eng{
   padding-right: 10px;
}
#header_inner #topmenu ul li i{
	color: #64AA44;
}
#header_inner #topmenu ul #ico_fb,
#header_inner #topmenu ul #ico_tw,
#header_inner #topmenu ul #ico_yt,
#header_inner #topmenu ul #ico_insta,
#header_inner #topmenu ul #ico_line,
#header_inner #topmenu ul #ico_rss{
  margin-left: 6px;
  padding-left: 0;
  border-left: 0;
}
#header_inner #topmenu ul #ico_fb a:hover,
#header_inner #topmenu ul #ico_tw a:hover,
#header_inner #topmenu ul #ico_yt a:hover,
#header_inner #topmenu ul #ico_line a:hover,
#header_inner #topmenu ul #ico_rss a:hover{
  opacity: 0.5;
}
#h_sns{
	width:auto;
	margin:0;
	overflow: hidden;
	float: left;
}
#header_inner #topmenu ul #nsyushi{
	margin-top:-10px;
	padding-left: 0;
	border-left: 0;
}
#header_inner #topmenu ul #nsyushi a{
	display: block;
	font-size: 13px;
	font-weight: bold;
	color: #FFF;
	padding:6px 12px;
	background-color: #00984B;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}
#header_inner #topmenu ul #nsyushi a:hover{
	background-color: #9FC238;
}
#header_inner #topmenu ul #nsyushi2{
	margin-top:-10px;
	padding-left: 0;
	border-left: 0;
}
#header_inner #topmenu ul #nsyushi2 a{
	display: block;
	font-size: 12px;
	font-weight: bold;
	color: #FFF;
	padding: 7px 12px;
	background-color: #00984B;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}
#header_inner #topmenu ul #nsyushi2 a:hover{
	background-color: #9FC238;
}
/* search button  */

#wrapper #header #header_inner #search{
	position:absolute;
	top:10px;
	right:0px;
	height: 32px;
	width: 32px;
	z-index:200;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}
#wrapper #header #header_inner #search a{
	display: block;
	font-weight: bold;
	background-color: #000;
	padding:3px 0 0 3px;
	height: 32px;
	width: 32px;
		border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}
#wrapper #header #header_inner #search a i{
	color: #FFF;
}
#wrapper #header #header_inner #search a:hover{
	background-color: #666;
	color: #FFF;

}
/* search input field  */

#seachBox{
	width:80%;
	margin:0 auto;
	text-align:center
}
#seachBox form input[type="text"] {
	position:relative;
	background-color:#fff;
	border:1px solid #aaa;
	width:100%;
	padding:15px;
	display: block;
	margin-bottom: 15px;
}
#seachBox input[type="submit"] {
	background-color: #64AA44;
	width:50%;
	color: #FFFFFF;
	font-size:16px;
	height: 40px;
	display: block;
	margin:0 auto;
	cursor:pointer;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-webkit-appearance: none;

}
#seachBox input[type="submit"]:hover {
  opacity: 0.8;
}


/* header_v_menu */

#header_inner #v_menu{
	top:53px;
	right: -1px;
	width:auto;
	height:auto;
	position:absolute;
	background-color: #F5F5F5;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	border: 1px solid #D6D6D6;
}
#header_inner #v_menu ul{
	width:auto;
	padding:0 10px;
}
#header_inner #v_menu ul li{
	display: inline-table;
	padding: 3px;
	font-size:12px;
}
#header_inner #v_menu ul li:before {
  font-family: FontAwesome;
  content: '\f101 \0020'; /* アイコンのunicode */
　font-weight: bold;
}
#header_inner #v_menu ul li a{
	font-size:12px;
	color: #333;
	font-weight: 500;
}
#header_inner #v_menu ul li a:hover{
	color: #64AA44;
}


/* header_sp_menu */

#header_inner #sp_menu{
	display: none;
}

/* -----------------------------------------------
 global nav
-------------------------------------------------- */
#header #gnbg{
	background-color:#333;
	position:absolute;
	top:100px;
	width:100%;
	height:40px;
	z-index:1
	}

ul#globalNav {
	width: 100%;
	position: absolute;
	top: 100px;
	left: 0;
	padding:0;
	margin:0;
	z-index:2
}
ul#globalNav li {
	border-left: 1px solid #938E8E;
	float: left;
	width:13%;
}
ul#globalNav li.w1 {
	width:17.5%
}
ul#globalNav li.w2 {
	width:21%
}
ul#globalNav li:last-child{
	border-right: 1px solid #CCC;
}
ul#globalNav li a {
	display: block;
	padding: 7px 0 10px 0;
	text-align: center;
	font-weight: 500;
	color: #FFF;
	letter-spacing: 1px;
}
ul#globalNav li a:hover {
	filter: alpha(opacity=100); /* IE */
    opacity:1;                /* Firefox,Opera,Safari */
    -moz-opacity:1;          /* Firefox 0.9より前 */
}

/* megamenu */
ul#globalNav > li:hover {
	background-color: #00984B;
}
ul#globalNav li.mega ul.second-level {
    visibility: hidden;
    z-index: 10;
	opacity: 0;
	-webkit-transition: .2s;
	transition: .2s;
}
ul#globalNav li.mega ul.second-level {
	position: absolute;
	top: 40px;
	left: 0;
	box-sizing: border-box;
	width: 100%;
	padding: 20px 2%;
	-webkit-transition: all .2s ease;
	transition: all .2s;
	margin:0;
	background-color: #FFF;
	box-shadow: 1px 1px 5px rgba(0, 0, 0, 0.2);
}
ul#globalNav li.mega:hover ul.second-level {
	top: 40px;
	visibility: visible;
	opacity: 1;
	width: 100%;
	background-color: #FFF;
}
ul#globalNav li.mega ul.second-level > div li{
	width: 100%;
	border: none;
	text-align: left;
	padding-bottom:20px;
	font-weight: bold;
	color: #00984B;
}
ul#globalNav li.mega ul.second-level > div li ul{
	margin-left:0;
}
ul#globalNav li.mega ul.second-level > div li li{
	width: 100%;
	border: none;
	padding-bottom:0;
}
ul#globalNav li.mega ul.second-level > div li a{
	text-align: left;
	padding: 0 0 0 1.5em;
	margin:0;
}
ul#globalNav li.mega ul.second-level > div li li a{
	text-align: left;
	font-size: 13px;
	font-weight: normal;
	background-image: url(../index_img/icon_arrow_list.png);
	background-repeat: no-repeat;
	background-position: 0.5em 0.7em;
	color: #333;
}
ul#globalNav li.mega ul.second-level > div li a:hover{
	border: none;
	color: #000;
}


/* -----------------------------------------------
GRID Module 
-------------------------------------------------- */
.row {
	text-align: center;
	padding:60px 0;
}
.row-content{
	max-width:1200px;
	text-align:center;
	clear: both;
	float: none;
	/* [disabled]overflow: hidden; */
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
}
[class*="col-"] {
  float: left;
  display: block;
  margin: 0 2% 0 0;
}
img {
	max-width: 100%;
	height: auto;
}
/*[class*="col-"] img {
	max-width: 100%;
	height: auto;
}*/
[class*="col-"]:last-child {
    margin: 0;
}
.col-1 { width: 6.5%;}
.col-2 { width: 15%;}
.col-3 { width: 23.5%;}
.col-4 { width: 32%;}
.col-5 { width: 40.5%;}
.col-6 { width: 49%;}
.col-7 { width: 57.5%;}
.col-8 { width: 66%;}
.col-9 { width: 74.5%;}
.col-10 { width: 83%;}
.col-11 { width: 91.5%;}
.col-12 { width: 100%; margin: 0;}

/* -----------------------------------------------
 Aligns & Formats
-------------------------------------------------- */
.fl {float: left;}
.fr {float: right;}
.center {
  float: none;
  margin: 0 auto;
  display: block;
  text-align: center;
}
.imgleft {
  float: left;
  margin: 5px 20px 20px 0;
}
.imgright {
  float: right;
  margin: 5px 0 20px 20px;
}
.imgleft_lab {
  float: left;
  margin: 5px 20px 20px 0;
  width:50%;
}
.imgright_lab {
  float: right;
  margin: 5px 0 20px 20px;
  width:50%;
}
.imgleft_lab2 {
  float: left;
  margin: 5px 20px 20px 0;
  width:25%;
}
.imgleft_lab3 {
  float: left;
  margin: 5px 20px 20px 0;
  width:30%;
}
.imgright_lab2 {
  float: right;
  margin: 5px 0 20px 20px;
  width:25%;
}
.imgright_lab3 {
  float: right;
  margin: 5px 20px 20px 10px;
  width:30%;
}
.imgright_lab4 {
  float: right;
  margin: 5px 10px 20px 10px;
  width:32%;
}
.imgcenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
	text-align: center;
	margin-bottom: 20px;
}
.oh {overflow: hidden;}
.hidden {display: none !important;}
.hidden-text {font: 0/0 a !important;}
.clear {clear: both; display: block;}

.breadcrumbs li,
.pagination li {
  display: inline-block;
  font-size: 0.85;
}

/* -----------------------------------------------
 footer
-------------------------------------------------- */
#footer {
	width: 100%;
	text-align: center;
	margin: 0px;
	position: relative;
	background-color: #313131;
	clear: both;
	float: none;
}
#footer a{
	color: #FFF;
}
/*
#footer {
	width: 100%;
	text-align: center;
	margin: 0px;
	position: relative;
	background-color: #313131;
	clear: both;
	float: none;
}
#footer a{
	font-size:12px;
	color: #FFF;
}

#footer a:hover{
	font-size:12px;
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
#footer #fbox1  {
	text-align: center;
	width: 100%;
	margin-bottom:1em;
}
#footer #fbox1 ul li{
	display: inline;
	margin-left: 8px;
	padding-left: 8px;
	border-left: 1px solid #FFF;
}
*/
#footer a:hover{
	filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
#footer #fbox1  {
	text-align: center;
	width: 100%;
	margin-bottom:1em;
}
#footer #fbox1 ul li{
	display: inline;
	margin-left: 25px;
	padding-left: 25px;
}
#footer #fbox1 ul li a{
	font-size:14px;
	font-weight:bold;
}
#footer #fbox1 ul.sns_ft li{
	display: inline;
	margin-left: 12px;
	padding-left: 12px;
	font-size:11px;
}


#footer #fbox2 ul li  {
	display: inline;
	margin-left: 10px;
	padding-left: 12px;
	border-left: 1px solid #FFF;
	font-size:11px;
}

/*
#footer #fbox2 ul li  {
	display: inline;
	margin-left: 10px;
	padding-left: 12px;
	border-left: 1px solid #bfc1c1;
	font-size:11px;
}
*/

#footer #fbox1 ul li:first-child, #footer #fbox2 ul li:first-child{
	border-left:0;
	padding-left:0;
}

.pagetop{
	position: fixed;
	bottom: 0;
	cursor:pointer;
	right: 0;
	z-index: 100;
}


#footer .bg_footer{
	background-image: url(../menu/images/footer_s3.jpg);
	background-repeat:no-repeat;
    background-size: cover;
	background-position:center;
	width:100%;
	
} 
#footer .bg_footer li a{
	text-shadow: 1px 1px 2px #000;
}

/*-- fix_icon1-- */
#fix_icon1{
	position: fixed;
	top: 30vh;
	right: 0px;
	z-index:9999;
}

/*-- fix_icon2 背景白の縁取り-- */
#fix_icon2{
	position: fixed;
	top: 30vh;
	right: 0px;
	z-index:9999;
	background-color:rgba(255,255,255,0.5);
	padding: 10px 5px;
	border-radius: 5px;
	border: 1px solid rgba(51,51,51,0.4);
}

/* -----------------------------------------------
sidenav
-------------------------------------------------- */
#sidenav,
#sidenav2,
#sidenav3{
	width:90%;
	padding:40px 0;
}

#sidenav h3,
#sidenav2 h3,
#sidenav3 h3 {
	padding-bottom:10px;
	margin-bottom:15px;
	border-bottom: solid 1px #CCC;
	text-align: left;
}

#sidenav ul li,
#sidenav2 ul li,
#sidenav3 ul li {
	padding-bottom:10px;
	margin:0 0 15px 0;
	border-bottom: solid 1px #CCC;
	text-align: left;
}
#sidenav ul li.sub_b {
	background-color:#f7f7f7;
	color:#1496c6;
	margin:-6px 0 4px;
	padding:3px 0;
	text-align: left;
}
#sidenav ul li.sub_o {
	background-color:#f9f6f1;
	color:#f37213;
	margin:-6px 0 4px;
	padding:3px 0;
	text-align: left;
}
#sidenav ul li.sub_p {
	background-color:#ffe5ff;
	color:#333333;
	margin:-6px 0 4px;
	padding:3px 0;
	text-align: left;
}
#sidenav ul li.sub_lb {
	background-color:#e5f4ff;
	color:#333333;
	margin:-6px 0 4px;
	padding:3px 0;
	text-align: left;
}
#sidenav ul li.sub_be {
	background-color:#f7f6ed;
	color:#333333;
	margin:-6px 0 4px;
	padding:3px 0;
	text-align: left;
}
#sidenav ul li.bn {
	border-bottom:none;
	text-align: left;
}
#sidenav ul li a,
#sidenav3 ul li a {
	font-weight: 500;
	color: #333;
}
#sidenav2 ul li a{
	font-weight: 500;
	color: #333;
	font-weight: 300;
	font-size: 13px;
	background-image: url(../index_img/icon_arrow03.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 1.2em;
}
#sidenav2 ul li a:hover{
	padding-left: 1.3em;
}
#sidenav ul li ul,
#sidenav3 ul li ul {
	padding-top:10px;
	margin:0;
}
#sidenav ul li ul li ul{
	margin-left:1em;
	margin-top:-0.5em;
}

#sidenav ul li li,
#sidenav3 ul li li,
#sidenav ul li ul li ul li{
	padding-bottom:0;
	margin:0;
	border-bottom: none;
}
#sidenav ul li li a,
#sidenav ul li li.link_none{
	font-weight: 300;
	font-size: 13px;
	background-image: url(../index_img/icon_arrow01.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 1.2em;
}
#sidenav ul li li.glay a{
	font-weight: 300;
	font-size: 13px;
	background-image: url(../index_img/icon_arrow01.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 1.2em;
	color:#999;
}
#sidenav ul li ul li ul li a{
	font-weight: 300;
	font-size: 13px;
	background-image: url(../index_img/icon_arrow01.gif);
	background-repeat: no-repeat;
	background-position: 0.3em center;
	padding-left: 1.5em;
}
#sidenav3 ul li li a {
	font-weight: 300;
	font-size: 13px;
	background-image: url(../index_img/icon_arrow03.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding-left: 1.2em;
}

#sidenav ul li li a:hover,
#sidenav3 ul li li a:hover{
	padding-left: 1.3em;
}
#sidenav ul li ul li ul li a:hover{
	padding-left: 1.6em;
}

#sidenav nav,
#sidenav2 nav,
#sidenav3 nav{
	padding-left:2em;
}

/* sidenav h3 */
#sidenav h3 {
	position: relative;
	padding: .2em;
	background-color: #64AA44;
	margin-bottom:1em;
	color: #FFF;
	letter-spacing: 0px;
}

#sidenav2 h3 {
	position: relative;
	padding: .2em;
	background-color: #2a7dbc;
	margin-bottom:1em;
	color: #FFF;
	letter-spacing: 0px;
}

#sidenav3 h3 {
	position: relative;
	padding: .2em;
	background-color: #2a7dbc;
	margin-bottom:1em;
	color: #FFF;
	letter-spacing: 0px;
}

#sidenav2 h3 a:link,
#sidenav2 h3 a:visited{
	position: relative;
	padding: .2em;
	background-color: #2a7dbc;
	margin-bottom:1em;
	color: #FFF;
	letter-spacing: 0px;
	font-size:21px;
	font-weight:500;
}
#sidenav h3 span {
	display: block;
	padding: .5em 1em;
	border: 1px dashed #81D55C;
}

#sidenav2 h3 span {
	display: block;
	padding: .5em 1em;
	border: 1px dashed #42a1dc;
}
#sidenav3 h3 span {
	display: block;
	padding: .5em 1em;
	border: 1px dashed #42a1dc;
}
#sidenav h3::before,
#sidenav h3::after,
#sidenav2 h3::before,
#sidenav2 h3::after,
#sidenav3 h3::before,
#sidenav3 h3::after {
	content: '';
	position: absolute;
	top: 100%;
	border-style: solid;
	border-color: transparent;
}
#sidenav h3::before {
	left: 0;
	border-width: 0 10px 10px 0;
	border-right-color: #658D6B;
}
#sidenav2 h3::before,
#sidenav3 h3::before {
	left: 0;
	border-width: 0 10px 10px 0;
	border-right-color: #4565a7;
}
#sidenav h3::after {
	right: 0;
	border-style: solid;
	border-width: 10px 10px 0 0;
	border-top-color: #658D6B;
}
#sidenav2 h3::after,
#sidenav3 h3::after {
	right: 0;
	border-style: solid;
	border-width: 10px 10px 0 0;
	border-top-color: #4565a7;
}

#wrapper #container .main-content #index .tbl1 {
	text-align: center;
}



.row-content2{
	max-width:1200px;
	text-align:center;
	clear: both;
	float: none;
	background-image:url(../menu/images/footer_img.jpg)
	/* [disabled]overflow: hidden; */
	margin-top: 0;
	margin-right: auto;
	margin-bottom: 0;
	margin-left: auto;
}