@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
*/

/*アドミンバーを半透明に*/
#wpadminbar {
	background: rgba(29, 35, 39, 0.8);
}

body.single .entry-content > p:first-child img {
	display: none;
}

body:not(.wp-admin) .wrap {
	max-width: 768px;
}

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/
@font-face {
	font-family: 'fontserif';
	src: url('./KaiseiOpti_kanjikatakana.woff2') format('woff2');
	font-display: swap;
}
:root {
	--color_key: #37586B;
	--color_sub: #C7DFAD;
	--color_link: #2CA6E0;
	--color_font: #333;
	--color_shadow: 0px 6px 4px -2px rgba(0,0,0,0.3);
	--font_serif: "fontserif", serif;
}
/*ページのゆらゆらを防止*/
body.home #content,
body[class*="scrollable-sidebar"] #main {
	overflow-x: hidden;
}
/*リンク*/
a,
a:hover {
	color: var(--color_link);
	line-height: 1.5;
	outline: unset;
	/*text-decoration: unset;*/
	text-underline-offset: 2px;
}
a[href*="https://sgiga.com/to"]::after {
	font-family: 'Font Awesome 5 Free';
		content: '\f35d';
		font-weight: 900;
	margin: 0 0.3em;
	font-size: 0.5em;
}
/*リンク背景色を無効化（メニューやサイドバー）*/
.cf a:hover {
	background: none;
}
/*外部リンクアイコン*/
.anchor-icon::before {
	font-size: 0.6em;
}
/*[href^="https://sgiga.com"] .anchor-icon::before {
	content: none;
}*/


/*--------------------------------
	ヘッダー
--------------------------------*/
/*ロゴ*/
@media screen and (min-width: 835px) {
	#header-container {
		padding-top: 8px;
	}
}
#header .logo {
	text-align: unset;
	padding: 0 8px;
}
#header .site-name-text,
#footer .site-name-text {
	font: normal 1.7em var(--font_serif);
	padding-left: 0.1em;
}



/*--------------------------------
	フロントページ
--------------------------------*/
/*フロント固定ページのタイトルを非表示*/
.home.page .entry-title{
	display: none;
}
/*フロント固定ページの日付を非表示*/
.home.page .entry-title,
.home.page .post-date,
.home.page .post-update,
.home.page .author-info {
	display: none;
}
.home.page a {
	text-decoration: unset;
}
.home.page h2 {
	background: transparent;
	font: normal 23px var(--font_serif);
	text-align: center;
	padding: unset;
	margin-top: unset;
}
.home.page h2,
.home.page h2::before {
	border: unset;
	background: transparent;
}
.home.page .column-wrap:first-of-type [class^="column-"] {
	background: #F8F8F8;
	line-height: 1.4;
	padding:4px 4px 16px;
}
.home.page .column-wrap:first-of-type a {
	border: 1px solid var(--color_link);
	border-radius: 32px;
	padding: 0.1em 1em;
}





/*--------------------------------
	SNSボタン
--------------------------------*/
.sns-share-buttons .button-caption {
	display: none !important;
}
.sns-share-buttons [class$="share-button-sq"] {
	background-color: transparent !important;
}
.sns-share-buttons a {
	color: var(--color_font) !important;
	width: unset !important;
}








/*--------------------------------
	Cocoon スタイル > インライン
--------------------------------*/
/*em*/
em {
	
}
/*赤色の修正（赤字、太赤字）*/
.red {
	color: #FB5742;
}
/*赤アンダーライン = コード*/
.red-under,
code:not(pre code) {
	background: transparent;
	border: solid 1px lightgray;
	border-radius: 3px;
	font-family: var(--font_mono);
	padding: 0.1em 0.2em;
	margin: 0 0.2rem;
}
/*青 = 小文字*/
.blue {
	color: var(--color_font);
	display: inline-block;
	font-size: 12px;
	line-height: 1.2em;
}
/*青太字 = 大文字*/
.bold.blue {
	display: inline-block;
	color: var(--color_font);
	display: inline-block;
	font-size: 1.4em;
	line-height: 1.2em;
	padding: 0.5rem 0;
}



/*--------------------------------
	ボックス
--------------------------------*/
/*引用・blockquote*/
blockquote {
	background-color: transparent;
	/*border: unset;*/
	padding: 0.6em;
}
blockquote > *:not(:last-child) {
	margin-bottom: 1rem !important;
}
blockquote::before {
	color: var(--color_font);
	font-size: 4rem;
	line-height: 0;
    left: -7px;
    top: 15px;
}
blockquote::after {
	color: var(--color_font);
	font-size: 4rem;
	line-height: 0;
    right: -7px;
    bottom: -23px;
}
/*スタイル > ボックス（案内） > プライマリー*/
.primary-box {
	background: #f5f6f7;
	border: 1px dashed var(--color_key);
	color: inherit;
	padding: 0.5em;
}
.secondary-box {
	position: relative;
	background: transparent;
	border: 1px solid var(--color_key);
	padding: 0.5rem;
}
.secondary-box > p:first-child {
	position: absolute;
	background: #FFF;
	border: unset;
	color: var(--color_key);
	font-weight: bold;
	line-height: 1;
	padding: 0.5rem;
	margin-bottom: 0.5rem;
	top: -1.4rem;
}
.success-box {
	background: #F9F7F1;
	color: inherit;
	padding: 0.5em;
}


