@charset "utf-8";

/* =============================================================================
   モバイルレイアウト : 767 px およびそれ以下
   ========================================================================== */

@media only screen and (max-width: 767px) {

/*  共通
-----------------------------------------------------------------------------*/
/*　ジャンプボタン　*/
#sub #main #jump{
	margin: 0 0 5% 0;
	padding: 0;
	width: 100%;
}
#sub #main #jump ul{
	margin:  0;
	padding: 0;
	text-indent: 0;
}
#sub #main #jump ul li{
	margin: 0 0 4px 0;
	padding: 0 3px 3px 1px;
	display:inline-block;
	background-image:none;
}
#sub #main #jump ul li a{
	display: block;
	padding: 0 14px 0 20px;
	background : url(../img/bg_jump.png) left center no-repeat;
	font-size: 96%;
}
#sub #main #jump ul li a:hover{
	text-decoration: underline;
}
#sub #main #jump ul li:before{
	content: none;
}

/*　パンくずリスト */
#breadcrumb{	display: none; }

/*　見出し　*/
#sub h2{
	padding: 20px;
	font-weight: bold;
	font-size: 2.5rem;
	background: #d3e89d;
	border-bottom: 3px solid #5c7925;
	box-sizing: border-box;
	border-radius: 8px 8px 0px 0px;
}
h3{
	clear: both;
	margin: 0 0 20px 0;
	padding: 12px 20px;
	width: 100%;
	color: #fff;
	font-size: 2.0rem;
	background: #5c7925;
	border-radius: 100vh;
	box-sizing: border-box;
}
#main h4{
	clear: both;
	margin: 0 0 25px 0;
	padding: 0 0 5px 0;
	width: 100%;
	font-size: 2.0rem;
	box-sizing: border-box;
 border-bottom: solid .125em #d3e89d;
	position: relative;
}
#main h4::after {
	position: absolute;
	content: '';
	display: block;
	left: 0;
	bottom: -.125em ;
	border-bottom: .125em solid #5c7925;
	width: 30%;
	height: 100%;
}
#main h5{
	clear: both;
	margin: 0 0 10px 0;
	padding: 0 0 0 5px;
	font-size: 2.0rem;
	border-left: solid 5px #5c7925;/
	box-sizing: border-box;
}
#main h6{
	clear: both;
	margin: 0 0 10px 0;
	padding: 0;
	font-size: 1.8rem;
	box-sizing: border-box;
}

/*　本文　*/
#main p{
	line-height: 1.4em;
	margin: 0 0 5% 0;
	padding: 0;
}
#sub #main img{
	padding: 0 15% 0 15%;
	max-width: 70%;
}
#sub #main img.w100{
	padding: 0;
	max-width: 100%;
}
#main img.img_box{}
#main img.fl{
	display: block;
	float:none;
	margin: 0 auto 5% auto;
	padding: 0;
	text-align: center;
}
#main img.fr{
	display: block;
	float:none;
	margin: 0 auto 5% auto;
	padding: 0;
	text-align: center;
}

/*　表組み　*/
#main table{
	width: 100%;
	margin: 0 auto 5% auto;
	border-collapse: collapse;
	border: solid 1px #999; 
}
#main table thead th{
	padding: 10px;
	background: #d3e89d;
	text-align: center;
	font-weight:bold;
}
#main table th{
	padding: 10px;
	background: #f2f2f2;
	text-align: left;
	font-weight:normal;
	border: solid 1px #999; 
}

#main table td{
	padding: 10px;
	background: #fff;
	border: solid 1px #999; 
}
.table-sp tr,
.table-sp th,
.table-sp td {
	display: block;
}
.table-scroll {
	width: 100%;
	overflow-y: hidden;
	overflow-x: auto;
	-ms-overflow-style: -ms-autohiding-scrollbar;
	-webkit-overflow-scrolling: touch;
}
#main table.none{	border: none; }
#main table.none thead th{	border: none;	background: none;	color: #505050;}
#main table.none th{	border: none;	background: none; }
#main table.none td{	border: none;	background: none; }

/*　表組み　202502追加　*/
#main table.av{
	background: #fff;
}

