/**/
header:after{
	content:"";
	display: block;
	height:30px;
	background:url("../images/header_ruler.png") repeat-x left #ea6285;
	animation: ruler 1s;
}
@keyframes ruler{
	0%{width:0;}
	100%{width:100%;}
}
.mainImg{
    position: relative;
    font-family: "Kaisei Opti", serif;
}
.mainCatch{
    position: absolute;
    bottom:30px;
    right:130px;
}
.mainCatch p{
    font-family: "ab-walk", sans-serif;
    color:#ea6285;
    font-size:3rem;
    background: rgba(255,255,255,0.8);
    padding:10px 30px;
    margin-bottom:10px;
    letter-spacing:0.1em;
    position: relative;
}
.catch01{
    left:-10px;
    transform: rotateZ(-3deg);
}
.catch02{
    left:24px;
}
.catch03{
    left:-5px;
    transform: rotateZ(-2deg);
}

.boxArea h2,.secAnnounce h2{
	margin-bottom:30px;
	font-family: "Noto Serif JP", serif;
	font-size:3.3rem;
	font-weight: 400;
	letter-spacing: 0.25;
	line-height:2.1;
	color:#ea6285;	
}


/*ゆとり*/
.secYutori{
    background: #ea6285;
    padding:53px 0 42px;
}
.boxYutori{
	box-sizing: border-box;
    width:72%;
		max-width: 900px;
    margin:auto;
    background:#fff;
    border-radius:15px;
    padding:45px 100px 50px;
		animation: appear 2s;
}
@keyframes appear{
	0%{opacity: 0;
				transform: translate(0, 80px);}
	100%{oppacity:1;
				transform: translate(0, 0);}
}
.boxYutori>div{
	margin-bottom:50px;
}
.secYutori h2{
    margin-bottom:30px;
    font-family: "Kaisei Opti", serif;
    color:#ea6285;
    text-align: center;
}
.secYutori h2 span{
    color:#4b8fca;
}
.secYutori p{
    font-family: "Noto Serif JP", serif;
		text-align: justify;
    letter-spacing: 0.25;
    line-height:2.1;
    color:#ea6285;
}
/*対応可能エリア*/
.secArea{
	display: flex;
	justify-content: space-between;
	width:calc(100% - 100px);
	max-width:1000px;
	margin: 100px auto;
}
.boxArea{
	max-width: 490px;
	margin-right:20px;
}
.boxCatch{
	max-width: 490px;
	box-sizing:border-box;
	margin-top:50px;
	padding-left:75px;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.25em;
	line-height:2.1;
	color:#ea6285;
}
.boxCatch p{
	margin-bottom:20px;
	font-size:2.0rem;
}
.boxCatch li{
	line-height: 2.5em;
}

/*お知らせ*/
.secAnnounce{
	width:calc(100% - 100px);
	max-width:1000px;
	margin:auto;
}
#newsList{
	display: flex;
	justify-content:flex-start;
}
#newsList li{
	display:flex;
	flex-direction: column;
	width:calc(25% - 20px);
  margin-left:15px;
  margin-right:15px;
}
#newsList li img{
	object-fit: cover;
	width:100%;
	height:14.9vw;
	max-height: 164px;
	border:1px solid #ccc;
}
#newsList li .clearfix{
	order: 1;
}
#newsList li .up_ymd{
	order:2;
	color:#ea6285;
}
#newsList li .title{
	order:3;
}
#newsList li .catName,#newsList li .newMark,#newsList li .comment{
	display: none;
}
@media screen and (max-width:768px){
	.mainImg img{
		object-fit: cover;
		height:450px;
		object-position: -450px 0;
	}
.mainCatch{
		width:31rem;
}
.mainCatch p{
    font-size:2.4rem;
    background: rgba(255,255,255,0.8);
    padding:10px 20px;
    margin-bottom:10px;
    letter-spacing:0.1em;
    position: relative;
}
.catch01{
    left:60px;
    transform: rotateZ(-3deg);
}
.catch02{
    left:100px;
    padding:10px 10px;
}
.catch03{
    left:55px;
    transform: rotateZ(-2deg);
}
	.boxYutori{
			width:90%;
			padding:15px 30px 50px;
	}
/*対応可能エリア*/
	.secArea{
		flex-direction:column-reverse;
		justify-content: space-between;
		width:90%;
		margin: 50px auto;
	}
	.secArea h2{
		text-align: center;
	}
	.boxArea{
		max-width:none;;
		margin-right:0;
	}
	.boxCatch{
		margin-top:0;
		margin-bottom:30px;
		padding-left:0;
		letter-spacing: 0.15em;
	}
	.boxCatch>p{
		text-align: center;
	}
	.boxCatch ul{
		margin-left:20px;
	}
	.secAnnounce{
		width: 90%;
	}
	.secAnnounce h2{
		text-align: center;
	}
	#newsList{
		flex-direction: column;
	}
	#newsList li{
		width:100%;
		height:200px;
		margin-bottom:20px;
	}
	#newsList li img{
		height:30vw;
		max-height:none;
	}
}