#mainimage{
	margin: 0 auto 100px;
	position: relative;
}
#slide img{
	display:block;
	max-width:100%;
	height:auto;
}
#mainimage_img{
	width:100%;
	list-style:none;
	padding:0;
	height:100%;
	display:flex;
}
#mainimage_catch{
	position:absolute;
	font-size:24px;
	line-height:1.5em;
	letter-spacing:0.1em;
	text-align:center;
	width:100%;
	top:65px;
	left:0;
	right:0;
	margin:auto;
	z-index:2;
	font-weight: 700;
	text-shadow: 
    #fff 2px 0px,  #fff -2px 0px,
    #fff 0px -2px, #fff 0px 2px,
    #fff 2px 2px , #fff -2px 2px,
    #fff 2px -2px, #fff -2px -2px,
    #fff 1px 2px,  #fff -1px 2px,
    #fff 1px -2px, #fff -1px -2px,
    #fff 2px 1px,  #fff -2px 1px,
    #fff 2px -1px, #fff -2px -1px,
    #fff 3px 0px,  #fff -3px 0px,
    #fff 0px -3px, #fff 0px 3px,
    #fff 3px 3px , #fff -3px 3px,
    #fff 3px -3px, #fff -3px -3px,
    #fff 2px 3px,  #fff -2px 3px,
    #fff 2px -3px, #fff -2px -3px,
    #fff 3px 2px,  #fff -3px 2px,
    #fff 3px -2px, #fff -3px -2px;
}
#mainimage_catch h2{
	font-size:60px;
	color:#00ab7d;
	margin:0 auto 30px;
	max-width:800px;
}
#mainimage_comment{
	position:absolute;
	z-index:3;
	background:rgba(255,255,255,0.8);
	font-size:20px;
	padding:20px;
	border-radius:20px;
	right:20px;
	bottom:20px;
	line-height:1.8em;
	box-shadow:0 0 10px #fff,0 0 20px #fff;
}
#mainnav{
	max-width:1110px;
	box-sizing:border-box;
	margin:auto;
	z-index:5;
	display:flex;
	flex-wrap:wrap;
	gap:20px 0;
	padding:50px 0 100px;
}
#mainnav a{
	display:block;
	width:calc(100% / 3);
	flex:none;
	text-decoration:none;
	color:#222;
	border-radius:20px;
	box-shadow:0 5px 5px rgba(0,0,0,0.2);
	background:#fff;
}
#mainnav dl{
	width:100%;
	box-sizing:border-box;
	border-radius:20px;
	padding:22px 0 0;
}
#mainnav dt{
	width:100%;
	text-align:center;
	font-size:30px;
	font-weight:700;
	padding:0 0 10px;
	line-height:50px;
	color:#fff;
}
#mainnav dd{
	background:#fff;
	padding:12px;
	line-height:1.5em;
	letter-spacing:-0.1em;
	border-radius:0 0 20px 20px;
	height:150px;
	box-sizing:border-box;
}
.banner_img{
	display:block;
}
.banner_img img{
	display:block;
	border-radius:10px 10px 0 0;
	margin:0 auto;
}
#mainnav1{
	border:8px solid #b6da92;
}
#mainnav1 dt{
	background:#b6da92;
	text-shadow:0 0 3px #41a200;
}
#mainnav1:hover dt{
	background:#7ebd6a;
	color:#fff;
	transition:0.5s;
}
#mainnav2{
	border:8px solid #f9a755;
}
#mainnav2 dt{
	background:#f9a755;
	text-shadow:0 0 3px #b28e00;
}
#mainnav2:hover dt{
	background:#f1861a;
	color:#fff;
	transition:0.5s;
}
#mainnav3{
	border:8px solid #05b085;
}
#mainnav3 dt{
	background:#05b085;
	text-shadow:0 0 3px #068a69;
}
#mainnav3:hover dt{
	background:#01e0a8;
	color:#fff;
	transition:0.5s;
}
#mainnav4{
	border:8px solid #b6da92;
}
#mainnav4 dt{
	background:#b6da92;
	text-shadow:0 0 3px #41a200;
}
#mainnav4:hover dt{
	background:#7ebd6a;
	color:#fff;
	transition:0.5s;
}
#mainnav5{
	border:8px solid #f9a755;
}
#mainnav5 dt{
	background:#f9a755;
	text-shadow:0 0 3px #b28e00;
}
#mainnav5:hover dt{
	background:#f1861a;
	color:#fff;
	transition:0.5s;
}
#mainnav6{
	border:8px solid #05b085;
}
#mainnav6 dt{
	background:#05b085;
	text-shadow:0 0 3px #068a69;
}
#mainnav6:hover dt{
	background:#01e0a8;
	color:#fff;
	transition:0.5s;
}

