/*
Theme Name:Zinsoku Studio
Author:Zinsoku
Version:2.13

2.4 フッターをHTMLべた書きに変更。
2.5 Matomoのタグをheaderに追加
2.6 記事一覧のスペースを調整（サムネイルが設定されていない場合のスペース、サムネイルとタイトルの周囲のスペース、サムネイルが設定されていない場合は、サムネイル用タグを出力しない）
2.7 記事の最後に関連記事とXのシェアボタンを追加。カテゴリーアーカイブの説明文の余白を調整。
2.8 PHPのバージョンアップによってエラーが出たので、ヘッダーからOGPの設定を削除。
2.8.1 カテゴリーに出ていたエラーを解消
2.8.2 レスポンシブでtableの横幅がはみ出していたので修正
2.9 サイトの横幅を1260pxから1440pxへ変更。アーカイブのページャーを復活させる。
2.10 本文の文字サイズを14pxから16pxに変更。
2.11 本文の文字サイズを17pxに、行間を1.5から1.6に変更
2.12 CTAのツイートボタンを消す
2.13 最新記事を出力するショートコード（カテゴリー分け対応）を設定
2.14 Cursorを使って、functions.phpの無駄なコードを削除（371行→298行）。サイトの幅を1440pxから1140pxに変更。無駄なコードやファイルを削除

 * 1.0 - Reset
 * 2.0 - Repeatable Patterns

 * 4.0 - Header
 * 5.0 - Navigation
 * 6.0 - Content
 *   6.2 - Entry Header
 *   6.3 - Entry Meta
 *   6.4 - Entry Content
 *   6.7 - Post/Image/Paging Navigation
 *   6.8 - Archives
 *   6.10 - 404 Page
 * 7.0 - Sidebar
 *   7.1 - Widgets
 *   7.2 - Content Sidebar Widgets
 * 8.0 - Footer
 * 9.0 - Media Queries
 * 12.0 - 参考文献
 */

/* メインカラー */
:root {
	--main-colour: #3ca2e0;
	--top-bottom-colour: #000;
}

/*Center*/ .site{margin-left:auto;margin-right:auto}
/*Basic Structure*/.site{background-color:#fff;max-width:1140px;position:relative}

/* 1.0 Reset ----------------------------------------------------------------------------- */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}

article,
details,
figcaption,
figure,
footer,
header,
hgroup,
nav,
section {
	display: block;
}

html {
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust:     100%;
}

body,
button,
input,
select,
textarea {
	color: #2b2b2b;
	font-family: Pro W3, sans-serif;
	font-size: 17px;
	font-weight: 400;
	line-height: 1.6;
}

body {
	background: #fff;
}

a {
	color: var(--main-colour);
	text-decoration: none;
}

a:focus {
	outline: thin dotted;
}

a:hover,
a:active {
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	font-weight: 700;
	margin: 36px 0 12px;
}

h1 {
	font-size: 26px;
	line-height: 1.3846153846;
}

h2 {
	font-size: 24px;
	line-height: 1;
}

h3 {
	font-size: 22px;
	line-height: 1.0909090909;
}

h4 {
	font-size: 20px;
	line-height: 1.2;
}

h5 {
	font-size: 18px;
	line-height: 1.3333333333;
}

h6 {
	font-size: 16px;
	line-height: 1.5;
}

address {
	font-style: italic;
	margin-bottom: 24px;
}

abbr[title] {
	border-bottom: 1px dotted #2b2b2b;
	cursor: help;
}

b,
strong {
	font-weight: 700;
}

cite,
dfn,
em,
i {
	font-style: italic;
}

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

p {
	margin-bottom: 20px;
}

code,
kbd,
tt,
var,
samp,
pre {
	font-family: monospace, serif;
	font-size: 15px;
	-webkit-hyphens: none;
	-moz-hyphens:    none;
	-ms-hyphens:     none;
	hyphens:         none;
	line-height: 1.6;
}

pre {
	border: 1px solid rgba(0, 0, 0, 0.1);
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	margin-bottom: 24px;
	max-width: 100%;
	overflow: auto;
	padding: 12px;
	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
}

blockquote,
q {
	-webkit-hyphens: none;
	-moz-hyphens:    none;
	-ms-hyphens:     none;
	hyphens:         none;
	quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
	content: "";
	content: none;
}

blockquote em,
blockquote i,
blockquote cite {
	font-style: normal;
}

blockquote strong,
blockquote b {
	font-weight: 400;
}

blockquote {
	color: #767676;
	font-weight: 500;
	line-height: 1.2631578947;
	margin-bottom: 2px;
}

blockquote cite,
blockquote small {
	color: #2b2b2b;
	font-size: 16px;
	font-weight: 400;
	line-height: 1.5;
}

blockquote {
  background: #eee url(images/quote.gif) no-repeat 10px 10px;
    padding: 15px 15px 1px 15px;
    margin: 0 0 15px 0;
}

small {
	font-size: smaller;
}

big {
	font-size: 125%;
}

sup,
sub {
	font-size: 75%;
	height: 0;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	bottom: 1ex;
}

sub {
	top: .5ex;
}

dl {
	margin-bottom: 24px;
}

dt {
	font-weight: bold;
}

dd {
	margin-bottom: 24px;
}

