@charset "utf-8";

/* =============================================================================
   リセット・サイト基本定義
   ========================================================================== */
html{
	font-size: 62.5%;
	width: 100%;
	box-sizing: border-box;
}
body{
	margin: 0;
	padding: 0;
	color: #323232;
	font-size: 1.6rem;
	line-height: 1.5em;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	-webkit-text-size-adjust: 100%; /*Chrome,Safari*/
	-ms-text-size-adjust: 100%; /*Edge*/
	-moz-text-size-adjust: 100%; /*Firefox*/
	text-size-adjust: 100%;	
	width: 100%;
	background: #fffef2;
}
h1, h2, h3, h4, h5, h6, p{
	margin: 0;
	padding: 0;
}


/*  追加 2026.1
-----------------------------------------------------------------------------*/

#contents_inner h6{
	color : #009900;
}

#contents_inner span label{
	padding: 3px 0;
	background: #e9f3ce;
	border-radius: 5px;
	margin-right:10px;
}

#contents_inner span label2{
	padding: 3px 0;
	background: #5c7925;
	border-radius: 5px;
	margin-right:10px;
}

/* --------------------------------------------------------------------------*/


img{
	border: 0;
}
form{
	margin: 0;
	padding: 0;
}
ul, li, ol{
	margin: 0;
	padding: 0;
	list-style: none;
}
dl, dt, dd{
	margin: 0;
	padding: 0;
}
li img, dt img, dd img{
	vertical-align: top;
}
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
input::placeholder {
	color: #aaa;
	font-size: 1.4rem;
}
a:link{
	color: #0060AE;
	text-decoration:underline;
}
a:visited{
	color: #303893;
	text-decoration: none;
}
a:hover{
	color: #0060AE;
	text-decoration: none;
}
.site{
	margin: 0 30px 0 0;
	padding: 0 26px 0 0;
	background : url(../img/icon_links.png) center right no-repeat;
	background-size: 22px 18px;
}
.pdf{
	margin: 0 20px 0 0;
	padding: 0 45px 0 0;
	background : url(../img/icon_pdf.png) center right no-repeat;
}
.excel{
	margin: 0 20px 0 0;
	padding: 0 45px 0 0;
	background : url(../img/icon_excel.png) center right no-repeat;
}
.word{
	margin: 0 20px 0 0;
	padding: 0 45px 0 0;
	background : url(../img/icon_word.png) center right no-repeat;
}
.new::after{
	content: "New";
	margin-left: 5px;
	color: #ff0000;
	padding: 1px 3px;
	font-size:1.4rem;
	font-weight: bold;
	font-style: italic;
	text-decoration: none !important;
}
a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}
#logo a:hover img {
	opacity: 0.7;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

/*  font 
-----------------------------------------------------------------------------*/
.txt80{	font-size: 80%; }
.txt120{	font-size: 120%; }
.txt150{ font-size: 150%; line-height: 1.4em; }
strong{	font-weight:bold; }

/*  align
-----------------------------------------------------------------------------*/
.align_r{	text-align: right; }
.align_c{	text-align: center; }
.align_l{	text-align: left; }
.valign_m{	vertical-align: middle; }


/* =============================================================================
   モバイルレイアウト : 767 px およびそれ以下
   ========================================================================== */
@media only screen and (max-width: 767px) {
body#top {}
body#sub {}
.sp_none{	display:none; }
img{	height: auto; }
iframe{	margin: 0 0 5% 0; width: 100%; height: auto; }

/*  ヘッダー
-----------------------------------------------------------------------------*/
#header h1{
	margin: 0 auto;
	width: 80%;
}
#header h1 img{
	margin: 3% 0;
	width: 100%;
}
/*　アクセシビリティボタン　*/
#accessible{
	display: none;
}
#google_search{
	display: none;
}
/*　外部リンクボタン
.h_button{
	width:100%;
	color: #fff;
	position: relative;
	display: inline-block;
	margin: 0 0 2% 3%;
	padding: 0 10px;
	background: #fff;
	border: 1px solid #31398C;
	text-align: center;
	text-decoration: none;　
	box-sizing: border-box;
 border-radius: 20px;
}
a.h_button span{
 color: #31398C;
 position: relative;
 padding-right: 10px;
}
a.h_button span::before{
 content: "";
 position: absolute;
 top: 50%;
 right: 0;
 width: 5px;
 height: 5px;
 border-top: 2px solid #31398C;
 border-right: 2px solid #31398C;
 transform: rotate(45deg);
 margin-top: -4px;
}
a.h_button:hover {
	text-decoration:none;
	background: #31398C;
	border: 1px solid #31398C;
}
a.h_button:hover span{
  color: #fff;
}
a.h_button:hover span::before{
	content: "";
	position: absolute;
	top: 50%;
 right: 0;
 width: 5px;
 height: 5px;
 border-top: 2px solid #fff;
 border-right: 2px solid #fff;
 transform: rotate(45deg);
 margin-top: -4px;
}　*/

