@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/


/************************************
** body
************************************/
#container{
	/*background: linear-gradient(90deg, #2C8BA8 0%, #2C8BA8 50%, #ffad19 50%, #ffad19 100%);*/
	background: linear-gradient(90deg, #2C8BA8 0%, #2C8BA8 50%, #ffad19 50%, #ffad19 100%);
}

#container {
    animation: fadeIn .4s ease-in 0s 1 normal;
}
@keyframes fadeIn {
    0% {
        opacity: 0
    }
    100% {
        opacity: 1
    }
}

@media screen and (max-width: 1023px){	
	.content-top{
		margin: 0;
	}
	
	#container{
		padding-top: 25px;
	}
}

a{
	color: #2C8BA8;
}
/*
body.category-stats{
	background: #2C8BA8;
}

body.category-design{
	background: #ffad19;
}
*/


/************************************
** wrap
************************************/
.wrap{
	max-width: 1000px;
	flex-direction: row-reverse;
	padding: 0 16px;
}

@media screen and (min-width: 1023px){
	.wrap{
		width: 1000px;
	}
	.a-wrap{
		transition: all  0.3s ease;
	}

	.a-wrap:hover{
		box-shadow: 0 15px 30px -5px rgba(0,0,0,.15), 0 0 5px rgba(0,0,0,.1);
		transform: translateY(-4px);
		background-color: #FFF !important;
	}
}

body.category-design .wrap{
	flex-direction: row;
}


/************************************
** ヘッダー
************************************/
#header{
	width: 100%;
}

#header-in{
	max-width: 800px;
}

.header-container-in.hlt-top-menu .logo-image{
	padding: 10px 0;
	margin-bottom: 5px;
}

/** PC用メニュー *******************/

@media screen and (min-width: 1024px){
	.mobile-header-menu-buttons .home-menu-button,
	.mobile-header-menu-buttons .logo-menu-button{
		display: none;
	}
	.mobile-header-menu-buttons {
		display: flex;
		background: transparent;
		box-shadow: none;
		right: 12px ; /*calc((100vw - 1000px)/2 - 40px);*/
		left: auto;
		bottom: 65px;
		top: 3px !important;
		
		position: fixed;
		z-index: 99999;
	}

	.mobile-header-menu-buttons .menu-button{
		width: auto;
		position:absolute;
		right: 3%;
		top: 0px !important;
		color: #ffad19;
	}
	
	.mobile-header-menu-buttons .menu-button .menu-caption{
		font-size: 14px;
		font-weight: bold;
		
	}
	
	.mobile-header-menu-buttons .menu-button .menu-icon{
		font-size: 40px;
		line-height: 1;
	}
	
	.fa-outdent:before{
		content: none !important;
		content: "\f0c9" !important;
	}

}



/** ヘッダーロゴ *******************/
.site-name-text{
	line-height: 1em;
	font-size: 1em;
}

/** ヘッダーアピール画像 ***********/
#content-top .pc.widget_media_image{
	max-width: 800px;
	margin: 0 auto;
}

#content-top .sp.widget_media_image{
	max-width: 600px;
	margin: 0 auto;
}

#content-top .pc.widget_media_image img{
	width: 100%;
}

#content-top .sp.widget_media_image img{
	width: 100%;
	padding: 10px;
	display: none;
}

/*モバイル・スマホ*/
@media screen and (max-width: 1023px){

	#content-top .pc.widget_media_image img{
		display: none !important;
	}

	#content-top .sp.widget_media_image img{
		display: block;
	}
}

/** ヘッダーキャッチフレーズ *******/

.catch-phrase{
	position: relative;
	background-color: #FFF;
	max-width: 800px;
	margin: 0 auto;
	margin-top: 1em;
	border-radius: 15px;
	padding: 0 5px;
}

.catch-phrase:before {
  content: "";
  position: absolute;
  top: -28px;
  left: 50.3%;
  margin-left: -15px;
  border: 13px solid transparent;
  border-bottom: 15px solid #FFF;
}

.catch-phrase h2{
	text-align: center;
}

.catch-phrase a{
	display: block;
	color: #595959;
	text-decoration: none;
	font-size: 1rem;
	font-weight: normal;
	padding: 20px 0;
	line-height: normal;
}

.catch-phrase span{
	font-weight: bold;
	font-size: 1.2rem;
}

.stats-catch .saru-catch{
	width: 100%;
	margin-left: 16px;
	padding-right: 32px;
	
}


.stats-catch .saru-catch img:hover{
	box-shadow: 0 15px 30px -5px rgba(0,0,0,.15), 0 0 5px rgba(0,0,0,.1);
	transform: translateY(-4px);
	transition: all  0.3s ease;
}

