
  .rh-m12 * { box-sizing: border-box; font-family: 'Mont', sans-serif; }
  .rh-m12 { box-sizing: border-box !important; width: 100%; background: #ffffff; }
  .rh-m12-wrap { width: 100%; max-width: 1600px; margin: 0 auto; padding: 48px 80px 48px; }
  .rh-m12 h2 { font-size: clamp(20px, 2.4vw, 28px); font-weight: 600; color: #262626; line-height: 1.2; border-top: 3px solid #BFD8B3; padding: 20px 0 0 0; margin: 0 0 28px 0; }
  .rh-m12-list { display: flex; flex-direction: column; gap: 10px; }
  .rh-m12-item { background: #f7f7f7; border-radius: 14px; overflow: hidden; }
  .rh-m12-q { font-size: 15px; font-weight: 600; color: #262626; padding: 18px 22px; display: flex; justify-content: space-between; align-items: flex-start; gap: 14px; cursor: pointer; user-select: none; }
  .rh-m12-q::after { content: '+'; font-size: 20px; color: #99AD8F; flex-shrink: 0; line-height: 1; transition: transform 0.2s; }
  .rh-m12-item.open .rh-m12-q::after { transform: rotate(45deg); }
  .rh-m12-a { font-size: 14px; font-weight: 600; color: #585858; line-height: 1.7; padding: 0 22px; max-height: 0; overflow: hidden; display: block; transition: max-height 0.35s ease, padding 0.2s ease; }
  .rh-m12-item.open .rh-m12-a { max-height: 700px; padding: 0 22px 20px; border-top: 1px solid #eeeeee; padding-top: 16px; }
  .rh-m12-a strong { color: #262626; }
  @media (max-width: 1280px) { .rh-m12-wrap { padding: 40px 60px 40px; } }
  @media (max-width: 600px) {
    .rh-m12-wrap { padding: 32px 20px 32px; }
    .rh-m12-q { font-size: 14px; padding: 16px 18px; }
    .rh-m12-item.open .rh-m12-a { padding: 14px 18px 18px; }
    .rh-m12-a { padding: 0 18px; }
  }
