
/* --- Snow Monkey Footer CTA POP Orange Style (画像 大・はみ出し強調) --- */

/* フッターCTA全体のコンテナ */
.p-footer-cta {
    background: linear-gradient(135deg, #ff9800, #ff6e3b);
    padding: 12px 0;
    border-top: none;
    box-shadow: 0 -5px 15px rgba(0, 0, 0, 0.15);
/* ★下にはみ出す画像が見えるように少し高さを確保（必要に応じて）*/
    padding-bottom: 25px; /* 例: 少し余白を追加 */
}

/* 内側コンテナ */
.p-footer-cta .c-container {
    max-width:1000px;
    padding-left: 15px;
    padding-right: 15px;
}

/* 行の垂直中央揃え */
.p-footer-cta .c-row--middle {
    align-items: center;
}

/* 左列：テキストエリア */
.p-footer-cta__text {
    color: #ffffff;
    font-size: 14px;
    line-height: 1.6;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.2);
    padding: 5px 0;
    text-align: left;
}
.p-footer-cta__text strong,
.p-footer-cta__text b {
    font-size: 1.2em;
    font-weight: bold;
    margin: 0 5px;
}

/* 右列：ボタンエリア */
.p-footer-cta .c-row__col--1-2:last-child {
    text-align: right;
}

/* 主要CTAボタン */
.p-footer-cta__primary-btn.c-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    padding: 14px 50px 14px 75px!important; 
    background: #ffffff;
    color: #f57c00;
    border: 2px solid #ffffff;
    border-radius: 50px;
    font-size: 1.7em!important;
    font-weight: bolder;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
    position: relative; 
    overflow: visible; 
    z-index: 1;
    cursor: pointer;
    min-height: 55px;
}

/* ボタン内画像 (::before 疑似要素) - 大幅に調整 */
.p-footer-cta__primary-btn.c-btn::before {
    content: '';
    display: block;
    position: absolute;
    left: -35px;
    top: 50%;
    transform: translateY(-50%);
    width: 105px;
    height: 105px;
    background-image: url(https://tochiwa-reform.local/wp-content/uploads/2025/09/2-1.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    border-radius: 50%;
    z-index: 2;
    transition: transform 0.3s ease;
}

/* ボタンのホバーエフェクト */
.p-footer-cta__primary-btn.c-btn:hover {
    background: #fffaf0;
    color: #ef6c00;
    transform: translateY(-2px); 
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
}
/* 画像のホバーエフェクト */
.p-footer-cta__primary-btn.c-btn:hover::before {
    transform: translateY(-50%) scale(1.08) rotate(1deg); /* 少し拡大して傾ける */
}

/* 閉じるボタン（z-index調整） */
.p-footer-cta__close-btn {
    position: absolute;
    top: -12px;
    right: 10px;
    background-color: rgba(255, 255, 255, 0.8);
    color: #ff6e3b;
    border: 1px solid #ffcc80;
    border-radius: 50%;
    width: 30px;
    height: 30px;
    padding: 0;
    font-size: 15px;
    line-height: 28px;
    text-align: center;
    cursor: pointer;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
    z-index: 5; /* ★画像より手前に来るように */
}
.p-footer-cta__close-btn:hover {
    background-color: #fff;
    color: #f57c00;
    transform: scale(1.1) rotate(90deg);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.3);
}
.p-footer-cta__close-btn svg {
    display: inline-block;
    vertical-align: middle;
    width: 1em;
    height: 1em;
    position: relative;
    top: -1px;
}
.p-footer-cta__text {
    font-weight: bold;
}
.l-footer-widget-area__item:nth-child(2) {
    margin-top: 2rem;
    margin-bottom: 0;
}
a.gaimai {
    text-align: center;
    display: block;
}





.l-header__drop-nav[aria-hidden=false] {
    visibility: hidden;
}


.wp-block-cover.alignfull.has-sm-text-alt-color.has-text-color.has-link-color {
    padding-bottom: 0;
}









/* スマートフォン表示用の調整例 (782px以下) */
@media screen and (max-width: 782px) {
    .p-footer-cta {
        padding: 8px 0 15px 0; /* 下パディング調整 */
    }
    .p-footer-cta .c-row__col--1-2 {
        width: 100%;
        text-align: center;
    } 
    .p-footer-cta__text {
        font-size: 12px;
        line-height: 1.5;
        padding-bottom: 15px; /* ボタンとの間隔調整 */
        text-align: center;
    }
    .p-footer-cta .c-row__col--1-2:last-child {
        text-align: center;
    }
    .p-footer-cta__primary-btn.c-btn {
        font-size: 1em;
        padding: 12px 20px 12px 50px; /* スマホでのパディング */
        min-height: 50px; /* スマホでのボタン高さ */
    }
  /* スマホでの画像サイズと位置調整 */
    .p-footer-cta__primary-btn.c-btn::before {
        width: 60px; /* スマホでも大きく */
        height: 60px;
        left: -15px; /* はみ出し具合 */
    }
    .p-footer-cta__close-btn {
        top: -8px; /* 位置調整 */
        right: 8px;
        width: 26px;
        height: 26px;
        font-size: 13px;
        line-height: 24px;
    }
}





















/* ヘッダー */
.l-1row-header {
    padding: 1rem 0;
}
.p-global-nav .c-navbar__item>a>span {
    font-size: 1rem;
	display: block;
}
/* .c-site-branding__title .custom-logo {
    width: 200px;
} */
header.l-header {
    background: #333;
	color: white;
}
















/* --- Snow Monkey Header POP & Busy Orange/Green Style --- */

/* --- 1. トップバーのスタイル --- */
.header-top-bar {
    background: #f57f17; /* 鮮やかなオレンジ */
    padding: 6px 0;
    font-size: 13px;
    line-height: 1.4;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1);
}
.header-top-bar .c-container { 
    max-width: 1100px; 
}
.header-top-bar__inner { 
    display: flex;
    justify-content: space-between;
    align-items: end; 
    flex-wrap: wrap; 
    gap: 5px 10px; 
}
.header-top-bar__contact { 
    display: flex; align-items: center; flex-wrap: wrap; gap: 8px 15px; 
}