#main table.av th{
	background:#fff;
	padding: 5px;
}
#main table.av td{
	background: #fff;
}
/*--------------*/

/*　表組み　202502追加　*/
#main table.mothers{
	background: #fff;
}

#main table.mothers th{
	background:#fffef2;
}
#main table.mothers td{
	background: #fffef2;
}
/*--------------*/


/*　リスト　*/
#sub #main ul{
	width:95%;
	list-style: none;
	margin: 0 0 30px 2.5%;
	padding: 0;
	text-indent: -1em;
}
#sub #main ul li{
	padding: 0 0 10px 0;
	margin: 0 0 0 1em;
}
#sub #main ul li:before{
	content: "";
	width: 10px;
	height: 10px;
	display: inline-block;
	background-color: #5c7929;
	border-radius: 50%;
	margin: 0 6px 0 0;
}
/* -----------------2024.11
#sub #main ul{
	width:95%;
	list-style: none;
	margin: 0 0 0 2.5%;
	padding: 0;
	text-indent: -1em;
}
#sub #main ul li{
	padding: 0 0 15px 0;
	margin: 0 0 10px 1em;
}
#sub #main ul li:before{
	content: "";
	width: 10px;
	height: 10px;
	display: inline-block;
	background-color: #5c7929;
	border-radius: 50%;
	margin: 0 6px 0 0;
}
*/


#sub #main ol{
	width:95%;
	list-style: none;
	margin: 0 0 0 2.5%;
	padding: 0;
	counter-reset: li_count;
	text-indent: -1em;
}
#sub #main ol li{
	padding: 0 0 15px 0;
	margin: 0 0 10px 1em;
}
#sub #main ol li:before{
	counter-increment: li_count;
	content: counter(li_count)".";
	color: #5c7929;
	font-weight: bold;
	margin: 0 5px 0 0;
}

/*　基本ボタン　*/
.button{
	color: #fff;
	position: relative;
	display: inline-block;
	margin: 0 3% 5% 0;
	padding: 5px 30px;
	background: #44a9df;
	border: 1px solid #44a9df;
	text-align: center;
	text-decoration: none;
	box-sizing: border-box;
 border-radius: 20px;
}
.button:link{
	text-decoration: none;
}
a.button span{
	color: #fff;
	position: relative;
	padding-right: 20px;
}
a.button 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;
}
a.button:hover {
	text-decoration:none;
	background: #fff;
	border: 1px solid #44a9e1;
}
a.button:hover span{
	color: #44a9e1;
}
a.button:hover span::before{
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 7px;
	height: 7px;
	border-top: 2px solid #44a9e1;
	border-right: 2px solid #44a9e1;
	transform: rotate(45deg);
	margin-top: -5px;
}

/*　目次　*/
.mokuji{
	margin: 0 auto;
	padding:0;
	width:90%;
	box-sizing: border-box;
}
.box_mokuji{
	margin: 0 0 5% 2%;
	padding: 4% 2% 4% 8%;
	width:98%;
	font-size: 2.2rem;
	font-weight: normal;
	box-sizing: border-box;
	border: 5px solid #d3e89d;
	border-radius: 6px; 
	position:relative;
	text-indent: 0;
}

/*　写真・キャプション　*/
#column{
	width: 100%;
	margin: 0 auto 2% auto;
}
.column2{
	display: block;
	float:none;
	margin: 0 auto;
	padding: 0;
}
.column2 img{
	width: 70%;
}
.column2_p{
	padding: 0 15% 5% 15%;
}
.column2_p:nth-child(2n){}
.column3{
	display: block;
	float:none;
	margin: 0 auto;
	padding: 0;
}
.column3_img{}
.column3 img{ 
	width: 70%;
}
.column3_p{
	padding: 0 15% 5% 15%;
}
.column3_p: nth-child(3n+3){}

