@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, .article {
    color: #444444 !important;
}

/* リンク */
.entry-content a,
.sidebar a {
    color: #444444 !important;
    text-decoration: underline !important;
    text-underline-offset: 4px !important;
    transition: color 0.3s ease !important;
}

.entry-content a:hover,
.sidebar a:hover {
    color: #a8a29e !important;
    text-decoration: underline !important;
}

/* h1 */
.category-header h1#archive-title.archive-title,
.single-post .entry-title,
body:not(.home) .page .entry-title {
    border: none !important;
    background: transparent !important;
    font-size: 1.55rem !important;
    font-weight: 500 !important;
    color: #111111 !important;
    letter-spacing: 0.05em !important;
    line-height: 1.4 !important;
    margin-bottom: 0.8em !important;
}

.category-header h1#archive-title.archive-title .fa {
    margin-right: 0.5em !important;
    color: #a8a29e !important;
}

/* トップ＆1カラム共通：h2 ＆ サブテキスト */
.home .article h2.cstm-head.has-text-align-center,
.page.column1 .article h2.cstm-head.has-text-align-center {
    color: #111111 !important;
    font-size: 1.6rem !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.28em !important;
    border: none !important;
    background-color: transparent !important;
    position: static !important;
    margin: 0 auto !important;
    padding-bottom: 10px !important;
}

.home .article h2.cstm-head.has-text-align-center::before,
.home .article h2.cstm-head.has-text-align-center::after,
.page.column1 .article h2.cstm-head.has-text-align-center::before,
.page.column1 .article h2.cstm-head.has-text-align-center::after {
    display: none !important;
    content: none !important;
}

