@charset "utf-8";

:root {
    /* ---------- フォント設定 ---------- */
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: normal;
    font-style: normal;

    /* ---------- カスタムプロパティ(カラー設定ほか) ---------- */
    --main-color: rgb(255 255 255 / 1.0);
    --gray-bgcolor: rgb(213 213 213 / 1.0);
    --link-bgcolor: rgb(59 131 186 / 1.0);
    --text-color: rgb(89 88 88 / 1.0);
    --border01-color: rgb(112 112 112 / 1.0);
    --cat-color: rgb(7 155 28 / 1.0);
    --access-thead-color: rgb(124 198 22 / 1.0);
    --navi-bgcolor: rgb(143 195 31 / 1.0);
    --yuri-bgcolor: rgb(253 157 44 / 1.0);
    --triangle-color: rgb(255 174 1 / 1.0);
    --catch-text-color: rgb(0 129 41 / 1.0);
    --new-bgcolor: rgb(255 0 15 / 1.0);
    --intro-bgcolor: rgb(214 250 202 / 1.0);
    --mainrange-bgcolor: rgb(250 243 202 / 1.0);
    color: var(--text-color);
    --semibold: 600;
}


/* -----------sp　全体レイアウト ---------- */
:root {
    font-size: calc(8px + 1.7777vw);
    /* 16px/450 */
    scroll-behavior: smooth;
}

.break,
.s-break {
    display: block;
}

/* -----------tablet　全体レイアウト ---------- */
@media screen and (width > 450px) {
    :root {
        font-size: calc(8px + 1.0416vw);
        /* 16px/768 */
    }

    .s-break {
        display: inline;
    }

    .t-break {
        display: block;
    }
}

/* -----------PC　全体レイアウト ---------- */
@media screen and (width > 768px) {
    :root {
        font-size: min(calc(8px + 0.625vw), 16px);
        /* 16px/1280- */
    }

    .s-wrapper {
        position: relative;
        max-width: 1280px;
        margin: auto;
    }

    .t-break {
        display: inline;
    }
}






/* ---------- ユーリード福住について ブロック ---------- */

/* ----- sp レイアウト ----- */
.headinglarge-area {
    margin-bottom: 21px;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;

    h1,
    h2 {
        display: flex;
        align-items: center;
        gap: 7px;

        img {
            width: 40vw;
            height: auto;
        }

        span {
            font-size: 1.2rem;
            font-weight: bold;
            white-space: nowrap;
        }
    }
}

/* ----- tablet レイアウト ----- */
@media screen and (width > 450px) {
    .headinglarge-area {
        gap: 2.2135vw;

        h1,
        h2 {
            gap: 1.4323vw;

            img {
                width: 37.1093vw;
                height: auto;
            }

            span {
                font-size: 1.8125rem;
            }
        }
    }
}

/* ----- pc レイアウト ----- */
@media screen and (width > 768px) {
    .headinglarge-area {
        gap: min(2.0312vw, 26px);

        /* min()を使う */
        h1,
        h2 {
            gap: min(1.4062vw, 18px);

            img {
                width: min(36.875vw, 472px);
                height: auto;
            }

            span {
                font-size: 3.125rem;
            }
        }
    }
}





/* ---------- 共通メインテーマエリア　レイアウト ---------- */

/* ----- spレイアウト ----- */
.main-area,
.theme-area {
    background-size: contain, cover;
    background-position-y: calc(100% + 1px), center;
    background-position-x: center, center;
    background-repeat: no-repeat, no-repeat;
}

.main-area {
    /* padding: 38px 0; */
    height: 69.1111vw;
}

/* ------ tablet レイアウト ----- */
@media screen and (width > 450px) {
    .main-area {
        /* padding: 60px 0; */
        height: 51.4323vw;
    }
    .home .main-area {
        display: none;
    }
}

/* ------ PC レイアウト ----- */
@media screen and (width > 768px) {
    .main-area {
        /* padding: 101px 0 112px; */
        height: min(37.0313vw, 474px);
    }
}





/* ---------- 共通コンテンツエリア 背景設定 ---------- */
.page-id-8 .news-area,
.page-id-10 .intro-area,
.page-id-12 .access-area,
.page-id-14 .company-area,
.single-post .single-content,
.single-post aside,
.archive .news-area {
    background-position-y: calc(100% + 1px);
    background-size: contain;
    background-repeat: no-repeat;
    background-color: var(--mainrange-bgcolor);
}





/* ---------- トップへ戻るレイアウト ----------- */