/*　アコーディオン
#contents .accordion {
	margin:0 0 5% 0;
 padding:0;
}
#contents .accordion ul{
	width:100%;
	margin:0;
 padding:0;
}
#contents .accordion ul li{
	margin:0 0 2% 0;
 padding:0;
	background-image:none;
}
#contents .accordion ul li ul li{
	margin: 0 0 0 2%;
	padding: 0 0 15px 30px;
	background : url(../img/bg_list.png) 1px 4px / auto auto no-repeat scroll padding-box border-box transparent;
	box-sizing: border-box;
}
.nest{}
button{
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
	text-align: left;
	margin: 0 2% 1% 2%;
	padding: 1%;
	width: 96%;
	font-size: 120%;
	color: #fff;
	cursor: pointer;
	position: relative;
	background: linear-gradient(-90deg, #4679CC, #6594DF);
	box-sizing: border-box;
}
.accordion_button {}
.accordion_button.button_1 {
	background-color: #3290C6;
	color: #fff;
}
.accordion_button:after {
	content: "\f067";
	font-family: FontAwesome;
	position: absolute;
	top: 13px;
	right: 13px;
-webkit-text-stroke: 2px #4679CC;
}
.accordion_button.active:after {
	content: "\f068";
-webkit-text-stroke: 2px #4679CC;
}
.accordion_button.open{	display:block; }　*/

/*  NEWS&TOPICS一覧
-----------------------------------------------------------------------------*/
#main #news_list ul,
#main #news_list ul li{
	margin: 0;
	padding: 0;
	text-indent: 0;
}
#main #news_list ul{
	width:100%;
 list-style: none;
}
#main #news_list ul li span {
	margin: -10px 0 0 0;
	display: block;
}
#sub #main #news_list ul li:before{
	content: "";
	width: 0;
	height: 0;
	display: inline-block;
	background-color: #444;
	border-radius: 0%;
}
/*　ページャー　*/
#sub #main .pager ul,
#sub #main .pager ul li{
	margin: 0;
	padding: 0;
	text-indent: 0;
}
#sub #main .pager ul{
	width:100%;
 list-style: none;
	margin: 30px 0;
}
#sub #main .pager{
	text-align: center;
}
.pager .pagination li {
	display: inline;
	margin: 0 2px;
	padding: 0;
	display: inline-block;
	background:#44a9e1;
	border: 1px solid #44a9e1;
	width: 50px;
	height: 50px;
	text-align: center;
	position: relative;
}
.pager .pagination li a{
	vertical-align: middle;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display:table;
	color: #fff;
	text-decoration: none;
}
.pager .pagination li a span{
	display:table-cell;
	vertical-align:middle;
}
.pager .pagination li a:hover,
.pager .pagination li a.active{
	color: #444;
	background: #fff;
}
.pager .pagination li{
	display: none;
}
.pager .pagination li.pre,
.pager .pagination li.next{
	display: inline-block;
	width: 40%;
	height: 50px;
	text-align: center;
}
.pager .pagination li.pre a,
.pager .pagination li.next a{
	width: 100%;
	text-align: center;
}
.pager .pagination li.pre span::after{
	content: "　前の10件へ";
}
.pager .pagination li.next span::before{
	content: "次の10件へ　";
}
#sub #main .pager ul li:before{
	width: 0;
	height: 0;
}

/*  お問い合わせ
-----------------------------------------------------------------------------
table#table_mail {
	margin: 0 3% 4% 3%;
	width: 94%;
	max-width:94%;
	font-size: 90%;
	border-collapse: collapse;
	border: none;
}
table#table_mail thead th {	border: none;}
table#table_mail th {
	display: block;
	padding: 1%;
	text-align: left;
	border: none;
}
table#table_mail td {
	display: block;
	padding: 1%;
	margin: 0 0 5% 0;
	background: #fff;
	text-align: left;
	border: none;
}
table#table_mail input[type="text"] {
	width: 96%;
}
table#table_mail input[type="tel"] {
	width: 96%;
}
table#table_mail input[type="email"] {
	width: 96%;
}
table#table_mail TEXTAREA {
	width: 96%;
}
table#table_mail input[type="checkbox"]  {
	width:			12px;
	height:			12px;
	-moz-transform:		scale(1.4);
	-webkit-transform:	scale(1.4);
	transform:		scale(1.4);
}
table#table_mail label{
	margin: 0 0 2% 0;
	padding: 0;
	width: 96%;
	display: block;
}
table#table_mail th span.must {
	display: block;
	background-color: #ff0000;
	padding: 0 10px 0 10px;
	font-size: 10px;
	color: #fff;
	float: left;
	margin: 0px 5px 0 0;
}
.btn_contact{
	padding: 10px;
	font-size: 120%;
	width: 40%;
}*/