.home .article h2.cstm-head.has-text-align-left {
    color: #111111 !important;
    font-size: 1.6rem !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.28em !important;
    border: none !important;
    background-color: transparent !important;
    position: static !important;
    margin: 0 0 4px 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.home .article .cstm-sub-text,
.page.column1 .article .cstm-sub-text {
    display: block !important;
    color: #666666 !important;
    font-size: 0.75rem !important;
    font-weight: 400 !important;
    letter-spacing: 0.16em !important;
    line-height: 1.8 !important;
    max-width: 680px !important;
}

.home .article .cstm-sub-text:not(.leftype),
.page.column1 .article .cstm-sub-text:not(.leftype) {
    text-align: center !important;
    margin: 0 auto !important;
    padding-top: 10px !important;       
    padding-bottom: 35px !important;
}

.home .article .cstm-sub-text.leftype {
    text-align: left !important;
    margin: 4px 0 0 0 !important;
    padding-top: 0 !important;
    padding-bottom: 30px !important;
}

@media screen and (max-width: 1023px) {
    .home .article h2.cstm-head.has-text-align-left,
    .home .article .cstm-sub-text.leftype {
        text-align: center !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

.home .article .cstm-sub-text::after,
.home .article .cstm-sub-text::before,
.home .article .cstm-line,
.page.column1 .article .cstm-sub-text::after,
.page.column1 .article .cstm-sub-text::before,
.page.column1 .article .cstm-line {
    display: none !important;
    content: none !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.home .article .cstm-sub-text br,
.page.column1 .article .cstm-sub-text br {
    display: block !important;
    content: "" !important;
    margin-top: 6px !important;
}

/* h2・新着記事・関連記事 */
body:not(.home) .article h2,
.widget-above-single-sns-buttons-title.main-widget-label.widget-title,
.widget-above-page-sns-buttons-title.main-widget-label.widget-title,
.related-entry-heading {
    background-color: transparent !important;
    border-radius: 0 !important;
    border-top: none !important;
    border-left: none !important;
    border-right: none !important;
    border-bottom: 1px solid #e5e5e5 !important;
    padding: 0 0 0.4em 0 !important;
    margin: 2.8em 0 1.2em 0 !important;
    font-size: 1.3rem !important;
    font-weight: 500 !important;
    color: #111111 !important;
    line-height: 1.4 !important;
    letter-spacing: 0.04em !important;
}

.related-entry-heading .related-entry-main-heading {
    color: inherit !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    padding: 0 !important;
    margin: 0 !important;
}

body:not(.home) .article h2::before,
body:not(.home) .article h2::after {
    content: none !important;
    display: none !important;
}

/* h3 */
.category .entry-content h3,
.single-post .entry-content h3,
body:not(.home) .page .entry-content h3 {
    background-color: transparent !important; /* 背景の完全透明化 */
    border: none !important;                   /* 過去の左側の縦線（border-left）を完全にリセット */
    padding: 0 !important;                     /* 飾り線を消したため、不要な内側余白をすべてゼロに */
    margin: 2.4em 0 1.0em 0 !important;       /* h2（2.8em）よりわずかに狭くし、文脈の綺麗な入れ子構造を作る */
    font-size: 1.15rem !important;            /* h2（1.3rem）から自然に流れる、主張しすぎないサイズ */
    font-weight: 500 !important;
    color: #222222 !important;                 /* 漆黒（#111111）よりほんの少しだけ引いた、深いチャコール */
    line-height: 1.4 !important;
    letter-spacing: 0.04em !important;
}

.category .entry-content h3::before,
.category .entry-content h3::after,
.single-post .entry-content h3::before,
.single-post .entry-content h3::after,
body:not(.home) .page .entry-content h3::before,
body:not(.home) .page .entry-content h3::after {
    content: none !important;
    display: none !important;
}

/* ポートレートセクション背景色 */
.portrait-back-gradation {
  background-image: linear-gradient(to right, #ffffff 0%, #ffffff 50%, #fbfbfa 50%, #fbfbfa 100%) !important;
}

@media screen and (max-width: 834px) {
  .portrait-back-gradation {
    background-image: none !important;
    background-color: #fbfbfa !important;
  }
}

/* 投稿日・更新日メタ情報 */
.skin-grayish .article-header .date-tags,
.date-tags {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  color: #a8a29e !important;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif !important;
  font-size: 0.88rem !important;
  letter-spacing: 0.05em !important;
  line-height: 1 !important;
  margin-top: 0.2rem !important;
  margin-bottom: 1.5rem !important;
}

.date-tags .post-date .entry-date,
.date-tags .post-update .entry-date,
.date-tags .post-date span,
.date-tags .post-update time {
  font-size: 0.88rem !important;
  font-weight: 400 !important;
  color: #a8a29e !important;
}

.date-tags .post-date,
.date-tags .post-update {
  display: inline-flex !important;
  align-items: center !important;
}

.date-tags .post-date {
  margin-right: 1.5rem !important;
}

.date-tags .post-date .fa,
.date-tags .post-update .fa,
.date-tags span[class*="fa-"] {
  display: none !important;
}

.date-tags .post-update::before {
  content: "Update: " !important;
  font-size: 0.78rem !important;
  font-weight: 400 !important;
  letter-spacing: 0.04em !important;
  color: #a8a29e !important;
  margin-right: 0.1rem !important;
}

.date-tags .post-update {
  color: #888888 !important;
}

/* カテゴリーラベル */
.skin-grayish .cat-label,
.skin-grayish.single-post .article-header .eye-catch-wrap .eye-catch .cat-label {
    background: rgba(251, 251, 250, 0.92) !important;
    background-color: rgba(251, 251, 250, 0.92) !important;
    color: #444444 !important; 
    border-radius: 0 !important;
    border: none !important;
    box-shadow: none !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans JP", sans-serif !important;
    font-size: 10px !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    text-indent: 0.12em;
    padding: 4px 12px 5px 12px !important;
    position: absolute !important;
    top: 15px !important;
    left: 15px !important;
    bottom: auto !important;
    right: auto !important;
    
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 1 !important;
    z-index: 10 !important;
}

.skin-grayish .cat-label::before,
.skin-grayish .cat-label::after {
    display: none !important;
    content: none !important;
}

@media screen and (max-width: 834px) {
    .skin-grayish .cat-label,
    .skin-grayish.single-post .article-header .eye-catch-wrap .eye-catch .cat-label,
    .eye-catch .cat-label {
        top: 12px !important;
        left: 12px !important;
        padding: 3px 10px 4px 10px !important;
        font-size: 9px !important; /* スマホでも上品に佇む極小サイズ */
        letter-spacing: 0.08em !important;
        text-indent: 0.08em;
    }
}

/* View Moreボタン */
p.cstm-more-btn a {
    color: #444444 !important;
    font-size: 0.8rem !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.2em !important;
    text-decoration: none !important;
    display: inline-flex !important;
    align-items: center !important;
    transition: color 0.4s ease !important;
}

p.cstm-more-btn a::before,
p.cstm-more-btn a::after {
    background-color: #444444 !important;
    border-color: #444444 !important;
    transition: all 0.4s ease !important;
}

p.cstm-more-btn a:hover {
    color: #a8a29e !important;
    text-decoration: none !important;
}

p.cstm-more-btn a:hover::before,
p.cstm-more-btn a:hover::after {
    background-color: #a8a29e !important;
    border-color: #a8a29e !important;
}

.cstm-pat-9 a,
.cstm-pat-9 a:hover
 {
    text-decoration: none !important;
}

/* サイドバーh2,h3 */
.skin-grayish .sidebar h2,
.skin-grayish .sidebar h3 {
    background: transparent !important;
    background-color: transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    border: none !important;
    border-top: 1px solid #e5e5e5 !important;
    color: #111111 !important;
    font-size: 1.1rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.16em !important;
    text-transform: uppercase;
    padding: 14px 0 6px 0 !important;
    margin: 24px 0 16px 0 !important;
    line-height: 1.2 !important;
}

/* 下層ページ・ヘッダーテキストロゴ化 */
body:not(.home).skin-grayish #header-container #header .header-in .logo-header .site-name-text img {
    display: none !important;
}

body:not(.home).skin-grayish #header-container #header .header-in .logo-header .site-name-text::before {
    content: "KVA | kumanokodo.net" !important;
    display: inline-block !important;
    color: #111111 !important;
    font-size: 26px !important;
    font-weight: 500 !important;
    letter-spacing: 0.02em !important;
    line-height: 1.2 !important;
    font-family: inherit !important;
    transition: color 0.3s ease !important;
}

body:not(.home).skin-grayish #header-container #header .header-in .logo-header a:hover .site-name-text::before {
    color: #a8a29e !important;
}

body:not(.home).skin-grayish .logo-header .site-name-text,
body:not(.home).skin-grayish .logo-header a:hover .site-name-text {
    transform: none !important;
    box-shadow: none !important;
    scale: 1 !important;
}

body:not(.home).skin-grayish #header-container #header .header-in .logo-header.logo-image {
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    align-items: center !important;
    text-align: left !important;
}

/* グローバルナビ */
.skin-grayish :where(.navi-in, .navi-footer-in) a,
.skin-grayish .navi-in>ul>li>a>.caption-wrap,
.skin-grayish #navi-in [class^="icon-"],
.skin-grayish #navi-in [class*=" icon-"],
.skin-grayish .navi-in .search-menu-icon span::before,
.search-submit .fa-search,
body.home.skin-grayish #navi a,
body.home.skin-grayish #navi a:hover,
body.home.skin-grayish #navi .item-label,
body.home.skin-grayish #navi a:hover .item-label,
body.home.skin-grayish #navi .caption-wrap,
body.home.skin-grayish #navi a:hover .caption-wrap,
body.home.skin-grayish #navi [class^="icon-"],
body.home.skin-grayish #navi a:hover [class^="icon-"],
body.home.skin-grayish #navi [class*=" icon-"],
body.home.skin-grayish #navi a:hover [class*=" icon-"],
body.home.skin-grayish #navi .search-menu-icon span::before,
body.home.skin-grayish #navi .search-menu-icon:hover span::before {
    color: #111111 !important;
}