.stats-catch .saru-catch img{
	width: 100%;
}

/*1023px以下*/
@media screen and (max-width: 1023px){
	.catch-phrase{
		max-width: 95%;
	}
}

/*480px以下*/
@media screen and (max-width: 480px){
	.catch-phrase h2{
		font-size: 0.8rem;
	}

	.catch-phrase a{
		font-size: 0.8rem;
	}

	.catch-phrase span{
		font-size: 0.9rem;
	}
}

/** ヘッダーメニュー ***************/
#menu-header-menu{
	display: flex;
	justify-content: space-around;
	position: relative;
}

#menu-header-menu > li{
	display: block;
	width: 20%;
	margin: 0 10px;
}

#menu-header-menu a{
	display: block;
	text-align: center;
	background-color: #FFF;
	border-radius: 10px;
	padding: 0.3em 0.5em;
	height: 100%;
	color: #595959;
}

#menu-header-menu > li > a:hover{
	color: #2C8BA8;
}

#menu-header-menu .sub-menu{
	padding: 0;
	position: absolute;
	width: 18%;
	z-index: -1;
}

#menu-header-menu .sub-menu a{
	margin-top: 0.3em;
	color: #FFF;
	background-color: rgba(89,89,89,0.8);
}

#menu-header-menu .sub-menu a:hover{
	background-color: rgba(89,89,89,1.0);
}

#menu-header-menu > li ul li{
	visibility: hidden;
	opacity: 0;
	transition: .2s ease-in-out;
	transform: translateY(-20px);
}

#menu-header-menu > li:hover ul li{
	visibility: visible;
	opacity: 1;
	transform: translateY(0);

}
#menu-header-menu > li:hover .sub-menu{
	z-index: 1;
}

/*アイコン*/
.menu .stats > a::before{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f02d";
	margin-right: 0.5em;
}

.menu .ezr > a::before{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f108";
	margin-right: 0.5em;
}

.menu .other > a::before{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f07c";
	margin-right: 0.5em;
}

.menu .pp > a::before{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f53f";
	margin-right: 0.5em;
}

.menu .saru > a::before{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f1ec";
	margin-right: 0.5em;
}

/*480px以下*/
@media screen and (max-width: 480px){
	#menu-header-menu{
		display: none;
	}
}


/*モバイル*/
/*1023px以下でロゴを消す*/
@media screen and (max-width: 1023px){
	img.site-logo-image{
		visibility: hidden;
	}
	
	.logo-menu-button.menu-button{
		background-image: url(https://toukei.sozaiya-san.jp/wp-content/uploads/2021/02/header_logo02.png);
		background-size: auto 30px;
		background-position: center;
		background-repeat: no-repeat;
	}
}

/*480px以下*/
@media screen and (max-width: 480px){
	#menu-header-menu{
		font-size: 0.7rem;
	}
}


/************************************
** メインエリア
************************************/
#main {
	background-color: rgba(255,255,255,1);
	border-radius: 5px;
}

.home #main {
	background-color: rgba(255,255,255,1);
	border-radius: 5px;
}


/************************************
** メインエリア - アーカイブページ category-content
************************************/
.category-content .cat-label{
	display: none;
}

/** カテゴリーヘッダー *************/
.category-header{
	position: relative;
}

.category-header h1{
	text-align: center;
}
.category-header .eye-catch-wrap{
	
}

.category-header::after {
	border-bottom: 5px dotted #595959;
	content: "";
	position: absolute;
	bottom: -15px;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}

/** 記事一覧 ***********************/
.ect-vertical-card .entry-card-wrap{
	width: 48.5%;
}

.entry-card-wrap{
	background-color: #FFF;
	padding: 10px;
	border-radius: 5px;
	margin-bottom: 0.8em;
}

.entry-card-title{
	height: 4em;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	line-height: 1.3;
	font-size: 16px;
}

.entry-card-content{
	padding-bottom: 0;
}

.entry-card-snippet,
.entry-card-meta,
.entry-card-wrap .admin-pv,
.cat-label{
	display: none;
}

/*480px以下*/
@media screen and (max-width: 480px){
	.list.ect-vertical-card{
		flex-flow:column;
	}
	
	.ect-vertical-card .entry-card-wrap{
		width: 100%;
	}
	
	.ect-vertical-card .entry-card{
		display: flex;
		flex-flow: column;
	}

	.ect-vertical-card .entry-card .entry-card-thumb{
		width: 100%;
	}
	
	.ect-vertical-card .entry-card-content{
		width: 100%;
		padding: 0.5em;
	}
	
	.ect-vertical-card .entry-card-title{
		height: 100%;
		display: block;
	}
	
}