ul,
ol {
	list-style: none;
	margin: 0 0 24px 20px;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

li > ul,
li > ol {
	margin: 0 0 0 20px;
}

img {
	-ms-interpolation-mode: bicubic;
	border: 0;
	vertical-align: middle;
}

figure {
	margin: 0;
}

fieldset {
	border: 1px solid rgba(0, 0, 0, 0.1);
	margin: 0 0 24px;
	padding: 11px 12px 0;
}

legend {
	white-space: normal;
}

button,
input,
select,
textarea {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	font-size: 100%;
	margin: 0;
	max-width: 100%;
	vertical-align: baseline;
}

button,
input {
	line-height: normal;
}

input,
textarea {
	background-image: -webkit-linear-gradient(hsla(0,0%,100%,0), hsla(0,0%,100%,0)); /* Removing the inner shadow, rounded corners on iOS inputs */
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}

button[disabled],
input[disabled] {
	cursor: default;
}

input[type="checkbox"],
input[type="radio"] {
	padding: 0;
}

input[type="search"] {
	-webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

textarea {
	overflow: auto;
	vertical-align: top;
}

table,
th,
td {
	border: 1px solid rgba(0, 0, 0, 0.1);
}

table {
	border-collapse: separate;
	border-spacing: 0;
	border-width: 1px 0 0 1px;
	margin-bottom: 24px;
	word-break: break-all;
word-wrap: break-all;
	width: 100%;
/* 	 table-layout: fixed; */
}

caption,
th,
td {
	font-weight: normal;
	text-align: left;
}

th {
	border-width: 0 1px 1px 0;
	font-weight: bold;
}

td {
	border-width: 0 1px 1px 0;
}

del {
	color: #767676;
}

hr {
	background-color: rgba(0, 0, 0, 0.1);
	border: 0;
	height: 1px;
	margin-bottom: 23px;
}

::selection {
	background: #3ca2e0;
	color: #fff;
	text-shadow: none;
}

::-moz-selection {
	background: var(--main-colour);
	color: #fff;
	text-shadow: none;
}


/*** 2.0 Repeatable Patterns * ----------------------------------------------------------------------------- */

input,
textarea {
	border: 1px solid rgba(0, 0, 0, 0.1);
	border-radius: 2px;
	color: #2b2b2b;
	padding: 8px 10px 7px;
}

textarea {
	width: 100%;
}

input:focus,
textarea:focus {
	border: 1px solid rgba(0, 0, 0, 0.3);
	outline: 0;
}

button,
.button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	background-color: var(--main-colour);
	border: 0;
	border-radius: 2px;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	padding: 10px 30px 11px;
	text-transform: none;
	vertical-align: bottom;
}

button:hover,
button:focus,
.button:hover,
.button:focus,
input[type="button"]:hover,
input[type="button"]:focus,
input[type="reset"]:hover,
input[type="reset"]:focus,
input[type="submit"]:hover,
input[type="submit"]:focus {
	background-color: #2586c0;
	color: #fff;
}

button:active,
.button:active,
input[type="button"]:active,
input[type="reset"]:active,
input[type="submit"]:active {
	background-color: #55d737;
}

.search-field {
	width: 100%;
}

.search-submit {
	display: none;
}
::-webkit-input-placeholder {
	color: #939393;
}

:-moz-placeholder {
	color: #939393;
}

::-moz-placeholder {
	color: #939393;
	opacity: 1;
}

:-ms-input-placeholder {
	color: #939393;
}

.entry-content img,
.entry-summary img,
#site-header img,
.widget img,
.wp-caption {
	max-width: 100%;
}

.entry-content img,
.entry-summary img,
img[class*="align"],
img[class*="wp-image-"],
img[class*="attachment-"],
#site-header img {
	height: auto;
}

img.size-full,
img.size-large,
.wp-post-image,
.post-thumbnail img {
	height: auto;
	max-width: 100%;
}

embed,
iframe,
object,
video {
	margin-bottom: 24px;
	max-width: 100%;
}

p > embed,
p > iframe,
p > object,
span > embed,
span > iframe,
span > object {
	margin-bottom: 0;
}

.alignleft {
	float: left;
}

.alignright {
	float: right;
}

.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

blockquote.alignleft,
figure.wp-caption.alignleft,
img.alignleft {
	margin: 7px 24px 7px 0;
}

.wp-caption.alignleft {
	margin: 7px 14px 7px 0;
}

blockquote.alignright,
figure.wp-caption.alignright,
img.alignright {
	margin: 7px 0 7px 24px;
}

.wp-caption.alignright {
	margin: 7px 0 7px 14px;
}

blockquote.aligncenter,
img.aligncenter,
.wp-caption.aligncenter {
	margin-top: 7px;
	margin-bottom: 7px;
}

.site-content blockquote.alignleft,
.site-content blockquote.alignright {
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	padding-top: 17px;
	width: 50%;
}

.site-content blockquote.alignleft p,
.site-content blockquote.alignright p {
	margin-bottom: 17px;
}

.wp-caption {
	margin-bottom: 24px;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0;
}

.wp-caption {
	color: #767676;
}

.wp-caption-text {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	font-size: 12px;
	font-style: italic;
	line-height: 1.5;
	margin: 9px 0;
}

div.wp-caption .wp-caption-text {
	padding-right: 10px;
}

div.wp-caption.alignright img[class*="wp-image-"],
div.wp-caption.alignright .wp-caption-text {
	padding-left: 10px;
	padding-right: 0;
}

.wp-smiley {
	border: 0;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	position: absolute;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto;
	color: #21759b;
	display: block;
	font-size: 14px;
	font-weight: bold;
	height: auto;
	line-height: normal;
	padding: 15px 23px 14px;
	position: absolute;
	left: 5px;
	top: 5px;
	text-decoration: none;
	text-transform: none;
	width: auto;
	z-index: 100000; /* Above WP toolbar */
}

.hide {
	display: none;
}

.hentry:before,
.hentry:after,
.search-box:before,
.search-box:after,
[class*="content"]:before,
[class*="content"]:after,
[class*="site"]:before,
[class*="site"]:after {
	content: "";
	display: table;
}

.hentry:after,
.search-box:after,
[class*="content"]:after,
[class*="site"]:after {
	clear: both;
}

