/*
Theme Name: Lightning Child
Theme URI:
Template: lightning
Description:
Author:
Tags:
Version: 0.6.1
*/
/* =========================================

1. サイト全体の基盤・レイアウト・配色
========================================= */
.container {
    max-width: 1200px !important;
}

.entry-body p.wp-block-paragraph {
    padding-left: 10px;
    padding-right: 10px;
}

@media (prefers-color-scheme: dark) {

    ul li::before,
    ol li::before {
        color: #F2F2F2 !important;
        /* 純白に変更 */
    }

    :root {
        /* Lightning/VK Blocks が使用する行間の変数を強制上書き */
        --vk-line-height: 1.8 !important;
    }

}

body,
.site-body,
.main-section,
.side-section,
.entry-body,
.entry-content,
.site-header,
.site-footer,
.vk_borderBox,
.vk_borderBox_title_container,
.vk_borderBox_body {
    background-color: #081d35 !important;
    line-height: 1.9 !important;
    letter-spacing: 0.03em !important;
}

body,
.site-body,
.main-section,
.side-section,
.entry-body,
.entry-content,
h1,
h2,
h3,
h4,
h5,
h6,
.entry-title,
.entry-title a,
.main-section-title,
.vk_post_title,
.vk_post_title a,
.vk_post_title.media-title,
.vk_post_title.media-title a,
a,
.navbar-nav li a,
.global-nav-list li a,
.site-header a,
.vk-mobile-nav li a,
.entry-meta,
.entry-meta li,
.entry-meta a,
.postList_meta_items .published,
.postList_meta_items .published *,
.postList_date.published,
.postList_date.published *,
.vk_post_date.media-date.published,
.vk_borderBox,
.vk_borderBox_title,
.vk_borderBox_body,
.vk_borderBox_body p,
.vk_borderBox_body li,
.childPage_list_text,
.childPage_list_text p,
.childPage_list_text div,
.childPage_list_text a {
    color: #F2F2F2 !important;

}

.site-body {
    padding-top: 1rem;
	
}

.site-header {
    border-bottom: solid 1px #444E5E !important;
}

.site-footer {
    border-top: solid 1px #444E5E !important;
}

body {
    -webkit-font-smoothing: antialiased;
}

@media screen and (max-width: 991px) {
    body {
        font-size: 16px;
    }
}

@media (min-width: 992px) {
    .mainSection {
        flex: 0 0 80% !important;
        max-width: 80% !important;
    }

    .sideSection {
        flex: 0 0 20% !important;
        max-width: 20% !important;
        min-width: 280px !important;
    }
}

/* ヘッダーロゴのサイズを固定 */
.site-header-logo img {
    width: 167px;
    height: 40px;
}

/* =========================================
2. リンク・ボタンの共通設定（下線制御）
========================================= */
a,
.navbar-nav li a,
.global-nav-list li a,
.site-header a,
.vk-mobile-nav li a,
h1,
h2,
h3,
h4,
h5,
h6,
.entry-title,
.entry-title a,
.main-section-title,
.vk_post_title,
.vk_post_title a,
.vk_post_title.media-title,
.vk_post_title.media-title a,
#main a:has(img),
#main a img,
.po-article-card a,
.vk_borderBox a:has(img),
.main-section--col--two .btn,
.main-section--col--two .btn a,
.main-section--col--two .wp-block-button__link,
.main-section--col--two .vk_post_btn a,
.childPage_list_text a {
    text-decoration: none !important;
    border-bottom: none !important;
}

.main-section--col--two .nav-links a {
    border: none !important;
}

/* 本文内のテキストリンク（下線あり） */
.main-section--col--two p a,
.main-section--col--two li a,
.main-section--col--two td a,
.main-section--col--two dd a {
    border-bottom: 1px dotted #F2F2F2 !important;
    padding-bottom: 0px !important;
    color: #F2F2F2 !important;
}

.main-section--col--two a:hover {
    color: #7DD3FC !important;
    border-bottom-color: transparent !important;
    border-bottom: 1px solid #7DD3FC !important;
}

.easyLink-info {
    color: #000 !important;
    opacity: 1 !important;
    -webkit-text-fill-color: #000 !important;
}

.easyLink-info-name,
.easyLink-info-name a {
    color: #000 !important;
    opacity: 1 !important;
    -webkit-text-fill-color: #000 !important;
}

