/* ROBOT_REPAIR_2026_11_02 ロボットの修理ページ・フィジカルAI修理の窓口 */
.rr-page { padding: 24px 0 56px; }
.rr-page h1 { font-size: 30px; font-weight: 700; line-height: 1.3; margin: 0 0 20px; color: #111827; }
.rr-hub { margin: 24px 0 32px; color: #1f2937; line-height: 1.8; }
.rr-hub h2 { font-size: 21px; font-weight: 700; margin: 32px 0 12px; color: #111827; }
.rr-hub h3 { font-size: 15px; font-weight: 700; margin: 0 0 8px; color: #374151; }
.rr-box { background: #f3f6fb; border: 1px solid #dbe3ef; border-radius: 12px; padding: 20px 22px; }
.rr-box h2 { margin-top: 0; }
.rr-lead p { line-height: 1.8; }
.rr-btn { display: inline-block; background: #1d4ed8; color: #fff !important; font-weight: 700; padding: 11px 22px; border-radius: 8px; text-decoration: none; }
.rr-btn:hover { background: #1e40af; }
.rr-link { color: #1d4ed8; font-weight: 600; }
.rr-note { color: #4b5563; font-size: 14px; line-height: 1.7; margin: 8px 0; }
.rr-table-wrap { overflow-x: auto; margin: 10px 0; }
.rr-table { width: 100%; min-width: 480px; border-collapse: collapse; font-size: 14px; line-height: 1.6; }
.rr-table th, .rr-table td { border: 1px solid #e5e7eb; padding: 9px 12px; text-align: left; vertical-align: top; }
.rr-table th { background: #f9fafb; font-weight: 700; }
.rr-group { margin: 14px 0; }
.rr-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.rr-chip { display: inline-block; border: 1px solid #d1d5db; border-radius: 999px; padding: 6px 14px; font-size: 14px; color: #1f2937; text-decoration: none; background: #fff; }
.rr-chip:hover { border-color: #1d4ed8; color: #1d4ed8; }
.rr-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); gap: 12px; }
.rr-card { display: flex; flex-direction: column; gap: 4px; border: 1px solid #e5e7eb; border-radius: 12px; padding: 16px; text-decoration: none; color: #1f2937; background: #fff; }
.rr-card:hover { border-color: #1d4ed8; }
.rr-card span { font-size: 13px; color: #4b5563; }
.rr-flow { padding-left: 22px; }
.rr-flow li { margin: 6px 0; }
.rr-faq { border-bottom: 1px solid #e5e7eb; padding: 10px 0; }
.rr-faq summary { font-weight: 600; cursor: pointer; }
.rr-faq p { margin: 8px 0 0; color: #374151; }
.rr-banner { display: block; background: #f3f6fb; border: 1px solid #dbe3ef; border-radius: 10px; padding: 12px 16px; margin: 0 0 18px; color: #1f2937; text-decoration: none; }
.rr-banner:hover { border-color: #1d4ed8; }
@media (max-width: 640px) { .rr-page h1 { font-size: 24px; } .rr-hub h2 { font-size: 18px; } }
