
/* --- exp --- */

.blog {
	position:relative;
}

/* --- blog --- */

.blog_list {
	width:65.5%;
	max-width:784px;
	padding-right:10px;
}

.category_list {
	width:32.5%;
	margin-left:30px;
	min-width:398px;
}

.blog_link {
	width:48%;
	max-width:360px;
	display:block;
	position:relative;
	overflow: visible;
	margin-bottom:70px;
}

.blog_link figure {
	overflow:hidden;
	width:100%;
	height:17vw;
	max-height:216px;
	margin-bottom:10px;
	box-shadow: 3px 3px 7px 0px rgba(0,0,0,0.35);
}

.blog_link figure{
	width: 100%;
	height:21vw;
	display: block;
}
.blog_link figure img {
	transition:transform .4s;
}

.blog_link:hover figure img {
	transform:scale(1.1);
}

.blog_list .blog_title {
	margin:0;
	line-height:1.875em;
}

.blog_link .js-text-overflow {
	/* white-space: normal;
	text-overflow: clip; */
	width: 100%;
	overflow: hidden;
	height:calc( 1.875em * 2);
	letter-spacing: 0;
}

.blog_link .js-text-overflow.twoheight {
	height:calc(1.875em * 2);
}
.blog_link .js-text-overflow.oneheight {
	height:calc(1.875em * 1);
}

.blog_link:hover h2 {
	color:#20649e;
}

.wp-pagenavi {
	margin-top:50px;
}

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

	.blog_list .blog_link {
		width:100%;
		max-width: 100%;
	}
	.blog_list .blog_link figure {
		height:27vw;
		max-height:255px;
	}

	.wp-pagenavi a, .current {
		width:40px;
		height:40px;
		margin:0 6px;
	}
}

/* --- category list --- */

.category_list h2 {
	padding: 0 0 0 0.8em;
    line-height: 1.5em;
    font-size: 1.6rem;
    position: relative;
    margin-bottom: 1em;
}

.category_list h2::before {
    content: "";
    display: block;
    width: 6px;
    height: 100%;
    background: #fcaeae;
    position: absolute;
    left: 0;
    top: 0;
}

.category_list h2::after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background: #9f9f9f;
    position: absolute;
    left: 0;
    bottom: -0.4em;
}

.category_wrap {
	margin-bottom:20px;
}

.category_wrap ul li a {
	display: block;
	line-height:1.5em;
	position:relative;
	padding-left:0.7em;
}

.category_wrap ul li a::before {
	content:"-";
	display: block;
	width:0.7em;
	height:1em;
	position:absolute;
	left:0;
	top:0;
}

.category_wrap ul > li {
	margin-bottom:0.5em;
	padding-left:1em;
}


.category_wrap ul li a:hover {
	opacity:1;
	color:#20649e;
}

.post_wrap h2 {
	margin-bottom:2em;
}

.post_wrap .blog_link {
	width:100%;
	max-width:100%;
	margin-bottom:2em;
	padding:0 0 0 1em;
	display: flex;
	display:-webkit-flex;
}

.post_wrap .blog_link figure {
	width:160px;
	height:118px;
	border:1px solid #9f9f9f;
	box-shadow: none;
	margin-bottom:0;
}
.post_wrap .post_txt {
	width:210px;
	padding:0 10px;
}
.post_wrap .blog_link:not(:last-of-type) {
	padding-bottom:2em;
	border-bottom:1px solid #DEDEDE;
}

.post_wrap .blog_link:last-of-type {
	margin-bottom:0;
}


.post_wrap .blog_link .blog_title {
	font-size:1.6rem;
	margin-top:0;
	line-height:1.65em;
}

.post_wrap .blog_link .blog_title br {
	display: none;
}

.post_wrap .blog_link .time {
	font-size:1.6rem;
	color:#333;
	margin-bottom:0.2em;
}

.post_wrap .blog_link .blog_cate {
	font-size:1.5rem;
}



/* --- blog single --- */

.blog_detail {
	width:65.5%;
	max-width:774px;
}


.blog_detail .blog_title{
	font-size:2.5rem;
	line-height:1.75em;
	text-align:left;
	padding:0.5em  1em;
	border-top:2px solid #9f9f9f;
	border-bottom:2px solid #9f9f9f;
	margin-bottom:0.4em;
}

.blog_detail .blog_cate {
	margin:0 0 0 1em;
}

.editor {
	margin:30px auto 30px;
}

.editor h2,
.editor h3,
.editor h4,
.editor p,
.editor ul,
.editor img {
	margin-bottom:24px;
}

.editor p,
.editor h2,
.editor h3,
.editor h4,
.editor li {
	line-height:1.75em;
	font-size:1.8rem;
}
/*
.editor h2,
.editor h3,
.editor h4,
.editor ul li {
}

.editor h2,
.editor h3,
.editor h4 {
	position:relative;
}

.editor h2 {
	font-size:2.5rem;
	line-height:2em;
	background:#F1D7D7;
	padding:0.5em 0.5em;
	margin:9px 0 39px;
}

.editor h2,
.editor h3 {
	letter-spacing: 0.1rem;
}

.editor h2::before,
.editor h2::after {
	content:"";
	display: block;
	width:100%;
	height:2px;
	background:#C22424;
	position:absolute;
	left:0;
}

.editor h2::before {
	top:-9px;
}
.editor h2::after {
	bottom:-9px;
}

.editor h3 {
	font-size:2rem;
	padding-bottom:0.5em;
	border-bottom:2px solid #C22424;
}

.editor h4 {
	font-size:1.8rem;
	color:#C22424;
}

.editor ul li {
	position:relative;
	padding-left:2.3em;
}

.editor ul li:not(:last-of-type){
	margin-bottom:0.2em;
}

.editor ul li::before {
	content:"";
	display:block;
	width:25px;
	height:31px;
	background:url(../images/common/icon_tomato.svg) no-repeat center / contain;
	position:absolute;
	left:0;
	top:0;
}
*/


