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

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

/* #0b3d91　*/

.navi-in a {
	font-size: 18px;/*文字サイズ*/
}

.cat-label{
	font-size: 15px;
}

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


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

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

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

/* 見出し ------------------------------------------------------------ */
.heading {
	font-family: 'Lato', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
	text-align: center; /* 見出しを中央揃え */
	font-size: 3rem; /* 見出しの文字サイズ */
	color: #696969; /* 見出しの色を設定 */
	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; /* 見出しの文字サイズ */
	}
}

/* スマートフォンでロゴの大きさを安定させる */
@media screen and (max-width: 767px) {
  /* スマートフォンでのみ適用されるスタイル */
  .site-logo-image.header-site-logo-image {
    width: 100%;       /* 親要素の幅いっぱいに広がる */
    height: auto;      /* 縦横比を維持する（必須） */
    max-width: 400px;  /* ただし、最大でも300pxまで */
    display: block;    /* 中央寄せにするための準備 */
    margin: 0 auto;    /* 中央寄せを実行 */
  }
  /* スマートフォンでのみ適用されるスタイル（ロゴ下の文字） */
  .tagline {
    font-size: 3.5vw;     /* 画面幅に応じて自動調整される */
    text-align: center;   /* テキストを中央揃えにする */
    margin-top: 10px;     /* ロゴ画像との間に少し余白を開ける */
    padding: 0 10px;      /* 画面端に近すぎる場合は左右に余白を入れる */
  }
}

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

/* 見出し下の線 */
.heading::after {
	display: block; /* 擬似要素をブロック要素に */
	content: ""; /* 内容を空に */
	width: 3rem; /* 線の幅を2.5rem */
	height: 1px; /* 線の高さを1px */
	border-radius: 10px; /* 線に丸みを追加 */
	background-color: #000000; /* 線の色を設定 */
	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); /* 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: repeat(2, 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) {
	.widget-entry-cards:not(.large-thumb-on) .card-title{
		font-size: 14px !important; /* タイトル文字を小さく */
	}
	.cate .large-thumb .new-entry-card-title,
	.popular-entry-card-title {
		font-size: 14px !important; /* タイトル文字を小さく */
	}
}

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

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

/* タブボタンのスタイル */
.tab-switch > label {
	flex: 1 1 auto; /* タブ均等幅、幅を超えると折り返す */
	order: -1; /* コンテンツより上に表示 */
	position: relative; /* 起点 */
	padding: .7em 1em; /* 内側余白 */
	border-bottom: 1px solid var(--active-tab-color); /* 下ボーダー */
	color: #696969; /* 文字色 */
	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; /* チェック時に表示 */
}

/*ウィジェット記事の投稿日・更新日を表示*/
.widget-entry-card-date {
	display:block;
}

/*フルワイド化とセクション背景色*/
.change-area1{
	background: #E8E8E8;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding-right: calc(50vw - 50%);
    padding-left: calc(50vw - 50%);
}
.change-area3{
	background: #E8E8E8;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding-right: calc(50vw - 50%);
    padding-left: calc(50vw - 50%);
	padding-top: 5em;  /*上部の内側余白 */
	padding-bottom: 5em; /* 下部の内側余白 */
	margin-bottom: 0; /* 下部の外側余白 0（固定） */
}
.change-area4{
	background: #E8E8E8;
    margin-right: calc(50% - 50vw);
    margin-left: calc(50% - 50vw);
    padding-right: calc(50vw - 50%);
    padding-left: calc(50vw - 50%);
}

/*フォローボタン*/
.icon-x-corp-logo:before{
	font-size: 18px;
    width: 26px;
    height: 26px;
    background-color: transparent;
    color: var(--cocoon-x-pallid-text-color);
    border: 1px solid var(--cocoon-basic-border-color);
    border-radius: 2px;
}

.textwidget{
	margin-bottom: 1.62em;
}

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

/* トップページ自作フッター */

/* 以下、フッター全体のこと */
/* 間隔そろえる */
.wp-block-column {
    flex-grow: 1;
    min-width: 0;
    overflow-wrap: break-word;
    word-break: break-word;
}

@media (min-width: 782px) {
    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex-basis: 0%;
        flex-grow: 1;
    }
}

/* 見出し文字フォント */
:root :where(.is-layout-flow)>:first-child {
    margin-block-start: 0;
}

