.page-hero {
  background: var(--cream);
}
.page-hero::before { display: none; }
.page-hero h1 { color: var(--navy); font-family: 'Noto Serif JP', serif; font-weight: 300; letter-spacing: .25em; }
.page-hero-tag { font-family: 'Noto Sans JP', sans-serif; }

.policy-wrap {
  max-width: none;
  margin: 0;
  padding: 56px 20% 96px;
}

@media (max-width: 1300px) {
  .policy-wrap { padding-left: 10%; padding-right: 10%; }
}

@media (max-width: 768px) {
  .policy-wrap { padding-left: 6%; padding-right: 6%; }
}

.policy-lead {
  font-size: 14px;
  color: var(--text-mid);
  line-height: 1.9;
  margin-bottom: 40px;
}

.policy-section { margin-bottom: 36px; }

.policy-section h2 {
  font-family: 'Noto Serif JP', serif;
  font-size: 18px;
  font-weight: 700;
  color: var(--navy);
  padding-bottom: 10px;
  border-bottom: 1px solid var(--border);
  margin-bottom: 14px;
}

.policy-section h3 {
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 14px;
  font-weight: 700;
  color: var(--navy);
  margin-top: 18px;
  margin-bottom: 6px;
}

.policy-section p,
.policy-section li {
  font-size: 14px;
  color: var(--text-mid);
  line-height: 1.9;
}

.policy-section ul {
  padding-left: 1.4em;
  margin-top: 8px;
}

.policy-section li { margin-bottom: 4px; }

.policy-updated {
  font-size: 13px;
  color: var(--text-light);
  text-align: right;
  margin-top: 48px;
}
