/* Primary Text */
.uk-text-white {
  color: #fff !important;
}

/* Primary Button */
.uk-button-primary {
  background-color: #69ba64 !important;
  border-color: #69ba64 !important;
  color: #fff !important;
}

.uk-button-primary:hover {
  background-color: #5aa158 !important;
  border-color: #5aa158 !important;
}

.uk-button-primary:active {
  background-color: #488e46 !important;
  border-color: #488e46 !important;
}

/* Primary Section */
.uk-section-primary {
  background-color: #69ba64 !important;
  color: #fff !important;
}

.uk-section-primary h1,
.uk-section-primary h2,
.uk-section-primary h3,
.uk-section-primary h4,
.uk-section-primary h5,
.uk-section-primary h6 {
  color: #488e46 !important;
}

/* Primary Card */
.uk-card-primary {
  background-color: #69ba64 !important;
  border-color: #5aa158 !important;
  color: #fff !important;
}

.uk-card-primary .uk-card-title {
  color: #fff !important;
}

.uk-card-primary .uk-card-body {
  color: #f0f0f0 !important;
}

/* Primary Alert */
.uk-alert-primary {
  background-color: #69ba64 !important;
  border-color: #5aa158 !important;
  color: #fff !important;
}

/* Primary Nav Bar */
.uk-navbar-primary {
  background-color: #69ba64 !important;
  color: #fff !important;
}

.uk-navbar-primary .uk-navbar-nav>li>a {
  color: #fff !important;
}

.uk-navbar-primary .uk-navbar-nav>li>a:hover {
  color: #e0e0e0 !important;
}

/* Primary Form Elements */
.uk-input-primary,
.uk-select-primary,
.uk-textarea-primary {
  background-color: #69ba64 !important;
  border-color: #5aa158 !important;
  color: #fff !important;
}

/* Primary Text */
.uk-text-primary {
  color: #69ba64 !important;
}

/* Primary Background */
.uk-background-primary {
  background-color: #69ba64 !important;
  color: #fff !important;
}

/* Primary Link */
.uk-link-primary {
  color: #69ba64 !important;
}

.uk-link-primary:hover {
  color: #5aa158 !important;
}

/* Primary Table */
.uk-table-primary {
  background-color: #f0f0f0 !important;
  color: #333 !important;
  border-color: #5aa158 !important;
}

.uk-table-primary th,
.uk-table-primary td {
  border-color: #5aa158 !important;
}

/* Primary Modal */
.uk-modal-primary {
  background-color: rgba(105, 186, 100, 0.9) !important;
  color: #fff !important;
}

.uk-modal-primary .uk-modal-dialog {
  background-color: #69ba64 !important;
  color: #fff !important;
}

/* Primary Badge */
.uk-badge-primary {
  background-color: #69ba64 !important;
  color: #fff !important;
}

/* Primary Panel */
.uk-panel-primary {
  background-color: #69ba64 !important;
  color: #fff !important;
  border-color: #5aa158 !important;
}

/* Primary Spinner */
.uk-spinner-primary {
  border-color: #69ba64 !important;
  border-top-color: #fff !important;
}

/* Primary Icon */
.uk-icon-primary {
  color: #69ba64 !important;
}

/* Primary Dropdown */
.uk-dropdown-primary {
  background-color: #69ba64 !important;
  color: #fff !important;
}

/* Primary Tooltip */
.uk-tooltip-primary {
  background-color: #69ba64 !important;
  color: #fff !important;
}

/* Primary Overlay */
.uk-overlay-primary {
  background-color: rgba(105, 186, 100, 0.8) !important;
  color: #fff !important;
}

/* Primary Offcanvas */
.uk-offcanvas-bar-primary {
  background-color: #69ba64 !important;
  color: #fff !important;
}

/* Secondary Button */
.uk-button-secondary {
  background-color: #858585 !important;
  border-color: #6f6f6f !important;
  color: #fff !important;
}

.uk-button-secondary:hover {
  background-color: #6f6f6f !important;
  border-color: #5f5f5f !important;
}

.uk-button-secondary:active {
  background-color: #525252 !important;
  border-color: #414141 !important;
}

/* Secondary Section */
.uk-section-secondary {
  background-color: #858585 !important;
  color: #fff !important;
}

.uk-section-secondary h1,
.uk-section-secondary h2,
.uk-section-secondary h3,
.uk-section-secondary h4,
.uk-section-secondary h5,
.uk-section-secondary h6 {
  color: #fff !important;
}