/** ページネーション ****************/
.pagination-next-link {
	background-color: #2C8BA8;
	color: #fff;
	border: none;
	border-radius: 30px;
}
.pagination-next-link:hover {
	background-color: #2C8BA8;
	transition: all 0.5s ease;
	color: #fff;
}
.page-numbers {
	color: #2C8BA8;
	border: 1px solid #2C8BA8;
	border-radius: 50%;
}
.pagination .current {
	background-color: #2C8BA8;
	color: #fff !important;
}
.page-numbers.dots {
	opacity: 1;
	background: none;
}
.pagination a:hover {
	background-color: #2C8BA8;
	color: #fff !important;
	animation: animScale 0.4s ease-out;
	transform-origin: 50% 50%;
	-webkit-animation: animScale 0.4s ease-out;
	-webkit-transform-origin: 50% 50%;
	-moz-animation: animScale 0.4s ease-out;
	-moz-transform-origin: 50% 50%;
}
@keyframes animScale {
	0% { transform: scale(0.8, 0.8); }
	40% { transform: scale(1.2, 1.2); }
	60% { transform: scale(1, 1); }
	80% { transform: scale(1.1, 1.1); }
	100% { transform: scale(1, 1); }
}
@-webkit-keyframes animScale {
	0% { -webkit-transform: scale(0.8, 0.8); }
	40% { -webkit-transform: scale(1.2, 1.2); }
	60% { -webkit-transform: scale(1, 1); }
	80% { -webkit-transform: scale(1.1, 1.1); }
	100% { -webkit-transform: scale(1, 1); }
}
@-moz-keyframes animScale {
	0% { -moz-transform: scale(0.8, 0.8); }
	40% { -moz-transform: scale(1.2, 1.2); }
	60% { -moz-transform: scale(1, 1); }
	80% { -moz-transform: scale(1.1, 1.1); }
	100% { -moz-transform: scale(1, 1); }
}
a.prev, a.next {
	display: none;
}
@media screen and (max-width: 480px) {
	.page-numbers {
		width: 48px;
		height: 48px;
		line-height: 48px;
	}
}

/*デザインページのデザイン*/
body.category-design .pagination-next-link,
body.category-design .pagination-next-link:hover,
body.category-design .pagination .current,
body.category-design .pagination a:hover{
	background-color:#ffad19;
}

body.category-design .page-numbers{
	color: #ffad19;
	border: 1px solid #ffad19;	
}

/** 検索ボックス ***＊＊*************/
input.search-edit{
	border: none;
	border: solid 1px #FFF;
	border-radius: 10px;
	background-color: transparent;
	padding: 0.3em 0.5em;
	color: #FFF;
}
input.search-edit::placeholder {
	color:#FFF;
}
input.search-edit:focus {
	outline: none;
}

.search-submit{
	border-radius: 0 10px 10px 0;
	border: solid 1px #FFF;
	color: #fff;
	background-color: transparent;/*お好みの色に*/
	width: 38.8px;
	height: 38.8px;
	top: 0;
	right: 0;
}

#main input.search-edit{
	border: solid 1px #595959;
	color: #595959;
}

#main input.search-editt::placeholder {
	color: #595959 !important;
}

#main .search-submit{
	border: solid 1px #595959;
	color: #595959;
}

/*デザインページのデザイン*/
body.category-design .search-submit{
	background-color:#ffad19;
}

/************************************
** メインエリア - 記事ページ .post
************************************/
.single #main{
	padding: 0;
	background-color: transparent;
}



.single .post{
	padding: 1em 50px;
}

.single .post{
	background-color: rgba(255,255,255,1);
	border-radius: 5px;
}

/*見出し*/
.single .article h2,
.single .article h3{
	margin-left: -50px;
	margin-right: -50px;
	padding: 0.5em;
	border-radius: 0;
}

@media screen and (max-width: 834px){
	.single .article h2,
	.single .article h3{
		margin-left: -16px;
		margin-right: -16px;
		text-align:center;
	}
	.single .post{
		padding: 16px;
	}
}

@media screen and (min-width: 1023px){
	.single .article h2,
	.single .article h3{
		text-align: center;
	}
}

.single .article h2{
	background-color: #2C8BA8;
	color: #FFF;
}

.single .article h3{
	border: none;
	border-bottom: solid 3px #2C8BA8;
	color: #2C8BA8;
}

/*ブログカード*/
.blogcard-wrap{
	background: transparent;
}

.blogcard{
	background-color: #FFF;
	border:3px solid #DFE6E9;
	color: #595959;
}

.blogcard-label{
	background-color:#636e72;
}