main section {
	line-height: 1.8em;
}
main section h2{
	text-align:center;
	font-size:30px;
	margin:0 auto 40px;
}
.h2_inner{
	position:relative;
	display:inline-block;
	line-height:40px;
}
.h2_inner:before{
	content:"";
	vertical-align:middle;
	width:132px;
	height:40px;
	display:inline-block;
	margin-right:30px;
	background:url('../images/common/midashi_l.svg') no-repeat left center;
}
.h2_inner:after{
	content:"";
	vertical-align:middle;
	width:132px;
	height:40px;
	display:inline-block;
	margin-left:30px;
	background:url('../images/common/midashi_r.svg') no-repeat right center;
}
#news{
	margin:0 auto 120px;
}
#news_header{
}
#news_nav{
	max-width:1100px;
	margin:0 auto 40px;
}
#news_nav ul{
	list-style:none;
	gap:10px;
	padding:0;
	display:flex;
	justify-content:space-between;
}
#news_nav li{
	width:100%;
	box-sizing:border-box;
	border-radius:5px;
	position:relative;
}
#news_nav li a{
	display:block;
	line-height:32px;
	padding:0 14px;
	white-space:nowrap;
	text-align:center;
	color:#fff;
	text-decoration:none;
	font-weight:700;
	border-radius:5px;
}
#news_nav1 a{
	border:2px solid #05b085;
	background:#05b085;
}
#news_nav2 a{
	border:2px solid #91cb58;
	background:#91cb58;
}
#news_nav3 a{
	border:2px solid #22b8d3;
	background:#22b8d3;
}
#news_nav4 a{
	border:2px solid #f38c8d;
	background:#f38c8d;
}
#news_nav5 a{
	border:2px solid #05b085;
	color:#222 !important;
}
#news_nav li a:hover:after{
	display:block;
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-bottom: 0;
	position:absolute;
	bottom:-5px;
	left:0;
	right:0;
	margin:auto;
	border-right: 5px solid transparent;
	border-left: 5px solid transparent;
}
#news_nav li a.active:after{
	display:block;
	content:"";
	width: 0;
	height: 0;
	border-style: solid;
	border-bottom: 0;
	position:absolute;
	bottom:-5px;
	left:0;
	right:0;
	margin:auto;
	border-right: 5px solid transparent;
	border-left: 5px solid transparent;
}
#news_nav1 a:hover:after{
	border-top: 5px solid #05b085;
}
#news_nav1 a.active:after{
	border-top: 5px solid #05b085;
}
#news_nav2 a:hover:after{
	border-top: 5px solid #91cb58;
}
#news_nav2 a.active:after{
	border-top: 5px solid #91cb58;
}
#news_nav3 a:hover:after{
	border-top: 5px solid #22b8d3;
}
#news_nav3 a.active:after{
	border-top: 5px solid #22b8d3;
}
#news_nav4 a:hover:after{
	border-top: 5px solid #f38c8d;
}
#news_nav4 a.active:after{
	border-top: 5px solid #f38c8d;
}
#news_nav5 a:before{
	display:block;
	content:"";
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	margin:auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 8px solid #05b085;
  border-right: 0;
}
#news article{
	margin:0 auto;
	max-width:1100px;
	height:550px;
	overflow:auto;
	border-top:1px solid #dddddd;
	border-bottom:1px solid #dddddd;
}
#news article dl{
	padding:15px 0;
	border-bottom:1px solid #dddddd;
	display:flex;
	gap:40px;
}
#news article dl:last-child{
	border:0;
}
#news article dt{
	width:340px;
	display:flex;
	justify-content:space-between;
	flex:none;
	line-height:30px;
}
#news article dt time{
	padding:0 0 0 15px;
}
#news article dt .cat{
	display:block;
	width:200px;
	color:#fff;
	border-radius:10px;
	text-align:center;
	height:30px;
	box-sizing:border-box;
	font-size:16px;
}
.cat2 .cat,
.cat3 .cat,
.cat4 .cat,
.cat5 .cat,
.cat6 .cat,
.cat7 .cat,
.cat8 .cat,
.cat9 .cat,
.cat10 .cat,
.cat11 .cat,
.cat12 .cat,
.cat13 .cat,
.cat14 .cat,
.cat15 .cat,
.cat16 .cat,
.cat17 .cat,
.cat18 .cat,
.cat19 .cat{
	padding:0 10px;
	border-radius:5px;
	background:#91cb58;
	color:#fff;
}
.cat3 .cat{
	background:#22b8d3;
}
.cat4 .cat{
	background:#f38c8d;
}
#news2,#news3,#news4{
	display:none;
}
#top1{
	height:454px;
	margin:0 auto 100px;
	background:url('../images/index/bg1.webp') no-repeat center center;
}
#top1 article{
	max-width:1100px;
	margin:0 auto;
	box-sizing:border-box;
	padding:40px 45px 0 490px;
	font-size:27px;
	line-height:1.8em;
	font-weight:bold;
}
#top2 article{
	height:280px;
	padding:20px 0 0;
	box-sizing:border-box;
	margin:0 auto 120px;
	background:url('../images/index/bg2.webp') no-repeat center center;
}
#top2 article p{
	max-width:1120px;
	margin:0 auto;
	font-size:24px;
	text-shadow: 
    #fff 2px 0px,  #fff -2px 0px,
    #fff 0px -2px, #fff 0px 2px,
    #fff 2px 2px , #fff -2px 2px,
    #fff 2px -2px, #fff -2px -2px,
    #fff 1px 2px,  #fff -1px 2px,
    #fff 1px -2px, #fff -1px -2px,
    #fff 2px 1px,  #fff -2px 1px,
    #fff 2px -1px, #fff -2px -1px,
    #fff 3px 0px,  #fff -3px 0px,
    #fff 0px -3px, #fff 0px 3px,
    #fff 3px 3px , #fff -3px 3px,
    #fff 3px -3px, #fff -3px -3px,
    #fff 2px 3px,  #fff -2px 3px,
    #fff 2px -3px, #fff -2px -3px,
    #fff 3px 2px,  #fff -3px 2px,
    #fff 3px -2px, #fff -3px -2px;
}

