@charset "UTF-8";
/*------------------------------------------------------------header*/
header::before {
	content: "";
	position: absolute;
	width: 100%;
	height: 93px;
	bottom: 0;
	background: url(../img/common_img/mountain.png) no-repeat bottom right 20%;
	background-size: auto 40px;
}

@media print, screen and (min-width:768px) {
header::before {
	bottom: 62px;
}
}

@media print, screen and (min-width:992px) {
header::before {
	bottom: 74px;
	background: url(../img/common_img/mountain.png) no-repeat bottom right 10%;
	background-size: auto 70px;
}
}

@media print, screen and (min-width:1200px) {
header::before {
	bottom: 82px;
	background-size: auto 90px;
}
}
/*------------------------------------------------------------mainphoto*/
#mainimage {
	padding-top: 90px;
	text-align: center;
}
#mainimage img {
	width: 100%;
	max-width: 420px;
	height: auto;
}

@media print, screen and (min-width:768px) {
#mainimage {
	padding-top: 115px;
}
#mainimage .container {
	padding: 0;
}
#mainimage img {
	max-width: 100%;
}
}

@media print, screen and (min-width:992px) {
#mainimage {
	padding-top: 130px;
}
}
@media print, screen and (min-width:1200px) {
#mainimage {
	padding-top: 120px;
}
}
/*------------------------------------------------------------content*/
/*-------------------------------------------section01*/
#sec01 {
	padding-top: 40px;
	background: url(../img/common_img/bg_check.png);
	margin-bottom: -60px;
}
#sec01 ul li {
	padding-bottom: 60px;
	display: flex;
	align-items: center;
}
#sec01 ul li:nth-child(odd) {
	background: url(../img/common_img/border01.png) no-repeat center bottom 20px;
	background-size: auto 30px;
	flex-direction: row-reverse;
}
#sec01 ul li:nth-child(even) {
	background: url(../img/common_img/border02.png) no-repeat center bottom 20px;
	background-size: auto 30px;
}
#sec01 ul li:last-child {
	background: none;
	padding-bottom: 30px;
}
#sec01 ul li figure {
	width: 20%;
}
#sec01 ul li:nth-child(odd) figure {
	margin-left: 2%;
}
#sec01 ul li:nth-child(even) figure {
	margin-right: 2%;
}
#sec01 ul li p {
	text-align: left;
	width: 78%;
}
#sec01 ul li p span {
	font-weight: bold;
	font-size: 30px;
	color: #4d0701;
	float: left;
	display: inline-block;
	margin-top: 12px;
	margin-right: 8px;
}
#sec01 ul li p br {
	display: none;
}
#sec01 .container > p:last-of-type {
	font-weight: bold;
	font-size: 20px;
	color: #4d0701;
	background: url(../img/index_img/arrow01.png) no-repeat center bottom 50px;
	background-size: auto 30px;
	padding-bottom: 100px;
}

@media print, screen and (min-width:768px) {
#sec01 ul li:nth-child(odd) {
	background: url(../img/common_img/border01.png) no-repeat center bottom 30px;
	background-size: auto;
}
#sec01 ul li:nth-child(even) {
	background: url(../img/common_img/border02.png) no-repeat center bottom 30px;
	background-size: auto;
}
#sec01 ul li:not(:first-child) {
	margin-top: -70px;
}
#sec01 ul li figure {
	width: 25%;
}
#sec01 ul li:nth-child(odd) figure {
	margin-left: 4%;
}
#sec01 ul li:nth-child(even) figure {
	margin-right: 4%;
}
#sec01 ul li p {
	text-align: left;
	width: 65%;
}
}

@media print, screen and (min-width:992px) {
#sec01 {
	margin-bottom: -120px;
}
#sec01 ul li:nth-child(odd) {
	background: url(../img/common_img/border01.png) no-repeat center bottom 70px;
	background-size: auto;
}
#sec01 ul li:nth-child(even) {
	background: url(../img/common_img/border02.png) no-repeat center bottom 70px;
	background-size: auto;
}
#sec01 ul li:not(:first-child) {
	margin-top: -130px;
}
#sec01 ul li:nth-child(odd) figure {
	margin-left: 2%;
}
#sec01 ul li:nth-child(even) figure {
	margin-right: 2%;
}
#sec01 ul li p {
	text-align: left;
	width: 55%;
}
#sec01 ul li p span {
	font-size: 32px;
	margin-top: 12px;
	margin-right: 8px;
}
#sec01 ul li p br {
	display: inherit;
}
#sec01 .container > p:last-of-type {
	font-size: 29px;
	background-size: auto;
	padding-bottom: 140px;
}
}
/*-------------------------------------------section02*/
#sec02 {
	background: url(../img/index_img/sec02_bg_top.png) no-repeat top center;
	background-size: 800px auto;
	padding-top: 70px;
}
#sec02_bg_middle {
	background: linear-gradient(rgba(221,231,130,1.00) 90%, rgba(221,231,130,0));
}
#sec02_bg_bottom {
	background: url(../img/index_img/sec02_bg_bottom.png) no-repeat bottom center;
	background-size: 800px auto;
	padding-bottom: 40px;
}
#sec02 ul li {
	padding: 150px 0 0;
	margin: 90px auto 0;
	border-radius: 400px 400px 10px 10px;
	position: relative;
	max-width: 500px;
}
#sec02 ul li a {
	text-decoration: none;
	display: block;
	padding-bottom: 46px;
}
#sec02 ul li a:hover {
	opacity: 0.7;
}
#sec02 ul li:first-child {
	background: #9fd72c url(../img/common_img/arrow02.png) no-repeat right 15px bottom 12px;
	margin-bottom: 20px;
}
#sec02 ul li:last-child {
	background: #6eb9ed url(../img/common_img/arrow02.png) no-repeat right 15px bottom 12px;
}
#sec02 ul li h3 {
	position: absolute;
	width: 240px;
	top: -75px;
	left: 0;
	right: 0;
	margin: auto;
}
#sec02 ul li p.bntitle {
	margin: 0 20px 10px;
}
#sec02 ul li p.bntitle span {
	line-height: 160%;
	font-size: 20px;
	font-weight: bold;
	color: #4d0701;
	background: url(../img/common_img/tx_higlight.png) repeat-x bottom;
	background-size: auto 14px;
}
#sec02 ul li div.bntxbox {
	background: #fff;
	padding: 20px;
	margin: 0 10px;
	text-align: left;
}
#sec02 ul li div.bntxbox p {
	font-size: 14px;
	line-height: 180%;
	color: #000;
}
#sec02 ul li a:hover div.bntxbox p {
	color: #000;
}