/*  グローバルナビゲーション
-----------------------------------------------------------------------------*/
nav{
	clear: both;
	width: 100%;
	background: #d3e89d;
}
nav ul{
	font-size: 0;
}
nav ul li {
	padding: 2% 1%;
	text-align: center;
	font-size: 1.6rem;
	width : calc(100% / 2) ;
	display: inline-block;
	list-style-type: none;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	vertical-align: bottom;
	box-sizing: border-box;
}
nav ul li a{
	margin: 0;
	padding: 0;
	font-weight: bold;
	display:block;
}
nav ul li a:link{
	color: #323232;
	font-weight: bold;
	display:block;
	text-decoration: none;
}
nav ul li a:visited{
	color: #323232;
}
nav ul li a:hover{
	text-decoration: none;
	opacity: 0.7;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}
#menu li ul{
	display: none;
}

/*  フッター
-----------------------------------------------------------------------------*/
#footer{
	margin: 0;
	padding: 3% 0;
	width: 100%;
	text-align: center;
	background: #d3e89d;
	box-sizing:border-box;
}
#f_logo{
	margin: 0 auto;
	width: 14%;
}
#f_logo img{
	width: 100%;
}
#footer h4{
	margin: 0 0 10px 0;
	font-size: 2.0rem;
}
#footer h4 span{
	font-size: 90%;
	display: block;
}
#address{
	margin: 0  0 10px 0;
	font-size: 1.6rem;
}
#address span{
	margin: 0  0 6px 0;
	display: block;
}
/*-----------------2024.11追加*/
.btn_access{
	margin: 0 0 0 10px;
	padding: 4px 15px;
	background: #5c7925;
	font-size: 1.4rem;
	border-radius: 4px;
   display: inline-block;
}
/*-----------------*/
/*
.btn_access{
	margin: 0 0 0 10px;
	padding: 4px 15px;
	background: #5c7925;
	font-size: 1.4rem;
	border-radius: 4px;
}
*/

.btn_access:link{
	color: #fff;
	text-decoration: none;
}
.btn_access:visited{
	color: #fff;
	text-decoration: none;
}
.btn_access:hover{
	text-decoration: none;
	opacity: 0.7;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}
#f_links{
	width: 100%;
}
#f_links ul{
	margin: 0 0 2% 0;
	display:flex;
	justify-content: center;
}
#f_links ul li{
	margin: 0 20px;
	padding: 0 20px 0 0;
	border-right: 1px solid #323232;
}
#f_links ul li+ li {
	margin: 0;
	padding: 0;
	border-right: 0;
}
#copyright{
	margin: 0 0 2% 0;
	font-size: 1.2rem;
}

/*  コンテンツ
-----------------------------------------------------------------------------*/
#contents{
	zoom: 100%;
	margin: 0 auto;
	padding: 0 0 20% 0;
	clear:both;
	overflow: hidden;
	background: url(../img/bg_footer.png) center bottom no-repeat;
}
#contents_inner{
	width: 94%;
	margin: 3% auto;
	padding: 0 0 10% 0;
}
#sub{
	padding: 0 0 50px 0;
	position: relative;
}
#main{
	margin: 0;
	padding: 0;
	width: 100%;
}
#sub #main{
	margin: 30px 0;
}
#top #main:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}
#sub #main_inner{
	margin: 0 0 3% 0;
	padding: 4%;
	background: #fff;
	box-sizing: border-box;
	border-radius: 0px 0px 8px 8px;
}

/*　float設定　*/
.fl{	float:none; }
.fr{	float:none; }
.bc{	clear: both; }
.clearfix::after{
	height: 0;
	display: block;
	clear: both;
	content: " ";
}
/*　ページトップへ　*/
#pagetop{
	padding: 2% 0;
	width: 100%;
	text-align: center;
	background: #2d4ec1;
}
#pagetop a{
	color: #fff;
	text-decoration: none;
	display: block;
}
#pagetop a:hover {
	opacity: 0.7;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}
