/* ===========================================================
   立芯ブランド配色・フォント統一（B案・統合クリーン版）
   オフホワイト #f5f1e8 / 墨色 #1a1a1a / 金色 #b8860b
   2026-05-04
   =========================================================== */

:root {
    --risshin-bg:        #f5f1e8;
    --risshin-bg-pure:   #fdfaf3;
    --risshin-ink:       #1a1a1a;
    --risshin-ink-70:    rgba(26,26,26,0.7);
    --risshin-gold:      #b8860b;
    --risshin-gold-40:   rgba(184,134,11,0.4);
    --risshin-vermilion: #c1272d;
    --risshin-mincho:    "Noto Serif JP", "游明朝", "Yu Mincho", "YuMincho", "Hiragino Mincho ProN", serif;
}

/* ===== 全体背景・フォント ===== */
body {
    background-color: var(--risshin-bg) !important;
    font-family: var(--risshin-mincho) !important;
    color: var(--risshin-ink);
    line-height: 1.8;
}
#main, .l-main, .l-content, .site-content, .l-sidebar, .sidebar {
    background-color: transparent;
}
.entry, .post, article, .l-mainList__item, .l-mainCard {
    background-color: var(--risshin-bg-pure);
}

/* ===== 見出し ===== */
.entry-content h2, .entry-content h3,
.post-content h2, .post-content h3,
article h2, article h3 {
    font-family: var(--risshin-mincho) !important;
    color: var(--risshin-ink);
    letter-spacing: 0.05em;
    border-bottom: 1px solid var(--risshin-gold-40);
    padding-bottom: 0.4em;
}
.entry-content h3, article h3 {
    border-bottom-style: dotted;
}
.entry-title, .l-mainCard__title, .post-title {
    font-family: var(--risshin-mincho) !important;
    color: var(--risshin-ink);
}

/* ===== ボタン類 ===== */
button, input[type="submit"], .btn, .button {
    background-color: var(--risshin-ink) !important;
    color: var(--risshin-bg) !important;
    border: 1px solid var(--risshin-ink) !important;
    font-family: var(--risshin-mincho) !important;
    transition: background-color 0.3s ease;
}
button:hover, input[type="submit"]:hover, .btn:hover {
    background-color: var(--risshin-gold) !important;
    border-color: var(--risshin-gold) !important;
}

/* ===== サイドバーウィジェット共通装飾 ===== */
.sidebar .widget, .l-sidebar .widget,
.widget_text, .widget_categories, .widget_archive,
.widget_recent_entries, .widget_search, .widget_custom_html {
    background-color: var(--risshin-bg-pure);
    border: 1px solid rgba(26,26,26,0.08);
    padding: 20px;
    margin-bottom: 24px;
    box-shadow: none;
}
.widget .risshin-yt-widget,
.widget_custom_html .risshin-yt-widget {
    background-color: var(--risshin-bg);
    margin: 0;
    padding: 24px 20px;
    border: 1px solid rgba(26,26,26,0.08);
}

/* ===== ウィジェットタイトル ===== */
.widget-title, .widget h3.widget-title, .widget h4.widget-title,
.l-sidebar h3, .l-sidebar h4 {
    font-family: var(--risshin-mincho) !important;
    color: var(--risshin-ink) !important;
    text-align: center !important;
    letter-spacing: 0.15em !important;
    border-bottom: 1px solid var(--risshin-gold-40) !important;
    border-top: none !important;
    padding-bottom: 10px !important;
    margin: 0 0 16px !important;
    font-size: 15px !important;
    font-weight: normal !important;
    background: none !important;
}

/* ===== ウィジェット内リスト ===== */
.widget ul, .widget ol {
    list-style: none;
    padding-left: 0;
    margin: 0;
}
.widget li {
    border-bottom: 1px dotted rgba(26,26,26,0.12);
    padding: 10px 0;
    line-height: 1.7;
}
.widget li:last-child { border-bottom: none; }