@media print, screen and (min-width:768px) {
#sec02 {
	background-size: 1200px auto;
	padding-top: 100px;
}
#sec02_bg_bottom {
	background-size: 1200px auto;
	padding-bottom: 80px;
}
#sec02 ul li p.bntitle span {
	font-size: 24px;
}
}

@media print, screen and (min-width:992px) {
#sec02 {
	background-size: auto;
	padding-top: 180px;
}
#sec02_bg_bottom {
	background-size: auto;
	padding-bottom: 120px;
}
#sec02 ul {
	display: flex;
}
#sec02 ul li {
	width: 48.5%;
	max-width: 100%;
	margin: 50px 0 0;
}
#sec02 ul li:first-child {
	margin-bottom: 0;
	margin-right: 3%;
}
#sec02 ul li p.bntitle {
	margin: 0 20px 20px;
}
#sec02 ul li div.bntxbox {
	height: 270px;
}
}

@media print, screen and (min-width:1200px) {
#sec02 ul li {
	padding: 200px 0 0;
}
#sec02 ul li h3 {
	width: auto;
}
#sec02 ul li p.bntitle span {
	font-size: 28px;
}
#sec02 ul li div.bntxbox {
	padding: 40px
}
}
/*-------------------------------------------section03*/
#sec03 {
	padding-top: 40px;
}
#sec03 .newsarea {
	border: 3px solid #0fc373;
	border-radius: 10px;
}
#sec03 .newsarea .titlearea {
	background: #0fc373;
	padding: 10px;
	border-radius: 6px 6px 0 0;
	position: relative;
}
#sec03 .newsarea .titlearea h3 {
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 5px;
}
#sec03 .newsarea .titlearea .newsbtn a {
	display: inline-block;
	background: #fff;
	padding: 5px 20px;
	border-radius: 100px;
	color: #530801;
	font-weight: bold;
	text-decoration: none;
}
#sec03 .newsarea .titlearea .newsbtn a:hover {
	opacity: 0.7;
}
#sec03 .newsarea .titlearea .newsbtn a i {
	color: #fca932;
	margin-left: 8px;
}
#sec03 .newsarea .titlearea figure {
	position: absolute;
	right: 20px;
	bottom: 0;
}
#news01 {
	width: 100%;
	overflow: hidden;
	padding: 15px;
}
#news01 dl:not(:last-of-type) {
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px dotted #530801;
}
#news01 dl dt {
	margin-bottom: 5px;
	padding: 3px 8px;
	color: #fff;
	font-size: 12px;
	background: #0fc373;
	display: inline-block;
}
#news01 dl dd div.newstitle {
	overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	font-size: 16px;
	font-weight: bold;
}
#news01 dl dd div.newstitle a {
	color: #530801;
}
#news01 dl dd div.newstitle a:hover {
	opacity: 0.7;
}

@media print, screen and (min-width:768px) {
#sec03 {
	padding-top: 60px;
}
#sec03 .newsarea {
	text-align: left;
}
#news01 {
	padding: 25px 40px;
}
#news01 dl:not(:last-of-type) {
	padding-bottom: 20px;
	margin-bottom: 20px;
}
#sec03 .newsarea .titlearea {
	padding: 15px 40px;
}
#sec03 .newsarea .titlearea h3 {
	font-size: 21px;
	margin-bottom: 0;
}
#sec03 .newsarea .titlearea .newsbtn {
	position: absolute;
	right: 100px;
	top: 12px;
}
#sec03 .newsarea .titlearea .newsbtn a {
	font-size: 18px;
}
#news01 dl dt {
	float: left;
}
#news01 dl dd {
	padding: 0 0 0 100px;
}
}
