
* { box-sizing: border-box; font-family: 'Mont', 'Montserrat', sans-serif; margin: 0; padding: 0; }
.rh-cp-faq-ex { width: 100%; background: #ffffff; }
.rh-cp-faq-ex-wrap { max-width: 1600px; margin: 0 auto; padding: 56px 80px 72px; }
.rh-cp-faq-ex-wrap 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 24px 0; }
.rh-cp-faq-ex-list { display: flex; flex-direction: column; gap: 10px; margin: 28px 0 0; }
.rh-cp-faq-ex-item { background: #f7f7f7; border-radius: 14px; overflow: hidden; }
.rh-cp-faq-ex-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-cp-faq-ex-q::after { content: '+'; font-size: 20px; color: #99AD8F; flex-shrink: 0; line-height: 1; transition: transform 0.2s; }
.rh-cp-faq-ex-item.open .rh-cp-faq-ex-q::after { transform: rotate(45deg); }
.rh-cp-faq-ex-a { font-size: 14px; font-weight: 600; color: #585858; line-height: 1.7; padding: 0 22px; border-top: 1px solid #eeeeee; max-height: 0; overflow: hidden; display: block; transition: max-height 0.35s ease, padding 0.2s ease; }
.rh-cp-faq-ex-item.open .rh-cp-faq-ex-a { max-height: 600px; padding: 16px 22px 18px; border-top: 1px solid #eeeeee; }
.rh-cp-faq-ex-item:not(.open) .rh-cp-faq-ex-a { border-top: none; }
@media (max-width: 960px) { .rh-cp-faq-ex-wrap { padding-left: 40px; padding-right: 40px; } }
@media (max-width: 600px) { .rh-cp-faq-ex-wrap { padding: 40px 20px 56px; } .rh-cp-faq-ex-q { font-size: 14px; } }