/* ===== 検索フォーム ===== */
.search-form input[type="text"], .search-form input[type="search"],
.searchform input[type="text"], .widget_search input {
    background-color: var(--risshin-bg);
    border: 1px solid rgba(26,26,26,0.15);
    color: var(--risshin-ink);
    padding: 10px 12px;
    font-family: var(--risshin-mincho);
    width: 100%;
    box-sizing: border-box;
}
.search-form input[type="submit"], .searchform input[type="submit"] {
    background-color: var(--risshin-ink);
    color: var(--risshin-bg);
    border: 1px solid var(--risshin-ink);
    padding: 10px 16px;
    font-family: var(--risshin-mincho);
    cursor: pointer;
    margin-top: 8px;
}

/* ===== 区切り線・ページネーション ===== */
hr {
    border: 0;
    border-top: 1px solid var(--risshin-gold-40);
    margin: 24px 0;
}
.page-numbers, .pagination a, .pagination span {
    background-color: var(--risshin-bg-pure);
    color: var(--risshin-ink);
    border: 1px solid rgba(26,26,26,0.15);
    font-family: var(--risshin-mincho);
}
.page-numbers.current, .pagination .current {
    background-color: var(--risshin-ink);
    color: var(--risshin-bg);
    border-color: var(--risshin-ink);
}

/* ===== スマホ ===== */
@media (max-width: 600px) {
    body { line-height: 1.75; }
    .widget-title, .l-sidebar h3 { font-size: 14px !important; }
}

/* ===========================================================
   リンク色：本文と一般リンク → 金色
   =========================================================== */

body a, body a:link, body a:visited {
    color: var(--risshin-gold) !important;
}
body a:hover, body a:focus {
    color: var(--risshin-vermilion) !important;
}

/* ===========================================================
   ヘッダー・グローバルナビ・フッターは触らない（元のJIN）
   =========================================================== */

.l-header a, .l-header a:link, .l-header a:visited,
header a, header a:link, header a:visited,
.p-globalNav a, .p-globalNav a:link, .p-globalNav a:visited,
nav a, nav a:link, nav a:visited,
.menu-item a, .menu-item a:link, .menu-item a:visited,
#header a, .global-nav a {
    color: inherit !important;
}

/* フッターは触らない */
html body .l-footer, html body .l-footer *,
html body .l-footer a, html body .l-footer a:link,
html body .l-footer a:visited, html body .l-footer a:hover,
html body footer, html body footer a,
html body footer a:link, html body footer a:visited,
html body footer a:hover, html body #footer,
html body #footer a, html body #footer a:link,
html body #footer a:visited, html body .p-footer,
html body .p-footer a {
    color: inherit !important;
    background-color: inherit !important;
    font-family: inherit !important;
}

/* ===========================================================
   サイドバー：URLテキスト系リンクは金色／リスト系は墨色
   =========================================================== */

/* 全リンク → 金色（強制） */
html body .l-sidebar a, html body .l-sidebar a:link, html body .l-sidebar a:visited,
html body .sidebar a, html body .sidebar a:link, html body .sidebar a:visited,
html body aside a, html body aside a:link, html body aside a:visited,
html body .widget a, html body .widget a:link, html body .widget a:visited,
html body .widget_text a, html body .widget_text a:link, html body .widget_text a:visited,
html body .widget_text .textwidget a,
html body .widget_custom_html a, html body .widget_custom_html a:link,
html body .widget_custom_html a:visited {
    color: var(--risshin-gold) !important;
    text-decoration: none !important;
}

html body .l-sidebar a:hover, html body .sidebar a:hover, html body aside a:hover,
html body .widget a:hover, html body .widget_text a:hover,
html body .widget_custom_html a:hover {
    color: var(--risshin-vermilion) !important;
}

