@media only screen and (min-width: 576px) {
    .d-sm-flex {
        display: flex !important;
    }

    .d-sm-inline-flex {
        display: inline-flex !important;
    }

    .d-sm-none {
        display: none !important;
    }

    .d-sm-block {
        display: block !important;
    }

    .d-sm-inline-block {
        display: inline-block !important;
    }
}

/*@media only screen and (max-width: 1024px) {*/
@media only screen and (max-width: 1100px) {
    .--sp_nav_active {
        overflow: hidden;
    }

    .--sp_nav_active .gf_footer {
        position: fixed;
        width: 100vw;
        height: 100vh;
        left: 0;
        top: 0;
        background-color: #222;
        z-index: 10001;
        color: #fff;
        padding-top: 90px;
        overflow: auto;
    }

    .--sp_nav_active .gf_footer__sns {
        display: flex;
        align-items: center;
        margin-top: 20px;
    }

    .--sp_nav_active .gf_footer__sns .sns {
        width: calc(100% - 86px);
        margin-left: 16px;
    }

    .--sp_nav_active .gf_footer__sns .sns .sns_btn {
        margin-top: 0;
        width: auto;
    }

    .--sp_nav_active .gf_footer__lang {
        border-radius: 4px;
        background-color: #e8e8e8;
        width: 70px;
        color: #000;
        font-weight: 500;
    }

    .--sp_nav_active .gf_footer__lang a {
        display: flex;
        align-items: center;
        gap: 0 4px;
        padding: 10px 16px;
    }

    .--sp_nav_active .gf_footer .gf_footer__bottom {
        padding-bottom: 120px;
    }

    .--sp_nav_active .gf_footer .gf_footer__bottom__left {
        margin-top: 32px;
    }

    .--sp_nav_active .to_top_btn {
        display: none;
    }

    .--sp_nav_active .gf_footer__fixed_close {
        width: 20px;
        height: 20px;
        background-image: url("../img/top/close.png");
        position: absolute;
        top: -48px;
        right: 24px;
    }

    .col {
        padding-right: 15px;
        padding-left: 15px;
    }

    .gh_header .gh_header_content {
        height: 80px;
        display: block;
        padding: 0 16px;
        background: transparent;
        box-shadow: none;
    }

    .gh_header .g_inner_wrap {
        background: transparent;
    }

    .gh_header .gh_header__upper {
        height: 100%;
        border-radius: 5px;
        box-shadow: 0 3px 15px 0 rgba(0, 0, 0, 0.05);
        background-color: #fff;
    }

    .gh_header .gh_header__nav_btn {
        margin-top: 26px;
    }

    .gh_header__nav__english {
        display: none;
    }

    .home_page .important_notify__content {
        flex-wrap: wrap;
        margin-top: 20px;
        margin-bottom: 20px;
    }

    .home_page .important_notify__title {
        width: 100%;
        margin-right: 0;
        padding: 8px 0;
    }

    .home_page .important_notify__detail {
        width: 100%;
    }

    .home_page .g_carousel__item {
        height: 354px;
    }

    .home_page .g_carousel__item a {
        height: 100%;
    }

    .home_page .g_carousel__item img {
        height: 100%;
        object-fit: contain;
        object-position: right top;
    }

    .home_page .index_upper .slick-slider-nav {
        right: 16px;
    }

    .home_page .pickup__right {
        position: relative;
        left: -8px;
        margin-top: 16px;
        width: 100%;
    }

    .home_page .event p.index0 {
        margin-top: 0;
        padding-bottom: 240px;
    }


    .home_page .pickup {
        height: auto;
        padding-bottom: 50px;
        margin-bottom: 60px;
    }

    .home_page .pickup__left {
        padding-top: 0;
    }

    .home_page .pickup .carousel_customize .slick-slider-nav {
        left: auto;
        right: 50px;
        width: max-content;
    }

    .home_page .pickup .carousel_customize .slick-slider-nav.one-item {
        display: none;
    }

    .home_page .pickup .see_all_btn {
        bottom: -30px;
    }

    .home_page .topic .sns_btn {
        margin-top: 16px;
    }

    .home_page .event__description {
        max-width: 100%;
    }

    .home_page .study__description {
        max-width: 100%;
    }

    .home_page .study .pickup__right {
        margin-top: 32px;
    }

    .home_page .sponsored__description {
        max-width: 100%;
    }

    .home_page .sponsored .pickup__right {
        margin-top: 32px;
    }

    .home_page .attempt {
        padding-top: 60px;
    }

    .home_page .attempt .d-flex {
        justify-content: center;
        width: 100%;
        margin-bottom: 20px;
    }

    .home_page .about {
        background-image: url("../img/top/bg-about-mb.png");
        background-repeat: no-repeat;
        background-position: center;
        height: 675px;
        margin-top: 100px;
        z-index: 1;
        position: relative;
    }

    .home_page .about .g_inner_wrap {
        height: 100%;
    }

    .home_page .about__content {
        background-image: unset;
        height: 100%;
    }

    .home_page .about__content_in {
        margin-top: 170px;
    }

    .home_page .about__more {
        bottom: 112px;
    }

    .g_common_bottom .footer_contact__description dl {
        margin-bottom: 1em;
    }

    .g_common_bottom .footer_contact__description dl:last-child {
        margin-top: 1em;
        margin-bottom: 2em;
    }

    .g_common_bottom .footer_contact__description dt:after {
        display: none;
    }

    .g_common_bottom .footer_contact__description dt:before {
        content: "■";
    }

    .g_common_bottom .footer_contact__description dt {
        width: 100%;
        float: none;
    }

    .g_common_bottom .footer_contact__description dd {
        width: 100%;
        float: none;
    }

    .g_common_bottom .sns {
        position: relative;
        z-index: 0;
        padding: 62px 0;
    }

    .g_common_bottom .sns__content {
        flex-wrap: wrap;
    }

    .g_common_bottom .sns__left {
        width: 100%;
    }

    .g_common_bottom .sns__right {
        width: 100%;
        margin-top: 48px;
    }

    .g_common_bottom .related_links__content {
        flex-wrap: wrap;
    }

    .g_common_bottom .related_links__title_group {
        width: 100%;
        margin-right: 0;
    }

    .g_common_bottom .related_links .link_group {
        flex-wrap: wrap;
    }

    .g_common_bottom .related_links .link_group+.link_group {
        margin-top: 0;
    }

    .g_common_bottom .related_links .link_group:first-child {
        margin-top: 20px;
    }

    .g_common_bottom .related_links .link_group .link {
        margin-top: 8px;
    }

    .g_common_bottom .related_links .related_links__title_group:before {
        right: unset;
        left: 176px;
    }

    .gf_footer .gf_footer__nav .col {
        flex-basis: auto;
    }

    .gf_footer .gf_footer__bottom {
        flex-wrap: wrap;
        justify-content: center;
        border-top: none;
        margin-top: 0;
    }

    .gf_footer__bottom__left .gf_footer__logo {
        order: 1;
        margin-top: 48px;
        margin-bottom: 16px;
    }

    .gf_footer__bottom__left {
        width: 100%;
        flex-wrap: wrap;
        justify-content: center;
        border: none;
        padding-top: 0;
        margin-top: 48px;
    }

    /*
    .to_top_btn {
        top: -44px
    }
    */

    .gf_footer .gf_footer__nav__item {
        padding-bottom: 18px;
        border-bottom: 1px solid #4b4b4b;
    }

    .gf_footer .gf_footer__nav__item .footer-submenu-icon {
        background-image: url("../img/top/plus-circle.png");
        width: 15px;
        height: 15px;
    }

    .gf_footer .gf_footer__nav__item.show .footer-submenu-icon {
        background-image: url("../img/top/minus-circle.png");
    }

    .gf_footer .gf_footer__nav__item .sub_menu {
        height: 0;
        opacity: 0;
    }

    .gf_footer .gf_footer__nav__item.show .sub_menu {
        height: auto;
        opacity: 1;
        transition: all .3s ease;
    }

    .gf_footer .gf_footer__nav__item .sub_menu__item {
        margin-top: 0;
    }

    .gf_footer .gf_footer__nav__item.show .sub_menu__item {
        margin-top: 12px;
    }

    .gf_footer .sns {
        position: relative;
        z-index: 0;
        padding: 0;
        background-color: #222;
    }

    .gf_footer__nav_bottom ul {
        display: block;
        padding-bottom: 18px;
        border-bottom: 1px solid #4b4b4b;
        margin-top: 45px;
    }

    .gf_footer__nav_bottom ul li {
        margin-top: 20px;
    }

    .home_page .top_search .g_inner_wrap {
        display: block;
    }

    .home_page .top_search .g_inner_wrap .top_search_left {
        width: 100%;
        margin-bottom: 35px;
    }

    .home_page .top_search .g_inner_wrap .top_search_left .gsc-input-box {
        border-radius: 8px;
    }

    .home_page .top_search .g_inner_wrap .top_search_left.gsc-search-button-v2 {
        padding: 14px 10px;
    }

    .home_page .top_search .g_inner_wrap .top_search_right {
        width: 100%;
        margin-left: 0;
    }

    .home_page .top_search .g_inner_wrap table.gsc-search-box td.gsc-input {
        padding-right: 0;
    }
}