.editor h2 {
	padding: 0 0 0 0.8em;
    line-height: 1.5em;
    font-size: 2rem;
    position: relative;
    margin-bottom: 1em;
}

.editor h2::before {
    content: "";
    display: block;
    width: 6px;
    height: 100%;
    background: #fcaeae;
    position: absolute;
    left: 0;
    top: 0;
}

.editor h2::after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background: #9f9f9f;
    position: absolute;
    left: 0;
    bottom: -0.4em;
}


.editor a {
	color:#20649e;
	text-decoration:underline;
	font-size:1.8rem;
	line-height:1.875em;
}

.page_link .wp-pagenavi {
	margin-top:100px;
}

.page_link .wp-pagenavi a {
	max-width:244px;
	height:56px;
	line-height:56px;
}

.page_link .wp-pagenavi a span {
	font-size:1.6rem;
}

.page_link .wp-pagenavi a.all_list {
	max-width:144px;
}

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


	.category_list {
		min-width:320px;
	}

	.page_link .wp-pagenavi {
		flex-wrap:wrap;
		-webkit-flex-wrap:wrap;
		padding:0 10px 10px;
	}

	.page_link .wp-pagenavi a {
		width:47%;
		max-width:100%;
		margin:0;
	}

	.page_link .wp-pagenavi a.all_list {
		margin:40px auto;
		max-width:100%;
	}
}


/* ---------  ver.SmartPhone ------------ */

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

.blog {
	padding-top:0;
	margin-top:0;
	margin-bottom:0;
}

.blog .inner {
	overflow:visible;
}

.blog::before {
	display: none;
}

.blog_list,
.category_list {
	width:100%;
}

.blog_list {
	max-width:100%;
	margin-bottom:12.5vw;
	padding-right:0;
	overflow:visible;
}

.blog_list .blog_link {
	margin-bottom:6vw;
	padding:4vw 0 0 0;
}

.blog_link .cate {
	left:2.5vw;
}

.blog_link .txt_wrap {
	padding:0;
}

.blog_list .blog_link figure {
	height:60vw;
	max-height:100%;
	margin-bottom:3vw;
}

.blog_link h2 {
	margin:0.8em 0 0 0;
	font-size:3.125vw;
}

.wp-pagenavi {
	margin-top:6.25vw;
}

.wp-pagenavi a, .current {
	width:10vw;
	height:10vw;
	margin:0 1.5vw;
}

.category_list {
	margin-left:0;
	min-width:auto;
	margin-top:0;
}

.category_list h2 {
	font-size:4vw;
}


.category_wrap ul li a {
	font-size:3.125vw;
}

.category_wrap ul > li {
	padding-left:0;
}
.category_wrap,
.post_wrap,
.date_wrap {
	margin-bottom:6.25vw;
}

.post_wrap .post_txt {
	width:calc(100% - 45vw);
	padding:0;
}

.post_wrap .blog_link .blog_title {
	font-size:3.125vw;
}
.post_wrap .blog_link .blog_cate,
.post_wrap .blog_link .time {
	font-size:2.5vw;
}

.post_wrap .blog_link .time {
	margin-bottom:0.5em;
}

.post_wrap .blog_link {
	padding:0;
}

.post_wrap .blog_link figure {
	width:40vw;
	max-width:40vw;
	height:23.8vw;
	max-height:100%;
}
/* --- blog single --- */

.blog_detail {
	width:100%;
	max-width:100%;
	margin-bottom:12.5vw;
}

.blog_detail .blog_cate {
	margin-bottom:1.5vw;
}


.blog_detail .blog_title {
	font-size:4.5vw;
	margin-bottom:5vw;
}


.blog_detail .block img{
	height: auto;
}


.editor {
	margin:5vw auto 10vw;
}

.editor h2,
.editor h3,
.editor h4,
.editor p,
.editor ul,
.editor img {
	margin-bottom:5vw;
}

.editor p, .editor h3, .editor h4, .editor li {
	font-size:3.125vw;
}
/*
.editor h2 {
	font-size:4vw;
	margin:1.75vw 0 9.25vw;
}

.editor ul li {
	font-size:3.5vw;
}

.editor h2::before {
	top:-1.75vw;
}
.editor h2::after {
	bottom:-1.75vw;
}
.editor h3 {
	font-size:4.5vw;
}

.editor h4 {
	font-size:4vw;
}

.editor ul li::before {
	width:6.25vw;
	height:7.75vw;
}
*/

.editor h2 {
	font-size:4vw;
}

.editor a {
	font-size:3.125vw;
}

.page_link .wp-pagenavi {
	padding:0 2.5vw 2.5vw;
	margin-top:0vw;
}

.page_link .wp-pagenavi a {
	height:12.5vw;
	line-height:12.5vw;
}

.page_link .wp-pagenavi a span {
	font-size:3.1254vw;
}

.page_link .wp-pagenavi a.all_list {
	margin:10vw auto 0;
}

.page_eng.inner {
	padding:4vw 0 0 0;
}

}