#top2 .more{
	padding:110px 0 0;
}
#top2 .more a,
#top3 .more a{
	border:4px solid #05b085;
	color:#222;
	display:block;
	max-width:330px;
	position:relative;
	background:#fff;
	margin:0 auto;
	line-height:52px;
	white-space:nowrap;
	text-align:center;
	text-decoration:none;
	font-weight:700;
	border-radius:5px;
}
#top2 .more a:before,
#top3 .more a:before{
	display:block;
	content:"";
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	margin:auto;
	width: 0;
	height: 0;
	border-style: solid;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	border-left: 8px solid #05b085;
	border-right: 0;
}
#top2 .more a:hover,
#top3 .more a:hover{
	background:#05b085;
	color:#fff;
}
#top3 article{
	height:540px;
	padding:20px 0 0;
	box-sizing:border-box;
	margin:0 auto 120px;
	background:url('../images/index/bg3.webp') no-repeat center center;
}
#top3 article p{
	max-width:860px;
	margin:0 auto;
	font-size:48px;
	color:#399a1b;
	text-shadow: 
    #fff 2px 0px,  #fff -2px 0px,
    #fff 0px -2px, #fff 0px 2px,
    #fff 2px 2px , #fff -2px 2px,
    #fff 2px -2px, #fff -2px -2px,
    #fff 1px 2px,  #fff -1px 2px,
    #fff 1px -2px, #fff -1px -2px,
    #fff 2px 1px,  #fff -2px 1px,
    #fff 2px -1px, #fff -2px -1px;
	font-weight:700;
	line-height:1.3em;
}
#top3 .more{
	padding:110px 0 0;
}
#top4{
	margin:0 auto 140px;
}
#top4 article{
	max-width:1100px;
	margin:0 auto;
}
#top4_1{
	list-style:none;
	display:flex;
	padding:0;
	gap:25px;
	justify-content:center;
	margin:0 auto 80px;
}
#top4_1 li a{
	display:flex;
	align-items:center;
	justify-content:center;
	width:280px;
	height:120px;
	box-sizing:border-box;
	box-shadow:0 5px 5px rgba(0,0,0,0.1);
	border-radius:10px;
}
#top4_1 li a img{
	display:block;
}
#top4_1 li:nth-child(1) a{
	border:4px solid #05b085;
}
#top4_1 li:nth-child(2) a{
	border:4px solid #7ebd6a;
}
#top4_2{
	list-style:none;
	display:flex;
	padding:0;
	gap:10px;
}
#top4_2 li{
	width:calc((100% - 40px) / 5);
	border:1px solid #cccccc;
	border-radius:10px;
	padding:15px 0 0;
	box-sizing:border-box;
	text-align:center;
	font-size:16px;
}
#top4_2 li:nth-child(2),
#top4_2 li:nth-child(3){
	padding:0;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:center;
}
#top4_2 li:last-child{
	width:calc(((100% - 40px) / 5) * 2);
}
#top4_2 li a{
	display:block;
}
#top4_2 li .banner{
	display:flex;
	padding:30px 15px 0;
	gap:20px;
	justify-content:center;
	align-items:center;
}