/* For modern browsers */
.cf {
 zoom: 1;
}
.cf:before, .cf:after {
 content: "";
 display: table;
}
.cf:after {
 clear: both;
}
.crr {
 clear: both;
}
/*----------------------------------------------------------------------------
******************************************************************************
Layout
******************************************************************************
----------------------------------------------------------------------------*/
/* ==== Base === */
body {
 background: #456624;
 font-size: 14px;
}
#hd, #nav, #contents, #ft, #index_eye_box {
 width: 940px;
 margin: 0 auto;
}
#index_wrap {
 background: url(images/index_wrap_bg.jpg) repeat-x center top #FFF;
}
#wrap {
 background: url(images/wrap_bg.jpg) repeat-x center top #FFF;
}
.wrap--submenu {
 background: url(images/wrap_sidebar_bg.jpg) repeat-x center top #FFF !important;
}
/* ==== Header === */
#hd {
 height: 79px;
}
#hd_bnr {
 width: 447px;
 height: 26px;
 float: right;
 margin-top: 27px;
}
#hd_bnr li {
 float: left;
 margin-right: 5px;
}
/* ==== Navigation === */
#nav {
 width: 100% !important;
 float: left;
 margin: 20px auto 0px !important;
}
#nav.nav--jp{
 margin:29px auto 0px  !important
}
nav {
 width: 940px;
 margin: 0 auto;
}
#nav nav > ul, #nav_sub > ul {
 display: flex;
 align-items: center;
 justify-content: space-between;
}
#nav nav > ul > li, #nav_sub > ul > li {
 width: calc(100% / 4 - 0px);
 position: relative;
}
#nav nav > ul > li a, #nav_sub > ul > li > a {
    font-size: 14px;
    color: #000;
    display: block;
    text-decoration: none;
    text-align: center;
    position: relative;
    padding: 10px 0 10px;
    background: linear-gradient(0deg, #ececec, #ffffff);
    border-top: 1px solid #ccc!important;
    border-bottom: 1px solid #ccc!important;
    border-left: 1px solid #ccc!important;
    display: flex;
    flex-direction: column;
    align-items: center;
} 
#nav > nav > ul > li:last-of-type a {
 border-right: 1px solid #ccc!important;
}
#nav > nav > ul > li a:hover {
    background: linear-gradient(0deg, #35521a, #476b21);
    border: 1px solid #000000 !important;
    color: #FFF;
}
#nav > nav > ul > li a.current , #nav_sub > ul > li > a.current {
    background: linear-gradient(0deg, #35521a, #476b21);
    border: 1px solid #000000 !important;
    color: #FFF;
}
#nav_sub > ul > li > a:hover {
    background: linear-gradient(0deg, #35521a, #476b21);
    border: 1px solid #000000 !important;
    color: #FFF;}

#nav_sub ul li ul {
 display: flex;
 align-items: center;
 flex-direction: column;
 position: absolute;
 width: 100%;
 background: linear-gradient(0deg, #35521a, #476b21) !important;
}
#nav_sub ul li ul li {
 height: 0;
 overflow: hidden;
 transition: .5s;
}
#nav_sub ul li:hover ul li {
 height: 42px;
 overflow: visible;
}
#nav_sub ul li ul li {
 width: 100%;
}
#nav_sub ul li ul li a {
 border-left: 1px solid #384218 !important;
 border-right: 1px solid #384218 !important;
 border-bottom: 1px solid #384218 !important;
 display: block;
 text-decoration: none;
 text-align: center;
 padding: 10px 0 10px;
 color: #FFF;
}

#nav_sub ul li ul li:hover a{
  background:#262f0a
}

