@charset "utf-8";
/* CSS Document */

@media(min-width: 320px) and (max-width: 768px) {
    body {
    	font-size: 16px;
    }
    h1 {
        font-size: 40px;
    }
    h2 {
        font-size: 36px;
    }
    h3 {
        font-size: 34px;
    }
    h4 {
        font-size: 28px;
    }
    h5 {
        font-size: 26px;
    }

    /* */
    .size_0 {
        font-size: 10px;
    }
    .size_01 {
        font-size: 12px;
    }
    .size_02 {
        font-size: 14px;
    }
    .size_03 {
        font-size: 16px;
    }
    .size_04 {
        font-size: 18px;
    }
    .size_05 {
        font-size: 20px;
    }
    .size_06 {
        font-size: 24px;
    }
    .size_07 {
        font-size: 28px;
    }
    .size_08 {
        font-size: 20px;
    }
    .size_09 {
        font-size: 36px;
    }
    .size_10 {
        font-size: 40px;
    }

    /* */
    .btn-xlarge {
        font-size: 18px;

        padding: 14px 50px;
    }
    .btn-large {
        font-size: 16px;

        padding: 12px 30px;
    }
    .btn-medium {
        font-size: 16px;

        padding: 12px 30px;
    }
    .btn-mobile {
        width: 100%;
    }

    /* */
    .padding-s {
        padding-top: 20px;
        padding-bottom: 20px;
    }
    .padding-m {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .padding-l {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .margin-s {
        margin-top: 20px;
        margin-bottom: 20px;
    }
    .margin-m {
        margin-top: 40px;
        margin-bottom: 40px;
    }
    .margin-l {
        margin-top: 60px;
        margin-bottom: 60px;
    }

    /* */
    .navigation {
        height: 75px;

        padding: 0;
    }
        .navigation h1 {
            font-size: 30px;

            margin-top: 15px;
        }

        .navigation .navigation-panel {
            display: none;
        }
        .navigation .logo {
            margin: 5px 0 0;
        }

    .navigation-mobile {
        background: #fff;

        position: absolute;
        top: 68px;
        left: -999px;

        z-index: 90;

        width: 100%;
        height: 100vh;

        padding: 20px 28px;

        transition: left 0.4s;
    }
        .navigation-mobile.active {
            left: 0;

            transition: left 0.4s;
        }
        .navigation-mobile li img {
            width: 35px;
        }

        /* */
        .navigation-mobile-icon {
            position: relative;

            width: 100%;
            height: 70px;

            transform: rotate(0deg);

            transition: 0.5s ease-in-out;

            cursor: pointer;
        }
            .navigation-mobile-icon img {
                width: 25px;
            }
            .navigation-mobile-icon span {
                background: #fff;
                border-radius: 25px;

                position: absolute;
                right: 20px;

                display: block;

                width: 18px;
                height: 3px;

                opacity: 1;

                transform: rotate(0deg);

                transition: 0.25s ease-in-out;
            }
                .navigation-mobile-icon span:nth-child(1) {
                    top: 30px;
                }
                .navigation-mobile-icon span:nth-child(2), .navigation-mobile-icon span:nth-child(3) {
                    top: 36px;
                }
                .navigation-mobile-icon span:nth-child(4) {
                    top: 42px;
                }
                .navigation-mobile-icon.open span:nth-child(1) {
                    top: 36px;
                    right: 30px;

                    width: 0px;
                }
                .navigation-mobile-icon.open span:nth-child(2) {
                    transform: rotate(45deg);
                }
                .navigation-mobile-icon.open span:nth-child(3) {
                    transform: rotate(-45deg);
                }
                .navigation-mobile-icon.open span:nth-child(4) {
                    top: 36px;
                    right: 30px;

                    width: 0px;
                }

        .navigation-mobile ul {
            margin: 0;
            padding: 0;

            list-style: none;
        }
        .navigation-mobile li {
            margin: 0;
            padding: 0;

            display: block;
        }
        .navigation-mobile li a {
            font-size: 20px;
            font-weight: 500;
            color: #3C3C4F;

            margin: 0;
            padding: 15px 0;

            display: block;
        }
            .navigation-mobile li a:hover {
                background: #fff;
                color: #3C3C4F;
            }

        .navigation-mobile li a i {
            font-size: 20px;

            display: block;
            margin-top: -20px;
            margin-right: -5px;
        }

        .app .navigation-mobile-icon span {
            background: #353535;
        }
        .app .navigation li a:hover {
            background: none;
            color: #353535;
        }

    /* */
    .container-padding-s {
        padding: 10px;
    }
    .container-padding-m {
        padding: 20px;
    }
        .carousel-inner .container-padding-m {
            padding: 40px;
        }
    .container-padding-l {
        padding: 40px;
    }

    /* */
    .filter-panel {
        width: 100%;
    }
    .filter-panel .filter-panel-btn-close {
        right: 0;
    }
        .filter-panel .filter-panel-btn-close .btn-small {
            font-size: 20px;
        }
    .filter-panel .filter-panel-content.small, .filter-panel .filter-panel-content.large {
        width: 100%;

        padding: 50px 20px 20px 20px;
    }
    .filter-panel .filter-panel-content.small {
        height: calc(100vh - 80px);
    }
    .filter-panel .filter-panel-content.large {
        height: calc(100vh - 154px);
    }

    /* */
    .image-section {
        position: relative;
    }
        .image-section img {
            width: 100%;
        }

    .background-img {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    /* */
    .background-stripe-img {
        background-attachment: inherit;
        background-size: cover;
        background-position: 50%;
    }
        .background-stripe-img h1 {
            font-size: 28px;
        }
        .background-stripe-img .background-stripe-margin {
            margin-top: 80px;
            margin-bottom: 80px;
        }
        .background-stripe-img .size_05 {
            font-size: 14px;
        }

    .background-stripe-logo::after {
        display: none;
    }

    /* */
    .image-expand {
        position: static;
        height: 300px;
        width: 100%;

        object-fit: cover;
        transform: none;
    }
    .gallery_image .image-width-05 {
        width: 100%;
    }
    .gallery_image .image-height-05 {
        height: 100%;
    }

    .image-height-06 {
        height: 400px;
    }

    /* */
    .footer-bar .logo_text div {
        font-size: 14px;
        margin-left: 0;
    }
    .footer-bar .logo_text a {
        font-size: 20px;
    }
    .footer-bar .size_05 {
        font-size: 18px;
    }
}

@media(min-width: 769px ) and (max-width: 1024px) {
    body {
    	font-size: 16px;
    }
    h1 {
        font-size: 40px;
    }
    h2 {
        font-size: 36px;
    }
    h3 {
        font-size: 34px;
    }
    h4 {
        font-size: 28px;
    }
    h5 {
        font-size: 26px;
    }

    /* */
    .size_0 {
        font-size: 12px;
    }
    .size_01 {
        font-size: 14px;
    }
    .size_02 {
        font-size: 16px;
    }
    .size_03 {
        font-size: 20px;
    }
    .size_04 {
        font-size: 24px;
    }
    .size_05 {
        font-size: 28px;
    }
    .size_06 {
        font-size: 30px;
    }
    .size_07 {
        font-size: 32px;
    }
    .size_08 {
        font-size: 34px;
    }
    .size_09 {
        font-size: 36px;
    }
    .size_10 {
        font-size: 40px;
    }

    /* */
    .padding-s {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .padding-m {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding-l {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .margin-s {
        margin-top: 40px;
        margin-bottom: 40px;
    }
    .margin-m {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin-l {
        margin-top: 80px;
        margin-bottom: 80px;
    }
}

@media(min-width: 1025px) and (max-width: 1639px) {
    body {
    	font-size: 16px;
    }
    h1 {
        font-size: 62px;
    }
    h2 {
        font-size: 56px;
    }
    h3 {
        font-size: 44px;
    }
    h4 {
        font-size: 38px;
    }
    h5 {
        font-size: 26px;
    }

    .image-width-01 {
    	width: 50px;
    }
    .image-width-02 {
    	width: 60px;
    }
    .image-width-03 {
    	width: 120px;
    }
    .image-width-04 {
    	width: 180px;
    }
    .image-width-05 {
    	width: 240px;
    }
    .image-width-06 {
    	width: 350px;
    }

    .image-height-01 {
    	height: 50px;
    }
    .image-height-02 {
    	height: 60px;
    }
    .image-height-03 {
    	height: 120px;
    }
    .image-height-04 {
    	height: 180px;
    }
    .image-height-05 {
    	height: 240px;
    }
    .image-height-06 {
    	height: 350px;
    }

    /* */
    .container {
		max-width: 1260px;
	}

    /* */
    .padding-s {
        padding-top: 40px;
        padding-bottom: 40px;
    }
    .padding-m {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    .padding-l {
        padding-top: 80px;
        padding-bottom: 80px;
    }

    .margin-s {
        margin-top: 40px;
        margin-bottom: 40px;
    }
    .margin-m {
        margin-top: 60px;
        margin-bottom: 60px;
    }
    .margin-l {
        margin-top: 80px;
        margin-bottom: 80px;
    }
}

@media (min-width: 1640px){
	.container {
		max-width: 1560px;
	}
}
