@charset "utf=8";

.news-area {
    display: flex;
    justify-content: space-between;
}

.news-main {
    width: 75%;
}

.news-side {
    width: 20%;
}

/* ==========================================
記事一覧
========================================== */

.news-list {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 6rem;
}

.news-item {
    overflow: hidden;
}

.news-link {
    display: block;
    position: relative;
}

.news-date {
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.44em;
}

.news-img {
    aspect-ratio: 35/23;
    transition: 0.3s;
}

.news-img > img {
    object-fit: cover;
    width: 100%;
    height: 100% !important;
    margin: 1rem 0 0;
}

.news-category {
    max-width: 100%;
    width: fit-content;
    font-size: 1.5rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.4em;
    background: var(--secondary);
    padding: 0.2rem 2.5rem 0.3rem;
    word-break: keep-all;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    margin: 2rem 0 0;
}

.news-title {
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.44em;
    margin: 1.5rem 0 0;
}

.news-link:hover .news-img {
    filter: brightness(0.5);
}

/* ==========================================
詳細
========================================== */

.news-detail {
    background: var(--white);
    border-top: solid 0.5rem var(--primary);
    box-shadow: 0 0.2rem 0.5rem rgb(0 0 0 / 16%);
    padding: 6rem 5rem;
}

.news-detail-title {
    border-bottom: solid 0.1rem var(--secondary);
    padding: 0 0 1.5rem;
    margin: 2rem 0 0;
}

.news-detail-category {
    margin: 1.5rem 0 0 auto;
}

.news-detail-img {
    text-align: center;
    margin: 3rem 0 0;
}

.news-detail-content {
    margin: 3rem 0 0;
}

.news-detail-btn-box {
    text-align: center;
    margin: 6rem auto 0;
}

.news-detail-btn > a {
    flex-direction: row-reverse;
}

.news-detail-btn > a:after {
    transform: scale(-1,1);
    margin: 0 3rem 0 0;
}

.news-detail-btn > a:hover:after {
    transform: scale(-1, 1) translateX(6px);
}

/* ==========================================
ページャー
========================================== */

.wp-pagenavi {
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 1rem;
	margin: 6rem 0 0;
}

.pagination-page {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 4rem;
	height: 4rem;
	border-style: solid;
	border-width: 1px;
	border-radius: 50%;
	text-align: center;
}

.pagination-current-color {
	background: var(--primary);
	color: var(--white);
}

.pagination-page-color {
	border-color: var(--primary);
	color: var(--primary);
}

.pagination-page-color:hover {
	background: var(--primary);
	color: var(--white);
}

.pagination-first, .pagination-last {
	font-size: 1.2rem;
	border-style: solid;
	border-width: 1px;
	padding: 0.4rem 0.5rem 0.2rem;
}

.pagination-first-color, .pagination-last-color {
	border-color: var(--primary);
	color: var(--primary);
}

.pagination-first-color:hover, .pagination-last-color:hover {
	background: var(--primary);
	color: var(--white);
}

/* ==========================================
カテゴリ
========================================== */

.category-box:not(:first-child) {
    margin: 6rem 0 0;
}

.category-title {
    font-size: 2rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    line-height: 1.4em;
    border-bottom: solid 1px var(--primary);
    padding: 0 0 1.5rem;
}

.category-list {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    margin: 1.5rem 0 0;
}

.category-list > li > a {
    display: block;
    padding: 0 0 0 1.5rem;
    position: relative;
}

.category-list > li > a:before {
    content: "";
    display: block;
    max-width: 1rem;
    width: 100%;
    height: 0.1rem;
    background: var(--primary);
    transition: all .3s;
    position: absolute;
    top: 50%;
    left: 0;
    opacity: 0;
    transition: 0.3s;
}

.category-list > li > a:hover:before {
    opacity: 1;
}

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 768px) {

	.news-area {
	    display: block;
	}
	
	.news-main {
	    width: 100%;
	}
	
	.news-side {
	    width: 100%;
	    margin: 6rem 0 0;
	}

	/* ==========================================
	記事一覧
	========================================== */
	
	.news-list {
	    grid-template-columns: repeat(2, 1fr);
	    gap: 4rem;
	}

	/* ==========================================
	詳細
	========================================== */

	.news-detail {
	    border-top: solid 0.3rem var(--primary);
	    box-shadow: 0 0.2rem 0.5rem rgb(0 0 0 / 16%);
	    padding: 4rem 3rem;
	}
	
	.news-detail-title {
	    padding: 0 0 1rem;
	    margin: 1.5rem 0 0;
	}
	
	.news-detail-category {
	    font-size: 1.3rem;
	    padding: 0.2rem 1.5rem 0.3rem;
	    margin: 1rem 0 0 auto;
	}
	
	.news-detail-img {
	    margin: 2rem 0 0;
	}
	
	.news-detail-content {
	    margin: 2rem 0 0;
	}
	
	.news-detail-btn-box {
	    margin: 4rem auto 0;
	}

	/* ==========================================
	ページャー
	========================================== */
	
	.wp-pagenavi {
	    margin: 4rem 0 0;
	}

	/* ==========================================
	カテゴリ
	========================================== */
	
	.category-box:not(:first-child) {
	    margin: 4rem 0 0;
	}
	
	.category-title {
	    font-size: 1.8rem;
	}

}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (width <= 576px) {

	/* ==========================================
	記事一覧
	========================================== */
	
	.news-list {
	    grid-template-columns: repeat(1, 1fr);
	}

	/* ==========================================
	詳細
	========================================== */

	.news-detail {
	    padding: 3rem 1.5rem;
	}

}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */
/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */