@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Template:   cocoon-master
Version:    1.0.7
*/

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

/*Webフォント読込*/
/* Generated by Font Squirrel (https://www.fontsquirrel.com) on March 27, 2017 */
@font-face {
	font-family: 'Mikodacs';
	src: url('./fonts/mikodacs-fmac-webfont.eot');
	src: local('Mikodacs'), url('./fonts/mikodacs-fmac-webfont.eot?#iefix') format('embedded-opentype'),
		url('./fonts/mikodacs-fmac-webfont.woff2') format('woff2'),
		url('./fonts/mikodacs-fmac-webfont.woff') format('woff'),
		url('./fonts/mikodacs-fmac-webfont.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}
*:first-child+html #header > div{
	/* IE7 */
	clear: both;
	zoom:1;
}
html {
	font-size: 62.5%;
	height: 100%;
}

body{
	background-color:#fff;
}

#body,#footer,#sidebar,#navi,#pager-post-navi,h1,h2,h3,.card-title,.card-meta,.date-tags,.cat-label,.breadcrumb,.internal-blogcard-wrap .blogcard-title,.internal-blogcard-wrap .blogcard-footer,.comment-outhor,.comment-meta,.wpcf7 {
	font-family: 'Mikodacs',“游ゴシック”, YuGothic, “ヒラギノ角ゴ ProN W3”, “Hiragino Kaku Gothic ProN”, “メイリオ”, Meiryo, sans-serif;
}
h2,h3,.card-title,.card-meta,.cat-label,.breadcrumb,.internal-blogcard-wrap .blogcard-title,.internal-blogcard-wrap .blogcard-footer,.comment-outhor,.comment-meta,.wpcf7 {
	letter-spacing:-0.02rem;
}
.recent-comment-content {
	font-family: initial;
}
.wpcf7 {
	font-weight:900;
}
.header{
	height:120px;
}
.header-in{
	padding-left:16px;
}
.header .logo {
	text-align:left;
}
.logo-text{
	padding:20px 0 8px;
}

#header .site-name-text {
	display:block;
	color: #000;
	font-family: Mikodacs;
	font-size: 40px;
	font-size: 4.0rem;
	-webkit-font-smoothing: antialiased;
	margin: 0;
	margin-top:-0.6em;
	padding: 0;
	line-height: 0.7em;
	z-index: 300;
	text-shadow: 2px 2.5px 2px #666;
	-webkit-box-reflect: below 38px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 30%,rgba(0,0,0,0.09));
	-ms-box-reflect: below 38px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 30%,rgba(0,0,0,0.09));
}
.tagline {
	text-align:left;
	display:block;
	color: #000;
	font-family: Mikodacs;
	font-size: 16px;
	font-size: 1.6rem;
	-webkit-font-smoothing: antialiased;
	margin-top: -2.8em;
	margin-left: 0.5px;
	padding: 0;
	text-shadow: 2px 2.5px 2px #666;
	-webkit-box-reflect: below -11px -webkit-linear-gradient(top,rgba(0,0,0,0.13),rgba(0,0,0,0) 0%,rgba(0,0,0,0.3));
	-ms-box-reflect: below -11px -webkit-linear-gradient(top,rgba(0,0,0,0.13),rgba(0,0,0,0) 0%,rgba(0,0,0,0.3));
}

/*カルーセル*/

.carousel-content{
	padding:0 20px;
}

.carousel-entry-card-content{
	position:relative;
	height:60px;
	top:-66px;
	margin:1px;
	margin-bottom: -62px;
	color:#fff;
	background: rgba(0,0,0,0.6);
}

.carousel-entry-card-title{
	margin:0;
	/*padding:4px 0 4px 4px;*/
	padding:8px;
	max-height:initial;
	height:100%;
}

.slick-prev{
	border-radius:50%;
	background-color:#000 !important;
	width:25px;
	height:25px;
}
.slick-prev:hover{
	opacity:0.8 !important;
}
.slick-prev:active{
	background-color:#fff !important;
}
.slick-next{
	border-radius:50%;
	background-color:#000 !important;
	width:25px;
	height:25px;
}
.slick-next:hover{
	opacity:0.8 !important
}
.slick-next:active{
	background-color:#fff !important;
}
	
.main,.sidebar{
	padding:30px 39px !important;
}

#main .ad-area{
	/*padding:0 19px;*/
	padding:0;
	margin-left:20px;
	margin-right:20px;
}

/*エントリーカードの1番目*/
.ec-big-card-first{
	width:calc(100% - 1px) !important;
}
/*エントリーカードの1番目*/
.ec-big-card-first img{
	height:225px;
}


/*トップページの各リストタイトル*/
.list-title{
	font-size:48px;
	margin-top:1em;
	margin-bottom:0;
	text-align:left;
	letter-spacing:-0.08rem;
}

.list-title-in{
	padding-left:20px;
}

.list-title-in:before, .list-title-in:after {
    content:initial;
    position:initial;
    top:initial;
    display:none;
    width:initial;
    height:initial;
    background-color:initial;
}

