@media (max-width: 768px) {
    header.desktop {
        display: none;
    }

    header.mobile {
        display: flex;
        width: 100%;
        max-width: 375px;
        height: 53px;
        background-color: #fff;
        justify-content: space-between;
        align-items: center;
        padding: 0 20px;
        position: relative;
        margin: 0 auto;
    }

    header.mobile::after {
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        width: 100%;
        height: 2px;
    }

    header.mobile .logo-name {
        height: 53px;
        display: flex;
        align-items: center;
    }

    header.mobile .logo-name a {
        display: flex;
        align-items: center;
        text-decoration: none;
    }

    header.mobile .logo-name .logo-image {
        height: 40px;
        width: auto;
        margin-right: 8px;
    }

    header.mobile .logo-name .logo-text {
        font-size: 20px;
        font-weight: 700;
        color: #03315A;
    }

    header.mobile .menu {
        display: flex;
        align-items: center;
        gap: 15px;
    }

    header.mobile .menu .menu-icon {
        display: flex;
        flex-direction: column;
        align-items: center;
        text-decoration: none;
        gap: 5px;
        justify-content: flex-start;
        height: 42px;
    }

    header.mobile .menu .menu-icon img {
        width: 32px;
        height: 32px;
        display: block;
        flex-shrink: 0;
        object-fit: contain;
    }

    header.mobile .menu .menu-icon.tel img {
        width: 23px;
        height: 23px;
    }

    header.mobile .menu .menu-icon.inquiry img {
        width: 21px;
        height: 15px;
        margin-top: 4px;
        margin-bottom: 4px;
    }

    header.mobile .menu .menu-icon.materials img {
        width: 15px;
        height: 19px;
        margin-top: 2px;
        margin-bottom: 2px;
    }

    header.mobile .menu .menu-icon span {
        font-size: 8px;
        color: #1C66BF;
        font-weight: 500;
        line-height: 1;
        text-align: center;
        white-space: nowrap;
        height: 10px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #gozaruGateInformationRequestForm .ggirf-container{
        width: 345px;
        margin: 0 auto;
    }

    #gozaruGateContact{
        width: 100%;
    }

    #gozaruGateInformationRequestForm .ggirf-container h4{
        font-size: 26px;
    }

    #gozaruFooter .gf-container{
        width: 335px;
    }

    #gozaruFooter .gf-container .gfc-top .gfct-item:nth-child(2){
        display: none;
    }

    #gozaruFooter .gf-container .gfc-top .gfct-item h4{
        font-size: 20px;
        font-weight: 500;
        margin-bottom: 20px;
        line-height: 26px;
    }

    #gozaruFooter .gf-container .gfc-top .gfct-item p{
        font-size: 14px;
        font-weight: 600;
        line-height: 26px;
        margin-bottom: 20px;
    }

    #gozaruFooter .gf-container .gfc-top .gfct-item .actions{
        display: grid;
        grid-template-columns: repeat(2, 1fr);     
        gap: 5px;   
    }

    #gozaruFooter .gf-container .gfc-top .gfct-item .actions a{
        font-size: 14px;
    }

    #gozaruFooter{
        height: 250px;
    }

    #gozaruFooter .gf-container .gfc-top{
        height: 180px;        
    }
}

@media (max-width: 1220px){
    #gozaruFooter .gf-container{
        width: 100%;
        padding: 0 15px;
    }
}

