@charset "UTF-8";

/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * CONTENTS............目次
 * CHANGE_STYLE........スタイル変更
 * STYLES.............一覧
 */





/*------------------------------------*\
    $CHANGE_STYLE
\*------------------------------------*/
.main-visual__wrapper { height: min(480px, 56.25vw) }





/*------------------------------------*\
    $STYLES
\*------------------------------------*/
.policy {}

    .policy__author {
        width: min(560px, 100%);
        margin-inline: auto;
    }

        .policy__author__list {}

            .policy__author__item:not(:first-of-type) { border-top: 2px solid var(--background6) }

                .policy__author__column {
                    display: flex;
                    flex-wrap: wrap;
                    align-items: center;
                    justify-content: space-between;
                    font-size: 1.4rem;
                    line-height: calc(47 / 14);
                    letter-spacing: .05em;
                    white-space: nowrap;
                }

                    .policy__author__label {
                        flex-grow: 1;
                        width: fit-content;
                        max-width: calc(100% - 160px);
                        color: var(--background6);
                    }

                        .policy__author__label span {
                            position: relative;
                            display: flex;
                            align-items: center;
                            height: 100%;
                            padding-inline: clamp(12px, calc(100vw * (12 / 375)), 20px);
                        }

                        .policy__author__label span::before {
                            content: "";
                            position: absolute;
                            top: calc(50% - 1em);
                            left: clamp(6px, calc(100vw * (6 / 375)), 10px);
                            width: 2px;
                            height: 32px;
                            background-color: var(--primaryColor);
                        }


                    .policy__author__content {
                        width: 160px;
                        padding-inline: clamp(12px, calc(100vw * (12 / 375)), 20px);
                        text-align: right;
                    }


    .policy__list {
        display: flex;
        flex-direction: column;
        row-gap: 20px;
        width: 100%;
    }

        .policy__item { display: flex }
        .policy__item::before {
            display: block;
            width: 28px;
            color: var(--primaryColor);
            font-family: var(--fontEn);
            font-size: calc(1em + 1.0rem);
            font-weight: 500;
            line-height: 1.2;
            letter-spacing: .05em;
        }
        .policy__item:nth-of-type(1):before { content: "1." }
        .policy__item:nth-of-type(2):before { content: "2." }
        .policy__item:nth-of-type(3):before { content: "3." }
        .policy__item:nth-of-type(4):before { content: "4." }
        .policy__item:nth-of-type(5):before { content: "5." }
        .policy__item:nth-of-type(6):before { content: "6." }
        .policy__item:nth-of-type(7):before { content: "7." }
        .policy__item:nth-of-type(8):before { content: "8." }
        .policy__item:nth-of-type(9):before { content: "9." }
        .policy__item:nth-of-type(10):before { content: "10." }


    .policy__rule {}

        .policy__rule__column { margin-block: 36px }

            .policy__rule__label {
                display: flex;
                margin-bottom: 4px;
            }

                .policy__rule__number {
                    display: block;
                    width: 32px;
                    height: 1em;
                    border-right: 2px solid var(--primaryColor);
                    font-family: var(--fontEn);
                    font-size: 2.4rem;
                    font-weight: 500;
                }

                .policy__rule__title {
                    width: calc(100% - 32px);
                    padding-left: .7em;
                    font-size: 2.0rem;
                    font-weight: 500;
                    line-height: 1.2;
                    letter-spacing: .05em;
                }


            .policy__rule__content { padding-left: 46px }

                .policy__rule__content strong { color: var(--primaryColor) }



    .policy__footer { background-color: var(--fontSubBlack) }

        .policy__footer__inner {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            align-items: center;
            /* column-gap: 32px; */
            row-gap: 24px;
            padding-block: clamp(20px, calc(100vw * (20 / 375)), 40px);
            padding-right: clamp(24px, calc(100vw * (24 / 375)), 86px);
            padding-left: clamp(24px, calc(100vw * (24 / 375)), 68px);
        }

            .policy__footer__column {
                display: flex;
                flex-wrap: wrap;
                justify-content: center;
                align-items: center;
                column-gap: 28px;
                row-gap: 16px;
                white-space: nowrap;
            }

                .policy__footer__tel {
                    font-family: var(--fontEn);
                    font-size: clamp(3.2rem, calc(100vw * (32 / 375)), 4.8rem);
                    font-weight: 500;
                    letter-spacing: .1em;
                }

                .policy__footer__contact { width: 224px }