@media only screen and (max-width: 576px) {
    .home_page .pickup__right {
        width: calc(50vw + 544px - 260px);
    }

    .home_page .pickup .carousel_customize .slick-slider-nav {
        /*left: calc(100vw - 184px);*/
        left: auto;
        right: 115px;
    }

    /*
    .home_page .study:before {
        width: 1056px;
        height: 708px;
        background-image: url(../img/top/bg-study-mb.png);
        top: 0;
        right: -140px;
    }
*/

}

/*
@media only screen and (max-width: 400px) {
    .home_page .study:before {
        right: -170px;
    }
}
*/

@media only screen and (max-width: 576px) {
    .home_page .g_carousel__item .g_carousel_pc {
        display: none;
    }

    .home_page .g_carousel__item .g_carousel_sp {
        display: block;
    }

    .home_page .important_notify__detail .notify {
        display: block;
    }

    .home_page .important_notify__detail .notify_title {
        width: 100%;
    }
}

@media only screen and (max-width: 1100px) {
    .bg_top:before {
        left: 0;
    }

    .home_page .top_pickup_wrap ul {
        flex-wrap: wrap;
        margin-bottom: 0;
    }

    .home_page .top_pickup_wrap ul li {
        width: calc((100% - 24px) / 3);
        margin-bottom: 20px;
    }

    .home_page .pickup::after {
        height: 200px;
    }

    .home_page .top_attempt {
        color: #1A1A1A;
        margin-top: 45px;
    }

    .home_page .top_attempt .attempt__left {
        width: 100%;
        float: none;
        padding-top: 0;
        margin-bottom: 25px;
    }

    .home_page .top_attempt .attempt__right {
        width: 100%;
        float: none;
        box-sizing: border-box;
    }

    .home_page .top_attempt .attempt__right .flex-wrap {
        display: block !important;
    }

    .home_page .attempt_btn {
        width: 292px;
        margin-bottom: 10px;
    }

    .home_page .attempt_btn img {
        max-width: 100%;
    }

    .justify-content-end {
        margin: 0 auto;
        justify-content: center;
    }
}

@media screen and (min-width: 1100px) {
    .pc_none {
        display: none;
    }
}