/* Secondary Card */
.uk-card-secondary {
  background-color: #858585 !important;
  border-color: #6f6f6f !important;
  color: #fff !important;
}

.uk-card-secondary .uk-card-title {
  color: #fff !important;
}

.uk-card-secondary .uk-card-body {
  color: #e0e0e0 !important;
}

/* Secondary Alert */
.uk-alert-secondary {
  background-color: #858585 !important;
  border-color: #6f6f6f !important;
  color: #fff !important;
}

/* Secondary Nav Bar */
.uk-navbar-secondary {
  background-color: #858585 !important;
  color: #fff !important;
}

.uk-navbar-secondary .uk-navbar-nav>li>a {
  color: #fff !important;
}

.uk-navbar-secondary .uk-navbar-nav>li>a:hover {
  color: #e0e0e0 !important;
}

/* Secondary Form Elements */
.uk-input-secondary,
.uk-select-secondary,
.uk-textarea-secondary {
  background-color: #858585 !important;
  border-color: #6f6f6f !important;
  color: #fff !important;
}

/* Secondary Text */
.uk-text-secondary {
  color: #858585 !important;
}

/* Secondary Background */
.uk-background-secondary {
  background-color: #858585 !important;
  color: #fff !important;
}

/* Secondary Link */
.uk-link-secondary {
  color: #858585 !important;
}

.uk-link-secondary:hover {
  color: #6f6f6f !important;
}

/* Secondary Table */
.uk-table-secondary {
  background-color: #f0f0f0 !important;
  color: #333 !important;
  border-color: #6f6f6f !important;
}

.uk-table-secondary th,
.uk-table-secondary td {
  border-color: #6f6f6f !important;
}

/* Secondary Modal */
.uk-modal-secondary {
  background-color: rgba(133, 133, 133, 0.9) !important;
  color: #fff !important;
}

.uk-modal-secondary .uk-modal-dialog {
  background-color: #858585 !important;
  color: #fff !important;
}

/* Secondary Badge */
.uk-badge-secondary {
  background-color: #858585 !important;
  color: #fff !important;
}

/* Secondary Panel */
.uk-panel-secondary {
  background-color: #858585 !important;
  color: #fff !important;
  border-color: #6f6f6f !important;
}

/* Secondary Spinner */
.uk-spinner-secondary {
  border-color: #858585 !important;
  border-top-color: #fff !important;
}

/* Secondary Icon */
.uk-icon-secondary {
  color: #858585 !important;
}

/* Secondary Dropdown */
.uk-dropdown-secondary {
  background-color: #858585 !important;
  color: #fff !important;
}

/* Secondary Tooltip */
.uk-tooltip-secondary {
  background-color: #858585 !important;
  color: #fff !important;
}

/* Secondary Overlay */
.uk-overlay-secondary {
  background-color: rgba(133, 133, 133, 0.8) !important;
  color: #fff !important;
}

/* Secondary Offcanvas */
.uk-offcanvas-bar-secondary {
  background-color: #858585 !important;
  color: #fff !important;
}

/* Danger Button */
.uk-button-danger {
  background-color: #d9534f !important;
  border-color: #c9302c !important;
  color: #fff !important;
}

.uk-button-danger:hover {
  background-color: #c9302c !important;
  border-color: #ac2925 !important;
}

.uk-button-danger:active {
  background-color: #9b2a24 !important;
  border-color: #8b2520 !important;
}

/* Danger Section */
.uk-section-danger {
  background-color: #d9534f !important;
  color: #fff !important;
}

.uk-section-danger h1,
.uk-section-danger h2,
.uk-section-danger h3,
.uk-section-danger h4,
.uk-section-danger h5,
.uk-section-danger h6 {
  color: #fff !important;
}

/* Danger Card */
.uk-card-danger {
  background-color: #d9534f !important;
  border-color: #c9302c !important;
  color: #fff !important;
}

.uk-card-danger .uk-card-title {
  color: #fff !important;
}