.blogcard-snippet{
	line-height: 1.4rem;
}

.internal-blogcard-footer{
	display: none;
}

/*テーブル*/
.single .wp-block-table table{
	border-top: solid 3px #2C8BA8;
	border-bottom: solid 3px #2C8BA8;
	margin: 20px auto !important;
}

.single .wp-block-table tr,
.single .wp-block-table th,
.single .wp-block-table td{
	color: #333;
	background-color: transparent;
	border: none;
}

.single .wp-block-table th,
.single .wp-block-table td{
	border-bottom: 1px dotted #2C8BA8;
}

.single .wp-block-table th{
	color: #2C8BA8;
}

.single .wp-block-table tr td:nth-child(1){
	min-width: 100px;
	text-align:center;
	color: #2C8BA8;
}


/*目次*/
.toc{
	border: 3px solid #DFE6E9;
}

/*次の記事*/
.single .pager-post-navi{
	position: relative;	
	border-radius: 15px;
	padding-top: 2.5em;

}

.single .pager-post-navi .a-wrap{
		border: 3px solid #DFE6E9;
}

.single .pager-post-navi:before{
	content: "＼ Back or Next ／";
	position: absolute;
	width: 100%;
	text-align:center;
	top: 0;
	font-weight: bold;
	border-bottom: dotted 3px;
}

.single .pager-post-navi .a-wrap{
	background-color: #FFF;
	border-radius: 5px;
	width: 50%;
	margin: 5px;
}

.single .pager-post-navi .a-wrap .fas{
	color: #595959;
}


/*480px以下*/
@media screen and (max-width: 480px){
	.single .pager-post-navi .a-wrap{
		width: 100%;
	}
}

/*カテゴリーandタグ*/
.single .entry-categories-tags{
	position: relative;
	border-radius: 15px;
	padding-top: 2.5em;
}

.single .entry-categories-tags:before{
	content: "＼ Categories & Tags ／";
	position: absolute;
	width: 100%;
	text-align:center;
	top: 0;
	font-weight: bold;
	border-bottom: dotted 3px;
}

/*post下部エリア*/
.single .under-entry-content .related-list{
	justify-content: space-between;
}

.single .under-entry-content h2{
	text-align: center;
	line-height: 1.25;
	color: #FFF;
	padding: 0.5em;
	border-bottom: 5px dotted #FFF;
}

.single .under-entry-content .related-entry-card-wrap{
	background-color:#FFF;
	border-radius: 5px;
}

.single .under-entry-content .related-entry-card-wrap .related-entry-card{
	padding: 0;
}

.rect-vertical-card-3 .related-entry-card-wrap {
    width: 32%;
}

@media screen and (max-width: 834px){
	.rect-vertical-card .related-entry-card-wrap {
		width: 47%;
	}
}


/*デザインページのデザイン*/
body.category-design.single .article h2{
	background-color: #ffad19;
}

body.category-design.single .article h3{
	border-bottom: solid 3px #ffad19;
	color: #ffad19;
}

/************************************
** サイドバー
************************************/
#sidebar{
	background-color: rgba(255,255,255,0);
	padding: 0;
	color: #FFF;
}

#sidebar a{
	color: #FFF;
}

#sidebar .widget-title{
	text-align: center;
	padding: 5px;
	background-color: rgba(255,255,255,0);
	border-radius: 25px;/*25px 0 0 25px;*/
	color: #FFF;
	text-align: left;
	padding-left: 1em;
}

#sidebar .widget-title + div,
#sidebar .widget-title + form{
	margin: 0 15px;
}

/*アイコン*/
#sidebar .widget-title::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f07c";
	margin-right: 0.5em;
}

#sidebar .widget_search .widget-title::before{
	content: "\f002";
}

#sidebar .widget_sns_follow_buttons .widget-title::before{
	content: "\f004";
}

#sidebar .widget_author_box .widget-title::before{
	content: "\f0e0";
}

#sidebar .side-contents .widget-title::before{
	content: "\f0ca";
}

#sidebar .side-static-menu .widget-title::before{
	content: "\f0eb";
}

/*メニュー*/
#sidebar .menu > li{
	display: block;
	position: relative;
}

#sidebar .menu a{
	display: block;
	text-align: center;
	color: #FFF;
	background-color: rgba(255,255,255,0.0);
	border: solid 1px #FFF;
	border-radius: 10px;
	padding: 0.3em 0.5em;
	margin: 1em 0;
	text-align: left;
	padding-left: 1em;
}

#sidebar .menu > li > a:hover{
	color: #595959;
	background-color: rgba(255,255,255,0.85);
}

