/* CSS Document */
/*
#keyimg{
	background: url("../img/keyimg.jpg") center center no-repeat;
	background-size: cover;
	height: 530px;
	margin-bottom: 50px;
}
*/

#oshirase {
	/*border:#F3C 2px dashed;*/
	border: #000 3px double;
	/*border-radius: 10px;        /* CSS3草案 */
	/*background:#FCF;*/
	text-align: center;
	width: 1000px;
	margin: auto;
	margin-bottom: 35px;
	margin-top: 15px;
	padding-top: 20px;
	padding-bottom: 20px;

}

#oshirase p {
	font-size: 14px;
	font-weight: bold;
	color: #4DA6FF;
}

#oshirase p.senter {
	font-size: 18px;
	font-weight: bold;
	color: #4DA6FF;
}

#keyimg {
	height: 615px;
}

#keyimg #slider {
	position: relative;
	margin: auto;
	width: 1400px;
	z-index: -1;
}




#keyimg #slider>li {
	position: absolute;
	list-style: none;
	visibility: hidden;
	animation: anime_slider_fade 15s 0s infinite;
}

#keyimg #slider>li:nth-of-type(2) {
	animation-delay: 5s;
}

#keyimg #slider>li:nth-of-type(3) {
	animation-delay: 10s;
}

@keyframes anime_slider_fade {
	0% {
		visibility: visible;
		opacity: 0;
	}

	15% {
		opacity: 1;
	}

	33.3% {
		opacity: 1;
	}

	48.3% {
		opacity: 0;
	}

	100% {
		opacity: 0;
	}
}



#keyimg #slider li {
	position: absolute;
}

#keyimg .rap {
	width: 1400px;
	margin: auto;
	position: relative;
}

@media (max-width: 1400px) {
	body {
		overflow-x: hidden;
	}
}

@media (max-width: 1200px) {
	/* 横幅が1200px以下の場合に適用するスタイル */

	#keyimg {
		height: 530px;
	}

	#keyimg #slider {
		width: 1200px !important;
	}

	#keyimg .rap {
		width: 1200px;
	}

	body {
		overflow-x: scroll;
	}

}






#keyimg .rap p {
	position: absolute;
	top: 320px;
	z-index: 5;
	text-align: center;
	color: #000;
	height: 90px;
	line-height: 90px;
	width: 765px;
	background-color: rgba(255, 255, 255, 0.8);
	font-size: 28px;
	font-family: kozuka-mincho-pro, serif;
	font-weight: 400;
	font-style: normal;
}

main {
	border-top: 1px solid #ddd;
}

main #top_icons {
	width: 1100px;
	margin: auto;
	margin-top: -50px;
	z-index: 10;
	margin-bottom: 45px;
}


.news_box {
	text-align: center;
	width: 1100px;
	margin: auto;
	padding-top: 15px;
	margin-bottom: 100px;
}

.news_box h3 {
	text-align: left;
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 25px;
}

#s01 {
	width: 1100px;
	margin: auto;
	margin-bottom: 100px;
}

#s01 h2 {
	font-size: 30px;
	border-left: 10px solid #8CC11F;
	height: 60px;
	line-height: 60px;
	padding-left: 10px;
	font-weight: normal;
	margin-bottom: 10px;
}

#s01 p {
	font-size: 18px;
	margin-bottom: 40px;
	padding-left: 10px;
}

#s01 ul {
	display: flex;
	justify-content: space-between;
}

#s01 ul a:hover {
	opacity: 0.8;
}

#s02 {
	width: 1100px;
	margin: auto;
	margin-bottom: 100px;
}

#s02 h2 {
	font-size: 30px;
	border-left: 10px solid #8CC11F;
	height: 60px;
	line-height: 60px;
	padding-left: 10px;
	font-weight: normal;
	margin-bottom: 40px;
}

#s02 p.text01 {
	font-size: 18px;
	margin-bottom: 45px;
	padding-left: 15px;
}

#s02 h3 {
	font-size: 22px;
	font-weight: normal;
	margin-bottom: 15px;
	padding-left: 15px;
}

#s02 .box_rap02,
#s02 .box_rap01 {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#s02 .box_rap01 {
	margin-bottom: 50px;
}

#s02 .box {
	width: 365px;
	border-right: 1px solid #ddd;
	margin-bottom: 25px;
	padding-bottom: 15px;
	padding-top: 15px;
}

#s02 .box_rap02 .box:nth-child(3),
#s02 .box_rap01 .box:nth-child(3) {
	border: 0;
}

#s02 .box_rap02::after,
#s02 .box_rap01::after {
	content: "";
	display: block;
	width: 365px;
}



#s02 .box figure {
	width: 340px;
	margin: auto;
	height: 315px;
}

#s02 .box figure img {
	margin-bottom: 10px;
}

#s02 .box figcaption {
	font-size: 16px;
	line-height: 150%;
}

#s02 .box ul {
	width: 320px;
	margin: auto;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#s02 .box ul li {
	height: 40px;
	color: #fff;
	text-align: center;
	font-size: 14px;
	line-height: 40px;
	margin-bottom: 5px;
}

#s02 .box ul li.n01 {
	background: #33B595;
	width: 100px;
	letter-spacing: 14px;
	text-indent: 14px;
}

#s02 .box ul li.n02 {
	background: #1E8EFF;
	width: 210px;
}

