/** default **/
body {
	font-family: "游ゴシック体", "游ゴシック", "Yu Gothic", "Meiryo", "メイリオ",
		"Hiragino Kaku Gothic ProN", "ヒラギノ角ゴProN W3", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho Pro", serif;
}
.thema-color,
.thema-color a {
	color: #000;
}
/* Thema color-1 */
.wp-block-group__inner-container h2,
.ranking .info a,
.sidebar-category a,
.sidebar-tag a,
.related-box-wrap .col-4-box-title {
	color: #000;
	letter-spacing: 0.1em;
}

/* Thema color-2 */

.archive-post-thumb .mask {
	background-color: rgba(0, 0, 0, 0.7);
}

.wp-pagenavi span.current {
	background-color: rgba(0, 0, 0, 1);
}

.wp-pagenavi a:hover,
.wp-pagenavi span {
	background-color: rgba(0, 0, 0, 0.9);
}

/** breadcrumbs **/

.breadcrumbs {
	font-size: 14px;
	margin-bottom: 60px;
	line-height: 3.5em;
	height: 3.5em;
	background: inherit;
	margin-top: 60px;
}

.breadcrumbs span {
	position: relative;
	top: 0.5px;
	margin-right: 2px;
}

.breadcrumbs span span {
	margin-left: 2px;
}

/** #right-sidebar .content-box **/

h2.widget-title {
	letter-spacing: 2px;
	font-size: 18px;
	border-bottom: 1px solid #000;
	padding-bottom: 10px;
	margin-bottom: 15px;
}

#right-sidebar .content-box {
	margin-right: auto;
}

#right-sidebar .content-box.single-contentbox {
	margin-right: 50px;
	width: 77%;
}

/** sidebar **/

.sidebar {
	width: 300px;
	margin-bottom: 40px;
}

/** archive-page-header **/

.container.wow.fadeInUp {
	border-bottom: 0px;
}

.archive-page-header {
	-webkit-font-smoothing: antialiased;
	letter-spacing: 2px;
	font-size: 34px;
	margin-bottom: 35px;
}

.archive-post-wrap {
	display: flex;
	justify-content: space-between;
}

.archive-post-left {
	margin-right: 50px;
	margin-bottom: 50px;
}

.archive-page-header h2 {
	-webkit-font-smoothing: antialiased;
	letter-spacing: 2px;
	line-height: 1;
	color: #000;
	font-size: 34px;
	margin-bottom: 35px;
}

/** archive-post **/

.archive-post-box-wrap {
	overflow: hidden;
}

.archive-post-box {
	overflow: hidden;
	margin-bottom: 40px;
}

.archive-post-thumb {
	overflow: hidden;
	position: relative;
	width: 365px;
	height: auto;
	float: left;
	margin-right: 30px;
	display: block;
}

.archive-post-thumb img {
	width: 100%;
	height: auto;
}

.archive-post-info {
	float: left;
	width: 405px;
}

.archive-post-thumb .mask {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0; /* マスクを表示しない */
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
.archive-post-thumb:hover .mask {
	opacity: 1; /* マスクを表示する */
	padding-top: 26%;
}

.archive-post-thumb .caption {
	font-size: 12px;
	text-align: center;
	color: #fff;
	width: 150px;
	height: 40px;
	margin: 0 auto;
	border: solid 1px #fff;
	line-height: 40px;
}

.archive-post-thumb .caption:before {
	content: ">";
	transform: scale(0.8, 1.4);
	font-weight: normal;
	display: inline-block;
	position: relative;
	top: -2px;
	left: -3px;
}

.archive-post-info .archive-post-meta {
	font-size: 12px;
	display: flex;
	margin-bottom: 12px;
}

.archive-post-info .archive-post-cat {
	margin-right: 28px;
	font-weight: 600;
}

.archive-post-info .archive-post-cat a {
	letter-spacing: 1px;
	margin-right: 10px;
}

.archive-post-info .archive-post-date {
	color: #999;
}

.archive-post-info .archive-post-title {
	font-size: 17px;
	line-height: 1.8em;
	margin-bottom: 12px;
}

.archive-post-info .archive-post-excerpt {
	font-size: 14px;
	line-height: 24px;
	margin-bottom: 18px;
}

.archive-post-info .archive-post-tag {
	font-size: 12px;
	font-weight: 600;
}

section#archives-3 h2 {
	margin-bottom: 17px;
}

