body {
    /* padding-top: 4.5rem; */
}
main {
    margin-top: 20px;
}
/* カスタムカラースタイル */
:root {
    --yf-blue: #365f91;
    --yf-light-blue: #e9eef3;
    --yf-text-gray: #5f6368;
}
.navbar {
    padding-top: 0px;
}
/* ロゴのスタイル */
.navbar-brand {
    display: flex;
    align-items: center;
}
.logo-box {
    color: white;
    font-weight: bold;
    /* padding: 0.5rem 0.8rem; */
    border-radius: 0.25rem;
    font-size: 1.25rem;
    margin-right: 0.75rem;
}

.logo-text-main {
    color: var(--yf-blue);
    font-weight: bold;
    font-size: 2rem;
    line-height: 1.2;
}
.logo-text-sub {
    color: var(--yf-text-gray);
    font-size: 0.8rem;
    display: block;
}
.nav-link {
    font-weight: bold;
}

/* ハンバーガーメニューボタン */
.navbar-toggler {
    border: none;
}
.navbar-toggler:focus {
    box-shadow: none;
}
/* メニューのスタイル (LGサイズ以上) */
@media (min-width: 992px) {
    #mainNavbar {
        background-color: var(--yf-blue);
        margin-top: 0.5rem; /* ロゴとの間隔 */
    }
    .navbar-expand-lg .navbar-nav .nav-link {
        color: white;
        padding: 0.75rem 1rem;
        font-size: 0.9rem;
        text-align: center;
        border-right: 1px solid rgba(255, 255, 255, 0.2);
    }
    .navbar-expand-lg .navbar-nav .nav-item:last-child .nav-link {
        border-right: none;
    }
    .navbar-expand-lg .navbar-nav .nav-link:hover {
        background-color: rgba(255, 255, 255, 0.1);
    }
    /* ドロップダウンメニューのスタイル */
    .navbar-expand-lg .dropdown-menu {
        background-color: var(--yf-blue);
        border-radius: 0;
        border: none;
        padding: 0;
    }
    .navbar-expand-lg .dropdown-item {
        color: white;
        text-align: center;
        padding: 0.75rem 1rem;
    }
    .navbar-expand-lg .dropdown-item:hover {
        background-color: rgba(255, 255, 255, 0.1);
    }
}

/* メニューのスタイル (LGサイズ未満) */
@media (max-width: 991.98px) {
    .navbar-collapse {
        background-color: var(--yf-blue);
    }
    .navbar-nav .nav-link {
        color: white;
        padding: 1rem 1.5rem;
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    }
    .navbar-nav .nav-item:last-child > .nav-link {
            border-bottom: none;
    }
    .dropdown-menu {
        background-color: transparent;
        border: none;
        padding: 0;
        margin: 0;
    }
    .dropdown-item {
        color: white;
        padding: 1rem 1.5rem 1rem 2.5rem; /* 字下げ */
        border-bottom: 1px solid rgba(255, 255, 255, 0.2);
    }
        .navbar-nav .dropdown-menu .nav-item:last-child .dropdown-item {
            border-bottom: none;
    }
}

.custom-list {
  list-style: none;
  padding-left: 3.5rem;
}

.custom-list li {
    list-style: disc;
}

.custom-list li.no-point {
    list-style: none;
    position: relative;
    left: -1.5rem ;
}

.custom-list-number {
  list-style: none; /* デフォルトの数字を非表示 */
  counter-reset: my-counter; /* カウンターをリセット */
}

.custom-list-number li {
  position: relative;
  padding-left: 1.5rem;
}

/*
    数字を表示するli要素にのみカウンタを増やし、
    ::before疑似要素で数字を表示する
*/
.custom-list-number li:not(.no-number) {
    counter-increment: my-counter;
}

.custom-list-number li.no-number {
    left: -1.5rem ;
}

/* 数字を表示したい`li`要素だけにスタイルを適用 */
.custom-list-number li:not(.no-number)::before {
  content: "("counter(my-counter) ")"; /* カウンターの数値を表示 */
  position: absolute;
  left: 0;
  font-weight: bold;
}

.custom-list-number li.no-point {
    left: -1.5rem ;
}