img{
	border:solid 1px #eee;
}
.a-wrap{
	padding:2.5%;
}

.cat-label{
	font-size:12px !important;
}

.sub-caption{
	font-size:12px;
}

/*moreボタン*/
.list-more-button-wrap{
	padding:0 19px;
}
.list-more-button{
	background-color:#000;
	color:#fff;
	border:none;
	width:100%;
	border-radius:0;
}

/*フッター*/

#footer a:hover {
	color:#ccc;
}

/*固定ページで投稿日・更新日を非表示*/
.page .date-tags {
 display: none;
}

.width50{
	width:50%;
}

/*insタグ*/
.entry-content ins:before {
 content: "追記";
 display: block;
 font-weight: 900;
 width: 100%;
 border-bottom: solid 1px #ccc;
 -webkit-font-smoothing: antialiased;
 text-shadow: 2px 2.5px 2px #666;
}
.entry-content ins {
 display: block;
 text-decoration: none;
 border: solid 1px #ccc;
 padding: 10px;
}

.avatar {
webkit-border-radius: 50%;
-moz-border-radius: 50%; 
-ms-border-radius: 50%; 
-o-border-radius: 50%; 
border-radius: 50%;
border:solid 1px #ddd;
}

/*CrayonSyntaxHighlighter*/
/*.crayon-nums {
	position:sticky;
	left:0;
}
*/
.urvanov-syntax-highlighter-syntax .crayon-table{
	max-width:initial;
}
/*シェアボタン
===================================*/
.sns-share-message{
    font-weight: bold;
    color: #499eda;
}
.sns-share-buttons {
    justify-content: center;
}
.sns-share-buttons a, .sns-follow-buttons a{
    width: 40px !important;
    height: 40px;
    border-radius: 50%;
    margin: 6px;
}
.button-caption{
    display:none;
}

.facebook-share-count, .hatebu-share-count, .pocket-share-count, .feedly-follow-count {
	padding-top:2px;
	width:15px;
	height:15px;
	border-radius:50%;
	/*margin:2px;*/
	background-color:#fff;
	color:#ccc;
	top:27px;
	left:27px;
	filter: drop-shadow(1px 1px 1px rgba(0,0,0,0.3));
}

/************************************
** 折り畳みアーカイブウィジェット
************************************/
.widget_archive a.year{
  cursor: pointer;
}

.widget_archive .years ul {
  /*-webkit-transform: translateY(0%) rotate(0deg);
    -ms-transform: translateY(0%) rotate(0deg);
    transform: translateY(0%) rotate(0deg);*/
    transition: transform .3s;
	opacity: 3;
  margin: 0;
  margin-bottom: 1em;
}

#sidebar .widget_archive ul.years li,#sidebar .widget_categories ul li {
  margin-bottom: 0;
	font-size:20px;
	font-size:2.0rem;
	line-height:1.5em;
	padding-left:12px;
}
/*
.widget_archive ul.year .hide {
  margin: 0;
  height: 0;
  opacity: 3;
  //visibility: hidden;
	//display:none;
}
*//*
.widget_archive ul.years .hide {
	display:none;
}
*/
/*PageSpeed Insightsのユーザーエクスペリエンス対策*/
@media screen and (max-width:639px){
	#sidebar .widget_archive ul.years li a{
		margin-bottom: 8px;
	}
}

.admin-pv{
	text-align: right;
}
.admin-pv > span{
	margin: 0 5px;
	padding: 0 3px;
}

.widget-entry-card-pv {
	display:inline-block;
}

#sidebar .widget_categories ul li a .post-count {
	display:inline-block;
	float:none;
}

#sidebar .widget_categories ul li ul li a .post-count {
	float:right;
}
/*モバイルヘッダーメニュー*/
.search-menu-button.menu-button,
.navi-menu-button.menu-button,
.logo-menu-button.menu-button{
	background-color: #fff;
	color: #000;
	font-family: 'Mikodacs';
}
.search-menu-button.menu-button,
.navi-menu-button.menu-button{
	font-size:24px;
	font-size:2.4rem;
}
.logo-menu-button.menu-button{
	font-size:24px;
	font-size:2.4rem;
	letter-spacing:-0.08rem;
	-webkit-font-smoothing: antialiased;
	text-shadow: 1.6px 1.6px 1.6px #777;
	-webkit-box-reflect: below 22px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 30%,rgba(0,0,0,0.09));
	-ms-box-reflect: below 22px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 30%,rgba(0,0,0,0.09));
}
/* モバイルフッターメニューをヘッダー固定にする 
===========================================*//*
.mobile-menu-buttons {
    min-height: 40px;
    top: 0; bottom: auto;
    padding-bottom: 0;
    align-items: stretch;
    transition: .3s;
}
.mobile-menu-buttons .menu-button .menu-button-in {
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
}*/
/* #homeをタイトル画像に */
/*.mobile-menu-buttons .home-menu-button>a  {
    min-width: 200px;
    background: 50% 50%/contain no-repeat;
    background-image: url('画像URL');
    margin: 0 auto;
}*/
/* 文字やアイコンを非表示 *//*
.mobile-menu-buttons .search-menu-caption,
.mobile-menu-buttons .home-menu-caption, 
.mobile-menu-buttons .home-menu-icon {
    display: none;
}*//*
@media screen and (max-width: 1023px) {
    .mobile-button-slide-in {
        margin-top:40px;
    }
	[id^="toc"]:target { 
        padding-top: 60px;
        margin-top: -60px;
    }
	:target {
        animation: modify 0.1s;
    }
}*/