.easyLink-info-btn-amazon,
.easyLink-info-btn-rakuten,
.easyLink-info-btn-yahoo {
    color: #fff !important;
    opacity: 1 !important;
    -webkit-text-fill-color: #fff !important;
}

/* =========================================
3. 画像・サムネイル・非表示要素
========================================= */
/* 画像枠線の完全消去 */
.vk_post .vk_post_img_container img,
.vk_post .vk_post_img_container,
.postList .postList_thumbnail,
.postList .postList_thumbnail a,
.postList .postList_thumbnail img {
    border: none !important;
    box-shadow: none !important;
    outline: none !important;
}

/* メタ情報・続きを読むボタン等の非表示 */
.entry-meta-item-updated,
.entry-meta-item-author,
.single .page-header,
.single .section-header,
.vk_post_btn,
.entry-read-more,
.entry-btn,
.site-footer-copyright p:nth-child(2) {
    display: none !important;
}

/* =========================================
4. 見出し（H2〜H5）
========================================= */
.entry-content h2 {
    font-size: 1.8em !important;
    margin-top: 2em !important;
    margin-bottom: 1em !important;
}

.entry-content h3 {
    font-size: 1.4em !important;
}

.main-section--col--two h2 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
    padding: 1.4rem 1.4rem !important;
    text-align: center !important;
    font-size: 1.8em !important;
    font-weight: 700 !important;
    color: #F2F2F2 !important;
    background: #051425 !important;
    border-bottom: 8px solid #2a87f9 !important;
    border-top: 0px solid #2a87f9 !important;
    letter-spacing: 0.1em !important;
    line-height: 1.6 !important;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .25) !important;
    border-radius: 8px 8px 0 0 !important;
}

.main-section--col--two h3 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
    padding: 1em 1em !important;
    border-left: 10px solid #2a87f9 !important;
    background: #051425 !important;
    font-size: 1.4em !important;
    border-radius: 8px 0 0 8px !important;

    box-shadow: 0 8px 24px rgba(0, 0, 0, .25) !important;
}

.main-section--col--two h3::after {
    border-bottom: none !important;
}

.main-section--col--two h4 {
    margin-top: 2.5rem !important;
    margin-bottom: 1.2rem !important;
    padding-bottom: 10px !important;
    color: #fbbf24 !important;
    font-size: 1.15em !important;
    background-color: #081d35;
    border-bottom: 1px solid #444E5E !important;
    border-radius: 0px !important;
}

.main-section--col--two h4 a {
    color: #AFC5E8 !important;
    border-bottom: 1px dotted #AFC5E8 !important;
    transition: opacity 0.2s;
}

.main-section--col--two h4 a:hover {
    opacity: 0.8 !important;
}

/* h5リンク：100%下線 ＋ Font Awesomeアイコン */
.main-section--col--two h5 a,
.main-section--col--two h5 a:link,
.main-section--col--two h5 a:visited {
    color: #F2F2F2 !important;
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding: 12px 0 !important;
    border-bottom: 1px solid #444E5E !important;
    /* 基準の枠線色 */
    transition: all 0.3s cubic-bezier(0.25, 0.8, 0.25, 1) !important;
    text-decoration: none !important;
}

/* Font Awesomeアイコン：洗練されたロング矢印 */
.main-section--col--two h5 a::after {
    content: "\f138" !important;
    /* long-arrow-alt-right */
    font-family: "Font Awesome 5 Free", "Font Awesome 6 Free";
    font-weight: 900;
    font-size: 1.4em;
    color: #444E5E;
    /* 初期は枠線に馴染ませる */
    transition: all 0.3s ease;
    margin-left: 15px;
}

/* ホバー演出：全体がキーカラーに染まり、アイコンが加速する */
.main-section--col--two h5 a:hover {
    color: #7DD3FC !important;
    /* 文字は少し明るい青へ */
    border-bottom-color: #7DD3FC !important
}

.main-section--col--two h5 a:hover::after {
    color: #7DD3FC !important;
    transform: translateX(8px);
    /* 少し大きめに動かして「次へ」を強調 */
}