#sidebar .menu .sub-menu{
	position: absolute;
	width: 100%;
	top: 0;
	right: -100%;
	padding-top: 0;
	z-index: -1;
}

#sidebar .menu .sub-menu a{
	margin-top: 0.3em;
	color: #FFF;
	background-color: rgba(89,89,89,0.8);
	margin: 0.3em 0;
}

#sidebar .menu .sub-menu a::before{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f138";
	margin-right: 0.5em;
}

#sidebar .menu .sub-menu a:hover{
	background-color: rgba(89,89,89,1.0);
}

#sidebar .menu > li ul li{
	visibility: hidden;
	opacity: 0;
	transition: .2s ease-in-out;
	transform: translateY(-20px);
}

#sidebar .menu > li:hover ul li{
	visibility: visible;
	opacity: 1;
	transform: translateY(0);
}

#sidebar .menu > li:hover .sub-menu{
	z-index: 1;
}

/*フォローボタン*/
#sidebar .sns-follow-message{
	display: none;
}

#sidebar .follow-button{
	background-color: transparent;
	border: 1px solid #FFF;
	border-radius: 10px;
}

/*オーサーボックス*/
#sidebar .author-box{
	border: 1px #FFF solid;
	border-radius: 10px;
}

#sidebar .author-box .author-content{
	padding: 0;
}

/*関連記事*/
#sidebar .widget-entry-cards .e-card{
	background: transparent;
	padding: 0;
}

#sidebar .widget-entry-cards figure{
	width: 100%;
}

#sidebar .widget-entry-card-thumb{
	margin-top: 0;
}

#sidebar .widget-related-entry-card-title{
	display: none;
}

#sidebar .widget-entry-cards.card-large-image .card-content{
	margin: 0;
	padding:0;
}

/*デザインページのデザイン*/
body.category-design #sidebar .widget-title{
	color: #FFF;
}

body.category-design #sidebar .menu .sub-menu{
	left: -100%;
	padding-right: 20px;
	padding-left: 0;
}

/*モバイルサイドバー*/


#sidebar-menu-content,
#sidebar-menu-content .sidebar-menu-close-button,
#sidebar-menu-content .sidebar{
	background-color: #2C8BA8 ;
	border: none;
	border-radius: 0;
	color: #FFF;
}

#sidebar-menu-content{
	padding: 5px 25px;
}

#sidebar-menu-content .sidebar h3{
	background-color: #2C8BA8 ;
	color: #FFF;
	border-bottom: 1px solid #FFF;
}

#sidebar-menu-content .sidebar a{
	color: #FFF;
}

body.category-design #sidebar-menu-content,
body.category-design #sidebar-menu-content .sidebar-menu-close-button,
body.category-design #sidebar-menu-content .sidebar,
body.category-design #sidebar-menu-content .sidebar h3{
	background-color: #e8a01e;/*#ffad19;*/
}

/************************************
** パンくずリスト
************************************/
#breadcrumb{
	border-radius: 0px;
	color: #595959;
	color: #FFF;
	background-color: rgba(255,255,255,0.85);
	background-color: transparent;
	margin: 0 auto;
	text-align: right;
	padding: 0 16px;
	font-size: 1em;
	margin-bottom: -10px;
	margin-top: -15px;
}

#breadcrumb a{
	color: #FFF;
}

/*デザインページのデザイン*/
body.category-design #breadcrumb{
	text-align: left;
}

/************************************
** SNS・シェアボタン
************************************/
#main .sns-share,
#main .sns-follow{

}

#main .button-caption {
	display: none; /*キャプション非表示*/
}
#main .sns-share-message,
#main .sns-follow-message{
	font-weight: bold; /*太字*/
	color: #595959; /*文字色*/
	border-bottom: dotted 3px;
}
#main .sns-share-buttons,
#main .sns-follow-buttons{
	flex-wrap: nowrap; /*折り返さない*/
	justify-content: center; /*中央寄せ*/
}
#main .sns-share-buttons a,
#main .sns-follow-buttons a{
	border-radius: 50%; /*丸くする*/
	font-size: 20px; /*アイコンのサイズ*/
	margin: 10px; /*ボタン同士の間隔*/
}
#main .sns-share-buttons a,
#main .sns-follow-buttons a{
	width: 40px; /*ボタンの横幅*/
	height: 40px; /*ボタンの高さ*/
}

/************************************
** ホームページ（固定ページ）
************************************/

.home.page #main {
	padding: 0;
}

/** 非表示設定 *********************/
.home.page .entry-title,
.home.page .sns-share,
.home.page .sns-follow,
.home.page .date-tags,
.home.page .author-info,
.home.page #pager-post-navi{
  display: none;
}