/* mark／紫色クラスを金色に（WordPressエディタの色指定対策） */
html body .widget mark, html body .widget mark.has-inline-color,
html body .widget .has-vivid-purple-color, html body .widget .has-inline-color,
html body .widget_text mark, html body .widget_text .has-inline-color,
html body .widget_custom_html mark {
    color: var(--risshin-gold) !important;
    background-color: transparent !important;
}

/* リスト型ウィジェット（人気記事・アーカイブ・最新記事）→ 墨色 */
html body .widget ul li a, html body .widget ul li a:link, html body .widget ul li a:visited,
html body .widget ol li a, html body .widget ol li a:link, html body .widget ol li a:visited,
html body .widget_categories a, html body .widget_categories a:link, html body .widget_categories a:visited,
html body .widget_archive a, html body .widget_archive a:link, html body .widget_archive a:visited,
html body .widget_recent_entries a, html body .widget_recent_entries a:link, html body .widget_recent_entries a:visited,
html body .widget_recent_comments a, html body .widget_pages a, html body .widget_meta a,
html body .widget_nav_menu a,
html body .wpp-list a, html body .wpp-list a:link, html body .wpp-list a:visited,
html body .popular-articles a, html body .ranking a, html body .ranking-content a,
html body .new-posts a, html body .recent-posts a, html body .new-content a {
    color: var(--risshin-ink) !important;
}

html body .widget ul li a:hover, html body .widget ol li a:hover,
html body .widget_categories a:hover, html body .widget_archive a:hover,
html body .widget_recent_entries a:hover, html body .widget_recent_comments a:hover,
html body .widget_pages a:hover, html body .widget_meta a:hover,
html body .widget_nav_menu a:hover,
html body .wpp-list a:hover, html body .popular-articles a:hover,
html body .ranking a:hover, html body .new-posts a:hover, html body .recent-posts a:hover {
    color: var(--risshin-gold) !important;
}

/* リスト中の<mark>も墨色に */
html body .widget li mark, html body .widget li .has-inline-color,
html body .widget li .has-vivid-purple-color {
    color: var(--risshin-ink) !important;
    background-color: transparent !important;
}

/* YouTube登録ボタン例外（オフホワイト維持） */
html body .widget a.risshin-yt-subscribe,
html body .widget a.risshin-yt-subscribe:link,
html body .widget a.risshin-yt-subscribe:visited {
    color: var(--risshin-bg) !important;
}
html body .widget a.risshin-yt-subscribe .risshin-yt-subscribe-arrow {
    color: var(--risshin-gold) !important;
}
html body .widget a.risshin-yt-video,
html body .widget a.risshin-yt-video:link,
html body .widget a.risshin-yt-video:visited {
    color: var(--risshin-ink) !important;
}
html body .widget a.risshin-yt-video:hover {
    color: var(--risshin-gold) !important;
}

/* 記事タイトル（カード一覧）：墨色 → ホバー時金色 */
.entry-title a, .l-mainCard__title a, .post-title a,
h2.entry-title a, h3.entry-title a {
    color: var(--risshin-ink) !important;
}
.entry-title a:hover, .l-mainCard__title a:hover, .post-title a:hover {
    color: var(--risshin-gold) !important;
}

/* ===========================================================
   WordPress 管理者ツールバー（#wpadminbar）は触らない
   =========================================================== */

#wpadminbar, #wpadminbar *,
#wpadminbar a, #wpadminbar a:link, #wpadminbar a:visited,
#wpadminbar a:hover, #wpadminbar a:focus,
#wpadminbar .ab-item, #wpadminbar .ab-empty-item,
#wpadminbar .ab-icon, #wpadminbar .ab-label {
    color: rgba(240, 246, 252, 0.7) !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Hiragino Kaku Gothic ProN", sans-serif !important;
}
#wpadminbar a:hover, #wpadminbar a:hover *,
#wpadminbar li:hover > a, #wpadminbar li.hover > a {
    color: #72aee6 !important;
    background-color: rgba(0, 0, 0, 0.5) !important;
}
#wpadminbar .ab-icon::before, #wpadminbar .ab-item::before {
    color: rgba(240, 246, 252, 0.7) !important;
}

