.notice-header { display: flex; align-items: center; gap: 16px; padding: 36px 4.2vw 0; }
.notice-logo { color: #ff8500; font-size: clamp(18px, 1.65vw, 25px); font-weight: 700; font-style: italic; letter-spacing: -.04em; white-space: nowrap; }
.notice-logo:hover { color: #ff8500; }
.notice-header .home-search { flex: 1; width: auto; min-width: 0; }
.notice-header .home-search input { font-size: clamp(12px, 1.15vw, 16px); }
.notice-header .notice-clear { background: transparent; color: var(--home-muted); padding: 0 6px; font-size: 20px; }
.notice-header input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; appearance: none; }
.notice-header input[type="search"]::-ms-clear { display: none; }
.notice-nav { display: flex; gap: 16px; white-space: nowrap; }
.notice-nav a { color: var(--home-text); font-size: clamp(11px, 1vw, 14px); padding: 5px 8px; }
.notice-nav a:hover { text-decoration: underline; }
.notice-nav a:focus-visible { outline: 2px solid #ed8900; outline-offset: 2px; }
.notice-header .home-theme-toggle { position: relative; top: auto; right: auto; flex-shrink: 0; }
.notice-header .home-theme-label { width: 58px; height: 30px; }
.notice-header .home-theme-label img { width: 20px; height: 20px; }
.notice-content { width: min(40vw, 560px); margin: 54px 0 90px 14.7vw; color: var(--home-text); font-size: clamp(12px, 1.05vw, 15px); line-height: 1.6; }
.notice-content { padding-bottom: 48px; }
.notice-content h1 { margin: 0 0 5px; color: var(--home-strong); font-size: clamp(21px, 1.7vw, 26px); line-height: 1.3; letter-spacing: -.025em; }
.notice-content .notice-subtitle { margin-bottom: 30px; color: var(--home-muted); font-size: .75em; }
.notice-content h2 { color: var(--home-strong); font-size: 1.15em; margin: 0 0 6px; font-weight: 700; }
.notice-content p { margin: 0 0 16px; font-size: inherit; line-height: inherit; }
.notice-list { list-style: none; margin: 20px 0 8px; padding: 0 18px; }
.notice-list li { position: relative; max-width: 27ch; padding-left: 16px; margin-bottom: 12px; color: var(--home-muted); }
.notice-list li::before { content: '-'; position: absolute; left: 0; color: #ed8900; }
.notice-card { background: var(--home-surface); border: 1px solid var(--home-toggle); border-radius: 9px; padding: 16px; }
.notice-card h3 { color: var(--home-strong); font-size: .95em; font-weight: 600; line-height: 1.6; margin: 0; }
.notice-card .notice-list { margin-top: 16px; margin-bottom: 0; }
.notice-reporting { border-top: 1px solid var(--home-toggle); padding-top: 18px; }
.notice-reporting h2 { font-size: 1em; font-weight: 400; margin-bottom: 14px; }
.notice-reporting blockquote { margin: 0 0 28px; padding: 16px; border-left: 2px solid #ed8900; border-radius: 0 9px 9px 0; background: var(--home-surface); color: var(--home-strong); font-size: .95em; font-style: italic; }
.notice-footer { border-top: 1px solid var(--home-toggle); padding-top: 16px; }
.notice-footer p { color: var(--home-muted); margin-bottom: 4px; }
.notice-footer strong { color: var(--home-strong); }
.notice-privacy { display: block; margin-top: 32px; }
.notice-privacy span { display: block; font-size: .85em; color: var(--home-text); }
.notice-privacy span:first-child { color: #ed8900; font-style: italic; margin-bottom: 3px; }
.notice-privacy:hover { border-color: #ed8900; }
@media (max-width: 900px) {
    .notice-header { gap: 10px; flex-wrap: wrap; padding-top: 24px; }
    .notice-header .home-search { order: 3; flex-basis: 100%; max-width: none; }
    .notice-nav { margin-left: auto; }
    .notice-content { width: min(70vw, 560px); margin-top: 40px; }
}
@media (max-width: 480px) {
    .notice-header { padding-inline: 20px; }
    .notice-nav { gap: 10px; }
    .notice-header .home-theme-label { width: 44px; height: 26px; }
    .notice-header .home-theme-label img { width: 16px; height: 16px; }
    .notice-content { width: auto; margin: 36px 24px 60px; font-size: 13px; }
    .notice-logo { font-size: 18px; }
}

.privacy-content section { padding: 20px 0; border-bottom: 1px solid var(--home-toggle); }
.privacy-content section:first-of-type { padding-top: 0; }
.privacy-content h2 { font-size: 1.1em; font-weight: 600; }
.privacy-content p { margin-bottom: 0; }
.privacy-content p strong { color: var(--home-strong); font-weight: 500; }
.privacy-content .notice-subtitle { margin-bottom: 30px; }
.privacy-content .notice-list { margin: 10px 0 0; }
.privacy-content .notice-list li { max-width: 29ch; }
.privacy-content .privacy-results { margin-top: 30px; border-bottom: 0; padding-bottom: 0; }
.privacy-results #contact-title { margin-top: 18px; }
.privacy-content .notice-privacy { margin-top: 30px; }
