@charset "utf-8";
/* CSS Document */
h2{
	font-size: 2rem;
	letter-spacing: 0.2em;
	line-height: 120%;
}
 h3{
	font-size: 1.6rem;
	letter-spacing: 0.2em;
	color: #16902d;
}
#index-main {
	width: 100%;
	height: 500px;
	background-image:url(../img/index/key_visual_1920.jpg);
/*	background-color:rgba(0,0,0,0.5);*/
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	box-shadow: 0px 3px 3px 0px rgba(0,0,0,0.2) inset;
	position: relative;
}
#index-main::before{
	/* 透過した黒を重ねる */
	background-color: rgba(0,0,0,0.3);
	/* どの範囲に重ねるかを指定 */
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: ' ';
}
.box{
  position: absolute;
  width: 100%;
  text-align: center;
}

.title {
	width:100%;
	max-width: 100%;
/*	float: right;*/
	text-align: center;
	margin: 0 auto;
	padding:60px 255px 0 255px;
  color: #fff;
  font-size: 3.0em;
	font-family: 'Noto Serif', serif;
	line-height: 1.7;
}
.title2 {
	width:100%;
	max-width: 100%;
/*	float: right;*/
	text-align: center;
	margin: 0 auto;
	padding:20px 255px 0 255px;
  color: #fff;
  font-size: 3.5em;
	font-family: 'Noto Serif', serif;
}
.title3 {
	width:100%;
	max-width: 100%;
/*	float: right;*/
	text-align: center;
	margin: 0 auto;
	padding:20px 255px 0 255px;
  color: #fff;
  font-size: 3.5em;
	font-family: 'Noto Serif', serif;
}
.title4 {
	width:100%;
	max-width: 100%;
/*	float: right;*/
	text-align: center;
	margin: 0 auto;
	padding:20px 255px 0 255px;
  color: #fff;
  font-size: 3.5em;
	font-family: 'Noto Serif', serif;
}
.title5 {
	width:100%;
	max-width: 100%;
/*	float: right;*/
	text-align: center;
	margin: 0 auto;
	padding:20px 255px 0 255px;
  color: #fff;
  font-size: 3.5em;
	font-family: 'Noto Serif', serif;
}

.index-main p{
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
	padding: 10px 0 0;
}
#about-pf {
	width:100%;
	text-align: center;
	background-color: #d7f7dd;
	margin: 0 auto;
	padding: 100px 0 100px;
}
#about-pf .container {
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
}

#about-pf .service-cont {
	width: 100%;
	max-width: 1120px;
}

#about-pf .service {
	display: inline-block;
	float: left;
	width: 49%;
	height: auto;
	margin-right: 1%;
	padding:10px;
}

#about-pf .service a{
	padding:30px 10px;
}

#about-pf .service-title {
	display: block;
	font-size: 2rem;
	font-weight: bold;
	font-family: 'Noto Serif', serif;
	color: #fff;
	letter-spacing: 0.1em;
	border: 1px solid #d7f7dd;
	background-color: #16902d;
	border-radius: 10px;
	padding:10px;
}
#about-pf .service-text {
	display: block;
	height: auto;
	font-size: 1.1em;
	line-height: 150%;
	text-align: left;
	margin-bottom: 20px;
	background-color: #fff;
	border-radius: 0 0 10px 10px/ 0 0 10px 10px;
	padding:10px;
}

#about-pf .service-title:link { display: block; color:#fff; text-decoration: none}
#about-pf .service-title:visited {color:#fff; text-decoration: none}
#about-pf .service-title:active { text-decoration: none}
#about-pf .service-title:hover {  color:#fff; opacity: 0.8; text-decoration:none}

#container .container {
	max-width: 1120px;
	margin: 0 auto;
	margin: 0 auto;
}

#news-cont {
	height: auto;
	text-align: left;
	margin: 40px auto 80px;
	padding:30px 20px;
}
#news-cont h3 {
	font-family: 'Noto Serif', serif;
	font-weight: bold;
	font-size: 2rem;
	padding-left:10px;
	margin: 20px 0 10px;
	border-left: 5px solid #16902d;
}

#news-cont ul {
   margin:0;
   padding:0;
}

#news-cont li {
	text-align: left;
	font-size: 1.6rem;
	text-indent: -3em;
	padding:15px 0 0 7em;
	border-bottom:1px dashed #16902d;
}

#news-cont .date {
	display:inline-block;
	width:7em;
	color: #16902d;
}

#news-cont li a {
	display: inline-block;
	text-decoration:none;
	padding: 20px 0 5px 0;
}

