/* introduction */
.bg-motion-section {
    width: 100%;
    min-height: calc(100vh - 148px);
    overflow: hidden;
    padding: 80px 0 130px;
    box-sizing: border-box;
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 50px 0;
    animation: paddingTop .5s .3s ease forwards;
}

@keyframes paddingTop {
    0% {
        padding: 80px 0 130px;
    }

    100% {
        padding: 180px 0 0;
    }
}

.bg-motion-section .section-title {
    width: 1440px;
    font-size: var(--fontSize11Xl);
    font-weight: var(--fontWeightBold);
    line-height: var(--lineHeight13Xl);
    color: var(--colorBlack);
    position: relative;
    z-index: 1;
    animation: textColor 1.5s .3s ease forwards;
}

@keyframes textColor {
    0% {
        color: var(--colorBlack);
    }

    100% {
        color: var(--colorWhite);
    }
}

.bg-zoom {
    width: 1440px;
    height: 620px;
    margin: 0 auto;
    position: relative;
    border-radius: var(--borderRadius2Xl);
    overflow: hidden;
    background-color: var(--colorBlack);
    animation: bgWidth 1.5s .3s ease forwards;
}

@keyframes bgWidth {
    0% {
        width: 1440px;
        height: 620px;
    }

    100% {
        width: 100%;
        height: calc(100vh - 148px);
        margin-top: -365px;
        border-radius: 0;
    }
}

.bg-zoom img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 1;
    animation: imgOpacity 1.5s .3s ease forwards;
}

@keyframes imgOpacity {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0.6;
    }
}

.full-text-section {
    height: 100vh;
}

.full-text-section .content-inner {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.full-text-section p {
    text-align: center;
    color: var(--colorGray500);
    font-size: var(--fontSize11Xl);
    line-height: var(--lineHeight13Xl);
    font-weight: var(--fontWeightBold);
}

.fix-img-section {
    height: 420px;
    background-image: url(/images/about/fixed-background.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
}

.introduction-content-section {
    padding: 140px 0;
}

.content-box {
    width: 100%;
}

.content-box ul {
    width: 100%;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 60px 0;
}

.content-box ul li {
    width: 100%;
    display: grid;
    grid-template-columns: 600px auto;
    gap: 0 60px;
}

.content-text-group {
    padding-top: 30px;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 15px 0;
}

.content-text-group p {
    font-size: var(--fontSize5Xl);
    font-weight: var(--fontWeightSemibold);
    line-height: var(--lineHeight5Xl);
}

.content-text-group span {
    font-size: var(--fontSizeLg);
    line-height: var(--lineHeight2Xl);
}

/* introduction */


/* introduction-static */
.type-section {
    padding: 100px 0 160px;
}

.type-section .content-inner {
    display: grid;
    grid-template-columns: 1fr 940px;
    gap: 0 100px;
}

.type-section .title-group {
    gap: 25px 0;
}

.type-section .section-title {
    font-size: var(--fontSize9Xl);
    line-height: var(--lineHeight9Xl);
}

.type-section .desc {
    font-size: var(--fontSizeLg);
    line-height: var(--lineHeight2Xl);
}

.img-section>img {
    width: 100%;
}

.function-section {
    padding: 0;
}

.function-section .content-inner {
    border-top: 1px solid var(--colorGray400);
    display: grid;
    grid-template-columns: 1fr 940px;
    gap: 0 100px;
    padding: 160px 0;
}

.function-section .section-title {
    font-size: var(--fontSize9Xl);
    line-height: var(--lineHeight9Xl);
}

.function-box ul {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 60px 20px;
}

.function-box ul li {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 20px 0;
}

.function-icon {
    width: 100%;
    height: 260px;
    border-radius: var(--borderRadiusXl);
    background-color: var(--colorGray100);
    display: flex;
    align-items: center;
    justify-content: center;
}

.introduction-text {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    gap: 10px 0;
}

.introduction-text p {
    font-size: var(--fontSize3Xl);
    font-weight: var(--fontWeightSemibold);
    line-height: var(--lineHeight5Xl);
}

.introduction-text span {
    font-size: var(--fontSizeLg);
    line-height: var(--lineHeight2Xl);
}

.service-apply-section {
    padding: 0;
}

.service-apply-section .content-inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 60px 0;
    padding: 160px 0 140px;
    border-top: 1px solid var(--colorGray400);
}

.service-apply-section .section-title {
    text-align: center;
    font-size: var(--fontSize9Xl);
    line-height: var(--lineHeight9Xl);
}

.service-apply-section{
    width: 100%;
}

.service-apply-section ul {
    width: 100%;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, 1fr));
    gap: 0 18px;
}