.skin-grayish .navi-in>ul>li>a>.caption-wrap,
.skin-grayish .navi-footer-in ul li a {
    position: relative !important;
    font-weight: 600 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    transition: color 0.3s ease !important;
}

.skin-grayish .navi-in a:hover,
.skin-grayish .navi-in a:hover .item-label,
.skin-grayish .navi-in .search-menu-icon:hover span::before,
.skin-grayish #navi-in a:hover [class^="icon-"],
.skin-grayish #navi-in a:hover [class*=" icon-"] {
    color: #a8a29e !important;
}

.skin-grayish .navi-footer-in a:hover,
.skin-grayish .navi-footer-in ul li.current-menu-item a,
.skin-grayish .navi-footer-in ul li.current_page_item a {
    color: #111111 !important;
}

.skin-grayish .navi-in>ul>li>a>.caption-wrap::before,
.skin-grayish .navi-footer-in a::before,
.skin-grayish .navi-in>ul>li>a:hover>.caption-wrap::before {
    background-color: #a8a29e !important;
}

.skin-grayish .navi-footer-in a::before {
    height: 1px !important;
    bottom: -3px !important;
}

.header-container,
body.home #navi {
    transition: transform 0.3s ease, background-color 0.4s ease, border-color 0.4s ease, box-shadow 0.4s ease !important;
}

.header-container.header-hide {
    transform: translateY(-100%) !important;
}

body.home #navi.header-hide {
    transform: translateY(-100px) !important;
}

body.home:not(.is-scrolled-mv) :is(#navi, .navi, .navi-in, #navi-in) {
    background: transparent !important;
    background-color: transparent !important;
    border-color: transparent !important;
    box-shadow: none !important;
}

/* サイドバー余白 */
#sidebar {
    margin-bottom: 50px !important;
}

/* サイドバープロフィールボックス */
.sidebar .author-box {
    border: none !important;
    background: transparent !important;
    padding: 0 !important;
    box-shadow: none !important;
}

.sidebar .author-box::before,
.sidebar .author-box::after {
    display: none !important;
    content: none !important;
}

.sidebar .author-name a {
    color: #111111 !important;
    font-size: 1.1rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    text-decoration: none !important;
}

.sidebar .sns-follow {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.sidebar .sns-follow-buttons {
    border: none !important; 
    padding: 0 !important;
    margin: 0 !important;
    display: flex !important;
    justify-content: center !important;
    flex-wrap: nowrap !important;
    gap: 0 13px !important;
}

.sidebar .sns-buttons a {
    background: transparent !important;
    border: none !important;
    color: #666666 !important;
    font-size: 17px !important;
    width: auto !important;
    height: auto !important;
    line-height: 1 !important;
    transition: color 0.3s ease !important;
    text-decoration: none !important;
}

.sidebar .sns-buttons a:hover {
    color: #111111 !important;
}

.sidebar .author-box .author-description {
    border-top: 1px solid #e5e5e5 !important;
    margin-top: 20px !important;
    padding-top: 5px !important;
}

.sidebar .author-description p {
    color: #444444 !important;
    font-size: 0.85rem !important;
    line-height: 1.8 !important;
    letter-spacing: 0.05em !important;
    margin: 0 !important;
}

.sidebar .author-description p a {
    text-underline-offset: 4px !important;
    transition: color 0.3s ease !important;
}

.sidebar .author-description p a:hover {
    color: #a8a29e !important;
}

/* サイドバーポピュラーエントリーリンク */
.widget_popular_entries .popular-entry-card-link,
.widget_popular_entries .popular-entry-card-link *,
.widget_popular_entries .popular-entry-card-link:hover,
.widget_popular_entries .popular-entry-card-link:hover * {
    text-decoration: none !important;
}

/* コンテンツ下部プロフィールボックス */
h2.widget-content-bottom-title.main-widget-label.widget-title {
    color: #111111 !important;
    font-size: 1.5rem !important;
    font-weight: bold !important;
    text-transform: uppercase !important;
    letter-spacing: 0.15em !important;
    text-align: center !important;
    border: none !important;
    padding: 0 !important;
    background: transparent !important;
}

h2.widget-content-bottom-title.main-widget-label.widget-title::before,
h2.widget-content-bottom-title.main-widget-label.widget-title::after {
    display: none !important;
    content: none !important;
}

#content-bottom .author-box::before,
#content-bottom .author-box::after {
    display: none !important;
    content: none !important;
}