/* 投稿リストタイトルの上部余白をゼロにする */
.vk_post .vk_post_title.media-title,
.vk_post_title.media-title {
    margin-top: 0 !important;
    padding-top: 0 !important;
}

/* リンク要素が内包されている場合の微調整 */
.vk_post .vk_post_title.media-title a {
    display: block;
    padding-top: 0 !important;
    margin-top: 0 !important;
}

/* サブメニュー全体のコンテナ */
.vk-mobile-nav-menu-content ul.sub-menu,
.global-nav-list li ul.sub-menu {
    background-color: #081d35 !important;
    /* 背景をサイト共通の黒に */
    border-top: 2px solid #444E5E !important;
    /* 上部にキーカラーのアクセント線 */
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.5) !important;
    /* 浮遊感を出す影 */
    padding: 0 !important;
}

/* サブメニュー内の各項目 */
.global-nav-list li ul.sub-menu li a {
    background-color: #081d35 !important;
    color: #F2F2F2 !important;
    padding: 16px 20px !important;
    border-bottom: 1px dotted #444E5E !important;
    /* 項目間の区切り線 */
    transition: all 0.3s ease !important;
}

/* サブメニュー項目：ホバー時 */
.global-nav-list li ul.sub-menu li a:hover {
    background-color: #7DD3FC !important;
    /* わずかに明るく */
    color: #081d35 !important;
}

/* 最後の項目の下線を消去 */
.global-nav-list li ul.sub-menu li:last-child a {
    border-bottom: none !important;
}

/* =========================================
5. パンくずリスト
========================================= */
.breadSection,
.breadSection *,
.pane-breadcrumb,
.pane-breadcrumb *,
.breadcrumb,
.breadcrumb *,
.vk_breadcrumb,
.vk_breadcrumb * {
    color: #F2F2F2 !important;
}

.breadcrumb {
    margin-bottom: 2rem !important;
    font-size: 0.85rem !important;
}

.breadcrumb a {
    color: #F2F2F2 !important;
    text-decoration: none !important;
}

.breadcrumb a:hover {
    text-decoration: underline !important;
}

.breadcrumb-item.active,
.breadcrumb>li:last-child {
    color: #F2F2F2 !important;
}

.vk_breadcrumb li:first-child a span,
.breadcrumb li:first-child a span {
    display: none !important;
}

.vk_breadcrumb li:first-child a::after,
.breadcrumb li:first-child a::after {
    content: "ホーム" !important;
    display: inline-block !important;
    color: #F2F2F2 !important;
}

/* =========================================
6. VK Blocks (枠線ボックス・テーブル・吹き出し等)
========================================= */
.vk_borderBox {
    margin-top: 2.5em !important;
    margin-bottom: 1.5em !important;
    border: 1px solid #444E5E !important;
    border-radius: 4px !important;
}

.vk_borderBox_title_container,
.vk_borderBox_body {
    border: none !important;
}

/* テーブル */
table,
.wp-block-table,
.vk-flexible-table,
.wp-block-flexible-table-block-table,
.wp-block-flexible-table-block-table td,
.wp-block-flexible-table-block-table th,
.vk-flexible-table__item,
.vk-flexible-table__item th,
.vk-flexible-table__item td,
.wp-block-table td,
.wp-block-table th {
    background-color: #051425 !important;
    color: #F2F2F2 !important;
    border: 1px solid #444E5E !important;
}

table th,
.wp-block-table thead th,
.wp-block-table th,
.wp-block-flexible-table-block-table th,
.vk-flexible-table__item th {
    background-color: #051425 !important;
    font-weight: bold !important;
}

.wp-block-table.is-style-vk-table-border-stripes tr:nth-child(odd) td,
.wp-block-table.is-style-vk-table-border-stripes tr:nth-child(odd) th {
    background-color: #051425 !important;
}

.wp-block-table.is-style-vk-table-border-stripes tr:nth-child(even) td,
.wp-block-table.is-style-vk-table-border-stripes tr:nth-child(even) th {
    background-color: #04111f !important;
}

table {
    border-collapse: collapse !important;
}

/* 吹き出し */
.vk_balloon .vk_balloon_content {
    color: #F2F2F2 !important;
}

.vk_balloon .vk_balloon_content a {
    color: #081d35 !important;
    text-decoration: underline;
    font-weight: bold;
}

