/* ======================================================
   KENNDO — page-privacy.css
   ====================================================== */

.policy { max-width: 820px; margin: 0 auto; }

.policy-item { padding: 32px 0; border-bottom: 1px dashed var(--line); }
.policy-item:first-child { padding-top: 0; }
.policy-item:last-of-type { border-bottom: none; }

/* h2.sec は48pxの下マージンを持つ見出し。条文見出しには重いので専用に定義する。 */
.policy-item h2 {
  font-size: 16px; font-weight: 700; color: var(--navy);
  line-height: 1.6; margin-bottom: 14px;
  padding-left: 14px; border-left: 4px solid var(--accent);
}
.policy-item p { font-size: 14px; color: #48535f; line-height: 2; }
.policy-item p + p { margin-top: 14px; }

.policy-list { margin: 14px 0; }
.policy-list li {
  position: relative;
  font-size: 14px; color: #48535f; line-height: 1.9;
  padding: 6px 0 6px 22px;
}
.policy-list li::before {
  content: ''; position: absolute; left: 4px; top: 15px;
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--accent);
}
.policy-list li b { color: var(--navy); }

.policy-contact {
  background: var(--bg-alt);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 20px 24px; margin-top: 16px;
}
.policy-contact p { font-size: 14px; line-height: 1.9; }
.policy-contact p + p { margin-top: 6px; }
.policy-contact a {
  color: var(--accent-text); font-weight: 700;
  text-decoration: underline; text-underline-offset: 2px;
}
.policy-contact a:hover { color: var(--accent-darker); }

@media (max-width: 600px) {
  .policy-item { padding: 26px 0; }
  .policy-contact { padding: 16px 18px; }
}