.bypostauthor > article .fn:before,
.contributor-posts-link:before,
.menu-toggle:before,
.search-toggle:before,
.slider-direction-nav a:before,
.widget_twentyfourteen_ephemera .widget-title:before {
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font: normal 16px/1 Genericons;
	text-decoration: inherit;
	vertical-align: text-bottom;
}

.site-content span + .entry-date:before,
.full-size-link:before,
.parent-post-link:before,
span + .byline:before,
span + .edit-link:before,
.widget_twentyfourteen_ephemera .entry-title:after {
	content: "\0020\007c\0020";
}

/** * 4.0 Header * ----------------------------------------------------------------------------- */

#wpadminbar {
	min-height: 32px;
}

#site-header {
	position: relative;
	z-index: 4;
}

.site-header {
	background-color: var(--top-bottom-colour);
	max-width: 1920px;
	position: relative;
	width: 100%;
	z-index: 4;
}

.header-main {
    background-color: var(--top-bottom-colour);
	min-height: 48px;
	padding: 0 10px;
}

.site-title {
		color: #fff;
	float: left;
	font-size: 28px;
	font-family: arial;
	font-weight: 600;
	line-height: 48px;
	margin: 0;

	max-width: -webkit-calc(100% - 86px);
	max-width:         calc(100% - 86px);
}
.site-title a,
.site-title a:hover {
	color: #fff;
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.search-toggle {
	background-color: var(--main-colour);
	cursor: pointer;
	float: right;
	height: 48px;
	margin-right: 38px;
	text-align: center;
	width: 48px;
}

.search-toggle:hover,
.search-toggle.active {
	background-color: #2586c0;
}

.search-toggle:before {
	color: #fff;
	content: "\f400";
	font-size: 20px;
	margin-top: 14px;
}

.search-toggle .screen-reader-text {
	left: 5px; 
}

.search-box-wrapper {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	position: absolute;
	top: 48px;
	right: 0;
	width: 100%;
	z-index: 2;
}

.search-box {
	background-color: #2586c0;
	padding: 12px;
}

.search-box .search-field {
	background-color: #fff;
	border: 0;
	float: right;
	font-size: 16px;
	padding: 2px 2px 3px 6px;
	width: 100%;
}


/*** 5.0 Navigation * ----------------------------------------------------------------------------- */

.site-navigation ul {
	list-style: none;
	margin: 0;
}

.site-navigation li {
	border-top: 1px solid rgba(255, 255, 255, 0.2);
}

.site-navigation ul ul {
	margin-left: 20px;
}

.site-navigation a {
	color: #fff;
	display: block;
}

.site-navigation a:hover {
	color: #2586C0;
}

.site-navigation .current_page_item > a,
.site-navigation .current_page_ancestor > a,
.site-navigation .current-menu-item > a,
.site-navigation .current-menu-ancestor > a {
	color: #7dceff;
	font-weight: 900;
}

.primary-navigation {
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	font-size: 14px;
	padding-top: 24px;
}

.primary-navigation.toggled-on {
	padding: 72px 0 36px;
}

.primary-navigation .nav-menu {
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	display: none;
}

.primary-navigation.toggled-on .nav-menu {
	display: block;
}

.primary-navigation a {
	padding: 7px 0;
}

.secondary-navigation {
	border-bottom: 1px solid rgba(255, 255, 255, 0.2);
	font-size: 12px;
	margin: 48px 0;
}

.secondary-navigation a {
	padding: 9px 0;
}

.menu-toggle {
	background-color: #000;
	border-radius: 0;
	cursor: pointer;
	height: 48px;
	margin: 0;
	overflow: hidden;
	padding: 0;
	position: absolute;
	top: 0;
	right: 0;
	text-align: center;
	width: 48px;
}

.menu-toggle:before {
	color: #fff;
	content: "\f419";
	padding: 16px;
}

.menu-toggle:active,
.menu-toggle:focus,
.menu-toggle:hover {
	background-color: #444;
}

.menu-toggle:focus {
	outline: 1px dotted;
}

/** * 6.0 Content * ----------------------------------------------------------------------------- */

.content-area {
	padding-top: 12px;
}

.site-content .entry-header,
.site-content .entry-content,
.site-content .post-thumbnail,
.site-content .post-ad,
.site-content .cta,
.site-content .entry-summary,
.site-content .entry-meta,
.page-content {
	margin: 0 auto ;
	max-width: 728px;
}

.page-content {
	margin-bottom: 48px;
}

.list-layout article {
    margin-top: 0;
    padding-top: 0 !important;
}

.list-layout .list-link {
    display: block;
}

.list-layout .list-link {
    color: #2b2b2b;
}

.list-layout .list-link:hover,
.list-layout .list-link:hover .cat-links span,
.list-layout .list-link:hover .entry-date {
    color: #2586c0 !important;
}

.list-layout .list-link:hover .post-thumbnail {
    opacity: 0.7;
}

.list-layout .list-link .post-desc {
    margin-bottom: 5px;
    font-size: 12px;
    line-height: 1.5;
}

.list-link {
    display: table;
    width: 100%;
}

.list-link .post-thumbnail,
.list-link .entry-header{
    display: table-cell;
    vertical-align: middle;
}

.list-link .post-thumbnail {
    padding: 15px;
    box-sizing: border-box;
    line-height: 0;
}

.list-link .post-thumbnail img {
    width: 100%;
    height: auto;
    margin-bottom: 6px;
    line-height: 0;
}

.list-link .entry-header {
    box-sizing: border-box;
    padding-top: 0 !important;
    line-height: 0;
}

.home .site-content .entry-content {
    padding: 12px 0 0 30px !important;
    max-width: 100% !important;
}

.top-sec a {
    text-decoration: none !important;
}

.top-sec p {
    color: #767676;
}

/** * 6.2 Entry Header * ----------------------------------------------------------------------------- */

.entry-header {
	position: relative;
	z-index: 1;
}

.entry-title {
	font-size: 20px;
	font-weight: 300;
	line-height: 1.0909090909;
	margin-bottom: 2px;
	margin: 0 0 5px 0;
}

.entry-title a {
	color: #2b2b2b;
	font-weight: initial;
}

.entry-title a:hover {
	color: #2586c0;
}

.site-content .entry-header {
	padding: 0 0 0 5px;
}


/** * 6.3 Entry Meta * ----------------------------------------------------------------------------- */

.entry-meta {
	clear: both;
	color: #767676;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.3333333333;
}

.entry-meta a {
	color: #767676;
}

.entry-meta a:hover {
	color: #2586c0;
}

.sticky .entry-date {
	display: none;
}

.byline {
	display: none;
}

.site-content .entry-meta {
	background-color: #fff;
	margin-bottom: 5px;
}

.site-content footer.entry-meta {
	margin: 20px auto 0;
	padding: 0 15px;
}

/** * 6.4 Entry Content * ----------------------------------------------------------------------------- */

.entry-content,
.entry-summary,
.page-content {
	-webkit-hyphens: auto;
	-moz-hyphens:    auto;
	-ms-hyphens:     auto;
	hyphens:         auto;
	word-wrap: break-word;
}

.site-content .entry-content,
.site-content .entry-summary,
.site-content .cta,
.page-content {
	background-color: #fff;
    padding: 12px 10px 0;
}

.site-content .post-thumbnail {
	background-color: #fff;
    padding: 6px 5px 0 5px ;
}

.page .entry-content {
/* 	padding-top: 0; */
}

.entry-content h1:first-child,
.entry-content h2:first-child,
.entry-content h3:first-child,
.entry-content h4:first-child,
.entry-content h5:first-child,
.entry-content h6:first-child,
.entry-summary h1:first-child,
.entry-summary h2:first-child,
.entry-summary h3:first-child,
.entry-summary h4:first-child,
.entry-summary h5:first-child,
.entry-summary h6:first-child,
.page-content h1:first-child,
.page-content h2:first-child,
.page-content h3:first-child,
.page-content h4:first-child,
.page-content h5:first-child,
.page-content h6:first-child {
	margin-top: 0;
}

.entry-content a,
.entry-summary a,
.page-content a {
	text-decoration: none;
}

.entry-content a:hover,
.entry-summary a:hover,
.page-content a:hover,
.entry-content a.button,
.entry-summary a.button,
.page-content a.button {
	text-decoration: underline;
}

.entry-content table {
	font-size: 14px;
	line-height: 1.2857142857;
	margin-bottom: 24px;
}

.entry-content th {
	font-weight: 700;
	padding: 8px;
}

.entry-content td {
	padding: 8px;
}

.entry-content .edit-link {
	clear: both;
	display: block;
	font-size: 12px;
	font-weight: 400;
	line-height: 1.3333333333;
}

.entry-content .edit-link a {
	color: #767676;
}

.entry-content .edit-link a:hover {
	color: #2586c0;
}

.entry-content .more-link {
	white-space: nowrap;
}

.hentry .mejs-container {
	margin: 12px 0 18px;
}

.hentry .mejs-mediaelement,
.hentry .mejs-container .mejs-controls {
	background: #000;
}

.hentry .mejs-controls .mejs-time-rail .mejs-time-loaded,
.hentry .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
	background: #fff;
}

