
  .rh-t3 * { box-sizing: border-box; font-family: 'Mont', sans-serif; }
  .rh-t3 { box-sizing: border-box !important; width: 100%; background: #ffffff; }
  .rh-t3-wrap { width: 100%; max-width: 1600px; margin: 0 auto; padding: 48px 80px; }
  .rh-t3 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-t3 p { font-size: 16px; font-weight: 600; color: #464646; line-height: 1.75; margin: 0 0 20px 0; padding: 0; display: block; }
  .rh-t3 p em { font-style: italic; color: #262626; }
  .rh-t3-cycle { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 8px; background: #f7f7f7; border-radius: 16px; padding: 28px 24px; margin: 24px 0 24px 0; }
  .rh-t3-cycle-step { font-size: 13px; font-weight: 700; color: #262626; background: #ffffff; border: 1.5px solid #BFD8B3; border-radius: 100px; padding: 10px 20px; }
  .rh-t3-cycle-step.silence { color: #A3A3A3; border-color: #E0E0E0; }
  .rh-t3-cycle-arrow { color: #99AD8F; font-weight: 700; font-size: 16px; }
  .rh-t3-cycle-loop { color: #CB817D; font-weight: 700; font-size: 13px; letter-spacing: 0.04em; text-transform: uppercase; }
  .rh-t3-frame { background: #262626; border-radius: 16px; padding: 32px 36px; margin: 0 0 20px 0; position: relative; overflow: hidden; }
  .rh-t3-frame::after { content: ''; position: absolute; right: -30px; bottom: -30px; width: 130px; height: 130px; border-radius: 50%; background: #BFD8B3; opacity: 0.06; }
  .rh-t3-frame-label { font-size: 11px; font-weight: 600; letter-spacing: 0.1em; text-transform: uppercase; color: #99AD8F; display: block; margin: 0 0 12px 0; position: relative; z-index: 1; }
  .rh-t3-frame-quote { font-size: 20px; font-weight: 700; color: #ffffff; line-height: 1.4; font-style: italic; margin: 0 0 10px 0; position: relative; z-index: 1; }
  .rh-t3-frame-sub { font-size: 14px; font-weight: 600; color: #BFD8B3; margin: 0; position: relative; z-index: 1; }
  .rh-t3-closing { font-size: 16px; font-weight: 600; color: #464646; line-height: 1.75; margin: 0; }
  .rh-t3-closing strong { color: #262626; }
  @media (max-width: 1280px) { .rh-t3-wrap { padding: 40px 60px; } }
  @media (max-width: 600px) {
    .rh-t3-wrap { padding: 32px 20px; }
    .rh-t3 p { font-size: 15px; }
    .rh-t3-cycle { padding: 22px 18px; gap: 6px; }
    .rh-t3-cycle-step { font-size: 12px; padding: 8px 14px; }
    .rh-t3-frame { padding: 24px 22px; border-radius: 14px; }
    .rh-t3-frame-quote { font-size: 17px; }
    .rh-t3-closing { font-size: 15px; }
  }
