/* Compact pagination on the Sorenani posts archive. */
body.blog .wp-block-query-pagination {
    justify-content: center;
    align-items: center;
    gap: 12px 20px !important;
    margin: 28px auto !important;
    padding: 0 !important;
}

body.blog .wp-block-query-pagination-numbers {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    gap: 6px;
    margin: 0 !important;
}

body.blog .wp-block-query-pagination .page-numbers {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    min-height: 40px;
    box-sizing: border-box;
    padding: 4px 8px;
}

body.blog .wp-block-query-pagination-previous,
body.blog .wp-block-query-pagination-next {
    margin: 0 !important;
    padding: 8px 12px;
    white-space: nowrap;
}

body.blog main > .wp-block-query > .wp-block-group.alignwide {
    margin-top: 0 !important;
}

body.blog .wp-site-blocks > footer {
    margin-top: 24px !important;
}

/* Site typography, archives, categories and post layout. */
body {
    background:#f5f2e9;
    color:#193e33;
    font-family:system-ui,-apple-system,'Noto Sans JP',sans-serif;
}

a {
    color:#193e33;
}

h1,h2 {
    font-family:'Yu Mincho','Hiragino Mincho ProN',serif;
}

.wp-block-post-content {
    line-height:2;
}

.wp-site-blocks>header {
    border-bottom:1px solid #d6dccc;
}

.wp-site-blocks>header .wp-block-navigation-item:has(a[href$='/category/blog/']) {
    display:none;
}

.sn-archive-excerpt p {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-size: 15px;
    line-height: 2;
}

body.blog .wp-block-post-title,body.archive .wp-block-post-title,body.search .wp-block-post-title {
    font-family:inherit;
    font-size:26px;
    line-height:1.65;
}

body.blog .wp-block-post,body.archive .wp-block-post,body.search .wp-block-post {
    border-bottom:1px solid #c8d2c4;
    padding-bottom:35px;
    margin-bottom:45px;
}

body.page-id-35651 .wp-site-blocks>main {
    padding:0!important;
}

.sn-live-list time {
    display:block;
}

/* Category reading introductions */
body.category .wp-block-query-title {
    max-width:1120px!important;
    margin:56px auto 30px!important;
    font-size:clamp(28px,3.2vw,42px);
    line-height:1.5;
}

body.category .wp-block-term-description {
    max-width:1120px!important;
    display:grid;
    grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);
    column-gap:52px;
    row-gap:0;
    padding:0 0 48px;
    border-bottom:1px solid #c8d2c4;
    margin:0 auto 58px!important;
    font-size:16px;
    line-height:1.95;
}

body.category .wp-block-term-description:before {
    content:"";
    display:block;
    grid-column:1;
    grid-row:1/span 3;
    min-height:400px;
    background-image:var(--sn-category-image);
    background-size:cover;
    background-position:center;
    border-radius:0 72px 0 0;
}

body.category .wp-block-term-description>p {
    grid-column:2;
    margin:0 0 18px!important;
    max-width:none!important;
}

body.category .wp-block-term-description>p:first-child {
    padding-top:10px;
}

body.category .wp-block-term-description strong {
    display:block;
    font-family:'Yu Mincho','Hiragino Mincho ProN',serif;
    font-size:clamp(25px,2.6vw,34px);
    font-weight:500;
    line-height:1.6;
}

body.category .wp-block-term-description:after {
    content:"画像はAI生成のイメージです";
    grid-column:1;
    font-size:11px;
    color:#667469;
    margin-top:12px;
    line-height:1.5;
}

body.category.paged .wp-block-term-description {
    display:none;
}

@media(max-width:780px) {
    body.category .wp-block-query-title {
        margin-top:30px!important;
    }

    body.category .wp-block-term-description {
        grid-template-columns:1fr;
        gap:0;
        margin-bottom:35px!important;
        padding-bottom:30px;
    }

    body.category .wp-block-term-description:before {
        grid-column:1;
        grid-row:auto;
        min-height:0;
        height:230px;
        border-radius:0 48px 0 0;
        margin-bottom:24px;
    }

    body.category .wp-block-term-description>p {
        grid-column:1;
    }

    body.category .wp-block-term-description>p:first-child {
        padding-top:0;
    }

    body.category .wp-block-term-description:after {
        grid-column:1;
    }

}