#archives-dropdown-3 {
	width: 100%;
}

.archive-post-info .archive-post-cat {
	margin-right: 0;
}

.archive-post-info .archive-post-cat a {
	display: inline-block;
	margin-right: 28px;
}

.archive-post-info .archive-post-date {
	font-size: 12px;
}

li.cat-item {
	border-bottom: 1px dotted #9c9c9c;
	letter-spacing: 1px;
	padding: 12px 0px;
}

span.post-date {
	display: block;
	font-size: 13px;
	padding-top: 5px;
	font-weight: 600;
}

/** pagenavi **/

.wp-pagenavi {
	text-align: center;
	font-size: 15px;
	color: #666;
	margin-bottom: 80px;
	margin-right: -50%;
}

.wp-pagenavi a,
.wp-pagenavi span {
	width: 35px;
	height: 35px;
	display: inline-block;
	box-sizing: border-box;
	padding: 0;
	text-align: center;
	line-height: 1.9em;
}

.wp-pagenavi a {
	color: #666;
}
.wp-pagenavi a:hover {
	color: #fff;
}

.wp-pagenavi span.current {
	font-weight: bold;
	color: #fff;
}

.wp-block-image {
	text-align: center;
}

.wp-block-group__inner-container h2 {
	margin-bottom: 5px;
	font-size: 15px;
	letter-spacing: 2px;
	line-height: 1;
	border-bottom: 1px solid #9c9c9c;
	padding-bottom: 10px !important;
	-webkit-font-smoothing: antialiased;
	font-weight: 600;
}

/** single-post **/

.single-container {
	display: flex;
}

.single-post-box {
	color: #000;
}

.single-post-meta {
	font-size: 12px;
	display: flex;
	margin-bottom: 12px;
}

.single-post-cat {
	margin-right: 28px;
	font-weight: 600;
}

.single-post-cat a {
	margin-right: 10px;
	letter-spacing: 2px;
}

.single-post-title {
	font-size: 24px;
	line-height: 1.6em;
	color: #000;
	margin-bottom: 15px;
}

.single-post-tag {
	font-size: 14px;
	font-weight: 600;
	margin-bottom: 30px;
	display: none;
}

.single-post-tag a {
	padding: 3px 6px;
	margin-right: 10px;
}

.ninja_onebutton {
	margin-bottom: 38px;
}

.single-post-thumb {
	margin-bottom: 45px;
}

.single-post-content p {
	margin: 3rem auto 0;
	font-size: 1.7rem;
	font-weight: 600;
	line-height: 2.3;
	font-feature-settings: "palt";
	letter-spacing: 0.2rem;
	text-align: justify;
	font-family: YuGothic, "Yu Gothic Medium", "Yu Gothic", -apple-system,
		BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue,
		Verdana, Meiryo, sans-serif;
}

.single-post-content * {
	font-size: 15px;
}

/*#profile*/

#profile .profile-box {
	padding: 30px;
	border: solid 1px #eee;
	margin-bottom: 80px;
}

#profile #profile-title {
	font-size: 18px;
	border: none;
	margin-bottom: 18px;
}

#profile #profile-thumbnail {
	width: 120px;
	float: left;
	margin-right: 20px;
}

#profile #profile-info {
	font-size: 14px;
}

#profile #profile-name {
	font-size: 18px;
	margin-bottom: 10px;
}

/*関連記事*/

#related-post {
	margin-top: 60px;
	margin-bottom: 80px;
}

.related-box-heading {
	font-size: 15px;
	color: #000;
	text-align: center;
	border-bottom: #000 solid 1px;
	padding-bottom: 6px;
	margin-bottom: 20px;
	letter-spacing: 4px;
}

.related-box-heading {
	letter-spacing: 5px;
}

.related-post-cat {
	font-size: 12px;
}

.related-box-wrap {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 3px;
}
.related-box-wrap .col-4-box {
	display: block;
	width: 195px;
	margin-right: 20px;
	box-sizing: border-box;
	font-weight: 600;
}

