@charset "UTF-8";
.page-terms h1,
.page-terms h2,
.page-terms h3,
.page-terms h4,
.page-terms h5,
.page-terms h6 {
    font-weight: bold;
}

.page-terms p,
.page-terms ul,
.page-terms ol,
.page-terms dl {
    font-size: 16px;
    font-weight: 500;
}

.page-terms .outer {
    padding: 0 30px;
}

.page-terms li {
    list-style: inherit;
    margin-left: 1.4em;
}

.page-terms ul li {
    margin-bottom: 10px;
}

.page-terms ol {
    margin-bottom: 20px;
}

.page-terms ol li {
    margin-bottom: 30px;
}

br {
    display: block;
    content: "";
    margin: 20px 0;
}

hr {
    padding: 0;
    border: 0;
    outline: 0;
}

hr.line {
    background: radial-gradient(#333 10%, transparent 30%) center/ 7px 7px;
    background: -ms-radial-gradient(#333 10%, transparent 30%) center/ 7px 7px;
    content: '';
    display: flex;
    flex: 1 1 auto;
    height: 7px;
}

li::marker {
    font-family: 'Montserrat', sans-serif;
    color: #2ea9e8;
    font-weight: bold;
    margin-bottom: 15px;
}


/***************  privacy_policy プライバシーポリシー  **************/

.page-terms a,
.page-terms .anchor a {
    color: #00a0e9;
    text-decoration: underline;
}

.page-terms .anchor {
    margin-bottom: 50px;
    border-top: 1px solid #a5a5a5;
}

.page-terms h2 {
    font-family: "M PLUS Rounded 1c", sans-serif;
    font-size: clamp(2rem, 1.781rem + 1.1vw, 2.5rem);
    font-weight: 500;
    width: 100%;
    color: #fff;
    background-color: #00a0e9;
    padding: 10px 0;
    text-align: center;
    margin-bottom: 50px;
    letter-spacing: 0.125em;
}

.page-terms .policy {
    margin-bottom: 50px;
}

.page-terms dl {
    display: flex;
    flex-direction: row;
}

.page-terms dl:nth-of-type(odd) {
    background-color: #f8f8f8;
}

.page-terms dt {
    width: 30%;
    padding: 20px;
    font-weight: bold;
    font-family: 'Montserrat', 'Zen Kaku Gothic New', sans-serif;
    border-right: 1px dashed #e1e1e1;
}

.page-terms dd {
    width: 70%;
    padding: 20px;
}

.page-terms h3 {
    margin: 15px 0;
    font-size: 16px;
}

.page-terms .number {
    display: inline-block;
    text-indent: -1.1em;
    padding-left: 1em;
}

.page-terms ul li {
    list-style: disc;
}

.page-terms .cancellation_fee li {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 10px;
    margin-left: 0;
}

.page-terms .cancellation_fee span {
    text-align: end;
}

.page-terms .contact br:not(:first-child) {
    margin: 0;
}

.page-terms .inner .text {
    font-size: 12px;
    margin-bottom: 30px;
    text-align: end;
}


/********************* sp レスポンシブ  ***********************/

@media screen and (max-width: 767px) {
    .page-terms h3 {
        font-size: 14px;
    }
    .page-terms p,
    .page-terms ul,
    .page-terms ol,
    .page-terms dd {
        font-size: 13px;
        font-weight: 400;
    }
    .page-terms .outer {
        padding: 0;
    }
    .page-terms li {
        list-style: inherit;
        margin-left: 2.4em;
    }
    .page-terms dl {
        flex-direction: column;
    }
    .page-terms dt {
        font-size: 16px;
        font-weight: 700;
        width: 100%;
        border-right: none;
    }
    .page-terms dd {
        width: 100%;
        padding: 0 20px 20px;
    }
}