/* ===========================================================
   SNSアイコン：中間色（落ち着いたブランドカラー）
   2026-05-04
   =========================================================== */

/* X（旧Twitter）：黒寄りのチャコール */
html body .sns-follow a[href*="twitter.com"],
html body .sns-follow a[href*="x.com"],
html body .sns-icons a[href*="twitter.com"],
html body .sns-icons a[href*="x.com"],
html body .p-snsBtns a[href*="twitter.com"],
html body .p-snsBtns a[href*="x.com"],
html body .profile-sns a[href*="twitter.com"],
html body .profile-sns a[href*="x.com"],
html body [class*="sns"] a[href*="twitter.com"],
html body [class*="sns"] a[href*="x.com"] {
    background-color: #2a2a2a !important;
    color: #ffffff !important;
}

/* Facebook：少しトーンを落とした青 */
html body .sns-follow a[href*="facebook.com"],
html body .sns-icons a[href*="facebook.com"],
html body .p-snsBtns a[href*="facebook.com"],
html body .profile-sns a[href*="facebook.com"],
html body [class*="sns"] a[href*="facebook.com"] {
    background-color: #4267b2 !important;
    color: #ffffff !important;
}

/* Instagram：彩度を落としたグラデーション */
html body .sns-follow a[href*="instagram.com"],
html body .sns-icons a[href*="instagram.com"],
html body .p-snsBtns a[href*="instagram.com"],
html body .profile-sns a[href*="instagram.com"],
html body [class*="sns"] a[href*="instagram.com"] {
    background: linear-gradient(45deg, #d97443, #c84a59, #b3417b) !important;
    color: #ffffff !important;
}

/* YouTube：少し落ち着いた赤 */
html body .sns-follow a[href*="youtube.com"]:not(.risshin-yt-subscribe):not(.risshin-yt-banner-link):not(.risshin-yt-video),
html body .sns-icons a[href*="youtube.com"]:not(.risshin-yt-subscribe):not(.risshin-yt-banner-link):not(.risshin-yt-video),
html body .p-snsBtns a[href*="youtube.com"]:not(.risshin-yt-subscribe):not(.risshin-yt-banner-link):not(.risshin-yt-video),
html body .profile-sns a[href*="youtube.com"]:not(.risshin-yt-subscribe):not(.risshin-yt-banner-link):not(.risshin-yt-video),
html body [class*="sns"] a[href*="youtube.com"]:not(.risshin-yt-subscribe):not(.risshin-yt-banner-link):not(.risshin-yt-video) {
    background-color: #d32525 !important;
    color: #ffffff !important;
}

/* LINE：少し深めの緑 */
html body .sns-follow a[href*="line.me"],
html body .sns-follow a[href*="lin.ee"],
html body .sns-icons a[href*="line.me"],
html body .sns-icons a[href*="lin.ee"],
html body .p-snsBtns a[href*="line.me"],
html body .p-snsBtns a[href*="lin.ee"],
html body .profile-sns a[href*="line.me"],
html body .profile-sns a[href*="lin.ee"],
html body [class*="sns"] a[href*="line.me"],
html body [class*="sns"] a[href*="lin.ee"] {
    background-color: #00b248 !important;
    color: #ffffff !important;
}

/* SNSアイコン内のi要素・SVG・画像も白に */
html body .sns-follow a i,
html body .sns-icons a i,
html body .p-snsBtns a i,
html body .profile-sns a i,
html body [class*="sns"] a i,
html body .sns-follow a svg,
html body .sns-icons a svg,
html body .p-snsBtns a svg,
html body .profile-sns a svg,
html body [class*="sns"] a svg {
    color: #ffffff !important;
    fill: #ffffff !important;
}