.hentry .mejs-controls .mejs-time-rail .mejs-time-current {
	background: var(--main-colour);
}

.hentry .mejs-controls .mejs-time-rail .mejs-time-total,
.hentry .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total {
	background: rgba(255, 255, 255, .33);
}

.hentry .mejs-container .mejs-controls .mejs-time {
	padding-top: 9px;
}

.hentry .mejs-controls .mejs-time-rail span,
.hentry .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-total,
.hentry .mejs-controls .mejs-horizontal-volume-slider .mejs-horizontal-volume-current {
	border-radius: 0;
}

.hentry .mejs-overlay-loading {
	background: transparent;
}

.hentry .mejs-overlay-button {
	background-color: #fff;
	background-image: none;
	border-radius: 2px;
	box-shadow: 1px 1px 1px rgba(0,0,0,.8);
	color: #000;
	height: 36px;
	margin-left: -24px;
	width: 48px;
}

.hentry .mejs-overlay-button:before {
	-webkit-font-smoothing: antialiased;
	content: '\f452';
	display: inline-block;
	font: normal 32px/1.125 Genericons;
	position: absolute;
	top: 1px;
	left: 10px;
}

.hentry .mejs-controls .mejs-button button:focus {
	outline: none;
}

.hentry .mejs-controls .mejs-button button {
	-webkit-font-smoothing: antialiased;
	background: none;
	color: #fff;
	display: inline-block;
	font: normal 16px/1 Genericons;
}

.hentry .mejs-playpause-button.mejs-play button:before {
	content: '\f452';
}

.hentry .mejs-playpause-button.mejs-pause button:before {
	content: '\f448';
}

.hentry .mejs-volume-button.mejs-mute button:before {
	content: '\f109';
	font-size: 20px;
	position: absolute;
	top: -2px;
	left: 0;
}

.hentry .mejs-volume-button.mejs-unmute button:before {
	content: '\f109';
	left: 0;
	position: absolute;
	top: 0;
}

.hentry .mejs-fullscreen-button button:before {
	content: '\f474';
}

.hentry .mejs-fullscreen-button.mejs-unfullscreen button:before {
	content: '\f406';
}

.hentry .mejs-overlay:hover .mejs-overlay-button {
	background-color: #3ca2e0;
	color: #fff;
}

.hentry .mejs-controls .mejs-button button:hover {
	color: #2586c0;
}

.content-sidebar .wp-playlist-item .wp-playlist-caption {
	color: #000;
}

