@charset "UTF-8";

/* -----------------------------------------------------------
	news
----------------------------------------------------------- */
.news_wrap .cont_inner {
	max-width: 1000px;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {

}
@media screen and (max-width: 767px) {

}

/* -----------------------------------------------------------
	news select_category
----------------------------------------------------------- */
.news_wrap .select_category {
	display: flex;
	align-items: center;
	gap: 40px;
	margin-bottom: 100px;
}
.news_wrap .select_category .ttl {
	font-size: 20px;
	line-height: 1;
	white-space: nowrap;
	color: #237ec0;
}
.news_wrap .select_category .list {
	display: flex;
	gap: 20px;
}
.news_wrap .select_category .list li a {
	font-size: 18px;
	color: #333333;
	display: flex;
	justify-content: center;
    align-items: center;
	height: 35px;
	min-width: 120px;
	padding: 0 8px;
	border: 1px solid #626262;
}
.news_wrap .select_category .list li a:hover {
	opacity: .7;
}
.news_wrap .select_category .list li.active a {
	background: #e5e5e5;
}

@media screen and (min-width: 768px) and (max-width: 1200px) {
.news_wrap .select_category {
	gap: 20px;
	margin-bottom: 50px;
}
.news_wrap .select_category .ttl {
	font-size: 18px;
}
.news_wrap .select_category .list li a {
	font-size: 16px;
	height: 30px;
	min-width: 100px;
}
}
@media screen and (max-width: 767px) {
.news_wrap .select_category {
	flex-wrap: wrap;
	gap: 10px;
	    margin-bottom: 40px;
}
.news_wrap .select_category .ttl {
	font-size: 16px;
	width: 100%;
}
.news_wrap .select_category .list {
	gap: 10px;
}
.news_wrap .select_category .list li a {
	font-size: 14px;
	height: 30px;
	min-width: auto;
	padding: 0 8px;
}
}

/* -----------------------------------------------------------
	news post_list
----------------------------------------------------------- */
.post_list {
	border-top: 1px solid #aaa;
	margin-bottom: 110px;
}
.post_list .item {
	border-bottom: 1px solid #aaa;
	padding: 1.2em 0;
}
.post_list .item .item_inner {
	display: flex;
	align-items: flex-start;
}
.post_list .item .item_inner .category {
	display: flex;
	justify-content: center;
    align-items: center;
	height: 30px;
	width: 100px;
	background: #e5e5e5;
	margin-right: 20px;
}
.post_list .item .item_inner .date {
	letter-spacing: 0.02em;
	margin-right: 30px;
	width: 80px;
}
.post_list .item .item_inner .ttl {
	font-size: 17px;
	line-height: 1.6;
	margin-top: 0.1em;
	width: calc(100% - 230px);
}
.post_list .item .item_inner a {
	color: #333;
}
.post_list .item .item_inner a:hover {
	opacity: .7;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
.post_list .item .item_inner .ttl {
	font-size: 15px;
}
}
@media screen and (max-width: 767px) {
.post_list {
	margin-bottom: 50px;
}
.post_list .item .item_inner {
	flex-wrap: wrap;
}
.post_list .item {
	padding: 1em 0;
}
.post_list .item .item_inner .category {
	font-size: 13px;
	height: 20px;
	width: 80px;
}
.post_list .item .item_inner .date {
	
}
.post_list .item .item_inner .ttl {
	width: 100%;
	font-size: 14px;
	margin-top: 5px;
}
}



/* -----------------------------------------------------------
	pager
----------------------------------------------------------- */
/*
Default style for WP-PageNavi plugin

http://wordpress.org/extend/plugins/wp-pagenavi/
*/

.wp-pagenavi {
	clear: both;
}

/* -----------------------------------------------------------
	pager
----------------------------------------------------------- */
.pager {
    margin-bottom: 140px;
}
.pager div.pagination {
	text-align: center;
	margin: 0;
	padding: 0;
}
.pager .pagination .wp-pagenavi {

	display: flex;
	flex-direction: row;
	justify-content: center;
	position: relative;
	
}
.pager .pagination .wp-pagenavi a{
	margin: 0 2px;
	padding: 0;
	width: 35px;
	height: 35px;
	text-align: center;
	display:table;
	color: #092e65;
	text-decoration: none;
	border: 1px solid #092e65;
	line-height: 35px;
}
.pager .pagination .wp-pagenavi span {
	margin: 0 2px;
	padding: 0;
	width: 35px;
	height: 35px;
	vertical-align:middle;
}
.pager .pagination .wp-pagenavi span.current {
	text-align: center;
	display:table;
	color: #fff;
	text-decoration: none;
	border: 1px solid #092e65;
	background: #092e65;
	line-height: 35px;
	transition: all .2s linear;
}
.pager .pagination a:hover,
.pager .pagination a.active {
 	color: #fff;
	background: #092e65;
	transition: all .2s linear;
}

.pager .pagination li.prev {
	position: relative;
	margin-right: 20px;
}
.pager .pagination li.next {
	position: relative;
	margin-left: 20px;
}
.pager .pagination li.next a span {
	position: relative;
}
.pager .pagination li.prev a span::after,
.pager .pagination li.next a span::after {
	display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 14px;
    left: auto;
    width: 12px;
    height: 12px;
    margin-top: -6px;
    border-top: 1px solid #092e65;
    border-right: 1px solid #092e65;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.pager .pagination li.prev a span::after {
	right: auto;
    left: 14px;
	-webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
.pager .pagination li .next.page-numbers,
.pager .pagination li .prev.page-numbers {
	position: relative;
	margin-right: 20px;
}
.pager .pagination li .next.page-numbers::after,
.pager .pagination li .prev.page-numbers::after {
	display: block;
    content: '';
    position: absolute;
    top: 50%;
    right: 14px;
    left: auto;
    width: 12px;
    height: 12px;
    margin-top: -6px;
    border-top: 1px solid #092e65;
    border-right: 1px solid #092e65;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.pager .pagination li .prev.page-numbers::after {
	right: auto;
    left: 14px;
	-webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
.pager .pagination li .next.page-numbers:hover::after,
.pager .pagination li .prev.page-numbers:hover::after {
	border-top: 1px solid #fff;
    border-right: 1px solid #fff;
}
@media only screen and (max-width: 767px){
.pager {
    margin-bottom: 60px;
}
.pager .pagination li,
.pager .pagination li a,
.pager .pagination li .page-numbers.current {
	/*display: none;*/
	width: 30px;
	height: 30px;
	line-height: 30px;
}
.pager .pagination li.prev,
.pager .pagination li.next{
	display: inline-block;
	width: 40%;
	height: 40px;
	text-align: center;
}
.pager .pagination li.prev a,
.pager .pagination li.next a{
	width: 100%;
	text-align: center;
}
.pager .pagination li.prev span::after{
	content: "　前の10件へ";
}
.pager .pagination li.next span::before{
	content: "次の10件へ　";
}
}

.pager .pagination li {
	margin: 0 2px;
	padding: 0;
	display: inline-block;
	width: 35px;
	height: 35px;
	text-align: center;
	position: relative;
	
}
.pager .pagination li a{
	vertical-align: middle;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display:table;
	color: #333;
	text-decoration: none;
	border: 1px solid #cecece;
	line-height: 35px;
}
.pager .pagination li a span {
	display:table-cell;
	vertical-align:middle;
}
.pager .pagination li .page-numbers.current {
	vertical-align: middle;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	display:table;
	color: #333;
	text-decoration: none;
	border: 1px solid #cecece;
	background: #cecece;
	line-height: 35px;
	transition: all .2s linear;
}
.pager .pagination li a:hover,
.pager .pagination li a.active {
 	color: #333;
	background: #cecece;
	transition: all .2s linear;
}
.pager .pagination li a.prev {
	border: none;
	margin-left: -20px;
	white-space: nowrap;
}
.pager .pagination li a.next{
	border: none;
	margin-left: 20px;
}
.pager .pagination li a.prev:hover,
.pager .pagination li a.next:hover{
	background: none;
	opacity: .7;
}
.pager .pagination li a.prev::before{
	content: "前へ　";
}
.pager .pagination li a.next::before{
	content: "次へ　";
}
.pager .pagination li .next.page-numbers::after,
.pager .pagination li .prev.page-numbers::after {
	display: none;
}

/* -----------------------------------------------------------
	post
----------------------------------------------------------- */
.news_wrap .post_head {
	background: #e5e5e5;
	display: flex;
	margin-bottom: 90px;
}
.news_wrap .post_head .thumbnail {
	width: 50%;
}
.news_wrap .post_head .thumbnail img {
	object-fit: cover;
    aspect-ratio: 50 / 35;
}
.news_wrap .post_head .text_box {
	width: 50%;
	padding: 30px 50px;
}
.news_wrap .post_head .text_box .post_info {
	display: flex;
	align-items: center;
	gap: 15px;
	margin-bottom: 25px;
}
.news_wrap .post_head .text_box .post_info .category {
	width: 100px;
	height: 30px;
	padding: 0 8px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #fff;
}
.news_wrap .post_head .text_box .post_info .date {
	letter-spacing: 0;
}
.news_wrap .post_head .text_box .ttl {
	font-size: 28px;
	font-weight: 500;
	line-height: 1.7;
}
.news_wrap .backindex {
	max-width: 260px;
	margin: 0 auto;
}
.news_wrap .backindex a {
	display: block;
	color: #333;
	line-height: 1.1;
	letter-spacing: 0.1em;
	position: relative;
	padding: 0 30px 14px 0;
	border-bottom: 1px solid #333;
}
.news_wrap .backindex a::after {
	display: block;
	content: '';
    position: absolute;
    top: 50%;
    right: 5px;
    left: auto;
    width: 24px;
    height: 5px;
	margin-top: -14px;
	border-bottom: 1px solid #333;
	border-right: 1px solid #333;
	transform: skew(45deg);
	transition: all 0.5s ease;
}
.news_wrap .backindex a:hover {
	opacity: .7;
}
.news_wrap .backindex a:hover::after {
	right: -5px;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
.news_wrap .post_head .text_box {
	padding: 20px 30px;
}
.news_wrap .post_head .text_box .ttl {
	font-size: 22px;
}
.news_wrap .post_head .text_box .ttl br {
	display: none;
}
}
@media screen and (max-width: 767px) {
.news_wrap .post_head {
	flex-wrap: wrap;
	margin-bottom: 40px;
}
.news_wrap .post_head .thumbnail {
	width: 100%;
}
.news_wrap .post_head .text_box {
	width: 100%;
	padding: 15px 15px;
}
.news_wrap .post_head .text_box .post_info {
	margin-bottom: 10px;
}
.news_wrap .post_head .text_box .post_info .category {
	height: 24px;
}
.news_wrap .post_head .text_box .ttl {
	font-size: 16px;
}
.news_wrap .post_head .text_box .ttl br {
	display: none;
}
.news_wrap .backindex a {
	letter-spacing: 0.05em;
}
}

/* -----------------------------------------------------------
	post detail
----------------------------------------------------------- */
.news_wrap .post_detail {
	max-width: 850px;
	margin: 0 auto 90px;
	font-size: 16px;
	letter-spacing: 0.03em;
    line-height: 2.25;
}
.news_wrap .post_detail p {
	margin-bottom: 2em;
}
.news_wrap .post_detail .img_grid {
	display: flex;
	flex-wrap: wrap;
	gap: 50px;
}
.news_wrap .post_detail .img_grid img {
	width: calc((100% - 50px) / 2);
}
.post_detail h2 {
	font-size: 150%;
	font-weight: 500;
}
.post_detail h3 {
	font-size: 135%;
	font-weight: 500;
}
.post_detail h4 {
	font-size: 120%;
}
.post_detail h5 {
	font-size: 110%;
}
.post_detail ul,
.post_detail ol {
	padding-left: 1.5em;
}
.post_detail ul li,
.post_detail ol li {
	list-style-type: inherit;
}
.post_detail hr {
	display: block;
}
.post_detail em {
	font-style: italic;
}
.post_detail blockquote {
	background: #e7e5e3;
	padding: 8px 16px;
}
.post_detail blockquote p {
	margin-bottom: 0;
}
@media screen and (min-width: 768px) and (max-width: 1200px) {
.news_wrap .post_detail {
	line-height: 2;
	font-size: 15px;
}
}
@media screen and (max-width: 767px) {
.news_wrap .post_detail {
	line-height: 2;
	font-size: 14px;
	margin-bottom: 50px;
}
.news_wrap .post_detail .img_grid {
	
	gap: 20px;
}
.news_wrap .post_detail .img_grid img {
	width: 100%;
}
}

