@charset "utf-8";

/* ---------------------------
    共通
----------------------------- */
.page__head {
    background-image: url("../images/faq/bgMain.webp");
}

@media screen and (max-width: 750px) {
    .page__head {
        background-image: url("../images/faq/bgMainSp.webp");
    }
}

/* ---------------------------
    メインコンテンツ
----------------------------- */
.faq {
    margin-top: 36%;
    background: var(--color-main);
}

.faq__list {
    display: flex;
    flex-direction: column;
    gap: 5.2rem;
}

.faq__question {
    position: relative;
    display: flex;
    align-items: baseline;
    font-size: 1.7rem;
    font-weight: 400;
    letter-spacing: 0.136rem;
    padding-bottom: 1.65rem;
    padding-right: 3.6rem;
    border-bottom: 1px solid var(--color-black);
    cursor: pointer;
    transition: .5s;
}

.faq__question:hover {
    opacity: 0.5;
}

.faq__question::after {
    content: "";
    position: absolute;
    top: 0.2em;
    right: 0;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='22' viewBox='0 0 21 22' fill='none'%3E%3Cpath d='M0 11.5H21' stroke='%23121212' stroke-width='1'/%3E%3Cpath d='M11 21.5L11 1' stroke='%23121212' stroke-width='1'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-size: contain;
    width: 2.1rem;
    height: 2.2rem;
    display: inline-block;
}

.faq__question.is-active::after {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='2' viewBox='0 0 21 2' fill='none'%3E%3Cpath d='M0 1H21' stroke='%23121212' stroke-width='1'/%3E%3C/svg%3E");
    top: 0.82em;
}

.q-text {
    width: fit-content;
    color: var(--color-text);
    font-size: 2.1rem;
    display: flex;
    gap: 0.6rem;
}

.q-text::after {
    content: ".";
    font-size: 2.3rem;
}

.q-contents {
    flex: 1;
    margin-left: 0.6rem;
}

.faq__answer {
    padding-top: 1.65rem;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 2.57;
    letter-spacing: 0.07rem;
}

.faq__message {
    margin-top: 15rem;
    background: var(--color-black);
    display: flex;
    gap: 14.1rem;
    padding: 7rem 10.4rem;
}

.faq__message-contents {
    color: var(--color-white);

}

.faq__message-contents .large {
    font-size: 1.7rem;
    font-weight: 400;
    line-height: 1.4;
    letter-spacing: 0.136rem;
}

.faq__message-contents .small {
    margin-top: 1.2rem;
    font-size: 1.3rem;
    line-height: 1.4;
    font-weight: 400;
    letter-spacing: 0.104rem;
}

.faq__message-link {
    width: fit-content;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 2.2rem;
    font-weight: 400;
    padding-bottom: 1.9rem;
    color: var(--color-white);
    gap: 8.5rem;
    border-bottom: 1px solid var(--color-white);
    transition: .5s;
}

.faq__message-link:hover {
    opacity: 0.5;
}

.faq__message-link span {
    text-wrap: nowrap;
}

@media screen and (max-width: 1024px) {
    .faq__message {
        gap: 8rem;
        padding: 8rem 6rem;
    }
}

@media screen and (max-width: 750px) {
    .faq {
        margin-top: 100lvh;
    }
    .faq__question {
        font-size: 1.6rem;
        letter-spacing: 0.136rem;
        padding-bottom: 1.65rem;
        padding-right: 3rem;
        transition: .5s;
        line-height: 1.4;
    }

    .faq__answer {
        padding-top: 1.5rem;
        line-height: 2.3;
    }

    .faq__message {
        margin-top: 5rem;
        flex-direction: column;
        gap: 3rem;
        padding: 4rem 3.5rem;
        align-items: center;
    }

    .faq__message-contents .large {
        font-size: 1.6rem;
        letter-spacing: 0.128rem;
    }

    .faq__message-contents .small {
        margin-top: 1.6rem;
    }
}