@media(max-width: 767px) {
    .banner-home::before {
        width: 437px;
        height: 253px;
        right: -147px;
        bottom: -28px;

    }

    .banner-home::after {
        width: 392px;
        height: 363px;
        left: -138px;
        top: -5px;
    }

    .banner-home-slide {
        width: calc(50vw + 200px);
        padding-top: 65px;
    }

    .banner-home-slide .main-slider {
        padding-left: 25px;
        height: 315px;
        width: 500px;
    }

    .home-about .right {
        padding-right: 0;
    }

    .main-slider .banner-slider-item {
        border-radius: 25px 0 0 25px;
        height: 300px
    }

    .main-slider .banner-slider-item img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
    }

    .link-banner {
        position: unset;
        margin: 0 20px;
        padding-top: 28px;
    }


    .sm-link-banner {
        width: 100%;
    }

    .img-banner {
        width: 280px;
        height: 100px;
        left: 10px;
        top: 10px;
    }



    .banner-home-slide::before {
        width: 55px;
        height: 38px;
        left: 6px;
        z-index: 1;
        top: 120px;
    }

    .banner-home-slide::after {
        width: 116px;
        height: 62px;
        right: calc(50% - 186px);
        z-index: 1;
        bottom: -27px;
    }

    .img-banner img {
        height: unset;
    }

    .banner-home .slick-dots {
        position: relative;
        gap: 11px;
        left: calc(50% - 120px);
        transform: translateX(50%);
        bottom: -15px;
        justify-content: center;
        width: fit-content;
    }

    .banner-home .slick-dots li {
        width: 10px;
        height: 10px;
    }

    .main-title-jp {
        font-size: 3rem;
    }

    .home-news .col-inner.left {
        padding-right: 11px;
    }

    .home-news .col-inner.right {
        padding-right: 4px;
        padding-left: 9px;
    }

    a.cat {
        height: 22px;
        font-size: 1.2rem;
        padding: 5px 10px;
        bottom: -4px;
    }

    .date {
        font-size: 1.2rem;
        padding-bottom: 6px;
    }

    .news-img {
        margin-bottom: 9px;
    }

    .date::before {
        width: 60px;
    }

    .news-item.item-list .title a {
        font-size: 1.4rem;
        line-height: 1.3;
    }

    .box-news-btn {
        position: unset;
        justify-content: center;
        display: flex;
    }

    a.btn.btn-main {
        min-width: 215px;
        min-height: 50px;
        padding: 8px 13px 10px 22px;
        border: unset;
    }

    .home-news .main-title::before {
        left: 0;
        transform: unset;
    }

    .main-title::before {
        width: 38px;
        height: 9px;
        left: 50%;
        transform: translateX(-50%);
    }

    .main-title {
        padding-bottom: 19px;
    }

    a.btn.btn-main::after {
        width: 25px;
        height: 25px;
    }

    .img-about {
        padding: 0 15px;
    }

    .radius-sm-15 img {
        border-radius: 15px;
    }

    .img-about::after {
        width: 115px;
        height: 51px;
        left: -12px;
        bottom: -16px;
    }

    .home-about::after {
        width: 392px;
        height: 363px;
        top: 55px;
        right: calc(50% - 420px);
    }

    .home-about .img-about,
    .home-policy .img-about {
        margin-bottom: 20px;
    }

    .main-title-en {
        font-size: 1.9rem;
        letter-spacing: 0.075em;
        text-align: center;
    }

    .main-title-jp-inside {
        font-size: 2.5rem;
        text-align: center;
    }

    .box-btn-about {
        display: flex;
        justify-content: center;
    }

    .home-policy .img-about::after {
        width: 145px;
        height: 80px;
        right: calc(50% - 190px);
        bottom: -16px;
    }

    .home-policy a.btn.btn-main {
        min-width: 225px;
    }

    .home-policy::after {
        width: 430px;
        height: 364px;
        left: calc(50% - 390px);
        top: 287px;
    }

    .home-education::after {
        width: 467px;
        height: 72px;
        left: 50%;
        transform: translateX(-50%);
        top: 28px;
    }

    #home-education::after {
        width: 100%;
        height: 86.77%;
        transform: unset;
        top: 65px;
    }

    .home-education::before {
        width: 467px;
        height: 72px;
        left: 50%;
        transform: translateX(-50%);
        bottom: 0;
    }

    .text-point {
        font-size: 2.2rem;
        top: -11px;
        width: 80px;
        padding-top: 2px;
    }

    .text-point::after {
        width: 81px;
        height: 27px;
        top: -2px;
        transform: translateX(-50%) rotate(-4.5deg);
    }

    .img-education {
        border: 2px solid #fff;
    }

    .home-education .col-6.left {
        padding-right: 20px;
        padding-left: 25px;
    }

    .home-education .col-6.right {
        padding-right: 25px;
        padding-left: 20px;
    }

    .box-img-education::after {
        width: 33px;
        height: 33px;
        top: 95px;
    }

    a.title-edu {
        margin-top: 10px;
        font-size: 1.4rem;
        line-height: 1.25;
        letter-spacing: 0.075em;
    }

    .box-education {
        margin-bottom: 20px;
    }

    .home-life::after {
        width: 506px;
        height: 316px;
        right: -332px;
        top: -172px;
    }

    .img-life::after {
        width: 121px;
        height: 45px;
        left: 8px;
        top: -30px;
    }

    .img-life {
        width: 100%;
        height: auto;
        padding: 0 15px;
        margin-bottom: 15px;
    }

    .img-life img {
        position: unset;
        border-radius: 15px;
        max-width: 100%;
    }

    .box-life-btn {
        flex-direction: column;

    }

    .btn-life {
        width: 100%;
        min-height: 55px;
        height: unset;
        display: flex;
        flex-direction: row;
        position: relative;
        padding: 5px 60px 5px 20px;
        justify-content: unset;
        font-size: 1.5rem;
        border-radius: 8px;
    }

    .box-life-btn .btn-life-1 img {
        width: 28px;
        height: 28px;
    }

    .box-life-btn .btn-life-1,
    .box-life-btn .btn-life-2 {
        padding-right: 16px;
        width: 46px;
    }

    .box-life-btn .btn-life-3 {
        padding-right: 15px;
        display: flex;
        justify-content: center;
        width: 46px;
    }

    .box-life-btn .btn-life-2 img {
        width: 30px;
        height: 29px;
    }

    .box-life-btn .btn-life-3 img {
        width: 17px;
        height: 26px;
    }

    .btn-life::after {
        content: "";
        position: absolute;
        width: 25px;
        height: 25px;
        background-image: url(../images/index/icon-right-2.svg);
        background-size: 100% 100%;
        background-position: center;
        background-repeat: no-repeat;
        right: 13px;
        top: 50%;
        transform: translateY(-50%);
    }

    .home-admission::after {
        border-radius: 15px;
    }

    .home-admission-right {
        padding-left: 0;
    }

    .home-admission-right img {
        max-width: 100%;
        border-radius: 15px;
    }

    .home-admission-right::after {
        width: 85px;
        height: 78px;
        left: -12px;
        bottom: -10px;
    }

    .home-admission .container {
        padding: 0 50px;
    }

    .list-link-admis {
        display: unset;

    }

    .list-link-admis .link-admis {
        width: 100%;
        font-size: 1.4rem;
        padding-right: 40px;
        padding-top: 15px;
        padding-bottom: 10px;
    }

    .link-admis::after {
        width: 18px;
        height: 18px;
        right: 7px;
    }

    .box-btn-home-admission {
        display: flex;
        justify-content: center;
        margin-top: 20px;
    }

    .home-support .main-title {
        display: flex;
        padding-right: 35px;
        justify-content: space-between;
        position: relative;
        padding-bottom: 0;
        margin-bottom: 10px;

    }

    .home-support .main-title::before {
        content: "";
        position: absolute;
        width: 24px;
        height: 24px;
        background-image: url(../images/index/icon-right-2.svg);
        background-size: 100% 100%;
        background-position: center;
        background-repeat: no-repeat;
        right: 0;
        top: 50%;
        transform: translateY(-50%);
        left: unset;
        bottom: unset;
    }

    .home-support-left img {
        border-radius: 8px;
    }

    .link-support a {
        position: relative;
    }

    .link-support a::before {
        content: "";
        position: absolute;
        width: 103px;
        height: 81px;
        background-image: url(../images/index/img-link-sp-sm1.svg);
        background-size: 100% 100%;
        background-position: center;
        background-repeat: no-repeat;
        left: -14px;
        top: -15px;
    }

    .home-guardian .container {
        padding: 0 18px;
    }

    .box-home-guardiant::after {
        top: -30px;
        width: 75px;
        height: 66px;
        right: 0px;
    }

    .box-home-guardiant {
        padding: 20px 17px 30px 20px;
        z-index: 1;
    }

    .box-home-guardiant .main-title.center::after {
        content: "";
        background-image: url(../images/index/after-title.webp);
        background-size: 100% 100%;
        background-position: center;
        background-repeat: no-repeat;
        position: absolute;
        bottom: 0;
        width: 38px;
        height: 9px;
        left: 50%;
        transform: translateX(-50%);
    }

    a.btn.btn-cs {
        min-height: 55px;
        padding: 5px 20px 5px 63px;
        font-size: 1.7rem;
    }

    a.btn.btn-cs::after {
        width: 20px;
        height: 20px;
    }

    .box-link-file {
        flex-direction: column;
        gap: 10px;
    }

    a.btn.btn-file {
        min-width: 100%;
        min-height: 55px;
        padding: 5px 14px 5px 53px;
    }

    a.btn.btn-file::before {
        width: 24px;
        height: 24px;
    }

    a.btn.btn-file::after {
        width: 17px;
        height: 21px;
        left: 18px;
    }

    .box-home-guardiant::before {
        width: 40px;
        height: 33px;
        left: 19px;
        bottom: -20px;
    }

    .home-guardian::after {
        width: 479px;
        height: 277px;
        left: calc(50% - 455px);
        top: -455px;
    }

    #home-recruit {
        position: relative;
        z-index: 1;
    }


    .home-recruit::after {
        content: none;
    }

    #home-guardian > span {
        display: block;
        position: absolute;
        width: 392px;
        height: 358px;
        background-image: url(../images/index/may-3.webp);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        right: -225px;
        top: 250px; /* 位置をGuardianセクション内に調整 */
        z-index: -1;
    }

    .box-home-recruit {
        border-radius: 15px;
        padding: 165px 25px 28px 25px;
        position: relative;
        z-index: 1;
    }

    .img-recruit {
        position: relative;
    }

    .img-recruit img {
        position: absolute;
        top: -15px;
        transform: translateY(-100%);
    }

    .box-btn-recruit {
        display: flex;
        justify-content: center;
    }

    a.btn.btn-cs svg.num-01 {
        left: 16px;
        top: 50%;
        transform: translateY(-50%);
        width: 26px;
        height: 18px;
    }

    a.btn.btn-cs svg.num-02 {
        left: 17px;
        top: 50%;
        transform: translateY(-50%);
        width: 24px;
        height: 26px;
    }

    .scroll-slide {
        width: 388vw;
    }

    .slide-home-item {
        margin: 0 11px;
    }

    .slide-home-item img {
        width: 99px;
        height: 99px;
        border-radius: 8px;
    }

    a.btn.btn-cs svg.num-03 {
        left: 16px;
        top: 50%;
        transform: translateY(-50%);
        width: 28px;
        height: 26px;
    }

    a.btn.btn-contact {
        font-size: 1.5rem;
        min-height: 75px;
        line-height: 1.3;
        padding-right: 23px;
        padding-left: 27px;
        gap: 22px;
    }

    a.btn.btn-contact::after {
        width: 26px;
        height: 26px;
    }

    .home-contact .col-inner.left img {
        width: 59px;
        height: 40px;
    }

    .box-contact-border {
        padding: 20px 25px 25px 25px;
    }

    .box-contact-border a.tel span {
        font-size: 2.3rem;
    }

    .box-contact-border a.tel {
        font-size: 2.6rem;
        gap: 15px;
    }

    .box-contact-border a.btn.btn-main {
        min-width: 100%;
        min-height: 50px;
        padding: 5px 12px 5px 55px;
        font-size: 1.4rem;
    }

    a.btn.btn-main.btn-mail::before {
        width: 19px;
        height: 14px;
        left: 22px;
    }

    .home-contact::after {
        width: 505px;
        height: 317px;
        left: calc(50% - 482px);
        top: 458px;
    }

    .home-map::after {
        width: 151px;
        height: 49px;
        top: -38px;
        right: calc(50% - 167px);
    }

    .footer-top {
        padding: 25px 15px;
    }

    .footer-left {
        flex-direction: column;
        gap: 18px;
    }

    .home-contact-top {
        height: 48px;
        width: 238px;
    }

    .txt-ct {
        display: flex;
        justify-content: center;
    }

    a.btn.btn-main.btn-mail {
        padding-left: 55px;
        min-width: 257px;
    }

    .box-footer {
        background-color: #e6f0ff;
        flex-wrap: wrap;
        gap: 12px;
    }

    .footer-end {
        background-color: #e6f0ff;
    }

    .footer .container.footer-end {
        padding: 28px 25px;
    }

    .box-footer .link-blank {
        color: #353f8f;
    }

    a.link-blank::after {
        background-image: url(../images/index/icon-blank-blue.svg);
    }

    .home-education-cont::before {
        width: 85px;
        height: 65px;
        top: -60px;
        left: calc(50% - 156px);
    }

    .home-education-cont::after {
        width: 53px;
        height: 66px;
        bottom: 103px;
        right: calc(50% - 124px);
    }


}