@charset "UTF-8";





/* ==========================================================================
   トップ＆1カラム共通：セクションh2タイトル ＆ サブテキスト
   ========================================================================== */

/* 1. 独立した中央寄せh2タイトル（New Post / Gallery / Kumano / Archives など共通） */
.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;
}

/* 中央寄せh2の周辺装飾をシャットアウト */
.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;
}

/* 2. 横並びブロック内の左寄せh2（Portrait / About など：トップページ用） */
.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;
}

/* 3. サブテキスト基本スタイル（複数行・長文対応ビジュアル仕様） */
.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;       /* 雑誌のコラムのように、中央に美しく収まる横幅制限 */
}

/* 4. サブテキスト：レイアウトごとの整列と余白の個別調律 */
/* A. 通常セクション用（中央寄せ） */
.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;    /* 下のコンテンツとの間に美しい空間を確保 */
}

/* 4-B. 横並びブロック用（左寄せ：Portrait / About など） */
.home .article .cstm-sub-text.leftype {
    text-align: left !important;        /* パソコンの大画面ではPORTRAITの始まりと完璧に左揃え */
    margin: 4px 0 0 0 !important;       /* 上のh2との距離を微調整 */
    padding-top: 0 !important;
    padding-bottom: 30px !important;    /* 下の本文テキストとの間のクッション余白 */
}

/* --------------------------------------------------------------------------
   【修正決定版】Cocoonの公式ブレイクポイント（1023px以下）に完全同期
   -------------------------------------------------------------------------- */
@media screen and (max-width: 1023px) {
    /* 横並びブロック内のh2とサブテキストを、Cocoonが画面を切り替えた瞬間にセンターへ */
    .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;
    }
}

/* 5. 【復活！】不要な「短い線」などのデフォルト装飾を完全に消し去る */
.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;
}

/*!
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;
}

/* h2 */
body:not(.home) .article h2 {
    background-color: transparent !important;
    border-radius: 0 !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;
}

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;
}

/* サイドバー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 {
    color: #111111 !important;
}

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

.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;
}

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::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;
}

body:not(.home) .header-container {
    transition: transform 0.3s ease !important;
}

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

body.home #navi {
    transition: transform 0.3s ease !important;
}

body.home #navi.header-hide {
    transform: translateY(-100px) !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;
}

/* 記事下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;
}

/* 記事本文内の単体画像だけに前後の余白を付与 */
.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;
}

/* トップへ戻るボタン */
.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;
    }
}