/* テックブログ用カスタムスタイル */
.entry-content h2 {
    font-size: 22px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    margin-top: 48px !important;
    margin-bottom: 20px !important;
    border-left: 5px solid #2563eb !important;
    padding-left: 16px !important;
    background: #f8fafc;
    padding-top: 8px;
    padding-bottom: 8px;
}

.entry-content h3 {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #1f2937 !important;
    margin-top: 32px !important;
    margin-bottom: 12px !important;
}

.entry-content p {
    font-size: 16px !important;
    line-height: 1.8 !important;
    margin-bottom: 24px !important;
    color: #4b5563 !important;
}

.entry-content li {
    margin-bottom: 12px !important;
    line-height: 1.6;
}
/* 投稿ページの本文幅と表レイアウト */
body.single-post .entry-content > :where(p, ul, ol, h2, h3, h4, h5, h6, blockquote, .wp-block-heading) {
    max-width: min(920px, calc(100vw - 48px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.single-post .entry-content > :where(.wp-block-image, .wp-block-quote, .wp-block-list, .wp-block-code, .wp-block-preformatted) {
    max-width: min(920px, calc(100vw - 48px)) !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

body.single-post .entry-content > .wp-block-table {
    display: block;
    max-width: min(1120px, calc(100vw - 48px)) !important;
    margin: 32px auto !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

body.single-post .entry-content > .wp-block-table table {
    width: 100% !important;
    min-width: 760px;
    max-width: none !important;
    border-collapse: collapse;
    table-layout: auto;
    font-size: 15px;
    line-height: 1.65;
}

body.single-post .entry-content > .wp-block-table th,
body.single-post .entry-content > .wp-block-table td {
    border: 1px solid #dbe4ee;
    padding: 12px 14px;
    vertical-align: top;
}

body.single-post .entry-content > .wp-block-table th {
    background: #f1f5f9;
    color: #111827;
    font-weight: 700;
    white-space: nowrap;
}

body.single-post .entry-content > .wp-block-table tr:nth-child(even) td {
    background: #f8fafc;
}

@media (max-width: 781px) {
    body.single-post .entry-content {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }

    body.single-post .entry-content > .wp-block-table {
        max-width: 100% !important;
    }
}
/* 直置きテーブルの幅調整 */
body.single-post .entry-content > table {
    width: min(1120px, calc(100vw - 48px)) !important;
    max-width: min(1120px, calc(100vw - 48px)) !important;
    margin: 32px auto !important;
    border-collapse: collapse;
    table-layout: auto;
    font-size: 15px;
    line-height: 1.65;
}

body.single-post .entry-content > table th,
body.single-post .entry-content > table td {
    border: 1px solid #dbe4ee;
    padding: 12px 14px;
    vertical-align: top;
}

body.single-post .entry-content > table th {
    background: #f1f5f9;
    color: #111827;
    font-weight: 700;
    white-space: nowrap;
}

body.single-post .entry-content > table tr:nth-child(even) td {
    background: #f8fafc;
}

@media (max-width: 781px) {
    body.single-post .entry-content > table {
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        min-width: 760px;
    }
}