#s02 .box ul li.n03 {
	background: #f66;
	width: 160px;
}

#s02 .box ul li.n04 {
	background: #FF9C39;
	width: 150px;
}

#s02 .box ul li.dis {
	background: #ddd;
}

#s03 {
	width: 1100px;
	margin: auto;
	margin-bottom: 100px;
}

#s03 h2 {
	font-size: 30px;
	border-left: 10px solid #8CC11F;
	height: 60px;
	line-height: 60px;
	padding-left: 10px;
	font-weight: normal;
	margin-bottom: 10px;
}

#s03 p.text01 {
	font-size: 18px;
	margin-bottom: 45px;
	padding-left: 15px;
}

#s03 .box_rap ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 1100px;
	margin: auto;
}

#s03 .box_rap li {
	margin-bottom: 15px;
}

/*
#s03 .box_rap{
	width: 1100px;
	display: flex;
	justify-content: space-between;
}

#s03 .box_rap .box{
	width: 260px;
	border: 1px solid #ddd;
	background: #F7FCED;
	padding-top: 15px;
	padding-bottom: 15px;
}

#s03 .box_rap .box p{
	text-align: center;
	font-size: 20px;
	font-weight: bold;
	color: #52A500;
	line-height: 60px;
	margin-bottom: 15px;
}

#s03 .box_rap .box p.text02{
	line-height: 135%;
}

#s03 .box_rap .box p.text03{
	letter-spacing: 16px;
	text-indent:16px;
}

#s03 .box_rap .box p.text02 .f18{
	font-size: 18px;
	font-weight: normal;
}

#s03 .box_rap .box img{
	margin-bottom: 15px;
}

#s03 .box_rap .box figcaption{
	font-size: 16px;
	line-height: 150%;
	padding-left: 15px;
	padding-right: 15px;
}
*/
#s04 {
	width: 1100px;
	margin: auto;
	margin-bottom: 250px;
}

#s04 h2 {
	font-size: 30px;
	border-left: 10px solid #8CC11F;
	height: 60px;
	line-height: 60px;
	padding-left: 10px;
	font-weight: normal;
	margin-bottom: 40px;
}

#s04 .box_rap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#s04 .box_rap .box {
	width: 510px;
	border: 1px solid #ddd;
	padding: 15px;
	margin-bottom: 25px;
	padding-top: 15px;
	padding-bottom: 25px;
}

#s04 .box_rap .box h3 {
	font-size: 22px;
	border-bottom: 1px solid #8CC11F;
	padding-bottom: 10px;
	line-height: 60px;
	margin-bottom: 15px;
}

#s04 .box_rap .n02 h3,
#s04 .box_rap .n03 h3,
#s04 .box_rap .n04 h3,
#s04 .box_rap .n06 h3,
#s04 .box_rap .n08 h3,
#s04 .box_rap .n09 h3 {
	line-height: 135%;
}

#s04 .box_rap .box h3 .title {
	font-size: 60px;
	float: left;
	color: #59B200;
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-weight: 400;
	font-style: normal;
	height: 60px;
	padding-right: 15px;
	line-height: 60px;
}

#s04 .box_rap .box p {
	font-size: 16px;
	line-height: 180%;
}

#s04 .box_rap .n08 img {
	float: right;
	padding-top: 25px;
	padding-left: 25px;
}

#s05 {
	background: url("../img/namibg.jpg") 500px top repeat-x #F7FCED;
	padding-bottom: 100px;
	margin-bottom: 100px;
}

#s05 h2 {
	text-align: center;
	margin-top: -100px;
	margin-bottom: 100px;
}

#s05 .box_rap {
	width: 1100px;
	margin: auto;
	display: flex;
	justify-content: space-between;
}

#s05 .box_rap .box {
	width: 340px;
}

#s05 .box_rap .box .f22 {
	text-align: center;
	color: #59B200;
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size: 22px;
	margin-bottom: 15px;
}

#s05 .box_rap .box .f25 {
	font-size: 25px;
	text-align: center;
	font-family: kozuka-gothic-pr6n, sans-serif;
	font-weight: 500;
	font-style: normal;
	margin-bottom: 20px;
}

#s05 .box_rap .box img {
	margin-bottom: 25px;
}

#s05 .box_rap .box figcaption {
	font-size: 16px;
	line-height: 180%;
	padding-left: 5px;
	padding-right: 5px;
}

#s07 {
	width: 1100px;
	margin: auto;
}

#s07 h2 {
	font-size: 30px;
	border-left: 10px solid #8CC11F;
	height: 60px;
	line-height: 60px;
	padding-left: 10px;
	font-weight: normal;
	margin-bottom: 40px;
}

#s07 .box_rap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#s07 .box {
	width: 340px;
	margin-bottom: 50px;
}

#s07 .box img {
	border: 1px solid #bbb;
	margin-bottom: 15px;
}

#s07 .box figcaption {
	text-align: center;
	font-size: 16px;
	line-height: 135%;
	margin-bottom: 15px;
}

#s07 .box a {
	display: block;
	margin: auto;
	background: #8CC11F;
	color: #fff;
	width: 210px;
	height: 30px;
	line-height: 30px;
	text-align: center;
	text-decoration: none;
	font-size: 13px;
}

#s07 .box a:hover {
	opacity: 0.8;
}