.page-links {
	clear: both;
	font-size: 12px;
	font-weight: 900;
	line-height: 2;
	margin: 24px 0;
	text-transform: none;
}

.page-links a,
.page-links > span {
	background: #fff;
	border: 1px solid #fff;
	display: inline-block;
	height: 22px;
	margin: 0 1px 2px 0;
	text-align: center;
	width: 22px;
}

.page-links a {
	background: #000;
	border: 1px solid #000;
	color: #fff;
	text-decoration: none;
}

.page-links a:hover {
	background: #2586c0;
	border: 1px solid #2586c0;
	color: #fff;
}

.page-links > .page-links-title {
	height: auto;
	margin: 0;
	padding-right: 7px;
	width: auto;
}


/*** 6.7 Post/Image/Paging Navigation * ---------------------------------------------------------------------- */

.nav-links {
	-webkit-hyphens: auto;
	-moz-hyphens:    auto;
	-ms-hyphens:     auto;
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	hyphens:         auto;
	word-wrap: break-word;
}

.post-navigation,
.image-navigation {
	margin: 24px auto 48px;
	max-width: 728px;
	padding: 0 10px;
}

.post-navigation a,
.image-navigation .previous-image,
.image-navigation .next-image {
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	padding: 11px 0 12px;
	width: 100%;
}

.post-navigation .meta-nav {
	color: #767676;
	display: block;
	font-size: 12px;
	font-weight: 900;
	line-height: 2;
}

.post-navigation a,
.image-navigation a {
	color: #2b2b2b;
	display: block;
	font-size: 14px;
	font-weight: 700;
	line-height: 1.7142857142;
}

.post-navigation a:hover,
.image-navigation a:hover {
	color: #2586c0;
}

.paging-navigation {
	border-top: 5px solid #000;
	margin: 48px 0;
}

.paging-navigation .loop-pagination {
	margin-top: -5px;
	text-align: center;
}

.paging-navigation .page-numbers {
	border-top: 5px solid transparent;
	display: inline-block;
	font-size: 14px;
	font-weight: 900;
	margin-right: 1px;
	padding: 7px 16px;
	text-transform: none;
}

.paging-navigation a {
	color: #2b2b2b;
}

.paging-navigation .page-numbers.current {
	border-top: 5px solid var(--main-colour);
}

.paging-navigation a:hover {
	border-top: 5px solid #2586c0;
	color: #2b2b2b;
}

/*** 6.8 Archives * ----------------------------------------------------------------------------- */

.archive-header,
.page-header {
	margin: 10px;
}

.archive-title,
.page-title {
	font-size: 16px;
	font-weight: 900;
	line-height: 1.5;
	margin: 0;
}

.taxonomy-description,
.author-description {
	color: #767676;
	font-size: 14px;
	line-height: 1.2857142857;
	padding-top: 18px;
}

.taxonomy-description p,
.author-description p {
	margin-bottom: 18px;
}

.taxonomy-description p:last-child,
.author-description p:last-child {
	margin-bottom: 0;
}

.taxonomy-description a,
.author-description a {
	text-decoration: underline;
}

.taxonomy-description a:hover,
.author-description a:hover {
	text-decoration: none;
}

/*** 7.0 Sidebars * ----------------------------------------------------------------------------- */

.content-sidebar {
	border-top: 1px solid rgba(0, 0, 0, 0.1);
	border-bottom: 1px solid rgba(0, 0, 0, 0.1);
	-webkit-box-sizing: border-box;
	-moz-box-sizing:    border-box;
	box-sizing:         border-box;
	color: #767676;
	padding: 48px 10px 0 10px;
}

/*** 7.1 Widgets * ----------------------------------------------------------------------------- */

.widget {
	font-size: 14px;
	-webkit-hyphens: auto;
	-moz-hyphens:    auto;
	-ms-hyphens:     auto;
	hyphens:         auto;
	line-height: 1.2857142857;
	margin-bottom: 48px;
	width: 100%;
	word-wrap: break-word;
}

.widget a {
	color: #fff;
}

.widget a:hover {
	color: #2586c0;
}

.widget h1,
.widget h2,
.widget h3,
.widget h4,
.widget h5,
.widget h6 {
	margin: 24px 0 12px;
}

.widget h1 {
	font-size: 22px;
	line-height: 1.0909090909;
}

.widget h2 {
	font-size: 20px;
	line-height: 1.2;
}

.widget h3 {
	font-size: 18px;
	line-height: 1.3333333333;
}

.widget h4 {
	font-size: 16px;
	line-height: 1.5;
}

.widget h5 {
	font-size: 14px;
	line-height: 1.7142857142;
}

.widget h6 {
	font-size: 12px;
	line-height: 2;
}

.widget address {
	margin-bottom: 18px;
}

.widget abbr[title] {
	border-color: rgba(255, 255, 255, 0.7);
}

.widget mark,
.widget ins {
	color: #000;
}

.widget pre,
.widget fieldset {
	border-color: rgba(255, 255, 255, 0.2);
}

.widget code,
.widget kbd,
.widget tt,
.widget var,
.widget samp,
.widget pre {
	font-size: 12px;
	line-height: 1.5;
}

.widget blockquote {
	color: rgba(255, 255, 255, 0.7);
	font-size: 18px;
	line-height: 1.5;
	margin-bottom: 18px;
}

.widget blockquote cite {
	color: #fff;
	font-size: 14px;
	line-height: 1.2857142857;
}

.widget dl,
.widget dd {
	margin-bottom: 18px;
}

.widget ul,
.widget ol {
	list-style: none;
	margin: 0;
}

.widget li > ol,
.widget li > ul {
	margin-left: 10px;
}

.widget table,
.widget th,
.widget td {
	border-color: rgba(255, 255, 255, 0.2);
}

.widget table {
	margin-bottom: 18px;
}

.widget del {
	color: rgba(255, 255, 255, 0.4);
}