/** キャッチコピー *****************/
.catch-copy{
	all:initial;
}

.catch-copy a{
	display: block;
	color: #595959;
	text-decoration: none;
	line-height: 1.0;
	padding: 1em;
}

.catch-copy p{
	font-size: 16px;
	margin: 0;
}

.catch-copy h2{
	display: inline-block;
	font-size: 20px;
	font-weight: normal;
	margin: 0;
	padding: 0;
}

.catch-copy h2 span{
	font-size: 26px;
	font-weight: bold;
}

.catch-copy i{
	color: #FFF;
	font-size: 32px;
	font-weight: bold;
}

.catch-copy .stats-catch,
.catch-copy .design-catch{
	display: flex;
    flex-flow: column;
	padding: 30px 0px;
}

/*統計*/

.catch-copy .stats-catch{
	align-items: flex-start;
	margin-right: 16px;
}

.catch-copy .stats-catch p{
	color: #2C8BA8;
	margin-left: 1em;
}
.catch-copy .stats-catch a{
	color: #FFF;
}

.catch-copy .stats-catch h2{
	background-color: #2C8BA8;
	border-radius:0 70px 70px 0;
}

/*デザイン*/

.catch-copy .design-catch{
	align-items: flex-end;
	margin-left: 16px;
	padding-top: 0;
}

.catch-copy .design-catch p{
	color: #ffad19;
	margin-right: 1em;
}

.catch-copy .design-catch a{
	color: #fff;
}

.catch-copy .design-catch h2{
	background-color: #ffad19;
	border-radius: 70px 0 0 70px;
}

/*アニメーション
.catch-copy .stats-catch {
	transition: .2s ease-in-out;
	transform-origin: center left;
	transform: scaleX(0);
}

.catch-copy.isAnimate .stats-catch {
	transform: scaleX(1);
}

.catch-copy .design-catch {
	transition: .2s ease-in-out;
	transform-origin: center right;
	transform: scaleX(0);
	transition-delay: 500ms;
}

.catch-copy.isAnimate .design-catch {
	transform: scaleX(1);
}

*/

/*480px以下*/
@media screen and (max-width: 480px){
	.catch-copy a{
		line-height: 26px;
	}
	.catch-copy p{
		font-size: 14px;
	}	
	.catch-copy h2{
		font-size: 14px;
		line-height: 50px;
	}

	.catch-copy h2 span{
		font-size: 18px;
	}

	.catch-copy i{
		font-size: 18px;
	}
}

/** 注目・人気記事 ************************/
.home.page .column-left,
.home.page .column-right{
	padding: 0 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
}

.home.page .column-2{
	padding-bottom: 20px;
}

.home.page .column-2 .navi-entry-cards{
	padding: 0;
}

.home.page .column-2 h3{
	font-size: 1em;
	font-weight: normal;
	border: none;
	text-align: center;
	width: 100%;
}

.home.page .column-2 h3 span{
	font-size: 1.2em;
	font-weight: bold;
}

.home.page .column-left h3{
	color: #2C8BA8;
	border-bottom: 5px dotted #2C8BA8;
}

.home.page .column-right h3{
	color: #ffad19;
	border-bottom: 5px dotted #ffad19;
}

.home.page .column-2 .a-wrap{
	background-color: #FFF;
	padding: 10px;
	border-radius: 5px;
	margin-bottom: 0.8em;
	max-width: none;
}

.home.page .column-2 .navi-entry-cards .card-title{
	height: 2.5em;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

.home.page .widget-entry-cards .card-title {
	display: block;
	overflow: visible;
}

/*1023px以下*/
@media screen and (min-width: 1023px){
	.home.page .top-post-area .widget-entry-cards{
		display: flex;
		flex-wrap: wrap;
	}
	
	.home.page .top-post-area .widget-entry-cards .a-wrap{
		width: 50%;
	}

	.home.page .top-post-area .widget-entry-cards .a-wrap figure{
		width: auto;
	}
	
	.home.page .top-post-area .widget-entry-cards .a-wrap .card-content{
		margin: 0;
		height:240px;
	}	
}

/************************************
** フッター
************************************/
/** プロフィール ************************/
#author_box-3.top-profile {
	margin-bottom: -60px;
}

.top-profile .author-box{
	border: none;
	margin-bottom: 0;
}

/** フッターメニュー ************************/
.footer-bottom.fdt-left-and-right .footer-bottom-content{
	flex-direction: column;
	align-items: center;
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}

/************************************
** SNS ボタンの色をまとめて変更する
************************************/

