@charset "utf-8";
:root {
    --main-color: #1F8FD5;
    --sub1-color: #EBBA25;
    --sub2-color: #83B028;
    --sub3-color: #ffffff;
    --sub4-color: #333333;
    --sub5-color: #000000;
    --sub6-color: #F8F9DF;
    --sub7-color: #EFB42D;
    --sub8-color: #FFE695;
    --sub9-color: #E3F4FF;
    --sub10-color: #FFF6D8;
    --sub11-color: #EDF6DF;
    --sub12-color: #666666;
    --sub13-color: #dddddd;
    --sub14-color: #878787;
    --sub15-color: #0B1970;
    --sub16-color: #00791A;
    --sub17-color: #EEC006;
    --sub18-color: #DAEAFF;
    --sub19-color: #DDE1FF;
    --sub20-color: #D64329;
    --sub21-color: #FFECB3;
    --sub22-color: #CEE2A7;
    --sub23-color: #A8AE00;
    --sub24-color: #BDC408;
    --sub25-color: #ECEEB7;
    --sub26-color: #D9D9D9;
    --sub27-color: #C9DFFB;
    --sub28-color: #5872B4;
    --sub29-color: #2A8946;
    --sub30-color: #E3E8FF;
    --sub31-color: #0D1891;
    --sub32-color: #5F74BA;
    --sub33-color: #33B55F;
    --sub34-color: #202281;
    --sub35-color: #B09AFF;
    --sub36-color: #6332B7;
    --sub37-color: #0D949E;
    --sub38-color: #8E61B5;
    --sub39-color: #F0EBFF;
    --sub40-color: #2D2E56;
    --tbl-bg: #efefef;
}
@media (min-width: 751px) {
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
}
.main {
    overflow: hidden;
}

.mod_mb{
    margin-bottom: 30px;
}

.bold{
    font-weight: 700;
}

.underline{
   text-decoration: underline;
   text-underline-offset: 3px;
}

.red{
 color: #ff0000;   
}

.txt_pdf,
.text_base .txt_pdf{
    display: inline-block;
    color: #fff;
    font-weight: bold;
    background-color: #f00;
    margin-left: 5px;
    padding: 2px 5px;
    text-decoration: none;
    line-height: 1em;
}