.widget hr {
	background-color: rgba(255, 255, 255, 0.2);
}

.widget p {
	margin-bottom: 18px;
}

.widget-area .widget input,
.widget-area .widget textarea {
	background-color: rgba(255, 255, 255, 0.1);
	border-color: rgba(255, 255, 255, 0.2);
	color: #fff;
	font-size: 16px;
	padding: 1px 2px 2px 4px;
}

.widget-area .widget input:focus,
.widget-area .widget textarea:focus {
	border-color: rgba(255, 255, 255, 0.3);
}

.widget button,
.widget .button,
.widget input[type="button"],
.widget input[type="reset"],
.widget input[type="submit"] {
	background-color: var(--main-colour);
	border: 0;
	font-size: 12px;
	padding: 5px 15px 4px;
}

.widget input[type="button"]:hover,
.widget input[type="button"]:focus,
.widget input[type="reset"]:hover,
.widget input[type="reset"]:focus,
.widget input[type="submit"]:hover,
.widget input[type="submit"]:focus {
	background-color: #2586c0;
}

.widget input[type="button"]:active,
.widget input[type="reset"]:active,
.widget input[type="submit"]:active {
	background-color: #55d737;
}

.widget .wp-caption {
	color: rgba(255, 255, 255, 0.7);
	margin-bottom: 18px;
}

.widget .widget-title {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.7142857142;
	margin: 0 0 24px 0;
}

.widget-title,
.widget-title a {
	color: #fff;
}

.widget-title a:hover {
	color: #2586c0;
}

.widget_archive li,
.widget_categories li,
.widget_links li,
.widget_meta li,
.widget_nav_menu li,
.widget_pages li,
.widget_recent_entries li {
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	padding: 8px 0 9px;
}

.widget_archive li:first-child,
.widget_categories li:first-child,
.widget_links li:first-child,
.widget_meta li:first-child,
.widget_nav_menu li:first-child,
.widget_pages li:first-child,
.widget_recent_entries li:first-child {
	border-top: 0;
}

.widget_categories li ul,
.widget_nav_menu li ul,
.widget_pages li ul {
	border-top: 1px solid rgba(255, 255, 255, 0.2);
	margin-top: 9px;
}

.widget_categories li li:last-child,
.widget_nav_menu li li:last-child,
.widget_pages li li:last-child {
	padding-bottom: 0;
}

.widget_recent_entries .post-date {
	display: block;
}

.widget_text > div > :last-child {
	margin-bottom: 0;
}

/*** 7.2 Content Sidebar Widgets * ----------------------------------------------------------------------------- */

.content-sidebar {
    padding-top: 48px;
}

.content-sidebar .widget a {
	color: var(--main-colour);
}

.content-sidebar .widget a:hover {
	color: #2586c0;
}

.content-sidebar .widget pre {
	border-color: rgba(0, 0, 0, 0.1);
}

.content-sidebar .widget mark,
.content-sidebar .widget ins {
	color: #2b2b2b;
}

.content-sidebar .widget abbr[title] {
	border-color: #2b2b2b;
}

.content-sidebar .widget fieldset {
	border-color: rgba(0, 0, 0, 0.1);
}

.content-sidebar .widget li > ol,
.content-sidebar .widget li > ul {
	margin-left: 18px;
}

.content-sidebar .widget table,
.content-sidebar .widget th,
.content-sidebar .widget td {
	border-color: rgba(0, 0, 0, 0.1);
}

.content-sidebar .widget del {
	color: #767676;
}

.content-sidebar .widget hr {
	background-color: rgba(0, 0, 0, 0.1);
}

.content-sidebar .widget input,
.content-sidebar .widget textarea {
	background-color: #fff;
	border-color: rgba(0, 0, 0, 0.1);
	color: #2b2b2b;
}

.content-sidebar .widget input:focus,
.content-sidebar .widget textarea:focus {
	border-color: rgba(0, 0, 0, 0.3);
}

.content-sidebar .widget input[type="button"],
.content-sidebar .widget input[type="reset"],
.content-sidebar .widget input[type="submit"] {
	background-color: #3ca2e0;
	border: 0;
	color: #fff;
}

.content-sidebar .widget input[type="button"]:hover,
.content-sidebar .widget input[type="button"]:focus,
.content-sidebar .widget input[type="reset"]:hover,
.content-sidebar .widget input[type="reset"]:focus,
.content-sidebar .widget input[type="submit"]:hover,
.content-sidebar .widget input[type="submit"]:focus {
	background-color: #2586c0;
}

.content-sidebar .widget input[type="button"]:active,
.content-sidebar .widget input[type="reset"]:active,
.content-sidebar .widget input[type="submit"]:active {
	background-color: #55d737;
}

.content-sidebar .widget .wp-caption {
	color: #767676;
}

.content-sidebar .widget .widget-title {
	border-top: 5px solid var(--top-bottom-colour);
	color: #2b2b2b;
	font-size: 14px;
	font-weight: 900;
	margin: 0 0 18px;
	padding-top: 7px;
	text-transform: none;
}

.content-sidebar .widget .widget-title a {
	color: #2b2b2b;
}

.content-sidebar .widget .widget-title a:hover {
	color: #2586c0;
}

/* List Style Widgets*/

.content-sidebar .widget_archive li,
.content-sidebar .widget_categories li,
.content-sidebar .widget_links li,
.content-sidebar .widget_meta li,
.content-sidebar .widget_nav_menu li,
.content-sidebar .widget_pages li,
.content-sidebar .widget_recent_entries li,
.content-sidebar .widget_categories li ul,
.content-sidebar .widget_nav_menu li ul,
.content-sidebar .widget_pages li ul {
	border-color: rgba(0, 0, 0, 0.1);
	list-style: none;
}

/* 8.0 Footer ----------------------------------------------------------------------------- */

