@charset "UTF-8";

/* ========================================
   基本設定
======================================== */

.group-list .fm-yumin {
    letter-spacing: 0.2em;
    text-align: center;
}

.site-footer .footer-top .footer-top__nav .nav-pc > li a {
    font-size: 0.85rem;
}

.cat-name.cat-slug__viceprincipal {
    background: #7b5136 !important;
}

.fb-container {
    float: none;
    width: 100%;
}

main .note-info .note-info-bg {
    background: #f4e4d7;
}

@media (max-width: 767.98px) {
    body {
        color: #2e2e2e;
    }

    .fb-container {
        width: 350px;
        margin: 0 auto;
    }
}


/* ========================================
   ヘッダー・学校切り替え
======================================== */

@media (min-width: 768px) {
    header .header-top .navbar {
        padding: 32.5px 0 12.5px;
    }
}

header .chage-school {
    position: absolute;
    top: 0;
    right: 0;
    padding: 5px 10px;
    background: #635094;
    border-radius: 0 0 8px 8px;
}

header .chage-school a {
    display: flex;
    align-items: center;
    color: #ffffff;
    font-size: 0.8125rem;
}

header .chage-school-sp {
    padding: 10px;
    margin-bottom: 15px;
    background: #4b3b8f;
    border-radius: 8px;
}

header .chage-school-sp a {
    display: block;
    color: #ffffff;
    text-align: center;
}

@media (max-width: 767.999px) {
    header .chage-school {
        display: none;
    }
}

@media (max-width: 767.98px) {
    header .navbar .navbar-brand img {
        width: 260px;
    }
}


/* ========================================
   動画ボタン
======================================== */

@media (min-width: 768px) {
    a.btn.btn-link-movie {
        min-width: 320px;
        padding: 10px 0;
        margin-top: 24px;
        color: #35664f;
        background: #ffffff;
        border: 1px solid #35664f;
        font-size: 1.125rem;
        line-height: 1;
    }
}

@media (max-width: 767.98px) {
    a.btn.btn-link-movie {
        display: block;
        padding: 15px 0;
        margin-top: 11px;
        color: #35664f;
        background: #ffffff;
        border: 1px solid #35664f;
        font-size: 1.125rem;
        line-height: 1;
    }
}


/* ========================================
   投稿カテゴリー
======================================== */

@media (min-width: 768px) {
    main.main-archive .page-body .page-body__content .cat-name,
    main.main-top .page-body .page-body__content .cat-name {
        width: 90px;
        padding: 3px 0;
        font-size: 0.9rem;
    }
}

main.main-archive .page-body .page-body__content .cat-name.cat-slug__announce_s,
main.main-archive .page-body .page-body__content .cat-name.cat-slug__announce_p,
main.main-top .page-body .page-body__content .cat-name.cat-slug__announce_s,
main.main-top .page-body .page-body__content .cat-name.cat-slug__announce_p {
    background: #d18b57;
}

main.main-archive .page-body .page-body__content .cat-name.cat-slug__schoollife_s,
main.main-archive .page-body .page-body__content .cat-name.cat-slug__schoollife_p,
main.main-top .page-body .page-body__content .cat-name.cat-slug__schoollife_s,
main.main-top .page-body .page-body__content .cat-name.cat-slug__schoollife_p {
    background: #467f5f;
}

main.main-archive .page-body .page-body__content .cat-name.cat-slug__exam_s,
main.main-archive .page-body .page-body__content .cat-name.cat-slug__exam_p,
main.main-top .page-body .page-body__content .cat-name.cat-slug__exam_s,
main.main-top .page-body .page-body__content .cat-name.cat-slug__exam_p {
    background: #a85f32;
}

main.main-archive .page-body .page-body__content .cat-name.cat-slug__event_s,
main.main-archive .page-body .page-body__content .cat-name.cat-slug__event_p,
main.main-top .page-body .page-body__content .cat-name.cat-slug__event_s,
main.main-top .page-body .page-body__content .cat-name.cat-slug__event_p {
    background: #7163a2;
}


/* ========================================
   トップページ
======================================== */

@media (min-width: 992px) {
    main.main-top .top-post .top-post-tabs .nav-item a {
        width: 180px;
    }
}

main.main-top .top-post .top-post-tabs .nav-item a {
    width: 100px;
    padding: 3px 0;
    color: #d18b57;
    border: 1px solid #d18b57;
    border-radius: 10px;
    font-size: 0.8125rem;
    text-align: center;
}

main.main-top .top-admission {
    background: #f5f1ee;
}


/* ========================================
   PCメインメニュー
======================================== */

header .header-bottom.header-pc {
    background: #b9713e;
}