/* Medium devices (≥769px) - Adjust for screens 769px to 1114px */
@media (min-width: 769px) and (max-width: 1114px) {
    header.desktop {
        display: block;
    }

    header.mobile {
        display: none;
    }

    header.desktop .logo-name {
        padding-left: 25px;
    }

    header.desktop .logo-name .logo-image {
        height: 52px;
    }

    header.desktop .logo-name .logo-text {
        font-size: 26px;
    }

    header.desktop .contact-center {
        padding-right: 25px;
    }

    header.desktop .contact-center .contact-label {
        font-size: 8px;
    }

    header.desktop .contact-center .phone-number {
        font-size: 20px;
    }

    header.desktop .contact-center .phone-icon {
        width: 32px;
        height: 32px;
    }

    header.desktop .menu .btn-request-for-information {
        width: 150px;
        font-size: 10px;
        padding: 0 12px;
    }

    #gozaruGateBanner {
        height: auto;
        aspect-ratio: 1920 / 755;
        max-height: 755px;
    }

    #gozaruGateBanner .banner-content {
        padding-left: 30px;
        padding-top: 60px;
        max-width: 100%;
    }

    #gozaruGateBanner .banner-text {
        width: 100%;
        max-width: 450px;
    }

    #gozaruGateBanner .banner-text .text-line-1 {
        font-size: 36px;
        line-height: 48px;
    }

    #gozaruGateBanner .banner-text .text-line-2 {
        font-size: 36px;
    }

    #gozaruGateBanner .banner-text .text-line-3 {
        font-size: 56px;
        transform: scale(1.15, 1);
    }

    #gozaruGateBanner .banner-text .text-line-4,
    #gozaruGateBanner .banner-text .text-line-5 {
        font-size: 24px;
        height: 50px;
        line-height: 50px;
        padding-left: 30px;
        padding-right: 30px;
    }

    #gozaruGateBanner .banner-text-deco {
        width: 450px;
        height: auto;
        margin-left: -350px;
    }
}


/* Desktop devices (≥769px) - Default desktop view */
@media (min-width: 769px) {
    header.desktop {
        display: block;
    }

    header.mobile {
        display: none;
    }

    .pc-banner {
        display: block;
    }

    /* Hide mobile banner on desktop */
    #gozaruGateBannerMobile.mobile {
        display: none;
    }
}

/* Large desktop devices (≥1115px) - Scale banner proportionally */
@media (min-width: 1115px) and (max-width: 1919px) {
    #gozaruGateBanner {
        height: calc(100vw * 755 / 1920);
        max-height: 755px;
    }
}

@media (max-width: 1750px) {
    #gozaruGateBanner .banner-content{
        padding-top: 65px;
    }
}

@media (max-width: 1560px) {
    #gozaruGateBanner .banner-content{
        padding-top: 75px;
    }

    #gozaruGateBanner .banner-text .text-line-1,
    #gozaruGateBanner .banner-text .text-line-2{
        font-size: 40px;
        margin-bottom: 0;
        line-height: 52px;
    }

    #gozaruGateBanner .banner-text .text-divider-thin:first-of-type{
        margin: 0 0 0 15px;
    }

    #gozaruGateBanner .banner-text .text-divider-thin.ni{
        margin: 5px 0 0 15px;
    }

    #gozaruGateBanner .banner-text .text-line-3{
        font-size: 65px;
    }

    #gozaruGateBanner .banner-text{
        width: 502px;
    }

    #gozaruGateBanner .banner-text .text-line-4,
    #gozaruGateBanner .banner-text .text-line-5{
        font-size: 28px;
        padding-left: 35px;
    }
}

@media (max-width: 1450px){
    #gozaruGateBanner{
        background: url(../images/gozaru-gate/banner-bg-right-1.png) no-repeat, url(../images/gozaru-gate/banner-bg-right-2.png) no-repeat, url(../images/gozaru-gate/banner-bg-left-1.png) no-repeat, url(../images/gozaru-gate/banner-bg-left-2.png) no-repeat, url(../images/gozaru-gate/banner-bg-center.png) no-repeat;
        background-size: contain, contain, contain, contain, contain;
        background-position: right center, right center, left center, left center, right 80px top;
    }

    #gozaruGateBanner .banner-text-deco{
        display: none;
    }
}

