@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){
  /*必要ならばここにコードを書く*/
}

/* アピールエリアカスタマイズ ---------------------------------------------- */

/* ヘッダー（トップページのみ固定） ---------------------------------------- */
.front-top-page .header-container {
	position: fixed; /* ヘッダーを固定 */
	z-index: 9; /* 最前面に表示 */
	width: 100%; /* 幅を100%に */
}

.front-top-page .header-container,
.front-top-page .navi,
.front-top-page .navi-in a:hover {
	background-color: #ffffff; /* 背景色を初期化 */
}


/* アピールエリア ---------------------------------------------------------- */
.appeal {
	height: 100svh; /* 高さを画面いっぱいに */
	background-size: cover; /* 背景画像をフィット */
}

.appeal-in {
	height: 100%; /* 高さを親に合わせる */
	width: 100%; /* 幅を親に合わせる */
	background-color: rgb(255 255 255 / .3); /* 白の半透明 */
	backdrop-filter: blur(5px); /* 背景をぼかす */
}

/* コンテンツエリア */
.appeal-content {
	background-color: initial; /* 背景色を初期化 */
}


/* 中央下に表示されるスクロール誘導の矢印 ------------------------------- */

/* 矢印全体の親要素 */
.arrow-container {
	position: absolute; /* 固定配置 */
	bottom: 3em; /* 下端からの位置 */
	left: 50%; /* 左端から50% */
	transform: translateX(-50%); /* 中央寄せ */
	text-align: center; /* 中央揃え */
}

/* 矢印にアニメーションを適用 */
.arrow-down-1 {
	animation: arrow-move 2s ease infinite; /* ループアニメーション */
}

/* 矢印の形状 */
.arrow-down-1 span {
	display: block; /* ブロック要素に */
	width: 1em; /* 幅 */
	height: 1em; /* 高さ */
	border: 1px solid black; /* 黒い枠線 */
	border-left: 0; /* 左線を消す */
	border-bottom: 0; /* 下線を消す */
	box-sizing: border-box; /* 枠込みサイズ */
	transform: rotate(135deg); /* 回転して矢印に */
	margin: 0 auto; /* 中央寄せ */
}

/* 矢印のアニメーション動作 */
@keyframes arrow-move {
	0% {
		transform: translateY(-30px); /* 上から出現 */
		opacity: 1; /* 完全に表示 */
	}
	100% {
		transform: translateY(0); /* 下に移動 */
		opacity: 0; /* フェードアウト */
	}
}

/* 「Scroll」テキスト */
.arrow-text {
	font-size: 14px; /* 文字サイズ */
	color: #333; /* 色 */
	margin-top: 4px; /* 矢印との余白 */
}

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

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

/* トップページヘッダー・フッター非表示 */
.front-top-page .article-header,
.front-top-page .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 */
}

/*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 {
   width: 100%; /* モバイルでの最小幅を100%に */
   min-width: unset; /* min-widthを解除 */
   }
}

/* 矢印のスタイル */
.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(2, 1fr); /* 2列で均等に分配 */
}

/* 人気記事サムネイルのグリッド */
.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; /* 内側余白 */
}

/************************************
** ●全画像のホバー時エフェクト処理
************************************/
a:hover img{
  opacity: 0.6; /*不透明度*/
  transition: all 0.8s ease; /*アニメーション*/
}
/* 選択されたタブの内容表示 */
.tab-switch label:has(:checked) + div {
   display: block; /* チェック時に表示 */
}

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