@charset "UTF-8";

/* CSS Document */
.pc_only {
    display: block;
}

.sp_only {
    display: none;
}

.faculty h3 {
    margin-block-start: 4rem;
    font-size: 2.4rem;
    color: var(--main-color);
    margin-block-end: 1.6rem;
    line-height: 1.4;
}

.flexbox {
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
}

.contentInner {
    max-width: 106.4rem;
    margin: 0 auto;
    margin-block-start: 8rem;
    padding: 0 1.6rem;
}

.bullet-list_colorbox {
    padding-inline: 2.4rem;
    padding-block-start: 2.4rem;
    padding-block-end: 3.2rem;
    margin-block-end: 3.8rem;
}

.bullet-list_colorbox ul {
    padding-block-start: 0;
    padding-inline-start: 0;
}

.bullet-list_colorbox ul li {
    padding-block-start: 0;
    line-height: 2rem;
    margin-block-start: 0;
    margin-block-end: 1.6rem;
}

.bullet-list_colorbox ul li:last-child {
    margin-block-end: 0rem;
}

.bullet-list_colorbox .list_st1 {
    padding-block-start: 2rem;
    padding-block-end: 2rem;
}

.bullet-list_colorbox .list_st1 li {
    list-style: none;
    margin-block-start: 0;
    padding-inline-start: 0;
}

.bullet-list_colorbox .list_st1 li::before {
    content: none;
}

.bullet-list_colorbox .list_st1 li a {
    width: 32rem;
    background-color: #ffffff;
}

.bullet-list_colorbox .t_st1 table {
    width: 100%;
    background-color: #ffffff;
}

/**************************************************
 mainVisual
**************************************************/

.mainVisual {
    margin-block-start: 15rem;
    height: 30.7rem;
    position: relative;
    background: url(../img/course/course/mv_course.jpg)no-repeat top center;
    background-size: cover;
}

.mainVisual h2 {
    font-size: 8rem;
    max-width: 106.4rem;
    margin-inline: auto;
    color: var(--main-color);
    font-family: var(--raj);
    margin-block-end: 0;
}


.mainVisual h2 span {
    display: block;
    font-size: 1.6rem;
    margin-block: 1.0rem;
}

.faculty .mainVisual {
    margin-block-start: 0;
    height: 24rem;
    width: 100%;
    position: relative;
    background: none;
}

.faculty .mainVisual h2 {
    font-size: 3.2rem;
    color: #000;
    flex-wrap: wrap;
    display: flex;
    margin-block-end: 0;
    display: flex;
    align-content: center;
    height: 100%;
    line-height: 1.3;
    width: 39%;
    padding-inline-start: calc((100vw - 106.4rem) / 2);
    margin-inline: initial;
    font-family: "Noto Sans JP", sans-serif;

}

.faculty .mainVisual h2 span {
    position: relative;
    margin-block: 0 1.6rem;
    width: 100%;
    padding-inline-start: 1.6rem;
}

.faculty .mainVisual h2 span::before {
    content: '';
    width: 0.8rem;
    height: 0.8rem;
    background-color: var(--main-color);
    position: absolute;
    top: 38%;
    transform: translate(0, -48%);
    left: 0;
    border-radius: 50%;
}

.faculty .mainVisual .main_img {
    width: 59%;
    height: 100%;
    overflow-y: clip;
}

.faculty .mainVisual .main_img img {
    object-fit: cover;
    height: 100%;
    width: 100%;
    border-radius: 8px 0 0 8px;
}


/**************************************************
course_top
**************************************************/

/* co_course_summary */

.co_course_summary {
    max-width: 106.4rem;
    margin-inline: auto;
    margin-block-start: 7.8rem;
}

.co_course_summary h2 {
    font-size: 4rem;
    color: var(--main-color);
    margin-block-end: 3.8rem;
    line-height: 1.4;
}

.co_course_summary>ul {
    position: relative;
}

.co_course_summary ul li {
    width: calc(100% / 3);
}


.co_course_summary ul li a {
    padding-inline: 2.4rem;
    padding-block: 4rem;
    display: inline-block;
    position: relative;
    border-radius: 4px;
}

.co_course_summary ul li a::after {
    content: "";
    width: 0.1rem;
    height: 100%;
    background-color: #DCE2EA;
    position: absolute;
    right: 0;
    top: 0;
    transition: .2s;
}