@media (max-width: 1114px){
    #gozaruGateBanner{
        background: url(../images/gozaru-gate/banner-bg-right-1.png) no-repeat, url(../images/gozaru-gate/banner-bg-right-2.png) no-repeat, url(../images/gozaru-gate/banner-bg-left-1.png) no-repeat, url(../images/gozaru-gate/banner-bg-left-2.png) no-repeat, url(../images/gozaru-gate/banner-bg-center.png) no-repeat;
        background-size: contain, contain, contain, contain, contain;
        background-position: right center, right center, left center, left center, right 68px top;
    }

    #gozaruGateBanner .banner-text .text-line-3{
        font-size: 45px;
        margin: 10px 0;
    }

    #gozaruGateBanner .banner-text{
        width: 330px;
    }

    #gozaruGateBanner .banner-text .text-line-1,
    #gozaruGateBanner .banner-text .text-line-2{
        font-size: 25px;
        margin-bottom: 0;
        line-height: 35px;
    }

    #gozaruGateBanner .banner-text .text-line-4,
    #gozaruGateBanner .banner-text .text-line-5{
        font-size: 15px;
        padding-left: 20px;
        height: 45px;
        line-height: 45px;
    }

    #gozaruGateBanner .banner-text .text-line-4{
        margin-bottom: 10px;
    }

    header.desktop,
    header.desktop .logo-name,
    header.desktop .header-right{
        height: 70px;
    }
}