.vk_balloon-type-speech.vk_balloon-dir-left .vk_balloon_content {
    background-color: #081d35 !important;
    border: 1px solid #555555 !important;
}

.vk_balloon-type-speech.vk_balloon-dir-left .vk_balloon_content::before {
    border-right-color: #444E5E !important;
}

.vk_balloon-type-speech.vk_balloon-dir-right .vk_balloon_content {
    background-color: #081d35 !important;
    border: none !important;
}

.vk_balloon-type-speech.vk_balloon-dir-right .vk_balloon_content::before {
    border-left-color: #081d35 !important;
}

/* モバイルナビ */
.vk-mobile-nav,
.vk-mobile-nav .acc-btn,
.vk-mobile-nav-menu-content {
    background-color: #081d35 !important;
    color: #F2F2F2 !important;
}

.vk-mobile-nav ul li a {
    color: #F2F2F2 !important;
    border-bottom: 1px solid #444E5E !important;
}

.vk-mobile-nav ul li:first-child a,
.vk-mobile-nav ul li:first-child,
.vk-mobile-nav ul {
    border-top: none !important;
}

.menu-heading {
    pointer-events: none;
    cursor: default;
}

.menu-heading a {
    background-color: #030d18 !important;
    color: #F2F2F2 !important;
    font-weight: bold !important;
    padding: 8px 15px !important;
    letter-spacing: 0.1em;
    border: none !important;
}

.menu-heading a:hover {
    background-color: #030d18 !important;
}

.vk-mobile-nav-close,
.vk-mobile-nav .btn-close {
    background-color: #030d18 !important;
    color: #F2F2F2 !important;
}

.vk-mobile-nav .acc-btn {
    background-color: transparent !important;
    border: 1px solid #444E5E !important;
    filter: invert(1) grayscale(100%) brightness(200%) !important;
}

.vk-mobile-nav-menu-content li {
    background-color: #030d18 !important;
}

/* トップへ戻るボタン */
.page_top_btn,
.vk-page-top {
    font-size: 0 !important;
}

.page_top_btn i,
.page_top_btn::before,
.vk-page-top i,
.vk-page-top::before {
    font-size: 24px !important;
    display: inline-block !important;
    vertical-align: middle !important;
}

.page_top_btn,
.vk-page-top {
    background-color: #051425 !important;
}

/* 投稿リストのリンク点線化 */
.postList .postList_body a {
    text-decoration: none !important;
    border-bottom: 1px dotted #F2F2F2 !important;
    padding-bottom: 0px;
    transition: all 0.3s;
}

.postList .postList_body a:hover {
    border-bottom: 1px dotted #7DD3FC !important;
    color: #7DD3FC !important;
}

.vk_post_title_new {
    color: #FBBF24 !important;
    font-weight: bold;
}

/* =========================================
7. プラグイン・その他要素
========================================= */

/* Easy Table of Contents */
div#ez-toc-container {
    background-color: #081d35 !important;
    padding: 25px !important;
    border: 1px solid #444E5E !important;
    border-radius: 4px !important;
}

div#ez-toc-container p.ez-toc-title {
    color: #F2F2F2 !important;
    font-size: 1.1rem !important;
    font-weight: bold !important;
    margin-bottom: 0px !important;
    padding: 0 0 5px 0 !important;
    text-align: center !important;
}

div#ez-toc-container nav ul {
    counter-reset: toc-counter !important;
    list-style: none !important;
}

div#ez-toc-container nav ul li a::before {
    counter-increment: toc-counter !important;
    content: counter(toc-counter) !important;
    display: inline-block;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
    background: #081d35 !important;
    color: #ffffff !important;
    border-radius: 50% !important;
    margin-right: 12px !important;
    font-size: 0.8rem !important;
    font-weight: bold;
}

div#ez-toc-container nav ul li a {
    color: #ededed !important;
    text-decoration: none !important;
    padding: 5px 0 !important;
    display: flex !important;
    align-items: center !important;
    border-bottom: 1px dotted #F2F2F2 !important;
    transition: opacity 0.2s ease !important;
}

div#ez-toc-container nav ul li:last-child a {
    border-bottom: none !important;
}

div#ez-toc-container nav ul li a:hover {
    opacity: 0.7 !important;
}

