@charset "utf-8";


.page-goods .lec_ct_bl_box img {
    height: auto;
}

.kou_main_ct_bl .page-text-box p {
    letter-spacing: 1px;
    line-height: 1.875;
}
.page-text-box p a {
    color: #0099e8;
    border-bottom: 1px solid #0099e8;
}
.page-text-box p a:hover {
    opacity: 0.7;
    border: none;
}

dl.contact dd {
    line-height: 1.5;
}

.lecture_in .lec_ct_bl_box_ct .h-goods {
    font-size: 1.3em;
}

.main_bl_list .thumb::before {
    content: none;
}
.main_bl_list .thumb:hover {
    opacity: 0.8;
}



@media screen and (max-width: 767px) {


    .page-text-box p {
        font-size: 3.38542vw;
        line-height: 1.8;
        letter-spacing: 1px;
    }
    .page-text-box p:not(:last-child) {
        margin-bottom: 3.90625vw;
    }



    .main_bl_list {
        gap: min(3vw, 35px);
    }
    .main_bl_list li {
        width: 43.6vw;
        margin-left: 0;
    }

    .thumb figcaption {
        font-size: 3.8vw;
    }

    .thumb-modal {
        width: 100%;
        margin: 10px auto 30px;
    }





}

@media screen and (max-width: 1080px) {

    .contact + .contact {
        margin-top: 10px;
    }

}

@media screen and (min-width: 768px) and (max-width: 1080px), print {

    .page-text-box p {
        font-size: 1.48148vw;
        line-height: 2.77778vw;
        letter-spacing: 1px;
    }
    .page-text-box p:not(:last-child) {
        margin-bottom: 2.03704vw;
    }


    .main_bl_list {
        gap: min(3vw, 35px);
    }
    .main_bl_list li {
        width: 30%;
    }


    .modal-box {
        overflow-y: scroll;
        display: block;
        height: 70svh;
    }

    .thumb-modal {
        width: 80%;
        margin: 0 auto 30px;
    }





}


@media screen and (min-width: 1081px), print {


    .page-text-box p {
        font-size: 1.6rem;
        line-height: 3rem;
        letter-spacing: 1px;
    }
    .page-text-box p:not(:last-child) {
        margin-bottom: 22px;
    }


    .main_bl_list {
        gap: min(1.6vw, 30px);
    }
    .main_bl_list li {
        width: 300px;
    }

    .des {
        display: flex;
    }
    .des dl {
        width: 50%;
    }
    .des dl:nth-of-type(2n+2) {
        border-left: none;
    }

    .modal-box {
        overflow-y: auto;
        max-height: 80svh;
    }
    .thumb-modal {
        width: 500px;
    }


}


@media screen and (min-width: 768px), print {

    .sp {
        display: none;
    }



    .page-goods .lec_ct_bl_box .lec_ct_bl_box_ct {
        padding-right: 0;
        padding-left: 30px;
    }

    .page-goods .lec_ct_bl_box figure {
        padding-top: 0;
    }

}