@charset "utf-8";

#news {
	background: linear-gradient(#fff, #f0f0f0);
}

/*----------------------------------------------------------------------- ▼ .news --*/


#news .news {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}

@media all {
	.news a {
		display: block;
		border-radius: var(--border-radius-light);
		overflow: hidden;
	}

	.news .summary {
		display: flex;
		justify-content: space-between;
		align-items: flex-end;
	}

	.news .date {
		font-family: Helvetica-R;
		font-size: 18px;
		letter-spacing: 1px;
		color: #aaa;
	}

	.news .category {
		padding: 2px 7.5px 0;
		font-size: 15px;
		color: #fff;
		border-radius: var(--border-radius);
		background: #26a;
	}

	.news .category_trouble {
		background: #c00;
	}

	.news .title {
		padding-top: ;
	}

	@media (1024px <= width) {
		.news a {
			width: calc((100% - 30px) / 3);
			box-shadow: 0 0 3px #eee;
		}

		.news a:nth-child(n + 2):not(:nth-child(3n + 1)) {
			margin-left: 15px;	
		}

		.news a > div:nth-child(2) {
			padding: 0px 20px 15px;
			background: #fff;
		}

		.news .thumbnail {
			aspect-ratio: 4 / 2;
			border-radius: var(--border-radius-light) var(--border-radius-light) 0 0;
		}

		.news .summary {
			padding: 15px 0 5px;
		}

		.news .title {
			padding: ;
		}
	}

	@media (width <= 1023px) {	
		.news a {
			width: 100%;
			padding: 15px 0 0;
			border-radius: 0;
			background: none;
			box-shadow: none;
		}

		.news a:nth-child(n + 2) {
			margin-top: 15px;
			border-top: 1px dashed #ccc;
		}

		.news .thumbnail {
			display: none;
		}

		.news .summary {
			justify-content: flex-start;
			padding-bottom: 2px;
		}

		.news .date {
			width: ;
			margin-right: 10px;
		}

		.news .category {
			background: none;
			color: var(--color-theme);
		}
	}
}

/*----------------------------------------------------------------------- ▼ #news-detail --*/

#article-detail {

	/*------------------------------------------------------------------- ▼ .news_detail --*/

	.news_detail {
		display: flex;
		flex-wrap: wrap;
		padding: var(--margin);
		border: 1px solid #000;
		border-radius: var(--border-radius);
	}

	#article-title {
		padding-bottom: 20px;
		border-bottom: 1px dashed #000;
		font-family: YakuHan-L, Helvetica-M;
		
		font-size: 60px;
		line-height: 1em;
	}

	.news_detail .summary {
		display: flex;
	}

	.news_detail .date,
	.news_detail .category {
		padding-top: 15px;
		padding-bottom: 0px;
		line-height: 16px;
	}

	.news_detail .date {
		padding-right: 20px;
		border-right: 1px dashed #000;
		font-size: 18px;
	}

	.news_detail .category {
		padding-left: 20px;
		font-size: 16px;
	}
	
	#article-body {
		margin-top: 40px;
		
		
		p {
			font-size: 24px;
			line-height: 1.75em;
		}
	}



	@media (1025px <= width) {
		.news_detail .title {
			font-size: 45px;
		}
	}

	@media (width <= 1024px) {
		.news_detail .title {
			font-size: 35px;
		}
	}

	@media (width <= 768px) {
		.page-navi li:last-child {
			display: none;
		}
	}

	@media (width <= 767px) {
		.news_detail .title {
			font-size: 28px;
		}
	}

	@media (width <= 400px) {
		.news_detail .title {
			font-size: 24px;
		}

		.news_detail .date {
			font-size: 16px;
		}

		.news_detail .category {
			font-size: 14px;
		}
	}
	
}

/*----------------------------------------------------------------------- ▼ .gallary --*/

.gallary {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
}

.gallary a {
	position: relative;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}

.gallary a::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	opacity: 0;
}

@media (768px <= width) {
	.gallary {
		justify-content: center;
		margin-top: 2rem;
		padding: 15px;
		background: rgba(235, 235, 255, 0.5);
		border-radius: var(--border-radius);
		box-shadow: 3px 3px 3px #eee;		
	}

	.gallary a {
		width: calc((100% - 5px) / 6);
		margin-right: 1px;
		aspect-ratio: 16 / 9;
	}

	.gallary a:nth-of-type(6n) {
		margin-right: 0;
	}
}

@media (width <= 767px) {
	.gallary {
		margin-top: 2rem;
	}
	
	.gallary.smart_center {
		justify-content: center;
	}
	
	.gallary a {
		width: calc((100% - 2px) / 3);
		margin-right: 1px;
		aspect-ratio: 1 / 1;
	}

	.gallary a:nth-of-type(3n) {
		margin-right: 0;
	}

	.gallary a:nth-of-type(n + 4) {
		margin-top: 1px;
	}
}

@media (hover: hover) and (pointer: fine) {
	.gallary a:hover::before {
		opacity: 0.25;
	}
}