@media (max-width: 768px) {
    .pc-banner {
        display: none;
    }

    #gozaruGateBanner.desktop {
        display: none;
    }

    /* Mobile Banner Styles */
    #gozaruGateBannerMobile {
        display: block;
        width: 100%;
        width: 375px;
        margin: 0 auto;
        background-color: #fff;
        height: 554px;
    }

    #gozaruGateBannerMobile .mobile-banner-text-section{
        width: 100%;
        height: 261px;
        margin-bottom: 15px;
        background: 
            url("../images/gozaru-gate/banner-mobile-bg-01-top.png") no-repeat,
            url("../images/gozaru-gate/banner-mobile-bg-01-bottom.png") no-repeat;
        background-size: contain, contain;
        background-position: left center, left center;
        padding-left: 39px;
        padding-top: 27px;
    }

    #gozaruGateBannerMobile .mobile-banner-image-section{
        width: 100%;
        height: 278px;
        background: 
            url("../images/gozaru-gate/banner-mobile-bg-02-top.png") no-repeat,
            url("../images/gozaru-gate/banner-mobile-bg-02-bottom.png") no-repeat;
        background-size: contain, contain;
        background-position: right center, right center;
        position: relative;
    }

    #gozaruGateBannerMobile .mobile-banner-image-section img.mb-bg-main{
        width: 282.7px;
        height: 248.8px;
        position: absolute;
        bottom: 15px;
        left: 50%;
        margin-left: -141.35px;
        z-index: 2;
    }

    #gozaruGateBannerMobile .mobile-banner-image-section img.mb-bg-text{
        width: 221.1px;
        height: 63.6px;
        position: absolute;
        bottom: 15px;
        right: 0;
        z-index: 3;
    }

    #gozaruGateBannerMobile .mobile-banner-text-section .text-line-3{
        font-size: 37px;
        font-weight: 500;
        line-height: 57px;
        color: #fff;
        transform: scale(1.21, 1);
        transform-origin: left center;
        display: inline-block;
    }

    #gozaruGateBannerMobile .mobile-banner-text-section .text-divider-thin{
        width: 285.3px;
        height: 2px;
        background-color: #fff;
        margin-bottom: 8px;
    }

    #gozaruGateBannerMobile .mobile-banner-text-section .text-divider-thin.ni{
        margin-bottom: 0;
        margin-top: 8px;
    }

    #gozaruGateBannerMobile .mobile-banner-text-section .text-line-1,
    #gozaruGateBannerMobile .mobile-banner-text-section .text-line-2{
        font-size: 23px;
        font-weight: 500;
        color: #fff;
        line-height: 30px;
        text-align: center;
        width: 285px;
    }

    #gozaruGateBannerMobile .mobile-banner-text-section .text-line-2 .text-yellow{
        color: #FFFF00;
    }

    #gozaruGateBannerMobile .mobile-banner-text-section .text-line-4,
    #gozaruGateBannerMobile .mobile-banner-text-section .text-line-5{
        font-size: 16px;
        font-weight: 500;
        color: #181919;
        height: 31.5px;
        line-height: 31.5px;
        background-color: #fff;
        padding-left: 15px;
        display: inline-block;
        max-width: 285.3px;
    }

    #gozaruGateBannerMobile .mobile-banner-text-section .text-line-4{
        margin-bottom: 7.5px;
        padding-right: 30px;
    }

    #gozaruGateBannerMobile .mobile-banner-text-section .text-line-4 .text-yellow{
        color: #b2ab18;
    }

    #gozaruGateBannerMobile .mobile-banner-text-section .text-line-5{
        width: 279px;
    }

    #gozaruGraduateHiringConcerns{
        display: none;
    }

    #gozaruGraduateHiringConcernsMobile{
        display: block;
        width: 375px;
        height: 464px;
        margin: 0 auto;
        background-color: #EBECEC;
        padding: 23px 16px 22px 15px;
    }

    #gozaruGraduateHiringConcernsMobile .ghcm-container{
        width: 100%;
        height: 100%;
        background: url(../images/gozaru-gate/graduate-hiring-concerns-mb-bg-top.png) no-repeat,
                    url(../images/gozaru-gate/graduate-hiring-concerns-mb-bg-bottom.png) no-repeat;
        background-size: contain, contain;
        background-position: left center, left center;
        padding: 16px 9px 26px 10px;
    }

    #gozaruGraduateHiringConcernsMobile .ghcm-container h4{
        font-size: 24px;
        color: #fff;
        font-weight: 600;
        text-align: center;
        margin-bottom: 20px;
    }

    #gozaruGraduateHiringConcernsMobile .ghcm-container .ghcm-reasons{
        display: flex;
        flex-direction: column;
        gap: 15px;
        align-items: center;
    }

    #gozaruGraduateHiringConcernsMobile .ghcm-container .ghcm-reasons .reason{
        padding-left: 43px;
        width: 325px;
        height: 60px;
        border-radius: 85px;
        background-color: #fff;
        box-shadow: 3px 3px 10px #0000001C;
        font-size: 15px;
        font-weight: 600;
        color: #333333;
        position: relative;
        display: flex;
        align-items: center;
    }

    #gozaruGraduateHiringConcernsMobile .ghcm-container .ghcm-reasons .reason::before{
        content: "";
        position: absolute;
        left: 10px;
        top: 50%;
        transform: translateY(-50%);
        width: 25px;
        height: 25px;
        background: url(../images/gozaru-gate/graduate-hiring-concerns-icon.png) no-repeat;
        background-size: contain;
        background-position: center;
    }

    #gozaruGateSection01{
        display: none;
    }

    #gozaruGateSection01Mobile{
        display: flex;
        flex-direction: column;
        width: 375px;
        height: 310.5px;
        position: relative;
        margin: 0 auto;
    }

    #gozaruGateSection01Mobile .ggs01m-cover{
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;        
        background: url(../images/gozaru-gate/gozaru-gate-section-mb-01-02.png) no-repeat;
        background-size: 172.68px 188.68px;
        background-position: right -20px top;
        pointer-events: none;
    }

    #gozaruGateSection01Mobile .ggs01m-top{
        background-color: #1D67BF;
        mix-blend-mode: multiply;
        height: 115px;
        width: 100%;
        display: flex;
        align-items: center;
    }

    #gozaruGateSection01Mobile .ggs01m-top h4{
        font-size: 22px;
        color: #fff;
        font-weight: 500;
        line-height: 32px;
        text-align: center;
        width: 100%;
        margin-bottom: 0;
    }

    #gozaruGateSection01Mobile .ggs01m-bot{
        background-color: #fff;
        padding-top: 35.5px;
        padding-bottom: 32px;
        padding-right: 15px;
        height: 195.5px;
        display: flex;
        justify-content: end;
        background: url(../images/gozaru-gate/gozaru-gate-section-01-01.png) no-repeat;
        background-size: 84px 119px;
        background-position: left 15px center;
    }

    #gozaruGateSection01Mobile .ggs01m-bot .content{
        width: 260px;
        height: 128.23px;
        background-color: #F2F264;
        border-radius: 16px;
        padding: 7px 14px 11px 13px;
    }

    #gozaruGateSection01Mobile .ggs01m-bot .content{
        font-size: 18px;
        font-weight: 600;
        color: #3E4244;
        letter-spacing: -0.2px;
        line-height: 28px;
    }

    #gozaruGateSection02{
        display: none;
    }
    
    #gozaruGateSection02Mobile{
        display: block;
        width: 375px;
        margin: 0 auto;
    }

    #gozaruGateSection02Mobile .ggs02c-sub-title{
        font-size: 24px;
        font-weight: 500;
        color: #195776;
        text-align: center;
        margin-bottom: 10px;
    }

    #gozaruGateSection02Mobile .ggs02c-steps{
        display: flex;
        flex-direction: column;
        padding: 0 15px;
        gap: 15px;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step{
        height: 288px;
        background-color: #455DAA;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step .ggs02css-title{
        height: 77px;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 20px;
        font-weight: 500;
        color: #fff;
        line-height: 28px;
        text-align: center;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step .ggs02css-content{
        width: 325px;
        height: 201px;
        background-color: #fff;
        border-radius: 16px;
        border-radius: 15px;
        margin: 0 auto;
    }
    
    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step .ggs02css-content .ggs02css-content-title{
        height: 68.55px;
        display: flex;
        align-items: center;
        justify-content: center;
        align-items: center;
        font-size: 18px;
        font-weight: 500;
        color: #071B33;
        text-align: center;
        position: relative;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step .ggs02css-content .ggs02css-content-title::after{
        content: "";
        position: absolute;
        width: 59px;
        height: 3px;
        background-color: #A4940B;
        left: 50%;
        transform: translateX(-50%);
        bottom: 0;
        border-radius: 2px;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step.ni .ggs02css-content .ggs02css-content-title{
        flex-direction: column;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step.ni .ggs02css-content .ggs02css-content-title span.smaller-text{
        font-size: 10px;
        line-height: 12px;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step .ggs02css-content .ggs02css-content-points{
        height: 132px;
        padding-left: 15px;
        display: flex;
        flex-direction: column;
        font-size: 15px;
        color: #262727;
        line-height: 20px;
        font-weight: 500;   
        justify-content: center;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step.ichi .ggs02css-content .ggs02css-content-points{
        background: url("../images/gozaru-gate/gozaru-gate-section-02-01.png") no-repeat;
        background-size: 62px 118px;
        background-position: right 20px bottom 11px;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step.ni .ggs02css-content .ggs02css-content-points{
        background: url("../images/gozaru-gate/gozaru-gate-section-02-02.png") no-repeat;
        background-size: 83px 108px;
        background-position: right 22.5px bottom 16px;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step.san .ggs02css-content .ggs02css-content-points{
        background: url("../images/gozaru-gate/gozaru-gate-section-02-03.png") no-repeat;
        background-size: 82.3px 106.3px;
        background-position: right 10px bottom 8px;
    }

    #gozaruGateSection02Mobile .ggs02c-steps .ggs02cs-step.yon .ggs02css-content .ggs02css-content-points{
        background: url("../images/gozaru-gate/gozaru-gate-section-02-04.png") no-repeat;
        background-size: 98px 100.6px;
        background-position: right 1px bottom 11px;
    }

    #gozaruGateSection02Mobile .ggs02c-socials{
        height: 356.8px;
    }

    #gozaruGateSection02Mobile .ggs02c-socials .ggs02cs-container{
        width: 345px;
        height: 100%;
        margin: 0 auto;
        padding-top: 26px;
        padding-bottom: 40px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

    #gozaruGateSection02Mobile .ggs02c-socials .ggs02cs-container h4{
        text-align: center;
        margin-bottom: 23px;
    }

    #gozaruGateSection02Mobile .ggs02c-socials .ggs02cs-container h4 p{
        display: inline-block;
        font-size: 15px;
        font-weight: 500;
        color: #333333;
        position: relative;
        z-index: 1;
    }

    #gozaruGateSection02Mobile .ggs02c-socials .ggs02cs-container h4 p::after{
        content: "";
        position: absolute;
        width: 100%;
        height: 13px;
        background-color: #F2F264;
        border-radius: 16px;
        left: 0;
        bottom: -5px;
        z-index: -1;
    }

    #gozaruGateSection02Mobile .ggs02c-socials .ggs02cs-container iframe{
        width: 345px;
        height: 194.6px;
        margin: 0 auto 12px auto;
    }

    #gozaruGateSection02Mobile .ggs02c-socials .ggs02cs-container .youtube-thumb{
        width: 345px;
        height: 194.6px;
        margin: 0 auto 12px auto;
    }

    #gozaruGateSection02Mobile .ggs02c-socials .ggs02cs-container .sub-title{
        font-size: 14px;
        font-weight: 500;
        color: #333333;
        text-align: left;
    }

    #gozaruGateSection03 .ggs03-container{
        width: 375px;
        padding: 60px 15px 0 15px;
    }

    #gozaruGateSection03 .ggs03-container .ggs03c-steps{
        display: flex;
        flex-direction: column;
        gap: 20px;
        width: auto !important;
    }

    .ggs03c-steps .ggs03cs-step:nth-child(-n+4)::after{
        content: none;
    }

    .ggs03c-steps .ggs03cs-step:nth-child(-n + 3){
        margin-bottom: unset;
    }

    .ggs03c-steps .ggs03cs-step{
        height: 334px;
    }

    .ggs03c-steps .ggs03cs-step .step{
        width: 100%;
        height: 334px;
    }

    .ggs03c-steps .ggs03cs-step.roku{        
        height: 152px;
        padding-top: 10px;
    }

    #gozaruGateSection03 .ggs03-container h4{
        font-size: 30px;
        margin-bottom: 35px;
    }

    #gozaruGateSection03{
        height: auto;
        padding-bottom: 47px;
        width: 375px;
        margin: 0 auto;
    }

    .ggs03c-steps .ggs03cs-step.san::after{
        content: none !important;
    }

    .ggs03c-steps .ggs03cs-step.roku .step{
        height: auto;
    }

    #gozaruQnA .container{
        padding-top: 46px;
    }

    #gozaruQnA .container h4{
        font-size: 30px;
        margin-bottom: 36px;
    }

    #gozaruQnA .container .couple{
        padding-right: 15px;
        padding-left: 49px;
        margin-bottom: 40px;
    }

    #gozaruQnA .container .couple .question{
        font-size: 16px;
        line-height: 28px;
        margin-bottom: 15px;
    }

    #gozaruQnA .container .couple .question::before,
    #gozaruQnA .container .couple .answer::before{
        width: 28px;
        height: 28px;
        font-size: 14px;
        font-weight: 500;
        line-height: 28px;
        left: -34px;
    }

    #gozaruQnA .container .couple .answer{
        font-size: 14px;
        line-height: 20px;
    }

    #gozaruGateSection04{
        display: none;
    }

    #gozaruGateSection04Mobile{
        display: block;
        width: 375px;
        margin: 0 auto;
        height: 268px;
        display: flex;
        flex-direction: column;
        background-color: #1C66BF;
        padding: 25px 15px 69px 15px;
        position: relative;
        z-index: 1;
    }

    #gozaruGateSection04Mobile .overlay{
        position: absolute;
        left: 0;
        bottom: 0;
        width: 134px;
        height: 157.7px;
        z-index: 3;
        overflow: hidden;
    }

    #gozaruGateSection04Mobile .overlay img.person{
        width: 100%;
    }

    #gozaruGateSection04Mobile .ggs04-container{
        width: 345px;
        height: 174px;
        border-radius: 15px;
        background-color: #fff;
        display: flex;
        flex-direction: column;
        padding-top: 24px;
        z-index: 2;
    }

    #gozaruGateSection04Mobile .ggs04-container p{
        font-size: 16px;
        color: #0F2342;
        font-weight: 500;
    }

    #gozaruGateSection04Mobile .ggs04-container p.ichi{
        margin-bottom: 8px;
        padding-left: 25px;
    }

    #gozaruGateSection04Mobile .ggs04-container p.ni{
        margin-bottom: 22px;
        padding-left: 25px;
        padding-right: 25px;
    }

    #gozaruGateSection04Mobile .ggs04-container p.san{
        padding-left: 117px;
    }
}