#content-bottom .author-box {
    background: rgba(255, 255, 255, 0.9) !important;
    border: none !important;
    box-shadow: none !important;
}

#content-bottom .author-name a {
    color: #111111 !important;
    font-size: 1.1rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    text-decoration: none !important;
}

#content-bottom .sns-follow-buttons {
    border: none !important;
    padding: 0 !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    gap: 0 13px !important;
    margin-top: 15px !important;
}

#content-bottom .sns-buttons a {
    background: transparent !important;
    border: none !important;
    color: #666666 !important;
    font-size: 17px !important;
    width: auto !important;
    height: auto !important;
    line-height: 1 !important;
    transition: color 0.3s ease !important;
    text-decoration: none !important;
}

#content-bottom .sns-buttons a:hover {
    color: #111111 !important;
}

#content-bottom .author-description p {
    color: #444444 !important;
    font-size: 0.85rem !important;
    line-height: 1.8 !important;
    letter-spacing: 0.05em !important;
    margin: 0 !important;
}

#content-bottom .author-description p a {
    text-underline-offset: 4px !important;
    transition: color 0.3s ease !important;
}

#content-bottom .author-description p a:hover {
    color: #a8a29e !important;
}

@media screen and (min-width: 835px) {
    #content-bottom .sns-follow-buttons {
        justify-content: flex-start !important;
    }

    #content-bottom .author-box .author-description {
        border-top: none !important;
        border-left: 1px solid #e5e5e5 !important;
        padding-top: 0 !important;
        padding-left: 25px !important;
        margin-top: 0 !important;
        margin-left: 0 !important;
    }
}

@media screen and (max-width: 834px) {
    #content-bottom .sns-follow-buttons {
        justify-content: center !important;
        margin-bottom: 20px !important;
    }

    #content-bottom .author-box .author-description {
        border-left: none !important;
        border-top: 1px solid #e5e5e5 !important;
        padding-left: 0 !important;
        padding-top: 15px !important;
        margin-top: 0 !important;
        margin-left: 0 !important;
    }
}

/* フッター */
.skin-grayish .footer {
    background-color: #d6d3d1 !important;
}

/* パンくずリスト */
#breadcrumb.breadcrumb,
#breadcrumb.breadcrumb a,
#breadcrumb.breadcrumb .breadcrumb-caption {
    color: #666666 !important;
    font-size: 0.78rem !important;
    letter-spacing: 0.08em !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}

#breadcrumb.breadcrumb a:hover,
#breadcrumb.breadcrumb a:hover .breadcrumb-caption {
    color: #a8a29e !important;
}

#breadcrumb.breadcrumb .fa {
    color: #888888 !important;
    margin-right: 0.5em !important;
}

#breadcrumb.breadcrumb .fa-angle-right {
    font-size: 0.7rem !important;
    color: #b5afaa !important;
    margin-left: 0.8em !important;
    margin-right: 0.8em !important;
    opacity: 0.6 !important;
}

/* 目次 */
body:not(.home) .entry-content .toc,
.widget_toc .toc {
    background: transparent !important;
    background-color: transparent !important;
    border: none !important;
    border-top: 1px solid #e5e5e5 !important;
    border-bottom: 1px solid #e5e5e5 !important;
    box-shadow: none !important;
    padding-top: 10px !important; 
}

body:not(.home) .entry-content .toc .toc-title,
.widget_toc .toc-title {
    color: #111111 !important;
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    letter-spacing: 0.14em !important;
    background-color: transparent !important; 
    background-image: none !important;
    border: none !important;
    margin: 0 0 4px 0 !important;
    line-height: 1.4 !important;
}

body:not(.home) .entry-content .toc .toc-content .toc-list > li,
.widget_toc .toc-list > li {
    border-bottom: 1px solid #f9f9f9 !important;
    padding-top: 12px !important;
    padding-bottom: 12px !important;
}

body:not(.home) .entry-content .toc .toc-content .toc-list > li:last-child,
.widget_toc .toc-list > li:last-child {
    border-bottom: none !important;
}