/* ページ内リンクの位置を調整する *//*
@keyframes modify {
    from { padding-top: 60px; margin-top: -60px; }
    to { padding-top: 0; margin-top: 0; }
}

.admin-bar .mobile-menu-buttons{
	top: 35px;  
}

.admin-bar .mobile-button-slide-in {
        margin-top:0px;
    }

@media screen and (max-width: 782px) {
	.admin-bar .mobile-menu-buttons{
		top: 47px;
	}
}*/


/*カスタムブロックスタイル*/
/*ツリー構成図リストスタイル*/
/*ul.is-style-default {
	list-style-type: disc;
}*/
.is-style-tree {
	list-style-type: none;
	display:block;
	position:relative;
	background-color:#eee;
	/*background-color:#000;
	color:#fff;*/
	padding:30px;
	border:solid 1px #ccc;
	font-size:12px;
}

.is-style-tree li {
	/*line-height: 21px;*/
	margin: 0 !important;
}

.is-style-tree ul {
	display:block;
	position:relative;
	/*padding:0;*/
	padding-left:21px;
	/*padding-inline-start: 21px;*/
	/*margin: 0;*/
	/*margin-bottom: 10px !important;*/
}
 
.is-style-tree ul:before {
	content:"";
	position:absolute;
	top:-2px;
	bottom:0;
	left:-20px;
	width:0;
	border-left: 1px solid gray;
	/*border-left: 1px solid #fff;*/
	margin-left:24px;
}
 
.is-style-tree ul li {
	display:block;
	position: relative;
}
 
.is-style-tree ul li:before {
	content: "";
	position: absolute;
	top: 10px;
	bottom: 0;
	left: -17px;
	width: 14px;
	height: 0;
	border-top: 1px solid gray;
	/*border-top: 1px solid #fff;*/
}
 
.is-style-tree ul li:last-child:before {
	height: auto;
	background-color: #eee;
	/*background-color: #000;*/
}

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

/*1030px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
	.main,.sidebar{
		margin:0 !important;
	}
	.a-wrap{
		padding:1.5%;
	}
	.ad-area{
		/*margin-left:5px;*/
		margin-right:11px;
		margin-bottom:1.0em;
		/*padding-left:1.5% !important;*/
	}
}

/*768px以下*/
@media screen and (max-width: 768px){
  /*必要ならばここにコードを書く*/
	.main,.sidebar{
		padding:30px 20px !important;
	}
	.ad-area{
		margin-left:3px !important;
		/*margin-right:30px;*/
		margin-bottom:1.0em;
		/*padding-left:1.5% !important;*/
	}
	.ad-index-top{
		margin-right:6px !important;
	}
	.ad-index-bottom{
		margin-right:30px !important;
	}
	.ad-sidebar-top{
		margin-right:30px !important;
	}
	.header{
		height:124px;
	}
	#header .site-name-text {
		font-size: 35px  !important;
		font-size: 3.5rem !important;
		line-height: 0.5em !important;
		margin-top:-0.3em;
		-webkit-box-reflect: below 34px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 30%,rgba(0,0,0,0.09));
		-ms-box-reflect: below 34px -webkit-linear-gradient(top,rgba(0,0,0,0),rgba(0,0,0,0) 30%,rgba(0,0,0,0.09));
	}
	.tagline{
		font-size:14px !important;
		font-size:1.4rem !important;
		margin-top:-3.0em;
	}
	/*#sidebar .ad-area,#sidebar .widget{
		padding:0 19px !important;
	}*/
	/*.sidebar{
		padding:30px 10px !important;
	}*/

	/*#main>.ad-area{
		padding:0;
	}*/

	.list-title{
		font-size:42px;
	}
	.list-title-in{
		padding-left:1.5%;
	}
	.list-more-button-wrap{
		padding:0 1.5%;
	}
	.carousel-content{
		padding:0 0.75%;
	}
	.carousel-content .a-wrap{
		padding:0 !important;
	}
	.carousel-entry-card-content{
		height:45px;
		top:-50px;
		margin-bottom: -47px
	}
	.carousel-entry-card-title{
		font-size:12px;
		padding:4px;
	}
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
	.logo-text{
	padding:20px 0 15px !important;
    }
	.carousel-entry-card-content{
		top:-49px;
	}
		/*エントリーカードの1番目*/
	.ec-big-card-first img{
		height:120px;
	}
	.entry-card-title{
		font-size:14px;
		margin:1.5% 0;
		line-height:1.3em;
		/*letter-spacing:-0.04rem;*/
	}
	/*.carousel-entry-card-title{
		font-size:14px;
	}*/
}
