@charset "utf-8";
.blog_all {
		display: flex;
		flex-wrap: wrap;
}
.blog_item {
		width: calc(calc(100% - 72px) * 0.25);
		margin: 0 24px 100px 0;
}
.blog_all .blog_item:nth-child(4n) {
		margin-right: 0;
}
.blog_item a {
		color: #282828;
		text-decoration: none;
		transition: color 0.3s;
}
.blog_thumb {
		margin: 0 0 20px;
		overflow: hidden;
		position: relative;
}
.blog_thumb .blog_thumb_cover {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		pointer-events: none;
		transition: transform 0.3s cubic-bezier(0.16, 1, 0.3, 1);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
}
.blog_thumb img {
		width: 100%;
		height: auto;
}
.blog_caption p.blog_date {
		font-family: "Manrope", sans-serif;
		font-size: 14px;
		font-weight: 500;
		color: #999;
		margin: 0 0 5px;
}
.blog_caption h5 {
		font-size: 22px;
		font-weight: 500;
		margin: 0 0 15px;
		font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
.blog_caption p {
		line-height: 1.8;
		font-size: 14px;
		font-family: YakuHanJP, "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}
@media (hover: hover) {
		.blog_item a:hover .blog_thumb_cover {
				transform: scale(1.05)
		}
		.blog_item a:hover, .blog_item a:hover .blog_caption p.blog_date {
				color: #14b46e;
		}
}
@media(max-width: 1024px) {
		.blog_item {
				width: calc(calc(100% - 40px) / 3);
				margin: 0 20px 100px 0;
		}
		.blog_all .blog_item:nth-child(4n) {
				margin-right: 20px;
		}
		.blog_all .blog_item:nth-child(3n) {
				margin-right: 0;
		}
}
@media(max-width: 767px) {
		.blog_all {
				display: flex;
				justify-content: space-between;
		}
		.blog_item {
				width: calc(50% - 5px);
				margin: 0 0 50px;
		}
		.blog_all .blog_item {
				margin-right: 0 !important;
				margin-left: 0 !important;
		}
		.blog_caption p.blog_date {
				font-size: 10px;
				margin: 0 0 5px
		}
		.blog_caption h5 {
				font-size: 15px;
		}
		.blog_caption p {
				overflow: hidden;
				display: -webkit-box;
				-webkit-box-orient: vertical;
				-webkit-line-clamp: 3;
		}
}