.co_course_summary ul li:last-child a::after {
    content: "";
    width: 0;
    height: 0;
}

.co_course_summary ul li a:hover {
    opacity: 1;
    box-shadow: 0px 0px 2rem #e5f1ff;
    box-sizing: border-box;
}

.co_course_summary ul li a:hover::after {
    opacity: 0;
}


.co_course_summary ul li a img {
    width: 100%;
}

.co_course_summary ul li a:hover img {
    opacity: 1;
}

.co_course_summary ul li a h3 {
    font-size: 2rem;
    color: var(--text-color);
    line-height: 2.4rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-block-start: 2.4rem;
    margin-block-end: 0;
    margin-block-start: 0;
}

.co_course_summary ul li a h3::after {
    content: '';
    width: 4rem;
    height: 4rem;
    background: url(../img/common/arrow/arrow.svg) no-repeat center center;
    background-size: 100%;
    transition: .2s;
}

.co_course_summary ul li a:hover h3::after {
    background: url(../img/common/arrow/arrow_h.svg)no-repeat center center;
    background-size: 100%;
}

/**************************************************
course
**************************************************/

/* co_course_list */

.co_course_list {
    max-width: 106.4rem;
    margin-inline: auto;
    margin-block-start: 7.8rem;
}

.co_course_list h2 {
    font-size: 4rem;
    color: var(--main-color);
    margin-block-end: 3.8rem;
    line-height: 1.4;
}

.co_course_list>ul {
    margin-block-end: 8rem;
    position: relative;
}

.co_course_list ul li:first-child {
    width: 30%;
}

.co_course_list ul li:last-child {
    width: 70%;
    padding-inline-start: 4rem;
}

@media screen and (min-width: 767px) {
    .co_course_list ul li.ei_electronics::after {
        content: '';
        width: 23.8rem;
        height: 100%;
        background: url(../img/course/course/icon_ei_electronics.png) no-repeat center center;
        background-size: 100%;
        position: absolute;
        right: -7rem;
        top: -16rem;
        z-index: -1;
    }

    .co_course_list ul li.ei_telecommunication::after {
        content: '';
        width: 22.6rem;
        height: 100%;
        background: url(../img/course/course/icon_ei_telecommunication.png) no-repeat center center;
        background-size: 100%;
        position: absolute;
        right: -7rem;
        top: -11rem;
        z-index: -1;
    }

    .co_course_list ul li.au_architecture::after {
        content: '';
        width: 17.5rem;
        height: 100%;
        background: url(../img/course/course/icon_au_architecture.png) no-repeat center center;
        background-size: 100%;
        position: absolute;
        right: -4rem;
        top: -11rem;
        z-index: -1;
    }

    .co_course_list ul li.au_disaster-mitigation::after {
        content: '';
        width: 17.5rem;
        height: 100%;
        background: url(../img/course/course/icon_au_disaster-mitigation.png) no-repeat center center;
        background-size: 100%;
        position: absolute;
        right: -5rem;
        top: -12rem;
        z-index: -1;
    }

    .co_course_list ul li.ms_manufacturing::after {
        content: '';
        width: 20.8rem;
        height: 100%;
        background: url(../img/course/course/icon_ms_manufacturing.png) no-repeat center center;
        background-size: 100%;
        position: absolute;
        right: -6rem;
        top: -10rem;
        z-index: -1;
    }

    .co_course_list ul li.ms_robotics::after {
        content: '';
        width: 18.6rem;
        height: 100%;
        background: url(../img/course/course/icon_ms_robotics.png) no-repeat center center;
        background-size: 100%;
        position: absolute;
        right: -5rem;
        top: -10rem;
        z-index: -1;
    }

    .co_course_list ul li.fe_food-chemistry::after {
        content: '';
        width: 20.2rem;
        height: 100%;
        background: url(../img/course/course/icon_fe_food-chemistry.png) no-repeat center center;
        background-size: 100%;
        position: absolute;
        right: -5rem;
        top: -8rem;
        z-index: -1;
    }
}

.co_course_list h3 {
    font-size: 2.4rem;
    color: var(--text-color);
    line-height: 4.8rem;
    position: relative;
    margin-block-end: 2.4rem;
    padding-inline-start: 6rem;
    margin-block-start: 0;
}