@media (max-width: 1800px) {
    #gozaruGraduateHiringConcerns{
        padding: unset;
        padding-top: 50px;
        padding-bottom: 50px;        
    }

    #gozaruGraduateHiringConcerns .ghc-container{
        width: 1600px;
        margin: 0 auto;
        padding-top: unset;
        display: flex;
        align-items: center;
    }
}

@media (max-width: 1600px) {
    #gozaruGraduateHiringConcerns .ghc-container{
        width: 1300px;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container{
        justify-content: center;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-reasons .reason{
        font-size: 20px;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-reasons{
        width: 820px;
        gap: 15px;
    }
}

@media (max-width: 1300px) {
    #gozaruGraduateHiringConcerns{
        height: 500px;
    }

    #gozaruGraduateHiringConcerns .ghc-container{
        width: 968px;
        background-size: cover;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container{
        gap: 10px;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-reasons .reason{
        font-size: 17px;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-title span{
        font-size: 30px;
        line-height: 45px;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-reasons{
        width: 720px;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-title br.rm-on-968{
        display: block;
    }
}

@media (max-width: 968px) {
    #gozaruGraduateHiringConcerns .ghc-container{
        width: calc(100% - 20px);
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container{
        flex-direction: column;
    }

    #gozaruGraduateHiringConcerns{
        padding-top: 0;
        padding-bottom: 0;
        padding: 10px;
        height: 470px;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-title br.rm-on-968{
        display: none;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-title{
        max-width: 100%;
        text-align: center;
        margin-bottom: 20px;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-reasons .reason{
        font-size: 15px;
        padding-left: 50px;
        height: 60px;
        line-height: 60px;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-reasons{
        width: 620px;
    }

    #gozaruGraduateHiringConcerns .ghc-container .ghcc-container .ghccc-reasons .reason::before{
        width: 23px;
        height: 23px;
        left: 15px;
    }

    #gozaruGateSection01 .ggs01-container{
        background: none;
    }

    #gozaruGateSection01 .ggs01-container h4{
        font-size: 45px;
        line-height: 70px;
    }
}

@media (max-width: 1320px) {
    #gozaruGateSection01 .ggs01-container{
        width: unset;
    }

    #gozaruGateSection01{
        background-position: right -85px top;
    }

    #gozaruGateSection02 .ggs02-container .ggs02c-steps{
        display: flex;
        flex-direction: column;
    }

    #gozaruGateSection02{
        height: auto;
    }

    #gozaruGateSection02 .ggs02-container{
        width: unset;
        max-width: 100vw;
    }

    #gozaruGateSection02 .ggs02-container .ggs02c-title h4{
        font-size: clamp(28px, 1.563vw + 16px, 46px);
    }

    #gozaruGateSection02 .ggs02-container .ggs02c-socials .ggs02cs-container{
        width: unset;
        width: auto;
    }    

    #gozaruGateSection03 .ggs03-container .ggs03c-steps{
        grid-template-columns: repeat(2, 1fr);
        width: 768px;
        margin: 0 auto;
    }

    .ggs03c-steps .ggs03cs-step.ni::after,
    .ggs03c-steps .ggs03cs-step.yon::after{
        content: none;
    }

    .ggs03c-steps .ggs03cs-step.san::after{
        content:"";
    }

    .ggs03c-steps .ggs03cs-step .step{
        width: 326px;
    }

    #gozaruGateSection03{
        height: auto;
    }

    .ggs03c-steps .ggs03cs-step:nth-child(-n + 3){
        margin-bottom: 58px;
    }

    #gozaruGateSection03 .ggs03-container{
        max-width: 100%;
    }

    #gozaruQnA .container{
        width: 100%;
    }

    #gozaruGateSection04 .ggs04-container{
        width: unset;
        max-width: 1216px;
    }
}

