@charset "UTF-8";

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,
form,fieldset,input,textarea,p,blockquote,th,td{
padding:0;
margin:0;
}

table{
border-collapse: collapse;
border-spacing:0;
}
img{
border:0;
line-height:0;
}
ol,ul{
list-style:none;
}

body{
font:14px/1.5 "メイリオ","Meiryo",arial,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
color:#333;
}


a:link,a:visited{color:#6b9209;text-decoration:none;}
a:hover{color:#8cb428;}
a:active, a:focus {outline:0;}
img{border:0;}



/*******************************
レイアウト
*******************************/
#header, #mainNav, #wrapper,#footer ul{
margin:0 auto;
width:880px;
clear:both;
}

#sidebar{
float:left;
width:233px;
padding:22px 0 50px;
}

#main{
float:right;
width:627px;
padding:22px 0 50px;
}


/*******************************
/* ヘッダー
*******************************/
#headerWrap{
height:147px;
background:#fff url(images/wall.jpg) repeat-x 0 0;
}

#header{
position:relative;
height:147px;
}

#header h1,#header h2,#header p{
position:absolute;
top:31px;
font-size:10px;
font-weight:normal;
line-height:22px;
}

/* スローガン */
#header h1{
top:2px;
left:0;
color:#555;
}

/* ロゴ */
#header h2{
left:0;
}

/* 住所 */
#header p{
right:0;
}


/************************************
/* メインナビゲーション
************************************/
ul#mainNav{
position:absolute;
top:102px;
height:45px;
background:url(images/mainNavBg.png) no-repeat 0 0;
}

ul#mainNav li{
text-indent: -5000px;
float:left;
}

ul#mainNav a{
display: block;
width: 176px;
height: 45px;
background:url(images/mainNav1.jpg) no-repeat 0 0;
}

ul#mainNav li.current_page_item a,ul#mainNav li.current-menu-item a,ul#mainNav li a:hover{background-position:0 -45px;}

ul#mainNav li.menu-item-2 a{background-image:url(images/mainNav2.jpg);}
ul#mainNav li.menu-item-3 a{background-image:url(images/mainNav3.jpg);}
ul#mainNav li.menu-item-4 a{background-image:url(images/mainNav4.jpg);}
ul#mainNav li.menu-item-5 a{background-image:url(images/mainNav5.jpg);}	



/*******************************
/* メイン
*******************************/
#mainImg{margin-top:20px;}

h3.heading{
clear:both;
padding-left:30px;
line-height:30px;
font-size:14px;
font-weight:normal;
color:#fff;
background:url(images/headingBg.png) no-repeat 0 0;
}

.article{
border:0;
margin:0 0 20px 0;
padding: 0 10px 40px 10px;
background:none;
border:1px solid #dcdcdc;
}

.article_cell{
clear:both;
padding:20px 0 25px;
border-bottom:1px dashed #dcdcdc;
}

.main{
padding:20px 10px 20px 10px;
margin:0 0 20px 0;
border:0;
background:none;
border:1px solid #dcdcdc;
}

.last{border-bottom:none;}

.main h4{
margin:0 0 10px 10px;
font-size:16px;
font-weight:normal;
color:#6b9209;
}

.article h4{
margin:0 0 10px 10px;
font-size:16px;
font-weight:normal;
color:#6b9209;
}

.alignleft{
float:left;
padding:0 15px 15px 10px;
}

.alignright{
float:right;
padding: 0 10px 15px 15px;
}

.aligncenter{
padding: 20px 0 20px 0;
text-align: center;
}

.main p{
padding:0 10px 0 10px;
}

.article p{
padding:0 10px 0 10px;
}

.picture{
width:193px;
float:left;
text-align:center;
background-color:#ffffff;
border-top:1px solid #eaeaea;
border-right:1px solid #ddd;
border-bottom:1px solid #ccc;
border-left:1px solid #eaeaea;
padding:5px 0 5px 0;
margin:5px 0 0 5px;
}

.picture:hover{
background-color:#fffaef;
}


