:where(.content_block) * {
    box-sizing: border-box;
}
.content_block {
    container-name: content_block;
    container-type: inline-size;
    padding-block-end: 60px;
}
.content_block > :where(*:not(:first-child)) {
    margin-block: 1em 0;
}
.content_block > :where(.wp-block-heading:not(:first-child)) {
    margin-block: 2em 0;
}
.content_block > :where(*:first-child) {
    margin-block: 0;
}

:has(> .zaitaku-top-slider) {
    margin-block-end: 60px;
}
.zaitaku-slogan {
    text-wrap: balance;
    word-break: auto-phrase;
    text-wrap: pretty;
    inline-size: min(100%, 40em);
    color: var(--wp--preset--color--primary);
    font-size: 20px;
    /* background-color: #f8f8f8; */
    padding: 1em;
    &:not(:root):not(:root):not(:root):not(:root):not(:root):not(:root) {
        margin-inline: auto!important;
    }
}
.zaitaku-lead-text {
    word-break: auto-phrase;
    line-height: 1.5;
}

.zaitaku-news__header {
    display: grid;
    grid-template: 'title rss more' / 1fr auto auto;
    padding-block-end: 0.5rem;
    gap: 12px;
    > * {
        margin: 0;
    }
}
.zaitaku-news__heading {
    grid-area: title;
    font-size: 20px;
}
.zaitaku-news__more {
    grid-area: more;
}
.zaitaku-news__rss {
    grid-area: rss;
}
.zaitaku-news__list {
    --_news-item-bg-color: #f8f8f8;
    container-name: zaitaku-news-list;
    container-type: inline-size;
    border-block-end: 1px dotted #9797a6;
    margin: 0;
    padding: 0;
    > *:nth-child(2n) {
        --_news-item-bg-color: #fff
    }
}
.zaitaku-news__item {
    border-block-start: 1px dotted #9797a6;
    background-color: var(--_news-item-bg-color);
    display: grid;
    grid-template: 'date cat title' / auto auto 1fr;
    align-items: baseline;
    column-gap: 2em;
    padding: 0.8rem 0;
    font-size: 13px;
    @container (inline-size < 480px) {
        grid-template: 'date cat'
                        'title title' / auto 1fr;
    }
}
.zaitaku-news__date {
    grid-area: date;
    font-weight: 700;
}
.zaitaku-news__category {
    grid-area: cat;
    font-weight: 700;
    > *:not(:first-child)::before {
        content: ',' / '';
        margin-inline: 0.3em;
    }
}
.zaitaku-news__title {
    grid-area: title;
}
.zaitaku-news__link {
    text-decoration: none;
    @media (any-hover: hover) {
        &:hover {
            color: var(--wp--preset--color--global-main);
            text-decoration: underline;
        }
    }
}
.zaitaku-news__not-found {
    padding: 0.8rem 0;
    border-block: 1px dotted #9797a6;
}

.zaitaku-heading,
.is-style-heading-1 {
    border-radius: 3px;
    color: var(--wp--preset--color--white);
    background-color: var(--wp--preset--color--primary);
    font-size: 22px;
    font-weight: 500;
    padding: 0.7rem 1rem 0.5rem;
}
.wp-block-heading:is(:not([class*="is-style-"])),
.zaitaku-heading-2,
.is-style-heading-2 {
    border-block-end: solid 1px var(--wp--preset--color--primary);
    line-height: 1.4;
    padding-block-end: 0.5em;
    font-size: 18px;
}
:where(.wp-block-heading).is-style-heading-3 {
    font-size: 18px;
    font-weight: 700;
}

.zaitaku-shinryou-table {
    text-align: center;
    :where(tr:first-child > *, tr>:first-child) {
        background-color: #f2f2f2;
    }
}
.wp-block-spacer {
    margin: 0!important;
}
*:has(+ .wp-block-spacer) {
    margin-block-end: 0;
}
.wp-block-spacer + * {
    margin-block-start: 0;
}


