:root { --brand: #0ABAB5; --brand-dark: #089e99; }
body { background: #f8f9fa; }
.navbar { background: #fff; border-bottom: 1px solid #e9ecef; }
.brand-text { font-family: Georgia, serif; font-weight: 700; font-size: 20px; }


.pricing-toggle { background: #f0f0f0; border-radius: 99px; padding: 4px; display: inline-flex; }
.pricing-toggle button { border: none; background: transparent; padding: 6px 20px; border-radius: 99px; font-size: 14px; font-weight: 500; cursor: pointer; transition: all .2s; }
.pricing-toggle button.active { background: #fff; box-shadow: 0 1px 4px rgba(0,0,0,.15); color: #0ABAB5; }
.badge-discount { background: #0ABAB5; color: #fff; font-size: 11px; padding: 2px 8px; border-radius: 99px; margin-left: 6px; }
.plan-card { border-radius: 16px; border: 1.5px solid #e9ecef; background: #fff; padding: 32px 28px; height: 100%; transition: box-shadow .2s; position: relative; }
.plan-card:hover { box-shadow: 0 8px 32px rgba(0,0,0,.08); }
.plan-card.recommended { border-color: #0ABAB5; border-width: 2px; }
.recommended-badge { position: absolute; top: -14px; left: 50%; transform: translateX(-50%); background: #0ABAB5; color: #fff; font-size: 12px; font-weight: 600; padding: 3px 16px; border-radius: 99px; white-space: nowrap; }
.plan-name { font-size: 18px; font-weight: 700; margin-bottom: 4px; }
.plan-desc { font-size: 13px; color: #888; margin-bottom: 20px; }
.plan-price { font-size: 42px; font-weight: 700; line-height: 1; color: #555; }
.plan-price .price-unit { font-size: 16px; font-weight: 400; color: #888; }
.plan-price-sub { font-size: 12px; color: #aaa; margin-top: 4px; margin-bottom: 24px; }
.feature-list { list-style: none; padding: 0; margin: 0 0 24px; }
.feature-list li { font-size: 13px; padding: 5px 0; border-bottom: 1px solid #f0f0f0; display: flex; align-items: center; gap: 8px; }
.feature-list li:last-child { border-bottom: none; }
.feature-list li .bi-check-lg { color: #0ABAB5; font-size: 15px; flex-shrink: 0; }
.feature-list li .bi-x-lg { color: #ccc; font-size: 13px; flex-shrink: 0; }
.btn-plan { width: 100%; padding: 10px; border-radius: 8px; font-weight: 600; font-size: 14px; border: none; cursor: pointer; text-decoration: none; display: block; text-align: center; }
.btn-plan-primary { background: #0ABAB5; color: #fff; }
.btn-plan-primary:hover { background: #089e99; color: #fff; }
.btn-plan-outline { background: #fff; border: 1.5px solid currentColor; }
.enterprise-card { background: linear-gradient(135deg, #1a1a2e, #16213e); border-radius: 16px; padding: 40px; color: #fff; }
.enterprise-card h3 { font-size: 24px; font-weight: 700; }
.badge-coming { background: #ffc107; color: #333; font-size: 11px; padding: 2px 10px; border-radius: 99px; font-weight: 600; }
.faq-item { background: #fff; border-radius: 10px; padding: 20px 24px; margin-bottom: 12px; }
.faq-q { font-weight: 600; font-size: 14px; margin-bottom: 8px; }
.faq-a { font-size: 13px; color: #666; line-height: 1.7; }
.features-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.features-table th { background: #f8f9fa; padding: 12px 16px; text-align: center; font-weight: 600; border: 1px solid #e9ecef; }
.features-table td { padding: 10px 16px; border: 1px solid #e9ecef; text-align: center; }
.features-table td:first-child { text-align: left; font-weight: 500; }
.features-table tr:hover { background: #f8f9fa; }
.check { color: #0ABAB5; font-size: 16px; }
.cross { color: #ddd; font-size: 14px; }
.plan-th-free { color: #6c757d; }
.plan-th-start { color: #0ABAB5; }
.plan-th-standard { color: #185FA5; }
.plan-th-pro { color: #B8860B; }

.lp-footer 



/* モバイル対応 */
@media (max-width: 991px) {
    .plan-desc { white-space: normal; min-height: auto; }
    .feature-list li { font-size: 12px; }
}
@media (max-width: 767px) {
    .plan-card { padding: 24px 16px; }
    .plan-name { font-size: 16px; }
    .plan-price { font-size: 36px; }
}











/* 追加クラス */
.pricing-title { font-size:36px; }
.btn-plan-gray { color:#6c757d; border-color:#6c757d; }
.btn-plan-start { color:#0ABAB5; border-color:#0ABAB5; }
.btn-plan-pro { color:#B8860B; border-color:#B8860B; }
.plan-name-start { color:#0ABAB5; }
.plan-name-standard { color:#185FA5; }
.plan-name-pro { color:#B8860B; }
.pricing-note { font-size:11px; margin-top:-16px; margin-bottom:40px; }
.feature-table-title { font-size:24px; }
.th-feature { width:30%; text-align:left; }
.td-category { background:#f8f9fa; font-weight:600; font-size:12px; color:#888; padding:8px 16px; }
.enterprise-text { color:#aaa; font-size:14px; line-height:1.8; }
.enterprise-list { color:#ccc; font-size:13px; list-style:none; padding:0; margin:0; }
.enterprise-contact-text { color:#aaa; font-size:13px; margin-bottom:12px; }
.enterprise-btn { background:rgba(255,255,255,.15); border:1px solid rgba(255,255,255,.3); }
.faq-title { font-size:24px; }

/* billing追加 */
.billing-container { max-width:1100px; }
.billing-alert { background:#f0fafa; border:1px solid #0ABAB5; border-radius:10px; padding:16px 20px; }
.billing-alert-icon { font-size:24px; }
.billing-alert-title { font-size:14px; font-weight:600; color:#0ABAB5; margin-bottom:2px; }
.billing-alert-text { font-size:13px; color:#555; }
.billing-alert-link { color:#0ABAB5; font-weight:600; }
.plan-badge-free { background:#6c757d; }
.plan-badge-start { background:#20c997; }
.plan-badge-standard { background:#0d6efd; }
.plan-badge-pro { background:#cd7f32; }
.plan-name-free { color:#6c757d; }

/* billing */
.main-content:has(.billing-container) { padding: 0 !important; }
.plan-badge { display:inline-block; color:#fff; font-size:11px; font-weight:700; border-radius:4px; padding:2px 10px; margin-bottom:6px; }