body:not(.home) .entry-content .toc .toc-content .toc-list > li > a::before,
.skin-grayish .tnt-number .toc-list > li > a::before,
.widget_toc .toc-list > li > a::before {
    background-color: #ffffff !important;
    color: #444444 !important;
    border: 1px solid #e5e5e5 !important;
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", sans-serif !important;
    font-weight: 500 !important;
    font-size: 11px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

body:not(.home) .entry-content .toc .toc-content .toc-list ol li a::before,
.skin-grayish .tnt-number .toc-list ol li a::before,
.widget_toc .toc-list ol li a::before {
    content: "•" !important;
    background: transparent !important;
    background-color: transparent !important;
    color: #a8a29e !important;
    font-size: 14px !important;
    position: absolute !important;
    left: 0 !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    display: inline-flex !important;
    align-items: center !important;
    width: auto !important;
    height: auto !important;
    border-radius: 0 !important;
    border: none !important;
}

body:not(.home) .entry-content .toc .toc-content .toc-list ol li a,
.skin-grayish .tnt-number .toc-list ol li a,
.widget_toc .toc-list ol li a {
    position: relative !important;
    padding-left: 16px !important;
}

body:not(.home) .entry-content .toc .toc-content a,
.widget_toc .toc-content a {
    text-decoration: none !important;
    font-weight: 500 !important;
}

body:not(.home) .entry-content .toc .toc-content a:hover,
.widget_toc .toc-content a:hover {
    text-decoration: none !important;
}

/* カテゴリータグ */
.entry-categories-tags {
    margin-top: 30px !important;
    margin-bottom: 25px !important;
}

/* カテゴリーラベルフッター */
.skin-grayish .article-footer .entry-categories .cat-link,
.entry-categories .cat-link {
    background-color: transparent !important;
    background: transparent !important;
    color: #444444 !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    padding: 0 !important;
    margin-right: 18px !important;
    margin-bottom: 8px !important;
    display: inline-block !important;
    border: none !important;
    border-radius: 0 !important;
    text-decoration: none !important;
    border-bottom: none !important;
    transition: color 0.3s ease !important;
}

.skin-grayish .article-footer .entry-categories .cat-link:hover,
.entry-categories .cat-link:hover {
    color: #a8a29e !important;
    background-color: transparent !important;
    text-decoration: none !important;
    border-bottom: none !important;
    opacity: 1 !important;
}

.entry-categories .cat-link .cat-icon {
    display: none !important;
}

/* エントリーカード日付 */
.card-meta .post-date .fa,
.card-meta .post-date .far,
.card-meta .post-date .fas,
.card-meta .post-update .fa,
.card-meta .post-update .far,
.card-meta .post-update .fas,
.card-meta span[class*="fa-"] {
  display: none !important;
}

.card-meta .post-update::before {
  content: "Update: " !important;
  font-size: 1em !important;
  font-weight: 400 !important;
  letter-spacing: 0.02em !important;
  color: #a8a29e !important;
  margin-right: 0.1em !important;
  display: inline-block !important;
}

.card-meta .post-date,
.card-meta .post-update,
.card-meta .entry-date,
.card-meta .post-update time {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
  font-size: 0.76rem !important;
  color: #a8a29e !important;
}

.card-meta .post-update .entry-date,
.card-meta .post-update time {
  color: #888888 !important;
}

/* メインコンテンツ下線 */
.skin-grayish .content .main .entry-content {
    border-bottom: 1px solid #e5e5e5 !important;
}

/* 記事下SNSエリア */
.skin-grayish .article-footer .sns-share-message, 
.skin-grayish .article-footer .sns-follow-message {
    color: #111111 !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    letter-spacing: 0.1em !important;
    width: fit-content !important;
    margin: 40px auto 20px !important;
    padding: 0 !important;
    text-align: center !important;
    border: none !important;
}

.skin-grayish .article-footer .sns-share-message::before,
.skin-grayish .article-footer .sns-share-message::after,
.skin-grayish .article-footer .sns-follow-message::before,
.skin-grayish .article-footer .sns-follow-message::after {
    content: none !important;
}

.article-footer .sns-share, 
.article-footer .sns-follow,
.article-footer .sns-share-buttons,
.article-footer .sns-follow-buttons,
.skin-grayish .article-footer .sns-share,
.skin-grayish .article-footer .sns-follow {
    background: transparent !important;
    background-image: none !important;
    border: none !important;
    box-shadow: none !important;
    padding: 0 !important;
    margin: 0 auto 50px !important;
}

.article-footer .sns-buttons a.sns-button {
    background-color: transparent !important;
    background-image: none !important;
    border: 1px solid #dcd6cf !important;
    border-radius: 0 !important;
    color: #111111 !important;
    width: 44px !important;
    height: 44px !important;
    line-height: 42px !important;
    transition: background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease !important;
}

.article-footer .sns-buttons a.sns-button:hover {
    background-color: #111111 !important;
    border-color: #111111 !important;
    color: #ffffff !important;
}

/* インフォメーションボックス */
.is-style-information-box {
    background: #fcfbfa !important;
    border-width: 1px !important;
    border-color: #e5e5e5 !important;
    border-radius: 0 !important;
    padding: 25px !important;
}

.is-style-information-box::before {
    background-color: #ffffff !important;
    color: #a8a29e !important;
    font-size: 14px !important;
}

.is-style-information-box p {
    color: #444444 !important;
    font-size: 0.85rem !important;
    line-height: 1.8 !important;
    letter-spacing: 0.05em !important;
    margin: 0 !important;
}

/* 引用ブロック */
.skin-grayish .entry-content blockquote,
.skin-grayish blockquote {
  background: #ffffff !important;
  background-color: #ffffff !important;
  border: none !important;
  border-top: 1px solid #e5e5e5 !important;
  border-bottom: 1px solid #e5e5e5 !important;
  box-shadow: none !important;
  padding: 1.8rem 1.8rem 2.5rem !important;
  margin: 3rem 0 !important;
  position: relative !important;
}

.skin-grayish .entry-content blockquote::before,
.skin-grayish blockquote::before {
  display: block !important;
  content: "“" !important;
  font-family: Georgia, serif !important;
  font-weight: normal !important;
  position: absolute !important;
  top: 12px !important;
  left: 16px !important;
  color: #a8a29e !important;
  font-size: 28px !important;
  line-height: 1 !important;
  background: transparent !important;
  background-color: transparent !important;
}

.skin-grayish .entry-content blockquote::after,
.skin-grayish blockquote::after {
  display: block !important;
  content: "”" !important;
  font-family: Georgia, serif !important;
  font-weight: normal !important;
  position: absolute !important;
  bottom: 8px !important;
  right: 16px !important;
  color: #a8a29e !important;
  font-size: 28px !important;
  line-height: 1 !important;
  background: transparent !important;
  background-color: transparent !important;
  transform: none !important;
}

.skin-grayish .entry-content blockquote p,
.skin-grayish blockquote p {
  color: #444444 !important;
  font-size: 0.95rem !important;
  line-height: 1.85 !important;
  margin-bottom: 1.5rem !important;
}

.skin-grayish .entry-content blockquote p:last-of-type,
.skin-grayish blockquote p:last-of-type {
  margin-bottom: 0 !important;
}

.skin-grayish .entry-content blockquote cite,
.skin-grayish blockquote cite {
  display: block !important;
  text-align: right !important;
  color: #a8a29e !important;
  font-size: 0.8rem !important;
  font-style: normal !important;
  letter-spacing: 0.08em !important;
  margin-top: 2rem !important;
  padding-top: 0 !important;
  border-top: none !important;
}

/* New Postページネーション */
.skin-grayish .pagination-next-link {
    background-color: rgba(251, 251, 250, 0.85) !important;
    color: #444444 !important;
    border: 1px solid rgba(229, 229, 229, 0.9) !important;
    border-radius: 0% !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.15em !important;
    width: 200px !important;
    margin: 40px auto 24px auto !important;
    padding: 12px 0 !important;
    text-align: center !important;
    display: block !important;
    transition: all 0.3s ease !important;
}

.skin-grayish .pagination .page-numbers {
    background: transparent !important;
    background-color: transparent !important;
    color: #888888 !important;
    border: none !important;
    border-radius: 0% !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    width: 36px !important;
    height: 36px !important;
    line-height: 36px !important;
    padding: 0 !important;
    margin: 0 4px !important;
    display: inline-block !important;
    text-align: center !important;
    position: relative !important;
    transition: all 0.3s ease !important;
}

.skin-grayish .pagination .page-numbers.current {
    color: #444444 !important;
    font-weight: 600 !important;
    background: transparent !important;
    background-color: transparent !important;
}

.skin-grayish .pagination .page-numbers.current::after {
    content: "" !important;
    position: absolute !important;
    bottom: 2px !important;
    left: 25% !important;
    width: 50% !important;
    height: 1px !important;
    background-color: #bfa15f !important;
}

.skin-grayish .pagination .page-numbers.next,
.skin-grayish .pagination .page-numbers.prev {
    font-size: 12px !important;
    color: #888888 !important;
}

.skin-grayish .pagination-next-link:hover {
    background-color: rgba(244, 244, 242, 0.95) !important;
    color: #111111 !important;
    border-color: rgba(180, 180, 180, 0.9) !important;
}

.skin-grayish .pagination a:hover,
.skin-grayish .pager-links.pager-numbers .post-page-numbers .page-numbers:not(.current):hover {
    scale: 1 !important;
    color: #bfa15f !important;
    background-color: transparent !important;
    border: none !important;
}

/* 記事本文内の単体画像だけに前後の余白を付与 */
.article .entry-content > figure.wp-block-image {
  margin-top: 40px;
  margin-bottom: 40px;
}

/* 画像のキャプションを中央揃えにする */
.wp-block-image figcaption {
	text-align: center;
	margin: 0.8em 0 0 0;
}

/* YouTube */
.video-container {
margin: 0 auto;
}

.youtube-shorts iframe {
  position: relative;
  aspect-ratio:9 /16; /* ビデオの横/縦比 */
}

.youtube-shorts .video {
  height: 100%;
  margin: 0 auto;
  overflow: visible;
  padding-bottom: 0;
  width: 300px;   /* ビデオ横幅 */
}

/* PC（768px以上）では電話リンクを無効化し、見た目も通常のテキストにする */
@media screen and (min-width: 768px) {
    #access a[href^="tel:"] {
        pointer-events: none !important;
        color: inherit !important;
        text-decoration: none !important;
        cursor: default !important;
    }
}

