@charset "UTF-8";
/*----------------------------------セクション　基本--------------------------------------
------------------------------------------------------------------------------------------------- */
.sect-set{}
.triangle{margin:0; padding:0;clear:both;float:left;width:100%;border-bottom:var(--sec-border-width, 0px) solid var(--sec-border-color, transparent);background-repeat:no-repeat;background-position:bottom;background-size:110% auto;}

/* セクション間区切り画像 */
.sect-divider {
    display: var(--sec-divider-display, none);
    background-image: var(--sec-divider-img, none);
    background-size: auto 100%;
    background-repeat: repeat-x;
    background-position: center center;
    height: var(--sec-divider-height, 51px);
    width: 100%;
    clear: both;
    float: left;
}

.triangle .skewed{clear:both;float:left;width:100%;overflow-x:hidden;position:relative;}
.alignleft{float:left;padding:0 2% 0 0;}
.alignright{float:right;padding:0 0 0 2%;}

/*-------------------box-shadow------------------------------*/
.read_more{float:right;padding:2% 2% 10%;clear:both;width:50%;max-width:250px;}
.read_more span{color:var(--main-c);background:var(--sub-c);padding:20px 5%;width: 100%; float:right;text-align: center;white-space: nowrap;border-radius:15px;}
.read_more span:hover{color:var(--sub-c);background:var(--main-c);}

/*----------------------------------コンテンツ　基本--------------------------------------
------------------------------------------------------------------------------------------------- */
.content-in{margin:0 auto;width:100%;max-width:var(--site-width);}

/* タイトル・トップアイキャッチ画像のCSSは inc/layout-templates/layouts/ に移管（.lay-ec-img / .lay-tit-page* / .lay-cat-header*）。
   旧 .tit-page / .top-tith / .ce-img は全テンプレを .lay-* にリネームしたため削除済み（2026-06-30）。 */

/*top-style=default：旧サイトのヘッダー画像（固定バナー）表示を再現*/
.top-banner{clear:both;float:left;width:100%;max-width:1200px;padding:0;text-align:center;margin:0 auto;}
.top-banner img{width:100%;}

/*----------------------------------カラム分割（columns レイアウト）--------------------------------------
------------------------------------------------------------------------------------------------- */
.columns-set { display: grid; gap: 60px; align-items: start; }
.columns-set.col-1 { grid-template-columns: 1fr; }
.columns-set.col-2 { grid-template-columns: repeat(2, 1fr); }
.columns-set.col-3 { grid-template-columns: repeat(3, 1fr); }
.columns-set.col-4 { grid-template-columns: repeat(4, 1fr); }
.col-item { min-width: 0; }
.columns-set.width-full { width: 100%; max-width: none; }
.columns-set.width-site-width { width: 100%; max-width: var(--site-width); margin-left: auto; margin-right: auto; }

/* 幅ラッパー（width-wrap レイアウト）*/
.width-wrap { width: 100%; }
.width-wrap--full { margin-left: 0; margin-right: 0; }
.width-wrap--site-width { max-width: var(--site-width); margin-left: auto; margin-right: auto; }
/* width-wrap 前後の余白 */
.sec-wrap > .width-wrap + .sec-content-wrap,
.sec-wrap > .sec-content-wrap + .width-wrap { margin-top: 70px; }
.sec-wrap > .width-wrap + .width-wrap { margin-top: 70px; }

/* セクション共通の上下パディング */
.sec-wrap { padding: var(--sec-padding-t, var(--sec-padding-y, 10%)) 0 var(--sec-padding-b, var(--sec-padding-y, 10%)); } /* 上下個別（空=共通値=既定10%） */

/* columns-container：カラム分割ブロックのラッパー。back-whiでスタイル付き */
.columns-container { box-sizing: border-box; }
.columns-container.back-whi { overflow: hidden; }

/* レイアウトブロック間の縦余白（旧 sub-cecbox 上下padding 35px×2 = 70px相当） */
.t-sub-layout > * + * { margin-top: 70px; }
/* カラム内ブロック間の縦余白（col-item内は自然なマージンのみ） */
.col-item > * + * { margin-top: 10px; }

@media only screen and (max-width: 768px) {
    .columns-set { grid-template-columns: 1fr !important; gap: 30px; }
    .col-item { width: 100%; }
    .back-whi .t-sub-layout { padding: 5% 0; }
    .sec-content-wrap.back-whi { width: calc(100% - 20px) !important; margin-left: 10px !important; margin-right: 0 !important; }
    .t-sub-layout > * + * { margin-top: 40px; }
    .col-item > * + * { margin-top: 8px; }
}

/* hover時にnavi-hover-fontが2階層目まで上書きするのを防ぐ（ただしホバー中の項目は per-item ホバー色を活かすため :not(:hover) で除外） */
.menu-top-navi-container .menu > li:hover .menu__second li:not(:hover) a { color: var(--navi-font-02, var(--navi-hover-font)); }
.menu-top-navi-container .menu > li:hover .menu__second .menu__second li:not(:hover) a { color: var(--navi-font-03, var(--navi-font)); }

/* core/columns の浮動対策：flexコンテナはfloatを回り込み回避するため、直前にfloat部品（旧デザイン系見出し等）が
   あると残り幅0に潰れて縦1文字積みになる。セクション内のcolumnsは必ずfloatをクリアして全幅から開始する。 */
.sect-set .wp-block-columns{clear:both;width:100%;}

/* 2カラム器の中央寄せ（section-content.php から移設＝サイトCSSで上書き可能に） */
.sec-cols{max-width:var(--site-width);margin-left:auto;margin-right:auto;}