/* ページネーション */
.pagination li a,
.pagination li span {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 40px !important;
    height: 40px !important;
    padding: 0 10px !important;
    margin: 0 3px !important;
    text-decoration: none !important;
    box-sizing: border-box !important;
    transition: all 0.3s ease !important;
}

.pagination li a:hover,
.pagination li span.current {
    background-color: #2a87f9 !important;
    color: #ffffff !important;
    border: none !important;
}

/* ボタンブロック */
.wp-block-buttons .wp-block-button__link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    line-height: 1 !important;
    padding-top: 15px !important;
    padding-bottom: 15px !important;
    min-height: 2.5em;
}

/* Snow Monkey Forms */
.smf-form input[type="text"],
.smf-form input[type="email"],
.smf-form input[type="tel"],
.smf-form input[type="url"],
.smf-form input[type="number"],
.smf-form select,
.smf-form textarea {
    background-color: #F2F2F2 !important;
    border: 1px solid #444E5E !important;
    color: #333333 !important;
    border-radius: 4px;
    padding: 10px;
}

.smf-form input:focus,
.smf-form textarea:focus {
    border-color: #F2F2F2 !important;
    outline: none;
    box-shadow: 0 0 5px rgba(0, 255, 0, 0.2);
}

/* スクロールヘッダーロゴ */
.header_scrolled .site-header-logo {
    display: block !important;
}

.header_scrolled .site-header-logo img {
    	 width: 167px;
    height: 40px;
}

.header_scrolled .site-header-nav {
    margin-left: auto;
}

/* 固定ページ上部（ページヘッダー）の背景色と文字色を刷新 */
.page-header {
    background-color: #2a87f9 !important;
    /* 背景色 */
    padding-top: 20px !important;
    /* 余白調整：スタイリッシュな厚み */
    padding-bottom: 20px !important;
}

/* ページタイトル（ページ名）の文字色 */
.page-header .page-header-title {
    color: #F2F2F2 !important;
    font-weight: bold;
    letter-spacing: 0.1em;
}

/* パンくずリストがある場合の文字色調整 */
.page-header .breadcrumb {
    background-color: transparent !important;
}

/* サイドバーの1番目のウィジェット（広告）の場所を確保 */
.sub-section aside:first-child {
    display: block;
    min-height: 250px;
    /* 広告の平均的な高さ */
    overflow: hidden;
    position: relative;
}

/* =========================================
3. メインコンテンツのアイキャッチ枠線（画像保護版）
========================================= */

/* VK Post・記事一覧サムネイル */
.vk_post_imgOuter,
.postList .postList_thumbnail {
    border: none !important;
    box-shadow: inset 0 0 0 1px #555555 !important;
    background-color: transparent !important;
    overflow: hidden !important;
    border-radius: 4px !important;
    aspect-ratio: 1200 / 630;
}

/* サムネイル画像 */
.vk_post_imgOuter img,
.postList .postList_thumbnail img,
.media .media-object img {
    border: none !important;
    box-shadow: none !important;
    width: 100%;
    height: 100%;
    object-fit: cover !important;
}

/* =========================================
8. ヘッダーメニュー（アクティブ視認性向上版）
========================================= */

/* 1. Lightning標準の下線を徹底排除（::before/::after両方を完全非表示） */
.global-nav-list>li>a::before,
.global-nav-list>li>a::after,
.global-nav-list>li.current-menu-item>a::after,
.global-nav-list>li.current-menu-item>a::before,
.global-nav-list>li.current-page-ancestor>a::after,
.global-nav-list>li.current-page-ancestor>a::before {
    display: none !important;
    content: none !important;
    border: none !important;
    background: transparent !important;
}

/* 2. メニュー全体のレイアウト */
.global-nav-list {
    display: flex !important;
    gap: 40px;
    border: none !important;
}

.global-nav-list>li {
    position: relative;
    border: none !important;
    overflow: visible !important;
}

/* 3. メニューテキスト：基本設定 */
.global-nav-list>li>a {
    color: #F2F2F2 !important;
    font-weight: bold !important;
    padding: 20px 0 !important;
    transition: all 0.3s ease !important;
    position: relative;
    z-index: 2;
    /* 文字をモヤの前に */
    border: none !important;
}

