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

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

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

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

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

/* トップページのスタイルここから -------------------------------------------- */

/* 背景色を白にする（不要なら削除） */
body {
	background-color: #fff !important; /* 背景色を白に指定 */
}

/* トップページヘッダー・フッター非表示 */
.home .article-header,
.home .article-footer {
	display: none; /* トップページのヘッダーとフッターを非表示に */
}

/* セクションの余白設定 */
.section-wrap {
	padding-top: 5em; /* 上部の内側余白 */
	padding-bottom: 5em; /* 下部の内側余白 */
	margin-bottom: 0; /* 下部の外側余白 0（固定） */
}

/* 見出し ------------------------------------------------------------ */
.heading {
	text-align: center; /* 見出しを中央揃え */
	font-size: 5rem; /* 見出しの文字サイズ */
	color: #b5b5ae; /* 見出しの色を設定 */
	letter-spacing: 2px; /* 文字間隔を2px */
	line-height: 1.4; /* 行の高さを1.4倍 */
	font-weight: bold; /* 太字に設定 */
	position: relative; /* 基準点を設定 */
	padding-bottom: 1rem; /* 下部の内側余白を1rem */
	margin-bottom: 3rem; /* 下部の外側余白を3rem */
	font-family: "Poiret One", serif;
}

/*480px以下*/
@media screen and (max-width: 480px){
	.heading {
	font-size: 3rem; /* 見出しの文字サイズ */
	}
}

.heading span {
	display: block; /* サブ見出しをブロック要素化 */
	font-size: .9rem; /* サブ見出しの文字サイズ */
	font-weight: normal; /* サブ見出しを通常の太さに設定 */
}

/* 見出し下の線 */
.heading::after {
	display: block; /* 擬似要素をブロック要素に */
	content: ""; /* 内容を空に */
	width: 2.5rem; /* 線の幅を2.5rem */
	height: 1px; /* 線の高さを1px */
	border-radius: 10px; /* 線に丸みを追加 */
	background-color: #b5b5ae; /* 線の色を設定 */
	position: absolute; /* 位置を絶対配置に */
	bottom: 0; /* 下部の位置を基準に */
	left: 50%; /* 左から50%で中央揃え */
	transform: translateX(-50%); /* 中央寄せを調整 */
}

/* リンクボタン---------------------------------------------- */

/* ボタンの配置 */
.link-btn {
	display: block; /* ボタンをブロック要素に */
	text-align: center; /* ボタン内のテキストを中央揃え */
}

/* ボタンのスタイル */
.link-btn a {
	display: inline-block; /* インラインブロック要素 */
	border: 1px solid #b5b5ae; /* ボタンの枠線（色はグレー） */
	color: var(--cocoon-text-color); /* 文字色 */
	width: auto; /* ボタンの幅を自動調整 */
	min-width:300px; /*ボタンの最小幅*/
	padding: .7em 3em; /* 内側余白*/
	text-decoration: none; /* 下線を削除 */
	border-radius: 0; /* 角の丸みを0 */
	transition: .3s all; /* 変化をスムーズに */
	position: relative; /* 起点設定 */
}

/* 834px以下のボタン幅調整 */
@media screen and (max-width: 834px) {
	.link-btn a {
		min-width: 100%; /* モバイルでの最小幅を100%に */
	}
}

/* 矢印のスタイル */
.link-btn a:after {
	content: ''; /* 擬似要素の内容を空に */
	border-bottom: 1px solid var(--cocoon-text-color); /* 下矢印の線 */
	border-right: 1px solid var(--cocoon-text-color); /* 右矢印の線 */
	width: 15px; /* 矢印の幅 */
	height: 3px; /* 矢印の高さ */
	transform: skewX(45deg); /* 45度傾斜 */
	position: absolute; /* 位置を絶対配置に */
	right: 20px; /* 右から20pxに配置 */
	bottom: 50%; /* 下から50%の位置 */
	transition: .3s all; /* 変化をスムーズに */
}

/* ホバー時の変化 */
.link-btn a:hover {
	--link-btn-color: #b5b5ae; /* ホバー時のボタン色 */
	background-color: var(--link-btn-color); /* 背景色を変化 */
	border-color: var(--link-btn-color); /* 枠線色を変化 */
	color: var(--cocoon-white-color); /* 文字色を白に */
}

/* 矢印のホバー効果 */
.link-btn a:hover:after {
	border-color: var(--cocoon-white-color); /* 矢印色を白に */
	right: 15px; /* 矢印の位置を左へ少し移動 */
}

/* 記事カードの最大幅設定 --------------------------------------------- */
.widget-entry-cards.card-large-image .a-wrap {
	max-width: 600px; /* 最大幅を600pxに制限 */
	width: 100%;/*カード幅を揃える*/
}