/*  左サイド（PCではバナーはフッター固定）
-----------------------------------------------------------------------------*/
#sub #banner{
  position: fixed;
  left: 0;
  bottom: 0;
  width: 100%;
}
#sub #banner ul{
  display: flex;
}
#sub #banner ul li{
  padding: 0;
  width: calc(100% / 3);
  display: flex;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  color: #fff;
  font-size: 20px;
}
/*  ボタン　*/
#sub .sub_btn-search{
	width: 100%;
	padding: 15px 5px;
	display: block;
	background: #5c7925;
	font-weight: bold;
	font-size:1.6rem;
	color: #fff !important;
	text-align: center;
	text-decoration: none !important;
	border-radius: 5px 5px 0 0;
}
#sub .sub_btn-search:before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0;
	background: url("../img/icon_search.png") no-repeat;
	background-size: 16px auto;
}
#sub .sub_btn-search:hover {
	background: #7d9947;
	text-decoration:none;
}
#sub .sub_btn-login{
	width: 100%;
	padding: 15px 5px;
	display: block;
	background: #eda60e;
	font-weight: bold;
	font-size:1.6rem;
	color: #fff !important;
	text-align: center;
	text-decoration: none !important;
	border-radius: 5px 5px 0 0;
}
#sub .sub_btn-login:before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0;
	background: url("../img/icon_login_w.png") no-repeat;
	background-size: 16px auto;
}
#sub .sub_btn-login:hover {
	background: #fcd180;
	text-decoration:none;
}
#sub .sub_btn-calendar{
	width: 100%;
	padding: 15px 5px;
	display: block;
	background: #0d9bd9;
	font-weight: bold;
	font-size:1.6rem;
	color: #fff !important;
	text-align: center;
	text-decoration: none !important;
	border-radius: 5px 5px 0 0;
}
#sub .sub_btn-calendar:before {
	content: "";
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0;
	background: url("../img/icon_calendar.png") no-repeat;
	background-size: 16px auto;
}
#sub .sub_btn-calendar:hover {
	background: #70c9f0;
	text-decoration:none;
}
/*  カテゴリメニュー　*/
#categorymenu{
	margin: 0 0 26px 0;
	width: 100%;
}
#categorymenu_title{
	padding: 10px 10px;
	font-weight: bold;
	font-size: 1.8rem;
	text-align: center;
	background: #d3e89d;
	box-sizing: border-box;
	border-radius: 8px 8px 0px 0px;
}
#categorymenu_inner{
	padding: 6px 0 0 0;
	width: 100%;
	background: #fff;
	border: 2px solid #d3e89d;
	box-sizing: border-box;
	border-radius: 0px 0px 8px 8px;
}
#categorymenu_inner ul li{
	margin: 10px 0 0 0;
	padding: 0 10px 10px 10px;
	border-bottom: 1px solid #ccc;
}
#categorymenu_inner ul li:last-child{
	border-bottom: none;
}
#categorymenu_inner a {
	position: relative;
	display: block;
	padding-left: 20px;
}
#categorymenu_inner a:before {
  content: '';
  width: 12px;
  height: 12px;
  background: #808080;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -6px;
}
#categorymenu_inner a:after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 4px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 50%;
  left: 5px;
  margin-top: -3px;
}

/*  追加 2024.11
-----------------------------------------------------------------------------*/
/*　divに適用。スマホでは表示しない　*/
#desktop{
	display: none;
}

/*　span、brにcrassを。スマホでは表示しない　*/
.desktop{
	display: none;
}
/*-----------------------------------------------------------------------------*/