/* ---------- sp レイアウト ----------- */
.return-top {
    display: none;
    position: fixed;
    bottom: 50px;
    right: 30px;
    width: 16vw;
    height: 16vw;
    z-index: 5000;
    background-color: var(--main-color);
    border: 2px solid var(--text-color);
    border-radius: 50%;

    span {
        width: 13vw;
        font-size: 2.9vw;
        line-height: 1.325;
        text-align: center;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
}

/* ---------- tablet レイアウト ---------- */
@media screen and (width > 450px) {
    .return-top {
        display: block;
        opacity: 0;
        visibility: hidden;
        bottom: 5vh;
        right: 30px;
        width: 13.802vw;
        height: 13.802vw;
        border: 3px solid var(--text-color);
        transition: all 0.5s;

        span {
            width: 9.3748vw;
            font-size: 2.3437vw;
        }

        &.is-visible {
            opacity: 1;
            visibility: visible;
        }
    }
}

/* ---------- pc レイアウト ---------- */
@media screen and (width > 768px) {
    .return-top {
        bottom: min(12.9629vh, 140px);
        right: min(7.0312vw, 90px);
        width: 106px;
        height: 106px;

        span {
            width: 4rem;
            font-size: 1rem;
            font-weight: bold;
        }

        &:hover {
            opacity: 0.5;
        }
    }
}





/* ---------- ヘッダーレイアウト ---------- */

/* ---------- sp レイアウト ---------- */
.h-wrapper {
    background-color: var(--main-color);
    z-index: 1000;

    .header-area {
        position: static;
        width: 100vw;
        display: flex;
        justify-content: space-between;

        .header-logo-area {
            margin: 22px 0 12px 4.8888vw;

            img {
                width: 258px;
                height: auto;
            }
        }

        .hamburger {
            margin: 40px 6.4vw 0 0;
            display: flex;
            flex-direction: column;
            gap: 6px;
            z-index: 1500;
            cursor: pointer;

            span {
                display: block;
                width: 8vw;
                height: 5px;
                border-radius: 2.5px;
                background-color: var(--text-color);
                transition: all 0.3s;
                transform-origin: center;
            }
        }

        .hamburger.active span:nth-child(1) {
            transform: rotate(45deg) translate(8px, 8px);
        }

        .hamburger.active span:nth-child(2) {
            opacity: 0;
        }

        .hamburger.active span:nth-child(3) {
            transform: rotate(-45deg) translate(8px, -8px);
        }

        .header-nav {
            position: fixed;
            top: 0;
            left: 0;
            z-index: 1100;
            width: 100vw;
            height: 100vh;
            background-color: rgb(230 230 230 / 0.9);
            transition: all 0.3s;
            opacity: 0;
            visibility: hidden;

            ul {
                margin: 100px 8.8888vw;

                li {
                    border-bottom: 1px solid var(--border01-color);
                    margin-bottom: 25px;

                    a {
                        display: block;
                        font-size: 1.5625rem;
                        font-weight: bold;
                        line-height: 1.32;
                        padding-bottom: 3.6px;
                    }
                }
            }
        }

        .header-nav.active {
            opacity: 1;
            visibility: visible;
        }
    }
}

/* ---------- tablet レイアウト ---------- */
@media screen and (width > 450px) {
    .h-wrapper {
        .header-area {
            display: flex;
            justify-content: space-between;

            .header-logo-area {
                margin: 35px 0 26px 4.1666vw;

                img {
                    width: 50.651vw;
                    height: auto;
                }
            }

            .hamburger {
                margin: 8.0729vw 5.2083vw 0 0;
                gap: 15px;

                span {
                    width: 54px;
                }
            }

            .hamburger.active span:nth-child(1) {
                transform: rotate(45deg) translate(14px, 14px);
            }

            .hamburger.active span:nth-child(3) {
                transform: rotate(-45deg) translate(14px, -14px);
            }

            .header-nav {
                ul {
                    margin: 137px 11.7187vw;

                    li {
                        a {
                            font-size: 2rem;
                            padding-bottom: 3px;
                        }
                    }
                }
            }
        }
    }
}

/* ---------- pc レイアウト ---------- */
@media screen and (width >768px) {
    .h-wrapper {
        .header-area {
            position: static;
            max-width: 1280px;
            margin: auto;
            display: flex;
            justify-content: space-between;
            align-items: center;

            /* align-items: end; */
            .header-logo-area {
                margin: 29px 0 29px 30px;

                img {
                    width: 420px;
                    height: auto;
                }
            }

            .hamburger {
                display: none;
            }

            .header-nav {
                visibility: visible;
                opacity: 1;
                position: static;
                width: auto;
                height: auto;
                background-color: var(--main-color);
                transition: none;

                ul {
                    margin: 0 30px 0;
                    padding-bottom: 0;
                    height: auto;
                    display: flex;
                    flex-wrap: wrap;
                    justify-content: end;
                    gap: 0 min(1.875vw, 24px);

                    li {
                        border: none;
                        margin-bottom: 0;

                        a {
                            display: block;
                            width: clamp(5.5rem, 12.8906vw, 165px);
                            font-size: 1.375rem;
                            color: var(--main-color);
                            text-align: center;
                            line-height: 39px;
                            padding: 0;
                            border: 3px solid var(--main-color);
                            margin: 0;
                            background-color: var(--navi-bgcolor);
                            border-radius: 22.5px;
                            transition: all 0.3s;

                            &:hover {
                                opacity: 0.5;
                            }
                        }
                    }
                }
            }
        }
    }
}





/* ---------- コンタクトリンク共通エリア ----------- */

/* ---------- sp レイアウト ---------- */
.contact-link-area {
    padding: 37px 13.3333vw 38px;
    background-color: var(--main-color);

    H2 {
        margin-bottom: 19px;
        font-size: 1.6875rem;
        font-weight: bold;
        text-align: center;
        line-height: 1.3571;
    }

    p {
        font-size: 0.875rem;
        letter-spacing: -0.05em;
        font-weight: bold;
        line-height: 1.6666;
        font-variant-east-asian: proportional-width;
        white-space: nowrap;
        margin-bottom: 31px;
    }

    ul {
        li {
            margin-bottom: 15px;

            a {
                display: block;
                background-color: var(--link-bgcolor);
                text-align: center;
                height: 45px;
                padding: 9px;
                margin: 0 5.5555vw;
                color: var(--main-color);
                font-size: 0.9375rem;
                font-weight: bold;
                line-height: 27px;
                border-radius: 22.5px;

                img {
                    height: 27px;
                    width: auto;
                    margin-right: 7.6px;
                }
            }
        }
    }
}

/* ---------- tablet レイアウト ----------- */
@media screen and (width > 450px) {
    .contact-link-area {
        padding: 57px 0 59px;

        H2 {
            margin-bottom: 28px;
            font-size: 2.1875rem;
            line-height: 1.7142;
        }

        p {
            font-size: 1.125rem;
            letter-spacing: -0.05em;
            text-align: center;
            margin-bottom: 33px;
        }

        ul {
            margin: 0 16.276vw;
            display: flex;
            gap: 2.6041vw;

            li {
                margin: 0;

                a {
                    height: 49px;
                    width: 32.4218vw;
                    padding: 10px;
                    margin: 0;

                    font-size: 1.1875rem;
                    line-height: 29px;
                    border-radius: 24.5px;

                    img {
                        height: 3.776vw;
                        width: auto;
                        margin-right: 1.0937vw;
                    }
                }

                .tel-link {
                    display: flex;
                    align-items: center;
                    justify-content: center;
                }
            }
        }
    }
}

/* ---------- PC レイアウト ----------- */
@media screen and (width > 768px) {
    .contact-link-area {
        padding: 71px 0 74px;

        H2 {
            margin-bottom: 32px;
            font-size: 3.125rem;
            line-height: 1.2;
        }

        p {
            font-size: 1.5625rem;
            letter-spacing: 0;
            margin-bottom: 47px;
        }

        ul {
            gap: 29px;
            justify-content: center;

            li {
                a {
                    height: 75px;
                    width: min(29.6875vw, 380px);
                    font-size: 1.875rem;
                    line-height: 55px;
                    border-radius: 37.5px;
                    transition: all 0.3s;

                    img {
                        height: min(3.4375vw, 44px);
                        width: auto;
                        margin-right: 10.8px;
                    }

                    &[href^="tel:"] {
                        pointer-events: none;
                    }

                    &:hover {
                        opacity: 0.5;
                    }
                }
            }
        }
    }
}





/* ----------- フッターエリア ---------- */

/* ---------- sp レイアウト ----------- */
footer {
    padding: 25px 0 17px;
    color: var(--main-color);
    background-color: var(--text-color);

    .footer-nav {
        ul {
            margin: 0 15vw 36px;
            display: flex;
            flex-wrap: wrap;
            justify-content: center;
            gap: 13px 16px;

            li {
                a {
                    display: block;
                    background-color: var(--main-color);
                    width: 28.8888vw;
                    height: 28px;
                    border-radius: 14px;
                    font-weight: bold;
                    color: var(--text-color);
                    text-align: center;
                    line-height: 28px;
                }
            }
        }
    }

    .footer-logo-area {
        margin-bottom: 9px;

        .footer-logo {
            margin: 0 auto 9px;
            text-align: center;

            img {
                width: 219px;
                height: auto;
                margin: auto;
            }
        }

        .tel {
            a {
                font-weight: bold;
                display: flex;
                align-items: center;
                justify-content: center;
                gap: 8px;

                img {
                    width: 22px;
                    height: 24px;
                }
            }
        }
    }

    .address {
        margin: 0 4vw 30px 10.6666vw;
        display: inline-block;
        font-size: 0.8125rem;
        font-weight: bold;
        line-height: 1.3846;

        .nowrap {
            white-space: nowrap;
        }

        @media (width < 388px) {
            display: block;
            width: fit-content;
            margin: 0 auto 30px;

            .nowrap {
                display: block;
            }
        }
    }

    .copyright {
        text-align: center;

        small {
            font-size: 0.625rem;
            line-height: 1.4;
        }
    }
}

/* ---------- tablet レイアウト ----------- */
@media screen and (width > 450px) {
    footer {
        padding: 29px 0 27px;

        .footer-nav {
            ul {
                margin: 0 0 32px;
                gap: 14px;

                li {
                    a {
                        width: max(14.0625vw, 6em);
                        height: 24px;
                        border-radius: 12px;
                        line-height: 24px;
                    }
                }
            }
        }

        .footer-logo-area {
            margin-bottom: 7px;
            display: flex;
            justify-content: center;
            align-items: center;
            gap: 16px;

            .footer-logo {
                margin: 0;

                img {
                    width: 266px;
                    height: auto;
                }
            }

            .tel {
                a {
                    margin: 0;
                    font-size: 1.1875rem;
                    gap: 5px;

                    img {
                        width: 3.2552vw;
                        height: 3.6458vw;
                    }
                }
            }
        }

        .address {
            display: inherit;
            margin: 0;
            margin-bottom: 24px;
            text-align: center;
            text-indent: -2.4739vw;
            font-size: 1rem;
            line-height: 1.375;
        }

        .copyright {
            small {
                font-size: 0.9375rem;
                line-height: 1.3333;
            }
        }
    }
}

/* ---------- PC レイアウト ----------- */
@media screen and (width > 769px) {
    footer {
        padding: 53px 0 26px;

        .footer-nav {
            ul {
                margin: 0 0 40px;
                gap: 20px;

                li {
                    a {
                        width: clamp(6em, 12.9687vw, 166px);
                        height: 38px;
                        border-radius: 19px;
                        font-size: 1.5625rem;
                        line-height: 38px;
                        transition: all 0.3s;

                        &:hover {
                            opacity: 0.5;
                        }
                    }
                }
            }
        }

        .footer-logo-area {
            margin-bottom: 14px;
            gap: 28px;

            .footer-logo {
                img {
                    width: 318px;
                    height: auto;
                    margin: 0;
                }
            }

            .tel {
                margin: 0;

                a {
                    font-size: 1.75rem;
                    pointer-events: none;
                    gap: 7px;

                    img {
                        width: min(2.7343vw, 35px);
                        height: min(3.0468vw, 39px);
                    }
                }
            }
        }

        .address {
            margin-bottom: 32px;
            text-align: center;
            text-indent: -2.4739vw;
            font-size: 1rem;
            line-height: 1.375;
        }

        .copyright {
            small {
                font-size: 0.9375rem;
                line-height: 1.3333;
            }
        }
    }
}





/* ---------- トップページ ---------- */

/* ---------- sp レイアウト ----------- */
.home {

    /* ---------- 各エリア背景設定 ---------- */
    .intro-area,
    .flow-area {
        background-position-y: calc(100% + 1px);
        background-size: contain;
        background-repeat: no-repeat;
    }

    /* ----------- 各エリアレイアウト -----------*/
    .theme-area {
        padding: 23px 0 28px;
        background-color: var(--intro-bgcolor);

        h2 {
            display: none;
            visibility: hidden;
            margin: 0px 0 16px;
            text-align: center;
            text-indent: 10px;

            img {
                width: 78.2222%;
                height: auto;
                object-fit: contain;
            }
        }

        .theme-content {
            .yuuri-area {
                width: 44.6666vw;
                margin-left: 51.1111vw;
                margin-bottom: 19px;

                p {
                    display: block;
                    height: 22px;
                    width: 86px;
                    margin: auto;
                    font-size: 12px;
                    text-align: center;
                    line-height: 18px;
                    color: var(--main-color);
                    background-color: var(--yuri-bgcolor);
                    border: 2px solid var(--main-color);
                    border-radius: 11px;
                }
            }

            .newinfo-area {
                .news-list {
                    margin: auto;
                    padding: 24px 17px 17px;
                    width: 86.6666vw;
                    border: 1px solid var(--border01-color);
                    border-radius: 20px;
                    background-color: rgb(255 255 255 / 0.9);

                    h2 {
                        display: block;
                        visibility: visible;
                        text-align: left;
                        text-indent: 0px;
                        font-size: 1.4375rem;
                        font-weight: bold;
                        margin-bottom: 13px;
                    }

                    ul {
                        line-height: 1.3333;

                        .news-date {
                            display: inline-block;
                            width: 8em;
                            font-size: 0.9375rem;
                        }

                        .news-cat {
                            display: inline-block;
                            width: 120px;
                            margin-bottom: 6px;
                            font-size: 0.9375rem;
                            font-weight: bold;
                            line-height: 1.5333;
                            background-color: var(--cat-color);
                            color: var(--main-color);
                            text-align: center;
                        }

                        .news-title {
                            display: block;
                            border-bottom: 1px dotted var(--border01-color);
                            padding-bottom: 7px;
                            margin-bottom: 16px;
                            width: 100%;
                            height: calc(1.3333em + 7px);
                            white-space: nowrap;
                            text-overflow: ellipsis;
                            overflow: hidden;
                        }
                    }

                    p {
                        margin-bottom: 30px;
                    }
                }
            }
        }
    }

    .intro-area {
        background-color: var(--intro-bgcolor);

        .s-wrapper {
            padding-top: 42px;
            padding-bottom: 42px;

            /* ----- ユーリード福住について ブロック 別記 ----- */
            .desc01 {
                margin-bottom: 20px;
                line-height: 1.3846;
                font-size: 1.625rem;
                font-weight: bold;
                color: var(--catch-text-color);
            }

            .desc02 {
                margin-bottom: 31px;
                font-size: 1.1875rem;
                font-weight: bold;
                line-height: 1.5263;
            }

            .desc03-area {
                margin: 0 8.8888vw 24px;
                background-color: var(--main-color);
                border-radius: 20px;
                padding: 18px 0;

                p {
                    font-size: 1rem;
                    /* font-weight: bold; */
                    line-height: 1.625;
                }
            }

            .desc01,
            .desc02,
            .desc03-area p {
                text-align: center;
            }

            .bisiness_item-area {
                margin-left: 15.1111vw;

                ul {
                    display: flex;
                    flex-direction: column;
                    gap: 25px;

                    li {
                        display: flex;
                        align-items: center;
                        gap: 10px;

                        div {
                            width: 23.3333vw;
                            aspect-ratio: 1 / 1;
                            border-radius: 10px;
                            background-size: cover;
                            background-position: center;
                            overflow: hidden;
                            img {
                                width: 100%;
                                height: 100%;
                                object-fit: cover;
                            }
                        }

                        p {
                            font-size: 0.9375rem;
                            font-weight: bold;
                        }
                    }
                }
            }
        }
    }

    .flow-area {
        background-color: var(--mainrange-bgcolor);
        padding-bottom: 53px;

        .s-wrapper {
            .headingsmall-area {
                padding: 31px 0 11px 14.2222vw;
                display: flex;
                align-items: center;
                gap: 8px;

                h2 {
                    font-size: 1.75rem;
                    font-weight: bold;
                }
            }

            .desc01 {
                margin-bottom: 30px;
                font-size: 1.125rem;
                font-weight: bold;
                line-height: 1.5555;
                text-align: center;
            }

            .flow-list {
                margin-left: 13.3333vw;
                list-style: decimal;
                list-style-position: outside;

                li {
                    font-size: 5.5555vw;
                    font-weight: bold;

                    p {
                        display: inline;
                        font-size: 5.5555vw;
                        font-weight: bold;
                        line-height: 1.4;

                        .exp-area {
                            display: block;
                            margin-top: 10px;
                            font-size: 0.9375rem;
                            font-weight: var(--semibold);
                            line-height: 1.5333;

                            &::after {
                                display: block;
                                width: 0;
                                height: 0;
                                margin: 14px 20vw;
                                content: "";
                                border-left: 25px solid transparent;
                                border-right: 25px solid transparent;
                                border-top: 26px solid var(--triangle-color);
                            }
                        }
                    }

                    &:last-child .exp-area::after {
                        display: none;
                    }
                }
            }
        }
    }
}

/* ---------- タブレットレイアウト ---------- */
@media screen and (width > 450px) {
    .home {

        /* ----------- 各エリアレイアウト -----------*/
        .theme-area {
            padding: 55px 0 47px;

            h2 {
                margin: 0px 0 58px;
                text-indent: 0px;

                img {
                    width: 64.0625vw;
                }
            }

            .theme-content {
                display: flex;
                flex-direction: row-reverse;
                justify-content: center;
                gap: 13px;

                .yuuri-area {
                    width: 38.2812vw;
                    margin-left: 0;
                    margin-bottom: 0;

                    p {
                        height: 34px;
                        width: 134px;
                        font-size: 20px;
                        line-height: 30px;
                        border: 2px solid var(--main-color);
                        border-radius: 17px;
                    }
                }

                .newinfo-area {
                    .news-list {
                        margin: auto;
                        padding: 29px 29px 9px;
                        width: 48.8281vw;
                        height: 100%;
                        border-radius: 20px;

                        h2 {
                            font-size: 1.875rem;
                            margin-bottom: 16px;
                        }

                        ul {
                            line-height: 1.35;

                            .news-date {
                                width: 8em;
                                font-size: 2.0833vw;
                            }

                            .news-cat {
                                width: 8em;
                                margin-bottom: 7px;
                                font-size: 2.0833vw;
                                line-height: 1.375;
                            }

                            .news-title {
                                padding-bottom: 5.5px;
                                margin-bottom: 20px;
                                line-height: 1.35;
                                height: calc(1.35em + 7px);
                            }
                        }
                    }
                }
            }
        }

        .intro-area {
            .s-wrapper {
                padding: 54px 0 91px;

                .headinglarge-area {
                    margin: auto;
                    display: flex;
                    justify-content: center;
                    gap: 2.2135vw;

                    h2 {
                        margin-bottom: 39px;
                        gap: 1.6927vw;

                        img {
                            width: 43.8802vw;
                            height: auto;
                        }

                        span {
                            font-size: 2.1875rem;
                        }
                    }
                }

                .desc01 {
                    margin-bottom: 23px;
                    line-height: 1.7647;
                    font-size: 2.125rem;

                    span {
                        white-space: nowrap;
                    }
                }

                .desc02 {
                    margin-bottom: 55px;
                    font-size: 1.5625rem;
                    line-height: 1.6;
                }

                .desc03-area {
                    margin: 0 7.0312vw 20px;
                    padding: 21px 0 18px;

                    p {
                        font-size: 1.375rem;
                        line-height: 1.6818;

                        span {
                            white-space: nowrap;
                        }
                    }
                }

                .bisiness_item-area {
                    margin-left: 0;

                    ul {
                        margin-left: 7.0313vw;
                        display: flex;
                        flex-direction: row;
                        flex-wrap: wrap;
                        gap: 9.5052vw 4.6875vw;

                        li {
                            align-items: start;
                            flex-direction: column;
                            gap: 14px;

                            div {
                                width: 40.625vw;
                                border-radius: 20px;
                            }

                            p {
                                width: 40.625vw;
                                text-align: center;
                                font-size: 1.25rem;

                                span {
                                    white-space: nowrap;
                                }
                            }
                        }
                    }
                }
            }
        }

        .flow-area {
            padding: 48px 0 70px;

            .s-wrapper {
                .headingsmall-area {
                    padding: 0 0 15px 0;
                    justify-content: center;
                    gap: 14px;

                    h2 {
                        font-size: 2.5rem;
                    }
                }

                .desc01 {
                    margin-bottom: 27px;
                    font-size: 1.375rem;
                    line-height: 1.4545;
                }

                .flow-list {
                    margin-left: calc(6.6406vw + 2em);

                    li {
                        font-size: 1.875rem;

                        p {
                            font-size: 1.875rem;
                            line-height: 1.6666;

                            .exp-area {
                                margin-top: 10px;
                                font-size: 1.125rem;
                                line-height: 1.5555;

                                span {
                                    white-space: nowrap;
                                }

                                &::after {
                                    margin: 19px;
                                    border-left: 31px solid transparent;
                                    border-right: 31px solid transparent;
                                    border-top: 33px solid var(--triangle-color);
                                }
                            }

                            .s-break {
                                white-space: nowrap;
                            }
                        }

                        &:last-child .exp-area::after {
                            display: none;
                        }
                    }
                }
            }
        }
    }
}

/* ---------- PCレイアウト ---------- */
@media screen and (width > 768px) {
    .home {

        /* ----------- 各エリアレイアウト -----------*/
        .theme-area {
            padding: 93px 0 68px;

            h2 {
                margin: 0px 0 133px;

                img {
                    width: min(66.0937vw, 846px);
                }
            }

            .theme-content {
                display: flex;
                flex-direction: row-reverse;
                justify-content: center;
                gap: 38px;

                .newinfo-area {
                    .news-list {
                        padding: 28px 28px 9px;
                        width: min(51.5625vw, 660px);

                        h2 {
                            font-weight: bold;
                        }

                        ul {
                            a {
                                transition: all 0.3s;

                                .news-date {
                                    font-size: 1rem;
                                }

                                .news-cat {
                                    font-size: 1rem;
                                    line-height: 1.5;
                                }

                                .news-title {
                                    font-size: 1.25rem;
                                    height: calc(1.35em + 7px);
                                }

                                &:hover {
                                    opacity: 0.5;
                                }
                            }

                        }
                    }
                }
            }
        }

        .intro-area {
            .s-wrapper {
                padding: 61px 0 69px;

                .headinglarge-area {
                    margin-bottom: 9px;
                    margin: auto;
                    gap: 26px;

                    h2 {
                        gap: 18px;

                        img {
                            width: min(36.875vw, 472px);
                            height: auto;
                        }

                        span {
                            font-size: 3.125rem;
                        }
                    }
                }

                .desc01 {
                    margin-bottom: 25px;
                    line-height: 1.3333;
                    font-size: 2.8125rem;
                }

                .desc02 {
                    margin: 0 min(5vw, 64px) 76px;
                    font-size: 1.875rem;
                    line-height: 1.5;

                    span {
                        white-space: nowrap;
                    }
                }

                .desc03-area {
                    margin: 0 min(15.2343vw, 195px) 25px;
                    padding: 22px 0 24px;

                    p {
                        font-size: 1.875rem;
                        line-height: 1.6666;
                    }
                }

                .bisiness_item-area {
                    margin-left: 0;

                    ul {
                        margin: auto;
                        justify-content: center;
                        display: grid;
                        grid-template-columns: repeat(3, min(25.7872vw, 330px));
                        gap: min(5.0781vw, 65px) min(4.8438vw, 62px);

                        li {
                            align-items: start;
                            flex-direction: column;
                            gap: 14px;

                            div {
                                width: 100%;
                                border-radius: 20px;
                            }

                            p {
                                width: min(25.7872vw, 330px);
                                text-align: center;
                                font-size: 1.25rem;
                                font-weight: bold;

                                span {
                                    white-space: nowrap;
                                }
                            }
                        }
                    }
                }
            }
        }

        .flow-area {
            padding: 41px 0 89px;

            .s-wrapper {
                .headingsmall-area {
                    padding: 0 0 20px 0;
                    justify-content: center;
                    gap: 14px;

                    h2 {
                        font-size: 3.125rem;
                    }
                }

                .desc01 {
                    margin: 0 40px 64px;
                    font-size: 1.875rem;
                    line-height: 1.6666;

                    span {
                        white-space: nowrap;
                    }
                }

                .flow-list {
                    margin-left: calc(min(7.5781vw, 97px) + 2em);
                    margin-right: 40px;

                    li {
                        font-size: 2.5rem;

                        p {
                            font-size: 2.5rem;
                            line-height: 1.25;

                            .exp-area {
                                font-size: 1.5625rem;
                                line-height: 1.4;

                                &::after {
                                    margin: 26px 136px 16px;
                                    border-left: 41px solid transparent;
                                    border-right: 41px solid transparent;
                                    border-top: 43px solid var(--triangle-color);
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}





/* ---------- 新着情報 ページ ---------- */

/* ---------- sp レイアウト ----------- */
.page-id-8 {
    .news-area {
        padding: 23px 0 46px;

        .news-list {
            h1 {
                /* margin-left: -4.4444vw; */
                margin-bottom: 17px;
                display: flex;
                align-items: center;
                justify-content: center;
                gap: 10px;
                font-size: 1.4375rem;
                font-weight: bold;
            }

            ul {
                li {
                    display: flex;
                    margin: 0 6.6666vw;
                    height: 80px;
                    gap: 15px;
                    margin-bottom: 15px;
                    background-color: var(--main-color);
                    border: 1px solid var(--border01-color);
                    border-radius: 10px;
                    overflow: hidden;

                    .news-thumb {
                        position: relative;
                        display: inline-block;

                        img {
                            width: 89px;
                            height: 100%;
                            object-fit: cover;
                        }

                        .news-new {
                            display: block;
                            position: absolute;
                            top: 8px;
                            left: 0;
                            background: rgb(255 0 15 / 1.0);
                            color: white;
                            padding: 2px 10px;
                            font-size: 10px;
                            font-weight: bold;
                        }
                    }

                    .news-meta {
                        padding-top: 10px;
                        width: calc(100% - 119px);

                        .time-cat-area {
                            margin-bottom: 10px;
                            display: flex;
                            gap: 10px;

                            .news-date {
                                display: inline-block;
                                width: auto;
                                font-size: 0.8125rem;
                                line-height: 18px;
                                height: 18px;
                            }

                            .news-cat {
                                display: inline-block;
                                color: var(--main-color);
                                background-color: var(--cat-color);
                                line-height: 18px;
                                font-size: 0.8125rem;
                                width: 7em;
                                height: 18px;
                                text-align: center;
                                overflow: hidden;
                            }
                        }

                        .news-title {
                            display: -webkit-box;
                            -webkit-box-orient: vertical;
                            -webkit-line-clamp: 2;
                            /* 2行で省略 */
                            height: calc(0.9375rem * 1.3333 * 2);
                            font-size: 0.9375rem;
                            line-height: 1.3333;
                            overflow: hidden;
                            overflow: clip;
                            line-clamp: 2;
                        }
                    }

                    .dummy {
                        width: 100%;
                        height: 100%;
                        background-color: var(--gray-bgcolor);
                        display: flex;
                        align-items: center;
                        justify-content: center;

                        img {
                            width: fit-content;
                            height: 60%;
                        }
                    }
                }
            }
        }
    }
}

/* ---------- teblet レイアウト ---------- */
@media screen and (width > 450px) {
    .page-id-8 {
        .news-area {
            padding: 42px 0 54px;

            .news-list {
                h1 {
                    /* margin-left: -2.7343vw; */
                    margin-bottom: 24px;
                    font-size: 1.8125rem;
                    gap: 14px;

                }

                ul {
                    margin: 0 7.8125vw;
                    display: flex;
                    flex-wrap: wrap;
                    gap: 5.8593vw 0;
                    justify-content: space-between;

                    li {
                        margin: 0;
                        width: 39.4531vw;
                        height: 49.3489vw;
                        flex-direction: column;
                        gap: 11px;
                        border-radius: 20px;

                        .news-thumb {
                            position: relative;
                            display: inline-block;

                            img {
                                width: 100%;
                                height: 34.6354vw;
                            }

                            .news-new {
                                display: block;
                                padding: 3.5px 8px;
                                top: 18px;
                                width: 11.5885vw;
                                text-align: center;
                                font-size: 2.3437vw;
                                font-weight: normal;
                            }
                        }

                        .news-meta {
                            padding: 0 18px;
                            width: auto;

                            .time-cat-area {
                                display: flex;
                                justify-content: space-between;
                                gap: 0;
                                margin-bottom: 2.2135vw;

                                .news-date {
                                    font-size: 2.2135vw;
                                    line-height: 1.4117;
                                    height: auto;
                                }

                                .news-cat {
                                    line-height: 1.4117;
                                    font-size: 2.2135vw;
                                    width: 7em;
                                    height: auto;
                                }
                            }

                            .news-title {
                                height: calc(2.3437vw * 1.4116 * 2);
                                font-size: 2.3437vw;
                                line-height: 1.4166;
                            }
                        }

                        .dummy {
                            display: flex;

                            img {
                                width: 80%;
                                height: fit-content;
                            }
                        }
                    }
                }
            }
        }
    }
}

/* ---------- pc レイアウト ---------- */
@media screen and (width > 768px) {
    .page-id-8 {
        .news-area {
            padding: 45px 0 104px;

            .news-list {
                h1 {
                    font-size: 2.5em;
                    /* margin-left: min(6.0937vw, 78px); */
                    margin-bottom: 28px;

                    .news-img {
                        width: 97px;
                        height: 97.8px;
                    }
                }

                ul {
                    margin: 0 min(calc(6.25vw - 8px), 80px);
                    gap: min(3.9062vw, 50px);
                    justify-content: start;

                    li {
                        width: min(26.5625vw, 340px);
                        height: min(33.2031vw, 425px);
                        gap: 12px;
                        margin-bottom: 0;
                        overflow: hidden;

                        .news-thumb {
                            img {
                                width: 100%;
                                height: min(23.2812vw, 298px);
                            }

                            .news-new {
                                top: 25px;
                                width: min(7.4218vw, 95px);
                                font-size: min(1.5625vw, 20px);
                            }
                        }

                        .news-meta {
                            padding: 0 min(1.5625vw, 20px);

                            a {
                                transition: all 0.3s;

                                .time-cat-area {
                                    margin-bottom: min(1.4062vw, 18px);

                                    .news-date {
                                        font-size: min(1.5625vw, 20px);
                                        line-height: 1.4;
                                        height: auto;
                                    }

                                    .news-cat {
                                        line-height: 1.4;
                                        font-size: min(1.5625vw, 20px);
                                        width: min(10.9375vw, 140px);
                                        height: auto;
                                    }
                                }

                                .news-title {
                                    height: calc(min(1.5625vw, 20px) * 1.425 * 2);
                                    font-size: min(1.5625vw, 20px);
                                    line-height: 1.425;
                                }

                                &:hover {
                                    opacity: 0.5;
                                }
                            }
                        }

                        .dummy {
                            display: flex;

                            img {
                                width: 80%;
                                height: fit-content;
                            }
                        }
                    }
                }
            }
        }
    }
}





/* ---------- アーカイブ ページ ---------- */

/* ---------- sp レイアウト ----------- */
.archive {
    .news-area {
        padding: 23px 0 46px;

        .news-list {
            h1 {
                /* margin-left: -4.4444vw; */
                margin-bottom: 17px;
                display: flex;
                align-items: center;
                justify-content: center;
                gap: 10px;
                font-size: 1.4375rem;
                font-weight: bold;
            }

            ul {
                li {
                    display: flex;
                    margin: 0 6.6666vw;
                    height: 80px;
                    gap: 15px;
                    margin-bottom: 15px;
                    background-color: var(--main-color);
                    border: 1px solid var(--border01-color);
                    border-radius: 10px;
                    overflow: hidden;

                    .news-thumb {
                        position: relative;
                        display: inline-block;

                        img {
                            width: 89px;
                            height: 100%;
                            object-fit: cover;
                        }

                        .news-new {
                            display: block;
                            position: absolute;
                            top: 8px;
                            left: 0;
                            background: rgb(255 0 15 / 1.0);
                            color: white;
                            padding: 2px 10px;
                            font-size: 10px;
                            font-weight: bold;
                        }
                    }

                    .news-meta {
                        padding-top: 10px;
                        width: calc(100% - 119px);

                        .time-cat-area {
                            margin-bottom: 10px;
                            display: flex;
                            gap: 10px;

                            .news-date {
                                display: inline-block;
                                width: auto;
                                font-size: 0.8125rem;
                                line-height: 18px;
                                height: 18px;
                            }

                            .news-cat {
                                display: inline-block;
                                color: var(--main-color);
                                background-color: var(--cat-color);
                                line-height: 18px;
                                font-size: 0.8125rem;
                                width: 7em;
                                height: 18px;
                                text-align: center;
                                overflow: hidden;
                            }
                        }

                        .news-title {
                            display: -webkit-box;
                            -webkit-box-orient: vertical;
                            -webkit-line-clamp: 2;
                            /* 2行で省略 */
                            height: calc(0.9375rem * 1.3333 * 2);
                            font-size: 0.9375rem;
                            line-height: 1.3333;
                            overflow: hidden;
                            overflow: clip;
                            line-clamp: 2;
                        }
                    }

                    .dummy {
                        width: 100%;
                        height: 100%;
                        background-color: var(--gray-bgcolor);
                        display: flex;
                        align-items: center;
                        justify-content: center;

                        img {
                            width: fit-content;
                            height: 60%;
                        }
                    }
                }
            }
        }
    }
}

/* ---------- teblet レイアウト ---------- */
@media screen and (width > 450px) {
    .archive {
        .news-area {
            padding: 42px 0 54px;

            .news-list {
                h1 {
                    /* margin-left: -2.7343vw; */
                    margin-bottom: 24px;
                    font-size: 1.8125rem;
                    gap: 14px;

                }

                ul {
                    margin: 0 7.8125vw;
                    display: flex;
                    flex-wrap: wrap;
                    gap: 5.8593vw 0;
                    justify-content: space-between;

                    li {
                        margin: 0;
                        width: 39.4531vw;
                        height: 49.3489vw;
                        flex-direction: column;
                        gap: 11px;
                        border-radius: 20px;

                        .news-thumb {
                            position: relative;
                            display: inline-block;

                            img {
                                width: 100%;
                                height: 34.6354vw;
                            }

                            .news-new {
                                display: block;
                                padding: 3.5px 8px;
                                top: 18px;
                                width: 11.5885vw;
                                text-align: center;
                                font-size: 2.3437vw;
                                font-weight: normal;
                            }
                        }

                        .news-meta {
                            padding: 0 18px;
                            width: auto;

                            .time-cat-area {
                                display: flex;
                                justify-content: space-between;
                                gap: 0;
                                margin-bottom: 2.2135vw;

                                .news-date {
                                    font-size: 2.2135vw;
                                    line-height: 1.4117;
                                    height: auto;
                                }

                                .news-cat {
                                    line-height: 1.4117;
                                    font-size: 2.2135vw;
                                    width: 7em;
                                    height: auto;
                                }
                            }

                            .news-title {
                                height: calc(2.3437vw * 1.4116 * 2);
                                font-size: 2.3437vw;
                                line-height: 1.4166;
                            }
                        }

                        .dummy {
                            display: flex;

                            img {
                                width: 80%;
                                height: fit-content;
                            }
                        }
                    }
                }
            }
        }
    }
}

/* ---------- pc レイアウト ---------- */
@media screen and (width > 768px) {
    .archive {
        .news-area {
            padding: 45px 0 104px;

            .news-list {
                h1 {
                    font-size: 2.5em;
                    /* margin-left: min(6.0937vw, 78px); */
                    margin-bottom: 28px;

                    .news-img {
                        width: 97px;
                        height: 97.8px;
                    }
                }

                ul {
                    margin: 0 min(calc(6.25vw - 8px), 80px);
                    gap: min(3.9062vw, 50px);
                    justify-content: start;

                    li {
                        width: min(26.5625vw, 340px);
                        height: min(33.2031vw, 425px);
                        gap: 12px;
                        margin-bottom: 0;
                        overflow: hidden;

                        .news-thumb {
                            img {
                                width: 100%;
                                height: min(23.2812vw, 298px);
                            }

                            .news-new {
                                top: 25px;
                                width: min(7.4218vw, 95px);
                                font-size: min(1.5625vw, 20px);
                            }
                        }

                        .news-meta {
                            padding: 0 min(1.5625vw, 20px);

                            a {
                                transition: all 0.3s;

                                .time-cat-area {
                                    margin-bottom: min(1.4062vw, 18px);

                                    .news-date {
                                        font-size: min(1.5625vw, 20px);
                                        line-height: 1.4;
                                        height: auto;
                                    }

                                    .news-cat {
                                        line-height: 1.4;
                                        font-size: min(1.5625vw, 20px);
                                        width: min(10.9375vw, 140px);
                                        height: auto;
                                    }
                                }

                                .news-title {
                                    height: calc(min(1.5625vw, 20px) * 1.425 * 2);
                                    font-size: min(1.5625vw, 20px);
                                    line-height: 1.425;
                                }

                                &:hover {
                                    opacity: 0.5;
                                }
                            }
                        }

                        .dummy {
                            display: flex;

                            img {
                                width: 80%;
                                height: fit-content;
                            }
                        }
                    }
                }
            }
        }
    }
}





/* ---------- 個別投稿 ページ ---------- */

/* ---------- sp レイアウト ----------- */
.single-post {
    .post-area {
        padding: 35px 6.6666vw 0;

        .contents-area {
            padding: 24px;
            background-color: var(--main-color);
            border: 1px solid var(--border01-color);
            border-radius: 20px;

            .post-thumb {
                margin-bottom: 10px;

                img {
                    width: 100%;
                    height: auto;
                    object-fit: contain;
                }
            }

            .date-cat-area {
                margin-bottom: 27px;

                .post-date,
                .post-cat {
                    display: inline-block;
                }

                .post-date {
                    margin-right: 5.5555vw;
                    font-size: 0.875rem;
                    line-height: 22px;
                }

                .post-cat {
                    width: 8em;
                    font-size: 1rem;
                    height: 22px;
                    line-height: 22px;
                    text-align: center;
                    background-color: var(--cat-color);
                    color: var(--main-color);
                }
            }

            .post-title {
                margin-bottom: calc(6px - 0.525rem);
                font-size: 1.25rem;
                line-height: 2;
            }

            .post-content {
                font-size: 0.75rem;
                line-height: 1.8333;
                margin-bottom: 62px;

                h2 {
                    font-size: 1.1rem;
                }

                h3 {
                    font-size: 0.95rem;
                }

                h4 {
                    font-size: 0.8rem;
                }

                h5,
                h6 {
                    font-size: 0.75rem;
                }

                h2,
                h3,
                h4,
                h5,
                h6 {
                    margin-top: 1em;
                    font-weight: bold;
                    line-height: 1.35;
                }

                p {
                    margin-top: 0.75em;
                }

                h2+p,
                h3+p,
                h4+p,
                h5+p,
                h6+p {
                    margin-top: 1em;
                }

                ul,
                ol {
                    margin-left: 3em;
                    margin-top: 0.6em;

                    li {
                        line-height: 1.6;
                        list-style-position: outside;
                    }
                }

                ul {
                    li {
                        list-style-type: disc;
                    }
                }

                ol {
                    li {
                        list-style-type: decimal;
                    }
                }

                figure {
                    margin-top: 0.5em;
                    margin-bottom: 1em;
                }
            }
        }
    }

    .sidebar-archive {
        padding-top: 40px;
        padding-bottom: 44px;
        display: flex;

        .archive-month,
        .archive-category {
            width: 50%;

            h3 {
                margin-bottom: 1rem;
                font-size: 1.5625rem;
                text-align: center;
                color: var(--border01-color);
            }

            ul {
                li {
                    line-height: 2.5;
                    color: var(--border01-color);
                    white-space: nowrap;

                    &::before {
                        content: "・";
                    }

                    a {
                        color: var(--link-bgcolor);
                    }
                }
            }
        }

        .archive-month {
            padding-left: 1.5rem;
            border-right: 1px solid var(--border01-color);
        }

        .archive-category {
            padding-left: 1.5rem;
        }
    }
}

/* ---------- teblet レイアウト ---------- */
@media screen and (width > 450px) {
    .single-post {
        .post-area {
            padding: 75px 7.8125vw 0;

            .contents-area {
                padding: 5.2083vw;

                .post-thumb {
                    margin-bottom: 16px;
                }

                .date-cat-area {
                    margin-bottom: 30px;

                    .post-date {
                        font-size: 1.0625rem;
                        line-height: calc(1.1875rem * 1.4210);
                        margin-right: 4.6875vw;
                    }

                    .post-cat {
                        font-size: 1.1875rem;
                        height: 1.4210em;
                        line-height: 1.4210;
                    }
                }

                .post-title {
                    margin-bottom: calc(10px - 0.7rem);
                    font-size: 1.5625rem;
                    line-height: 1.6;
                }

                .post-content {
                    margin-bottom: 49px;
                    font-size: 0.9375rem;
                    line-height: 1.8;
                }

                h2 {
                    font-size: 1.45rem;
                }

                h3 {
                    font-size: 1.1rem;
                }

                h4 {
                    font-size: 0.98rem;
                }

                h5,
                h6 {
                    font-size: 0.9375rem;
                }
            }
        }

        .sidebar-archive {
            padding-top: 91px;
            padding-bottom: 53px;

            .archive-month,
            .archive-category {

                h3 {
                    margin-bottom: 1.875rem;
                    font-size: 2.4375rem;
                }

                ul {
                    li {
                        line-height: 2.174;
                        font-size: 1.4375rem;
                    }
                }
            }

            .archive-month {
                ul {
                    padding-left: 7.03125vw;
                }
            }

            .archive-category {
                padding-left: 4.3125rem;
            }
        }
    }
}


/* ---------- pc レイアウト ---------- */
@media screen and (width > 768px) {
    .single-post {
        .single-content {
            background-color: var(--mainrange-bgcolor);

            .single-wrapper {
                margin: auto;
                max-width: 1280px;
                display: flex;


                .post-area {
                    padding: 0;

                    .s-wrapper {
                        margin: 0;
                        width: min(67.8125vw, 868px);
                        padding: 73px min(8.2031vw, 105px) 75px;

                        @media (width > 1280px) {
                            margin: auto;
                        }

                        .contents-area {
                            padding: min(4.0625vw, 52px);

                            .post-thumb {
                                margin-bottom: 19px;
                            }

                            .date-cat-area {
                                margin-bottom: 42px;

                                .post-date {
                                    font-size: 1.25rem;
                                    line-height: 31px;
                                    margin-right: 40px;
                                }

                                .post-cat {
                                    font-size: 1.375rem;
                                    height: 31px;
                                    line-height: 31px;
                                }
                            }

                            .post-title {
                                font-size: 1.875rem;
                                line-height: 1.3333;
                            }

                            .post-content {
                                margin-bottom: 65px;
                                font-size: 1.25rem;
                                line-height: 1.75;


                                h2 {
                                    font-size: 1.7rem;
                                    margin-top: 3em;
                                }

                                h3 {
                                    font-size: 1.45rem;
                                    margin-top: 2em;
                                }

                                h4 {
                                    font-size: 1.3rem;
                                }

                                h5,
                                h6 {
                                    font-size: 1.25rem;
                                }

                                figure {
                                    margin-bottom: 1.5em;
                                }
                            }
                        }
                    }
                }

                .sidebar-archive {
                    padding-top: 73px;
                    display: block;

                    .archive-month,
                    .archive-category {
                        width: min(32.1093vw, 411px);

                        h3 {
                            margin-bottom: 2.625rem;
                            width: 100%;
                            font-size: 2.875rem;
                            text-align: left;

                        }

                        ul {
                            li {
                                line-height: 2.5;

                            }
                        }
                    }

                    .archive-month {
                        border-right: none;
                        padding-left: 1.6875rem;

                        ul {
                            padding: 0;
                            margin-bottom: 2.625rem;
                        }
                    }

                    .archive-category {
                        padding-left: 1.6875rem;
                    }
                }

                aside {
                    margin-bottom: 4.0625vw;
                }
            }
        }
    }
}




/* ------ 最新情報・個別投稿 ページネーション ------ */

/* ---------- sp レイアウト ----------- */
.page-id-8,
.single-post,
.archive {
    .pagination {
        margin-top: 25px;
        height: 35px;
        text-align: center;
        display: flex;
        justify-content: center;

        .page-list {
            width: 100%;
            display: flex;
            justify-content: space-between;
            margin: 0;

            li {
                display: inline-block;

                a,
                .disabled {
                    width: 40vw;
                    height: 35px;
                    display: flex;
                    align-items: center;
                    padding: 0 19px;
                    /* 上下paddingを削除 */
                    background-color: var(--main-color);
                    border: 2px solid var(--border01-color);
                    border-radius: 17.5px;
                    font-size: 0.9375rem;
                    font-weight: bold;
                    text-decoration: none;
                    transition: all 0.3s;

                    &:hover {
                        opacity: 0.5;
                    }

                    span {
                        display: block;
                        line-height: 1;
                    }

                    img {
                        width: 17px;
                        height: 17px;
                        flex-shrink: 0;
                    }
                }

                .disabled {
                    pointer-events: none;
                    background-color: var(--gray-bgcolor);
                }
            }

            .first-list {

                a,
                .disabled {
                    gap: 5.8133vw;
                    justify-content: flex-start;
                }
            }

            .last-list {

                a,
                .disabled {
                    gap: 8.7466vw;
                    justify-content: flex-end;
                }
            }
        }
    }
}

/* ---------- teblet レイアウト ---------- */
@media screen and (width > 450px) {

    .page-id-8,
    .single-post,
    .archive {
        .pagination {
            margin-top: 40px;
            height: 50px;

            .page-list {
                li {

                    a,
                    .disabled {
                        width: 37.7604vw;
                        height: 50px;
                        padding: 0 4.6875vw;
                        /* 上下paddingを削除 */
                        font-size: 1.5625rem;
                        border-radius: 25px;

                        img {
                            width: 23.5px;
                            height: 20.5px;
                        }
                    }
                }

                .first-list {

                    a,
                    .disabled {
                        gap: 7.4218vw;
                    }
                }

                .last-list {

                    a,
                    .disabled {
                        gap: 9.5052vw;
                    }
                }
            }
        }
    }
}

/* ---------- pc レイアウト ---------- */
@media screen and (width > 768px) {

    .page-id-8,
    .single-post,
    .archive {
        .pagination {
            margin-top: 64px;
            margin: 64px max(-6.6406vw, -85px) 0;
            height: 65px;

            .page-list {
                li {

                    a,
                    .disabled {
                        width: min(33.3593vw, 427px);
                        height: 65px;
                        padding: 0 min(4.6875vw, 36.5px);
                        /* 上下paddingを削除 */
                        font-size: 1.875rem;
                        border-radius: 32.5px;

                        img {
                            width: 27.5px;
                            height: 26px;
                        }
                    }
                }

                .first-list {

                    a,
                    .disabled {
                        gap: min(8.2031vw, 105px);
                    }
                }

                .last-list {

                    a,
                    .disabled {
                        gap: min(9.5312vw, 122px);
                    }
                }
            }
        }
    }
}



/* ----------個別投稿　ページネーション ---------- */
/* ----- pc 調整 ----- */
@media screen and (width > 768px) {
    .single-post {
        .pagination {
            .page-list {
                li {

                    a,
                    .disabled {
                        width: min(26.6406vw, 341px);
                        height: 52px;
                        padding: 0 min(2.2816vw, 29.2px);
                        /* 上下paddingを削除 */
                        font-size: 1.5rem;
                        border-radius: 26px;

                        img {
                            width: 22px;
                            height: 21.143px;
                        }
                    }
                }

                .first-list {

                    a,
                    .disabled {
                        gap: min(6.5625vw, 84px);
                    }
                }

                .last-list {

                    a,
                    .disabled {
                        gap: min(7.625vw,97.6px);
                    }
                }
            }
        }
    }
}


/* ---------- 最新情報・アーカイブ ページネーション --------- */

/* ----- sp 調整 ----- */
.page-id-8,
.archive {
    .pagination {
        margin: 25px 6.6666vw 0;
    }
}

/* ----- tb 調整 ----- */
@media screen and (width > 450px) {

    .page-id-8,
    .archive {
        .pagination {
            margin: 75px 7.8125vw 0;
        }
    }
}

/* ----- pc 調整 ----- */
@media screen and (width > 768px) {

    .page-id-8,
    .archive {
        .pagination {
            margin: 64px min(14.0625vw, 180px) 0;
        }
    }
}




/* ---------- 事業所紹介 ページ ---------- */

/* ---------- sp レイアウト ----------- */
.page-id-10 {
    .intro-area {
        .s-wrapper {
            padding: 38px 0 20px;

            .headinglarge-area {
                margin-bottom: 23px;
            }

            .work-list {
                section {
                    margin-bottom: 21px;
                    height: 23.3333vw;
                    display: flex;
                    justify-content: center;
                    gap: 10px;

                    div[class*="img"] {
                        height: 100%;
                        aspect-ratio: 1 / 1;
                        border-radius: 10px;
                        background-repeat: no-repeat;
                        background-size: cover;
                        background-position: center;
                        overflow: hidden;
                        img {
                            width: 100%;
                            height: 100%;
                            object-fit: cover;
                        }
                    }

                    .work-desc {
                        display: flex;
                        flex-direction: column;
                        justify-content: center;

                        h2 {
                            padding-bottom: 2.2222vw;
                            margin-bottom: 1.7777vw;
                            align-items: end;
                            font-size: 4.6666vw;
                            font-weight: bold;
                            line-height: 1;
                            white-space: nowrap;
                            border-bottom: 1px solid var(--border01-color);

                            .detail {
                                font-size: 0.6666em;
                            }
                        }

                        p {
                            font-size: 0.75rem;
                            font-weight: var(--semibold);
                            line-height: 1.5;
                        }

                        h2,
                        p {
                            width: 59.5555vw;
                        }
                    }

                    &:nth-child(5) {
                        p {
                            line-height: 1.3;
                        }
                    }
                }
            }
        }
    }
}

/* ---------- teblet レイアウト ---------- */
@media screen and (width > 450px) {
    .page-id-10 {
        .intro-area {
            .s-wrapper {
                padding: 42px 0 25px;

                .headinglarge-area {
                    margin-bottom: 43px;
                }

                .work-list {
                    section {
                        margin-bottom: 23px;
                        height: 21.0937vw;
                        gap: 2.8645vw;

                        div[class*="img"] {
                            border-radius: 15px;
                        }

                        .work-desc {
                            h2 {
                                padding-bottom: 1.7578vw;
                                margin-bottom: 1.3672vw;
                                font-size: 4.5573vw;

                                .detail {
                                    font-size: 0.7143em;
                                }
                            }

                            p {
                                font-size: 2.6041vw;
                                line-height: 1.5;
                            }

                            h2,
                            p {
                                width: 63.0208vw;
                            }
                        }

                        &:nth-child(5) {
                            p {
                                font-size: 2.52vw;
                            }
                        }
                    }
                }
            }
        }
    }
}

/* ---------- pc レイアウト ---------- */
@media screen and (width > 768px) {
    .page-id-10 {
        .intro-area {
            .s-wrapper {
                padding: 43px 0 35px;

                .headinglarge-area {
                    margin-bottom: 51px;
                }

                .work-list {
                    section {
                        margin-bottom: 34px;
                        height: min(15.625vw, 200px);
                        gap: min(1.9531vw, 25px);

                        div[class*="img"] {
                            border-radius: 20px;
                        }

                        .work-desc {
                            h2 {
                                padding-bottom: min(1.25vw, 16px);
                                margin-bottom: min(1.0547vw, 13.5px);
                                font-size: 2.5rem;

                                .detail {
                                    font-size: 0.75em;
                                }
                            }

                            p {
                                font-size: 1.5625rem;
                                line-height: 1.5;
                            }

                            h2,
                            p {
                                width: min(71.4843vw, 915px);
                            }
                        }

                        &:nth-child(5) {
                            p {
                                font-size: 1.52rem;
                            }
                        }
                    }
                }
            }
        }
    }
}




/* ---------- アクセス ページ ---------- */

/* ---------- sp レイアウト ----------- */
.page-id-12 {
    .access-area {
        .s-wrapper {
            padding: 38px 6.6666vw 37px;

            h1 {
                margin-bottom: 33px;
                display: flex;
                align-items: center;
                gap: 12px;
                font-size: 1.75rem;
                font-weight: bold;
                justify-content: center;
            }

            dl {
                margin-bottom: 4px;

                .item {
                    margin-bottom: 20px;
                    padding-left: 20px;
                    border-left: 2px solid var(--border01-color);

                    dt {
                        margin-bottom: 7px;
                        font-size: 1.5625rem;
                        font-weight: bold;
                        line-height: 1.4;
                    }

                    dd {
                        font-size: 0.9375rem;
                        font-weight: var(--semibold);
                        line-height: 1.4666;

                        .letter-space {
                            letter-spacing: 1em;
                        }
                    }
                }
            }

            .map-area {
                margin-bottom: 10px;

                iframe {
                    width: 100%;
                    height: 106.2222vw;
                }
            }

            p {
                font-size: 0.8125rem;
                font-weight: var(--semibold);
                text-align: right;
            }
        }
    }
}

/* ---------- teblet レイアウト ---------- */
@media screen and (width > 450px) {
    .page-id-12 {
        .access-area {
            .s-wrapper {
                padding: 42px 6.5104vw 44px;

                h1 {
                    margin-bottom: 32px;
                    gap: 14px;
                    font-size: 1.8125rem;
                }
                --dl-height: calc(1.875rem * 1.1666 * 3 + 13px * 3 + 2.25rem * 1.5555 * 3 + 20px * 2 + 20px);
                dl {
                    margin-bottom: 25px;
                    height: var(--dl-height);
                    display: flex;
                    flex-direction: column;
                    flex-wrap: wrap;
                    gap: 0 1%;
                    @media screen and (width > 676px) {
                        height: calc(var(--dl-height) - 1.125rem * 1.5555);
                    }
                    .item {
                        margin-bottom: 25px;
                        width: 49%;

                        dt {
                            margin-bottom: 13px;
                            font-size: 1.875rem;
                            line-height: 1.1666;
                        }

                        dd {
                            font-size: 1.125rem;
                            line-height: 1.5555;

                            span {
                                white-space: nowrap;
                            }
                        }

                        &:nth-child(3) {
                            margin-bottom: 0;
                        }
                    }
                }

                .map-area {
                    iframe {
                        height: 62.3697vw;
                    }
                }

                p {
                    font-size: 1.125rem;
                }
            }
        }
    }
}

/* ---------- pc レイアウト ---------- */
@media screen and (width > 768px) {
    .page-id-12 {
        .access-area {
            .s-wrapper {
                padding: 43px min(5.4687vw, 70px) 59px;

                h1 {
                    margin-bottom: 49px;
                    gap: 23px;
                    font-size: 3.125rem;
                }

                dl {
                    margin-bottom: 20px;
                    width: min(80vw, 1024px);
                    height: calc(2.5rem * 1.3 * 3 + 13px * 3 + 1.5625rem * 1.4 * 6 + 30px * 2 + 1px);
                    gap: 0;

                    .item {
                        margin-bottom: 30px;
                        width: min(40vw, 512px);

                        dt {
                            font-size: 2.5rem;
                            line-height: 1.3;
                        }

                        dd {
                            font-size: 1.5625rem;
                            line-height: 1.4;
                        }
                    }
                }

                .map-area {
                    margin-bottom: 15px;

                    iframe {
                        height: min(55.5468vw, 711px);
                    }
                }

                p {
                    font-size: 1.25rem;
                }
            }
        }
    }
}

/* ----- pc 調整 ----- */
@media screen and (width < 884px) and (width > 768px) {
    .page-id-12 {
        .access-area {
            dl {
                height: calc(2.5rem * 1.3 * 3 + 13px * 3 + 1.5625rem * 1.4 * 7 + 30px * 2 + 1px);
            }
        }
    }
}



/* ---------- 会社概要 ページ ---------- */

/* ---------- sp レイアウト ----------- */
.page-id-14 {
    .company-area {
        .s-wrapper {
            padding: 38px 6.6666vw 56px;

            h1 {
                margin-bottom: 38px;
                text-align: center;
                font-size: 1.75rem;
                font-weight: bold;
            }

            dl {
                display: flex;
                /* flex */
                flex-wrap: wrap;

                dt {
                    width: 28.4615%;
                    text-align: center;
                    color: var(--main-color);
                    background-color: var(--access-thead-color);
                }

                dd {
                    width: 71.538%;
                    padding-left: 10px;
                }

                dt,
                dd {
                    --comarea-border-style: 2px solid var(--border01-color);
                    height: 47px;
                    line-height: 45px;
                    border-bottom: var(--comarea-border-style);

                    &:first-of-type {
                        border-top: var(--comarea-border-style);
                        line-height: 43px;
                    }
                }
            }

            /* ただいま準備中です画面 */
            .construction {
                --comarea-sp-height: 62.8888vw;
                display: none;
                /* none */
                line-height: var(--comarea-sp-height);
                width: 100%;
                height: var(--comarea-sp-height);
                font-size: 1.75rem;
                font-weight: bold;
                text-align: center;
                background-color: #fff;
                border: 1px solid var(--border01-color);
            }
        }
    }
}

/* ---------- teblet レイアウト ---------- */
@media screen and (width > 450px) {
    .page-id-14 {
        .company-area {
            .s-wrapper {
                padding: 43px 13.5416vw 54px;

                h1 {
                    margin-bottom: 38px;
                    font-size: 1.8125rem;
                }

                dl {
                    dt {
                        width: 23.75%;
                    }

                    dd {
                        width: 76.25%;
                        padding-left: 12px;
                    }

                    dt,
                    dd {
                        height: 56px;
                        line-height: 54px;

                        &:first-of-type {
                            line-height: 52px;
                        }
                    }
                }

                /* ただいま準備中です画面 */
                .construction {
                    --comarea-tb-height: 44.1406vw;
                    line-height: var(--comarea-tb-height);
                    width: 100%;
                    height: var(--comarea-tb-height);
                    font-size: 1.8125rem;
                }
            }
        }
    }
}

/* ---------- pc レイアウト ---------- */
@media screen and (width > 768px) {
    .page-id-14 {
        .company-area {
            .s-wrapper {
                padding: 43px min(18.75vw, 240px) 88px;

                h1 {
                    margin-bottom: 44px;
                    font-size: 3.125rem;
                }

                dl {
                    dt {
                        width: 23.75%;
                    }

                    dd {
                        width: 76.25%;
                        padding-left: 18px;
                    }

                    dt,
                    dd {
                        height: 80px;
                        line-height: 78px;

                        &:first-of-type {
                            line-height: 76px;
                        }
                    }
                }

                /* ただいま準備中です画面 */
                .construction {
                    --comarea-pc-height: min(37.6562vw, 482px);
                    line-height: var(--comarea-pc-height);
                    width: 100%;
                    height: var(--comarea-pc-height);
                    font-size: 1.8125rem;
                }
            }
        }
    }
}



/* ---------- コンタクトフォーム ---------- */

/* -----------お問い合わせ 入力画面 ----------*/
/* ---------- sp レイアウト ----------- */
.page-id-22 {
    background-color: var(--mainrange-bgcolor);

    main {
        #post-22 {
            padding-top: 39px;

            h1 {
                margin-bottom: 35px;
                font-size: 1.75rem;
                font-weight: bold;
                text-align: center;
            }

            .form-area {
                padding-bottom: 37px;

                p {
                    margin: 0 7.7777vw 18px;

                    label {
                        font-size: 1rem;
                        font-weight: bold;
                        line-height: 1.375;

                        input,
                        textarea {
                            margin-top: 8px;
                            padding: 7px;
                            border: 1px solid var(--border01-color);
                            border-radius: 5px;
                            background-color: var(--main-color);
                            width: 100%;
                            font-size: 0.8125rem;
                            font-weight: normal;
                            line-height: 1.3846;
                        }

                        textarea {
                            height: 30vw;
                        }
                    }

                    .submit-btn {
                        display: block;
                        margin: auto;
                        width: 37.7777vw;
                        padding: 0.7692em;
                        font-size: 0.8125rem;
                        font-weight: bold;
                        line-height: 1;
                        text-align: center;
                        border: none;
                        border-radius: calc((0.8125rem + 0.7692em * 2) / 2);
                        background-color: var(--link-bgcolor);
                        color: var(--main-color);
                    }

                    &:nth-child(4) {
                        margin-bottom: 26px;
                    }

                    &:last-child {
                        height: calc(0.7692em * 2 + 1em);
                    }
                }
            }
        }
    }

}

/* ---------- teblet レイアウト ---------- */
@media screen and (width > 450px) {
    .page-id-22 {
        main {
            #post-22 {
                padding-top: 66px;

                h1 {
                    margin-bottom: 62px;
                    font-size: 2.1875rem;
                }

                .form-area {
                    padding-bottom: 45px;

                    p {
                        margin: 0 6.5104vw 26px;

                        label {
                            font-size: 1.5rem;
                            line-height: 1.375;

                            input,
                            textarea {
                                margin-top: 11px;
                                padding: 7px;
                                font-size: 1.25rem;
                                line-height: 1.35;
                            }

                            textarea {
                                height: 25.7812vw;
                            }
                        }

                        .submit-btn {
                            width: 32.4218vw;
                            padding: 0.7894em;
                            font-size: 1.1875rem;
                            border-radius: calc((1em + 0.7894em * 2) / 2);
                        }

                        &:nth-child(4) {
                            margin-bottom: 35px;
                        }

                        &:last-of-type {
                            height: calc(0.7894em * 2 + 1em);
                        }
                    }
                }
            }
        }
    }
}

/* ---------- PC レイアウト ---------- */
@media screen and (width > 768px) {
    .page-id-22 {
        main {
            #post-22 {
                padding-top: 78px;

                h1 {
                    margin-bottom: 42px;
                    font-size: 3.125rem;
                }

                .form-area {
                    padding-bottom: 60px;

                    p {
                        margin: 0 min(8.4375vw, 108px) 38px min(7.1093vw, 91px);

                        label {
                            font-size: 2.1875rem;
                            line-height: 1.3428;

                            input,
                            textarea {
                                margin-top: 15px;
                                padding: 10px;
                                font-size: 1.875rem;
                                line-height: 1.3666;
                            }

                            textarea {
                                height: min(22.6562vw, 290px);
                            }
                        }

                        .submit-btn {
                            width: min(35.1562vw, 450px);
                            padding: 0.5em;
                            font-size: 2.1875rem;
                            border-radius: calc((1em + 0.5em * 2) / 2);
                        }

                        &:nth-child(4) {
                            margin-bottom: 55px;
                        }

                        &:last-of-type {
                            height: calc(0.5em * 2 + 1em);
                        }
                    }
                }
            }
        }
    }
}



/* -----------お問い合わせ 確認画面 ----------*/
/* ---------- sp レイアウト ----------- */
.page-id-24 {
    main {
        background-color: var(--mainrange-bgcolor);

        #post-24 {
            padding-top: 39px;

            h1 {
                text-align: center;
                font-size: 1.75rem;
                font-weight: bold;
            }

            .confirm-area {
                padding: 35px 7.7777vw 37px;

                dl {
                    margin-bottom: 41px;

                    dt {
                        margin-bottom: 12px;

                        p {
                            font-weight: bold;
                            font-size: 1rem;
                            line-height: 1.375;
                        }
                    }

                    dd {
                        margin-bottom: 24px;

                        p {
                            font-size: 0.8125rem;
                            line-height: 1.3846;
                            white-space: pre-wrap;
                        }
                    }
                }

                .button-area {
                    --btn-width: 29.3333vw;
                    --btn-height: calc(1em + 0.7692em * 2);
                    display: flex;
                    justify-content: center;
                    gap: 8.2222vw;
                    font-size: 0.8125rem;

                    div {
                        height: var(--btn-height);

                        p {
                            width: var(--btn-width);

                            input {
                                width: var(--btn-width);
                                height: var(--btn-height);
                                font-size: 0.8125rem;
                                line-height: 1;
                                text-align: center;
                                border-radius: calc(var(--btn-height) / 2);
                            }

                            .return-btn {
                                background-color: var(--main-color);
                                color: var(--link-bgcolor);
                                border: 2px solid var(--link-bgcolor);
                            }

                            .send-btn {
                                background-color: var(--link-bgcolor);
                                color: var(--main-color);
                            }
                        }
                    }
                }
            }
        }
    }
}

/* ---------- tablet レイアウト ----------- */
@media screen and (width > 450px) {
    .page-id-24 {
        main {
            #post-24 {
                padding-top: 66px;

                h1 {
                    font-size: 2.1875rem;
                }

                .confirm-area {
                    padding: 62px 6.5104vw 46px;

                    dl {
                        margin-bottom: 88px;

                        dt {
                            margin-bottom: 17px;

                            p {
                                font-size: 1.5rem;
                                line-height: 1.375;
                            }
                        }

                        dd {
                            margin-bottom: 33px;

                            p {
                                font-size: 1.25rem;
                                line-height: 1.35;
                            }
                        }
                    }

                    .button-area {
                        --btn-width: 25.2604vw;
                        --btn-height: calc(1em + 0.7894em * 2);
                        gap: 10.9375vw;
                        font-size: 1.1875rem;

                        div {
                            p {
                                input {
                                    font-size: 1.1875rem;
                                }

                                .return-btn {
                                    border: 3px solid var(--link-bgcolor);
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}

/* ---------- pc レイアウト ----------- */
@media screen and (width > 768px) {
    .page-id-24 {
        main {
            #post-24 {
                padding-top: 78px;

                h1 {
                    font-size: 3.125rem;
                }

                .confirm-area {
                    padding: 42px 6.5104vw 60px;

                    dl {
                        margin-bottom: 132px;

                        dt {
                            margin-bottom: 24px;

                            p {
                                font-size: 2.1875rem;
                                line-height: 1.3428;
                            }
                        }

                        dd {
                            margin-bottom: 49px;

                            p {
                                font-size: 1.875rem;
                                line-height: 1.3666;
                            }
                        }
                    }

                    .button-area {
                        --btn-width: min(21.875vw, 280px);
                        --btn-height: calc(1em + 0.5em * 2);
                        gap: 9.375vw;
                        font-size: 2.1875rem;

                        div {
                            p {
                                input {
                                    font-size: 2.1875rem;
                                }
                            }
                        }
                    }
                }
            }
        }
    }
}


/* -----------お問い合わせ ありがとう画面 ----------*/
/* ---------- sp レイアウト ----------- */
.page-id-16 {
    .thanks-area {
        position: relative;
        background-color: var(--mainrange-bgcolor);
        height: 600px;

        .thanks-main-area {
            position: absolute;
            top: 47.9%;
            left: 50%;
            transform: translate(-50%, -50%);

            p {
                text-align: center;
                margin: 0 auto 43px;
                font-size: 1.4375rem;
                font-weight: bold;
                line-height: 1.5652;
                white-space: nowrap;
            }

            a {
                display: block;
                margin: auto;
                width: 39.3333vw;
                height: 33px;
                font-size: 1rem;
                color: var(--link-bgcolor);
                line-height: 29px;
                text-align: center;
                border-radius: 16.5px;
                background-color: var(--main-color);
                border: 2px solid var(--link-bgcolor);
            }
        }

        .s-wrapper {
            position: static;
        }
    }
}

/* ---------- tablet レイアウト ----------- */
@media screen and (width > 450px) {
    .page-id-16 {
        .thanks-area {
            height: 870px;

            .thanks-main-area {
                top: 43.4%;

                p {
                    margin: 0 auto 54px;
                    font-size: 2.25rem;
                    line-height: 1.5833;
                }

                a {
                    width: 35.1562vw;
                    height: 51px;
                    font-size: 1.5625rem;
                    line-height: 45px;
                    border-radius: 25.5px;
                    border: 3px solid var(--link-bgcolor);
                }
            }
        }
    }
}

/* ---------- pc レイアウト ----------- */
@media screen and (width > 768px) {
    .page-id-16 {
        .thanks-area {
            height: calc(100vh - 145px);

            .thanks-main-area {
                top: 50.8%;

                p {
                    margin: 0 auto 72px;
                    font-size: 3.125rem;
                    line-height: 1.6;
                }

                a {
                    width: min(28.9062vw, 370px);
                    height: 70px;
                    font-size: 2.1875rem;
                    line-height: 64px;
                    border-radius: 35px;
                }
            }
        }
    }
}





/* ---------- 404 ページ ----------*/
.error404 {
    background-color: var(--mainrange-bgcolor);

    .error-404 {
        height: 60vh;

        .page-header {
            position: relative;
            top: 35%;
        }

        .page-content {
            position: relative;
            top: 40%;

            a {
                text-decoration: underline;
            }
        }

        h1,
        p {
            text-align: center;
            margin-bottom: 20px;
        }

        h1 {
            font-size: 1.8rem;
        }
    }
}