/* 4. ホバー時の演出：文字を白く発光（アクティブ時も上書き） */
.global-nav-list>li:hover>a {
    color: #F2F2F2 !important;
    /* ★ホバー時は強制的に白へ */
    text-shadow: 0 0 10px #081d35, 0 0 20px #081d35 !important;
}

/* ★5. モヤの範囲を調整（少しタイトにして1.2倍程度へ） */
.global-nav-list>li::before {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    width: 120% !important;
    height: 105% !important;
    background: radial-gradient(ellipse at center,
            rgba(38, 61, 101, 0.7) 0%,
            rgba(38, 61, 101, 0.3) 45%,
            rgba(33, 78, 204, 0) 75%) !important;
    transform: translate(-50%, -50%) scale(0.6);
    opacity: 0;
    transition: all 0.3s ease !important;
    z-index: 1;
    pointer-events: none;
}

.global-nav-list>li:hover::before {
    opacity: 1;
    transform: translate(-50%, -50%) scale(1);
}

/* ★6. カレント表示（現在地）：通常時は青く光らせる */
.global-nav-list>li.current-menu-item>a,
.global-nav-list>li.current-page-ancestor>a {
    color: #7DD3FC !important;
    /* 現在地の色は青 */
    text-shadow: 0 0 8px rgba(38, 61, 101, 0.5) !important;
}

/* ★追加：現在地のメニューにホバーした時、文字を白く戻してモヤとの同化を防ぐ */
.global-nav-list>li.current-menu-item:hover>a,
.global-nav-list>li.current-page-ancestor:hover>a {
    color: #F2F2F2 !important;
    /* 文字を白にして視認性を確保 */
}

/* =========================================
追加した「前後ページ」ボタンのレイアウト・装飾
========================================= */
/* ボタン全体を包むコンテナの基本設定 */
.custom-page-nav-wrapper {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    gap: 20px !important;
    width: 100% !important;
    max-width: 1200px !important;
    /* ボタン全体の最大幅 */
    margin: 40px auto 25px auto !important;
}

/* ボタンの共通基本スタイル */
.custom-page-nav-btn {
    display: inline-block !important;
    padding: 18px 30px !important;
    background-color: #2a87f9 !important;
    color: #F2F2F2 !important;
    text-align: center !important;
    font-weight: bold !important;
    font-size: 1.1rem !important;
    text-decoration: none !important;
    border-bottom: none !important;
    border-radius: 8px !important;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.3s ease !important;
}

/* 【重要】ボタンが2つある中間のページ：等幅で左右に50%ずつ割り振り */
.has-double-btn .custom-page-nav-btn {
    flex: 1 !important;
    width: 100% !important;
}

/* 【重要】1ページ目と最終ページ（ボタンが1つだけ）：横幅100%（最大1000px）に拡張 */
.has-single-btn .custom-page-nav-btn {
    flex: none !important;
    width: 100% !important;
}

/* ホバー時の挙動（下線を完全に排除） */
.custom-page-nav-btn:hover {
    background-color: #60A5FA !important;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.15) !important;
    color: #F2F2F2 !important;
    text-decoration: none !important;
    border-bottom: none !important;
}

/* スマートフォン表示（横幅が狭い場合）のレスポンシブ対応 */
@media (max-width: 576px) {
    .custom-page-nav-wrapper.has-double-btn {
        flex-direction: column !important;
        /* 2つボタンがある時のみスマホで縦並びに */
        gap: 12px !important;
    }
}

/* ボタンの下線を消す処理 */
.main-section .custom-page-nav-btn,
.main-section .custom-page-nav-btn:hover,
.main-section .custom-page-nav-btn:focus,
.main-section .custom-page-nav-btn:active,
.main-section .custom-page-nav-btn:visited {
    color: #F2F2F2 !important;
    text-decoration: none !important;
    border-bottom: none !important;
}

/* =========================================
整形済みテキスト（Modern Dark）
========================================= */

pre,
pre.wp-block-preformatted {
    background: #051425 !important;
    color: #e6edf3 !important;
    border: 1px solid rgba(99, 164, 255, .22) !important;
    border-radius: 4px !important;
    padding: 22px !important;
    line-height: 2 !important;
    font-size: .95rem !important;
    overflow-x: auto;
    white-space: pre-wrap;
    box-shadow: 0 8px 24px rgba(0, 0, 0, .25) !important;
}