span {
   display: inline-block;
}
/*  追加　2024.12
-----------------------------------------------------------------------------*/
.strong-red {
	color : #ff0000;
	font-weight:bold;
}
.normal-red {
	color : #ff0000;
}

}


/* =============================================================================
   デスクトップレイアウト : 768 px ～最大 1232 px
   ========================================================================== */

@media print, screen and (min-width: 768px) {

/*  共通
-----------------------------------------------------------------------------*/
/*　ジャンプボタン　h2の下のページ内ジャンプメニュー */ 
#sub #main #jump{
	width: 100%;
 margin: 5px auto 25px auto;
	border-collapse: separate;
	border-spacing: 4px 0;
}
#sub #main #jump ul{
	margin:0;
 padding:0;
	text-indent: 0;
}
#sub #main #jump ul li{
	margin: 0 18px 0 0;
	padding: 0;
 display:inline-block;
	background-image:none;
}
#sub #main #jump ul li a{
	display: block;
	margin: 0;
	padding: 5px 10px 5px 25px;
	background : url(../img/bg_jump.png) left center no-repeat;
	font-size: 98%;
}
#sub #main #jump ul li a:hover{
	text-decoration: underline;
}
#sub #main #jump ul li:before{
	content: none;
}

/*　パンくずリスト */
#breadcrumb{
	margin: 0 auto;
	width: 980px;
}
#breadcrumb ul{
	margin: 0;
	padding: 0;
}
#breadcrumb li{
	background-image:none;
	margin: 0 10px 0 0;
	float: left;
}
#breadcrumb li +li{
	padding: 0 0 0 28px;
	background : url(../img/bg_breadcrumb.png) no-repeat left center;
}
#breadcrumb a:link, #breadcrumb a:visited{
	text-decoration: none;
}
#breadcrumb a:hover{	text-decoration:underline; }
#breadcrumb:after {
	content: "";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

/*　見出し　*/
#sub h2{
	padding: 20px;
	font-weight: bold;
	font-size: 1.8em;
	background: #d3e89d;
	border-bottom: 3px solid #5c7925;
	box-sizing: border-box;
	border-radius: 8px 8px 0px 0px;
}
h3{
	clear: both;
	margin: 0 0 20px 0;
	padding: 12px 20px;
	width: 100%;
	color: #fff;
	font-size: 1.4em;
	background: #5c7925;
	border-radius: 100vh;
	box-sizing: border-box;
}
#main h4{
	clear: both;
	margin: 0 0 25px 0;
	padding: 0 0 5px 0;
	width: 100%;
	font-size: 1.4em;
	box-sizing: border-box;
 border-bottom: solid .125em #d3e89d;
	position: relative;
}
#main h4::after {
	position: absolute;
	content: '';
	display: block;
	left: 0;
	bottom: -.125em ;
	border-bottom: .125em solid #5c7925;
	width: 30%;
	height: 100%;
}
#main h5{
	clear: both;
	margin: 0 0 10px 0;
	padding: 0 0 0 10px;
	font-size: 1.4em;
	border-left: solid 5px #5c7925;/
	box-sizing: border-box;
}
#main h6{
	clear: both;
	margin: 0 0 10px 0;
	padding: 0;
	font-size: 1.2em;
	box-sizing: border-box;
}
/*　本文　*/
#main p{
	width:100%;
	padding: 0 0 35px 0;
}
#main p.no_float{
	width: 630px;
	overflow: hidden;
}
#main img{
	max-width: 100%;
}
#sub #main iframe{
	width: 580px;
	margin: 0 0 30px 50px;
}
#sub #main img.w100{
	padding: 0;
width: 100%;
}
#main img.img_box{
	margin: 0 0 40px 0;
}
#main img.fl{
	margin: 0 50px 40px 0;
}
#main img.fr{
	margin: 0 0 40px 50px;
}