header .header-bottom.header-pc .nav > li > a,
header .header-bottom.header-pc .dropdown-toggle {
    color: #ffffff;
    background: #b9713e;
}

header .header-bottom.header-pc .nav > li > a:hover,
header .header-bottom.header-pc .menu-item-has-children:hover > .dropdown-toggle {
    color: #ffffff;
    background: #d18b57;
}

header .header-bottom.header-pc .dropdown-menu {
    padding: 0;
    background: #f4e4d7;
    border: none;
}

header .header-bottom.header-pc .dropdown-menu .dropdown-item {
    color: #b9713e !important;
    background: #f4e4d7 !important;
    border-top: 1px solid #ffffff !important;
}

header .header-bottom.header-pc .dropdown-menu .dropdown-item:hover,
header .header-bottom.header-pc .dropdown-menu .dropdown-item:focus,
header .header-bottom.header-pc .dropdown-menu .dropdown-item:active {
    color: #ffffff !important;
    background: #b9713e !important;
}


/* ========================================
   スマホヘッダー・ハンバーガーメニュー
======================================== */

@media (max-width: 767.98px) {
    header .header-top {
        background: #ffffff;
        border-bottom: 1px solid #dddddd;
    }

    header .navbar-toggler,
    header .navbar-toggler i {
        color: #b9713e !important;
        background: transparent;
        border: none;
    }

    header .navbar-toggler:hover,
    header .navbar-toggler:focus,
    header .navbar-toggler:hover i,
    header .navbar-toggler:focus i {
        color: #d18b57 !important;
        outline: none;
        box-shadow: none;
    }

    header .header-top .header-sp {
        border-top: 1px solid #dddddd;
    }

    header .header-top .header-sp .nav > li > a {
        color: #b9713e !important;
        border-bottom: 1px solid #dddddd;
    }

    header .header-top .header-sp .nav a {
        color: #b9713e;
    }

    header .header-top .header-sp .nav a::before,
    header .header-top .header-sp .nav a::after,
    header .header-top .header-sp .nav .dropdown-toggle::before,
    header .header-top .header-sp .nav .dropdown-toggle::after {
        color: #b9713e !important;
        border-color: #b9713e !important;
    }

    header .header-top .header-sp .nav i,
    header .header-top .header-sp .nav .fa,
    header .header-top .header-sp .nav .fas,
    header .header-top .header-sp .nav .far {
        color: #b9713e !important;
    }

    header .header-top .header-sp .nav .dropdown-menu {
        background: #ffffff;
        border-bottom: 1px solid #dddddd;
    }

    header .header-top .header-sp .nav .dropdown-menu .dropdown-item {
        color: #b9713e !important;
        background: #f4e4d7;
        border-bottom: 1px solid #dddddd;
    }

    header .header-top .header-sp .nav .dropdown-menu .dropdown-item:hover,
    header .header-top .header-sp .nav .dropdown-menu .dropdown-item:focus {
        color: #ffffff !important;
        background: #d18b57;
    }
}


/* ========================================
   スマホフッターメニュー
======================================== */

@media (max-width: 767.98px) {
    .site-footer .footer-top__nav .nav-sp {
        display: flex;
        width: 100%;
        flex-flow: row wrap;
    }

    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children {
        position: relative;
        flex: 1 1 100%;
        background: #b9713e !important;
        border-bottom: 1px dotted #ffffff !important;
        text-align: center;
    }

    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children > a {
        padding: 7px 0;
        color: #ffffff !important;
        background: #b9713e !important;
    }

    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children > a:hover,
    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children > a:focus,
    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children > a:active,
    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children > a[aria-expanded="true"] {
        color: #ffffff !important;
        background: #b9713e !important;
        opacity: 1;
    }

    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children > a::after {
        color: #ffffff !important;
        border: 0 !important;
    }

    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children .dropdown-menu {
        width: 100%;
        padding: 0;
        margin: 0;
        background: #ffffff;
        border: none;
        text-align: center;
    }

    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children .dropdown-menu .dropdown-item {
        position: relative;
        padding: 7px 0;
        color: #b9713e !important;
        background: #ffffff !important;
        border-bottom: 1px dotted #b9713e !important;
    }

    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children .dropdown-menu .dropdown-item:last-child {
        border-bottom: none !important;
    }

    .site-footer .footer-top__nav .nav-sp > li.menu-item-has-children .dropdown-menu .dropdown-item::after {
        color: #b9713e !important;
        border: 0 !important;
    }

    .site-footer .footer-top__nav .nav-sp > li:not(.menu-item-has-children) {
        position: relative;
        flex: 0 1 50%;
        box-sizing: border-box;
        background: #ffffff !important;
        border-right: 1px dotted #b9713e !important;
        border-bottom: 1px dotted #b9713e !important;
    }

    .site-footer .footer-top__nav .nav-sp > li:not(.menu-item-has-children) > a {
        display: block;
        padding: 7px 32px 7px 0;
        margin-left: 10px;
        color: #b9713e !important;
        background: #ffffff !important;
        border: none !important;
    }

    .site-footer .footer-top__nav .nav-sp > li:not(.menu-item-has-children) > a:hover,
    .site-footer .footer-top__nav .nav-sp > li:not(.menu-item-has-children) > a:focus,
    .site-footer .footer-top__nav .nav-sp > li:not(.menu-item-has-children) > a:active {
        color: #b9713e !important;
        background: #ffffff !important;
    }

    .site-footer .footer-top__nav .nav-sp > li:not(.menu-item-has-children)::after {
        color: #b9713e !important;
        border: 0 !important;
    }
}


