/* ==================================================
   Information Security Policy
   /information-security-policy/
================================================== */

.information-security-policy-page {
    width: 100%;
    margin: 0;
    padding: 0;
    background: #fff;
    color: #111;
}

.information-security-policy-page,
.information-security-policy-page *,
.information-security-policy-page *::before,
.information-security-policy-page *::after {
    box-sizing: border-box;
}

.information-security-policy-container {
    width: min(1180px, calc(100% - 80px));
    margin: 0 auto;
}

.information-security-policy-container--content {
    max-width: 960px;
}


/* ==================================================
   Hero
================================================== */

.information-security-policy-hero {
    padding: 180px 0 110px;
}

.information-security-policy-title {
    margin: 0;
    color: inherit;
    font-size: clamp(36px, 4.8vw, 68px);
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: 0.005em;
}

.information-security-policy-title-ja {
    margin: 18px 0 0;
    color: inherit;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.7;
    letter-spacing: 0.08em;
}


/* ==================================================
   Content
================================================== */

.information-security-policy-content {
    padding: 0 0 160px;
}

.information-security-policy-lead {
    margin: 0 0 96px;
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.03em;
}

.information-security-policy-lead p {
    margin: 0;
}


/* ==================================================
   Sections
================================================== */

.information-security-policy-section {
    padding: 52px 0 60px;
    border-top: 1px solid #d9d9d9;
}

.information-security-policy-section--last {
    border-bottom: 1px solid #d9d9d9;
}

.information-security-policy-heading {
    margin: 0 0 30px;
    color: inherit;
    font-size: 21px;
    font-weight: 600;
    line-height: 1.55;
    letter-spacing: 0.02em;
}

.information-security-policy-body {
    font-size: 15px;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 0.025em;
}

.information-security-policy-body p {
    margin: 0 0 24px;
}

.information-security-policy-body p:last-child {
    margin-bottom: 0;
}

.information-security-policy-body ul,
.information-security-policy-body ol {
    margin: 22px 0 26px;
    padding-left: 1.55em;
}

.information-security-policy-body ul {
    list-style: disc;
}

.information-security-policy-body ol {
    list-style: decimal;
}

.information-security-policy-body li {
    margin: 0 0 9px;
    padding-left: 0.2em;
}

.information-security-policy-body li:last-child {
    margin-bottom: 0;
}


/* ==================================================
   Revision / signature
================================================== */

.information-security-policy-revision {
    margin-top: 56px;
    font-size: 13px;
    line-height: 1.9;
    letter-spacing: 0.02em;
    text-align: right;
}

.information-security-policy-revision p {
    margin: 0;
}

.information-security-policy-signature {
    margin-top: 18px;
}


/* ==================================================
   Utility
================================================== */

.information-security-policy-pc-only {
    display: inline;
}


/* ==================================================
   Tablet
================================================== */

@media screen and (max-width: 1024px) {

    .information-security-policy-container {
        width: min(1180px, calc(100% - 60px));
    }

    .information-security-policy-hero {
        padding: 150px 0 90px;
    }

    .information-security-policy-content {
        padding-bottom: 130px;
    }

    .information-security-policy-lead {
        margin-bottom: 80px;
    }
}


/* ==================================================
   Mobile
================================================== */

@media screen and (max-width: 767px) {

    .information-security-policy-container {
        width: calc(100% - 40px);
    }

    .information-security-policy-hero {
        padding: 120px 0 66px;
    }

    .information-security-policy-title {
        font-size: clamp(31px, 9vw, 44px);
        line-height: 1.1;
        overflow-wrap: anywhere;
    }

    .information-security-policy-title-ja {
        margin-top: 14px;
        font-size: 12px;
        line-height: 1.6;
    }

    .information-security-policy-content {
        padding-bottom: 100px;
    }

    .information-security-policy-lead {
        margin-bottom: 62px;
        font-size: 14px;
        line-height: 1.95;
    }

    .information-security-policy-section {
        padding: 38px 0 44px;
    }

    .information-security-policy-heading {
        margin-bottom: 24px;
        font-size: 18px;
        line-height: 1.55;
    }

    .information-security-policy-body {
        font-size: 14px;
        line-height: 1.95;
    }

    .information-security-policy-body p {
        margin-bottom: 20px;
    }

    .information-security-policy-body ul,
    .information-security-policy-body ol {
        margin: 18px 0 22px;
        padding-left: 1.45em;
    }

    .information-security-policy-body li {
        margin-bottom: 8px;
    }

    .information-security-policy-revision {
        margin-top: 46px;
        font-size: 12px;
        text-align: left;
    }

    .information-security-policy-pc-only {
        display: none;
    }
}