/*　表組み　*/
#main table{
	width: 100%;
	margin: 0 0 20px 0;
	margin: 0 0 50px 0;
	border-collapse: collapse;
	border: solid 1px #999; 
}
#main table thead th{
	padding: 18px;
	background: #d3e89d;
	text-align: center;
	font-weight:bold;
}
#main table th{
	padding: 18px;
	background: #f2f2f2;
	text-align: left;
	font-weight:normal;
	border: solid 1px #999; 
}
#main table td{
	padding: 18px;
	border: solid 1px #999; 
}
#main table.none{	border: none; }
#main table.none thead th{	border: none;	background: none;	color: #505050;}
#main table.none th{	border: none;	background: none; }
#main table.none td{	border: none;	background: none; }

/*　表組み　202502追加　*/
#main table.av{
	background: #fff;
}

#main table.av th{
	background:#fff;
}
#main table.av td{
	background: #fff;
}
/*--------------*/

/*　表組み　202502追加　*/
#main table.mothers{
	background: #fff;
}

#main table.mothers th{
	background:#fffef2;
}
#main table.mothers td{
	background: #fffef2;
}
/*--------------*/

/*　リスト　*/
#sub #main ul{
	width:95%;
	list-style: none;
	margin: 0 0 30px 2.5%;
	padding: 0;
	text-indent: -1em;
}
#sub #main ul li{
	margin: 0 0 10px 1em;
	padding: 0;
}
#sub #main ul li:before{
	content: "";
	width: 10px;
	height: 10px;
	display: inline-block;
	background-color: #5c7929;
	border-radius: 50%;
	margin: 0 6px 0 0;
}
/* -----------------2024.11
#sub #main ul{
	width:95%;
	list-style: none;
	margin: 0 0 30px 2.5%;
	padding: 0;
	text-indent: -1em;
}
#sub #main ul li{
	margin: 0 0 15px 1em;
	padding: 0;
}
#sub #main ul li:before{
	content: "";
	width: 10px;
	height: 10px;
	display: inline-block;
	background-color: #5c7929;
	border-radius: 50%;
	margin: 0 6px 0 0;
}
*/
/*  追加 2024.11
-----------------------------------------------------------------------------*/
/*　div-id に適用。PCでは表示しない　*/
#mobile{
	display: none;
}

/*　span、brにcrassを。PCでは表示しない　*/
.mobile{
	display: none;
}
/*-----------------------------------------------------------------------------*/


#sub #main ol{
	width:95%;
	list-style: none;
	margin: 0 0 30px 2.5%;
	padding: 0;
	counter-reset: li_count;
	text-indent: -1em;
}
#sub #main ol li{
	margin: 0 0 15px 1em;
	padding: 0;
}
#sub #main ol li:before{
	counter-increment: li_count;
	content: counter(li_count)".";
	color: #5c7929;
	font-weight: bold;
	margin: 0 5px 0 0;
}

/*　基本ボタン　*/
.button{
	position: relative;
	display: inline-block;
	margin: 0 10px 30px 0;
	padding: 5px 30px;
	background: #44a9df;
	border: 1px solid #44a9df;
	text-align: center;
 border-radius: 20px;
	box-sizing: border-box;
}
.button:link{
	text-decoration: none;
}
a.button span{
	color: #fff;
	position: relative;
	padding-right: 20px;
}
a.button 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;
}
a.button:hover {
	text-decoration:none;
	background: #fff;
	border: 1px solid #44a9df;
}
a.button:hover span{
	color: #31398C;
}
a.button:hover span::before{
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 7px;
	height: 7px;
	border-top: 2px solid #44a9df;
	border-right: 2px solid #44a9df;
	transform: rotate(45deg);
	margin-top: -5px;
}

/*　目次　*/
.mokuji{
	margin: 0;
	padding:0;
	width:100%;
	box-sizing: border-box;
 display: flex;
	flex-wrap: wrap;
}
.box_mokuji{
	margin: 0 2% 3% 2%;
	padding: 2%;
	width:46%;
	font-size: 1.2em;
	font-weight: normal;
	box-sizing: border-box;
	border: 5px solid #d3e89d;
	border-radius: 6px; 
	position:relative;
	text-indent: 0;
}

