/*=================================
Blog
=================================*/
/*      base
-----------------------*/
@media screen and (min-width:860px){
	#blog_contents {
		margin: 40px auto;
		width:100%;
		max-width: 1280px;
		overflow: hidden;
	}
	#blog_contents:after {
		visibility: hidden;
		display: block;
		font-size: 0;
		content: "";
		clear: both;
		height: 0;
	}
	#main {
		z-index: -1;
		float: left;
		width: 74%;
		max-width: 880px;
		overflow: hidden;
	}
}
/*      common
-----------------------*/
p.cat a {
	display: inline-block;
	text-decoration: none;
	color: #000;
	font-size: 12px;
	padding: 4px 10px;
	border: 1px solid #000;
	border-radius: 20px;
	margin-right: 6px;
	transition: .4s;
}
p.cat a:hover {
	background-color: #000;
	color: #fff;
}

/* 　　　　top
-------------------------------*/
.top_post_box,
.arc_post_box{
	box-sizing: border-box;
	margin: 20px 10px;
}
.top_info_box {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
.top_date {
	margin-right: 10px;
}
.top_ttl {
	box-sizing: border-box;
	padding: 20px 10px;
}
.top_info_box .cat {
	font-size: 12px;
}
p.top_post_ttl {
	font-size: 22px;
	font-weight: 800;
	margin-bottom: 16px;
	color: #544740;
}
p.top_post_ttl a{
	color: #544740;
	text-decoration: none;
}
.top_blog_list .top_info_box {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}
ul.top_info_box {
	width: 90%;
	margin: auto;
}
li.top_info_li {
	padding: 10px;
	margin: 14px;
	border-bottom: 1px dotted #333;
	display: block;
}
.top_post_box .top_thumb {
	width: 100%;
	background-size: cover;
	background-position: center;
	height: auto;
	padding-top: 68%;
	overflow: hidden;
	transition-duration: 0.3s;
}
.top_thumb_inner {
	overflow: hidden;
}
a:hover .top_thumb  {
	transform: scale(1.1,1.1); /*画像の拡大*/
}
@media screen and (min-width:680px){
	#top_list,
	#top_list_voice{
		display: flex;
		flex-wrap: wrap;
	}
	.top_post_box {
		width: 30%;
		margin: 14px;
		overflow: hidden;
	}
	#top_list .top_post_box {
		width: 45%;
	}
	ul.top_blog_list {
		width: 80%;
		margin: 0 auto 40px;
	}
	li.top_info_li {
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
}
/*      side
-----------------------*/
.side_ttl {
	font-size: 24px;
	border-bottom: 3px solid #ec6516;
	margin: 16px;
	font-weight: 800;
}
.side_post_list {
	box-sizing: border-box;
	margin: 10px 10px 20px;
}
.side_post_list li{
	display: flex;
	margin-bottom: 6px;
	padding: 4px 0px 14px;
	border-bottom: 1px dashed #666;
}
.side_post_list a{
	color: inherit;
	text-decoration: none;
}
.side_post p {
	margin-left: 1em;
	font-size: 14px;
}
.side_post .top_thumb {
	width: 120px;
	height: 75px;
	background-size: contain;
	background-repeat:no-repeat;
	background-position: center;
}
.side_post .top_thumb_inner {
	overflow: visible;
}
.side_post .top_thumb_inner a:hover .top_thumb{
	transform: scale(1);
	opacity: 0.9;
}
@media screen and (min-width:860px){
#sidebar {
		float: right;
		width:25%;
		max-width: 300px;

	}
	.single_side {
		margin-top: 40px;
	}
}
/* 　　　　single
-------------------------------*/
.title_box {
	margin: 20px 0;
	padding: 10px;
	border: 2px solid #666;
	border-left: none;
	border-right: none;
}
.post_ttl,
.date{
	font-size: 20px;
	margin-bottom: 0.3em;
}

	.post_ttl {
		margin-left: 10px;
	}
.f_1 {
	flex: 1;
}
@media screen and (min-width:680px){
	.title_box {
		padding: 20px;
	}
	.post_ttl,
	.date{
		font-size: 24px;
		margin-left: 20px;
	}
}
/*
 * 目次設定 
 */
div#ez-toc-container {
	margin: auto;
	box-sizing: border-box;
	padding: 1em 3em;
}
div#ez-toc-container p.ez-toc-title {
	text-align: center;
	margin-bottom: 0.5em;
}
/* 　　　　pager
-------------------------------*/
.pager .pagination {
  text-align: center;
}

.pager .pagination li {
  display: inline;
  margin: 0 2px;
  padding: 0;
  display: inline-block;
  width: 50px;
  height: 50px;
  text-align: center;
  position: relative;
  border-radius: 10px;
}


.pager .pagination li a{
  vertical-align: middle;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display:table;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
}

.pager .pagination li a span{
  display:table-cell;
  vertical-align:middle;
}

.pager .pagination li a:hover,
.pager .pagination li a.active{
  color: #000;
  background: #f5f5f5;
}

@media only screen and (max-width: 767px){
  .pager .pagination li{
    display: none;
  }

  .pager .pagination li.pre,
  .pager .pagination li.next{
    display: inline-block;
    width: 40%;
    height: 50px;
    text-align: center;
  }

  .pager .pagination li.pre a,
  .pager .pagination li.next a{
    width: 100%;
    text-align: center;
  }

  .pager .pagination li.pre span::after{
    content: "　前の10件へ";
  }

  .pager .pagination li.next span::before{
    content: "次の10件へ　";
  }

}