/* ========================================
   各種ボタン
======================================== */

.btn.btn-block.btn-link-blog {
    color: #b9713e !important;
    background-color: #ffffff !important;
    border: 1px solid #b9713e !important;
    border-radius: 9999px !important;
}

.btn.btn-block.btn-link-blog:hover,
.btn.btn-block.btn-link-blog:focus,
.btn.btn-block.btn-link-blog:active {
    color: #ffffff !important;
    background-color: #b9713e !important;
    border-color: #b9713e !important;
}

.btn.btn-block.btn-link-blog.blog-p::after {
    display: none !important;
    content: none !important;
}

.btn.btn-link-admission.adm-exam_p {
    color: #b9713e !important;
    background-color: #ffffff !important;
    border: 1px solid #b9713e !important;
    border-radius: 0 !important;
}

.btn.btn-link-admission.adm-exam_p::before,
.btn.btn-link-admission.adm-exam_p::after,
.btn.btn-link-admission.adm-exam_p:hover::before,
.btn.btn-link-admission.adm-exam_p:hover::after,
.btn.btn-link-admission.adm-exam_p:focus::before,
.btn.btn-link-admission.adm-exam_p:focus::after {
    color: #b9713e !important;
    border-color: #b9713e !important;
}

.btn.btn-link-admission.adm-exam_p:hover,
.btn.btn-link-admission.adm-exam_p:focus,
.btn.btn-link-admission.adm-exam_p:active {
    color: #b9713e !important;
    background-color: #ffffff !important;
    border-color: #b9713e !important;
}


/* ========================================
   投稿カード
======================================== */

main.main-top .post-list .p-title,
main.main-top .post-list .p-title a,
main.main-archive .post-list .p-title,
main.main-archive .post-list .p-title a {
    color: #333333 !important;
}

main.main-top .post-list .p-title a:hover,
main.main-top .post-list .p-title a:focus,
main.main-archive .post-list .p-title a:hover,
main.main-archive .post-list .p-title a:focus {
    color: #333333 !important;
}


/* ========================================
   スマホフッター：住所・電話番号
======================================== */

@media (max-width: 767.98px) {
    .site-footer .footer-top__info .info {
        width: 100%;
        margin-top: 12px;
        color: #333333;
        text-align: center;
    }

    .site-footer .footer-top__info .info__address,
    .site-footer .footer-top__info .info__tel {
        margin: 0;
        color: #333333 !important;
        line-height: 1.7;
        text-align: center !important;
    }

    .site-footer .footer-top__info .info__tel {
        margin-top: 4px;
    }

    .site-footer .footer-top__info .info__tel a,
    .site-footer .footer-top__info .info__tel a:visited {
        color: #b9713e !important;
        text-decoration: none;
    }

    .site-footer .footer-top__info .info__tel a:hover,
    .site-footer .footer-top__info .info__tel a:focus,
    .site-footer .footer-top__info .info__tel a:active {
        color: #d18b57 !important;
        text-decoration: none;
    }
}


/* ========================================
   パンくず
======================================== */

.breadcrumbs a,
.breadcrumbs a:visited {
    color: #b9713e !important;
}

.breadcrumbs a:hover,
.breadcrumbs a:focus {
    color: #d18b57 !important;
    text-decoration: none;
}


/* ========================================
   下層ページ：サイドメニュー
   PCは常時表示／SPは開閉式
======================================== */

.main-page .sidebar-menu .nav {
    width: 100%;
}

.main-page .sidebar-menu .nav > li.menu-item-has-children > .nav-link,
.main-page .sidebar-menu .nav > li.menu-item-has-children > .dropdown-toggle {
    display: block;
    width: 100%;
    color: #ffffff !important;
    background-color: #b9713e !important;
    border: none !important;
    font-weight: normal;
    text-align: center;
}