/*　写真・キャプション　*/
#column{
	width: 100%;
	margin: 0 auto 10px auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: top
}
#column::after {
	display: block;
	content:"";
 width: 33.33%;
 width: -moz-calc((100% / 3) - 20px);
 width: -webkit-calc((100% / 3) - 20px);
 width: calc((100% / 3) - 20px);
}
.column2{
	margin: 0 20px 0 0;
 width: 50%;
 width: -moz-calc((100% / 2) - 20px);
 width: -webkit-calc((100% / 2) - 20px);
 width: calc((100% / 2) - 20px);
	vertical-align: top;
	box-sizing: border-box;
}
.column2:nth-child(2n){
	margin-right: 0;
}
.column2 img{
	width:100%;
	margin: 0;
}
.column2_p{
	width:100%;
 margin: 0 0 30px 0;
	word-wrap: break-word;
}
.column3{
	margin: 0 20px 0 0;
 width: 33.33%;
 width: -moz-calc((100% / 3) - 20px);
 width: -webkit-calc((100% / 3) - 20px);
 width: calc((100% / 3) - 20px);
	vertical-align: top;
	box-sizing: border-box;
}
.column3:nth-child(3n){
	margin-right: 0;
}
.column3 img{
	width:100%;
	margin: 0;
}
.column3_p{
	width:100%;
 margin: 0 0 30px 0;
	word-wrap: break-word;
}

/*　アコーディオン　*/
#contents .accordion {
	margin:0 0 50px 0;
 padding:0;
}
#contents .accordion ul{
	width:100%;
	margin:0;
 padding:0;
}
#contents.accordion ul li{
	margin:0 0 20px 0;
 padding:0;
	background-image:none;
}
#contents .accordion ul li ul li{
	margin: 0;
	padding: 0 0 15px 30px;
	background : url(../img/bg_list.png) 1px 4px / auto auto no-repeat scroll padding-box border-box transparent;
	box-sizing: border-box;
}
.nest{}
button{
	background-color: transparent;
	border: none;
	cursor: pointer;
	outline: none;
	padding: 0;
	appearance: none;
	text-align: left;
	margin: 0 0 25px 0;
	padding: 16px;
	width: 100%;
	font-size: 200%;
	color: #fff;
	cursor: pointer;
	position: relative;
	background: linear-gradient(-90deg, #4679CC, #6594DF);
	box-sizing: border-box;
}
.accordion_button {}
.accordion_button.button_1 {
	background-color: #3290C6;
	color: #fff;
}
.accordion_button:after {
	content: "\f067";
	font-family: FontAwesome;
	position: absolute;
	top: 22px;
	right: 22px;
-webkit-text-stroke: 4px #4679CC;
}
.accordion_button.active:after {
	content: "\f068";
-webkit-text-stroke: 4px #4679CC;
}

/*  NEWS&TOPICS一覧
-----------------------------------------------------------------------------*/
#main #news_list ul li{
	margin: 0 0 0 0;
	padding: 6px 0 6px 0;
	background-image:none;
	padding-left: 7.8em;
 text-indent: -7.8em;
}
#main #news_list ul li span {	margin: 0 30px 0 0; }
/*　ページャー　*/
#sub #main .pager ul,
#sub #main .pager ul li{
	margin: 0;
	padding: 0;
	text-indent: 0;
}
#sub #main .pager ul{
	width:100%;
 list-style: none;
	margin: 30px 0;
}
.pager ul.pagination {
	text-align: center;
	margin: 0;
	padding: 0;
}
.pager .pagination li {
	display: inline;
	margin: 0 2px;
	padding: 0;
	display: inline-block;
	background:#fff;
	width: 40px;
	height: 40px;
	text-align: center;
	position: relative;
}
.pager .pagination li a{
	vertical-align: middle;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display:table;
	color: #444;
	text-decoration: none;
}
.pager .pagination li a span{
	display:table-cell;
	vertical-align:middle;
}
.pager .pagination li a:hover,
.pager .pagination li a.active{
	color: #fff;
	background: #44a9df;
}
#sub #main .pager ul li:before{
	width: 0;
	height: 0;
}