*/ /* For modern browsers */
.cf {
 zoom: 1;
}
.cf:before, .cf:after {
 content: "";
 display: table;
}
.cf:after {
 clear: both;
}
.crr {
 clear: both;
}
/*----------------------------------------------------------------------------
******************************************************************************
Layout
******************************************************************************
----------------------------------------------------------------------------*/
/* ==== Base === */
body {
 background: #456624;
 font-size: 14px;
}
#hd, #nav, #contents, #ft, #index_eye_box {
 width: 940px;
 margin: 0 auto;
}
#index_wrap {
 background: url(images/index_wrap_bg.jpg) repeat-x center top #FFF;
}
#wrap {
 background: url(images/wrap_bg.jpg) repeat-x center top #FFF;
}
/* ==== Header === */
#hd {
 height: 79px;
}
#hd_bnr {
 width: 447px;
 height: 26px;
 float: right;
 margin-top: 27px;
}
#hd_bnr li {
 float: left;
 margin-right: 5px;
}
/* ==== Content === */
#index_wrap #contents {
 margin-top: 20px !important
}
#contents {
 margin-top: 89px;
 padding: 20px 0 20px 0;
 background: url(images/contents_bg.jpg) repeat-y left top;
}
#contents.submenu{
 margin-top: 133px;
}
#contents_left {
 width: 690px;
 float: left;
 margin-left: 15px;
}
#contents_right {
 width: 208px;
 float: right;
 margin-right: 15px;
}
#contents_index_center {
 width: 456px;
 float: left;
}
#contents_index_right {
 width: 208px;
 float: left;
 margin: 0 0 0 20px;
}
/* ==== Footer === */
#ft_bg {
 border-top: 5px solid #6C9F39;
}
#ft {
 padding-top: 30px;
 padding-bottom: 30px;
 text-align: center;
 color: #FFF;
 font-size: 0.8em;
}
/*----------------------------------------------------------------------------
******************************************************************************
Head
******************************************************************************
----------------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {}
h1 {
 width: 481px;
 height: 56px;
 margin-top: 12px;
 float: left;
}
h2 {
 height: 42px;
 color: #FFF;
 font-size: 1.8em;
 padding: 6px 0px 0 20px;
 margin: 0 0 20px 0;
 background: url(images/h2_bg.jpg) 0 0 no-repeat;
 border: 1px solid #36531B;
}
h3 {
 height: 31px;
 font-size: 1.3em;
 font-weight: normal;
 padding: 10px 0px 0px 20px;
 margin: 30px 0 20px 0;
 background: url(images/h3_bg.jpg) 0 0 no-repeat;
 border: 1px solid #CCC;
}
h3.index_h3 {
 background: url(images/h3_bg02.jpg) 0 0 no-repeat;
 color: #FFF;
 border: 1px solid #36531B;
}
h4 {
 font-weight: normal;
 font-size: 1.2em;
 border-left: 7px solid #ccc;
 border-bottom: 1px solid #ccc;
 padding: 4px 0 4px 10px;
 margin: 12px 0 6px 0;
}
h5 {
 font-size: 1.1em;
 margin: 10px 0px;
}
/*----------------------------------------------------------------------------
******************************************************************************
Original
******************************************************************************
----------------------------------------------------------------------------*/
/* ==== Common === */
ul#bnr {
 list-style-type: none !important;
 margin: 0 !important;
 padding: 0 !important;
}
ul#bnr li {
 margin: 0 0 5px 0 !important;
 padding: 0 !important;
}
/* ==== Index === */
#slideshow {
 margin: 88px auto 19px;
 position: relative;
 height: 200px;
 width: 940px;
}
#slideshow IMG {
 position: absolute;
 top: 0;
 left: 0;
 z-index: 8;
 opacity: 0.0;
}
#slideshow IMG.active {
 z-index: 10;
 opacity: 1.0;
}
#slideshow IMG.last-active {
 z-index: 9;
}
#sub_nav__wrap ul {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
 padding: 0 !important;
}
.sub_nav__item {
 text-decoration: none !important;
 list-style: none !important;
 width: calc(100% / 4 - 20px);
 position: relative;
}
.sub_nav__item img {
 position: absolute;
 top: -5px;
 bottom: 0;
 right: 10px;
 margin: auto;
}
.sub_nav__item a {
 display: block;
 background: #4b642b;
 text-align: left;
 padding: 25px 15px;
 border-radius: 10px;
 color: #FFF;
 text-decoration: none;
 font-size: 1.1rem;
 box-shadow: 0 3px 0 #384218;
 transition: 0.2s;
}
.sub_nav__item a:hover {
 background: #619e34;
 box-shadow: 0 3px 0 #47671d;
}
.sub_nav__item img:hover {
 opacity: 1 !important;
}
div#sub_nav__wrap {
 margin-bottom: 20px;
}
.sub_nav__wrap--en .sub_nav__item a{
    padding: 10px 15px;
    display: flex;
    flex-direction: column;
    align-items: center;
}
.sub_nav__wrap--en .sub_nav__item a img{
    position:relative;
    top: 0;
    right: 0;
}

