@charset "UTF-8";

.container {
    padding-inline: 0;
}

.privacy-policy-hero__content {
    padding-block: 80px 60px;
}

.privacy-policy-hero__title {
    margin-bottom: 0;
}

.privacy-policy {
    background-color: #F7F7F7;
    padding: 80px 0 ;
}

.privacy-policy__inner {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

.privacy-policy__content {
    border-radius: 8px;
}

.privacy-policy__title {
    font-size: var(--h3-font-size);
    font-weight: bold;
    color: #202020;
    margin-bottom: 12px;
    padding-bottom: 12px;
    border-bottom: 1px solid #D6D6D6;
}

.privacy-policy__text {
    font-size: 1rem;
    line-height: var(--main-text-line-height);
    font-weight: 500;
    margin-bottom: 15px;
}

.privacy-policy__list {
    margin-left: 20px;
    margin-bottom: 20px;
    list-style-type: decimal;
}

.privacy-policy__item {
    font-size: 1rem;
    line-height: var(--main-text-line-height);
    font-weight: 500;
    position: relative;
}

.privacy-policy__sub-list {
    margin-bottom: 20px;
}

.privacy-policy__sub-list.katakana {
    list-style-type: katakana;
}
.privacy-policy__sub-list.katakana {
    list-style-type: none;
    counter-reset: katakana-counter; 
}

.privacy-policy__sub-list.katakana .privacy-policy__sub-item {
    position: relative;
    padding-left: 1.5em; 
    margin-bottom: 8px;
}

.privacy-policy__sub-list.katakana .privacy-policy__sub-item::before {
    position: absolute;
    left: 0;
    content: counter(katakana-counter, katakana) "．";
    counter-increment: katakana-counter; 
}
.privacy-policy__sub-item {
    font-size: 1rem;
    line-height: 1.8;
    margin-bottom: 5px;
    position: relative;
}

.privacy-policy__link {
    color: #0099FF;
    text-decoration: underline;
}

.privacy-policy__contact {
    margin-top: 40px;
    padding: 20px;
    border-radius: 6px;
}

.privacy-policy__contact-title {
    font-size: 1rem;
    font-weight: 500;
    color: #202020;
}

.privacy-policy__contact-info {
    font-size: 1rem;
    line-height: var(--main-text-line-height);
    font-weight: 500;
}
.privacy-policy02 {
    margin-top: 40px;
}
@media screen and (max-width: 768px) {
    .container {
        padding-inline: max(20px, 5%);
    }

    .privacy-policy-hero__breadcrumb {
        top: 92px;
    }

    .privacy-policy-hero__content {
        padding-block: 150px 60px;
    }

    .privacy-policy {
        padding: 40px 0;
    }

    .privacy-policy__title {
        font-size: var(--h3-font-size-sp);
    }

    .privacy-policy__text,
    .privacy-policy__item,
    .privacy-policy__sub-item,
    .privacy-policy__contact-info {
        font-size: 1rem;
    }
    .privacy-policy__sub-list, 
    .privacy-policy__sub-item {
        margin-bottom: 0;
    }

    .privacy-policy__item {
        margin-left: 1em;
    }

    .privacy-policy__contact-title {
        font-size: 1rem;
    }

    .privacy-policy__list {
        margin-left: 15px;
    }

    .privacy-policy__contact {
        padding: 0;
    }
}
:root {
    /* font family */
    --font-family-main: "Zen Kaku Gothic New", sans-serif;
    --font-family-accent: "Jost", sans-serif;
    --font-family-sub: "Noto Sans JP", sans-serif;
    /* color */
    --color-main-text: #202020;
    --color-sub-text: #ffffff;
    --color-accent-1: #E62F2B;
    --color-title-gradient: linear-gradient(45deg, #DA3E3B 0%, #FF7341 50%, #FBA681 100%);
    /* font size */
    --h1-font-size: 3rem;
    --h1-font-size-sp: 2.3rem;
    --h1-font-size-en: 1.1rem;
    --h1-font-size-en-sp: 0.8rem;
    --h2-font-size: 2.5rem;
    --h2-font-size-sp: 1.8rem;
    --h2-font-size-en: 1.3rem;
    --h2-font-size-en-sp: 0.9rem;
    --h3-font-size: 1.8rem;
    --h3-font-size-sp: 1.4rem;
    --h3-font-size-en: 0.9rem;
    --main-text-font-size: 1rem;
    --small-text-font-size: 0.9rem;
    /* height */
    --main-text-line-height: 1.75;
    /* gradient */
    --vivid01: linear-gradient(45deg, #FB3F3C 0%, #FF7745 50%, #FBA681 100%);
    --orange03: linear-gradient(to right, #F57504, #FBA55A);
}

*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

body {
    font-family: var(--font-family-main);
    font-size: 100%;
    color: var(--color-main-text);
}

.main {
    max-width: 100%;
}