.related-box-wrap .col-4-box:nth-child(4n) {
	margin-right: 0px;
}

.related-box-wrap .col-4-box-thumb {
	position: relative;
	margin-bottom: 2px;
	max-height: 120px;
}
.related-box-wrap .col-4-box-thumb img {
	width: 100%;
	height: auto;
}

.related-box-wrap .col-4-box-thumb {
	overflow: hidden;
	position: relative;
}

.related-box-wrap .col-4-box-thumb .mask {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0; /* マスクを表示しない */
	background-color: rgba(0, 0, 0, 0.7);
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.related-box-wrap .col-4-box-thumb:hover .mask {
	opacity: 1; /* マスクを表示する */
	padding-top: 65px; /*ホバーで下にずらす*/
}

.related-box-wrap .col-4-box-date {
	font-size: 12px;
	font-weight: normal;
	color: #999;
}

.related-box-wrap .col-4-box-title {
	font-size: 14px;
	line-height: 18px;
}

/*sidebar*/

.sidebar-heading {
	text-align: center;
	font-size: 20px;
	border-bottom: solid #000 1px;
	padding-bottom: 6px;
	margin-bottom: 18px;
}

.ranking {
	overflow: hidden;
	margin-bottom: 45px;
	counter-reset: number 0;
}

.ranking li {
	overflow: hidden;
	clear: both;
	border-bottom: solid 1px #ccc;
	margin-bottom: 9px;
	padding-bottom: 9px;
	position: relative;
}

.ranking li:before {
	counter-increment: number 1;
	content: counter(number);
	position: absolute;
	left: 0;
	color: #fff;
	background: #000;
	font-size: 10px;
	width: 20px;
	height: 20px;
	display: inline;
	text-align: center;
	line-height: 20px;
	z-index: 2;
}

.ranking li:before:hover {
	opacity: 1;
}

.ranking .thumb {
	width: 118px;
	height: auto;
	margin-right: 12px;
	float: left;
}

.ranking .info {
	float: left;
	width: 170px;
}

.ranking .info .title {
	font-size: 14px;
	line-height: 18px;
	margin-top: 4px;
	margin-bottom: 8px;
}
.ranking .info a {
	text-decoration: none;
}

.ranking .info .date {
	color: #999;
	font-size: 12px;
}

.sidebar-category {
	margin-bottom: 60px;
}

.sidebar-category li {
	border-bottom: solid 1px #ccc;
	margin-bottom: 10px;
	padding-bottom: 8px;
	position: relative;
}

.sidebar-category li:after {
	content: ">";
	color: #eee;
	font-size: 16px;
	font-weight: bold;
	position: absolute;
	right: 31px;
	top: -2px;
	transform: scale(0.8, 1.2);
}

.sidebar-category li.current:after {
	display: none;
}

.sidebar-category a {
	font-weight: 600;
	display: block;
	text-decoration: none;
}

.sidebar-tag {
	display: inline-block;
	margin-bottom: 60px;
}

.sidebar-tag li {
	margin-bottom: 8px;
	display: inline-block;
}

.sidebar-tag a {
	border: solid 1px #ccc;
	padding: 5px 7px;
	margin-right: 8px;
	text-decoration: none;
	display: block;
}

.sidebar-tag a:hover {
	color: #fff !important;
	background: #ccc;
}

.sidebar-banner {
	text-align: center;
	margin-bottom: 40px;
}

.sidebar-banner img {
	margin-bottom: 10px;
}

.sidebar-archive {
	margin-bottom: 60px;
}

.select-wrap {
	width: 100%;
	position: relative;
	display: inline-block;
}

.select-wrap::after {
	content: "";
	width: 6px;
	height: 6px;
	border: 0px;
	border-bottom: solid 2px #b4b3b3;
	border-right: solid 2px #b4b3b3;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -4px;
}

.select-item {
	font-size: 15px;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 100%;
	height: 40px;
	background: transparent;
	position: relative;
	z-index: 1;
	padding: 0 40px 0 10px;
	border: 1px solid #ccc;
	border-radius: 2px;
	outline: none;
}

aside#secondary .widget {
	padding-bottom: 40px;
}