@media (max-width: 1200px) {
    #gozaruGateSection04 .ggs04-container .ggs04c-content{
        width: clamp(542px, 74.87vw - 33.4px, 865px);
        font-size: clamp(25px, 1.16vw + 16px, 30px);
    }
}

@media (max-width: 830px) {
    #gozaruGateSection02 .ggs02-container .ggs02c-socials .ggs02cs-container h4 p{
        font-size: clamp(32px, 6.472vw - 17.72px, 36px);
    }
}

@media (max-width: 860px) {
    #gozaruGateSection02 .ggs02-container .ggs02c-socials .ggs02cs-container .sub-title{
        font-size: clamp(20px, 6.536vw - 30.2px, 26px);
    }
}

@media (max-width: 1575px) {
    #gozaruGateBanner .banner-text .text-line-3 .font-poppins{
        font-size: 85px;
    }

    #gozaruGateBanner .banner-text-deco{
        width: 540px;
        height: 154.55px;
        margin-left: -444px;
    }
}

@media (max-width: 1115px) {
    #gozaruGateBanner .banner-text .text-line-3 .font-poppins{
        font-size: 54px;
    }

    #gozaruGateBanner .banner-text .text-line-3{
        font-size: 39px;
    }

    #gozaruGateBanner .banner-text{
        width: 358px;
        display: flex;
        flex-direction: column;
        justify-content: center;
        margin-left: 85px;
    }
}

