@charset "utf-8";

.privacy-page {width: 100%; max-width: 900px; margin: 7vw auto 5vw;}

.privacy-page__lead {text-align: center; font-size: clamp(1.125rem, 1.5vw, 1.375rem); font-weight: 500; color: #1C1C1C; margin: 0 0 30px;}
.privacy-page__hospital {font-weight: 700;}
.privacy-page__highlight {color: #243359;}

.privacy-box {width: 90%; margin: auto; background: #f8f9fa; border: 1px solid #e9ecef; border-radius: 12px; padding: clamp(20px, 3vw, 30px); margin-bottom: 30px;}
.privacy-box:last-child {margin-bottom: 0;}

.privacy-box__title {font-size: clamp(1.05rem, 1.4vw, 1.125rem); font-weight: 700; color: #333; margin: 0 0 20px; padding-bottom: 15px; border-bottom: 2px solid #333;}
.privacy-box__title--primary {color: #243359; border-bottom-color: #243359;}

.privacy-box__body {font-size: clamp(0.9rem, 1.1vw, 0.9375rem); line-height: 1.8; color: #333;}

.privacy-box__text {margin: 0 0 15px;}
.privacy-box__text--muted {color: #666; margin-bottom: 20px;}
.privacy-box__text--emphasis {font-weight: 500;}

.privacy-box__footnote {color: #666; font-size: 0.875rem; margin: 15px 0 0;}

.privacy-table {width: 100%; border-collapse: collapse; margin-bottom: 15px;}
.privacy-table:last-child {margin-bottom: 0;}
.privacy-table th,
.privacy-table td {padding: 12px 15px; border: 1px solid #dee2e6; text-align: left; vertical-align: top;}
.privacy-table th {width: 30%; font-weight: 600; background: #e9ecef;}
.privacy-table tr:nth-child(even) th {background: #f8f9fa;}
.privacy-table__note {display: inline-block; margin-top: 4px; font-size: 0.8125rem; color: #888;}

@media screen and (max-width: 768px) {
  .privacy-box {padding: 18px;}
  .privacy-table th,
  .privacy-table td {padding: 10px; font-size: 0.8125rem;}
  .privacy-table th {width: 36%;}
}