/*******************************
/* サイトバー
*******************************/
#sidebar h3{
clear:both;
padding-left:30px;
line-height:30px;
font-size:14px;
font-weight:normal;
color:#fff;
background:url(images/side_headingBg.png) no-repeat 0 0;
}

ul.info{
overflow:hidden;
padding:0 0 10px 17px;
border:1px solid #dcdcdc;
margin-bottom:20px;
}

ul.info li{
line-height:0;
padding:10px 0;
margin-right:15px;
border-bottom:1px dashed #dcdcdc;
}

ul.info a:link,ul.info a:visited{
display: block;
padding-left:12px;
line-height:normal;
text-decoration:none;
color:#313131;
background:url(images/linkArrow.gif) no-repeat 0 50%;
}

ul.info a:hover, ul.info li.current_page_item a, ul.info li.current-menu-item a{color:#6b9209;}

ul.info li.last{border-bottom:none;}

#sidebar p{margin-bottom:20px;}

/*******************************
/* フッター
*******************************/
#footer{
clear:both;
background:#909090;
}

#footer ul{
padding:25px 0;
text-align:center;
}

#footer li{
display: inline;
padding: 5px 16px;
border-left:1px dotted #d5d5d5;
}

#footer li a{
text-decoration:none;
color:#fff;
}

#footer li a:hover{color:#dadada;}

p#copy{
padding:10px 0 37px;
text-align:center;
color:#fff;
font-size:10px;
}
/*******************************
/* 10/18追加分
*******************************/
.lecture_img {
	margin-top:20px;
	margin-bottom:40px;
}
.lecture_area{
	margin-bottom:40px;
}
.lecture_img img{
	width: 100%;
	margin-bottom:15px;
}
/*******************************
/* 10/23追加分
*******************************/
.table_title{
	font-size:16px;
	width:584px;
	padding: 7px 0 5px 0 ;
	margin:0 0 0 auto;
	text-align: center;
	border:solid 1px rgb(204, 204, 204);
	background-color:#A0D31D;
	color:white;
	font-weight: bold;
}
/*******************************
/* 2025/10/23追加分
*******************************/
.saishin{
	color: #6b9209;
	font-weight: bold;
	width: 100%;
  text-align: left;
	margin: 0.5em 0;
}

.accordion {
  width: 100%;
  text-align: left;
  cursor: pointer;
  font-weight: bold;
  border: none;
  background: none;
  font-size: 1.2em;
  margin: 0.5em 0;
  color: #6b9209;
  padding-right: 2.2em;     /* ← 右端の＋/−にかぶらない余白を確保 */
  display: block;    
}

.panel {
display: none;
padding-left: 1em;
}
.button_area_saishin{
	border-bottom: 1px solid #AADC2B;
	  width: 100%;
	margin-bottom: 15px;
}
.button_area{
	  position: relative;        /* ← 疑似要素配置の基準にする（重要） */
  width: 100%;
  border-bottom: 1px solid #AADC2B;
  margin-bottom: 15px;
  /* 必要なら上下の内側余白も追加可 */
  /* padding: 0.4em 0; */
}
.button_area::after{
  content: '+';
color:#AADC2B;
	font-weight: bold;
  position: absolute;
  right: 0.8em;
  top: 50%;
  transform: translateY(-50%);
  line-height: 1;
  pointer-events: none;
  transition: transform 0.3s, content 0.3s;
}
.year-block.open .button_area::after {
  content: '−';
}


/*お問い合わせフォーム*/
.policy-note a {
  text-decoration: underline;
}
.agree-label {
  display: inline-flex;
  align-items: center;
  gap: .5em;
  margin: .6em 0 1em;
}
input[type="submit"][disabled] {
  opacity: .5;
  cursor: not-allowed;
}
.policy-note{
	margin-top:20px;
}
.policy_main{
	margin-top:25px;
}
.policy_h3{
	color:#6b9209;
	margin-top:25px;
	margin-bottom:15px;
	border-bottom: 1px solid #6b9209;
}
.icon_size img{
	margin-left:5px;
	width: 12px;
}