@media (max-width: 975px) {
    #gozaruGateBanner .banner-text{
        margin-left: 0;
    }
}

@media (max-width: 1300px) {
    #gozaruGateCTA .ggcta-container{
        width: 800px;
    }
}

@media (max-width: 900px) {
    #gozaruGateCTA .ggcta-container{
        width: auto;
    }

    #gozaruGateCTA .ggcta-container{
        display: flex;
    }

    #gozaruGateCTA .ggcta-container.mobile{
        display: none;
    }
}

@media (max-width: 768px) {
    #gozaruGateCTA{
        height: 60px;
        width: 100%;
        background-color: #F9F9F9;
    }

    #gozaruGateCTA .ggcta-container{
        display: none;
    }

    #gozaruGateCTA .ggcta-container.mobile{
        display: flex;
        width: 375px;
        height: 60px;
        margin: 0 auto;
        padding-left: 25px;
        padding-right: 15px;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    #gozaruGateCTA .ggcta-container.mobile .ggctacm{
        flex: 1;
    }

    #gozaruGateCTA .ggcta-container.mobile .ggctacm.left p{
        display: flex;
        flex-direction: column;
        padding-left: 24.6px;
        position: relative;
    }

    #gozaruGateCTA .ggcta-container.mobile .ggctacm.left p::after{
        content: "";
        position: absolute;
        width: 21.5px;
        height: 21.5px;
        left: 0;
        background: url("../images/gozaru-gate/header-04.png") no-repeat;
        background-size: contain;
        top: 50%;
        margin-top: -10.75px;
    }

    #gozaruGateCTA .ggcta-container.mobile .ggctacm.left p b{
        font-size: 12px;
        font-weight: 700;
        color: #2F74BE;
        line-height: 16px;
    }

    #gozaruGateCTA .ggcta-container.mobile .ggctacm.left p span{
        font-size: 7px;
        font-weight: 400;
        color: #3E4244;
        line-height: 10px;
    }

    #gozaruGateCTA .ggcta-container.mobile .ggctacm.right a.button-cta{
        width: 99px;
        height: 40px;
        background-color: #1C66BF;
        border-radius: 20px;
        text-decoration: none;        
        float: right;
        font-size: 12px;
        font-weight: 700;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    #gozaruGateCTA .ggcta-container.mobile .ggctacm.right a.button-cta p{
        padding-left: 19.6px;
        position: relative;
    }

    #gozaruGateCTA .ggcta-container.mobile .ggctacm.right a.button-cta p::before{
        content: "";
        width: 14.47px;
        height: 10.26px;
        position: absolute;
        left: 0;
        top: 50%;
        margin-top: -4.13px;
        background: url("../images/gozaru-gate/header-02-white.png") no-repeat;
        background-size: contain;
    }
}