#news-cont li a:hover {
   color:#16902d;
}
.sp_br {
	display: none;
}
@media screen and (min-width: 0px) and (max-width: 1781px) {
.title {
	margin: 0 auto;
	padding:70px 200px 0 200px;
  font-size: 3.5em;
}
}
@media screen and (min-width: 0px) and (max-width: 1671px) {
.title {
	margin: 0 auto;
	padding:70px 150px 0 150px;
	font-size: 3.5em;
}
}
@media screen and (min-width: 0px) and (max-width: 1571px) {
.title {
	margin: 0 auto;
	padding:50px 100px 0 100px;
	font-size: 3.0em;
}
}
@media screen and (min-width: 0px) and (max-width: 1471px) {
.title {
	margin: 0 auto;
	padding:85px 100px 0 100px;
	font-size: 3.0em;
}
}
@media screen and (min-width: 0px) and (max-width: 1325px) {
.title {
	margin: 0 auto;
	padding: 8% 10% 0;
	font-size: 3.5rem;
}
}
@media screen and (min-width: 0px) and (max-width: 1289px) {
/*.title {
	margin: 0 auto;
	padding:85px 100px 0 100px;
	font-size: 3.0em;
}*/
}
@media screen and (min-width: 0px) and (max-width: 1172px) {
.title {
	margin: 0 auto;
	padding: 10% 10% 0;
	font-size: 3.0rem;
}
}

@media screen and (min-width: 0px) and (max-width: 1165px) {
/*.title {
	margin: 0 auto;
	padding:130px 100px 0 100px;
	font-size: 2.5em;
}*/
}
@media screen and (min-width: 0px) and (max-width: 1135px) {
#about-pf .service {
	float: none;
	margin: 0;
}
}

@media screen and (min-width: 0px) and (max-width: 1120px) {
#about-pf .service-cont {
	width: 100%;
	text-align: center;
}
.about-title {
	margin: 10px auto;
	color: #fff;
	font-size: 20px;
	letter-spacing: 0em;
	line-height: 20px;
}
}
@media screen and (min-width: 0px) and (max-width: 1004px) {
.title {
	margin: 0 auto;
	padding: 10% 100px 0 100px;
	font-size: 3.0rem;
}
}
@media screen and (min-width: 0px) and (max-width: 983px) {
#index-main {
	height: 260px;
	background-size:cover;
	background-position: center;
}
.title {
	margin: 0 auto;
	padding:25px 100px 0 100px;
	font-size: 2.0rem;
}
#about-pf {
	padding: 30px 0;
}

#about-pf .service {
	display: block;
	width: 100%;
	margin:0 auto;
	padding: 2px 10px;
}

#about-pf .service-title {
	width:100%;
}
#about-pf .service-text {
	width:96%;
	margin-bottom: 10px;
}
#news-cont {
	width:100%;
	height: auto;
	border: none;
	padding: 40px 20px;
}

#news-cont li {
	text-align: left;
	padding:15px 0 0 0;
	text-indent: 2rem;
	border-bottom:1px dashed #16902d;
}

#news-cont .date {
    display:block;
    width:100%;
	margin-bottom: 8px;
}
}
@media screen and (min-width: 0px) and (max-width: 926px) {
.title {
	margin: 0 auto;
	padding: 6% 50px 0 50px;
	font-size: 2.0rem;
}
}
/*@media screen and (min-width: 0px) and (max-width: 826px) {
.title {
	margin: 0 auto;
	padding:25px 15px 0 15px;
	font-size: 2.0em;
}
}*/
@media screen and (min-width: 0px) and (max-width: 768px) {
#about-pf {
	width:100%;
	max-width: 100%;
	padding: 50px 0;
}
}
@media screen and (min-width: 0px) and (max-width: 756px) {
.title {
	margin: 0 auto;
	padding: 5% 15px 0 15px;
}
}
@media screen and (min-width: 0px) and (max-width: 740px) {
#info-cont {
	width: 100%;
}
#info-cont li .date {
	width:90%;
	text-align: left;
	margin:5px auto;
}
#info-cont li .article {
	width:90%;
	margin:5px auto;
}
}
@media screen and (min-width: 0px) and (max-width: 611px) {
.title {
	margin: 0 auto;
	padding: 5% 10px 0 10px;
	font-size: 2.0rem;
}
.sp_br {
	display: block;
}
}

@media screen and (min-width: 0px) and (max-width: 500px) {
#about-pf {
	padding: 30px 0;
}
#about-pf .service-title {
	font-size: 1.6rem;
}
#news-cont {
	margin: 0 auto 50px;
}
}
@media screen and (min-width: 0px) and (max-width: 470px) {
.title {
	margin: 0 auto;
	padding: 6% 5px 0 5px;
}
/*.sp_br {
	display: block;
}*/
}
@media screen and (min-width: 0px) and (max-width: 396px) {
.title {
	margin: 0 auto;
	padding: 10% 2px 0 2px;
	font-size: 1.8rem;
}
}
@media screen and (min-width: 0px) and (max-width: 393px) {
#about-pf .service-title {
	font-size: 1.4rem;
}
}
/*@media screen and (min-width: 0px) and (max-width: 373px) {
.title {
	margin: 0 auto;
	padding:70px 2px 0 2px;
	font-size: 0.8em;
}
}*/
@media screen and (min-width: 0px) and (max-width: 349px) {
#about-pf .service-title {
	font-size: 1.2rem;
}
}
@media screen and (min-width: 0px) and (max-width: 325px) {
.title {
	margin: 0 auto;
	padding: 15% 0 0 0;
	font-size: 1.6rem;
}
}