/*　リンク矢印　*/
.arrow {
	position: relative;
	padding-left: 20px;
	color: #333;
	text-decoration: none;
}
.arrow::after {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	border-top: 2px solid #323232;
	border-left: 2px solid #323232;
}
.arrow_w {
	position: relative;
	padding-left: 20px;
	color: #fff;
	text-decoration: none;
}
.arrow_w::after {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
}
.arrow-L::after {
	transform: rotate(135deg);
	position: absolute;
	left: 0;
	top: 6px;
}

}


/* =============================================================================
   デスクトップレイアウト : 768 px ～最大 1232 px
   ========================================================================== */
@media print, screen and (min-width: 768px) {
body#top { }
body#sub { }
.pc_none{	display:none; }

/*  ヘッダー
-----------------------------------------------------------------------------*/
#header{
	width: 980px;
	margin: 0 auto;
	position:relative;
}
#header h1{
	width: 382px;
	height: 93px;
	margin: 10px 0 0 ;
	float:left;
	box-sizing: border-box;
}
#header h1 img{
	width: 100%;
}
/*　アクセシビリティボタン　*/
#accessible{
	position:absolute; top:20px; right:0;
}
/*　文字サイズ変更　*/
#fontsize {
	float: left;
	margin: 0 20px 0 0;
}
/*　色反転　*/
#inverse {
	float: left;
}
/*　サイト内検索　*/
#google_search{
	position:absolute; top:60px; right:0;
	text-align: right;
	width: 300px;
}
#google_search input[type='text'] {
	margin: 0;
	padding: 0 2%;
	width: 74%;
	height: 34px!important;
	font-size: 1.4rem;
	border-radius: 3px;
	border: 1px solid #333;
	box-sizing: border-box;
}
#google_search input[type='submit'] {
	margin: 0;
	width: 24%;
	height: 34px!important;
	font-size: 1.4rem;
	border-radius: 3px;
	border: 1px solid #000;
	box-sizing: border-box;
	background: #000;
	color:#fff;
}
/*　外部リンクボタン
.h_button{
	width:100%;
	color: #fff;
	position: relative;
	display: inline-block;
	margin: 0 0 2% 3%;
	padding: 1px 15px;
	background: #fff;
	border: 1px solid #31398C;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
 border-radius: 20px;
}
a.h_button span{
	color: #31398C;
	position: relative;
	padding-right: 10px;
}
a.h_button span::before{
	content: "";
 position: absolute;
 top: 50%;
 right: 0;
 width: 7px;
 height: 7px;
 border-top: 2px solid #31398C;
 border-right: 2px solid #31398C;
 transform: rotate(45deg);
 margin-top: -5px;
}
a.h_button:hover {
	text-decoration:none;
	background: #31398C;
	border: 1px solid #31398C;
}
a.h_button:hover span{
  color: #fff;
}
a.h_button:hover span::before{
 content: "";
 position: absolute;
 top: 50%;
 right: 0;
 width: 7px;
 height: 7px;
 border-top: 2px solid #fff;
 border-right: 2px solid #fff;
 transform: rotate(45deg);
 margin-top: -5px;
}　*/

/*  グローバルナビゲーション
-----------------------------------------------------------------------------*/
nav{
	margin: 0 0 30px 0;
	clear: both;
	width: 100%;
	height: 66px;
	background: #d3e89d;
}
#menu{
	width: 980px;
	margin: 0 auto;
	padding: 0;
	box-sizing: border-box;
}
#menu li{
	position: relative;
	width :25%;
	margin: 0;
	padding: 0;
	text-align: center;
	border-right: 2px solid #fffef2;
	font-size: 1.2em;
	float: left;
	box-sizing: border-box;
}
#menu li:first-child{
	border-left: 2px solid #fffef2;
	box-sizing: border-box;
}
#menu li a{
	display: block;
	margin: 0;
	padding: 24px 0;
	line-height: 1;
}
#menu li a:link{
	display:block;
	color: #323232;
	font-weight: bold;
	text-decoration: none;
}
#menu li a:visited{
	display:block;
	color: #323232;
	font-weight: bold;
	text-decoration: none;
}
#menu li ul{
	list-style: none;
	position: absolute;
	top: 100%;
	left: 0;
	margin: 0;
	padding: 0;
	z-index: 100;
}
#menu li ul li{
	overflow: hidden;
	width: 242px;
	height: 0;
	color: #323232;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	-o-transition: .2s;
	-ms-transition: .2s;
	transition: .2s;
	border-right: none;
}
#menu li ul li a{
	padding: 13px 15px;
	background: #b8cc83;
	text-align: left;
	font-size: 0.6em;
	color: #323232;
	font-weight: normal;
}
#menu li ul li a:hover{
	display:block;
	color: #323232;
	text-decoration: underline;
}
#menu li:hover > a{
	background: #b8cc83;
	color: #323232;
}
#menu li:hover ul li{
	overflow: visible;
	height: 38px;
	border-bottom: 1px solid #fffef2;
	border-left: 1px solid #fffef2;
	border-right: 1px solid #fffef2;
}
#menu li:hover ul li:first-child{
	border-top: 1px solid #fffef2;
}