.uk-card-danger .uk-card-body {
  color: #f0f0f0 !important;
}


  /* Primary Button */
  .uk-button-primary {
    background-color: #69ba64 !important;
    border-color: #69ba64 !important;
    color: #fff !important;
  }

  .uk-button-primary:hover {
    background-color: #5aa158 !important;
    border-color: #5aa158 !important;
  }

  .uk-button-primary:active {
    background-color: #488e46 !important;
    border-color: #488e46 !important;
  }

  /* Primary Section */
  .uk-section-primary {
    background-color: #69ba64 !important;
    color: #fff !important;
  }

  .uk-section-primary h1,
  .uk-section-primary h2,
  .uk-section-primary h3,
  .uk-section-primary h4,
  .uk-section-primary h5,
  .uk-section-primary h6 {
    color: #488e46 !important;
  }

  /* Primary Card */
  .uk-card-primary {
    background-color: #69ba64 !important;
    border-color: #5aa158 !important;
    color: #fff !important;
  }

  .uk-card-primary .uk-card-title {
    color: #fff !important;
  }

  .uk-card-primary .uk-card-body {
    color: #f0f0f0 !important;
  }

  /* Primary Alert */
  .uk-alert-primary {
    background-color: #69ba64 !important;
    border-color: #5aa158 !important;
    color: #fff !important;
  }

  /* Primary Nav Bar */
  .uk-navbar-primary {
    background-color: #69ba64 !important;
    color: #fff !important;
  }

  .uk-navbar-primary .uk-navbar-nav>li>a {
    color: #fff !important;
  }

  .uk-navbar-primary .uk-navbar-nav>li>a:hover {
    color: #e0e0e0 !important;
  }

  /* Primary Form Elements */
  .uk-input-primary,
  .uk-select-primary,
  .uk-textarea-primary {
    background-color: #69ba64 !important;
    border-color: #5aa158 !important;
    color: #fff !important;
  }

  /* Primary Text */
  .uk-text-primary {
    color: #69ba64 !important;
  }

  /* Primary Background */
  .uk-background-primary {
    background-color: #69ba64 !important;
    color: #fff !important;
  }

  /* Primary Link */
  .uk-link-primary {
    color: #69ba64 !important;
  }

  .uk-link-primary:hover {
    color: #5aa158 !important;
  }

  /* Primary Table */
  .uk-table-primary {
    background-color: #f0f0f0 !important;
    color: #333 !important;
    border-color: #5aa158 !important;
  }

  .uk-table-primary th,
  .uk-table-primary td {
    border-color: #5aa158 !important;
  }

  /* Primary Modal */
  .uk-modal-primary {
    background-color: rgba(105, 186, 100, 0.9) !important;
    color: #fff !important;
  }

  .uk-modal-primary .uk-modal-dialog {
    background-color: #69ba64 !important;
    color: #fff !important;
  }

  /* Primary Badge */
  .uk-badge-primary {
    background-color: #69ba64 !important;
    color: #fff !important;
  }

  /* Primary Panel */
  .uk-panel-primary {
    background-color: #69ba64 !important;
    color: #fff !important;
    border-color: #5aa158 !important;
  }

  /* Primary Spinner */
  .uk-spinner-primary {
    border-color: #69ba64 !important;
    border-top-color: #fff !important;
  }

  /* Primary Icon */
  .uk-icon-primary {
    color: #69ba64 !important;
  }

  /* Primary Dropdown */
  .uk-dropdown-primary {
    background-color: #69ba64 !important;
    color: #fff !important;
  }

  /* Primary Tooltip */
  .uk-tooltip-primary {
    background-color: #69ba64 !important;
    color: #fff !important;
  }

  /* Primary Overlay */
  .uk-overlay-primary {
    background-color: rgba(105, 186, 100, 0.8) !important;
    color: #fff !important;
  }

  /* Primary Offcanvas */
  .uk-offcanvas-bar-primary {
    background-color: #69ba64 !important;
    color: #fff !important;
  }

  /* Secondary Button */
  .uk-button-secondary {
    background-color: #858585 !important;
    border-color: #6f6f6f !important;
    color: #fff !important;
  }

  .uk-button-secondary:hover {
    background-color: #6f6f6f !important;
    border-color: #5f5f5f !important;
  }

  .uk-button-secondary:active {
    background-color: #525252 !important;
    border-color: #414141 !important;
  }

  /* Secondary Section */
  .uk-section-secondary {
    background-color: #858585 !important;
    color: #fff !important;
  }

  .uk-section-secondary h1,
  .uk-section-secondary h2,
  .uk-section-secondary h3,
  .uk-section-secondary h4,
  .uk-section-secondary h5,
  .uk-section-secondary h6 {
    color: #fff !important;
  }

  /* Secondary Card */
  .uk-card-secondary {
    background-color: #858585 !important;
    border-color: #6f6f6f !important;
    color: #fff !important;
  }

  .uk-card-secondary .uk-card-title {
    color: #fff !important;
  }

  .uk-card-secondary .uk-card-body {
    color: #e0e0e0 !important;
  }

  /* Secondary Alert */
  .uk-alert-secondary {
    background-color: #858585 !important;
    border-color: #6f6f6f !important;
    color: #fff !important;
  }

  /* Secondary Nav Bar */
  .uk-navbar-secondary {
    background-color: #858585 !important;
    color: #fff !important;
  }

  .uk-navbar-secondary .uk-navbar-nav>li>a {
    color: #fff !important;
  }

  .uk-navbar-secondary .uk-navbar-nav>li>a:hover {
    color: #e0e0e0 !important;
  }

  /* Secondary Form Elements */
  .uk-input-secondary,
  .uk-select-secondary,
  .uk-textarea-secondary {
    background-color: #858585 !important;
    border-color: #6f6f6f !important;
    color: #fff !important;
  }

  /* Secondary Text */
  .uk-text-secondary {
    color: #858585 !important;
  }

  /* Secondary Background */
  .uk-background-secondary {
    background-color: #858585 !important;
    color: #fff !important;
  }

  /* Secondary Link */
  .uk-link-secondary {
    color: #858585 !important;
  }

  .uk-link-secondary:hover {
    color: #6f6f6f !important;
  }

  /* Secondary Table */
  .uk-table-secondary {
    background-color: #f0f0f0 !important;
    color: #333 !important;
    border-color: #6f6f6f !important;
  }

  .uk-table-secondary th,
  .uk-table-secondary td {
    border-color: #6f6f6f !important;
  }

  /* Secondary Modal */
  .uk-modal-secondary {
    background-color: rgba(133, 133, 133, 0.9) !important;
    color: #fff !important;
  }

  .uk-modal-secondary .uk-modal-dialog {
    background-color: #858585 !important;
    color: #fff !important;
  }

  /* Secondary Badge */
  .uk-badge-secondary {
    background-color: #858585 !important;
    color: #fff !important;
  }

  /* Secondary Panel */
  .uk-panel-secondary {
    background-color: #858585 !important;
    color: #fff !important;
    border-color: #6f6f6f !important;
  }

  /* Secondary Spinner */
  .uk-spinner-secondary {
    border-color: #858585 !important;
    border-top-color: #fff !important;
  }

  /* Secondary Icon */
  .uk-icon-secondary {
    color: #858585 !important;
  }

  /* Secondary Dropdown */
  .uk-dropdown-secondary {
    background-color: #858585 !important;
    color: #fff !important;
  }

  /* Secondary Tooltip */
  .uk-tooltip-secondary {
    background-color: #858585 !important;
    color: #fff !important;
  }

  /* Secondary Overlay */
  .uk-overlay-secondary {
    background-color: rgba(133, 133, 133, 0.8) !important;
    color: #fff !important;
  }

  /* Secondary Offcanvas */
  .uk-offcanvas-bar-secondary {
    background-color: #858585 !important;
    color: #fff !important;
  }

  /* Danger Button */
  .uk-button-danger {
    background-color: #d9534f !important;
    border-color: #c9302c !important;
    color: #fff !important;
  }

  .uk-button-danger:hover {
    background-color: #c9302c !important;
    border-color: #ac2925 !important;
  }

  .uk-button-danger:active {
    background-color: #9b2a24 !important;
    border-color: #8b2520 !important;
  }

  /* Danger Section */
  .uk-section-danger {
    background-color: #d9534f !important;
    color: #fff !important;
  }

  .uk-section-danger h1,
  .uk-section-danger h2,
  .uk-section-danger h3,
  .uk-section-danger h4,
  .uk-section-danger h5,
  .uk-section-danger h6 {
    color: #fff !important;
  }

  /* Danger Card */
  .uk-card-danger {
    background-color: #d9534f !important;
    border-color: #c9302c !important;
    color: #fff !important;
  }

  .uk-card-danger .uk-card-title {
    color: #fff !important;
  }

  .uk-card-danger .uk-card-body {
    color: #f0f0f0 !important;
  }

  /* Danger Alert */
  .uk-alert-danger {
    background-color: #d9534f !important;
    border-color: #c9302c !important;
    color: #fff !important;
  }

  /* Loadbox styles (restored from original theme) */
  #loadbox {
    position: fixed;
    z-index: 2001;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    text-align: center;
    background: #fff;
    transition: opacity 0.4s ease;
  }

  #loadbox.loadbox-active {
    display: block !important;
    opacity: 1;
  }

  #loadbox.loadbox-hidden {
    opacity: 0;
    pointer-events: none;
  }

  /* JavaScript無効時の非表示制御 */
  .no-js #loadbox {
    display: none !important;
  }

  .wrapper {
    display: table;
    position: relative;
    z-index: 1;
    height: 100%;
    width: 100%;
  }

  .wrapper .inner {
    display: table-cell;
    vertical-align: middle;
  }

  .inner img {
    width: 25%;
  }

  /* Header logo and tagline styles */
  .uk-navbar-item.uk-logo {
    display: flex;
    align-items: center;
    gap: 12px;
  }

  .uk-navbar-item.uk-logo img {
    height: 40px;
    width: auto;
  }

  .uk-navbar-item .uk-text-small {
    font-size: 12px !important;
    color: #666 !important;
    line-height: 1.3 !important;
    margin: 0 !important;
  }

  /* Footer styles (original design) */
  .footer-cta-container {
    display: flex;
    gap: 0;
  }

  .footer-link {
    background-color: #69ba64;
    border: 1px solid #69ba64;
    border-radius: 0;
    transition: all 0.3s ease;
    flex: 1;
  }

  .footer-link:hover {
    background-color: #5aa158;
    border-color: #5aa158;
    box-shadow: 0 4px 15px rgba(0,0,0,0.15);
    transform: translateY(-2px);
  }

  .footer-link a {
    color: white;
    text-decoration: none;
  }

  .footer-link-inner {
    padding: 60px;
  }

  .footer-icons {
    color: white;
    font-size: 24px;
  }

  .footer-text span {
    color: rgba(255,255,255,0.9);
    font-size: 14px;
  }

  .footer-text h3 {
    color: white;
    font-size: 18px;
    font-weight: 600;
  }

  .footer-socail a {
    color: #666;
    transition: color 0.3s ease;
  }

  .footer-socail a:hover {
    color: #69ba64;
  }