/* スマホ（767px以下）ではタップしやすいように調整 */
@media screen and (max-width: 767px) {
    #access a[href^="tel:"] {
        font-weight: bold !important;
        color: #a8a29e !important;
        text-decoration: underline !important;
    }
}

/* 駐車場セクション専用の画像制御 */
.parking img {
    margin: 10px 0 !important;
    border-radius: 4px;
    border: 1px solid #555;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
    width: 100%;
    height: auto;
    display: block;
}

/* 駐車場セクション専用のアコーディオン制御 */
.parking details {
    margin: 10px 0;
}

.parking summary {
    font-size: 0.9em;
    cursor: pointer;
    white-space: nowrap;
}

.parking summary::before {
    content: "📍";
}

/* マップコンテナ */
.map-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    margin: 10px 0 20px;
    border-radius: 8px;
    border: 1px solid #555;
    box-shadow: 0 4px 12px rgba(0,0,0,0.05);
}

.map-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
    border: 0;
}

/* ブログカード */
.wp-block-cocoon-blocks-blogcard {
    width: 100% !important;
    margin: 35px 0 !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    background-color: transparent !important;
}

.blogcard-wrap,
.blogcard,
.skin-grayish .blogcard {
    border: none !important;
    border-width: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    background-color: transparent !important;
    border-radius: 0 !important;
}