#supplementary {
	padding: 0 10px;
}

.site-footer,
.site-info,
.site-info a {
	color: rgba(255, 255, 255, 0.7);
}

.site-footer {
	background-color: var(--top-bottom-colour);
	font-size: 12px;
	position: relative;
	z-index: 4;
}

.site-info {
	padding: 15px 10px;
}

.site-info a:hover {
	color: #3ca2e0;
}

/*** 9.0 Media Queries * -----------------------------------------------------------------------------*/

@-ms-viewport {
	width: device-width;
}

@viewport {
	width: device-width;
}

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

    .list-link .post-thumbnail {
        width: 25%;
    }

    .list-link .entry-header {
        width: 55%;
    }

	.list-view .site-content .entry-header {
		background-color: transparent;
	}

	.list-view .content-area {
		padding: 0;
	}

	.list-view .site-content .hentry {
		border-bottom: 1px solid rgba(0, 0, 0, 0.1);
		margin: 0;
		min-height: 60px;
		padding: 12px 0 0;
	}

	.list-view .site-content .cat-links,
	.list-view .site-content .type-post .cta,
	.list-view .site-content .type-post .entry-content,
	.list-view .site-content .type-page .entry-content,
	.list-view .site-content .type-post .entry-summary,
	.list-view .site-content .type-page .entry-summary,
	.list-view .site-content footer.entry-meta {
		display: none;
	}

	.list-view .site-content .entry-title {
		clear: none;
		font-size: 15px;
		font-weight: 900;
		line-height: 1.2;
		margin-bottom: 6px;
		text-transform: none;
		margin-top: 6px;
	}

	.list-view .site-content .entry-meta {
		background-color: transparent;
		clear: none;
		margin: 0;
	}

	.archive-header,
	.page-header {
		border-bottom: 1px solid rgba(0, 0, 0, 0.1);
		margin: 10px auto 0;
		padding: 5px;
	}

	.error404 .page-header {
		border-bottom: 0;
		margin: 0 auto 24px;
		padding: 0 10px;
	}

    .home .site-content .entry-content {
        padding: 12px 10px !important;
    }
    
    .top-sec {
        width: 100%;
    }

    .content-sidebar {
        border-top: none;
        border-bottom: none;
    }

    .site-content .entry-date time:before {
    -webkit-font-smoothing: antialiased;
    display: inline-block;
    font: normal 16px/1 Genericons;
    text-decoration: inherit;
    vertical-align: text-bottom;
}

    .site-content .entry-date time:before,
    .attachment .site-content span.entry-date:before {
        content: "\f303";
        margin-right: 1px;
        position: relative;
        top: 1px;
    }

    .list-link .post-desc,
    .list-link .cat-links {
        display: none;
    }
}
@media screen and (min-width: 501px) {

    .list-link .post-thumbnail {
        width: 50%;
    }

	.entry-title {
		font-size: 20px;
	}

	.full-size-link:before,
	.parent-post-link:before,
	.site-content span + .byline:before,
	.site-content span + .edit-link:before,
	.site-content span + .entry-date:before {
		content: "";
	}

	.attachment span.entry-date:before,
	.entry-content .edit-link a:before,
	.entry-meta .edit-link a:before,
	.site-content .byline a:before,
    .site-content .entry-date time:before,
	.site-content .featured-post:before,
	.site-content .full-size-link a:before,
	.site-content .parent-post-link a:before,
	.site-content .post-format a:before {
		-webkit-font-smoothing: antialiased;
		display: inline-block;
		font: normal 16px/1 Genericons;
		text-decoration: inherit;
		vertical-align: text-bottom;
	}

	.site-content .entry-meta > span {
		margin-right: 10px;
	}

    .site-content .entry-date time:before,
	.attachment .site-content span.entry-date:before {
		content: "\f303";
		margin-right: 1px;
		position: relative;
		top: 1px;
	}

	.site-content .byline a:before {
		content: "\f304";
	}

	.entry-content .edit-link a:before,
	.entry-meta .edit-link a:before {
		content: "\f411";
	}

	.site-content .full-size-link a:before {
		content: "\f402";
		margin-right: 1px;
	}

	.site-content .parent-post-link a:before {
		content: "\f301";
	}

	.list-view .site-content .hentry {
		border-top: 1px solid rgba(0, 0, 0, 0.1);
	}

	.list-view .site-content .hentry:first-of-type {
		border-top: 0;
		padding-top: 0;
	}

	.archive-header,
	.page-header {
		margin: 0 auto 10px;
		padding: 0 10px;
	}

	.error404 .page-header {
		margin-bottom: 24px;
	}

    .home .site-content .entry-content {
        padding: 12px 10px !important;
    }
}

@media screen and (min-width: 594px) {

    .list-link .post-thumbnail {
        width: 30%;
    }

	.entry-title {
		font-size: 20px;
	}
}

@media screen and (min-width: 673px) {

    .top-sec {
        float: left;
        width: 48%;
        margin-right: 2%;
        box-sizing: border-box;
    }

	.header-main {
		padding: 0 30px;
	}

	.search-toggle {
		margin-right: 18px;
	}

	.search-box .search-field {
		width: 50%;
	}

	.site-content .has-post-thumbnail .entry-header {
		margin-top: 0;
	}

	.archive-header,
	.image-navigation,
	.page-header,
	.page-content,
	.post-navigation,
	.site-content .entry-content,
	.site-content .entry-summary,
	.site-content footer.entry-meta,
	.site-content .cta,
	.site-content .entry-header,
	.site-content .post-thumbnail {
		padding-right: 10px;
		padding-left: 10px;
	}

	.singular .site-content .hentry.has-post-post-thumbnail {
		margin-top: 0;
	}

	#secondary,
	#supplementary {
		padding: 0 30px;
	}

	.site-info {
		padding: 15px 30px;
	}

    .home .site-content .entry-content {
        padding: 12px 30px 0 !important;
    }
}