body.category-7 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-food.png");
}

body.category-41 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-technology.png");
}

body.category-6 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-technology.png");
}

body.category-28 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-family.png");
}

body.category-9 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-family.png");
}

body.category-34 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-style.png");
}

body.category-19 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-nature.png");
}

body.category-27 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-style.png");
}

body.category-10 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-style.png");
}

body.category-20 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-technology.png");
}

body.category-11 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-style.png");
}

body.category-8 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-food.png");
}

body.category-12 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-technology.png");
}

body.category-38 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-style.png");
}

body.category-39 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-style.png");
}

body.category-13 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-style.png");
}

body.category-29 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-family.png");
}

body.category-26 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-food.png");
}

body.category-30 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-family.png");
}

body.category-22 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-family.png");
}

body.category-14 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-family.png");
}

body.category-15 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-family.png");
}

body.category-16 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-food.png");
}

body.category-17 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-family.png");
}

body.category-24 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-family.png");
}

body.category-18 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-style.png");
}

body.category-23 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-style.png");
}

body.category-1 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-technology.png");
}

body.category-35 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-car.png");
}

body.category-40 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-garden.png");
}

body.category-37 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-gift.png");
}

body.category-31 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-car.png");
}

body.category-33 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-car.png");
}

body.category-21 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-gift.png");
}

body.category-32 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-car.png");
}

body.category-25 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-gift.png");
}

body.category-36 {
    --sn-category-image:url("http://sore-nani.com/wp-content/uploads/2026/10/sorenani-category-car.png");
}

/* Sorenani article readability */
body.single-post .wp-block-post-content {
    font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
    font-size:18px;
    line-height:1.95;
    letter-spacing:.025em;
    color:#26362f;
    overflow-wrap:anywhere;
}

body.single-post .wp-block-post-content p,body.single-post .wp-block-post-content li {
    font-size:inherit;
    line-height:inherit;
}

body.single-post .wp-block-post-content > p {
    margin-block:0 1.4em;
}

body.single-post .wp-block-post-content h2 {
    font-family:inherit;
    font-size:26px;
    font-weight:700;
    line-height:1.55;
    letter-spacing:.015em;
    margin-block:48px 16px;
}

body.single-post .wp-block-post-content h3 {
    font-family:inherit;
    font-size:21px;
    font-weight:700;
    line-height:1.6;
    margin-block:32px 12px;
}

body.single-post .wp-block-post-content :is(h2,h3,h4)+p {
    margin-block-start:0;
}

body.single-post h1.wp-block-post-title {
    font-family:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
    font-size:36px;
    line-height:1.5;
    letter-spacing:.015em;
    font-weight:700;
    overflow-wrap:anywhere;
}

body.single-post .wp-block-post-content :is(ul,ol) {
    padding-inline-start:1.5em;
    margin-block:16px 28px;
}

body.single-post .wp-block-post-content li+li {
    margin-top:.55em;
}

body.single-post .wp-block-post-content figure {
    margin-block:32px;
}

body.single-post .wp-block-post-content img {
    max-width:100%;
    height:auto;
}

body.single-post .wp-block-post-content figcaption {
    line-height:1.7;
}

@media(max-width:767px) {
    body.single-post .wp-site-blocks>.wp-block-group {
        padding-inline:20px!important;
    }

    body.single-post .wp-site-blocks>.wp-block-group>.wp-block-group.alignfull {
        padding-block:32px!important;
        padding-inline:0!important;
        margin-inline:0!important;
    }

    body.single-post .wp-block-post-content {
        font-size:16px;
        line-height:1.9;
        letter-spacing:.025em;
        padding-inline:0!important;
        margin-inline:0!important;
    }

    body.single-post .wp-block-post-content > p {
        margin-block:0 24px;
    }

    body.single-post .wp-block-post-content h2 {
        font-size:21px;
        line-height:1.6;
        margin-block:38px 12px;
    }

    body.single-post .wp-block-post-content h3 {
        font-size:18px;
        line-height:1.65;
        margin-block:28px 10px;
    }

    body.single-post h1.wp-block-post-title {
        font-size:26px;
        line-height:1.5;
        letter-spacing:.01em;
    }

    body.single-post .wp-block-post-content figure {
        margin-block:28px!important;
    }

    body.single-post .wp-block-post-content figcaption {
        font-size:12px!important;
    }

    body.single-post .wp-block-post-content :is(table,pre) {
        max-width:100%;
        overflow-x:auto;
    }

}