#wrap .sub_nav__wrap--en .sub_nav__item img {
    width: 30px!important;
    height: 30px!important;
}

#index_about_box {
 width: 380px;
 float: left;
}
#index_news_box {
 width: 300px;
 float: right;
}
#index_news_box02 {
 height: 200px;
 overflow: auto;
}
#index_news_box table td, #index_news_box02 table td {
 vertical-align: top;
 font-size: 12px;
 padding: 10px;
 border-bottom: 1px dotted #CCC;
}
.news_wrap {
 max-height: 190px;
 overflow-y: auto;
 width: 100%;
}
table td.date02 {
 width: 100px !important;
}
table td.date div.icon {
 background: url(images/index_news_icon.jpg) left center no-repeat;
 padding-left: 15px;
}
/* ======== Page ======== */
.greeting_box{
 display:flex;
 justify-content: space-between;
 align-items:flex-start;
}
.greeting_box .greeting_img{
 min-width:200px;
}
/*---#contents_left ---*/
/* ol,ul */
#contents_left ol, #contents_left ul {
 padding: 5px 0px 5px 25px;
}
#contents_left ul {
 list-style-type: disc;
}
#contents_left ol li, #contents_left ul li {
 padding: 5px 0px;
}
/* table */
#contents_left table {
 margin: 10px 0px;
}
#contents_left table th, #contents_left table td {
 padding: 5px;
}
#contents_left table td {
 vertical-align: top;
}
/* img */
#contents_left img{
 max-width:100%;
 height:auto;
}

