@charset "utf-8";
/* CSS Document */

/*==============================*/
/* newsNavi */
/*==============================*/

/*==============================*/
/* newsBox */
/*==============================*/
div.newsBox{
	display: flex; display: -webkit-flex;
	flex-wrap: wrap; -webkit-flex-wrap: wrap;
	gap: 36px 36px;
}
div.newsBox article{
	position: relative;
	width: calc( calc( 100% - calc( 36px * 2 ) ) / 3 );
	padding-bottom: 80px;
	border: 1px solid #DEDEDE;
}
div.newsBox article::before{
	position: absolute; bottom: 0; right: 0;
	content: "";
	width: 41px;
	height: 40px;
	background: #E2E8E7;
}
div.newsBox article::after{
	position: absolute; bottom: 14px; right: 17px;
	content: "";
	width: 12px;
	height: 12px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

div.newsBox article:hover::before{ background: #1DA25A;}

	/* ======= TB =======*/
	@media screen and (min-width: 768px) and (max-width: 1024px) {
		div.newsBox{ gap: 32px 28px;}
		div.newsBox article{ width: calc( calc( 100% - calc( 28px * 1 ) ) / 2 );}
	}
	/* ======= SP =======*/
	@media (max-width: 767px) {
		div.newsBox{
			flex-direction: column; -webkit-flex-direction: column;
			gap: 20px 0;
		}
		div.newsBox article{
			width: 100%;
			padding-bottom: 64px;
		}
	}


/*-- 
------------------------- */
div.newsBox article div{ padding: 24px 24px 0px 24px;}

/*-- 画像 -- */
div.newsBox article div figure{ margin-bottom: 24px;}

/*-- タイトル -- */
div.newsBox article div h3{
	margin-bottom: 10px;
	color: #000;
	font-size: 21px;
	font-weight: 600;
	line-height: 1.414em;
}

/*-- 文章 -- */
div.newsBox article div p{
	font-size: 15px;
	line-height: 1.618em;
}
	/* ======= TB =======*/
	@media screen and (min-width: 768px) and (max-width: 1024px) {
	}
	/* ======= SP =======*/
	@media (max-width: 767px) {
		div.newsBox article div{ padding: 10px 20px 0px 20px;}

		/*-- 画像 -- */
		div.newsBox article div figure{
			width: calc(100% + 20px);
			margin-bottom: 16px;
			margin-left: -10px;
		}
		div.newsBox article div figure img{
			object-fit: cover;
			height: 160px;
		}

		/*-- タイトル -- */
		div.newsBox article div h3{
			margin-bottom: 8px;
			font-size: 20px;
		}

		/*-- 文章 -- */
		div.newsBox article div p{
			font-size: 14px;
			line-height: 1.53em;
		}
	}


/*-- カテゴリ
------------------------- */
div.newsBox article p.category{
	padding: 2px 0 4px 0;
	width: 100%;
	max-width: 104px;
	background: #354341;
	color: #fff;
	font-size: 15px;
	text-align: center;
}
	/* ======= TB =======*/
	@media screen and (min-width: 768px) and (max-width: 1024px) {
	}
	/* ======= SP =======*/
	@media (max-width: 767px) {
		div.newsBox article p.category{
			position: absolute; top: 10px; left: 10px;
			padding: 2px 0 3px 0;
			max-width: 96px;
			font-size: 14px;
			border-right: 1px solid #fff;
			border-bottom: 1px solid #fff;
		}
	}


/*-- date
------------------------- */
div.newsBox article p.date{
	position: absolute; bottom: 8px; left: 24px;
	color: #8D8D8D;
	font-family: 'Roboto', sans-serif;
	letter-spacing: -0.03em;
}
	/* ======= TB =======*/
	@media screen and (min-width: 768px) and (max-width: 1024px) {
	}
	/* ======= SP =======*/
	@media (max-width: 767px) {
		div.newsBox article p.date{
			position: absolute; bottom: 8px; left: 20px;
		}
	}


/*-- link
------------------------- */
div.newsBox article a{
	position: absolute; top: 0; right: 0;
	display: block;
	width: 100%;
	height: 100%;
}

	/* ======= TB =======*/
	@media screen and (min-width: 768px) and (max-width: 1024px) {
	}
	/* ======= SP =======*/
	@media (max-width: 767px) {
	}