/*  フッター
-----------------------------------------------------------------------------*/
#footer{
	padding: 40px 0;
	width: 100%;
	height: 140px;
	background: #d3e89d;
}
#footer_inner{
	margin: 0 auto;
	width: 980px;
	position:relative;
}
#f_logo{
	width: 80px;
	position:absolute; top:0; left:0;
}
#f_logo img{
width:100%;
}
#footer h4{
	margin: 0 0 10px 0;
	font-size: 2.0rem;
	position:absolute; top:0; left:95px;
}
#address{
	margin: 0  0 10px 0;
	position:absolute; top:40px; left:95px;
}
#address span{
	margin: 0 15px 10px 0;
}
#address span.span_block{
	display: block;
}
.btn_access{
	margin: 0 0 0 10px;
	padding: 4px 15px;
	background: #5c7925;
	font-size: 1.4rem;
	border-radius: 4px;
}
.btn_access:link{
	color: #fff;
	text-decoration: none;
}
.btn_access:visited{
	color: #fff;
	text-decoration: none;
}
.btn_access:hover{
	text-decoration: none;
	opacity: 0.7;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}
#f_links{
	position:absolute; top:0; right:0;
}
#f_links ul{
	display:flex;
}
#f_links ul li{
	margin: 0 20px;
	padding: 0 20px 0 0;
	border-right: 1px solid #323232;
}
#f_links ul li+ li {
	margin: 0;
	padding: 0;
	border-right: 0;
}
#copyright{
	font-size: 1.2rem;
	position:absolute; top:120px; right:0;
}

/*  コンテンツ
-----------------------------------------------------------------------------*/
#contents{
	width: 100%;
	background: url(../img/pc/bg_footer.png) center bottom repeat-x;
}
#contents_inner{
	width: 980px;
	margin: 30px auto 0 auto;
	padding: 0 0 130px 0;
	display: flex;
	flex-direction: row-reverse;
}
#side{
	margin: 0 30px 0 0;
 width: 225px;
}
#main{
 width: calc( 100% - 255px );
}
#top #main:after {
	content: "";
	clear: both;
	height: 0;
	display: block;
	visibility: hidden;
}
#sub #main_inner{
	margin: 0 0 30px 0;
	padding: 20px 20px 20px 20px;
	background: #fff;
	box-sizing: border-box;
	border-radius: 0px 0px 8px 8px;
}

/*　float設定　*/
.fl{	float: left; }
.fr{	float: right; }
.clearfix::after{
	content: ".";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}
.clearfix{ display: inline-block; }
* html .clearfix{ height: 1%; }
.clearfix{ display: block; }

/*　ページトップへ　*/
#pagetop{
	position: fixed;
	z-index: 9000;
	bottom: 100px;
	right: 20px;
}
#pagetop a{
	display: block;
	text-indent: -9999px;
	width: 60px;
	height: 60px;
	background : url(../img/pagetop.png) center top / auto auto no-repeat scroll padding-box border-box transparent;
	background-size: 60px auto;
}
#pagetop a:hover {
	opacity: 0.7;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}

/*　リンク矢印　*/
.arrow {
	position: relative;
	padding-left: 20px;
	color: #333;
	text-decoration: none;
}
.arrow::after {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	border-top: 2px solid #323232;
	border-left: 2px solid #323232;
}
.arrow_w {
	position: relative;
	padding-left: 20px;
	color: #fff;
	text-decoration: none;
}
.arrow_w::after {
	content: '';
	display: block;
	width: 8px;
	height: 8px;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
}
.arrow-L::after {
	transform: rotate(135deg);
	position: absolute;
	left: 0;
	top: 6px;
}

/*　追加　ベースの緑色（h3の背景色）　*/
.base-green {
	color:#5c7925;
}

}