/* サムネイル（大）記事を横並びにする(grid)------------------------------------------ */
.widget-entry-cards.large-thumb {
	display: grid; /* グリッドレイアウトを適用 */
	justify-items: center; /* アイテムを中央揃え */
	gap: 16px; /* アイテム間の隙間を16pxに */
}

/* 新着記事サムネイルのグリッド */
.new-entry-cards.large-thumb {
	grid-template-columns: repeat(3, 1fr); /* 3列で均等に分配 */
}

/* 人気記事サムネイルのグリッド */
.popular-entry-cards.large-thumb {
	grid-template-columns: repeat(3, 1fr); /* 3列で均等に分配 */
}

/* 834px以下のグリッド設定 */
@media screen and (max-width: 834px) {
	.new-entry-cards.large-thumb {
		grid-template-columns: 1fr; /* 1列に配置 */
		gap: 0; /* 隙間を0に */
	}
	.cate .new-entry-cards.large-thumb,
	.popular-entry-cards.large-thumb {
		grid-template-columns: repeat(2, 1fr); /* 2列に分配 */
		gap: 0; /* 隙間を0に */
	}
}

/* モバイルでのタイトル文字サイズ調整 */
@media screen and (max-width: 834px) {
	.cate .large-thumb .new-entry-card-title,
	.popular-entry-card-title {
		font-size: 14px !important; /* タイトル文字を小さく */
	}
}

/* タブ切り替え---------------------------------------------- */

/* タブコンテナの設定 */
.tab-switch {
	--active-tab-color: #b5b5ae; /* 選択タブの色はここで指定 */
	display: flex; /* タブを横並びに */
	flex-wrap: wrap; /* 幅に応じて折り返し */
	max-width: 100%; /* コンテナの最大幅 */
	margin: auto; /* 中央寄せ */
	justify-content: center; /* 中央揃え */
	gap: 10px 5px; /* タブ間の隙間 */
}

/* タブボタンのスタイル */
.tab-switch > label {
	order: -1; /* コンテンツより上に表示 */
	position: relative; /* 起点 */
	padding: .7em 1em; /* 内側余白 */
	border-bottom: 1px solid var(--active-tab-color); /* 下ボーダー */
	color: var(--active-tab-color); /* 文字色 */
	text-align: center; /* テキスト中央揃え */
	cursor: pointer; /* ポインタ表示 */
	transition:.3s all;/* ゆっくり変化 */
}

/* タブのホバーと選択時のスタイル */
.tab-switch > label:hover,
.tab-switch label:has(:checked) {
	background-color: var(--active-tab-color); /* 背景色を変化 */
	color: #fff; /* 文字色 */
}

/* 選択タブの下三角形 */
.tab-switch label:has(:checked)::before {
	position: absolute; /* 三角形位置を絶対配置 */
	bottom: -8px; /* 下からの位置 */
	left: 50%; /* 中央寄せ */
	transform: translateX(-50%); /* 中央寄せを調整 */
	width: 18px; /* 三角形の幅 */
	height: 9px; /* 三角形の高さ */
	background-color: var(--active-tab-color); /* 三角形色 */
	content: ''; /* 内容なし */
	clip-path: polygon(0 0, 100% 0, 50% 100%);  /* 三角形の形 */
}

/* ラジオボタン非表示 */
.tab-switch input {
	display: none; /* 非表示 */
}

/* タブのコンテンツエリア */
.tab-switch > div {
	display: none; /* 初期非表示 */
	width: 100%; /* 幅設定 */
	padding: 1.5em 0; /* 内側余白 */
}

/* 選択されたタブの内容表示 */
.tab-switch label:has(:checked) + div {
	display: block; /* チェック時に表示 */
}

/* トップページのスタイルここまで -------------------------------------------- */

/*ふわっと出てくる*/
	.fadein {
	opacity: 0;
	transform: translateY(30px);
	transition-property: transform, opacity;
	transition-duration: 2.0s;
	transition-delay: 0s;
}

.fadein.is-active {
	opacity: 1;
	transform: translateY(0);
}


/************************************
** 全画像のホバー時エフェクト処理
************************************/
a:hover img{
  filter: brightness(0.8);
  transition: all 0.8s ease; /*アニメーション*/
}