@media screen and (min-width: 835px) {
    .skin-grayish .blogcard,
    .blogcard {
        display: grid !important;
        grid-template-columns: 200px auto !important;
        column-gap: 20px !important;
    }
}

a.blogcard-wrap {
    padding: 20px !important;
    text-decoration: none !important;
    border-bottom: none !important;
    display: block !important;
    transition: opacity 0.3s ease-in-out !important;
}

a.blogcard-wrap:hover {
    opacity: 0.8 !important;
    background-color: transparent !important;
    text-decoration: none !important;
}

.blogcard-title,
a.blogcard-wrap .blogcard-title {
    color: #111111 !important;
    font-size: 1.15rem !important;
    font-weight: 600 !important;
    line-height: 1.4 !important;
    text-decoration: none !important;
    border-bottom: none !important;
}

.blogcard-snippet,
a.blogcard-wrap .blogcard-snippet {
    color: #666666 !important;
    font-size: 0.9rem !important;
    text-decoration: none !important;
    border-bottom: none !important;
}

.blogcard-footer {
    border: none !important;
    background: none !important;
    background-color: transparent !important;
}

.blogcard-domain {
    color: #888888 !important;
    font-size: 0.85rem !important;
    letter-spacing: 0.05em !important;
}

[class*="blogcard"]::before,
[class*="blogcard"]::after {
    content: none !important;
}

/* アワード */
body:not(.home) .article p.cstm-award-heading,
body:not(.home) .article h2.cstm-award-heading,
.cstm-award-heading {
    font-weight: 600 !important;
    letter-spacing: 0.15em !important;
    line-height: 1.5 !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    margin: 40px auto 25px 0 !important;
    padding: 0 !important;
}

body:not(.home) .article p.cstm-award-heading {
    font-size: 1.05rem !important;
}

body:not(.home) .article h2.cstm-award-heading {
    font-size: 1.3rem !important;
}

body:not(.home) .article p.cstm-award-heading::before,
body:not(.home) .article h2.cstm-award-heading::before,
.cstm-award-heading::before {
    font-family: "Font Awesome 5 Free" !important;
    content: "\f521" !important;
    font-weight: 900 !important;
    color: #bfa15f !important;
    font-size: 0.9em !important;
    margin-right: 12px !important;
    display: inline-block !important;
    position: static !important;
    background: none !important;
    background-color: transparent !important;
    border: none !important;
    width: auto !important;
    height: auto !important;
    line-height: 1 !important;
}

/* 段落リンク用 */
p.cstm-link-heading {
    position: relative !important;
    font-size: 1.05rem !important;
    font-weight: 600 !important;
    letter-spacing: 0.12em !important;
    line-height: 1.6 !important;
    margin: 50px auto 25px auto !important;
    padding: 0 0 0 18px !important;
}

p.cstm-link-heading::before {
    content: "" !important;
    position: absolute !important;
    top: 15% !important;
    bottom: 15% !important;
    left: 0 !important;
    width: 1px !important;
    background-color: #444444 !important;
    border: none !important;
}

/* 新着記事横スクロール */
.is-list-horizontal .swiper-button-next, 
.is-list-horizontal .swiper-button-prev,
.swiper-button-next,
.swiper-button-prev {
    background: rgba(168, 162, 158, 0.6) !important;
    border-radius: 50% !important;
    box-shadow: none !important;
    -webkit-box-shadow: none !important;
    opacity: 0.8 !important;
    transition: background 0.3s ease, opacity 0.3s ease !important;
}

.is-list-horizontal .swiper-button-next:hover,
.is-list-horizontal .swiper-button-prev:hover,
.swiper-button-next:hover,
.swiper-button-prev:hover {
    background: rgba(168, 162, 158, 0.8) !important;
    opacity: 1 !important;
}