.inner {
    width: 94.93%;
    max-width: 1200px;
    margin: 0 auto;
}
.title_wrap {
    position: relative;
    width: 452px;
    margin: 0 auto 50px;
    text-align: center;
}
.title_wrap::before,
.title_wrap::after {
    content: '';
    position: absolute;
    width: 110px;
    height: 2px;
    background: var(--sub15-color);
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
         -o-transform: translateY(-50%);
            transform: translateY(-50%);
    z-index: -1;
}
.title_wrap::before {
    left: 0;
}
.title_wrap::after {
    right: 0;
}
.title_wrap h2 {
    display: inline-block;
    font-size: 20px;
    font-weight: 700;
    color: var(--sub15-color);
    padding: 0 10px 10px 10px;
    background: var(--sub3-color);
}
.title_wrap span {
    display: block;
    font-family: "futura-pt", sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: var(--sub14-color);
    letter-spacing: 2px;
    text-transform: uppercase;
}
.title_underline {
    position: relative;
    display: inline-block;
    font-size: 30px;
    font-weight: 500;
    color: var(--sub12-color);
    padding-bottom: 15px;
    margin-bottom: 50px;
}
.title_underline::after {
    content: '';
    position: absolute;
    width: 135px;
    height: 3px;
    background: var(--sub24-color);
    left: 0;
    right: 0;
    margin: 0 auto;
    bottom: 0;
}
.title_base {
    font-size: 32px;
    font-weight: 500;
    color: var(--sub12-color);
    line-height: 1.3;
    text-align: center;
}
.title_sm {
    font-size: 28px;
    color: var(--sub12-color);
    line-height: 1.5;
}
.title_xs {
    font-size: 22px;
    font-weight: 700;
    color: var(--sub12-color);
    line-height: 1.5;
}
.title_bg_gradient {
    display: inline-block;
    font-size: 32px;
    color: var(--sub3-color);
    line-height: 1.3;
    text-align: center;
    background: linear-gradient(to right,#987AF2 0%,#81C0D2 50%,#96DE70 100%);
    padding: 20px 38px;
}
.text_base,
.text_base span {
    font-size: 16px;
    color: var(--sub12-color);
    line-height: 1.5;
}

.text_lg {
    font-size: 18px;
    color: var(--sub12-color);
    line-height: 1.5;
}
.text_sm {
    font-size: 14px;
    color: var(--sub12-color);
    line-height: 1.5;
}
.button_base {
    -webkit-justify-content: center;
            justify-content: center;
    -webkit-align-items: center;
            align-items: center;
    width: 256px;
    -webkit-border-radius: 32px;
            border-radius: 32px;
    background: var(--sub3-color);
    border: 2px solid var(--sub15-color);
    padding: 15px 0;
}
.button_base span {
    font-size: 18px;
    font-weight: 500;
    color: var(--sub12-color);
}
.button_base .button_icon {
    position: relative;
    width: 18px;
    height: 18px;
    background: var(--sub15-color);
    -webkit-border-radius: 100%;
            border-radius: 100%;
    margin-right: 10px;
}
.button_base .button_icon::after {
    content: '';
    position: absolute;
    border: solid var(--sub3-color);
    border-width: 0 2px 2px 0;
    padding: 2px;
    left: 5px;
    top: 6px;
    -webkit-transform: rotate(-45deg);
       -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
         -o-transform: rotate(-45deg);
            transform: rotate(-45deg);
}
.button_base:hover {
    background: var(--sub15-color);
}
.button_base:hover span {
    color: var(--sub3-color);
}
.button_base:hover .button_icon {
    background: var(--sub3-color);
}
.button_base:hover .button_icon::after {
    border-color: var(--sub15-color);
}

/*Link Anchor*/
.list_buttons {
    -webkit-justify-content: center;
            justify-content: center;
    gap: 20px;
}
.list_buttons li {
    width: 160px;
    background: var(--sub3-color);
    border: 1px solid var(--sub15-color);
    -webkit-border-radius: 5px;
            border-radius: 5px;
    padding: 11px 0;
}
.list_buttons li a {
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-justify-content: center;
            justify-content: center;
    -webkit-align-items: center;
            align-items: center;
}
.list_buttons li a span {
    position: relative;
    font-size: 18px;
    font-weight: 500;
    color: var(--sub15-color);
    padding-right: 25px;
}
.list_buttons li a span::after {
    content: '';
    position: absolute;
    border: solid var(--sub15-color);
    border-width: 0 2px 2px 0;
    padding: 4px;
    right: 0;
    top: 1px;
    transform: rotate(45deg);
}

.mod_txt_list,
.mod_txt_list2,
.mod_txt_list4 {
    margin-bottom: 15px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}


.mod_txt_list.color_active li {
    color: var(--sub12-color);
}
.mod_txt_list li,
.mod_txt_list2 li,
.mod_txt_list4 li {
    position: relative;
    padding-left: 1.5em;
    font-size: 18px;
    line-height: 1.4;
    color: #666666;
    margin-bottom:  15px;
}

.mod_txt_list li { width: 100%; }
.mod_txt_list2 li { width: calc((100% - 30px) / 2); }
.mod_txt_list4 li { width: calc((100% - 30px) / 4); }

.mod_txt_list li:before,
.mod_txt_list2 li:before,
.mod_txt_list4 li:before {
    content: '●';
    position: absolute;
    font-size: 17px;
    top: 0;
    left: 0;
}

.mod_txt_list li.list-text-none:before,
.mod_txt_list2 li.list-text-none:before,
.mod_txt_list4 li.list-text-none:before {
    content: "";
}

.mod_txt_list3 {
    padding: 10px 10px 0;
    margin-bottom: 15px;
}
.mod_txt_list3 li {
    display: inline-block;
    position: relative;
    padding: 0 1.5em;
    margin-bottom: 10px;
    color: var(--sub12-color);
}
.mod_txt_list3 li:before {
    content: '●';
    position: absolute;
    font-size: 17px;
    top: 0;
    left: 0;
}

.mod_txt_list.yellow li:before,
.mod_txt_list2.yellow li:before,
.mod_txt_list3.yellow li:before,
.mod_txt_list4.yellow li:before{
    color: var(--sub21-color);
}

.mod_txt_list.blue li:before,
.mod_txt_list2.blue li:before,
.mod_txt_list3.blue li:before,
.mod_txt_list4.blue li:before{
    color: var(--sub18-color);
}

.mod_txt_list.green li:before,
.mod_txt_list2.green li:before,
.mod_txt_list3.green li:before,
.mod_txt_list4.green li:before{
    color: var(--sub22-colo);
}

.mod_txt_list li a,
.mod_txt_list2 li a,
.mod_txt_list3 li a,
.mod_txt_list4 li a {
    text-decoration: underline;
    color: var(--sub12-color);
}

a.external::after {
    content: '';
    display: inline-block;
    width: 20px;
    height: 20px;
    padding-left: 5px;
    background: url(../images/common/list_icon.svg) no-repeat center;
    background-size: 14px auto;
}
a.pdf {
    position: relative;
    padding-right: 27px;
}
a.pdf::after {
    content: '';
    display: inline-block;
    width: 22px;
    height: 22px;
    padding-left: 5px;
    background: url('../images/common/icon_pdf.png') no-repeat center;
  background-size: 22px auto;
    position: absolute;
}
/*end of Link Anchor*/

/*Contact Section*/
.sec_contact {
    padding: 100px 0;
    text-align: center;
}
.sec_contact h2 {
    font-family: "futura-pt", sans-serif;
    font-size: 52px;
    font-weight: 300;
    color: var(--sub12-color);
    letter-spacing: 4px;
    margin-bottom: 20px;
}
.sec_contact h3 {
    font-weight: 500;
    margin-bottom: 60px;
}
.sec_contact .button_wrap {
    -webkit-justify-content: center;
            justify-content: center;
    gap: 40px;
}
.button_lg {
    -webkit-justify-content: center;
            justify-content: center;
    -webkit-align-items: center;
            align-items: center;
    width: 430px;
    -webkit-border-radius: 35px;
            border-radius: 35px;
    border-width: 2px;
    border-style: solid;
    padding: 24px 0;
}
.button_lg span {
    font-size: 18px;
    font-weight: 500;
    color: var( --sub3-color);
}
.button_lg .button_icon {
    position: relative;
    width: 18px;
    height: 18px;
    background: var(--sub3-color);
    -webkit-border-radius: 100%;
            border-radius: 100%;
    margin-right: 10px;
}
.button_lg .button_icon::after {
    content: '';
    position: absolute;
    border-style: solid;
    border-width: 0 2px 2px 0;
    padding: 2px;
    left: 5px;
    top: 6px;
    -webkit-transform: rotate(-45deg);
       -moz-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
         -o-transform: rotate(-45deg);
            transform: rotate(-45deg);
}
.button_blue {
    background: var(--sub15-color);
    border-color: var(--sub15-color);
}
.button_green {
    background: var(--sub16-color);
    border-color: var(--sub16-color);
}
.button_blue .button_icon::after {
    border-color: var(--sub15-color);
}
.button_green .button_icon::after {
    border-color: var(--sub16-color);
}
.button_blue:hover,
.button_green:hover {
    background: var(--sub3-color);
}
.button_lg:hover span {
    color: var(--sub12-color);
}
.button_blue:hover .button_icon {
    background: var(--sub15-color);
}
.button_green:hover .button_icon {
    background: var(--sub16-color);
}
.button_blue:hover .button_icon::after,
.button_green:hover .button_icon::after {
    border-color: var(--sub3-color);
}
/*end of Contact Section*/

/*Module Wrap*/
.mod_wrap {
    position: relative;
    -webkit-justify-content: flex-start;
            justify-content: flex-start;
    -webkit-align-items: flex-start;
            align-items: flex-start;
    margin-bottom: 110px;
    border: 16px solid var(--sub18-color);
    padding: 0 40px 30px;
}
.mod_wrap:last-child {
    margin-bottom: 0;
}
.mod_wrap .img_mod {
    width: 52%;
    max-width: 560px;
    margin-top: -60px;
    margin-right: 40px;
}
.mod_wrap .mod_info {
    width: 43%;
}
.mod_wrap.no_image .mod_info{
    width: 90%;
    margin: 0 auto;
}

.mod_wrap.no_image .mod_info p a{
    color: var(--sub12-color);
    text-decoration: underline;
}

.mod_wrap.no_image .img_mod{
    position: relative;
    margin-top: 0;
    width: 100%;
    max-width: 100%;
}

.title_vertical {
    position: absolute;
    width: 100px;
    top: 18px;
    right: -22px;
    -webkit-justify-content: flex-end;
            justify-content: flex-end;
    transform: rotate(-90deg);
    z-index: -1;
}
.title_vertical span {
    font-family: "futura-pt", sans-serif;
    font-size: 80px;
    font-weight: 300;
    color: var(--sub18-color);
    text-transform: uppercase;
    line-height: 0.8;
    letter-spacing: -1px;
}
.title_rectangle {
    width: 204px;
    height: 204px;
    border: 4px solid var(--sub15-color);
    -webkit-align-items: center;
            align-items: center;
    -webkit-justify-content: center;
            justify-content: center;
}
.title_rectangle span {
    font-size: 20px;
    font-weight: 500;
    color: var(--sub12-color);
    line-height: 1.4;
    text-align: center;
}
.button_pdf {
    -webkit-align-items: center;
            align-items: center;
    -webkit-justify-content: center;
            justify-content: center;
    width: 207px;
    background: var(--sub3-color);
    border: 1px solid var(--sub15-color);
    -webkit-border-radius: 5px;
            border-radius: 5px;
    padding: 11px 0;
}
.button_pdf span {
    position: relative;
    font-size: 18px;
    font-weight: 500;
    color: var(--sub15-color);
    padding-right: 30px;
}
.button_pdf span::after {
    content: '';
    position: absolute;
    background: url('../images/senior/program/icon_pdf.png') no-repeat right center;
    -webkit-background-size: 100% auto;
         -o-background-size: 100% auto;
            background-size: 100% auto;
    width: 22px;
    height: 22px;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
       -moz-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
         -o-transform: translateY(-50%);
            transform: translateY(-50%);
}
.mod_wrap.row_reverse {
    -webkit-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
}
.mod_wrap.row_reverse .img_mod {
    margin-right: 0;
    margin-left: 30px;
}
.mod_wrap.row_reverse .title_vertical {
    right: auto;
    left: -25px;
}
.list_numbers li {
    padding-left: 15px;
    text-indent: -15px;
}
.list_dots li {
    padding-left: 10px;
    text-indent: -10px;
}
.mb-30 {
    margin-bottom: 30px;
}

.col03_type01 {
    gap: 30px;
    -webkit-justify-content: center;
            justify-content: center;
}

.col03_type01 li {
    width: 31%;
}

.col03_type01 li a {
    display: block;
}

.col04_type01 {
    gap: 30px;
    -webkit-justify-content: center;
            justify-content: center;
}

.col04_type01 li {
    position: relative;
    width: 23%;
}

.col04_type01 li a {
    display: block;
    width: 100%;
}

.col04_type01 .name_vertical {
    position: absolute;
    font-size: 24px;
    color: var(--sub3-color);
    letter-spacing: 3px;
    writing-mode: vertical-lr;
    text-shadow: 0px 0px 4px var(--sub5-color);
    right: 5px;
    top: 5px;
}

.mv_mod {
    padding-top: 55px;
}
.mv_mod .inner {
    position: relative;
    width: 96%;
    max-width: 100%;
}
.mv_mod .title_wrap {
    margin-bottom: 25px;
}
.mv_mod .mv_content {
    position: relative;
    width: 100%;
}
.mv_mod .title_rectangle {
    position: relative;
    margin: -50px auto 0;
}
.main_mv {
    position: relative;
    border-top: 6px solid var(--sub26-color);
}
.main_mv .mv_wrap {
    position: absolute;
    width: 667px;
    top: 50%;
    left: 40px;
    transform: translateY(-50%);
    background: linear-gradient(to right, rgba(40,116,186,0.76) 0%, rgba(60,211,82,0.76) 100%);
    padding: 22px 30px;
}
.main_mv .mv_wrap h2 {
    position: relative;
    font-size: 38px;
    color: var(--sub3-color);
    padding-bottom: 10px;
    margin-bottom: 10px;
}
.main_mv .mv_wrap h2::after {
    content: '';
    position: absolute;
    width: 424px;
    height: 1px;
    background: var(--sub3-color);
    left: 0;
    bottom: 0;
}
.main_mv .mv_wrap span {
    display: block;
    font-size: 19px;
    color: var(--sub3-color);
    text-transform: uppercase;
}

/*Junior Theme*/
.junior_theme .title_wrap h2 {
    color: var(--sub1-color);
}
.junior_theme .title_wrap::before,
.junior_theme .title_wrap::after {
    background: var(--sub1-color);
}
.junior_theme .button_base {
    border-color: var(--sub1-color);
}
.junior_theme .button_base:not(:hover) .button_icon {
    background: var(--sub1-color);
}
.junior_theme .button_base:hover {
    background: var(--sub1-color);
}
.junior_theme .button_base:hover .button_icon::after {
    border-color: var(--sub1-color);
}
.junior_theme .list_buttons li {
    border-color: var(--sub1-color);
}
.junior_theme .list_buttons li a span {
    color: var(--sub1-color);
}
.junior_theme .list_buttons li a span::after {
    border-color: var(--sub1-color);
}
.junior_theme  .mod_wrap {
    border-color: var(--sub21-color);
}
.junior_theme .title_vertical span {
    color: var(--sub21-color);
}
.junior_theme .title_rectangle {
    border-color: var(--sub1-color);
}
.junior_theme .button_pdf {
    border-color: var(--sub1-color);
}
.junior_theme .button_pdf span {
    color: var(--sub1-color);
}

/*Dental Theme*/
.dental_theme .title_wrap h2 {
    color: var(--sub2-color);
}
.dental_theme .title_wrap::before,
.dental_theme .title_wrap::after {
    background: var(--sub2-color);
}
.dental_theme .button_base {
    border-color: var(--sub2-color);
}
.dental_theme .button_base:not(:hover) .button_icon {
    background: var(--sub2-color);
}
.dental_theme .button_base:hover {
    background: var(--sub2-color);
}
.dental_theme .button_base:hover .button_icon::after {
    border-color: var(--sub2-color);
}
.dental_theme .list_buttons li {
    border-color: var(--sub2-color);
}
.dental_theme .list_buttons li a span {
    color: var(--sub2-color);
}
.dental_theme .list_buttons li a span::after {
    border-color: var(--sub2-color);
}
.dental_theme  .mod_wrap {
    border-color: var(--sub22-color);
}
.dental_theme .title_vertical span {
    color: var(--sub22-color);
}
.dental_theme .title_rectangle {
    border-color: var(--sub2-color);
}
.dental_theme .button_pdf {
    border-color: var(--sub2-color);
}
.dental_theme .button_pdf span {
    color: var(--sub2-color);
}

/*Voice Section*/
.sec_voices .title_wrap {
    margin-bottom: 25px;
}

.sec_voices h3 {
    text-align: center;
    margin-bottom: 45px;
}

/*end of Voice Section*/

/*about_content*/
.about_content {
    width: 94%;
    max-width: 1365px;
    margin: 0 auto 60px;
}

.about_content .col03_type03{
    background: url(../../assets/images/junior/img_top_ebina_pc.jpg) no-repeat center;
    -webkit-background-size: auto;
         -o-background-size: auto;
            background-size: auto;
    min-height: 270px;
}
.about_content .col03_type03 li {
    position: relative;
    width: calc(100% / 3);
}
.about_content .col03_type03 .col03_info {
    width: 100%;
    height: 100%;
    display: flex;
    -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    justify-content: center;
    align-items: center;
}

.about_content .col03_type03 .col03_info a span.txt_icon{
   background: url(../../assets/images/common/icon_link_blank.png) no-repeat right center;
   -webkit-background-size: 15px auto;
        -o-background-size: 15px auto;
           background-size: 15px auto;
    padding-right: 25px;
}

.about_content .col03_type03 .col03_info a:hover span.txt_icon{
   background: url(../../assets/images/common/icon_link.png) no-repeat right center;
   -webkit-background-size: 18px auto;
        -o-background-size: 18px auto;
           background-size: 18px auto;
    padding-right: 25px;
}

/* Banner Section */
.sec_banner {
    margin: 85px 0 125px;
    padding: 0;
}
.sec_banner .inner {
    max-width: 1270px;
}
.list_banner {
    justify-content: center;
    gap: 65px;
}
.list_banner li {
    width: 47%;
    max-width: 600px;
}
.list_banner li a {
    display: block;
}

@media only screen and (min-width: 768px) and (max-width: 1199px) {
    .inner {
        width: 94.93%;
        max-width: 100%;
        margin: 0 auto;
    }
    .title_wrap {
        width: 37.698vw;
        margin-bottom: 4.170vw;
    }
    .title_wrap::before,
    .title_wrap::after {
        width: 9.174vw;
        height: 0.167vw;
    }
    .title_wrap h2 {
        font-size: 1.668vw;
        padding: 0 0.834vw 0.834vw 0.834vw;
    }
    .title_wrap span {
        font-size: 1.168vw;
        letter-spacing: 0.167vw;
    }
    .title_underline {
        font-size: 2.502vw;
        padding-bottom: 1.251vw;
        margin-bottom: 4.170vw;
    }
    .title_underline::after {
        width: 11.259vw;
        height: 0.250vw;
    }
    .title_base {
        font-size: 2.669vw;
    }
    .title_sm {
        font-size: 2.335vw;
    }
    .title_xs {
        font-size: 1.835vw;
    }
    .title_bg_gradient {
        font-size: 2.669vw;
        padding: 1.668vw 3.169vw;
    }
    .text_base,
    .text_base span {
        font-size: 1.334vw;
    }
    .text_lg {
        font-size: 1.501vw;
    }
    .text_sm {
        font-size: 1.168vw;
    }
    .button_base {
        width: 21.351vw;
        -webkit-border-radius: 2.669vw;
                border-radius: 2.669vw;
        border-width: 0.167vw;
        padding: 1.251vw 0;
    }
    .button_base span {
        font-size: 1.501vw;
    }
    .button_base .button_icon {
        width: 1.501vw;
        height: 1.501vw;
        margin-right: 0.834vw;
    }
    .button_base .button_icon::after {
        border-width: 0 0.167vw 0.167vw 0;
        padding: 0.167vw;
        left: 0.417vw;
        top: 0.500vw;
    }

    /*Link Anchor*/
    .list_buttons {
        gap: 1.668vw;
    }
    .list_buttons li {
        width: 13.344vw;
        border-width: 0.083vw;
        -webkit-border-radius: 0.417vw;
                border-radius: 0.417vw;
        padding: 0.917vw 0;
    }
    .list_buttons li a span {
        font-size: 1.501vw;
        padding-right: 2.085vw;
    }
    .list_buttons li a span::after {
        border-width: 0 0.167vw 0.167vw 0;
        padding: 0.334vw;
        top: 0.083vw;
    }
    /*end of Link Anchor*/

    /*Contact Section*/
    .sec_contact {
        padding: 8.340vw 0;
    }
    .sec_contact h2 {
        font-size: 4.337vw;
        letter-spacing: 0.334vw;
        margin-bottom: 1.668vw;
    }
    .sec_contact h3 {
        margin-bottom: 5.004vw;
    }
    .sec_contact .button_wrap {
        gap: 3.336vw;
    }
    .button_lg {
        width: 35.863vw;
        -webkit-border-radius: 2.919vw;
                border-radius: 2.919vw;
        border-width: 0.167vw;
        padding: 2.002vw 0;
    }
    .button_lg span {
        font-size: 1.501vw;
    }
    .button_lg .button_icon {
        width: 1.501vw;
        height: 1.501vw;
        margin-right: 0.834vw;
    }
    .button_lg .button_icon::after {
        border-width: 0 0.167vw 0.167vw 0;
        padding: 0.167vw;
        left: 0.417vw;
        top: 0.500vw;
    }
    /*end of Contact Section*/
    
    /*Module Wrap*/
    .mod_wrap {
        margin-bottom: 9.174vw;
        border-width: 1.334vw;
        padding: 0 3.336vw 2.502vw;
    }
    .mod_wrap .img_mod {
        margin-top: -5.004vw;
        margin-right: 3.336vw;
    }
    .title_vertical {
        width: 8.340vw;
        top: 1.501vw;
        right: -1.835vw;
    }
    .title_vertical span {
        font-size: 6.672vw;
        letter-spacing: -0.083vw;
    }
    .title_rectangle {
        width: 17.014vw;
        height: 17.014vw;
        border-width: 0.334vw;
    }
    .title_rectangle span {
        font-size: 1.668vw;
    }
    .button_pdf {
        width: 17.264vw;
        border-width: 0.083vw;
        -webkit-border-radius: 0.417vw;
                border-radius: 0.417vw;
        padding: 0.917vw 0;
    }
    .button_pdf span {
        font-size: 1.501vw;
        padding-right: 2.502vw;
    }
    .button_pdf span::after {
        width: 1.835vw;
        height: 1.835vw;
    }
    .mod_wrap.row_reverse .img_mod {
        margin-left: 2.502vw;
    }
    .mod_wrap.row_reverse .title_vertical {
        left: -2.085vw;
    }
    .list_numbers li {
        padding-left: 1.251vw;
        text-indent: -1.251vw;
    }
    .list_dots li {
        padding-left: 0.834vw;
        text-indent: -0.834vw;
    }
    .mb-30 {
        margin-bottom: 2.502vw;
    }
    .col03_type01 {
        gap: 2.502vw;
    }

    .col04_type01 {
        gap: 2.502vw;
    }
    .col04_type01 .name_vertical {
        font-size: 2.002vw;
        letter-spacing: 0.250vw;
        text-shadow: 0px 0px 0.334vw var(--sub5-color);
        right: 0.417vw;
        top: 0.417vw;
    }

    .mv_mod {
        padding-top: 4.587vw;
    }
    .mv_mod .title_wrap {
        margin-bottom: 2.085vw;
    }
    .mv_mod .title_rectangle {
        margin-top: -4.170vw;
    }
    .main_mv {
        border-width: 0.500vw;
    }
    .main_mv .mv_wrap {
        width: 55.630vw;
        left: 3.336vw;
        padding: 1.835vw 2.502vw;
    }
    .main_mv .mv_wrap h2 {
        font-size: 3.169vw;
        padding-bottom: 0.834vw;
        margin-bottom: 0.834vw;
    }
    .main_mv .mv_wrap h2::after {
        width: 35.363vw;
        height: 0.083vw;
    }
    .main_mv .mv_wrap span {
        font-size: 1.585vw;
    }

    .about_content .col03_type03 .col03_info a img{
        width: 1.8vw;
        margin-left: 1vw;
    }

    .about_content .col03_type03 .col03_info a span.txt_icon{
       background: url(../../assets/images/common/icon_link_blank.png) no-repeat right center;
       -webkit-background-size: 1.8vw; auto;
            -o-background-size: 1.8vw; auto;
               background-size: 1.8vw; auto;
        padding-right: 2.5vw;
    }

    .about_content .col03_type03 .col03_info a:hover span.txt_icon{
       background: url(../../assets/images/common/icon_link.png) no-repeat right center;
       -webkit-background-size: 2vw auto;
            -o-background-size: 2vw auto;
               background-size: 2vw auto;
        padding-right: 2.5vw;
    }

    /* Banner Section */
    .sec_banner {
        margin: 7.089vw 0 10.425vw;
    }
    .list_banner {
        gap: 5.421vw;
    }
}

@media only screen and (max-width: 767px) {
    .inner {
        width: 7.08rem;
        max-width: 100%;
    }
    .mod_mb{
        margin-bottom: .5rem;
    }
    .title_wrap {
        width: 75%;
        margin-bottom: 0.50rem;
    }
    .title_wrap::before,
    .title_wrap::after {
        width: 1.00rem;
        height: 0.04rem;
    }
    .title_wrap h2 {
        font-size: 0.36rem;
        padding: 0 0.15rem 0.15rem 0.15rem;
    }
    .title_wrap span {
        font-size: 0.28rem;
        letter-spacing: 0.02rem;
    }
    .title_underline {
        font-size: 0.36rem;
        padding-bottom: 0.20rem;
        margin-bottom: 0.50rem;
    }
    .title_underline::after {
        width: 1.35rem;
        height: 0.03rem;
    }
    .title_base {
        font-size: 0.40rem;
    }
    .title_sm {
        font-size: 0.36rem;
    }
    .title_xs {
        font-size: 0.36rem;
    }
    .title_bg_gradient {
        font-size: 0.40rem;
        padding: 0.20rem 0.38rem;
    }
    .text_base,
    .text_base span {
        font-size: 0.26rem;
    }

    .txt_pdf,
    .text_base .txt_pdf{
        font-size: 0.26rem;
        margin-left: .05rem;
        padding: .05rem;
        text-decoration: none;
        line-height: 1;
        color: var(--sub3-color);
    }
    .text_lg {
        font-size: 0.28rem;
    }
    .text_sm {
        font-size: 0.24rem;
    }
    .button_base {
        width: 5.00rem;
        -webkit-border-radius: 0.50rem;
                border-radius: 0.50rem;
        border-width: 0.02rem;
        padding: 0.28rem 0;
    }
    .button_base span {
        font-size: 0.28rem;
    }
    .button_base .button_icon {
        width: 0.30rem;
        height: 0.30rem;
        margin-right: 0.10rem;
    }
    .button_base .button_icon::after {
        border-width: 0 0.03rem 0.03rem 0;
        padding: 0.04rem;
        left: 0.08rem;
        top: 0.09rem;
    }

    /*Link Anchor*/
    .list_buttons {
        gap: 0.20rem;
    }
    .list_buttons li {
        width: 2.00rem;
        border-width: 0.01rem;
        -webkit-border-radius: 0.05rem;
                border-radius: 0.05rem;
        padding: 0.15rem 0;
    }
    .list_buttons li a span {
        font-size: 0.24rem;
        padding-right: 0.25rem;
    }
    .list_buttons li a span::after {
        border-width: 0 0.03rem 0.03rem 0;
        padding: 0.05rem;
        top: 0.02rem;
    }

    .mod_txt_list,
    .mod_txt_list2,
    .mod_txt_list4 {
        margin-bottom: .15rem;
    }

    .mod_txt_list li,
    .mod_txt_list2 li,
    .mod_txt_list4 li{
        position: relative;
        padding-left: 1.5em;
        font-size: .26rem;
    }

    .mod_txt_list4 li { width: calc((100% - .3rem) / 2); }

    .mod_txt_list3 {
        padding: .1rem .1rem 0;
        margin-bottom: .15rem;
    }
    .mod_txt_list3 li {
        display: inline-block;
        position: relative;
        padding: 0 1.5em;
        margin-bottom: .1rem;
    }
    
    .mod_txt_list li:before,
    .mod_txt_list2 li:before,
    .mod_txt_list3 li:before,
    .mod_txt_list4 li:before {
        content: '●';
        position: absolute;
        font-size:.22rem;
        top: 0;
        left: 0;
    }

    .mod_txt_list3 li,
    .mod_txt_list3 li a{
        font-size: 0.26rem;
    }
    /*end of Link Anchor*/

    /*Contact Section*/
    .sec_contact {
        padding: 0.50rem 0 1.50rem;
    }
    .sec_contact h2 {
        font-size: 0.62rem;
        letter-spacing: 0.04rem;
        margin-bottom: 0.20rem;
    }
    .sec_contact h3 {
        margin-bottom: 0.35rem;
    }
    .sec_contact .button_wrap {
        gap: 0.35rem;
    }
    .button_lg {
        width: 5.00rem;
        -webkit-border-radius: 0.50rem;
                border-radius: 0.50rem;
        border-width: 0.02rem;
        padding: 0.28rem 0;
    }
    .button_lg span {
        font-size: 0.28rem;
    }
    .button_lg .button_icon {
        width: 0.30rem;
        height: 0.30rem;
        margin-right: 0.10rem;
    }
    .button_lg .button_icon::after {
        border-width: 0 0.03rem 0.03rem 0;
        padding: 0.04rem;
        left: 0.08rem;
        top: 0.09rem;
    }
    /*end of Contact Section*/
    
    /*Module Wrap*/
    .mod_wrap {
        margin-bottom: 0.85rem;
        border-width: 0.16rem;
        padding: 0.40rem 0.30rem;
    }
    .mod_wrap .img_mod {
        width: 100%;
        max-width: 5.60rem;
        margin: 0 auto;
    }
    .mod_wrap .mod_info {
        width: 100%;
    }
    .title_vertical {
        width: 100%;
        top: -0.07rem;
        right: auto;
        left: -0.09rem;
        -webkit-justify-content: flex-start;
                justify-content: flex-start;
        transform: none;
        z-index: 9;
    }
    .title_vertical span {
        font-size: 1.00rem;
        letter-spacing: -0.01rem;
    }
    .title_rectangle {
        width: 2.40rem;
        height: 2.40rem;
        border-width: 0.04rem;
    }
    .title_rectangle span {
        font-size: 0.32rem;
    }
    .button_pdf {
        width: 2.07rem;
        border-width: 0.01rem;
        -webkit-border-radius: 0.05rem;
                border-radius: 0.05rem;
        padding: 0.15rem 0;
    }
    .button_pdf span {
        font-size: 0.24rem;
        padding-right: 0.30rem;
    }
    .button_pdf span::after {
        width: 0.25rem;
        height: 0.25rem;
    }
    .mod_wrap.row_reverse .img_mod {
        margin: 0 auto;
    }
    .mod_wrap.row_reverse .title_vertical {
        left: -0.09rem;
    }
    .list_numbers li {
        padding-left: 0.30rem;
        text-indent: -0.30rem;
    }
    .list_dots li {
        padding-left: 0.20rem;
        text-indent: -0.20rem;
    }
    .mb-30 {
        margin-bottom: 0.30rem;
    }
    .col03_type01 {
        gap: 0.15rem;
    }
    .col03_type01 li {
        width: 48%;
    }

    .col04_type01 {
        gap: 0.15rem;
    }
    
    .col04_type01 li {
        width: 48%;
    }

    .col04_type01 .name_vertical {
        font-size: 0.30rem;
        letter-spacing: 0.03rem;
        text-shadow: 0px 0px 0.04rem var(--sub5-color);
        right: 0.05rem;
        top: 0.05rem;
    }

    .mv_mod {
        padding-top: 0.50rem;
    }
    .mv_mod .inner {
        width: 7.08rem;
    }

    .mv_mod .mv_content{
        width: 100%;
        height: 4.5rem;
    }

    .mv_mod .mv_content img{
        width: 100%;
        height: 100%;
        object-fit: cover;
    }
    .mv_mod .title_wrap {
        margin-bottom: 0.50rem;
    }
    .mv_mod .title_rectangle {
        margin-top: -0.50rem;
    }
    .main_mv {
        border-width: 0.06rem;
        border-top: none;
    }
    .main_mv .mv_wrap {
        width: 6.00rem;
        left: 0rem;
        top: 3rem;
        padding: 0.30rem;
    }
    .main_mv .mv_wrap h2 {
        font-size: 0.45rem;
        padding-bottom: 0.15rem;
        margin-bottom: 0.15rem;
    }
    .main_mv .mv_wrap h2::after {
        width: 4.00rem;
        height: 0.01rem;
    }
    .main_mv .mv_wrap span {
        font-size: 0.26rem;
    }

    /*Voice Section*/
    .sec_voices .title_wrap {
        margin-bottom: 0.25rem;
    }

    .sec_voices h3 {
        margin-bottom: 0.25rem;
    }

    /*end of Voice Section*/

    .about_content {
        width: 7.08rem;
        max-width: 100%;
    }

    .about_content .col03_type03 {
        gap: 0.20rem;
    }

    .about_content .col03_type03 {
        background: url(../../assets/images/junior/img_top_ebina_sp.jpg) no-repeat center;
        -webkit-background-size: auto;
        -o-background-size: auto;
        background-size: auto;
    }

    .about_content .col03_type03 li {
        width: 100%;
    }

    .about_content .col03_type03 .col03_info a span.txt_icon{
       background: url(../../assets/images/common/icon_link_blank.png) no-repeat right center;
       -webkit-background-size: .2rem auto;
            -o-background-size: .2rem auto;
               background-size: .2rem auto;
        padding-right: .35rem;
    }

    .about_content .col03_type03 .col03_info a:hover span.txt_icon{
       background: url(../../assets/images/common/icon_link.png) no-repeat right center;
       -webkit-background-size: .25rem auto;
            -o-background-size: .25rem auto;
               background-size: .25rem auto;
        padding-right: .35rem;
    }
    /*end of About Section*/

    /* Banner Section */
    .sec_banner {
        margin: 0.85rem 0 1.25rem;
    }
    .sec_banner .inner {
        max-width: 100%;
    }
    .list_banner {
        gap: 0.50rem;
    }
    .list_banner li {
        width: 100%;
        max-width: 100%;
    }
}