/************************************
** スクロールダウンアニメーション
************************************/
/* スクロールダウンの位置 */
.scroll {
  padding-top: 60px;
  position: relative;
  text-align: center;
}
/* 矢印のアニメーション部分 */
.scroll::before {
  animation: scroll 2s infinite;
  border-bottom: 1px solid #FFF;
  border-left: 1px solid #FFF;
  content: "";
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}
/* 矢印のアニメーション */
@keyframes scroll {
  0% {
    opacity: 0;
    transform: rotate(-45deg) translate(0, 0);
  }
  40% {
    opacity: 1;
  }
  80% {
    opacity: 0;
    transform: rotate(-45deg) translate(-20px, 20px);
  }
  100% {
    opacity: 0;
  }
}
/* フルワイド ---------------------------------------------- */

/* スクロールバーの幅分調整 */
html, body {
  overflow-x: clip; /* 要素からはみ出た部分を切り取る*/
}

/* フルワイド幅 */
body .full-wide {
  margin: 0 calc(50% - 50vw);  /* 左右の外側余白を調整 */
  padding: 0 calc(50vw - 50%); /* 左右の内側余白を調整 */
  padding-top:5em; /*内側の上余白*/
  padding-bottom:5em;/*内側の下余白*/
}
/*スクロールバーの幅分調整*/
html, body {
	overflow-x: clip; /*要素からはみ出た部分を表示しない*/
}
/*アピールエリアの高さを調整*/
@media screen and (max-width: 600px) {
#appeal {
  min-height:600px; /* 最低の高さを600pxに指定 */
}
}

/* 矢印の配置---------------------------------------------- */
/*矢印のスタイル*/
.arrow-down span{
	display: block;
	line-height: 1;
	width: 1em;/*矢印の幅*/
	height: 1em;/*矢印の高さ*/
	border: 1px solid black;/*矢印の太さ、色*/
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	transform: translateY(-25%) rotate(135deg);/*矢印の傾き*/
}

/*Scrollの文字*/
.arrow-scroll{
	display: block;
	position: absolute;/*矢印を配置する*/
	bottom:5em;/*下からの位置*/
	left: 50%;/*中央寄せにする*/
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	font-size:14px;
}

/*アニメーション追加*/
.arrow-anime{
	animation: arrow-move 2s ease infinite;/*2秒かけて永遠にループ*/
}

/*高さ・透過が変化して線が上から下に動く*/
@keyframes arrow-move{
	0%{
		transform: translateY(-50px);
		opacity: 1;
	}
	100%{
		transform: translateY(0px);
		opacity: 0;
	}
}

/* カテゴリーのアイキャッチラベル非表示 --------------------------------------- */

.cat-label {
display: none;
}

/*カテゴリーやタグページの見出し*/
.archive-title {
  color: #5f5f5f;
  text-align: center;
  font-family: 'Baloo Thambi 2', noto sans jp;
  font-size: 18px !important;
  margin-left: -10px;
}
.archive-title :before {
  display: none;
}
/*カテゴリーアイキャッチフルワイド*/
.category .eye-catch-wrap{
    margin-left: -1.7em;
    margin-right: -1.7em;
    max-width: none;
    width: auto;
}

/* サイドバー見出し */
.sidebar h3 {
	background:transparent; /* Cocoon親テーマCSSリセットのため */
	padding: 8px 0px;
	border-bottom: 2px #abbaa9 dotted; /* ドット下線追加 */
	color: #5C5859;/*文字色*/
	letter-spacing: 0.2em; /* 字間を広げる */
}

/* サイドバー目次 */
#sidebar .toc{
margin-top: 4em;/*枠の上の余白*/
margin-bottom: 2em;/*枠の下の余白*/
padding: 1em 1.5em;/*枠の中の余白*/
border: 1px solid #c1d1e0;/*枠線の太さ・種類・色*/
border-radius: 2px;/*枠線の角の丸み*/
}
.widget-sidebar ul li a {
font-size: 0.9em;
}

/* プロフィール名*/
.nwa .author-box .author-name {
font-size: 0.9em;
}

/* 名前 */
.author-box .author-name {
	margin-bottom: 1em;
}
.author-box .author-content .author-name a{
	color: #5C5859; /* リンク色にしない */
	text-decoration: none; /* 下線をなくす */
	letter-spacing: 0.1em; /* 字間を広く */
}

/* プロフィールの枠線を外す*/
.author-box .sns-follow-buttons a.follow-button {
  background-color: #fff;
    color:black;
  border: 0px;
}
.author-box {
  border: 0px;
}
/* プロフィール説明文 */
.nwa .author-box .author-description {
font-size: 0.9em;
}
.author-description p{
	margin: 0, 0 0.1em 0;
	text-align: left;
	line-height: 1.5;
}

/* 下側 */
.nwa .author-box .author-content {
	padding: 1em 0;
}

/* SNSアイコン */
.author-box .sns-follow-buttons a.follow-button{
  width: 60px;
  height: 60px;
  font-size: 40px;
} 