/* ============================================
   LIGHT THEME OVERRIDE
   Loaded last to override dark styles
   ============================================ */

/* ===== GLOBAL ===== */
html, body {
  background: #FFFFFF !important;
}

/* ===== BUTTONS/BADGES - KEEP WHITE TEXT ===== */
body .vo-btn-primary,
.vo-btn-primary,
body .vo-hero-badge,
.vo-hero-badge,
body .vo-section-badge,
.vo-section-badge,
body .vo-rank-badge,
.vo-rank-badge,
body .mega-cta,
.mega-cta,
body .mega-featured-btn,
.mega-featured-btn,
body .od-hero-cta,
.od-hero-cta,
body .od-sidebar-cta,
.od-sidebar-cta,
body .vo-search-btn,
.vo-search-btn,
body .vo-cta-section h2,
.vo-cta-section h2,
body .vo-cta-content h2,
.vo-cta-content h2,
body .vo-filter-btn.active,
.vo-filter-btn.active,
body .vo-filter-btn:hover,
.vo-filter-btn:hover {
  color: #FFFFFF !important;
}

/* ===== WHITE TEXT FIX (Light Background) ===== */
body .vo-hero-title,
.vo-hero-title {
  color: #111827 !important;
}

body .vo-stat-number,
.vo-stat-number {
  color: #10B981 !important;
}

body .vo-section-title,
.vo-section-title,
body .vo-section-dark .vo-section-title {
  color: #111827 !important;
}

body .vo-ranking-name,
.vo-ranking-name {
  color: #111827 !important;
}

body .vo-score-value,
.vo-score-value {
  color: #111827 !important;
}

body .vo-criteria-card h3,
.vo-criteria-card h3 {
  color: #111827 !important;
}

body .vo-purpose-card h3,
.vo-purpose-card h3 {
  color: #111827 !important;
}

body .vo-faq-question span:first-child,
.vo-faq-question span:first-child,
body .vo-faq-item .vo-faq-question span {
  color: #111827 !important;
}

body .vo-detail-value,
.vo-detail-value {
  color: #111827 !important;
}

body .vo-comparison-table td,
.vo-comparison-table td {
  color: #374151 !important;
}

body .vo-comparison-table td strong,
.vo-comparison-table td strong {
  color: #111827 !important;
}

/* Feature lists on light background */
body .vo-ranking-features li,
.vo-ranking-features li {
  color: #374151 !important;
}

body .vo-ranking-features li strong,
.vo-ranking-features li strong {
  color: #10B981 !important;
}

/* ===== HEADER ===== */
.mega-header {
  background: rgba(255, 255, 255, 0.98) !important;
  border-bottom: 1px solid #E5E7EB !important;
}

.mega-header.scrolled {
  background: rgba(255, 255, 255, 0.99) !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
}

.mega-logo {
  color: #374151 !important;
}

.mega-logo-text {
  color: #374151 !important;
}

.mega-logo-icon {
  background: linear-gradient(135deg, #10B981 0%, #059669 100%) !important;
}

.mega-nav-link {
  color: #374151 !important;
}

.mega-nav-link:hover {
  color: #10B981 !important;
  background: rgba(16, 185, 129, 0.08) !important;
}

.mega-arrow {
  stroke: #6B7280 !important;
}

.mega-dropdown {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.1) !important;
}

.mega-col-title {
  color: #374151 !important;
}

.mega-links a {
  color: #6B7280 !important;
}

.mega-links a:hover {
  color: #10B981 !important;
}

.mega-badge {
  background: rgba(16, 185, 129, 0.1) !important;
  color: #10B981 !important;
}

