@charset "UTF-8";
/*
Theme Name: index
Version: 1.0
Description: free
Author: reiki
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
/* 共通部分
-----------------------------------------*/
html{
	font-size: 16px;
	background-color: #f9f9f9;
}
body{
	font-family: "Yu Gothic Medium", "游ゴシック Medium",YuGothic,"游ゴシック体","ヒラギノ角ゴ Pro W3",sans-serif;
	line-height: 1.7;
	overflow-wrap: break-word;
	color: #23220e;
	max-width: 100vw;
	margin: 0 auto;
}
a{
	text-decoration: none;
	color: #23220e;
}
a:hover {
	opacity: 0.65;
	transition: 0.2s;
}
img{
	max-width: 100%;
	height: auto;
}
li {
	list-style: none;
}
.header {
	height: 400px;
}
.header .widget img.image {
  width: 100%;
  height: 400px!important;
  object-fit: cover;
}

.hd-nav {
	box-shadow: 0 1px 5px 0 rgba(0, 0, 0, .2);
}
.hd-nav, .footer {
	padding: 10px 0;
	background-color: #fff;
}
.hd-nav-wrap {
	display: flex;
	justify-content: space-between;
	max-width: 960px;
	margin: 0 auto;
}
#menu-pc-nav {
	display: flex;
}
#menu-pc-nav li {
	margin-left: 20px;
}
#menu-pc-nav li a {
	font-size: 14px;
	font-weight: bold;
	color: #bbb;
}
#menu-pc-nav li a:hover {
	color: #111;
	opacity: 1;
}


#menu-pc-nav li ul.sub-menu li {
    height: 0;
    overflow: hidden;
}
#menu-pc-nav li:hover ul.sub-menu li {
    height: auto; /*サブメニューの高さ*/
    overflow: visible;
}


.wrap {
	max-width: 960px;
	margin: 40px auto 80px;
}
.flex {
	display: flex;
	justify-content: space-around;
}
main {
	max-width: 720px;
	width: 100%;
	overflow-wrap: break-word;
	word-break: break-word;
}
main h2 {
	font-size: 24px;
	padding: 0px 10px;
	border-left: solid 8px;
	margin-bottom: 20px;
}
main h3 {
	font-size: 21px;
	padding: 0px 10px;
	border-left: solid 5px;
	margin-bottom: 20px;
}
main h4 {
	font-size: 18px;
	margin: 40px 0 0;
}
p {
	color: #3a3a3a;
	margin: 40px 0;
}
p.cat {
	margin: 0;
}
pre {
	white-space: pre-wrap;
	word-wrap: break-word;
}
.alignnone img {
	max-width: 760px;
	width: 100%;
	box-sizing: border-box;
}
h2.page-title,
h1.post-title {
	font-size: 1.5rem;
}
.prev-next {
	display: flex;
	justify-content: space-between;
	margin-top: 20px;
}
#sidebar {
	max-width: 220px;
	width: 100%;
	margin-left: 30px;
}
.footer {
	text-align: center;
	border-top: solid 1px rgba(0,0,0,0.1);
}
#sidebar .widget {
	margin-bottom: 20px;
}

.sp-nav {
	display: none;
}
.post-wrap {
	padding: 0 0 40px;
	border-bottom: solid 1px #999;
	margin-bottom: 40px;
}
main.top-posts {
	max-width: 100%;
	display: flex;
	flex-wrap: wrap;
    justify-content: space-around;
}
.post-wrap.top {
	width: calc(960px * 0.3);
	background: #fff;
	padding: 10px;
	border-bottom: none;
	border-radius: 5px;
	box-shadow: 2px 2px 10px rgba(80,80,80,0.3);
}
.post-wrap.top .post-title {
	font-size: 18px;
}
.thumbnail a img {
	width: 100%;
    height: 200px;
    object-fit: cover;
}
.sticky-tag {
	padding: 5px;
	background: #e13134;
	color: #fff;
	font-weight: bold;
}
label.screen-reader-text {
	display: none;
}
select{
-webkit-appearance:none;
width: 100%;
height: 40px;
color: #000;
background-color: #fff;
line-height: 2;
padding: 0px  0px  0px  10px;
margin: 0 0 10px;
border: solid 1px #ccc;
}

.page-numbers {
	padding: 10px;
	border: solid 1px #888;
	margin: 5px;
}
.current {
	color: #fff;
	background: #333;
}

.widget ul li {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	margin: 10px;
}
h3.widget-title {
	text-align: center;
	background: #333;
	color: #fff;
	font-size: 16px;
}
.widget ul li a {
	font-size: 14px;
}
/* SNSシェアボタン */
.sns {
    margin: 50px 0;
}

.sns-list {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.sns-item {
    margin: 0 5px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.sns-item i {
    font-size: 40px;
    line-height: 1;
}

.sns-item:hover {
    
}

.sns-item.twitter a {
    color: #1DA1F2;
}

.sns-item.facebook a {
    color: #3C5A99;
}

.sns-item.line a {
    color: #00B900;
}

nav.pagination {
	text-align: center;
}


@media screen and (max-width: 960px){
	.hd-nav-wrap, .wrap, main {
		max-width: calc(100vw - 40px);
	}
	.post-wrap.top {
		width: calc((100vw - 40px) * 0.43);
	}
	.flex {
		flex-direction: column;
	}
	.prev-next {
		flex-direction: row;
	}
	#sidebar {
		margin: 20px 0 40px;
	}
	#menu-pc-nav {
		display: none;
	}
	.sp-nav {
		display: block;
	}


}

@media screen and (max-width: 415px){
	.post-wrap.top {
		width: calc(100vw - 40px);
	}
}

/* ハンバーガーメニュー */

summary.sp-summary {
	position: relative;
	display: block; /* 矢印を消す */
	cursor: pointer;
	line-height: 1;
	margin-left: auto;
	width: 21px;
}
summary.sp-summary::-webkit-details-marker {
	display: none; /* 矢印を消す */
}
/* 疑似要素でアイコンを表示 */
summary.sp-summary::after {
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	font-size: 24px;
	content: '\f0c9';
}
#menu-sp-nav {
	width: 100vw;
	position: absolute;
	left: 0;
	margin-top: 13px;
	background-color: #fff;
	border-bottom: solid 1px rgba(0,0,0,.2);
	box-shadow: 0 5px 5px 0 rgba(0, 0, 0, .2);
}
#menu-sp-nav li {
	padding: 10px 20px;
	border-top: solid 1px rgba(0,0,0,.2);
}

/* オープン時 */
details.sp-nav[open] summary.sp-summary::after {
	font-family: "Font Awesome 5 Free";
	font-weight: bold;
	font-size: 24px;
	content: '\f00d';
}

.wp-block-code code {
	font-family: 'Source Sans Pro', sans-serif;
	letter-spacing: 1.2px;
}