/*  お問い合わせ
-----------------------------------------------------------------------------
table#table_mail {}
table#table_mail thead th {}
table#table_mail th {}
table#table_mail td {}
table#table_mail input[type="text"] {}
table#table_mail input[type="email"] {}
table#table_mail TEXTAREA {}
table#table_mail input[type="checkbox"]  {}
table#table_mail label{	margin: 0 30px 0 0; }
table#table_mail th span.must {
	display: block;
	background-color: #ff0000;
	padding: 0 10px 0 10px;
	font-size: 10px;
	color: #FFF;
	float: left;
	margin: 0px 5px 0 0;
}
.btn_contact{
	padding: 10px;
	font-size: 120%;
	width: 200px;
}*/

/*  左サイド
-----------------------------------------------------------------------------*/
/*  ボタン　*/
#banner{
	padding: 0;
	margin: 0 auto;
	width: 100%;
}
#banner img{
	width: 100%;
}
#banner ul {
	margin: 0 0 26px 0;
}
#banner ul li{
	margin: 0 0 10px 0;
}
.sub_btn-search{
	padding: 14px;
	display: block;
	background: #5c7925;
	font-weight: bold;
	font-size:1.2em;
	color: #fff !important;
	text-decoration: none !important;
	border-radius: 3px;
	text-align:center;
	box-shadow: 1px 1px 0px 0 rgb(0, 0, 0);
}
.sub_btn-search:before {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	margin: 0px 26px 0 0;
	background: url("../img/icon_search.png") no-repeat;
	background-size: 22px auto;
	vertical-align: middle;
}
.sub_btn-search:hover {
	background: #7d9947;
	text-decoration:none;
}
.sub_btn-login{
	padding: 14px;
	display: block;
	background: #eda60e;
	font-weight: bold;
	font-size:1.2em;
	color: #fff !important;
	text-decoration: none !important;
	border-radius: 3px;
	text-align:center;
	box-shadow: 1px 1px 0px 0 rgb(0, 0, 0);
}
.sub_btn-login:before {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	margin: 0px 26px 0 0;
	background: url("../img/icon_login_w.png") no-repeat;
	background-size: 22px auto;
	vertical-align: middle;
}
.sub_btn-login:hover {
	background: #fcd180;
	text-decoration:none;
}
.sub_btn-calendar{
	padding: 14px;
	display: block;
	background: #0d9bd9;
	font-weight: bold;
	font-size:1.2em;
	color: #fff !important;
	text-decoration: none !important;
	border-radius: 3px;
	text-align:center;
	box-shadow: 1px 1px 0px 0 rgb(0, 0, 0);
}
.sub_btn-calendar:before {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	margin: 0px 10px 0 0;
	background: url("../img/icon_calendar.png") no-repeat;
	background-size: 22px auto;
	vertical-align: middle;
}
.sub_btn-calendar:hover {
	background: #70c9f0;
	text-decoration:none;
}
/*  カテゴリメニュー　*/
#categorymenu{
	margin: 0 0 26px 0;
	width: 100%;
}
#categorymenu_title{
	padding: 20px 10px;
	font-weight: bold;
	font-size: 1.8rem;
	text-align: center;
	background: #d3e89d;
	box-sizing: border-box;
	border-radius: 8px 8px 0px 0px;
}
#categorymenu_inner{
	padding: 6px 0 0 0;
	width: 100%;
	background: #fff;
	border: 2px solid #d3e89d;
	box-sizing: border-box;
	border-radius: 0px 0px 8px 8px;
}
#categorymenu_inner ul li{
	margin: 10px 0 0 0;
	padding: 0 10px 10px 10px;
	border-bottom: 1px solid #ccc;
}
#categorymenu_inner ul li:last-child{
	border-bottom: none;
}
#categorymenu_inner a {
	position: relative;
	display: block;
	padding-left: 20px;
}
#categorymenu_inner a:before {
  content: '';
  width: 12px;
  height: 12px;
  background: #808080;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -6px;
}
#categorymenu_inner a:after {
  content: '';
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 3px 0 3px 4px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 50%;
  left: 5px;
  margin-top: -3px;
}

/*  追加　2024.12
-----------------------------------------------------------------------------*/
.strong-red {
	color : #ff0000;
	font-weight:bold;
}
.normal-red {
	color : #ff0000;
}

}