.header-top-bar__label {
    font-weight: 700; /* 太字 */
    text-shadow: 1px 1px 1px rgba(0,0,0,0.2);
    background-color: rgba(255,255,255,0.1); /* ラベル背景 */
    padding: 2px 8px;
    border-radius: 4px;
}
.header-top-bar__tel-wrap,
.header-top-bar__hours {
    display: inline-flex;
    align-items: center;
    gap: 6px; /* アイコンとテキストの間隔 */
}
.header-icon { /* Font Awesome アイコン共通 */
    font-size: 1.1em;
    vertical-align: middle;
    position: relative;
    top: -1px;
}
.header-top-bar__tel {
    color: #fff;
    font-weight: 700;
    font-size: 1.5em; /* 電話番号をかなり大きく */
    text-decoration: none;
    transition: transform 0.2s ease;
    display: inline-block;
    line-height: 1;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
}
.header-top-bar__tel:hover { 
    transform: scale(1.03); 
}
.header-top-bar__hours { 
    font-size: 0.9em; opacity: 0.95; 
}
.header-top-bar__cta { 
    margin-left: auto; padding-left: 15px; 
}

/* トップバーボタン（緑系で目立たせる） */
.header-top-bar__btn.c-btn {
    background: linear-gradient(to bottom, #66bb6a, #388e3c); /* 緑グラデーション */
    color: #fff;
    border: none;
    border-radius: 8px;
    padding: 8px 22px; /* 少し大きめに */
    font-size: 1em;
    font-weight: bold;
    text-decoration: none;
    transition: all 0.2s ease-out;
    box-shadow: 0 4px 6px rgba(0,0,0,0.2), inset 0 -2px 1px rgba(0,0,0,0.15);
    text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
    display: inline-flex;
    align-items: center;
}
.header-top-bar__btn.c-btn .header-icon { margin-right: 8px; }
.header-top-bar__btn.c-btn:hover {
    background: linear-gradient(to bottom, #81c784, #4caf50);
    transform: translateY(-2px);
    box-shadow: 0 6px 10px rgba(0,0,0,0.25), inset 0 -2px 1px rgba(0,0,0,0.1);
}
.header-top-bar__btn.c-btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 3px rgba(0,0,0,0.2), inset 0 -2px 1px rgba(0,0,0,0.15);
}

/* --- 2. 既存ヘッダー（ロゴ・ナビ）のスタイル調整 --- */
.l-header { box-shadow: 0 3px 8px rgba(0,0,0,0.1); }




/* ナビゲーションリンク（区切り線とホバー背景） */
.p-global-nav > .c-navbar > .c-navbar__item > a {
    font-weight: bold;
    padding: 10px 30px; /* 少し縦に長く */
    transition: all 0.3s ease;
    position: relative;
    font-size: 15px;
    border-right: 1px dashed #ddd; /* 点線の区切り */
}
.p-global-nav > .c-navbar > .c-navbar__item:first-child > a { 
    border-left: 1px dashed #ddd; 
}
.p-global-nav > .c-navbar > .c-navbar__item > a::after { 
    content: none; 
} 

.p-global-nav > .c-navbar > .c-navbar__item > a:hover,
.p-global-nav > .c-navbar > .c-navbar__item[data-active=true] > a,
.p-global-nav > .c-navbar > .c-navbar__item.current-menu-ancestor > a {
    background-color: #ffecb3; /* ホバー背景（黄色系） */
    color: #e65100;
}


/* --- Snow Monkey Header - Nav Icons --- */

/* アイコン共通スタイル */
.p-global-nav .c-navbar__item > a::before {
    display: inline-block; 
    font-family: "Font Awesome 5 Free", "Font Awesome 6 Free"; 
    font-weight: 900; 
    font-size: 1.5em; 
    width: 1.2em;
    text-align: center;
    color: #ff9800;
    transition: color 0.3s ease;
    vertical-align: middle;
    position: relative;
    top: -1px; 
}

/* ホバー時のアイコン色 (文字色に合わせる場合) */
.p-global-nav > .c-navbar > .c-navbar__item > a:hover::before {
    color: #e65100; /* ホバー時の文字色と同じ */
}

/* TOP (Home icon) */
.p-global-nav .menu-item-24 > a::before { /* TOPメニュー項目のクラス */
    content: "\f015"; /* fas fa-home */
}

/* サービス (Bars icon - 確認済みのもの) */
.p-global-nav .menu-item-31 > a::before { /* サービスメニュー項目のクラス */
    content: "\f0c9"; /* fas fa-bars */
}

/* 太陽光脱着塗装について (Solar panel icon) */
.p-global-nav .menu-item-467 > a::before { /* 太陽光メニュー項目のクラス */
    content: "\f5ba"; /* fas fa-solar-panel */
}

/* 施工事例 (Paint roller icon) */
.p-global-nav .menu-item-468 > a::before { /* 施工事例メニュー項目のクラス */
    content: "\f5aa"; /* fas fa-paint-roller */
}

/* 会社概要 (Building icon - Regular) */
.p-global-nav .menu-item-27 > a::before { /* 会社概要メニュー項目のクラス */
    content: "\f1ad"; /* far fa-building */
    font-weight: 400; /* ★ Regular (far) スタイルなので weight 400 */
}

/* お問い合わせ (Envelope icon - 確認済みのもの、ボタン用調整) */
.p-global-nav .menu-item-25 > a::before { /* お問い合わせメニュー項目のクラス */
    content: "\f0e0"; 
    font-weight: 900
}
/* お問い合わせボタンホバー時のアイコン色 */
.p-global-nav .menu-item-25 > a:hover::before {
    color: #fff; /* ホバー時も白のまま */
}

/* 現在表示中のページのアイコン色 (任意) */
.p-global-nav > .c-navbar > .c-navbar__item[data-active=true] > a::before,
.p-global-nav > .c-navbar > .c-navbar__item.current-menu-ancestor > a::before {
    color: #e65100; /* アクティブ時の文字色と同じ */
}
/* アクティブなお問い合わせボタンのアイコン色 */
.p-global-nav > .c-navbar > .c-navbar__item[data-active=true]:last-child > a::before,
.p-global-nav > .c-navbar > .c-navbar__item.current-menu-ancestor:last-child > a::before {
    color: #fff; /* ボタンなので白 */
}
























/* サブメニュー */
.c-navbar__submenu { 
    background-color: #fff; 
    border: 1px solid #ddd;
    box-shadow: 0 5px 15px rgba(0,0,0,0.1); 
    border-radius: 0 0 8px 8px; 
}
.c-navbar__submenu .c-navbar__subitem > a { 
    transition: all .3s ease; 
    padding: 12px 18px;
    font-size: 14px; 
    font-weight: bold;
    border-bottom: 1px dotted #eee; 
}
.c-navbar__submenu .c-navbar__subitem:last-child > a { border-bottom: none; }
.c-navbar__submenu .c-navbar__subitem > a:hover { background-color: #fff8e1; color: #e65100; }

/* ハンバーガーボタン */
.c-hamburger-btn { color: #e65100; padding: 8px; border: 1px solid #ffcc80; border-radius: 5px; background-color: #fffaf0; }
.c-hamburger-btn:hover { background-color: #fff; }

/* --- 3. レスポンシブ調整 --- */
@media screen and (max-width: 991px) {
    .header-top-bar__inner { justify-content: center; gap: 8px 15px; }
    .header-top-bar__cta { margin-left: 0; padding-left: 0; margin-top: 5px; width: 100%; text-align: center; }
    .header-top-bar__btn.c-btn { display: inline-block; width: auto; }
}
@media screen and (max-width: 782px) {
    .header-top-bar { font-size: 11px; padding: 5px 0; border-bottom-width: 3px; }
    .header-top-bar__tel { font-size: 1.3em; } /* スマホでは電話番号さらに目立たせる */
    .header-top-bar__btn.c-btn { padding: 6px 16px; font-size: .95em; }
    .c-site-branding__title .custom-logo-link img { max-height: 45px; }
    .l-2row-header__row .c-row { padding-top: 6px; padding-bottom: 6px; }
    .p-global-nav > .c-navbar > .c-navbar__item:last-child > a { padding: 10px 15px !important; } /* スマホでのボタンパディング */
}





















/* CTA */
.contact-icon{
    display: flex;
    align-items: center;
}
.contact-icon .smb-btn__label {
    display: flex;
    align-items: center;
}
h2.wp-block-heading.is-style-plain img {
    margin-right: 20px;
}

/* フッター */

.l-footer-widget-area {
    background: #333;
    color: white;
}
.l-footer-widget-area__item:first-child{
margin-bottom:0px
}
.l-footer-widget-area__item .menu {
display:flex;
justify-content:center
}
.l-footer-widget-area__item .menu .menu-item {
margin:0 2em 0 0;
}

.l-footer {
display:flex;
flex-direction:column;
padding-bottom:50px
}
.l-footer-widget-area {
order:-1;
border:none
}
.p-social-nav {
background-color: #fff;
border:none;
padding-top:0
}
.l-footer .c-navbar li {
margin:0 1.5em
}
.c-ic-angle-right {
    display: inline-block;
    padding: 0 .25em;
    transform: translateY(-.3em)!important;
}
.children-expander {
    align-items: center;
    background-color: initial;
    border: none;
    cursor: pointer;
    display: contents;
    height: var(--_space);
    justify-content: center;
    outline: none;
    padding: 0;
    position: absolute;
    right: 0;
    top: -1px;
    transform: rotate(90deg);
    width: var(--_space);
    --_transition-duration: var(--_global--transition-duration);
    --_transition-function-timing: var(--_global--transition-function-timing);
    --_transition-delay: var(--_global--transition-delay);
    transition: transform var(--_transition-duration) var(--_transition-function-timing) var(--_transition-delay);
    color: white;
}
.c-ic-angle-right:before {
    border-color: currentcolor;
    border-style: solid;
    border-width: 1px 1px 0 0;
    content: "";
    display: block;
    height: .4em;
    transform: rotate(135deg);
    width: .4em;
}
.l-footer-widget-area__item .widget_text{
display:flex;
justify-content:center;
text-align:center
}
.l-footer-widget-area__item .textwidget{
border: solid 1px #ddd;
padding: 1em 3em
}
.l-footer {
    padding: 0;
}
.l-footer-widget-area__item .widget_text p {
    border: 3px solid;
}
[data-is-slim-widget-area=true] .c-widget {
    font-size: 1rem;
	font-weight: 600;
}.l-footer--default .c-copyright {
    font-weight: 600;
}
/* 投稿 */
aside.p-comments.c-entry-aside {
    display: none;
}
aside.p-trackbacks.c-entry-aside {
    display: none;
}
li.c-meta__item.c-meta__item--author {
    display: none;
}

/* 事例 */
.c-entry-summary__content {
    display: none;
}
h2.c-entry-summary__title {
    text-align: center;
}
/* beforeafter */
.twentytwenty-before-label {
    opacity: 10;
}
.twentytwenty-after-label {
    opacity: 10;
}
.twentytwenty-horizontal .twentytwenty-before-label {
    font-size: 1rem;
    padding: 10px;
    background: black;
    font-weight: bold;
}
.twentytwenty-horizontal .twentytwenty-after-label {
    font-size: 1rem;
    padding: 10px;
    background: #ff8000;
    font-weight: bold;
}



/* 太陽光ページ */
.merit .wp-block-snow-monkey-blocks-items.smb-items.is-style-border {
    background: white;
}
    body:not(body[data-has-sidebar=true]):not(body[data-is-slim-width=true]) .is-style-RJE_R002LP_faq_items, body[data-is-slim-width=true]:not(body[data-has-sidebar=true]) .p-entry-content .alignfull .is-style-RJE_R002LP_faq_items {
        padding: 1.25rem 5rem;
        background: #fff6eb;
    }

.is-style-RJE_R002LP_faq_items>.smb-accordion__item>.smb-accordion__item__title>.smb-accordion__item__title__icon {
    background-color: white;
}
.wp-block-gallery.has-nested-images figure.wp-block-image figcaption{
    background: linear-gradient(0deg, #000000, rgba(51, 51, 51, 0.5));
    font-size: 14px;
}

/* プラン比較表 コンテナ */
.plan-comparison-container-pop-orange {
    overflow-x: auto;
    margin: 2em auto;
    -webkit-overflow-scrolling: touch;
    border-radius: 18px;
    background: #fff;
}

/* テーブル本体 */
.plan-comparison-table-pop-orange {
    width: 100%;
    min-width: 700px;
    border-collapse: collapse;
    margin-bottom: 0;
    font-size: 15px;
    border: none;
    border-radius: 18px;
    overflow: hidden;
}



/* テーブルヘッダーとボディのセル共通スタイル */
.plan-comparison-table-pop-orange th,
.plan-comparison-table-pop-orange td {
    border-bottom: 1px solid #fff0e0;
    padding: 16px 15px;
    text-align: center;
    vertical-align: middle;
}
.plan-comparison-table-pop-orange tbody tr:last-child td {
    border-bottom: none;
}
.plan-comparison-table-pop-orange th:not(:last-child),
.plan-comparison-table-pop-orange td:not(:last-child) {
    border-right: 1px solid #fff0e0;
}


/* テーブルヘッダーのセル */
.plan-comparison-table-pop-orange thead th {
    background: linear-gradient(to bottom, #ff9800, #ff6e3b);
    color: #fff;
    font-weight: 700;
    font-size: 1.1em;
    white-space: normal;
    line-height: 1.3;
    border-bottom: none;
    border-right: 1px solid #ffad33;
    position: sticky;
    top: 0;
    z-index: 1;
}
.plan-comparison-table-pop-orange thead th:last-child {
    border-right: none;
}

/* 特徴名のセル */
.plan-comparison-table-pop-orange .feature-name {
    text-align: left;
    font-weight: 600;
    background-color: #fffaf0;
    white-space: nowrap;
    width: 140px;
    border-right: 1px solid #ffe8cc;
}
.plan-comparison-table-pop-orange tbody tr td.feature-name {
    border-bottom: 1px solid #fff0e0;
}
.plan-comparison-table-pop-orange tbody tr:last-child td.feature-name {
    border-bottom: none;
}


/* 星マークのセル */
.plan-comparison-table-pop-orange .stars {
    font-size: 1.5em;
    color: #ffc107;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.1);
    white-space: nowrap;
    letter-spacing: 2px;
    min-width: 90px;
}

/* 価格表示用のスタイル */
.plan-comparison-table-pop-orange .price-value {
    font-weight: 800;
    font-size: 2em;
    color: #e65100;
    white-space: nowrap;
    line-height: 1.1;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.15);
    padding-top: 20px;
    padding-bottom: 20px;
}
.plan-comparison-table-pop-orange .price-value span.unit {
    font-size: 0.5em;
    font-weight: 500;
    color: #ef6c00;
    margin-left: 3px;
    vertical-align: middle;
}

/* テーブルボディの行スタイル */
.plan-comparison-table-pop-orange tbody tr:nth-child(even) {
    background-color: #fff7f0;
}
.plan-comparison-table-pop-orange tbody tr {
    transition: background-color 0.2s ease, transform 0.2s ease;
}
.plan-comparison-table-pop-orange tbody tr:hover {
    background-color: #ffe8cc;
    transform: scale(1.01);
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}

/* 注釈文 */
.comparison-note-pop-orange {
    font-size: 12px;
    color: #555;
    line-height: 1.7;
    margin-top: 0;
    padding: 20px;
    background-color: #fffaf0;
    border-top: 2px dashed #ffb74d;
    border-bottom-left-radius: 18px;
    border-bottom-right-radius: 18px;
}

/* スマートフォン表示用の調整例 (画面幅768px以下) */
@media screen and (max-width: 768px) {
    .plan-comparison-table-pop-orange {
        font-size: 12px;
        min-width: 100%;
    }
    .plan-comparison-table-pop-orange thead th {
        font-size: 0.95em;
    }
    .plan-comparison-table-pop-orange th,
    .plan-comparison-table-pop-orange td {
        padding: 10px 6px;
    }
    .plan-comparison-table-pop-orange .feature-name {
        width: 90px;
        font-size: 0.9em;
    }
    .plan-comparison-table-pop-orange .stars {
        font-size: 1.1em;
        min-width: 70px;
        letter-spacing: 0.5px;
    }
    .plan-comparison-table-pop-orange .price-value {
        font-size: 1.4em;
        padding-top: 15px;
        padding-bottom: 15px;
    }
    .plan-comparison-table-pop-orange .price-value span.unit {
        font-size: 0.5em;
        margin-left: 1px;
    }

    .comparison-note-pop-orange {
        font-size: 10px;
        padding: 15px;
    }
    .plan-comparison-container-pop-orange,
    .plan-comparison-table-pop-orange,
    .comparison-note-pop-orange {
        border-radius: 10px;
    }
    .plan-comparison-table-pop-orange tbody tr:hover {
        transform: none;
        box-shadow: none;
    }
}




































/* 会社概要 */
.wp-block-table table {
    width: 100%;                 
    border-collapse: separate; 
    border-spacing: 0;           
    border-radius: 12px;         
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.1);
    margin-bottom: 1.5em;       
    border: 1px solid #e0e0e0; 
}

.wp-block-table td {
    padding: 2rem 1rem!important;
    vertical-align: top;      
    font-size: 1rem;
    line-height: 1.6;             
    border-bottom: 1px solid #eee; 
}


.wp-block-table td:first-child {
    background-color: #ff8c00; 
    color: #ffffff;
    font-weight: bold;             
    width: 150px;                 
    border-right: 1px solid #ffad4d; 
}


.wp-block-table td:nth-child(2) {
    width: 85%;
    background-color: #ffffff; 
    color: #333;
}


.wp-block-table tr:nth-child(even) td:nth-child(2) {
  background-color: #f9f9f9; 
}

.wp-block-table tr:last-child td {
  border-bottom: none;
}

.wp-block-table td a {
  color: #007bff;               
  text-decoration: none;       
  font-weight: bold;             
  transition: color 0.2s ease; 
}

.wp-block-table td a:hover {
  color: #0056b3;
  text-decoration: underline; 
}

/* --- レスポンシブ対応（任意：画面幅が狭い場合） --- */
@media (max-width: 600px) {
  .wp-block-table td:first-child {
    width: 100px;
  }
  .wp-block-table td {
    padding: 10px 12px; 
  }
}


















/* フォーム */
/* --- Contact Form 7 栃和様向け POPデザイン --- */

/* フォーム全体のラッパー */
.tochiwa-cf7-form {
  background-color: #fff8f0; /* 薄いオレンジ系の背景 */
  padding: 30px 40px;
  border-radius: 15px;

}

/* 各入力項目ブロック（pタグ） */
.tochiwa-cf7-form p {
  margin-bottom: 25px; /* 項目間の余白をしっかり取る */
}

/* ラベル */
.tochiwa-cf7-form label {
  font-weight: bold;
  color: #555; /* ラベルの色 */
  display: inline-block;
  margin-bottom: 8px;
  font-size: 1.05em; /* 少し大きく */
}

/* 「必須」マーク */
.tochiwa-cf7-form .required {
  display: inline-block; /* 改行されないように */
  color: #fff;
  background-color: #ff6e3b; /* 目立つオレンジ */
  padding: 3px 8px;
  font-size: 12px; /* 必須マークのサイズ */
  border-radius: 5px;
  margin-left: 8px;
  font-weight: normal;
  line-height: 1;
  vertical-align: middle; /* ラベルと高さを合わせる */
}

/* ラベル横の補足テキスト */
.tochiwa-cf7-form label + small {
    font-size: 0.85em;
    color: #777;
    margin-left: 10px;
    font-weight: normal;
}

/* 入力フィールド（共通） */
.tochiwa-cf7-form input[type="text"],
.tochiwa-cf7-form input[type="email"],
.tochiwa-cf7-form input[type="tel"],
.tochiwa-cf7-form textarea {
  width: 100%;
  padding: 14px 18px; /* 少し大きめのパディング */
  border: 1px solid #ddd;
  border-radius: 10px; /* 角丸を少し大きく */
  font-size: 1em;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
  background-color: #fff; /* 背景は白 */
  box-shadow: inset 0 1px 3px rgba(0,0,0,0.05); /* 内側に薄い影 */
}
.tochiwa-cf7-form input[type="text"]:focus,
.tochiwa-cf7-form input[type="email"]:focus,
.tochiwa-cf7-form input[type="tel"]:focus,
.tochiwa-cf7-form textarea:focus {
  border-color: #ff9800; /* オレンジのフォーカスボーダー */
  box-shadow: 0 0 10px rgba(255, 152, 0, 0.3); /* オレンジのフォーカス影 */
  outline: none;
}

/* テキストエリア */
.tochiwa-cf7-form textarea {
    min-height: 140px; /* 少し高めに */
}

/* ラジオボタン・チェックボックスの項目 */
.tochiwa-cf7-form .wpcf7-list-item {
    display: inline-block; /* 横並び */
    margin: 0 20px 10px 0;
    padding: 5px 0; /* 上下にも少し余白 */
    cursor: pointer;
    position: relative; /* カスタムスタイル用（任意） */
}
.tochiwa-cf7-form .wpcf7-list-item label { /* 項目ラベル */
    font-weight: normal;
    margin-bottom: 0;
    padding-left: 5px; /* inputとの間隔 */
    font-size: 1em; /* 他の要素と合わせる */
    color: #333;
}
.tochiwa-cf7-form input[type="radio"],
.tochiwa-cf7-form input[type="checkbox"] {
  margin-right: 8px; /* ラベルとの間隔 */
  cursor: pointer;
  transform: scale(1.2); /* 少し大きく見せる */
  accent-color: #ff9800; /* 対応ブラウザでのアクセントカラー */
  vertical-align: middle; /* ラベルと高さを合わせる */
}

/* プライバシーポリシー同意欄 */
.tochiwa-cf7-form .privacy-policy-agreement {
  background-color: #fffaf5; /* 少し背景色を変える */
  padding: 20px;
  border-radius: 8px;
  border: 1px solid #ffe8cc;
  margin-top: 25px;
}
.tochiwa-cf7-form .wpcf7-acceptance {
  margin: 0;
}
.tochiwa-cf7-form .wpcf7-acceptance .wpcf7-list-item {
    display: block; /* 縦表示に戻す */
    margin: 0;
    padding: 0;
}
.tochiwa-cf7-form .wpcf7-acceptance label {
    font-weight: normal;
    font-size: 0.95em;
    color: #444;
}
.tochiwa-cf7-form .wpcf7-acceptance .required {
    margin-left: 10px; /* 同意必須マークの位置調整 */
}
.tochiwa-cf7-form .wpcf7-acceptance a {
    color: #ff6e3b; /* リンク色をオレンジ系に */
    text-decoration: underline;
    font-weight: bold;
}
.tochiwa-cf7-form .wpcf7-acceptance a:hover {
    text-decoration: none;
    color: #e65100;
}

/* 送信ボタンのコンテナ */
.tochiwa-cf7-form .submit-button-container {
  text-align: center;
  margin-top: 35px;
}

/* 送信ボタン */
.tochiwa-cf7-form .wpcf7-submit {
  background: linear-gradient(135deg, #ff9800, #ff6e3b); /* オレンジグラデーション */
  color: #fff;
  border: none;
  padding: 18px 50px; /* さらに大きく */
  border-radius: 50px; /* より丸みのあるボタン */
  font-size: 1.3em; /* さらに大きく */
  font-weight: bold;
  letter-spacing: 1px; /* 文字間隔 */
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 5px 15px rgba(255, 102, 0, 0.3); /* ボタンの影 */
  text-shadow: 1px 1px 2px rgba(0,0,0,0.2);
}
.tochiwa-cf7-form .wpcf7-submit:hover {
  background: linear-gradient(135deg, #ffad33, #ff8a5e);
  transform: translateY(-3px) scale(1.02); /* 少し浮き上がり拡大 */
  box-shadow: 0 8px 20px rgba(255, 102, 0, 0.4);
}
.tochiwa-cf7-form .wpcf7-submit:active {
    transform: translateY(0) scale(1);
    box-shadow: 0 3px 10px rgba(255, 102, 0, 0.3);
}

/* --- CF7 メッセージ表示スタイル --- */
/* エラーメッセージ */
.tochiwa-cf7-form span.wpcf7-not-valid-tip {
    color: #d9534f; /* エラー色 */
    font-size: 0.9em;
    margin-top: 6px;
    display: block;
    font-weight: bold;
    text-align: left;
}
/* フォーム送信後のメッセージ表示エリア */
.tochiwa-cf7-form div.wpcf7-response-output {
    border-radius: 10px;
    padding: 18px 25px;
    margin: 25px 0 0 0;
    font-weight: bold;
    text-align: center;
}
/* 送信成功 */
.tochiwa-cf7-form div.wpcf7-mail-sent-ok {
    border: 2px solid #5cb85c; /* Green */
    background-color: #f0fff0;
    color: #3c763d;
}
/* 送信失敗・エラー・スパム */
.tochiwa-cf7-form div.wpcf7-validation-errors,
.tochiwa-cf7-form div.wpcf7-spam-blocked,
.tochiwa-cf7-form div.wpcf7-mail-sent-ng,
.tochiwa-cf7-form div.wpcf7-aborted {
    border: 2px solid #d9534f; /* Red */
    background-color: #fff0f0;
    color: #a94442;
}

/* レスポンシブ調整 (768px以下) */
@media screen and (max-width: 768px) {
    .tochiwa-cf7-form {
        padding: 20px;
    }
    .tochiwa-cf7-form p {
        margin-bottom: 20px;
    }
    .tochiwa-cf7-form label {
        font-size: 1em;
    }
    .tochiwa-cf7-form .required {
        font-size: 11px;
        padding: 2px 6px;
    }
    .tochiwa-cf7-form input[type="text"],
    .tochiwa-cf7-form input[type="email"],
    .tochiwa-cf7-form input[type="tel"],
    .tochiwa-cf7-form textarea {
        padding: 12px 15px;
    }

    .tochiwa-cf7-form .wpcf7-list-item {
        display: block;
        margin: 0 0 12px 0;
    }
    .tochiwa-cf7-form .wpcf7-submit {
        padding: 15px 35px;
        font-size: 1.15em;
        width: 100%;
    }
    .tochiwa-cf7-form div.wpcf7-response-output {
        padding: 15px;
    }
}
























/* --- Snow Monkey Header Right Content - Tochigi-Gaiheki Style --- */


/* 旧トップバークラスのリセット（背景や色を消す） */
.l-header .p-header-content .header-top-bar {
  background: none;
  color: inherit;
  padding: 0;
  border: none;
  box-shadow: none;
  text-shadow: none;
}
.l-header .p-header-content .header-top-bar .c-container {
    max-width: none;
    padding: 0;
}

/* 電話・時間・ボタンの配置調整 */
.l-header .p-header-content .header-top-bar__inner {
    display: flex;
    flex-direction: row;
    gap: 50px;
}

/* 連絡先ブロック */
.l-header .p-header-content .header-top-bar__contact {
    order: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
    color: #333;
    padding: 5px 40px;
    border-radius: 50px;
    background: white;
    border: 2px solid #ff8000;
    text-decoration: none;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
}

/* 電話番号 スタイル */
.l-header .p-header-content .header-top-bar__tel-wrap {
    display: inline-flex;
    align-items: baseline; /* アイコンと数字のベースラインを合わせる */
    margin-bottom: 2px; /* 時間との隙間 */
    align-items: center;
}
.l-header .p-header-content .header-top-bar__tel {
  color: #ff8000; /* 参考サイトのオレンジ/赤系 */
  font-size: 2em; /* ★大きく、目立たせる★ */
  font-weight: 800; /* 太字 */
  line-height: 1.1;
  text-decoration: none;
  margin-left: 4px; /* アイコンとの隙間 */
}
.l-header .p-header-content .header-top-bar__tel-wrap .header-icon {
    color: #ff8000;
    font-size: 1.7em; /* アイコンサイズ調整 */
}

/* 受付時間 スタイル */
.l-header .p-header-content .header-top-bar__hours {
  display: inline-flex; /* アイコンとテキストを横並び */
  align-items: center;
  font-size: 12px; /* 小さめに */
  font-weight: bold;
  opacity: 1;
  background: none;
  padding: 0;
}
.l-header .p-header-content .header-top-bar__hours .header-icon {
    font-size: 1.5em; /* 文字サイズに合わせる */
    margin-right: 4px;
}

/* CTAボタンブロック */
.l-header .p-header-content .header-top-bar__cta {
   order: 2; /* 電話・時間の下に表示 */
   margin: 5px 0 0 0; /* 上に少しマージン */
   padding: 0;
}

/* CTAボタン スタイル（緑ボタン） */
.l-header .p-header-content .header-top-bar__btn.c-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 220px; /* ボタンの最小幅 */
  background: linear-gradient(to bottom, #81c784, #4caf50); /* 緑グラデーション */
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 10px 20px;
  font-size: 1em; /* ボタンの文字サイズ */
  font-weight: bold;
  text-decoration: none;
  transition: all 0.3s ease;
  box-shadow: 0 4px 8px rgba(0,0,0,0.2), inset 0 -2px 1px rgba(0,0,0,0.15);
  text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
}
.l-header .p-header-content .header-top-bar__btn.c-btn .header-icon {
    margin-right: 8px;
    font-size: 1.4em;
}
.l-header .p-header-content .header-top-bar__btn.c-btn:hover {
  background: linear-gradient(to bottom, #a5d6a7, #66bb6a);
  transform: translateY(-2px);
  box-shadow: 0 6px 12px rgba(0,0,0,0.25), inset 0 -2px 1px rgba(0,0,0,0.1);
}
.l-header .p-header-content .header-top-bar__btn.c-btn:active {
    transform: translateY(0);
    box-shadow: 0 2px 4px rgba(0,0,0,0.2), inset 0 -2px 1px rgba(0,0,0,0.15);
}

/* このブロックはmd以下で非表示になる想定 (u-invisible-md-down) */
/* 必要に応じて991pxなどのブレークポイントで微調整 */
@media screen and (max-width: 991px) {
    /* 991pxまでは表示される可能性があるので調整 */
    .l-header .p-header-content .header-top-bar__tel {
        font-size: 22px; /* 少し小さく */
    }
    .l-header .p-header-content .header-top-bar__btn.c-btn {
        padding: 8px 18px;
        min-width: 200px;
        font-size: 0.95em;
    }
}













/* --- Snow Monkey Header Right Content - Button Style to match Footer CTA --- */

/* (ヘッダーの他の部分 .l-header, .p-header-content, .header-top-bar__contact 等のスタイルは必要に応じて維持) */

/* ★ヘッダー右側のCTAボタンエリア調整（ボタン配置のため） */
.l-header .p-header-content .header-top-bar__cta {
   order: 2;
   margin: 15px 0 0 0; /* ★ボタン上部のマージン調整（画像がはみ出すスペース考慮）*/
   padding: 0;
   text-align: right; /* ボタン自体は右寄せ */
   position: relative; /* ボタンの位置調整基準（任意） */
   min-height: 60px; /* はみ出し画像の高さを考慮 */
}

/* ★ヘッダーのCTAボタンをフッターCTA風に */
.l-header .p-header-content .header-top-bar__btn.c-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    min-width: 250px;
    padding: 14px 14px 14px 55px;
    background: #ff8000;
    color: white;
    border: 2px solid #ffffff;
    border-radius: 50px;
    font-size: 1.5em;
    font-weight: bold;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
    transition: all 0.3s ease;
    position: relative;
    overflow: visible;
    z-index: 1;
    cursor: pointer;
    min-height: 55px;
}


/* ★ボタンの画像疑似要素 (フッターCTAのものを適用) */
.l-header .p-header-content .header-top-bar__btn.c-btn::before {
    content: '';
    display: block;
    position: absolute;
    left: -30px;
    top: 40%;
    transform: translateY(-50%);
    width: 85px;
    height: 85px;
    background-image: url(https://tochiwa-reform.local/wp-content/uploads/2025/09/1-1.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    z-index: 2;
    transition: transform 0.3s ease;
}

/* ★ボタンのホバーエフェクト (フッターCTAと同じ) */
.l-header .p-header-content .header-top-bar__btn.c-btn:hover {
  background: #fffaf0;
  color: #ef6c00;
  transform: translateY(-2px);
  box-shadow: 0 8px 20px rgba(0, 0, 0, 0.25);
}



/* --- レスポンシブ調整 (991px以下 - mdの一つ上まで適用される想定) --- */
/* (u-invisible-md-down が付いているため、md以下は表示されない前提) */
@media screen and (max-width: 991px) {
    /* ヘッダー右側エリア全体の調整が必要な場合 */
    .l-header .p-header-content {
        /* 必要なら調整 */
    }
    .l-header .p-header-content .header-top-bar__cta {
        margin-top: 10px;
        min-height: 50px;
    }
    .l-header .p-header-content .header-top-bar__btn.c-btn {
        font-size: 1em;
        padding: 12px 15px 12px 60px; /* 左パディング調整 */
        min-width: 220px;
        min-height: 50px;
    }
    /* 画像サイズと位置 */
    .l-header .p-header-content .header-top-bar__btn.c-btn::before {
        width: 70px;
        height: 70px;
        left: -20px;
    }
}

/* --- もし782px (md) でも表示させたい場合 (u-invisible-md-downを外した場合) --- */
@media screen and (max-width: 782px) {
    /* 例: スマホではテキストエリアとボタンを中央に */
    .l-header .p-header-content {
        text-align: center;
    }
     .l-header .p-header-content .header-top-bar__inner {
         align-items: center;
     }
     .l-header .p-header-content .header-top-bar__contact {
         align-items: center;
         margin-bottom: 10px; /* ボタンとの間隔 */
         width: 100%; /* 中央寄せのため幅を一旦取る */
         justify-content: center; /* 電話と時間を中央に */
     }
     .l-header .p-header-content .header-top-bar__cta {
         text-align: center; /* ボタン中央 */
         width: 100%;
         margin-top: 5px;
         min-height: 45px;
     }
    .l-header .p-header-content .header-top-bar__btn.c-btn {
        font-size: 0.95em;
        padding: 10px 20px 10px 45px; /* パディング調整 */
        min-width: auto;
        width: 90%; /* 幅調整 */
        max-width: 300px; /* 最大幅 */
        min-height: 45px;
    }
    /* スマホでの画像サイズと位置調整 */
    .l-header .p-header-content .header-top-bar__btn.c-btn::before {
        width: 55px;
        height: 55px;
        left: -15px;
    }
}












/* ナビゲーションが含まれる行を選択 */
.l-header .l-2row-header__row.u-invisible-md-down {
    position: relative; 
    width: 100vw;
    left: 50%;
    transform: translateX(-50%); 
    box-sizing: border-box; 
    background-color: #eeeeee;
    border-top: 1px solid #eee;
}

/* フルワイドにした行の中のナビゲーション自体は、サイトのコンテンツ幅に合わせる */
.l-header .l-2row-header__row.u-invisible-md-down .p-global-nav > .c-navbar {
    max-width: 1100px; 
    margin-left: auto;
    margin-right: auto; 
    padding-left: 15px;
    padding-right: 15px; 
}











[data-has-global-nav=true] .l-2row-header__row:last-child, [data-has-global-nav=true] .l-center-header__row:last-child {

    color: #333;
}






































/* 外壁塗装導入セクション ダイナミックPOPスタイル */
.wall-painting-intro-section.style-dynamic-pop {
    font-family: "Rounded Mplus 1c", "Kiwi Maru", "Hiragino Sans", Meiryo, sans-serif; /* POPな丸ゴシック系フォント例 */
    color: #333;
    line-height: 1.7;
    margin-bottom: 50px;
    overflow: hidden; /* はみ出し要素の親の overflow を制御 */
}

/* メインタイトルエリア */
.style-dynamic-pop .pop-title-area {
    background: linear-gradient(45deg, #66bb6a 0%, #1be124 99%, #fecfef 100%);
    padding: 20px;
    text-align: center;
    margin: 0 auto;
    position: relative;
    border-bottom: 5px dashed #fff;
}

.style-dynamic-pop .wall-painting-main-title-pop {
    font-weight: 800; /* 極太 */
    color: #fff;
    text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2), 0 0 10px rgba(0, 0, 0, 0.2);
    line-height: 1.4;
}
.style-dynamic-pop .wall-painting-main-title-pop span {
    display: inline-block;
    border-radius: 5px;
}
.style-dynamic-pop .wall-painting-main-title-pop span.text-highlight {
    background-color: #ffeb3b; /* 黄色ハイライト */
    color: #c62828; /* 赤文字 */
    padding: 5px 10px;
    font-size: 1.1em;
}






















/* カード全体のコンテナ */
.plan-card {
    border: 1px solid #eee; /* 薄い枠線 */
    border-radius: 8px; /* 角を丸く */
    overflow: hidden; /* 角丸からはみ出る内容を隠す */
    margin-bottom: 20px; /* カード間の下余白 */
    background-color: #fff; /* 背景色 */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1); /* 軽い影 */
    display: flex; /* ヘッダーとボディをflexコンテナにする */
    flex-direction: column; /* 要素を縦に並べる */
    height: 100%; /* 親要素の高さに合わせる（横並び時に重要） */
}

/* ヘッダー部分 */
.plan-card-header {
    background-color: #00404d; /* 暗い青緑系の背景色 */
    color: #fff; /* 文字色 */
    padding: 10px 15px; /* 内側の余白 */
    text-align: center; /* テキスト中央寄せ */
    flex-shrink: 0; /* ヘッダーは縮小しない */
}

.plan-title {
    margin: 0; /* h3のデフォルトマージンをリセット */
    font-size: 1.2rem; /* タイトル文字サイズ */
    font-weight: bold;
}

.plan-title small {
    font-size: 0.8em; /* smallタグの文字を小さく */
    font-weight: normal; /* smallタグ内の文字は太字にしない */
    display: block; /* smallタグを改行して表示 */
    margin-top: 2px; /* 上に少し余白 */
}

.plan-title br {
    display: none; /* デスクトップではbrを非表示にすることも可能ですが、今回はHTMLのbrを生かしています */
}


/* カードボディ部分（ヘッダー以外のコンテンツ）*/
.plan-card-body {
    flex-grow: 1; /* 利用可能なスペースを埋める */
    display: flex; /* ボディ内の要素を縦に並べる */
    flex-direction: column;
}

/* イメージ */
.plan-image img {
    display: block; 
    max-width: 100%;
    height: auto; 
    margin-bottom: 15px; 
    aspect-ratio: 16 / 9;
    object-fit: cover; 
}

/* 価格表示エリア */
.plan-price-area {
    text-align: center; /* 中央寄せ */
    margin-bottom: 15px; /* 価格の下の余白 */
    color: #e74c3c; /* 目立つ赤色 */
    font-weight: bold;
    line-height: 1.2;
}

.plan-price {
    font-size: 2.5rem; /* 価格の数字を大きく */
    margin-right: 5px; /* 単位との間のスペース */
}

.price-unit {
    font-size: 1rem; /* 単位の文字サイズ */
}

/* スペック表示エリア（星評価など） */
.plan-specs {
    border-top: 1px solid #eee; /* 上区切り線 */
    border-bottom: 1px solid #eee; /* 下区切り線 */
    margin-bottom: 15px; /* スペックエリアの下余白 */
    padding: 10px 20px; /* 上下のパディング */
}

.spec-row {
    display: flex; /* ラベルと値を横並びに */
    justify-content: space-between; /* 両端に配置 */
    padding: 5px 0; /* 各行の上下パディング */
    font-size: 0.95rem;
    color: #555;
    align-items: center; /* ラベルと値を縦方向中央に揃える */
}

.spec-label {
    font-weight: bold;
    flex-basis: 55%; /* ラベルの幅を調整 */
    padding-right: 10px; /* ラベルの右余白 */
    box-sizing: border-box;
}

.spec-label small {
    font-weight: normal; /* smallタグ内の文字は太字にしない */
    font-size: 0.8em; /* smallタグ内の文字サイズを小さく */
}

/* 星評価や値の表示部分 */
.spec-value {
    text-align: right; /* 値を右寄せ */
    flex-basis: 45%; /* 値の幅を調整 */
    padding-left: 10px; /* 値の左余白 */
    box-sizing: border-box;
}

/* 星評価のスタイル */
.spec-value.stars {
    color: #ffb400; /* 星の色を黄色に */
    font-size: 1.1rem; /* 星のサイズを少し大きく */
    letter-spacing: 1px; /* 星の間隔を調整 */
}

/* 説明文 */
.plan-description p {
    margin: 0; /* pタグのデフォルトマージンをリセット */
    font-size: 0.9rem;
    color: #333;
    line-height: 1.6;
    font-weight: bold;
    text-align: center;
    padding: 15px;
}

/* --- 5つのカードを横並びにするためのスタイル --- */

/* 5つのカードを囲むコンテナ */
.plan-cards-container {
    display: grid; /* Gridレイアウトを使用 */
grid-template-columns: repeat(1, 1fr); 
    gap: 20px; /* カード間の隙間 */
    margin: 20px auto; /* ページ中央に配置し、上下左右に余白 */
    max-width: 1200px; /* 5つ横並びを考慮し最大幅を少し広げても良い */
    padding: 0 15px; /* 左右の余白 */
}

/* 詳細ボタンを追加した場合のスタイル例 */
/* .plan-description + .smb-btn-wrapper {
    margin-top: 15px;
    text-align: center;
} */








/* PCブレイクポイント (例: 1024px) で2カラムにする */
@media (min-width: 1024px) {
    .plan-cards-container {
        grid-template-columns: repeat(2, 1fr); /* PCでは2カラム */
    }
}