#block-1,
#block-2,
#block-3,
#block-4,
#block-5,
#block-6,
#block-7 {
	letter-spacing: 2px;
	/* border-bottom: 1px solid #9c9c9c; */
	padding-bottom: 10px !important;
	margin-bottom: 20px;
	font-size: 15px;
	-webkit-font-smoothing: antialiased;
	color: #000;
	font-weight: 600;
}

aside#secondary .widget li {
	border-bottom: 1px dotted #9c9c9c;
	letter-spacing: 1px;
	padding: 12px 0px;
}

aside#secondary .widget li a {
	color: rgba(0, 0, 0, 0.7);
	font-size: 13px;
	font-weight: 600;
}

.no-comments.wp-block-latest-comments {
	color: rgba(0, 0, 0, 0.7);
	font-size: 13px;
	font-weight: 600;
}

aside#secondary .widget li a:hover {
	color: rgba(0, 0, 0, 0.4);
}

select::-ms-expand {
	display: none;
}

/************************************
responsive
*************************************/
@media only screen and (max-width: 1200px) {
	.archive-post-info {
		width: 40%;
	}
	.archive-post-left {
		margin-right: 5%;
	}
	.archive-post-box {
		width: 100%;
	}
}

@media only screen and (max-width: 767px) {
	/** breadcrumbs **/

	.breadcrumbs {
		font-size: 11px;
		line-height: 1.4;
		margin-top: 30px;
		margin-bottom: 20px;
		padding-right: 20px;
		padding-left: 20px;
	}

	/* .breadcrumbs span {
        margin-left: 10px;
    } */

	/** #right-sidebar .content-box **/

	#right-sidebar .content-box {
		width: 100%;
		float: none;
		margin-right: 0px;
	}

	/** sidebar **/

	.sidebar {
		width: 100%;
		float: none;
	}

	/** archive-page-header **/

	.archive-page-header {
		font-size: 24px;
		margin-bottom: 24px;
	}

	/** archive-post **/

	.archive-post-wrap {
		display: block;
	}

	.archive-post-left {
		margin: 0 auto;
	}
	.archive-post-box {
		overflow: hidden;
		margin-bottom: 40px;
	}

	.archive-post-thumb {
		width: 100%;
		float: none;
		margin-right: 0px;
		margin-bottom: 14px;
	}

	.archive-post-thumb a {
		width: 100%;
	}

	.archive-post-thumb .mask {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0; /* マスクを表示しない */
		background-color: rgba(0, 0, 0, 0.7);
		-webkit-transition: all 0s ease;
		transition: all 0s ease;
		display: block;
	}

	.archive-post-thumb:hover .mask {
		opacity: 1;
		padding-top: 25%;
	}

	.archive-post-info {
		float: none;
		width: 100%;
	}

	.archive-post-info .archive-post-title {
		font-size: 18px;
	}

	#archives-dropdown-3 {
		font-size: 1.3rem;
	}

	/*single-post*/
	.single-post-title {
		font-size: 16px;
	}
	.breadcrumbs .container {
		padding: 10px 0;
		/* text-indent: -1em;
        padding-left: 1em; */
	}

	.container.wow.fadeInUp {
		padding: 0 20px;
		display: block;
	}

	.single-post-content * {
		font-size: 13px;
		text-align: justify;
		line-height: 1.9em;
	}

	.single-post-tag {
		font-size: 12px;
		margin-bottom: 15px;
	}

	.ninja_onebutton {
		margin-bottom: 16px;
	}

	.single-post-thumb {
		margin-bottom: 16px;
	}

	.single-post-content h3 {
		font-size: 18px;
		margin: 10px auto;
	}

	#related-post {
		margin-top: 40px;
	}

	.sb-type-std {
		padding: 0 !important;
	}

	.va-social-buzz .vasb_fb .vasb_fb_thumbnail {
		width: 100% !important;
	}

	#cta_container {
		padding: 19px 15px !important;
	}

	#cta_container #main-headline {
		padding-bottom: 16px !important;
		font-size: 20px !important;
	}
	.cta_button {
		height: 45px;
		line-height: 32px;
		font-size: 18px !important;
	}

	#profile .profile-box {
		padding: 15px;
		overflow: hidden;
	}

	#profile #profile-thumbnail {
		width: 60px;
		float: left;
		margin-right: 0;
	}

	#profile #profile-info {
		font-size: 14px;
		overflow: hidden;
	}

	.profile-info-box {
		float: left;
		width: 100%;
		margin-left: -60px;
		padding-left: 74px;
		box-sizing: border-box;
	}

	#profile #profile-name {
		font-size: 16px;
	}

	.related-box-wrap {
		display: block;
	}

	.related-box-wrap .col-4-box {
		width: 48.5%;
		float: left;
		margin-bottom: 16px;
		box-sizing: border-box;
		margin-right: 3%;
	}

	.related-box-wrap .col-4-box:nth-child(2n) {
		margin-right: 0;
	}

	.related-box-wrap .col-4-box-title {
		font-size: 12px;
		line-height: 16px;
	}

	header.archive-page-header h2 {
		font-size: 18px;
		margin-bottom: 30px;
	}

	.wp-pagenavi {
		margin-top: 40px;
		margin-right: auto;
		margin-bottom: 40px;
	}

	.widget.widget_recent_entries ul li {
		padding: 5px 0;
	}

	.widget.widget_recent_entries ul li a {
		font-size: 1.4rem;
		display: block;
	}

	.widget.widget_recent_entries ul li span {
		font-size: 1.3rem;
	}

	#related-post {
		margin-bottom: 40px;
	}

	.related-box-wrap {
		flex-wrap: wrap;
	}

	.related-box-wrap .col-4-box-thumb {
		max-height: 104px;
	}

	.single-post-content p {
		line-height: 2.1;
	}

	.single-post-content h2 {
		font-size: 18px;
	}

	.single-post-content p {
		font-size: 14px;
		margin: 1.5rem auto;
	}
	.single-post-content * {
		font-size: 14px;
	}

	#right-sidebar .content-box.single-contentbox {
		margin-right: 0;
		width: 100%;
	}

	/** col-4-box **/

	.col-4-box-wrap {
		width: 100%;
	}

	.col-4-box-wrap .col-4-box {
		display: block;
		width: 49%;
		height: auto;
		float: left;
		margin-right: 2%;
		margin-bottom: 24px;
	}

	.col-4-box-wrap .col-4-box:nth-child(2n) {
		margin-right: 0;
	}

	.col-4-box-wrap .col-4-box-inner {
		padding: 10px;
	}

	.col-4-box-thumb .caption {
		font-size: 10px;
		text-align: center;
		color: #fff;
		width: 68%;
		height: 34px;
		line-height: 34px;
	}

	.col-4-box-thumb .mask {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0; /* マスクを表示しない */
		background-color: rgba(0, 0, 0, 0.7);
		-webkit-transition: all 0s ease;
		transition: all 0s ease;
	}

	.col-4-box-thumb:hover .mask {
		opacity: 1;
		padding-top: 23%;
	}

	.col-4-box-wrap .col-4-box-cat {
		font-size: 10px;
		margin-bottom: 2px;
		display: inline-block;
	}

	.col-4-box-wrap .col-4-box-cat a {
		display: inline-block;
	}

	.col-4-box-wrap .col-4-box-title {
		line-height: 19px;
		margin-bottom: 8px;
		font-size: 14px;
	}

	.col-4-box-meta {
		font-size: 10px;
		line-height: 14px;
	}

	.col-4-box-wrap .col-4-box-tag a {
		display: inline-block;
	}
	/* page-top*/
	#page-top {
		position: fixed;
		bottom: 15px;
		right: 0px;
		font-size: 77%;
	}

	#page-top img {
		width: 70px;
	}

	.sp-hidden {
		display: none;
	}

	.sp-show {
		display: block;
	}

	.news-list li a {
		padding: 15px 30px 15px 10px;
	}

	.news-list li a:before {
		right: 10px;
	}

	.news-list .news-list-day {
		font-size: 14px;
		margin-right: 15px;
	}

	.news-list .news-list-title {
		font-size: 14px;
	}
}