@media screen and (min-width: 783px) {

	.site-title {
		/* Search-toggle width = 48px */
		max-width: -webkit-calc(100% - 48px);
		max-width:         calc(100% - 48px);
	}

	.header-main {
		padding-right: 0;
	}

	.search-toggle {
		margin-right: 0;
	}

	/* Fixed Header */

	.masthead-fixed .site-header {
		position: fixed;
		top: 0;
	}

	.admin-bar.masthead-fixed .site-header {
		top: 32px;
	}

	.masthead-fixed .site-main {
		margin-top: 48px;
	}

	/* Navigation */

	.site-navigation li .current_page_item > a,
	.site-navigation li .current_page_ancestor > a,
	.site-navigation li .current-menu-item > a,
	.site-navigation li .current-menu-ancestor > a {
		color: #fff;
	}

	/* Primary Navigation */

	.primary-navigation {
		float: right;
		font-size: 11px;
		margin: 0 1px 0 -12px;
		padding: 0;
		text-transform: none;
	}

	.primary-navigation .menu-toggle {
		display: none;
		padding: 0;
	}

	.primary-navigation .nav-menu {
		border-bottom: 0;
		display: block;
	}

	.primary-navigation.toggled-on {
		border-bottom: 0;
		margin: 0;
		padding: 0;
	}

	.primary-navigation li {
		border: 0;
		display: inline-block;
		height: 48px;
		line-height: 48px;
		position: relative;
	}

	.primary-navigation a {
		display: inline-block;
		padding: 0 12px;
		white-space: nowrap;
	}

	.primary-navigation ul ul {
		background-color: var(--main-colour);
		float: left;
		margin: 0;
		position: absolute;
		top: 48px;
		left: -999em;
		z-index: 99999;
	}

	.primary-navigation li li {
		border: 0;
		display: block;
		height: auto;
		line-height: 1.0909090909;
	}

	.primary-navigation ul ul ul {
		left: -999em;
		top: 0;
	}

	.primary-navigation ul ul a {
		padding: 18px 12px;
		white-space: normal;
		width: 176px;
	}

	.primary-navigation li:hover > a,
	.primary-navigation li.focus > a {
		background-color: var(--main-colour);
		color: #fff;
	}

	.primary-navigation ul ul a:hover,
	.primary-navigation ul ul li.focus > a {
		background-color: #2586c0;
	}

	.primary-navigation ul li:hover > ul,
	.primary-navigation ul li.focus > ul {
		left: auto;
	}

	.primary-navigation ul ul li:hover > ul,
	.primary-navigation ul ul li.focus > ul {
		left: 100%;
	}

	.primary-navigation .menu-item-has-children > a,
	.primary-navigation .page_item_has_children > a {
		padding-right: 26px;
	}

	.primary-navigation .menu-item-has-children > a:after,
	.primary-navigation .page_item_has_children > a:after {
		-webkit-font-smoothing: antialiased;
		content: "\f502";
		display: inline-block;
		font: normal 8px/1 Genericons;
		position: absolute;
		right: 12px;
		top: 22px;
		vertical-align: text-bottom;
	}

	.primary-navigation li .menu-item-has-children > a,
	.primary-navigation li .page_item_has_children > a {
		padding-right: 20px;
		width: 168px;
	}

	.primary-navigation .menu-item-has-children li.menu-item-has-children > a:after,
	.primary-navigation .menu-item-has-children li.page_item_has_children > a:after,
	.primary-navigation .page_item_has_children li.menu-item-has-children > a:after,
	.primary-navigation .page_item_has_children li.page_item_has_children > a:after {
		content: "\f501";
		right: 8px;
		top: 20px;
	}
}

@media screen and (min-width: 810px) {

    .site-content {
        margin-right: 0;
    }

    .content-sidebar {
        margin-right: 0;
        width:100%;
    }

	.attachment .site-content .attachment img {
		display: block;
		margin: 0 auto;
	}

	.full-width .site-content blockquote.alignleft,
	.full-width .site-content blockquote.alignright {
		width: -webkit-calc(50% + 130px);
		width:         calc(50% + 130px);
	}

	.full-width .site-content blockquote.alignleft,
	.full-width .site-content img.size-full.alignleft,
	.full-width .site-content img.size-large.alignleft,
	.full-width .site-content img.size-medium.alignleft,
	.full-width .site-content .wp-caption.alignleft {
		margin-left: -168px;
	}

	.full-width .site-content .alignleft {
		clear: left;
	}

	.full-width .site-content blockquote.alignright,
	.full-width .site-content img.size-full.alignright,
	.full-width .site-content img.size-large.alignright,
	.full-width .site-content img.size-medium.alignright,
	.full-width .site-content .wp-caption.alignright {
		margin-right: -168px;
	}

	.full-width .site-content .alignright {
		clear: right;
	}
}

@media screen and (min-width: 891px) {

    #primary {
        float: left;
        margin-right: 30%; /* サイドバー幅と同じ */
    }

    .content-sidebar {
        border: 0;
        float: right;
        margin-left: -30%;
        position: relative;
        width: 30%;
		padding: 48px 5px 0 15px; /* 左パディングを増やして間隔を狭く */

    }
}

@media screen and (min-width: 1008px) {

    .top-sec {
        float: left;
        width: 32%;
        margin-right: 1%;
        box-sizing: border-box;
    }

	#supplementary {
		padding: 0;
	}
}
/*Related Post*/

  .related-post ul {
    margin: 0;
  }
  .related-post li {
    display: block;
    width: 100%;
  }
  .related-post li a:after {
    display: block;
    clear: both;
    content: '';
  }
  .related-post img {
    float: left;
    margin-right: 10px;
    width: 25%;
    height: auto;
  }