html {
  font-size: 14px;
}

@media (min-width: 768px) {
  html {
    font-size: 16px;
  }
}

/* ナビバーロゴを白に */
.navbar-brand img {
    filter: brightness(0) invert(1);
}



.btn:focus, .btn:active:focus, .btn-link.nav-link:focus, .form-control:focus, .form-check-input:focus {
  box-shadow: 0 0 0 0.1rem white, 0 0 0 0.25rem #258cfb;
}

html {
  position: relative;
  min-height: 100%;
}
/*
body {
  margin-bottom: 60px;
}
*/
.main-container {
    display: flex;
    flex-direction: row;
    min-height: 80vh;
}

/* 左サイドバー */
.sidebar-left {
    width: 15%;
    background-color: #f0f0f0;
    padding: 1rem;
}

/* メインコンテンツ */
.main-content {
    width: 70%;
    padding: 1rem;
    background-color: #ffffff;
}

/* 右サイドバー */
.sidebar-right {
    width: 15%;
    padding: 1rem;
    background: linear-gradient(to right, #ffffff, #aaaaaa);
    
}

/* モバイル対応（レスポンシブ） */
@media screen and (max-width: 768px) {
    .main-container {
        flex-direction: column;
    }

    .sidebar-left, .sidebar-right, .main-content {
        width: 100%;
    }
}

/* サイドバーのスタイル改善 */
.sidebar-menu {
    padding: 15px;
    background-color: #f8f9fa;
    border-radius: 8px;
    box-shadow: 0 2px 5px rgba(0,0,0,0.08);
}

.sidebar-header {
    margin-bottom: 15px;
    padding-bottom: 10px;
    border-bottom: 1px solid #e9ecef;
}

    .sidebar-header h5 {
        margin-bottom: 0;
        color: #343a40;
    }

.nav-pills .nav-link {
    padding: 10px 15px;
    margin-bottom: 8px;
    color: #495057;
    border-radius: 6px;
    transition: all 0.2s ease;
}

    .nav-pills .nav-link:hover {
        background-color: #e9ecef;
    }

    .nav-pills .nav-link.active {
        background-color: #007bff;
        color: white;
    }

    .nav-pills .nav-link i {
        margin-right: 8px;
        width: 20px;
        text-align: center;
    }

.sidebar-footer {
    margin-top: 20px;
    padding-top: 15px;
    border-top: 1px solid #e9ecef;
}

/*Helpのイメージ境界線*/
.helpImage-border{
    border: 2px solid black;
}


/* ========================================
   2026/1/12 最終デザイン - パターン3
   Bootstrap 優先度対策版（!important追加）
   Navbar + Sidebar 対応
   ======================================== */

/* ========================================
   Navbar（ヘッダー）
   ======================================== */
.navbar-gradient {
    background: linear-gradient(90deg, #E11080 0%, #FF6B6B 100%) !important;
    border-bottom: none !important;
}

    .navbar-gradient .navbar-brand {
        color: white !important;
        font-weight: bold;
    }

    .navbar-gradient .nav-link {
        color: white !important;
    }

        .navbar-gradient .nav-link:hover {
            color: rgba(255, 255, 255, 0.8) !important;
        }

.navbar-toggler-light .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba(255, 255, 255, 0.85)' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* ========================================
   ヒーローセクション
   ======================================== */
.hero-section {
    background: linear-gradient(135deg, #FFF8FA 0%, #FFECEC 100%) !important;
    padding: 50px 30px;
    border-radius: 10px;
    margin-bottom: 30px;
    text-align: center;
}

/* ========================================
   カード背景
   ======================================== */
.card {
    background: linear-gradient(135deg, #FFFFFF 0%, #FFEAF2 100%) !important;
    border: 1px solid rgba(255, 107, 107, 0.12) !important;
    box-shadow: 0 3px 10px rgba(0,0,0,0.1) !important;
    transition: transform 0.3s, box-shadow 0.3s;
}

    .card:hover {
        transform: translateY(-8px);
        box-shadow: 0 8px 20px rgba(0,0,0,0.15) !important;
    }

/* ========================================
   カードヘッダー共通
   ======================================== */
.card-header {
    font-weight: 600 !important;
    border: none !important;
    padding: 20px !important;
    font-size: 1.1rem !important;
}

/* ========================================
   カードヘッダー - 各証券会社
   ======================================== */

/* 楽天証券 */
.card-header-rakuten {
    background: linear-gradient(90deg, #FFCCBC 0%, #FFF9C4 100%) !important;
    color: #D32F2F !important;
}

/* DMM.com証券 */
.card-header-dmm {
    background: linear-gradient(90deg, #C5CAE9 0%, #E1F5FE 100%) !important;
    color: #1A237E !important;
}

/* SBI証券 */
.card-header-sbi {
    background: linear-gradient(90deg, #C8E6C9 0%, #F9FBE7 100%) !important;
    color: #1B5E20 !important;
}

/* 総合変換 */
.card-header-primary {
    background: linear-gradient(90deg, #F8BBD0 0%, #FFE8F0 100%) !important;
    color: #C91070 !important;
}

/* ========================================
   ボタン
   ======================================== */
.btn-custom {
    background: linear-gradient(135deg, #E11080 0%, #FF6B6B 100%) !important;
    border: none !important;
    color: white !important;
    padding: 8px 20px;
    border-radius: 5px;
    font-weight: 500;
    transition: all 0.3s;
}

    .btn-custom:hover {
        background: linear-gradient(135deg, #C10070 0%, #E95B5B 100%) !important;
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(225, 16, 128, 0.4);
        color: white !important;
    }

/* ========================================
   サイドバー
   ======================================== */
.sidebar {
    background: linear-gradient(180deg, #FFF8FA 0%, #FFECEC 100%) !important;
    border: 1px solid rgba(255, 107, 107, 0.12) !important;
    border-radius: 8px;
    min-height: 400px;
}

/* 右サイドバー（広告エリアなど） */
.sidebar-right {
    /* 右サイドバー固有のスタイルがあればここに追加 */
}

/* フッターグラデーション */
.footer-gradient {
    background: linear-gradient(135deg, #E11080 0%, #FF6B6B 100%);
    margin-top: auto;
}

    .footer-gradient a:hover {
        opacity: 0.8;
        transition: opacity 0.3s ease;
    }