@charset "utf-8";

/* ------------------------------
 lead（タイトル下のカード。共通の page-lead-box を上書き）
------------------------------ */

.legal-lead {
    padding: 6rem 4rem;
    text-align: left;
}

/* ------------------------------
 legal（本文：見出し＋段落・リスト。利用規約・プライバシーポリシー・特定商取引法に基づく表記で共通）
------------------------------ */

.legal {
    padding: 8rem 0;
    text-align: left;
}

.legal-group + .legal-group {
    margin-top: 4rem;
}

.legal-tokusho .legal-group + .legal-group {
    margin-top: 3rem;
}

.legal-title {
    display: inline-block;
    padding-bottom: .4rem;
    margin-bottom: 2rem;
    vertical-align: top;
    color: var(--c-main);
    font-size: 2.4rem;
    letter-spacing: .05em;
    border-bottom: 2px solid var(--c-main);
}

.legal-body {
    font-weight: 400;
}

.legal-body * {
    letter-spacing: .05em; /* base.css が全要素に letter-spacing: 0 を当てているので、継承ではなく各要素に指定する */
}

.legal-tokusho .legal-body {
    font-size: 1.8rem;
}

.legal-body > * + *,
.legal-subgroup > * + * {
    margin-top: 1rem;
}

.legal-subtitle {
    font-size: 1.8rem;
}

.legal-strong {
    font-weight: 700;
}

.legal-list li,
.legal-order li {
    position: relative;
    padding-left: 1.7rem; /* 「●」の幅 */
}

.legal-order li {
    padding-left: 3.3rem; /* 「１．」の幅 */
}

.legal-list li + li,
.legal-order li + li {
    margin-top: 1rem;
}

.legal-list li:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "●";
}

.legal-order-num {
    position: absolute;
    top: 0;
    left: 0;
}

.legal-body a {
    color: var(--c-link);
    text-decoration: underline;
    word-break: break-all;
}

/* ------ max-width:767px ------ */
@media (max-width:767px) {
    /* lead */
    .legal-lead {
        padding: 2rem;
    }

    /* legal */
    .legal-group + .legal-group {
        margin-top: 2rem;
    }

    .legal-title {
        display: block;
        font-size: 1.8rem;
    }
}
