/* ======================================================
   ナビゲーション・カレント表示 完全版（青リバース設定）
   ====================================================== */

/* 1. 基本のレイアウト（横幅が広がりすぎないよう調整） */
.main_nav {
    display: flex;
    justify-content: center; /* メニューを中央寄せに */
    list-style: none;
    padding: 0;
    margin: 0;
}

.main_nav > li {
    position: relative; /* サブメニューの基準点 */
}

.main_nav li a {
    display: block;
    /* 上下の余白で高さを出し、左右は15pxに抑えて横広がりを防止 */
    padding: 15px 15px; 
    min-width: 110px;    /* 項目ごとの最小幅（お好みで調整） */
    font-size: 14px;
    font-weight: bold;
    color: #333;         /* 通常時の文字色 */
    text-decoration: none;
    text-align: center;
    line-height: 1.2;
    box-sizing: border-box;
    transition: all 0.3s;
}

/* 英語表記（span）の設定 */
.main_nav li a span {
    display: block;      /* 英語を上に、日本語を下に並べて横幅節約 */
    font-size: 10px;
    letter-spacing: 0.05em;
    margin-bottom: 3px;
    color: #666;         /* 通常時の英語の色 */
}

/* ------------------------------------------------------
   2. カレント表示（今いるページの青リバース）
   ------------------------------------------------------ */

/* メインメニュー & サブメニュー共通のカレント背景 */
.main_nav li.current > a {
    background-color: #003cab !important;
    border-radius: 4px;  /* 角を少し丸く */
}

/* カレント時の文字色を強制的に白にする（spanも含む） */
.main_nav li.current > a,
.main_nav li.current > a span,
.main_nav li.current > a i {
    color: #ffffff !important;
}

/* ------------------------------------------------------
   3. サブメニュー（ドロップダウン）の個別設定
   ------------------------------------------------------ */

.main_nav li ul {
    list-style: none;
    padding: 0;
    margin: 0;
    position: absolute;
    top: 100%;
    left: 0;
    background: #fff;
    box-shadow: 0 2px 10px rgba(0,0,0,0.1);
    z-index: 100;
    display: none; /* 通常は非表示 */
}

/* 親メニューホバーでサブメニュー表示 */
.main_nav li:hover > ul {
    display: block;
}

.main_nav li ul li a {
    padding: 12px 20px;
    text-align: left;    /* サブメニューは左寄せ */
    min-width: 200px;    /* サブメニューの横幅 */
    border-bottom: 1px solid #eee;
    background: #fff;
    color: #333 !important; /* 基本は黒 */
}

/* サブメニュー内のspan色リセット */
.main_nav li ul li a span {
    display: inline;     /* サブメニュー内では英語を横並びに（任意） */
    font-size: 11px;
    margin-right: 5px;
}

/* 【重要】サブメニュー自体がカレントの時の白文字設定 */
.main_nav ul li ul li.current > a,
.main_nav ul li ul li.current > a span {
    background-color: #003cab !important; /* 少し濃い青 */
    color: #ffffff !important;            /* 文字を白に */
}

/* ------------------------------------------------------
   4. ホバー（マウスを乗せた時）の挙動
   ------------------------------------------------------ */

.main_nav li a:hover:not(.current) {
    background-color: #f8f9fa;
    color: #003cab;
}

/* カレント部分をホバーしても白文字を維持 */
.main_nav li.current > a:hover {
    opacity: 0.9;
    color: #ffffff !important;
}