/*ボタンカラーが「ブランドカラー（白抜き）」の場合*/
.bc-brand-color-white[class*="sns-"] a[class*="-button"] {
	border-color: #817e79;/*線の色*/
	color: #817e79; /*アイコン・キャプション等の色*/
	background-color: transparent;
}

.bc-brand-color-white[class*="sns-"] a[class*="-button"]:hover {
	border-color: #817e79;/*線の色*/
	color: #FFF; /*アイコン・キャプション等の色*/
	background-color: #817e79;
}

#main .button-caption {
	display: none; /*キャプション非表示*/
}

.sns-share-buttons {
	flex-wrap: nowrap;	/*折り返さない*/
/*	justify-content: start;*/		/*左寄せ*/
	justify-content: center;		/*中央寄せ*/
/*	justify-content: flex-end;*/		/*右寄せ*/

}
.sns-share-buttons a {
/*	border-radius: 50%;*/	/*丸くする*/
	font-size: 20px;	/*丸枠の中の、アイコンのサイズ*/
	margin: 4px;		/*ボタン同士の間隔*/
}
#main .sns-share a {
	width: 35px;			/*ボタンの横幅*/
	height: 35px;			/*ボタンの高さ*/
	margin-bottom: 0.5em;	/*ボタンの下の余白を、0.5文字分にする */
}


/************************************
** Lazy Blocksのボックスデザイン
************************************/

/*共通設定*/
.box{
	width: 100%;
	max-width: 500px;
	margin: 0 auto;
	margin-bottom: 1rem;
	position: relative;
	padding: 10px;	
}

.box li:empty{
	display: none;
}

.box div:empty{
	display: none;
}

.box li{
	padding: 5px;
	border-bottom: 1px dashed  #DFE6E9;
	padding-left: 2.5rem;
	text-indent: -2.5rem;
}

.box li:before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f105";
	margin: 0 1rem;
}

.box .box_head{
	font-size: 1rem;
	position: absolute;
}

/*クイズボックス*/
.box.quiz_box{
	border: 3px solid #636e72;
	background-color: #DFE6E9;
	color: #636e72;
	max-width: 100%;
	margin-top: 28px;
	border-radius: 15px;
}

