@charset "utf-8";

  :root {
    --yh-navy: #112240;
    --yh-yellow: #F8E133;
    --yh-soft-yellow: #EABF4B;
    --yh-profile-bg: #F1E2B0;
    --yh-books-bg: #F1E2B0;
    --yh-black: #000000;
  }
/* ヘッダーフッターへの干渉を防ぐため、背景色はmainのみに付与 */
#page_privacy main {
    background-color: var(--yh-soft-yellow);
    padding-bottom: 0;
    font-family: "Noto Sans JP", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: var(--yh-black);
}

/* -------------------------------------
   Hero Section
------------------------------------- */
#page_privacy .p-privacy_hero {
    background-color: var(--yh-navy);
    padding: 60px 0;
    text-align: left;
}

#page_privacy .p-privacy_hero .l-inner {
    max-width: calc(1200px + 2%);
    margin: 0 auto;
    padding: 0 2%;
    width: 100%;
}

/* 見出しの構造を共通ページ（栄養成分）と統一 */
#page_privacy .p-hero_title em {
    display: block;
    color: var(--yh-yellow);
    font-size: 40px;
    font-weight: 700;
    font-style: normal;
    line-height: 1;
}

/* -------------------------------------
   Content Section
------------------------------------- */
#page_privacy .p-privacy_content {
    background-color: var(--yh-soft-yellow);
    padding: 64px 0 120px;
}

#page_privacy .p-privacy_content .l-inner {
    max-width: calc(1000px + 8%);
    margin: 0 auto;
    padding: 0 4%;
    width: 100%;
}

/* テキスト・見出しのプレーンCSSスタイリング */
#page_privacy .p-privacy__preamble {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 48px;
    font-weight: 500;
}

#page_privacy .p-privacy__section {
    margin-bottom: 48px;
}

#page_privacy .p-privacy__heading {
    font-size: 16px;
    line-height: 1.6;
    font-weight: bold;
    margin-bottom: 24px;
}

#page_privacy .p-privacy__subheading {
    font-size: 16px;
    font-weight: 500;
    margin-bottom: 12px;
}

#page_privacy .p-privacy__text {
    font-size: 16px;
    line-height: 1.6;
    margin-bottom: 24px;
    font-weight: 500;
}
#page_privacy .p-privacy__text.p-privacy__text--indented {
    padding-left: 2.5em;
}

#page_privacy .p-privacy__list {
    list-style: none;
    padding: 0;
    margin: 0 0 16px 0;
    font-size: 16px;
    line-height: 1.8;
}

#page_privacy .p-privacy__list > li {
    margin-bottom: 8px;
}

#page_privacy .p-privacy__list--nested {
    list-style: none;
    padding-left: 2.5em; /* インデント付与 */
}

/* 注釈エリア */
#page_privacy .p-privacy-notes {
    margin-top: 62px;
    font-size: 14px;
    line-height: 1.6;
}

#page_privacy .p-privacy-notes__item {
    margin-bottom: 8px;
}

#page_privacy .p-privacy__numline {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

#page_privacy .p-privacy__numline--nested {
    column-gap: 6px;
}
#page_privacy .p-privacy__numline--nested span {
    line-height: 1.6;
}

#page_privacy .p-privacy__marker {
    white-space: nowrap;
    text-align: right;
    min-width: 2em;
}

#page_privacy .p-privacy__body {
    flex: 1 1 auto;
    min-width: 0;
}

#page_privacy .p-privacy-notes__links {
    margin-top: 48px;
    word-break: break-all;
}

#page_privacy .p-privacy-notes__links a {
    color: var(--yh-black);
    text-decoration: underline;
    display: block;
}
#page_privacy .p-privacy__section--purpose-of-use .p-privacy__list li {
    margin: 0;
    line-height: 2;
}
#page_privacy .p-privacy__section--cookies .p-privacy__list li {
    margin-bottom: 24px;
}

/* -------------------------------------
   Responsive (モバイル向けオーバーライド)
------------------------------------- */
@media screen and (max-width: 767px) {
    #page_privacy .p-privacy_hero {
        padding: 32px 0 38px;
    }

    #page_privacy .p-hero_title em {
        font-size: 30px;
    }

    #page_privacy .p-privacy_content {
        padding: 32px 0 56px;
    }
    #page_privacy .p-privacy_content .l-inner {
        max-width: none;
        padding: 0 20px;
    }
    #page_privacy .p-privacy__preamble {
        margin-bottom: 48px;
    }
    #page_privacy .p-privacy__list {
        font-size: 16px;
    }

    #page_privacy .p-privacy__heading {
        margin-bottom: 16px;
    }
    #page_privacy .p-privacy__text.p-privacy__text--indented {
        padding-left: 36px;
    }

    #page_privacy .p-privacy-notes__links {
        margin-top: 64px;
    }
    #page_privacy .p-privacy__section--cookies .p-privacy__list li {
        margin-bottom: 16px;
    }
}


/*
===== Customization ===========================*/
#page_privacy {
    background-color: #112240;
}

#page_privacy .p-privacy_content {
    padding-bottom: 104px;
}

#page_privacy .p-privacy__list {
  line-height: 1.6;
}

#page_privacy .p-privacy__section--purpose-of-use .p-privacy__list li {
  line-height: 1.6;
}

#page_privacy .p-privacy__section--purpose-of-use .p-privacy__list li + li {
    margin-top: 8px;
}

#page_privacy .p-privacy__list__02 > li {
  margin-bottom: 24px;
}

#page_privacy .p-privacy__list--nested__02 {
    padding-bottom: 4px;
}

#page_privacy .p-privacy__list--nested__02 li {
    margin-top: 4px !important;
}

@media (max-width: 768px) {
    #page_privacy .p-privacy_content {
        padding-bottom: 56px;
    }
    #page_privacy .p-privacy__list__02 > li {
    margin-bottom: 16px;
    }
}

/* footer
--------------------*/
footer .p-contact,
footer .nav_torikumi {
    display: none;
}

footer .footer_inner {
    padding-top: 64px;
}

footer .p-cans ul {
    margin-top: 0;
}

@media (max-width: 768px) {
    footer .footer_inner {
        padding-top: 48px;
    }

    .c-bread_crumbs {
        margin-top: 0;
    }

    footer .p-cans ul {
        margin-top: 32px;
    }
}