pre code {
    background: none !important;
    color: inherit !important;
    padding: 0 !important;
}

code:not(pre code) {
    background: rgba(99, 164, 255, .12) !important;
    color: #F2F2F2 !important;
    border: 1px solid rgba(99, 164, 255, .18) !important;
    border-radius: 8px !important;
    padding: 3px 8px !important;
    font-size: .9em !important;
    font-family: Consolas, "Cascadia Code", "SFMono-Regular", monospace;
}

pre a,
pre a:link,
pre a:visited {
    color: #BFEAFD !important;
    border-bottom: 2px dotted #BFEAFD !important;
    text-decoration: none !important;
}

pre a:hover {
    color: #F2F2F2 !important;

}

/* 記事一覧のサムネイル右上のカテゴリラベルを非表示 */
.vk_post_imgOuter_singleTermLabel {
    display: none;
}

/*
==================================印刷時色設定 ================================== */
@media print {

    html,
    body {
        background: #fff !important;
        color: #000 !important;
    }

    .site,
    .site-content,
    .entry-content,
    article {
        background: #fff !important;
        color: #000 !important;
    }

    a {
        color: #000 !important;
        text-decoration: underline;
    }

    @page {
        size: A4;
        margin: 15mm 15mm;
    }

    /* 見出しの途中でページを変えない */
    h2,
    h3 {
        break-after: avoid;
        page-break-after: avoid;
    }

    /* 見出しだけがページ末尾に残るのを防ぐ */
    h2,
    h3 {
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .site-header {
        position: static !important;
        top: auto !important;
    }

    /* サイドバー */
    .sub-section.sub-section--col--two {
        display: none !important;
    }

    /* フッター */
    footer,
    .site-footer {
        display: none !important;
    }

    .main-section.main-section--col--two {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
    }

    .main-section.main-section--col--two>* {
        width: 100% !important;
        max-width: 100% !important;
        flex: none !important;
    }

    /* ロゴを黒くする */
    .site-header-logo img {
        filter: invert(1) !important;
    }

    /* ロゴ領域を広げる */
    .site-header-logo {
        width: 180px !important;
        max-width: 180px !important;
    }

    /* ロゴ画像を大きくする */
    .site-header-logo img {
        width: 150px !important;
        max-width: none !important;
        height: auto !important;
    }

    #global-nav {
        display: none !important;
    }

}

/* ========================================
   トップページ 投稿一覧 3列カード
   ======================================== */

/* 投稿を縦並びにする */
body.home .vk_post {
    display: block !important;
    width: 33.333% !important;
    margin: 0 !important;
    padding: 40px 20px 20px !important;
    box-sizing: border-box;
}
/* アイキャッチ */
body.home .vk_post_imgOuter {
    width: 100% !important;
    margin: 0 !important;
}
/* アイキャッチ画像 */
body.home .vk_post_imgOuter_img {
    width: 100% !important;
}
/* 本文 */
body.home .vk_post_body {
    display: block !important;
    width: 100% !important;
    padding: 12px 0 0 !important;
}
/* タイトル */
/* タイトルの高さを統一 */
body.home .vk_post_title {
    height: 4.2em;
    overflow: hidden;
    margin: 0 0 8px !important;
}
body.home .vk_post_excerpt {
    display: -webkit-box !important;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
}
/* タイトルのホバー色 */
body.home .vk_post_title a:hover {
    color: #7DD3FC !important;
}
/* アイキャッチを少しズーム */
body.home .vk_post_imgOuter {
    overflow: hidden;
    background-size: 100% auto;
    transition: background-size 0.3s ease;
}
body.home .vk_post_imgOuter:hover {
    background-size: 105% auto;
}

/* 新着!!を非表示 
body.home .vk_post_title_new {
    display: none !important;
}
*/

/* タブレット */
@media (max-width: 991px) {
    body.home .vk_post {
        width: 50% !important;
    }
}

/* スマートフォン */
@media (max-width: 599px) {
    body.home .vk_post {
        width: 100% !important;
    }
}
/* 前のページ・次のページボタンを最前面に */
body.home .custom-page-nav-wrapper {
    position: relative;
    z-index: 100;
}
body.home .custom-page-nav-btn {
    position: relative;
    z-index: 101;
    pointer-events: auto;
}