.main-page .sidebar-menu .nav > li.menu-item-has-children > .nav-link:hover,
.main-page .sidebar-menu .nav > li.menu-item-has-children > .nav-link:focus,
.main-page .sidebar-menu .nav > li.menu-item-has-children > .dropdown-toggle:hover,
.main-page .sidebar-menu .nav > li.menu-item-has-children > .dropdown-toggle:focus,
.main-page .sidebar-menu .nav > li.menu-item-has-children.show > .dropdown-toggle,
.main-page .sidebar-menu .nav > li.menu-item-has-children > .dropdown-toggle[aria-expanded="true"] {
    color: #ffffff !important;
    background-color: #b9713e !important;
}

.main-page .sidebar-menu .dropdown-menu {
    width: 100%;
    padding: 0;
    margin: 0;
    background-color: #ffffff !important;
    border: none !important;
    border-radius: 0;
    box-shadow: none !important;
}

.main-page .sidebar-menu .dropdown-menu .dropdown-item {
    display: block;
    width: 100%;
    padding: 16px 20px;
    color: #b9713e !important;
    background-color: #ffffff !important;
    border-bottom: 1px dotted #d18b57 !important;
    font-weight: normal;
}

.main-page .sidebar-menu .dropdown-menu .dropdown-item:hover,
.main-page .sidebar-menu .dropdown-menu .dropdown-item:focus {
    color: #b9713e !important;
    background-color: #f4e4d7 !important;
}

.main-page .sidebar-menu .dropdown-menu .dropdown-item.active,
.main-page .sidebar-menu .dropdown-menu .dropdown-item[aria-current="page"] {
    color: #d18b57 !important;
    background-color: #f4e4d7 !important;
}

@media (min-width: 768px) {
    .main-page .sidebar-menu .nav {
        border: none !important;
    }

    .main-page .sidebar-menu .nav > li.menu-item-has-children.mb-3 {
        margin-bottom: 0 !important;
    }

    .main-page .sidebar-menu .dropdown-menu {
        position: static !important;
        display: block !important;
        padding: 0 !important;
        margin: 0 !important;
        border-right: 1px solid #b9713e !important;
        border-bottom: 1px solid #b9713e !important;
        border-left: 1px solid #b9713e !important;
        transform: none !important;
    }

    .main-page .sidebar-menu .dropdown-menu .dropdown-item:last-child {
        margin-bottom: 0 !important;
        border-bottom: none !important;
    }

    .main-page .sidebar-menu .dropdown-toggle::after {
        display: none !important;
    }
}

@media (max-width: 767.98px) {
    .main-page .sidebar-menu {
        margin-bottom: 1rem;
    }

    .main-page .sidebar-menu .navbar {
        width: 100%;
        padding: 0;
        margin: 0;
    }

    .main-page .sidebar-menu .nav {
        width: 100%;
        padding: 0;
        margin: 0;
        border: none !important;
    }

    .main-page .sidebar-menu .nav > li.menu-item-has-children {
        width: 100%;
        padding: 0 !important;
        margin: 0 !important;
    }

    .main-page .sidebar-menu .nav > li.menu-item-has-children > .dropdown-toggle {
        position: relative;
        display: block;
        width: 100%;
        padding: 10px 42px 10px 15px;
        margin: 0;
        color: #ffffff !important;
        background-color: #b9713e !important;
        border: none !important;
        border-radius: 0;
        line-height: 1.5;
        text-align: center;
    }

    .main-page .sidebar-menu .dropdown-menu {
        position: static !important;
        display: none !important;
        width: 100%;
        padding: 0 !important;
        margin: 0 !important;
        border: none !important;
        transform: none !important;
    }

    .main-page .sidebar-menu li.dropdown.show > .dropdown-menu,
    .main-page .sidebar-menu .dropdown-menu.show {
        display: block !important;
    }

    .main-page .sidebar-menu .dropdown-toggle::after {
        position: absolute;
        top: 50%;
        right: 16px;
        display: inline-block !important;
        margin: 0;
        color: #ffffff !important;
        border-color: #ffffff !important;
        transform: translateY(-50%);
    }

    .main-page .sidebar-menu .dropdown-menu .dropdown-item {
        width: 100%;
        padding: 11px 15px;
        color: #b9713e !important;
        background: #ffffff !important;
        border-bottom: 1px dotted #d18b57 !important;
        text-align: center;
    }

    .main-page .sidebar-menu .dropdown-menu .dropdown-item:last-child {
        border-bottom: 1px solid #d18b57 !important;
    }
}