.mega-cta {
  background: linear-gradient(135deg, #F97316 0%, #EA580C 100%) !important;
  color: #FFFFFF !important;
}

.mega-cta:hover {
  background: linear-gradient(135deg, #EA580C 0%, #DC2626 100%) !important;
}

.mega-featured-card {
  background: #F9FAFB !important;
  border: 1px solid #E5E7EB !important;
}

.mega-featured-card h5 {
  color: #374151 !important;
}

.mega-featured-card p {
  color: #6B7280 !important;
}

.mega-featured-btn {
  background: #10B981 !important;
  color: #FFFFFF !important;
}

.mega-card {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
}

.mega-card:hover {
  border-color: #10B981 !important;
  box-shadow: 0 4px 12px rgba(16, 185, 129, 0.15) !important;
}

.mega-card-icon {
  color: #10B981 !important;
}

.mega-card h5 {
  color: #374151 !important;
}

.mega-card p {
  color: #6B7280 !important;
}

.mega-mobile-toggle span {
  background: #374151 !important;
}

/* ===== HERO SECTIONS ===== */
body .vo-hero,
.vo-hero {
  background: linear-gradient(180deg, #FFFFFF 0%, #F0FDF4 100%) !important;
}

body .vo-hero-glow,
.vo-hero-glow {
  background: radial-gradient(ellipse, rgba(16, 185, 129, 0.1) 0%, transparent 70%) !important;
}

body .vo-hero-badge,
.vo-hero-badge {
  background: linear-gradient(135deg, #10B981, #059669) !important;
  color: #FFFFFF !important;
}

body .vo-hero-title,
.vo-hero-title {
  color: #111827 !important;
}

body .vo-text-gradient,
.vo-text-gradient {
  background: linear-gradient(135deg, #10B981, #059669) !important;
  -webkit-background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  background-clip: text !important;
}

body .vo-hero-subtitle,
.vo-hero-subtitle {
  color: #6B7280 !important;
}

body .vo-stat-number,
.vo-stat-number {
  color: #10B981 !important;
}

body .vo-stat-label,
.vo-stat-label {
  color: #6B7280 !important;
}

/* ===== SECTIONS ===== */
body .vo-section-dark,
.vo-section-dark {
  background: #F9FAFB !important;
}

body .vo-section-badge,
.vo-section-badge {
  background: linear-gradient(135deg, #10B981, #059669) !important;
  color: #FFFFFF !important;
}

body .vo-section-title,
.vo-section-title {
  color: #111827 !important;
}

body .vo-section-desc,
.vo-section-desc {
  color: #6B7280 !important;
}

/* ===== CARDS ===== */
body .vo-card,
.vo-card {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
}

body .vo-card:hover,
.vo-card:hover {
  border-color: #10B981 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08) !important;
}

body .vo-card-content h3,
.vo-card-content h3 {
  color: #111827 !important;
}

body .vo-card-content p,
.vo-card-content p {
  color: #6B7280 !important;
}

/* ===== RANKING ===== */
body .vo-rank-card,
.vo-rank-card {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
}

body .vo-rank-card:hover,
.vo-rank-card:hover {
  border-color: #10B981 !important;
}

body .vo-rank-info h4,
.vo-rank-info h4 {
  color: #111827 !important;
}

body .vo-rank-price,
.vo-rank-price {
  color: #10B981 !important;
}

/* ===== TAGS ===== */
body .vo-tag,
.vo-tag {
  background: #F3F4F6 !important;
  color: #374151 !important;
}

body .vo-tag-green,
.vo-tag-green {
  background: rgba(16, 185, 129, 0.1) !important;
  color: #10B981 !important;
}

/* ===== BUTTONS ===== */
body .vo-btn-primary,
.vo-btn-primary {
  background: linear-gradient(135deg, #F97316 0%, #EA580C 100%) !important;
  color: #FFFFFF !important;
}

body .vo-btn-primary:hover,
.vo-btn-primary:hover {
  background: linear-gradient(135deg, #EA580C 0%, #DC2626 100%) !important;
}

body .vo-btn-secondary,
.vo-btn-secondary {
  background: #FFFFFF !important;
  color: #374151 !important;
  border: 1px solid #E5E7EB !important;
}

body .vo-btn-secondary:hover,
.vo-btn-secondary:hover {
  border-color: #10B981 !important;
  color: #10B981 !important;
}

/* ===== SEARCH ===== */
body .vo-search-section,
.vo-search-section {
  background: #FFFFFF !important;
}

body .vo-search-box,
.vo-search-box {
  background: #F9FAFB !important;
  border: 1px solid #E5E7EB !important;
}

body .vo-search-input,
.vo-search-input,
body .vo-search-select,
.vo-search-select {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
  color: #374151 !important;
}

body .vo-search-btn,
.vo-search-btn {
  background: #F97316 !important;
  color: #FFFFFF !important;
}

/* ===== FILTER ===== */
body .vo-filter-section,
.vo-filter-section {
  background: #F9FAFB !important;
  border-bottom: 1px solid #E5E7EB !important;
}

body .vo-filter-btn,
.vo-filter-btn {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
  color: #374151 !important;
}

body .vo-filter-btn:hover,
body .vo-filter-btn.active,
.vo-filter-btn:hover,
.vo-filter-btn.active {
  background: #10B981 !important;
  border-color: #10B981 !important;
  color: #FFFFFF !important;
}

/* ===== OFFICE CARDS (archive page) ===== */
body .office-card,
.office-card {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
}

body .office-card:hover,
.office-card:hover {
  border-color: #10B981 !important;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08) !important;
}

body .office-card h3,
body .office-card h2,
.office-card h3,
.office-card h2 {
  color: #111827 !important;
}

body .office-card p,
.office-card p {
  color: #6B7280 !important;
}

/* ===== FOOTER ===== */
.site-footer {
  background: #F9FAFB !important;
  border-top: 1px solid #E5E7EB !important;
  color: #374151 !important;
}

.footer-section h3 {
  color: #111827 !important;
}

.footer-section ul li a {
  color: #6B7280 !important;
}

.footer-section ul li a:hover {
  color: #10B981 !important;
}

.footer-bottom {
  border-top: 1px solid #E5E7EB !important;
  color: #6B7280 !important;
}

/* ===== SPECIFIC PAGE FIXES ===== */

/* Office Detail Page */
body .vo-detail-hero,
.vo-detail-hero {
  background: linear-gradient(180deg, #FFFFFF 0%, #F9FAFB 100%) !important;
}

body .vo-detail-title,
.vo-detail-title {
  color: #111827 !important;
}

body .vo-detail-subtitle,
.vo-detail-subtitle {
  color: #6B7280 !important;
}

/* Startup/Freelance/Netshop Pages */
body .vo-page-hero,
.vo-page-hero {
  background: linear-gradient(180deg, #FFFFFF 0%, #F0FDF4 100%) !important;
}

body .vo-page-title,
.vo-page-title {
  color: #111827 !important;
}

body .vo-feature-card,
.vo-feature-card {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
}

body .vo-feature-card:hover,
.vo-feature-card:hover {
  border-color: #10B981 !important;
}

body .vo-feature-icon,
.vo-feature-icon {
  background: rgba(16, 185, 129, 0.1) !important;
  color: #10B981 !important;
}

body .vo-feature-title,
.vo-feature-title {
  color: #111827 !important;
}

body .vo-feature-desc,
.vo-feature-desc {
  color: #6B7280 !important;
}

/* ===== COMPARISON PAGE ===== */
body .vo-compare-header,
.vo-compare-header {
  background: #F9FAFB !important;
}

body .vo-compare-table th,
.vo-compare-table th {
  background: #F9FAFB !important;
  color: #374151 !important;
}

body .vo-compare-table td,
.vo-compare-table td {
  background: #FFFFFF !important;
  color: #374151 !important;
  border-color: #E5E7EB !important;
}

/* ===== MOBILE MENU ===== */
@media (max-width: 1024px) {
  .mega-nav {
    background: #FFFFFF !important;
  }

  .mega-nav-link {
    color: #374151 !important;
    border-bottom: 1px solid #E5E7EB !important;
  }

  .mega-dropdown {
    background: #F9FAFB !important;
  }
}

/* ===== OFFICE DETAIL PAGE (od-*) ===== */
.od-hero {
  background: linear-gradient(180deg, #FFFFFF 0%, #F0FDF4 100%) !important;
}

.od-hero-bg {
  opacity: 0.1 !important;
}

.od-hero-overlay {
  background: transparent !important;
}

.od-hero-title {
  color: #111827 !important;
}

.od-hero-meta,
.od-hero-location,
.od-hero-location span {
  color: #6B7280 !important;
}

.od-hero-location svg {
  color: #10B981 !important;
}

.od-hero-rating {
  color: #374151 !important;
}

.od-hero-price {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
}

.od-hero-price-label {
  color: #6B7280 !important;
}

.od-hero-price-value {
  color: #10B981 !important;
}

.od-hero-price-period {
  color: #6B7280 !important;
}

.od-hero-badges .od-badge {
  background: rgba(16, 185, 129, 0.1) !important;
  color: #10B981 !important;
}

.od-hero-cta {
  background: linear-gradient(135deg, #F97316 0%, #EA580C 100%) !important;
  color: #FFFFFF !important;
}

.od-hero-cta:hover {
  background: linear-gradient(135deg, #EA580C 0%, #DC2626 100%) !important;
}

/* Detail Page Nav Tabs */
.od-nav {
  background: #FFFFFF !important;
  border-bottom: 1px solid #E5E7EB !important;
}

.od-nav-link {
  color: #6B7280 !important;
}

.od-nav-link:hover,
.od-nav-link.active {
  color: #10B981 !important;
  border-bottom-color: #10B981 !important;
}

/* Detail Page Sections */
.od-section {
  background: #FFFFFF !important;
}

.od-section-title {
  color: #111827 !important;
}

.od-section-title svg {
  color: #10B981 !important;
}

/* Service Tags */
.od-service-tag {
  background: #F3F4F6 !important;
  color: #374151 !important;
}

.od-service-tag.active {
  background: rgba(16, 185, 129, 0.1) !important;
  color: #10B981 !important;
}

/* Price Table */
.od-price-table {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
}

.od-price-table th {
  background: #F9FAFB !important;
  color: #374151 !important;
}

.od-price-table td {
  color: #374151 !important;
  border-color: #E5E7EB !important;
}

/* Sidebar */
.od-sidebar-card {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
}

.od-sidebar-card h4 {
  color: #111827 !important;
}

.od-sidebar-price {
  color: #10B981 !important;
}

.od-sidebar-features li {
  color: #374151 !important;
}

.od-sidebar-cta {
  background: linear-gradient(135deg, #F97316 0%, #EA580C 100%) !important;
  color: #FFFFFF !important;
}

/* Related Offices */
.od-related-card {
  background: #FFFFFF !important;
  border: 1px solid #E5E7EB !important;
}

.od-related-card:hover {
  border-color: #10B981 !important;
}

.od-related-title {
  color: #111827 !important;
}

.od-related-price {
  color: #10B981 !important;
}

/* ===== HOW-TO-CHOOSE PAGE LIGHT THEME ===== */
html body .vo-page-howto,
body .vo-page-howto,
.vo-page-howto {
  background: #FFFFFF !important;
  color: #111827 !important;
}

html body .vo-page-howto h1,
html body .vo-page-howto h2,
html body .vo-page-howto h3,
html body .vo-page-howto h4,
body .vo-page-howto h1,
body .vo-page-howto h2,
body .vo-page-howto h3,
body .vo-page-howto h4 {
  color: #111827 !important;
}

html body .vo-page-howto p,
body .vo-page-howto p {
  color: #6B7280 !important;
}

html body .vo-page-howto .vo-hero-howto,
body .vo-page-howto .vo-hero-howto {
  background: linear-gradient(135deg, #F0FDF4 0%, #ECFDF5 50%, #D1FAE5 100%) !important;
}

html body .vo-page-howto .vo-hero-content h1,
body .vo-page-howto .vo-hero-content h1 {
  color: #111827 !important;
}

html body .vo-page-howto .vo-toc-section,
body .vo-page-howto .vo-toc-section {
  background: #F9FAFB !important;
}

html body .vo-page-howto .vo-toc-item,
body .vo-page-howto .vo-toc-item {
  background: #FFFFFF !important;
  border-color: #E5E7EB !important;
}

html body .vo-page-howto .vo-toc-text,
body .vo-page-howto .vo-toc-text {
  color: #111827 !important;
}

html body .vo-page-howto .vo-section-alt,
body .vo-page-howto .vo-section-alt {
  background: #F9FAFB !important;
}

html body .vo-page-howto .vo-purpose-card,
html body .vo-page-howto .vo-price-item,
html body .vo-page-howto .vo-mail-item,
html body .vo-page-howto .vo-trust-item,
html body .vo-page-howto .vo-trust-card,
html body .vo-page-howto .vo-area-card,
html body .vo-page-howto .vo-recommend-box,
html body .vo-page-howto .vo-faq-item,
html body .vo-page-howto .vo-mistake-item,
body .vo-page-howto .vo-purpose-card,
body .vo-page-howto .vo-price-item,
body .vo-page-howto .vo-mail-item,
body .vo-page-howto .vo-trust-item,
body .vo-page-howto .vo-trust-card,
body .vo-page-howto .vo-area-card,
body .vo-page-howto .vo-recommend-box,
body .vo-page-howto .vo-faq-item,
body .vo-page-howto .vo-mistake-item {
  background: #FFFFFF !important;
  border-color: #E5E7EB !important;
}

html body .vo-page-howto .vo-purpose-card h3,
html body .vo-page-howto .vo-price-item h3,
html body .vo-page-howto .vo-mail-content h3,
html body .vo-page-howto .vo-trust-item h3,
html body .vo-page-howto .vo-trust-card h4,
html body .vo-page-howto .vo-area-card h4,
html body .vo-page-howto .vo-recommend-box h3,
html body .vo-page-howto .vo-mistake-content h3,
body .vo-page-howto .vo-purpose-card h3,
body .vo-page-howto .vo-price-item h3,
body .vo-page-howto .vo-mail-content h3,
body .vo-page-howto .vo-trust-item h3,
body .vo-page-howto .vo-trust-card h4,
body .vo-page-howto .vo-area-card h4,
body .vo-page-howto .vo-recommend-box h3,
body .vo-page-howto .vo-mistake-content h3 {
  color: #111827 !important;
}

html body .vo-page-howto .vo-purpose-card p,
html body .vo-page-howto .vo-price-item p,
html body .vo-page-howto .vo-mail-content p,
html body .vo-page-howto .vo-trust-item p,
html body .vo-page-howto .vo-trust-card p,
html body .vo-page-howto .vo-area-card p,
html body .vo-page-howto .vo-mistake-content p,
body .vo-page-howto .vo-purpose-card p,
body .vo-page-howto .vo-price-item p,
body .vo-page-howto .vo-mail-content p,
body .vo-page-howto .vo-trust-item p,
body .vo-page-howto .vo-trust-card p,
body .vo-page-howto .vo-area-card p,
body .vo-page-howto .vo-mistake-content p {
  color: #6B7280 !important;
}

html body .vo-page-howto .vo-purpose-needs,
body .vo-page-howto .vo-purpose-needs {
  background: #F9FAFB !important;
}

html body .vo-page-howto .vo-purpose-needs li,
body .vo-page-howto .vo-purpose-needs li {
  color: #111827 !important;
}

html body .vo-page-howto .vo-price-comparison-box,
body .vo-page-howto .vo-price-comparison-box {
  background: #FFFFFF !important;
  border-color: #E5E7EB !important;
}

html body .vo-page-howto .vo-price-comparison-box h3,
body .vo-page-howto .vo-price-comparison-box h3 {
  color: #111827 !important;
}

html body .vo-page-howto .vo-comparison-table th,
body .vo-page-howto .vo-comparison-table th {
  background: #F9FAFB !important;
  color: #6B7280 !important;
  border-color: #E5E7EB !important;
}

html body .vo-page-howto .vo-comparison-table td,
body .vo-page-howto .vo-comparison-table td {
  color: #111827 !important;
  border-color: #E5E7EB !important;
}

html body .vo-page-howto .vo-row-highlight,
body .vo-page-howto .vo-row-highlight {
  background: #F0FDF4 !important;
}

html body .vo-page-howto .vo-address-good,
body .vo-page-howto .vo-address-good {
  background: #FFFFFF !important;
  border-color: #10B981 !important;
}

html body .vo-page-howto .vo-address-bad,
body .vo-page-howto .vo-address-bad {
  background: #FFFFFF !important;
  border-color: #F59E0B !important;
}

html body .vo-page-howto .vo-address-good h3,
html body .vo-page-howto .vo-address-bad h3,
body .vo-page-howto .vo-address-good h3,
body .vo-page-howto .vo-address-bad h3 {
  color: #111827 !important;
}

html body .vo-page-howto .vo-address-good li,
html body .vo-page-howto .vo-address-bad li,
body .vo-page-howto .vo-address-good li,
body .vo-page-howto .vo-address-bad li {
  color: #374151 !important;
}

html body .vo-page-howto .vo-area-ranking h3,
html body .vo-page-howto .vo-trust-ranking h3,
body .vo-page-howto .vo-area-ranking h3,
body .vo-page-howto .vo-trust-ranking h3 {
  color: #111827 !important;
}

html body .vo-page-howto .vo-mistakes-section,
body .vo-page-howto .vo-mistakes-section {
  background: #FEF2F2 !important;
}

html body .vo-page-howto .vo-mistake-item,
body .vo-page-howto .vo-mistake-item {
  background: #FFFFFF !important;
  border-color: #FECACA !important;
}

html body .vo-page-howto .vo-mistake-lesson,
body .vo-page-howto .vo-mistake-lesson {
  background: #F0FDF4 !important;
  color: #065F46 !important;
}

html body .vo-page-howto .vo-recommend-section,
body .vo-page-howto .vo-recommend-section {
  background: #F9FAFB !important;
}

html body .vo-page-howto .vo-recommend-featured,
body .vo-page-howto .vo-recommend-featured {
  border-color: #10B981 !important;
}

html body .vo-page-howto .vo-recommend-label,
body .vo-page-howto .vo-recommend-label {
  background: #F3F4F6 !important;
  color: #6B7280 !important;
}

html body .vo-page-howto .vo-recommend-featured .vo-recommend-label,
body .vo-page-howto .vo-recommend-featured .vo-recommend-label {
  background: linear-gradient(135deg, #10B981, #059669) !important;
  color: #FFFFFF !important;
}

html body .vo-page-howto .vo-recommend-price,
body .vo-page-howto .vo-recommend-price {
  color: #10B981 !important;
}

html body .vo-page-howto .vo-recommend-box li,
body .vo-page-howto .vo-recommend-box li {
  color: #374151 !important;
}

html body .vo-page-howto .vo-faq-section,
body .vo-page-howto .vo-faq-section {
  background: #FFFFFF !important;
}

html body .vo-page-howto .vo-faq-question,
body .vo-page-howto .vo-faq-question {
  background: #F9FAFB !important;
  color: #111827 !important;
}

html body .vo-page-howto .vo-faq-question span:first-child,
body .vo-page-howto .vo-faq-question span:first-child {
  color: #111827 !important;
}

html body .vo-page-howto .vo-faq-answer p,
body .vo-page-howto .vo-faq-answer p {
  color: #6B7280 !important;
}

html body .vo-page-howto .vo-cta-section,
body .vo-page-howto .vo-cta-section {
  background: linear-gradient(135deg, #10B981 0%, #059669 100%) !important;
}

html body .vo-page-howto .vo-cta-content h2,
body .vo-page-howto .vo-cta-content h2 {
  color: #FFFFFF !important;
}

html body .vo-page-howto .vo-cta-content p,
body .vo-page-howto .vo-cta-content p {
  color: rgba(255, 255, 255, 0.9) !important;
}

/* ============================================
   TUFE COMPANY - FIXED WITH HIGH SPECIFICITY
   ============================================ */

/* ===== A. オフィス詳細ページ：起業支援セクション ===== */
html body section.tufe-support-section {
  background-color: #ffffff !important;
  padding: 100px 20px !important;
  border-top: 1px solid #eeeeee !important;
  color: #1a1a1a !important;
  font-family: "Inter", "Helvetica Neue", Arial, sans-serif !important;
  margin: 0 !important;
  display: block !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

html body .tufe-container {
  max-width: 1080px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

/* Header */
html body .tufe-header {
  margin-bottom: 70px !important;
  text-align: left !important;
}

html body .tufe-sub {
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.15em !important;
  color: #10B981 !important;
  text-transform: uppercase !important;
  display: block !important;
  margin-bottom: 15px !important;
}

html body .tufe-header h2 {
  font-size: 32px !important;
  font-weight: 700 !important;
  letter-spacing: -0.02em !important;
  margin-bottom: 20px !important;
  color: #1a1a1a !important;
  margin-top: 0 !important;
}

html body .tufe-header p {
  font-size: 16px !important;
  color: #666666 !important;
  line-height: 1.8 !important;
  margin: 0 !important;
}

/* Grid & Cards */
html body .tufe-grid {
  display: grid !important;
  grid-template-columns: repeat(2, 1fr) !important;
  gap: 50px 80px !important;
}

html body a.tufe-card {
  display: flex !important;
  text-decoration: none !important;
  color: inherit !important;
  border-top: 1px solid #eeeeee !important;
  padding-top: 30px !important;
  transition: all 0.4s ease !important;
  background: transparent !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body a.tufe-card:hover {
  border-top-color: #1a1a1a !important;
  transform: none !important;
}

html body .tufe-no {
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #10B981 !important;
  margin-right: 40px !important;
  font-family: "Times New Roman", serif !important;
  flex-shrink: 0 !important;
  background: none !important;
  width: auto !important;
  height: auto !important;
  display: block !important;
}

html body .tufe-card-body {
  flex: 1 !important;
}

html body .tufe-card h3 {
  font-size: 20px !important;
  font-weight: 700 !important;
  margin-bottom: 12px !important;
  color: #1a1a1a !important;
  margin-top: 0 !important;
}

html body .tufe-card p {
  font-size: 14px !important;
  line-height: 1.7 !important;
  color: #666666 !important;
  margin: 0 !important;
}

/* Button */
html body .tufe-footer {
  margin-top: 80px !important;
  text-align: center !important;
}

html body a.tufe-btn {
  display: inline-block !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #1a1a1a !important;
  text-decoration: none !important;
  position: relative !important;
  padding: 10px 0 !important;
  background: transparent !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
}

html body .tufe-btn-line {
  position: absolute !important;
  bottom: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 2px !important;
  background-color: #1a1a1a !important;
  transition: width 0.3s ease !important;
}

html body a.tufe-btn:hover {
  color: #10B981 !important;
  transform: none !important;
}

html body a.tufe-btn:hover .tufe-btn-line {
  width: 50% !important;
  background-color: #10B981 !important;
}

/* ===== B. サイドバー：ミニマルウィジェット ===== */
html body .tufe-sidebar-widget {
  padding: 30px !important;
  background: #f9f9fb !important;
  border-radius: 4px !important;
  margin-bottom: 30px !important;
  border: none !important;
  box-shadow: none !important;
}

html body .tw-label {
  font-size: 10px !important;
  letter-spacing: 0.1em !important;
  color: #999999 !important;
  text-transform: uppercase !important;
  margin-bottom: 10px !important;
  display: block !important;
}

html body .tw-title {
  font-size: 20px !important;
  margin-bottom: 15px !important;
  color: #1a1a1a !important;
  font-weight: 700 !important;
  margin-top: 0 !important;
}

html body .tw-text {
  font-size: 13px !important;
  line-height: 1.6 !important;
  color: #666666 !important;
  margin-bottom: 20px !important;
}

html body ul.tw-menu {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 20px 0 !important;
  border-top: 1px solid #eeeeee !important;
}

html body .tw-menu li {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

html body .tw-menu li a {
  display: block !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid #eeeeee !important;
  text-decoration: none !important;
  color: #1a1a1a !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  transition: color 0.3s ease !important;
  background: none !important;
}

html body .tw-menu li a:hover {
  color: #10B981 !important;
}

html body a.tw-link {
  font-size: 12px !important;
  font-weight: 700 !important;
  color: #10B981 !important;
  text-decoration: none !important;
  border-bottom: 1px solid #10B981 !important;
  padding-bottom: 2px !important;
  transition: all 0.3s ease !important;
  background: none !important;
}

html body a.tw-link:hover {
  color: #059669 !important;
  border-bottom-color: #059669 !important;
}

/* ===== C. フッター：会社情報 ===== */
html body .tufe-footer-info {
  text-align: center !important;
  padding: 20px 0 !important;
  border-top: 1px solid rgba(255, 255, 255, 0.1) !important;
  margin-top: 20px !important;
  color: #6B7280 !important;
}

html body .tufe-footer-info a {
  color: #10B981 !important;
  text-decoration: none !important;
  font-weight: 600 !important;
  transition: color 0.3s ease !important;
}

html body .tufe-footer-info a:hover {
  color: #34D399 !important;
}

html body .tufe-footer-info span {
  color: rgba(107, 114, 128, 0.7) !important;
  margin: 0 8px !important;
}

/* ===== Mobile Responsive ===== */
@media (max-width: 768px) {
  html body .tufe-grid {
    grid-template-columns: 1fr !important;
    gap: 40px !important;
  }

  html body .tufe-header h2 {
    font-size: 24px !important;
  }

  html body section.tufe-support-section {
    padding: 60px 20px !important;
  }

  html body .tufe-no {
    margin-right: 20px !important;
  }

  html body .tufe-card h3 {
    font-size: 18px !important;
  }
}