.co_course_list ul li.ei_electronics h3::before {
    content: '';
    width: 4.8rem;
    height: 4.8rem;
    background: url(../img/course/course/icon_ei_electronics_s.png) no-repeat center center;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.co_course_list ul li.ei_telecommunication h3::before {
    content: '';
    width: 4.8rem;
    height: 4.8rem;
    background: url(../img/course/course/icon_ei_telecommunication_s.png) no-repeat center center;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.co_course_list ul li.au_architecture h3::before {
    content: '';
    width: 4.8rem;
    height: 4.8rem;
    background: url(../img/course/course/icon_au_architecture_s.png) no-repeat center center;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.co_course_list ul li.au_disaster-mitigation h3::before {
    content: '';
    width: 4.8rem;
    height: 4.8rem;
    background: url(../img/course/course/icon_au_disaster-mitigation_s.png) no-repeat center center;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.co_course_list ul li.ms_manufacturing h3::before {
    content: '';
    width: 4.8rem;
    height: 4.8rem;
    background: url(../img/course/course/icon_ms_manufacturing_s.png) no-repeat center center;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.co_course_list ul li.ms_robotics h3::before {
    content: '';
    width: 4.8rem;
    height: 4.8rem;
    background: url(../img/course/course/icon_ms_robotics_s.png) no-repeat center center;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.co_course_list ul li.fe_food-chemistry h3::before {
    content: '';
    width: 4.8rem;
    height: 4.8rem;
    background: url(../img/course/course/icon_fe_food-chemistry_s.png) no-repeat center center;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}

.co_course_list ul li.new-course h3::before {
    content: '';
    width: 4.8rem;
    height: 4.8rem;
    background: url(../img/course/course/icon_renovation.jpg) no-repeat center center;
    background-size: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
}


.co_course_list h4 {
    font-size: 2.4rem;
    color: var(--main-color);
    line-height: 1.3;
    margin-block-end: 1.6rem;
}

.co_course_list_text {
    padding-block-end: 1.6rem;
    padding-block-start: 0;
    font-weight: var(--font-bold);
}

.co_course_list_box {
    background-color: #E5F1FF;
    padding-block: 1.6rem;
    padding-inline: 1.6rem;
    border-radius: 4px;
}

.co_course_list_keyword {
    font-size: 1.6rem;
    font-weight: var(--font-bold);
    color: var(--text-color);
    padding-block-start: 0;
    padding-block-end: 1rem;
}

.co_course_list_box>span {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: 500;
    background-color: #ffffff;
    color: var(--main-color);
    border: 1px solid var(--main-color);
    border-radius: 16px;
    padding-inline: 1.2rem;
    line-height: 1.5;
    padding-block: .5rem;
    margin-inline-end: 1rem;
    margin-block-end: 1rem;
}

.co_course_list_link {
    display: flex;
    justify-content: flex-end;
    padding-block-start: 2.4rem;
}

.co_course_list_link a {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    font-size: 1.6rem;
    font-weight: var(--font-bold);
    color: var(--text-color);
    padding-inline-start: 3.6rem;
    padding-block: 2.4rem;
}

.co_course_list_link a::before {
    content: '';
    width: 5.6rem;
    height: 5.6rem;
    background: url(../img/common/arrow/arrow_h.svg) no-repeat center center;
    background-size: 100%;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: -4rem;
    transition: .2s;
}

.co_course_list_link a:hover::before {
    content: '';
    width: 5.6rem;
    height: 5.6rem;
    background: url(../img/common/arrow/arrow.svg) no-repeat center center;
    background-size: 100%;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: -4rem;
    transition: .2s;
}

/**************************************************
message
**************************************************/

.faculty_message_block {
    margin-block-end: 8rem;
}

.faculty_message_block ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(1, 1fr);
    gap: 4rem;
    align-items: center;
}

.faculty_message_block ul>li {}

.faculty_message_block ul>li>h2 {
    font-size: 3.2rem;
    font-weight: var(--font-bold);
    color: var(--main-color);
}

.faculty_message_block ul>li>img {}

.faculty_message_block p {
    margin-block-start: 4rem;
    text-align: justify;
    line-height: 2;
}

.faculty_message_block .president_name span,
.faculty_message_block .kyozyu_name span {
    font-size: 2rem;
    font-weight: var(--font-bold);
    display: block;
    line-height: 1.5;
}

/**************************************************
faculty_support-system
**************************************************/

.faculty_support-system_inner h2 {
    font-size: 3.6rem;
    color: var(--main-color);
    margin-block-end: 2.4rem;
    line-height: 1.4;
    margin-block-start: 8rem;
}

.faculty_support-system_inner h3 {
    font-size: 2.4rem;
    color: var(--main-color);
    line-height: 1.5;
}


.faculty_support-system_inner p {
    padding-block-start: 0;
    line-height: 1.5;
}

.faculty_support-system_inner .caution-text {
    margin-block-start: 1.6rem;
}

.faculty_support-system_inner .list_st1 {
    padding-block-start: 2.4rem;
}

.faculty_support-system_inner .bullet-list_colorbox>ul>li>span {
    position: relative;
    font-size: 1.6rem;
    font-weight: var(--font-bold);
    padding-block-end: .8rem;
    display: block;
    line-height: 1;
}

.faculty_support-system_inner .bullet-list_colorbox>ul>li::before {
    content: '';
    width: 0.8rem;
    height: 0.8rem;
    background-color: var(--main-color);
    border-radius: 50%;
    position: absolute;
    top: 1rem;
    left: 0;
}


/**************************************************
.faculty_teacher-message /.senior-message
**************************************************/

.faculty_teacher-message_inner p,
.faculty_senior-message_inner p {
    padding-block-start: 0rem;
}

.faculty_teacher-message_inner .list_st1,
.faculty_senior-message_inner .list_st1 {
    justify-content: flex-start;
}

.faculty_teacher-message_inner .list_st1>li,
.faculty_senior-message_inner .list_st1>li {
    width: calc(100% / 4 - 3rem);
    margin-inline-end: 4rem;
    margin-block-start: 0;
    margin-block-end: 2.4rem;
}

.faculty_teacher-message_inner .list_st1>li:nth-child(4n),
.faculty_senior-message_inner .list_st1>li:nth-child(4n) {
    margin-inline-end: 0rem;
}

.faculty_teacher-message_inner .list_st1>li a {
    padding-inline: 1.6rem;
    padding-block: 2.4rem;
}

.faculty_senior-message_inner .list_st1>li a {
    padding-inline: 1.6rem;
    padding-block: 1.2rem;
}

.faculty_teacher-message_block,
.faculty_senior-message_block {
    margin-block-start: 4.8rem;
    margin-block-end: 8rem;
}

.faculty_teacher-message_block .flexbox,
.faculty_senior-message_block .flexbox {
    display: flex;
    justify-content: flex-start;
}

.faculty_teacher-message_block .flexbox li>img,
.faculty_senior-message_block .flexbox li>img {
    width: 32rem;
    max-height: 21.3rem;
    object-fit: cover;
    object-position: top;
}

.faculty_teacher-message_block ul>li:nth-child(2n),
.faculty_senior-message_block ul>li:nth-child(2n) {
    padding-inline-start: 4rem;
}

.faculty_teacher-message_block ul>li .teacher_name,
.faculty_senior-message_block ul>li .senior_name {
    font-size: 2.2rem;
    font-weight: var(--font-bold);
}

.faculty_teacher-message_block ul>li .teacher_text,
.faculty_senior-message_block ul>li .senior_text {
    padding-block-start: 1.6rem;
}

.faculty_teacher-message_block ul>li .lab_link {
    display: flex;
    justify-content: flex-start;
    padding-inline-start: 4rem;
    margin-block-start: 2.4rem;
}


.faculty_teacher-message_block ul>li .lab_link a {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    padding-inline-start: 3.6rem;
    padding-block: 2.4rem;
    font-size: 1.6rem;
    font-weight: bold;
}

.faculty_teacher-message_block ul>li .lab_link a::before {
    content: '';
    width: 5.6rem;
    height: 5.6rem;
    background: url(../img/common/arrow/arrow_h.svg)no-repeat center center;
    background-size: 100%;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: -4rem;
    transition: .2s;
}

.faculty_teacher-message_block ul>li .lab_link a:hover::before {
    background: url(../img/common/arrow/arrow.svg)no-repeat center center;
    background-size: 100%;
}


/**************************************************
.course_policy
**************************************************/

.course_policy {
    max-width: var(--max);
    margin-inline: auto;
    margin-block-start: 8rem;
}

.course_policy h3 {
    font-family: "Rajdhani", sans-serif;
    font-size: 4.8rem;
    line-height: 6.2rem;
    color: var(--main-color);
    margin-block: 0;
}

.admission_title {
    margin-inline-start: 1.6rem;
    font-weight: bold;
}

.admission_intro {
    line-height: 2.8rem;
    margin-block-start: -2rem;
}

.policy_title {
    font-size: 2.4rem;
    color: var(--main-color);
    font-weight: bold;
    line-height: 2.9rem;
    padding-block-end: 0.4rem;
    padding-block-start: 4rem;
}

.policy_box {
    margin-block-end: 5rem;
}

.policy_box_title {
    font-size: 2.4rem;
    color: var(--text-color);
    font-weight: bold;
    line-height: 3.6rem;
    margin-block-end: 1.6rem;
}

.policy_box_title span {
    font-family: "Rajdhani", sans-serif;
    font-size: 3.2rem;
    color: var(--main-color);
    font-weight: bold;
    line-height: 4.1rem;
    margin-inline-end: 2.8rem
}

.policy_box_text {
    line-height: 2.8rem;
    margin-block-end: 3.2rem;
    margin-block-start: -1rem;
}

.policy_box li {
    border-bottom: 1px solid #DCE2EA;
}

.policy_need {
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    margin-block-start: 2rem;
    margin-block-end: 4rem;
}

.policy_need li {
    width: calc(100% / 3 - 2.6rem);
    padding-block: 2.4rem 4rem;
    padding-inline: 2.4rem;
    border: 0.1rem solid var(--main-color);
    border-radius: 4px;
    background-color: #F5FAFF;
}

.policy_need li img {
    margin-block-end: 3.2rem;
}

.policy_need li h5 {
    font-size: 2.4rem;
    color: var(--main-color);
    line-height: 1.5;
}

.policy_need li p {
    line-height: 1.5;
    padding-block-start: 1rem;
}

.policy_box_second {
    margin-block-end: 3rem;
}

.policy_box_second li {
    border-bottom: 1px solid #DCE2EA;
}

.policy_box_second_text {
    display: flex;
    align-items: baseline;
    padding-block: 2.4rem;
    line-height: 1.5;
}

.policy_box_second_text span {
    font-family: "Rajdhani", sans-serif;
    font-size: 3.2rem;
    color: var(--main-color);
    font-weight: bold;
    line-height: 4.1rem;
    position: relative;
    top: 1.0rem;
    margin-inline-end: 3.2rem;
    display: block;
}

.policy_box_second_text p {
    font-weight: bold;
    margin-inline: 0;
    padding: 0;
}

.curriculum .list_st1 {
    margin-block-end: 12rem;
}

.curriculum .list_st1 li a {
    display: block;
}

.curriculum .list_st1 li span {
    font-size: 1.2rem;
    font-weight: bold;
    display: block;
}

.diploma_box .policy_box_second_text {
    padding-block: 2rem;
}

.diploma_box .policy_box_second_text span {
    top: 0.5rem
}

/**************************************************
.course_policy-d
**************************************************/

.policy_d h2 {
    font-size: 4rem;
    color: var(--main-color);
    margin-block-end: 0;
    line-height: 1.4;
}

.policy_d .co_message_link {
    display: flex;
    justify-content: flex-start;
}

.policy_d .co_message_link a {
    position: relative;
    display: flex;
    align-items: center;
    height: 100%;
    padding-inline-start: 7rem;
    padding-block: 2.4rem;
    font-size: 1.6rem;
    font-weight: bold;
}

.policy_d .co_message_link a::before {
    content: "";
    width: 5.6rem;
    height: 5.6rem;
    background: url(../img/common/arrow/arrow_h.svg) no-repeat center center;
    background-size: 100%;
    position: absolute;
    top: 50%;
    transform: translate(0, -50%);
    left: 0;
    transition: 0.2s;
}

.policy_d .co_message_link a:hover::before {
    background: url(../img/common/arrow/arrow.svg) no-repeat center center;
    background-size: 100%;
}


/**************************************************
   course_main_content
  **************************************************/
.course_title {
    width: calc(100vw - (100vw - 104rem) / 2);
    border-bottom: 2px solid var(--main-color);
    padding-block-end: 1rem;
    margin-block-end: 2rem;
}

.course_main_title {
    font-size: 4rem;
}

.course_main_content {
    margin-block-end: 12rem;
}

.policy_d.course_main_content h4 {
    font-size: 4rem;
    line-height: 1.5;
    display: block;
    color: var(--main-color);
}

.course_img_sp {
    margin-block-start: 2.4rem;
    width: 100%;
    display: none;
}

.course_img_pc {
    margin-block-start: 2.4rem;
    width: 100%;
}

.admission .curriculum>h3 {
    font-size: 4.8rem;
}

.admission.policy_d,
.curriculum.policy_d,
.diploma.policy_d {
    margin-block-end: 8rem;
}

.course_main_content.policy_d .admission_box02,
.admission.policy_d .admission_box02 {
    margin-block-start: 2.4rem;
}

.course_main_content.policy_d .admission_box02 .policy_box_title,
.admission.policy_d .admission_box02 .policy_box_title {
    padding-block: 2.4rem;
}


/**************************************************
   curriculum 2
  **************************************************/


.curriculum .policy_need li {
    width: calc(100% / 4 - 2.6rem);
}

.course_main_content:nth-of-type(3) .policy_need li {
    width: calc(100% / 3 - 2.6rem);
    background-color: #fff;
    padding-block-end: 8rem;
}

.policy_box.admission_box02 .policy_box_title {
    display: flex;
}

.policy_box_text {
    margin-block-end: 3.2rem;
    padding-block-start: 0;
}

.curriculum.policy_d .policy_need {
    margin-block-start: 3.2rem;
    margin-block-end: 0.8rem;
}

.curriculum.policy_d .policy_need li span.stroke {
    color: #fff;
    font-size: 4rem;
    text-shadow: 1px 1px var(--main-color), -1px -1px var(--main-color),
        1px -1px var(--main-color), -1px 1px var(--main-color);
    font-family: var(--raj);
    letter-spacing: 0.1rem;
    font-weight: bold;
}


/**************************************************
   diploma
  **************************************************/
.diploma.policy_d .policy_box_second_text p {
    font-size: 2.4rem;
}

.diploma.policy_d .diploma_box .policy_box_second_text {
    padding-block: 2.4rem;
}

.diploma.policy_d .diploma_box {
    margin-block-start: 2.4rem;
}

.diploma.policy_d .diploma_box .policy_box_second_text span {
    top: 0.2rem;
}



/**************************************************
 responsive
**************************************************/
@media screen and (max-width: 767px) {
    body {
        overflow-x: hidden;
    }

    p {
        max-width: 100%;
    }

    .pc_only {
        display: none;
    }

    .flex {
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-flow: row wrap;
        flex-flow: row wrap;
    }

    .list_st1 {
        max-width: 100%;
        margin-inline: 0;
        margin-block-start: 0rem;
    }

    .list_st1 li {
        width: 100%;
        margin-inline-end: 0;
    }


    .list_st1 li a {
        height: auto;
    }

    .bullet-list_colorbox .list_st1 li a {
        width: 100%;
    }

    /******mainVisual************/

    .mainVisual {
        margin-block-start: 10.4rem;
        height: 14.6rem;
        background: url(../img/course/course/mv_course_sp.jpg) no-repeat top center;
        background-size: cover;
    }

    .mainVisual h2 {
        font-size: 4rem;
        padding-inline: 1.6rem;
    }

    .mainVisual h2 span {
        font-size: 1.6rem;
        margin-block: 0.6rem;
    }

    .faculty .mainVisual {
        height: auto;
        padding-inline-start: 1.6rem;
    }


    .faculty .mainVisual h2 {
        align-content: flex-start;
        width: 100%;
    }

    .faculty .mainVisual h2 span {
        font-size: 1.4rem;
        margin-block: 0 1rem;
    }

    .faculty .mainVisual .main_img {
        width: 100%;
        height: 16rem;
        overflow-y: clip;
        margin-block-start: 2.4rem;
    }

    .faculty .mainVisual .main_img img {
        object-fit: cover;
        height: 100%;
        width: 100%;
        border-radius: 8px 0 0 8px;
    }

    /* co_course_top */

    .co_course_summary h2 {
        font-size: 3.2rem;
        max-width: calc(100% - 3.2rem);
        margin-inline: auto;
        margin-block-end: 3rem;
    }

    .co_course_summary>ul {
        max-width: 100%;
        padding-inline: 0;
        margin-block-end: 7rem;
    }

    .co_course_summary>ul.co_master {
        margin-block-end: 0rem;
    }

    .co_course_summary ul li {
        width: 100%;
        box-sizing: border-box;
    }

    .co_course_summary ul li a {
        display: block;
        width: 100%;
        padding-inline: 1.6rem;
        padding-block: 3.2rem;
        box-sizing: border-box;
    }

    .co_course_summary ul li a:hover {
        opacity: 1;
        box-shadow: 0px 0px 2rem #e5f1ff;
        box-sizing: border-box;
    }

    .co_course_summary ul li a::after {
        content: "";
        width: 100%;
        height: 0.1rem;
        background-color: #DCE2EA;
        position: absolute;
        left: 0;
        top: 100%;
        transition: .2s;
    }

    .co_course_summary ul li:last-child a::after {
        content: "";
        width: 100%;
        height: 0.1rem;
        background-color: #DCE2EA;
        position: absolute;
        left: 0;
        top: 100%;
        transition: .2s;
    }

    .co_course_summary ul li a:hover::after {
        opacity: 0;
    }

    .co_course_summary ul li a img {
        width: 100%;
        height: auto;
        display: block;
    }

    /* co_course_list */

    .co_course_list h2 {
        font-size: 3.2rem;
        overflow-x: clip;
        padding-inline: 1.6rem;
        line-height: 1.4;
    }

    .co_course_list>ul {
        margin-block-end: 7rem;
    }

    .co_course_list ul li {
        width: 100%;
        margin-inline: 0;
    }

    .co_course_list ul li:first-child {
        width: 100%;
        margin-inline: 0;
    }

    .co_course_list ul li:last-child {
        width: 100%;
        padding-inline-start: 0;
    }

    .co_course_list h3 {
        font-size: 2.4rem;
        color: var(--text-color);
        line-height: 4.8rem;
        position: relative;
        padding-inline-start: 6rem;
        margin-block-end: 1.4rem;
        margin-block-start: 2rem;
    }

    .co_course_list h4 {
        font-size: 2rem;
        color: var(--main-color);
        margin-block-end: 1.4rem;
        margin-block-start: 0;
        line-height: 1.4;
    }

    .co_course_list_text {
        padding-block-end: 2.4rem;
        padding-block-start: 0;
    }

    .co_course_list_box {
        background-color: #E5F1FF;
        padding-block: 1.6rem 2.1rem;
        padding-inline: 1.6rem;
        border-radius: 4px;
    }

    .co_course_list_link a {
        position: relative;
        display: flex;
        align-items: center;
        height: 100%;
        font-size: 1.6rem;
        font-weight: var(--font-bold);
        color: var(--text-color);
        padding-inline-start: 3rem;
        padding-block: 0rem;
    }

    .co_course_list_link a::before {
        content: '';
        width: 4rem;
        height: 4rem;
        background: url(../img/common/arrow/arrow_h.svg) no-repeat center center;
        background-size: 100%;
        position: absolute;
        top: 50%;
        transform: translate(0, -50%);
        left: -2rem;
        transition: .2s;
    }

    .co_course_list_link a:hover::before {
        content: '';
        width: 4rem;
        height: 4rem;
        background: url(../img/common/arrow/arrow.svg) no-repeat center center;
        background-size: 100%;
        position: absolute;
        top: 50%;
        transform: translate(0, -50%);
        left: -2rem;
        transition: .2s;
    }

    /* faculty_message */

    .faculty_message_block ul {
        max-width: 100%;
        display: block;
    }

    .faculty_message_block ul>li {
        width: 100%;
    }

    .faculty_message_block ul>li>img {
        width: 80%;
        margin-inline: 10%;
    }

    .faculty_teacher-message_inner .list_st1>li,
    .faculty_senior-message_inner .list_st1>li {
        width: 100%;
        margin-inline-end: 0;
    }

    .faculty_teacher-message_block .flexbox,
    .faculty_senior-message_block .flexbox {
        display: block;
    }

    .faculty_teacher-message_block .flexbox li>img,
    .faculty_senior-message_block .flexbox li>img {
        width: 80%;
        margin-inline: 10%;
        margin-block-end: 3rem;
    }

    .faculty_teacher-message_block ul>li:nth-child(2n),
    .faculty_senior-message_block ul>li:nth-child(2n) {
        padding-inline-start: 0rem;
    }

    .faculty_teacher-message_block ul>li .teacher_name {
        margin-block-start: 1.6rem;
    }

    /* course_policy */

    .course_policy {
        margin-block-start: 5rem;
        padding-inline: 1.6rem;
    }

    .policy_box.admission_box {
        margin-block-start: 0rem;
    }

    .policy_box.admission_box02 {
        margin-block-end: 8rem;
    }

    .course_policy p {
        max-width: 100%;
    }

    .course_policy h3 {
        font-size: 4rem;
        line-height: 4rem;
    }

    .admission_title {
        padding-block-start: 0;
        font-size: 1.6rem;
        margin-inline: 0;
        margin-block-end: 2.7rem;
    }

    .admission_intro {
        margin-inline: 0;
        max-width: 100%;
    }

    .policy_title {
        margin-inline: 0
    }

    .policy_box {
        margin-inline: 0;
        max-width: 100%;
        margin-block-start: 3rem;
    }

    .policy_box_title span {
        display: block;
        font-size: 2.4rem;
        margin-block-start: -1rem;
    }

    .admission p.policy_box_title {
        font-size: 2rem;
        line-height: 3.2rem;
    }

    .admission p.policy_box_text {
        margin-block-end: 2rem;
        margin-block-start: 0rem;
    }

    .admission p {
        line-height: 2.4rem;
    }

    .policy_need {
        display: block;
        margin-inline: 0;
        max-width: 100%;
        margin-block-end: 5rem;
    }

    .policy_need li {
        width: 100%;
        padding-block: 2rem;
        padding-inline: 1.6rem;
        margin-block-end: 1.6rem;
    }

    .policy_need li h5 {
        font-size: 2rem;
    }

    .policy_need li p {
        font-size: 1.6rem;
    }

    .policy_need li img {
        margin-block-end: 1.8rem;
    }

    .course_policy p.policy_title {
        font-size: 2rem;
        padding-block-end: 0px;
    }

    .policy_box_second_text {
        display: block;
    }

    .policy_box_second_text span {
        font-size: 2.4rem;
        margin-block-end: 1rem;
        margin-block-start: -1.5rem;
    }

    .policy_box_second {
        margin-inline: 0;
        max-width: 100%;
        margin-block-end: 2rem;
    }

    .curriculum .list_st1 {
        margin-inline: 0;
        max-width: 100%;
    }

    .curriculum .list_st1 li span {
        font-size: 4vw;
        ;
    }

    .curriculum .list_st1 {
        margin-block-end: 8rem;
    }

    .policy_box_second_text p {
        font-weight: normal;
        line-height: 2.4rem;
    }

    .admission_intro {
        line-height: 1.7;
    }

    .list_st1 li {
        margin-block-start: 0rem;
    }

    .list_st1 li:nth-child(2),
    .list_st1 li:nth-child(3) {
        margin-block-start: 0;
    }

    .diploma_box {
        margin-block-start: 2rem;
    }

    /* course_policy-d */

    .policy_d h2 {
        font-size: 3.2rem;
        margin-block-end: 0;
        line-height: 1.4;
    }

    .policy_d.course_main_content h4 {
        font-size: 3.2rem;
    }

    .course_main_content.policy_d .admission_box02,
    .admission.policy_d .admission_box02 {
        margin-block-end: 1.6rem;
    }

    .policy_box_title {
        font-size: 2rem;
    }

    .policy_box_second_text p {
        font-size: 2rem;
        line-height: 1.5;
        font-weight: bold;
    }

    .diploma .policy_box_second_text p {
        font-size: 2rem;
    }

    .diploma.policy_d .diploma_box {
        margin-block-start: 1.6rem;
    }

    .course_policy p {
        width: 100%;
    }

    .course_title {
        width: 100%;
    }

    .course_img_sp {
        display: block;
    }

    .course_img_pc {
        display: none;
    }

    .policy_box.admission_box02 .policy_box_title {
        display: block;
    }

    .policy_need li {
        width: 100%;
    }

    .course_main_content:nth-of-type(3) .policy_need li {
        width: 100%;
        padding-block: 2rem;
        padding-inline: 1.6rem;
        margin-block-end: 1.6rem;
    }


    .curriculum .policy_need li {
        width: 100%;
        padding-block: 2rem;
        padding-inline: 1.6rem;
        margin-block-end: 1.6rem;
    }

    .diploma.policy_d .policy_box_second_text p {
        font-size: 2rem;
    }

    .diploma.policy_d .diploma_box .policy_box_second_text span {
        top: 0;
    }

    .course_main_content.policy_d .admission_box02 .policy_box_title,
    .admission.policy_d .admission_box02 .policy_box_title {
        padding-block: 2.4rem 1.6rem;
    }
}