@charset "utf-8";



/* **************************************** *
 * 1680px
 * **************************************** */
@media screen and (max-width: 1680px){
    .wrap { max-width: inherit; width: 90%; margin: 0 5%; }

    /* visual */
    .main-visual__contents h1 { font-size: 68px; margin-bottom: 30px; }

    /* service */
    .main-service__slider-content { width: 35%; }
    .main-service__slider-img { width: 45%; }
}



/* **************************************** *
 * 1480px
 * **************************************** */
@media screen and (max-width: 1480px){

    /* visual */
    .main-visual__contents h1 { font-size: 52px; line-height: 67px; }

}



/* **************************************** *
 * 1200px
 * **************************************** */
@media screen and (max-width: 1200px){

    /* visual */
    .main-visual { height: 100vh; }

    /* card */
    .main-card__list { gap: 20px; }

    /* service */
    .main-service { padding: 130px 0 110px; }
    .main-service::after { top: 35%; }
    .main-service__slider-item { gap: 60px; }
    .main-service__slider-content h3 { margin-bottom: 3px; }
    .main-service__slider-content p { font-size: 20px; }
    .main-service__slider-content > span { white-space: nowrap; margin-bottom: 30px; }
    .main-service__slider-content-tag li span { font-size: 18px; line-height: 26px; }

    /* contact */
    .main-contact__content { width: 50%; }
    .main-contact__content h2 { margin-bottom: 40px; }
    .main-contact__content-list li:not(:first-child) { margin-top: 36px; }
    .main-contact__content-list-desc h3 { font-size: 20px; margin-bottom: 12px; }
    .main-contact__content-btn { flex-wrap: wrap; margin-top: 40px; }
    .main-contact__content-btn > button { width: 100%; }

}



/* **************************************** *
 * 1023px
 * **************************************** */
@media screen and (max-width: 1023px){

    /* contact */
    .main-contact__content { min-width: 460px; }

}



/* **************************************** *
 * 860px
 * **************************************** */
@media screen and (max-width: 860px){

    #header .logo { width: 83px; }
    .menu { display: none; }
    .lang-menu { display: none; }
    .menu-mo { display: block; }
    .menu-mo .lang-menu { display: block; }

    #footer .footer-logo { width: 78px; }
    .footer-top { padding: 30px 0; }
    .footer-content { font-size: 13px; padding-top: 20px; margin-top: 10px; }
    .footer-bottom { padding: 14px 0; }
    .footer-bottom p { font-size: 13px; }

    /* visual */
    .main-visual { height: 100vh; }
    .main-visual__contents { bottom: auto; top: 50%; transform: translateY(-50%); }
    .main-visual__contents h1 { text-align: center; }
    .main-visual__contents p { text-align: center; }

    /* card */
    .main-card__list { flex-wrap: wrap; gap: 20px; }
    .main-card__list-item { width: 45%; }

    /* service */
    .main-service__slider-item { flex-wrap: wrap; }
    .main-service__slider-content { width: 90%; text-align: center; }
    .main-service__slider-content-tag { justify-content: center; }
    .main-service__slider-img { width: 90%; }

    /* contact */
    .main-contact .wrap { flex-wrap: wrap; }
    .main-contact__content { width: 100%; min-width: auto; }
    .main-contact__content h2 { text-align: center; }
    .main-contact__content-btn > button { width: 50%; }
    .main-contact__map { width: 100%; height: 500px; }

}



/* **************************************** *
 * 540px
 * **************************************** */
@media screen and (max-width: 540px){

    .menu-mo-contant { width: 100%; padding: 80px 40px 40px; }
    .menu-mo-list > li > a { font-size: 22px; }
    .menu-mo .lang-menu { width: calc(100% - 80px); }

    /* visual */
    .main-visual__contents h1 { font-size: 36px; line-height: 42px; }
    .main-visual__contents p { font-size: 18px; line-height: 28px; word-break: keep-all; }
    .main-visual__contents p br { display: none; }

    /* card */
    .main-card { padding: 80px 0; }
    .main-card__title { margin-bottom: 50px; }
    .main-card__title h2 { font-size: 32px; }
    .main-card__title p { font-size: 18px; line-height: 28px; word-break: keep-all; }
    .main-card__list-item { width: 90%; }
    .main-card__list-item-desc span { font-size: 17px; }
    .main-card__list-item-desc h3 { font-size: 24px; }

    /* service */
    .main-service { padding: 80px 0 70px; }
    .main-service::after { top: 43%; }
    .main-service__title { margin-bottom: 50px; }
    .main-service__title h2 { font-size: 32px; }
    .main-service__slider-item { gap: 40px; }
    .main-service__slider-content h3 { font-size: 26px; margin-bottom: 6px; }
    .main-service__slider-content > span { display: none; }
    .main-service__slider-content p { margin-bottom: 30px; font-size: 18px; line-height: 28px; word-break: keep-all; }
    .main-service__slider-content p br { display: none; }
    .main-service__slider-content-tag { gap: 8px; }
    .main-service__slider-content-tag li { padding: 2px 8px; }
    .main-service__slider-content-tag li span { font-size: 14px; }
    .main-service__slider .swiper-wrapper { margin-bottom: 40px; }
    .main-service__slider .swiper-scrollbar { width: 90%; }

    /* contact */
    .main-contact { padding: 80px 0; }
    .main-contact__content { padding: 40px 24px; }
    .main-contact__content h2 { font-size: 28px; }
    .main-contact__content-list-icon img { width: 50px; }
    .main-contact__content-list-desc { margin-left: 12px; }
    .main-contact__content-list-desc h3 { font-size: 18px; margin-bottom: 10px; }
    .main-contact__content-list-desc a { font-size: 18px; }
    .main-contact__content-btn > button { width: 100%; padding: 16px 10px; }
    .main-contact__content-btn > button span { font-size: 16px; }
    .main-contact__map { height: 300px; }

}