.quiz_box .box_head{
	display:none;
	line-height: 1rem;
	padding: 2px 10px;
	top: -12px;
	left: 15px;
	color: #fdcb6e;
	background-color: #FFF;
	background: linear-gradient(180deg, #FFF 0%, #FFF 50%, #f8f8f8 50%, #f8f8f8 100%);
	text-shadow:3px 0 0 #fff,0 3px 0 #fff,-3px 0 0 #fff,0 -3px 0 #fff;
}

.box.quiz_box::after{
	content: "※問題が表示されない場合はページを再読み込みしてください";
	display: block;
	text-align: center;
}

/*Quiz And Survey MasterプラグインのCSS*/
.quiz_box .qsm-quiz-form .margin-bottom{
	margin: 0;
}

.quiz_box .qsm-quiz-form .qsm-btn{
	text-align: center;
	color: #FFF !important;
	background-color: #636e72 !important;
	border-radius: 30px;
}

.quiz_box .qsm-quiz-form .qmn_pagination{
	padding-bottom: 5px;
}

.quiz_box .qsm-results-page p{
	text-align: center;
	font-size: 0.8rem;
	margin: 0;
}

.quiz_box img{
	max-width: 100% !important;
	margin: 0 auto;
	display: block;
}

.quiz_box input[type="number"]{
	max-width: 100% !important;
	margin: 0 auto;
	display: block !important;
	border: solid 3px #DFE6E9 !important;
}

.quiz_box input[type=radio]{
		border: solid 3px #DFE6E9 !important;
}

/************************************
** コメント欄のデザイン
************************************/

.comment-list { /*全体の枠*/
	padding: 0;
	border-radius: 5px;
}

.commets-list {
	padding: 20px 20px 0 20px;
}
.commets-list > li {
	margin: 30px 0;
	padding-top: 20px;
}
.commets-list > li:first-child {
	border: none;
	margin-top: 0;
	padding-top: 0;
}
.commets-list .children {
	border-left: 2px solid #ccc; /*返信コメントの左側のボーダー*/
	margin: 0;
}
.commets-list .avatar { /*アバターの位置調整*/
	float: left;
	border-radius: 50%;
	margin-right: 10px;
}
.comment-content { /*コメントの吹き出し*/
	background: #e2e2e2;
	padding: 2px 10px;
	margin: 10px 0 6px 0;
	border-radius: 10px;
	position: relative;
}
.comment-content::before { /*吹き出しの三角部分*/
	content: "";
	position: absolute;
	top: -14px;
	left: 50px;
	border-style: solid;
	border-color: transparent transparent #e2e2e2 transparent;
	border-width: 0 20px 20px 0;
}
.comment-content p { /*吹き出し内の文字を調整*/
	font-size: 14px;
	margin: 1em 0;
	line-height: 1.5em;
}
.comment-reply-link { /*返信ボタンの装飾*/
	color: #fff;
	border: none;
	border-radius: 20px;
	background: #2C8BA8;
	padding: 1px 12px;
	transition: 0.5s;
}
.comment-reply-link:hover { /*返信ボタンのマウスホバー時*/
	color: #fff;
	background: #49add1;
	transition: 0.5s;
}
.commets-list .comment-body {
	margin-bottom: 0;
}

/* マーカーアニメーションのプラグイン削除に伴うCSS
------------------------------------------------- */
/*マーカーアニメーションのプラグイン用*/
.marker-animation{
	font-weight: bold;
	background:linear-gradient(transparent 60%, rgb(253, 203, 110) 60%) !important;
}

/*Cocoonの黄色アンダーラインマーカー*/
.marker-under {
	font-weight: bold;
	background: linear-gradient(transparent 60%, rgb(253, 203, 110) 60%);
}


/* YouTubeショート埋め込み用CSS
------------------------------------------------- */
.youtube iframe {
  position: relative;
  aspect-ratio:9 /16; /* ビデオの横/縦比 */
}

.youtube .video {
  height: 100%;
  margin: 0 auto;
  overflow: visible;
  padding-bottom: 0;
  width: 300px;   /* ビデオ横幅 */
}

/************************************
SARU統計カテゴリトップのデザイン
************************************
.category-93 #sidebar,
.category-93 .category-content{
    display: none !important;
}

.category-93 #container{
	background: #f1f1f1;
}

.category-93 #main {
    width: 100% !important;
    max-width: 100% !important;
    border: none !important;
	font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
	background: #f1f1f1;
}

.category-93 #breadcrumb,
.category-93 #breadcrumb a{
	color: #2c3e50;
}

.category-93 #menu-header-menu a{
	background-color: #2c3e50;
	color: #FFF;
}
	

.category-93 .home-logo {
    font-size: 3.5rem;
    font-weight: 800;
    color: #2c3e50;
    margin-bottom: 0.5rem;
    letter-spacing: 0.05em;
}

.category-93 .home-subtitle {
    font-size: 1.2rem;
    color: #7f8c8d;
    margin-bottom: 1.5rem;
    font-weight: 300;
    font-family: 'Helvetica Neue', Arial, sans-serif;
}

.category-93 .home-catchcopy {
    font-size: 1.1rem;
    color: #34495e;
    line-height: 1.8;
    margin-bottom: 3rem;
}
*/
/************************************
 * 新SARU統計アプリ：アプリ内表示の最適化
 * ?app_view 時のみ発動し、UIをアプリのパーツとして馴染ませます。
************************************/
.app-view-active .header,
.app-view-active .sidebar,
.app-view-active .footer,
.app-view-active .sns-share,
.app-view-active .breadcrumb,
.app-view-active .admin-panel,
.app-view-active .sidebar-menu-content,
.app-view-active #header-container,
.app-view-active #content-top,
.app-view-active #menu-header-mobile,
.app-view-active .article-footer,
.app-view-active .under-entry-content,
.app-view-active #go-to-top{
    display: none !important; /* 不要な要素を非表示 */
}

.app-view-active #content,
.app-view-active #main {
    margin: 0 !important;
    padding: 15px !important; /* モバイルやアプリ枠内での余白 */
    width: 100% !important;
    max-width: 100% !important;
    border: none !important; /* 枠線があれば消す */
}

/* 1. 左右のオレンジ色の背景や余白を完全に消し去る */
.app-view-active #container,
.app-view-active #content {
    background-color: #fff !important; /* 背景を白に強制 */
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* 2. 本文エリアの横幅を100%にして、オレンジ色が見えないようにする */
.app-view-active #main {
    width: 100% !important;
    margin: 0 !important;
    padding: 10px !important; /* スマホで見やすい最低限の余白だけ残す */
}

/* 3. body自体の背景も白にする（隙間対策） */
body.app-view-active {
    background-color: #fff !important;
    background-image: none !important; /* 背景画像があれば消す */
}

/* モバイル用ヘッダーボタンによる余白を強制リセット */
@media screen and (max-width: 1023px) {
    body.app-view-active:where(.mblt-header-mobile-buttons, .mblt-header-and-footer-mobile-buttons) {
        margin-top: 0 !important;
    }
}
/* 記事内のタイトルもアプリ側で出すなら消してもOK */
/* .app-view-active .article-header { display: none; } */