.article h1, .article h2, .article h3, .article h4, .article h5, .article h6{
	font-family: 'Lato', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

.is-layout-flex>:is(*,div) {
    margin: 0;
}

/*  
:is(.is-layout-flow,.is-layout-constrained)>* {
    margin-block-start: 0;
}
*/

/* 以下、プロフィールについて */
/* プロフィール画像 */
.home .wp-block-image {
    margin-top: 1.6px;
    margin-bottom: 1.6px;
}

.home .has-text-align-center {
    margin-bottom: 8px;
}

/* 検索ボックス調整 */
.search-box {
    margin: 1em 0 2em;
    position: relative;
}

/* トップページの自作フッターここまで -------------------------------------------- */

.sidebar h2, .sidebar h3{
	font-family: 'Lato', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
	background: #fff;
	color: #000000;
	border-left: solid 4px #0B3D91;
}


.navi-in > ul{
	justify-content: right;
}

.tagline{
	font-size: 20px;
	color: ;
}

/*創作の横読みをスクロール形式にする*/
.scroll{
overflow: auto;
height: 800px;
width: 100%;
}

.rtoc-mokuji-content.frame4{
	font-size: 20px;
}

.footer-bottom-logo img{
	height: 80px;
}

/*モバイルメニュー文字大きさ*/
@media screen and (max-width: 480px) {
    .e-card-title {
        font-size: 13px;
    }
}

/*モバイルメニュー背景色*/
.navi-menu-content {
background-color: #fffffff0;
}

/*モバイルメニュー仕様*/
.menu-close-button{
	padding-top: 10px;
    padding-left: 25px;
    padding-bottom: 15px;
    text-align: left;
    color: #5a5a5a;
    font-size: 1.3em;
}
.menu-drawer a{
	line-height: 2em;
    color: #333333;
    font-family: 'Kaisei Opti', serif;
    font-size: 14px;
    border-bottom: solid 1px #e6e6e6;
}

/*全体の文字フォント*/
p {
	font-family: 'Lato', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

li {
	font-family: 'Lato', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

td {
	font-family: 'Lato', -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

/*下線の太さ*/
.marker-under-blue {
    background: linear-gradient(transparent 80%, #a8dafb 50%);
}

/*
#navi .navi-in a, #navi .navi-in a:hover{
	font-size: 20px;
}

.cat-label{
	font-size: 15px;
}


/*

.column {
background-color: #ffffff;
}

input[type=submit] {
	background-color: #1f52a3eb;
	font-size: 20px;
	color: #ffffff;
}



.author-box p{
	font-size: 20px;
	font-family: "游ゴシック";
}

/*サムネを自動調整するために必要なコード*/
.blogcard-thumbnail img, .card-thumb img {
    aspect-ratio: var(--card-ratio);
    object-fit: contain;
}

/*カテゴリーラベルの文字調整
.index-tab-buttons .index-tab-button{
	font-size: 18px;
}

.go-to-top-button{
	background-color: #1f52a3eb;
	color: #ffffff;

}

/*スマホ画面のエントリーカードを１枚に調整
@media screen and (max-width: 480px){
	.ad-index-middle, .main .list .a-wrap {
	    padding: 0;
	    margin-right: 0;
	    margin-bottom: 45px;
	    margin-left: 0;
	    width: 100%;
	}
}*/

/*
@media screen and (max-width: 480px) {
    .cat-label {
        font-size: 13px;
        padding: 1px 3px;
    }
}*/




/*アピールエリアの調整
.appeal-content{
	max-width: 800px;
	background: #D7EEFF;
}
.appeal-message-2{
	text-align: left;
}

/*モバイル版のフッター
table:not(.has-border-color) th, table:not(.has-border-color) td, table:not(.has-border-color) thead, table:not(.has-border-color) tfoot, .page-numbers, .page-numbers.dots, .tagcloud a, .list.ecb-entry-border .entry-card-wrap, .related-entries.recb-entry-border .related-entry-card-wrap, .carousel .a-wrap, .pager-post-navi.post-navi-border a.a-wrap, .article .toc, .a-wrap .blogcard, .author-box, .comment-reply-link, .ranking-item{
	background-color: #ffffff;
	color: #000000;
}
*/

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

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

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