.service-apply-section ul li{
    height: 380px;
}

.service-apply-section ul li a,
.service-apply-section ul li>button{
    width: 100%;
    height: 100%;
    background-color: var(--colorGray100);
    border-radius: var(--borderRadiusXl);
    padding: 60px 50px 50px;
    box-sizing: border-box;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    flex-direction: column;
    border: 1px solid var(--colorTransparent);
    transition: border .3s;
}

.service-apply-section ul li a:hover,
.service-apply-section ul li>button:hover{
    border: 1px solid var(--colorBlack);
}

.service-apply-section ul li:hover .btn.secondary {
    background-color: var(--colorBlack);
    color: var(--colorWhite);
}

.service-apply-section ul li a:hover .btn.secondary img,
.service-apply-section ul li>button:hover .btn.secondary img{
    content: url(/images/common/button-white-arrow.svg);
}

.service-apply-box .introduction-text {
    gap: 15px 0;
}

.service-apply-box .introduction-text p {
    display: flex;
    align-items: center;
    gap: 0 18px;
    font-size: var(--fontSize3Xl);
    line-height: var(--lineHeight5Xl);
    font-weight: var(--fontWeightSemibold);
}

/* introduction-static */





/* responsive css */
@media screen and (min-width: 768px) and (max-width: 1279px) {

    /* introduction */
    .bg-motion-section {
        min-height: calc(100vh - 138px);
        padding: 50px 0;
        gap: 40px 0;
    }

    @keyframes paddingTop {
        0% {
            padding: 50px 0;
        }

        100% {
            padding: 160px 0 0;
        }
    }

    .bg-motion-section .section-title {
        width: calc(100% - 108px);
        font-size: var(--fontSize9Xl);
        line-height: var(--lineHeight10Xl);
    }

    .bg-zoom {
        width: calc(100% - 108px);
        height: 646px;
    }

    @keyframes bgWidth {
        0% {
            width: calc(100% - 108px);
            height: 646px;
        }

        100% {
            width: 100%;
            height: calc(100vh - 138px);
            margin-top: -310px;
            border-radius: 0;
        }
    }

    .full-text-section {
        height: auto;
        padding: 365px 0;
    }

    .full-text-section p {
        font-size: var(--fontSize10Xl);
        line-height: var(--lineHeight11Xl);
    }

    .fix-img-section {
        height: 280px;
    }

    .introduction-content-section {
        padding: 100px 0 120px;
    }

    .content-box ul {
        gap: 80px 0;
    }

    .content-box ul li {
        grid-template-columns: 1fr;
        gap: 30px 0;
    }

    .content-box ul li img {
        width: 100%;
    }

    .content-text-group {
        padding-top: 0;
    }

    /* introduction */


    /* introduction-static */
    .type-section {
        padding: 50px 0 100px;
    }

    .type-section .content-inner {
        grid-template-columns: 1fr;
        gap: 30px 0;
    }

    .type-section .title-group {
        gap: 10px 0;
    }

    .type-section .section-title {
        font-size: var(--fontSize7Xl);
        line-height: var(--lineHeight7Xl);
    }

    .type-section .desc {
        font-size: var(--fontSizeMd);
        line-height: var(--lineHeightLg);
    }

    .img-section>img {
        border-radius: var(--borderRadius2Xl);
    }

    .function-section .content-inner {
        grid-template-columns: 1fr;
        gap: 30px 0;
        padding: 100px 0;
    }

    .function-section .section-title {
        font-size: var(--fontSize7Xl);
        line-height: var(--lineHeight7Xl);
    }

    .function-box ul {
        gap: 60px 10px;
    }

    .function-box ul li {
        gap: 20px 0;
    }

    .function-icon {
        height: 180px;
    }

    .function-icon img {
        width: 84px;
    }

    .introduction-text p {
        font-size: var(--fontSizeXl);
        line-height: var(--lineHeight3Xl);
    }

    .introduction-text span {
        font-size: var(--fontSizeMd);
        line-height: var(--lineHeightLg);
    }

    .service-apply-section .content-inner {
        gap: 30px 0;
        padding: 100px 0 130px;
    }

    .service-apply-section .section-title {
        font-size: var(--fontSize7Xl);
        line-height: var(--lineHeight7Xl);
    }

    .service-apply-section ul {
        grid-template-columns: 1fr;
        gap: 18px 0;
    }

    .service-apply-section ul li {
        height: 320px;
    }

    .service-apply-section ul li a,
    .service-apply-section ul li>button{
        padding: 50px 50px 40px;
    }

    /* introduction-static */
}


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

    /* introduction */
    .bg-motion-section {
        min-height: calc(100vh - 120px);
        padding: 30px 0;
        gap: 20px 0;
        animation: paddingTop .5s .3s ease forwards;
    }

    @keyframes paddingTop {
        0% {
            padding: 30px 0;
        }

        100% {
            padding: 100px 0 0;
        }
    }

    .bg-motion-section .section-title {
        width: calc(100% - 30px);
        font-size: var(--fontSize3Xl);
        line-height: var(--lineHeight4Xl);
    }

    .bg-zoom {
        width: calc(100% - 30px);
        height: 606px;
        border-radius: var(--borderRadius2Xl);
    }

    @keyframes bgWidth {
        0% {
            width: calc(100% - 30px);
            height: 606px;
        }

        100% {
            width: 100%;
            height: calc(100vh - 120px);
            margin-top: -185px;
            border-radius: 0;
        }
    }

    .full-text-section {
        height: auto;
        padding: 320px 0;
    }

    .full-text-section p {
        font-size: var(--fontSize3Xl);
        line-height: var(--lineHeight4Xl);
    }

    .fix-img-section {
        height: 170px;
    }

    .introduction-content-section {
        padding: 60px 0 80px;
    }

    .content-box ul {
        gap: 40px 0;
    }

    .content-box ul li {
        grid-template-columns: 1fr;
        gap: 20px 0;
    }

    .content-box ul li img {
        width: 100%;
    }

    .content-text-group {
        width: 100%;
        gap: 5px 0;
        padding-top: 0;
    }

    .content-text-group p {
        font-size: var(--fontSizeLg);
        line-height: var(--lineHeight2Xl);
    }

    .content-text-group span {
        font-size: var(--fontSizeBase);
        line-height: var(--lineHeightBase);
    }

    /* introduction */


    /* introduction-static */
    .type-section {
        padding: 30px 0 60px;
    }

    .type-section .content-inner {
        grid-template-columns: 1fr;
        gap: 30px 0;
    }

    .type-section .title-group {
        gap: 10px 0;
    }

    .type-section .section-title {
        font-size: var(--fontSize2Xl);
        line-height: var(--lineHeight2Xl);
    }

    .type-section .desc {
        font-size: var(--fontSizeBase);
        line-height: var(--lineHeightBase);
    }

    .img-section>img {
        border-radius: var(--borderRadius2Xl);
    }

    .function-section .content-inner {
        grid-template-columns: 1fr;
        gap: 15px 0;
        padding: 60px 0;
    }

    .function-section .section-title {
        font-size: var(--fontSize2Xl);
        line-height: var(--lineHeight2Xl);
    }

    .function-box ul {
        grid-template-columns: 1fr;
        gap: 40px 0;
    }

    .function-box ul li {
        width: 100%;
    }

    .function-icon {
        height: 180px;
    }

    .function-icon img {
        width: 84px;
    }

    .introduction-text {
        gap: 5px 0;
    }

    .introduction-text p {
        font-size: var(--fontSizeLg);
        line-height: var(--lineHeight2Xl);
    }

    .introduction-text span {
        font-size: var(--fontSizeBase);
        line-height: var(--lineHeightBase);
    }

    .service-apply-section .content-inner {
        gap: 15px 0;
        padding: 60px 0 80px;
    }

    .service-apply-section .section-title {
        font-size: var(--fontSize2Xl);
        line-height: var(--lineHeight2Xl);
    }

    .service-apply-section ul {
        grid-template-columns: 1fr;
        gap: 15px 0;
    }

    .service-apply-section ul li {
        height: auto;
    }

    .service-apply-section ul li a,
    .service-apply-section ul li>button{
        padding: 30px 25px;
        gap: 50px 0;
    }

    .service-apply-section ul li a:hover,
    .service-apply-section ul li>button:hover{
        border: 1px solid var(--colorBlack);
    }

    .service-apply-box .introduction-text {
        gap: 10px 0;
    }

    .service-apply-box .introduction-text p {
        gap: 0 10px;
        font-size: var(--fontSizeLg);
        line-height: var(--lineHeight2Xl);
    }

    .service-apply-box .introduction-text p img {
        width: 28px;
    }

    .service-apply-box .btn {
        width: 100%;
    }

    /* introduction-static */

}