.wp-block-button :where(a, [href], button):not(:root) {
    --_background-color: var(--wp--preset--color--primary);
    border-radius: 5px;
    padding: 0.5em 1em;
    display: grid;
    grid-template: 'text gap arrow' / 1fr 1em 1em;
    background-color: var(--wp--preset--color--primary);
    color: var(--wp--preset--color--white, white);
    align-items: center;
    transition: opacity 0.2s;
    &::after {
        grid-area: arrow;
        content: '';
        background-color: currentColor;
        block-size: 0.67em;
        aspect-ratio: 1;
        clip-path: polygon(
            0 0,
            70% 50%,
            0 100%
        );
    }
    &:focus-visible {
        opacity: 0.7;
    }
    @media (any-hover: hover) {
        &:hover {
            opacity: 0.7;
        }
    }
}
.wp-block-table:where(.is-style-regular)  {
    :where(tbody tr > :first-child) {
        background-color: #f7f7f7;
        font-size: 15px;
        font-weight: 700;
    }

    tbody tr:has(> :first-child[rowspan="2"]) + tr > :first-child,
    tbody tr:has(> :first-child[rowspan="2"]) + tr > th:first-child {
        font-weight: normal;
        background-color: transparent;
        background: none;
    }

    tbody tr:has(> :first-child[rowspan="3"]) + tr > :first-child,
    tbody tr:has(> :first-child[rowspan="3"]) + tr > th:first-child,
    tbody tr:has(> :first-child[rowspan="3"]) + tr + tr > :first-child,
    tbody tr:has(> :first-child[rowspan="3"]) + tr + tr > th:first-child {
        font-weight: normal;
        background-color: transparent;
        background: none;
    }
}
.zaitaku-saiki-table-1 {
    tr > *:first-child {
        inline-size: 16em;
    }
}
.zaitaku-saiki-table-2 {
    tr > *:first-child {
        inline-size: 10em;
    }
}
.zaitaku-embedded-map {
    aspect-ratio: 16 /  9;
    inline-size: 100%;
    position: relative;
    iframe {
        inline-size: 100%;
        block-size: 100%;
        position: absolute;
        inset: 0;
    }
}
.zaitaku-data-list.zaitaku-data-list {
    display: grid;
    grid-template-columns: minmax(12em, max-content) 1fr;
    gap: 1.5em 1em;
    align-items: baseline;
    > :nth-child(2n - 1) {
        padding: 0.4em 1em;
        color: var(--wp--preset--color--primary);
        background-color: #f7f7f7;
        font-weight: 700;
        font-size: 0.95em;
        display: grid;
        place-items: center
    }
}
@media screen and (max-width: 480px) {
    .zaitaku-data-list.zaitaku-data-list {
        grid-template-columns: 1fr;
    }
}
.zaitaku-helper-price {
    td:not([colspan]) {
        background-color: inherit;
        font-size: inherit;
        font-weight: inherit;
    }
}
.zaitaku-pamphlet {
    display: grid;
    /* justify-content: center; */
    align-items: start;
    position: relative;
    transition: 0.2s;
    gap: 0.5em;
    :where(.wp-block-image) {
        inline-size: 100%;
        background-color: #f7f7f7;
        border: 2px solid #f7f7f7;
        aspect-ratio: 4 / 3;
        img {
            inline-size: 100%;
            block-size: 100%;
            object-fit: contain;
        }
    }
    *:not(:root) {
        margin: 0;
    }
    :where([href]) {
        &::after {
            content: '';
            position: absolute;
            inset: 0;
        }
    }
    &:has(*:focus-visible) {
        opacity: 0.7;
        [href] {
            text-decoration: none;
        }
    }
    @media(any-hover: hover) {
        &:has([href]:hover) {
            opacity: 0.7;
            [href] {
                text-decoration: none;
            }
        }
    }
}
.content_sub_nav.content_sub_nav.content_sub_nav {
    background-color: var(--wp--preset--color--primary);
}
.content_sub_nav ul li a {
    border-bottom: solid 1px #ffaeae;
}
.content_sub_nav.content_sub_nav.content_sub_nav ul ul li a{
    background-color: var(--wp--preset--color--primary-lighten);
}