/* Article ending and related-post spacing */
body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-post-content) {
    padding-bottom:24px!important;
}

body.single-post .wp-block-post-content>:last-child {
    margin-bottom:0!important;
}

body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-post-content)>.wp-block-group:not(:has(*)) {
    display:none;
}

body.single-post .wp-block-group:has(>nav[aria-label="投稿ナビゲーション"]) {
    margin-block:28px 0!important;
}

body.single-post nav[aria-label="投稿ナビゲーション"] {
    padding-block:18px!important;
    font-size:15px;
    line-height:1.7;
    gap:20px;
}

body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-query) {
    padding-block:24px 28px!important;
    margin-block:0!important;
}

body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-query)>h2 {
    font-family:system-ui,-apple-system,sans-serif;
    font-size:16px;
    line-height:1.6;
    margin-block:0!important;
    letter-spacing:.04em;
}

body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-query)>.wp-block-query {
    margin-top:16px!important;
}

body.single-post footer.wp-block-template-part {
    margin-top:0!important;
}

@media(max-width:767px) {
    body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-post-content) {
        padding-bottom:18px!important;
    }

    body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-query) {
        padding-block:20px 24px!important;
    }

    body.single-post .wp-block-group:has(>nav[aria-label="投稿ナビゲーション"]) {
        margin-top:24px!important;
    }

    body.single-post nav[aria-label="投稿ナビゲーション"] {
        font-size:14px;
        padding-block:16px!important;
    }

}

body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-query) .wp-block-post> .wp-block-group {
    padding-block:14px!important;
}

@media(max-width:767px) {
    body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-query) .wp-block-post> .wp-block-group {
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        gap:6px;
        padding-block:14px!important;
    }

    body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-query) .wp-block-post-title {
        font-family:system-ui,-apple-system,sans-serif;
        font-size:16px!important;
        line-height:1.7!important;
        margin:0;
    }

    body.single-post #wp--skip-link--target>.wp-block-group:has(>.wp-block-query) .wp-block-post-date {
        font-size:12px;
        line-height:1.5;
        white-space:nowrap;
        text-align:left;
    }

}

/* Desktop fixed-page content width */
@media(min-width:1024px) {
    body.page:not(.page-id-35651) .wp-block-post-content {
        --wp--style--global--content-size:1040px;
        --wp--style--global--wide-size:1120px;
    }

    body.page:not(.page-id-35651) .wp-block-post-content> :not(.alignfull) {
        max-width:1040px!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }

    body.page:not(.page-id-35651) h1.wp-block-post-title {
        max-width:1040px!important;
        margin-left:auto!important;
        margin-right:auto!important;
    }

    body.page:not(.page-id-35651) .wp-block-post-content>.sn-info {
        width:100%;
    }

    body.page:not(.page-id-35651) .sn-guide-grid {
        gap:28px;
    }

    body.page:not(.page-id-35651) .sn-guide-card {
        padding:32px;
    }

}

/* Common footer: migrated from inline attributes in the theme part. */
.sn-footer-home {
    padding: 28px 20px 40px;
    text-align: center;
    border-top: 1px solid #d6dccc;
}
.sn-footer-home nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px 24px;
    margin-bottom: 18px;
    font-family: system-ui, -apple-system, sans-serif;
    font-size: 14px;
}
.sn-footer-home nav a {
    display: inline-flex;
    align-items: center;
    min-height: 44px;
}
.sn-footer-home-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-height: 48px;
    width: 100%;
    max-width: 280px;
    padding: 14px 24px;
    background: #193e33;
    color: #fff;
    border-radius: 999px;
    font-family: system-ui, -apple-system, sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
    text-decoration: none;
}