/* ===================================
   DESKTOP RESPONSIVE OPTIMIZATION
=================================== */

/* Large Desktop (1440px+) - Ultra Wide Screens */
@media (min-width: 1440px) {
    .uk-container {
        max-width: 1320px !important;
        padding-left: 60px !important;
        padding-right: 60px !important;
    }
    
    /* デスクトップ向けフォントサイズ調整 */
    .uk-heading-large {
        font-size: 2.8rem !important;
        line-height: 1.2 !important;
    }
    
    .uk-heading-medium {
        font-size: 2.2rem !important;
        line-height: 1.3 !important;
    }
    
    h1 {
        font-size: 2.5rem !important;
        line-height: 1.3 !important;
    }
    
    .uk-text-lead {
        font-size: 1.3rem !important;
        line-height: 1.6 !important;
    }
    
    /* 通常のパラグラフ */
    p {
        font-size: 1rem !important;
        line-height: 1.7 !important;
    }
    
    /* ボタンサイズも調整 */
    .uk-button-large {
        padding: 12px 40px !important;
        font-size: 1.1rem !important;
    }
    
    /* セクション間の余白を増加 */
    .uk-section {
        padding-top: 100px !important;
        padding-bottom: 100px !important;
    }
    
    /* カード要素の適切な余白 */
    .uk-card-body {
        padding: 40px !important;
    }
    
    /* Grid columns with better spacing */
    .uk-grid > * {
        padding-left: 30px;
    }
    
    .uk-grid {
        margin-left: -30px;
    }
}

/* Standard Desktop (1200px-1439px) */
@media (min-width: 1200px) and (max-width: 1439px) {
    .uk-container {
        max-width: 1140px !important;
        padding-left: 40px !important;
        padding-right: 40px !important;
    }
    
    .uk-section {
        padding-top: 80px !important;
        padding-bottom: 80px !important;
    }
    
    .uk-card-body {
        padding: 30px !important;
    }
    
    .uk-heading-large {
        font-size: 2.5rem !important;
    }
    
    .uk-heading-medium {
        font-size: 2rem !important;
    }
    
    h1 {
        font-size: 2.2rem !important;
        line-height: 1.3 !important;
    }
}

/* Small Desktop / Large Tablet (992px-1199px) */
@media (min-width: 992px) and (max-width: 1199px) {
    .uk-container {
        max-width: 960px !important;
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
    
    .uk-section {
        padding-top: 60px !important;
        padding-bottom: 60px !important;
    }
}

/* Navigation improvements for desktop */
@media (min-width: 1200px) {
    .uk-navbar-nav > li > a {
        padding: 0 25px !important;
        font-size: 1rem !important;
    }
    
    .uk-navbar-container {
        padding: 20px 10px !important;
    }
}