/* 関連記事横スクロール */
.skin-grayish .under-entry-content .related-list .scroll-hint-icon {
    background: rgba(168, 162, 158, 0.9) !important;
}

/* 前後の記事ページャー */
.skin-grayish .pager-post-navi {
  padding: 1.5rem 0 !important;
  border-top: 1px solid #e5e5e5 !important;
  border-bottom: 1px solid #e5e5e5 !important;
}

.skin-grayish .pager-post-navi .a-wrap {
  translate: none !important;
  transform: none !important;
  transition: opacity 0.3s ease !important;
}

.skin-grayish .pager-post-navi .a-wrap:hover {
  background-color: transparent !important;
  translate: none !important;
  transform: none !important;
  opacity: 0.7 !important;
}

.skin-grayish .pager-post-navi .next-post-thumb::before,
.skin-grayish .pager-post-navi .prev-post-thumb::before {
  font-size: 10px !important;
  font-weight: 500 !important;
  letter-spacing: 0.12em !important;
  color: #ffffff !important;
  background-color: rgba(168, 162, 158, 0.9) !important;
  padding: 3px 8px !important;
}

.skin-grayish .pager-post-navi a.prev-post .prev-post-title,
.skin-grayish .pager-post-navi a.next-post .next-post-title {
  font-size: 14px !important;
  font-weight: 500 !important;
  color: #444444 !important;
  line-height: 1.5 !important;
}

/* PRIMARY SOURCE CERTIFIED BY KVA */
#kva-official-certification {
    background: #fbfbfa !important;
    background-color: #fbfbfa !important;
    border: none !important;
    border-top: 1px solid #e5e5e5 !important;
    border-bottom: 1px solid #e5e5e5 !important;
    box-shadow: none !important;
    padding: 4.5rem 1.5rem !important;
    margin: 4.5rem 0 !important;
    text-align: center;
}

.kva-seal-visual {
    margin: 0 0 3rem 0 !important;
    padding: 0 !important;
}

.kva-seal-visual img {
    max-width: 100%;
    width: 440px;
    height: auto;
    border-radius: 0 !important;
    box-shadow: none !important;
    vertical-align: bottom;
}

.kva-certification-statement {
    max-width: 620px;
    margin: 0 auto !important;
    padding: 0 !important;
}

.kva-certification-title {
    display: inline-block;
    margin: 0 auto 2rem auto !important;
    padding: 0 0 0.6rem 0 !important;
    border-bottom: 3px double #bfa15f !important;
    font-family: "Times New Roman", Times, "Noto Serif JP", serif !important;
    font-size: 1.15rem !important;
    font-weight: 500 !important;
    color: #1c1917 !important;
    letter-spacing: 0.22em !important;
    line-height: 1.4 !important;
}

.kva-certification-body {
    font-family: "Georgia", "Noto Serif JP", serif !important;
    font-size: 0.9rem !important;
    font-style: italic !important;
    color: #444444 !important;
    line-height: 2.1 !important;
    margin: 0 0 2.5rem 0 !important;
}

.kva-certification-copyright {
    font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", sans-serif !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    color: #a8a29e !important;
    letter-spacing: 0.15em !important;
    margin: 0 !important;
}

/* トップへ戻るボタン */
.skin-grayish .go-to-top-button {
    --skin-grayish-site-main-hover: #111111 !important; 
    --white_half: rgba(255, 255, 255, 0.8) !important;
    bottom: 24px !important;
    right: 24px !important;
    width: 48px !important;
    height: 48px !important;
    border: 1px solid #dcd6cf !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    transform: scale(1) !important;
    transition: background-color 0.3s ease, border-color 0.3s ease !important;
}

.skin-grayish .go-to-top-button button,
.skin-grayish .go-to-top-button span,
.skin-grayish .go-to-top-button::before,
.skin-grayish .go-to-top-button:hover button,
.skin-grayish .go-to-top-button:hover span,
.skin-grayish .go-to-top-button:hover::before {
    transform: rotate(45deg) !important;
    transition: none !important;
}

.skin-grayish .go-to-top-button:hover {
    background-color: #111111 !important;
    border-color: #111111 !important;
    --skin-grayish-site-main-hover: #ffffff !important;
    transform: scale(1) !important;
}

@media screen and (max-width: 1023px) {
    .skin-grayish .go-to-top-button {
        display: none !important;
    }
}

/* ギャラリー */
.wp-block-gallery figure {
  overflow: hidden;
}

.wp-block-gallery figure img {
  transform: scale(1);
}

@media (hover: hover) {

  .wp-block-gallery figure img {
    transition:
      opacity 0.6s ease,
      transform 0.6s cubic-bezier(0.4, 0, 0.2, 1),
      filter 0.6s ease;
  }

  .wp-block-gallery:hover figure img {
    opacity: 0.3;
    filter: grayscale(100%);
  }

  .wp-block-gallery figure:hover img {
    opacity: 1;
    filter: grayscale(0%);
    transform: scale(1.05);
  }
}

@media (hover: none) {

  .wp-block-gallery figure img {
    opacity: 1;
    transform: none;
    filter: grayscale(20%);
  }
}