/*--------------------------------
	スピーチバルーン
--------------------------------*/
div.speech-balloon {
	border-width: 2px;
	border-radius: 16px;
	color: #777;
}


/*--------------------------------
	カード
--------------------------------*/
/*ブログカードの装飾*/
.blogcard {
	border: unset;
	padding: unset;
}
/*カテゴリーラベルを非表示*/
.cat-label {
	display: none;
}
.blogcard-wrap {
	margin: unset;
	padding: unset;
	width: unset;
}
/*内部ブログカード*/
.internal-blogcard-wrap {
	max-width: 440px;
}
.internal-blogcard {
	border: unset;
	border-radius: 4px;
	box-shadow: 0px 2px 6px rgba(0,0,0,0.1);
	padding: 0.5rem;
	word-wrap: break-word;
	position: relative /*続きを読むボタン用*/;
}
.internal-blogcard-title {
	color: var(--color_key);
	font-family: var(--font_serif);
	font-weight: normal;
}
.internal-blogcard-snippet {
	display: none;
}
/*カードのサムネイル画像の大きさを調整
エントリー・関連・新着・人気に共通*/
[class*='card-thumb'] {
	margin: 0 8px 0 0;
	width: 100px !important;
	height: 100px !important;
}
[class*='card-content'] {
	margin: 0;
	padding: 0;
}
[class*='card-title'] {
	font-size: initial;
	line-height: 1.5;
	margin: 0 0 0.5em 0;
}
[class*='card-snippet'] {
	color: #4d5156 !important;
	font-size: 0.95em;
	line-height: 1.5;
}
@media screen and (max-width: 560px){
	[class*='card-title'] {
		font-size: 0.95rem;	
	}
	[class*='card-snippet'] {
		display: none;
	}
}
/*カードのフッター部分の隙間を削除*/
[class*='card-footer'] {
	padding: unset;
}
/*タイトルリンクの装飾*/
.tx {
	display: block;
}
.tx::before {
	content: "≫";
	margin-right: 0.5rem;
}



/*--------------------------------
	エントリーカード
--------------------------------*/
.entry-card-wrap {
	border: none;
	border-radius: 4px;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.1);
	margin-left: 16px;
	margin-right: 16px;
}
.entry-card-title {
	font-family: var(--font_serif);
	font-weight: normal;
	font-size: 1.1em;
}
[class*='card-snippet'] {
	font-size: 0.9em;
}






/*--------------------------------
	トピッククラスターtagposts
--------------------------------*/
.entry-content .tagposts {
	/*border: 1px solid var(--color_link);
	border-radius: 4px;
	padding: 0.5em;*/
	margin-top: 3rem;
}
.entry-content .tagposts-title {
	display: inline-block;
	font: 1.4em var(--font_serif);
}
.entry-content .tagposts-title::before {
	content: "ついでに知っておきたい知識";
}
.entry-content .tagposts .tx {
	display: block;
	margin-top: 0.5em;
}
.entry-content .tagposts .tx::before {
	content: "≫";
	margin-right: 0.25em;
}


/*--------------------------------
	ボタンリンク
--------------------------------*/
.buttonlink {
	text-align: center;
}
.buttonlink a {
	display: block;
	box-shadow: 0px 6px 4px -2px rgba(0,0,0,0.3);
	background: linear-gradient(to bottom, #8ECDF7 20%, #177CC0 100%) !important;
	border: 1px solid #1D9BF0;
	border-radius: 8px;
	color: #FFF !important;
	font: normal 0.9em sans-serif;
	text-align: center;
	text-decoration: unset;
	padding: 0.5em 1.5em;
	margin-left: auto;
	margin-right: auto;
}
@media screen and (min-width: 481px){
	.buttonlink a {
		width: 70%;
	}
}



/*--------------------------------
	フッター
--------------------------------*/
/*ロゴをセンターに*/
.footer-bottom-logo {
	float: none;
	position: static;
}
.footer-bottom-logo .logo-image {
	margin: 0 auto;
}
/*クレジットをセンターに*/
.footer-bottom-content {
	float: none;
    text-align: center;
}



/*--------------------------------
	Q&A
--------------------------------*/
/*Qにh3見出しを使う場合*/
.qa > h3 {
	padding: unset;
	font-family: var(--font_serif);
	font-weight: normal;
}
.qa > h3::before {
	content: "Q.";
	color: var(--color_key);
	font: 1.2em serif;
	margin-right: 0.5em;
}
.qa > h3+p::before {
	content: "A.";
	color: var(--color_sub);
	font: 1.6em serif;
	margin-right: 0.5em;
}
.qa h3::after {
	background: transparent;
}







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

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

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