#contents_left a img:hover {
 opacity: 0.5;
 filter: alpha(Opacity=50);
}
/*----en----*/
#en_hd_bnr {
 width: 447px;
 float: right;
 margin-top: 8px;
}
#en_hd_bnr li {
 margin-bottom: 2px;
}
#en_hd_bnr li.last {
 float: right;
 margin-top: 18px;
}
.img_padding {
 margin-top: 4px;
 padding: 4px;
 border: #CCC solid 1px;
}
p {
 line-height: 1.4;
}
.border_kakomi {
 border: #666 solid 1px;
}
.underline {
 text-decoration: underline;
}
/* ==== Content === */
#index_wrap #contents {
 margin-top: 20px !important
}
#contents {
 margin-top: 89px;
 padding: 20px 0 20px 0;
 background: url(images/contents_bg.jpg) repeat-y left top;
}
#contents_left {
 width: 690px;
 float: left;
 margin-left: 15px;
}
#contents_right {
 width: 208px;
 float: right;
 margin-right: 15px;
}
#contents_index_center {
 width: 456px;
 float: left;
}
#contents_index_right {
 width: 208px;
 float: left;
 margin: 0 0 0 20px;
}
/* ==== Footer === */
#ft_bg {
 border-top: 5px solid #6C9F39;
}
#ft {
 padding-top: 30px;
 padding-bottom: 30px;
 text-align: center;
 color: #FFF;
 font-size: 0.8em;
}
/*----------------------------------------------------------------------------
******************************************************************************
Head
******************************************************************************
----------------------------------------------------------------------------*/
h1, h2, h3, h4, h5, h6 {}
h1 {
 width: 481px;
 height: 56px;
 margin-top: 12px;
 float: left;
}
h2 {
 height: 42px;
 color: #FFF;
 font-size: 1.8em;
 padding: 6px 0px 0 20px;
 margin: 0 0 20px 0;
 background: url(images/h2_bg.jpg) 0 0 no-repeat;
 border: 1px solid #36531B;
}
h3 {
 height: 31px;
 font-size: 1.3em;
 font-weight: normal;
 padding: 10px 0px 0px 20px;
 margin: 30px 0 20px 0;
 background: url(images/h3_bg.jpg) 0 0 no-repeat;
 border: 1px solid #CCC;
}
h3.index_h3 {
 background: url(images/h3_bg02.jpg) 0 0 no-repeat;
 color: #FFF;
 border: 1px solid #36531B;
}
h4 {
 font-weight: normal;
 font-size: 1.2em;
 border-left: 7px solid #ccc;
 border-bottom: 1px solid #ccc;
 padding: 4px 0 4px 10px;
 margin: 12px 0 6px 0;
}
h5 {
 font-size: 1.1em;
 margin: 10px 0px;
}
/*----------------------------------------------------------------------------
******************************************************************************
Original
******************************************************************************
----------------------------------------------------------------------------*/
/* ==== Common === */
ul#bnr {
 list-style-type: none !important;
 margin: 0 !important;
 padding: 0 !important;
}
ul#bnr li {
 margin: 0 0 5px 0 !important;
 padding: 0 !important;
}
/* ==== Index === */
#slideshow {
 margin: 88px auto 19px;
 position: relative;
 height: 200px;
 width: 940px;
}
#slideshow IMG {
 position: absolute;
 top: 0;
 left: 0;
 z-index: 8;
 opacity: 0.0;
}
#slideshow IMG.active {
 z-index: 10;
 opacity: 1.0;
}
#slideshow IMG.last-active {
 z-index: 9;
}
#index_about_box {
 width: 380px;
 float: left;
}
#index_news_box {
 width: 300px;
 float: right;
}
#index_news_box02 {
 height: 200px;
 overflow: auto;
}
#index_news_box table td, #index_news_box02 table td {
 vertical-align: top;
 font-size: 12px;
 padding: 10px;
 border-bottom: 1px dotted #CCC;
}
.news_wrap {
 max-height: 190px;
 overflow-y: auto;
 width: 100%;
}
table td.date02 {
 width: 100px !important;
}
table td.date div.icon {
 background: url(images/index_news_icon.jpg) left center no-repeat;
 padding-left: 15px;
}
/* ======== Page ======== */
/*---#contents_left ---*/
/* ol,ul */
#contents_left ol, #contents_left ul {
 padding: 5px 0px 5px 25px;
}
#contents_left ul {
 list-style-type: disc;
}
#contents_left ol li, #contents_left ul li {
 padding: 5px 0px;
}
/* table */
#contents_left table {
 margin: 10px 0px;
}
#contents_left table th, #contents_left table td {
 padding: 5px;
}
#contents_left table td {
 vertical-align: top;
}
/* img */
#contents_left a img:hover {
 opacity: 0.5;
 filter: alpha(Opacity=50);
}
/*----en----*/
#en_hd_bnr {
 width: 447px;
 float: right;
 margin-top: 8px;
}
#en_hd_bnr li {
 margin-bottom: 2px;
}
#en_hd_bnr li.last {
 float: right;
 margin-top: 18px;
}
.img_padding {
 margin-top: 4px;
 padding: 4px;
 border: #CCC solid 1px;
}
p {
 line-height: 1.4;
}
.border_kakomi {
 border: #666 solid 1px;
}
.underline {
 text-decoration: underline;
}