@charset "UTF-8";

* { margin: 0px; padding: 0px; text-rendering: optimizeLegibility; -webkit-font-smoothing: antialiased; -webkit-tap-highlight-color: transparent; }

html, body { width: 100%; height: 100%; overflow-x: hidden; }

ul li { list-style-type: none; }

a { text-decoration: none;  }

a:hover {  }








@font-face { font-family: "Avenir"; src: url("../fonts/Avenir-Light.eot"); src: url("../fonts/Avenir-Light.eot?#iefix") format("embedded-opentype"), url("../fonts/Avenir-Light.woff") format("woff"), url("../fonts/Avenir-Light.ttf") format("truetype"); font-weight: 300; font-style: normal; }

@font-face { font-family: "Avenir"; src: url("../fonts/Avenir-Medium.eot"); src: url("../fonts/Avenir-Medium.eot?#iefix") format("embedded-opentype"), url("../fonts/Avenir-Medium.woff") format("woff"), url("../fonts/Avenir-Medium.ttf") format("truetype"); font-weight: 500; font-style: normal; }

@font-face { font-family: "Avenir"; src: url("../fonts/Avenir-Black.eot"); src: url("../fonts/Avenir-Black.eot?#iefix") format("embedded-opentype"), url("../fonts/Avenir-Black.woff") format("woff"), url("../fonts/Avenir-Black.ttf") format("truetype"); font-weight: 900; font-style: normal; }

@font-face { font-family: "Avenir Next"; src: url("../fonts/AvenirNext-Heavy.eot"); src: url("../fonts/AvenirNext-Heavy.eot?#iefix") format("embedded-opentype"), url("../fonts/AvenirNext-Heavy.woff") format("woff"), url("../fonts/AvenirNext-Heavy.ttf") format("truetype"); font-weight: 900; font-style: normal; }

@font-face { font-family: "Avenir Next"; src: url("../fonts/AvenirNext-Regular.eot"); src: url("../fonts/AvenirNext-Regular.eot?#iefix") format("embedded-opentype"), url("../fonts/AvenirNext-Regular.woff") format("woff"), url("../fonts/AvenirNext-Regular.ttf") format("truetype"); font-weight: normal; font-style: normal; }

@font-face { font-family: "Avenir Next"; src: url("../fonts/AvenirNext-Bold.eot"); src: url("../fonts/AvenirNext-Bold.eot?#iefix") format("embedded-opentype"), url("../fonts/AvenirNext-Bold.woff") format("woff"), url("../fonts/AvenirNext-Bold.ttf") format("truetype"); font-weight: bold; font-style: normal; }

@font-face { font-family: "Avenir Oblique"; src: url("../fonts/Avenir-Oblique.eot"); src: url("../fonts/Avenir-Oblique.eot?#iefix") format("embedded-opentype"), url("../fonts/Avenir-Oblique.woff") format("woff"), url("../fonts/Avenir-Oblique.ttf") format("truetype"); font-weight: normal; font-style: italic; }








header { position: fixed; display: inline-block; width: 100%; z-index: 99; }

header h1 { width: 130px; margin: 0 auto; }

header h1 img { width: 100%; }

header .hamburger-button { position: absolute; top: 0; right: 0; margin-right: 66px; margin-top: 50px; z-index: 9; }

header .hamburger-button i { font-size: 36px; color: white; }

header nav { position: fixed; opacity: 0; width: 100%; height: 100%; top: 0; background: #c2583f; transition: opacity 0.5s;-webkit-transition: opacity .5s ease-in-out; }

header nav { pointer-events: none; }

header nav ul { position: absolute; display: inline-block; width: 100%; top: 50%; transform: translateY(-50%); left: 0; }

header nav ul li { position: relative; display: inline-block; width: 100%; float: left; text-align: center; margin-bottom: 80px; }

header nav ul li:last-child { margin-bottom: 0px; }

header nav ul li a { position: relative; font-family: "Avenir"; font-weight: 500; font-size: calc((74% + 0.8vw)); color: white; /* top: -30px; opacity: 0; */ }

header .active-menu {opacity: 1;  }

header .active-menu { pointer-events: auto; }

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

	header h1 { width: 25%; }

	header .hamburger-button { margin-right: 20px; margin-top: 20px; }

}










section .inner { position: relative; display: inline-block; width: 66%; left: 50%; margin-left: -33%; margin-top: 170px; margin-bottom: 30px; }

section .product-shape { position: absolute; display: inline-block; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); opacity: .2; }

.index { background-color: #c2583f; font-family: "Avenir"; }

.index .inner { letter-spacing: -5px; }

.index .inner h3 { position: relative; display: inline-block; width: 100%; font-weight: 200; font-size: calc((74% + 4.6vw)); color: #1a1a1a; }

.index .inner h4 { position: relative; display: inline-block; width: 100%; font-size: calc((74% + 4.6vw)); color: white; margin-top: -16px; opacity: 0; }

.index .inner ul { position: relative; display: inline-block; width: 100%; margin-top: -13%; overflow: hidden; opacity: 0; }

.index .inner ul li { position: relative; display: inline-block; width: calc(25% - 6%); float: left; margin-right: 8%; }

.index .inner ul li::after { content: ""; position: absolute; bottom: 0; left: 0; display: inline-block; width: 100%; height: 17%; background-image: url(../img/hole.png); background-size: 100% auto; background-repeat: no-repeat; }

.index .inner ul li::before { content: ""; position: absolute; bottom: 0; display: inline-block; left: 0; background-image: url(../img/hole-mask.png); background-size: 100% auto; background-repeat: no-repeat; width: 100%; z-index: 999; height: 100%; margin-bottom: -165%; }

.index .inner ul li:last-child { margin-right: 0px; }

.index .inner ul li img {  position: relative; display: inline-block; width: calc(100% - 26%); margin-left: 13%; z-index: 9; top: 250px; }

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

	.index { letter-spacing: 0px; }

	.index .inner ul li { width: calc(50% - 4%); margin-right: 8%; }

	.index .inner ul li:nth-child(2) { margin-right: 0px; }

	.index .inner ul li:nth-child(4) { margin-right: 0px; }

}










.product-background-green { background-color: #9caa3e; }

.product-background-yellow { background-color: #e5ad40; }

.product-background-pink { background-color: #d9437a; }

.product-background-blue { background-color: #00a9cc; }

.product { font-family: "Avenir Next"; }

.product .inner figure { position: relative; display: inline-block; float: left; width: calc(50% - 10%); margin-right: 10%; }

.product .inner figure::after { content: ""; position: absolute; width: 210%; height: 200%; left: -50%; top: -440px; background-image: url(../img/glow.png); background-size: contain; background-position: center; background-repeat: no-repeat; }

.product .inner figure a .icon { position: absolute; display: inline-block; left: 100%; top: -1px; height: 100%; width: 32%; border: 1px solid white; }

.product .inner figure a .icon i { position: relative; display: block; top: 50%; transform: translateY(-50%); }

.product .inner figure img { position: relative; width: 170%; z-index: 9; float: right; }

.product .inner figure a { position: relative; display: none; font-size: calc((74% + 0.09vw)); color: white; font-weight: bold; text-align: center; border: 1px solid white; padding: 2% 10%; float: right; margin-right: 15%; margin-top: 10%; }

.product .inner figure a::after { position: absolute; display: inline-block; font-family: FontAwesome; content: "\f061"; border: 1px solid white; top: -1px; padding-left: 10%; padding-right: 10%; height: 100%; left: 100%; line-height: calc((74% + 2.5vw)); }

.product .inner article { position: relative; display: inline-block; float: left; width: 50%; }

.product .inner article h3 { font-size: calc((74% + 1.9vw)); color: #1a1a1a; line-height: calc((74% + 1.2vw)); }

.product .inner article h4 { font-size: calc((74% + 1.9vw)); color: white; margin-top: -4px; }

.product .inner article p { font-size: calc((74% + 0.215vw)); color: white; margin-top: 10%; margin-bottom: 10%; }

.product .inner article a { position: relative; display: inline-block; font-size: calc((74% + 0.09vw)); color: white; font-weight: bold; text-align: center; border: 1px solid white; padding: 2% 10%; }

.product .inner article a:hover {border-color:#1a1a1a;color:#1a1a1a; }

.product .inner article a .icon { position: absolute; display: inline-block; left: 100%; top: -1px; height: 100%; width: 32%; border: 1px solid white; }

	.product .inner article a:hover .icon {border-color:#1a1a1a;} 

.product .inner article a .icon i { position: relative; display: block; top: 50%; transform: translateY(-50%); }

/* .product .inner article a::after { position: absolute; display: inline-block; font-family: FontAwesome; content: "\f061"; border: 1px solid white; top: -1px; padding-left: 10%; padding-right: 10%; height: 100%; left: 100%; line-height: calc((74% + 2vw)); } */

.fix-pagination { position: fixed; display: none; width: 100%; height: 100%; z-index: 9; font-family: "Avenir"; pointer-events: none; }

.pagination-icon { position: absolute; right: 0; top: 50%; transform: translateY(-50%); margin-right: 3%; pointer-events: auto; }

.pagination-icon li { position: relative; display: block; margin-bottom: 50px; }

.pagination-icon li:last-child { margin-bottom: 0px; }

.pagination-icon li .selected img { -webkit-filter: brightness(0); filter: brightness(0); }

.pagination-icon li a img { 	}

.pagination-icon li a:hover img { -webkit-filter: brightness(0); filter: brightness(0); -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s;	}

.pagination-text { position: absolute; left: 0; top: 50%; margin-left: 3%; transform: translateY(-50%); pointer-events: auto; }

.pagination-text li { position: relative; display: block; transform: rotate(-90deg); margin-left: -48px; }

.pagination-text li:last-child { transform: rotate(-90deg); margin-top: 138px; }

.pagination-text li a { font-weight: bold; font-size: 14px; color: white; }

.pagination-text li a i { position: relative; margin-left: 15px; }

.pagination-text li:last-child a i { margin-right: 15px; }

.pagination-text li a:hover { color: black; }

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

	.product .inner figure { margin-top: 15%; }

}

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

	.product .inner figure a { display: inline-block; }

	.product .inner article a { display: none; }

}

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

	.pagination-text { display: none; }

	.pagination-icon { display: none; }

	.product .inner article { width: 50%; }

	.product .inner figure { width: calc(50% - 10%); margin-right: 10%; }

	.product .inner article h3 { font-size: calc((74% + 2.5vw)); }

	.product .inner article h4 { font-size: calc((74% + 2.5vw)); }

	.product .inner article p { font-size: calc((74% + 0.5vw)); margin-top: 5%; margin-bottom: 5%; }

}

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

	.product .inner figure { width: 100%; margin-right: 0px; }

	.product .inner article { width: 100%; margin-top: 60px; }

	.product .inner figure a { display: none; }

	.product .inner article a { display: inline-block; left: 50%; transform: translateX(-73%); }

	.product .inner figure::after { top: -280px; }

}










.footer { font-family: "Avenir Next"; }

.footer #google-map { position: relative; display: inline-block; width: 100%; height: calc(100% - 160px); float: left; }

.footer footer { position: relative; display: inline-block; width: 100%; height: 160px; background-color: #f85e75; float: left; }

.footer footer .footer-inner { position: relative; display: inline-block; width: 65%; left: 50%; margin-left: -32%; margin-top: 35px; color: white; font-size: 14px; }

.footer footer .adress-area { position: relative; display: inline-block; float: left; margin-right: 90px; }

.footer footer .adress-area .title { position: relative; display: inline-block; font-weight: 900; float: left; margin-right: 10px; line-height: 25px; }

.footer footer .adress-area .content { position: relative; display: inline-block; float: left; line-height: 25px; }

.footer footer .phone-area { position: relative; display: inline-block; float: left; }

.footer footer .phone-area .title { position: relative; display: inline-block; font-weight: 900; float: left; margin-right: 10px; line-height: 25px; }

.footer footer .phone-area .content { position: relative; display: inline-block; float: left; line-height: 25px; }

.footer footer .phone-area .content strong { font-weight: 600; }

.footer footer .social-area { position: relative; display: inline-block; float: right; }

.footer footer .social-area a { position: relative; display: inline-block; font-size: 25px; color: white; margin-right: 70px; }

.footer footer .social-area a:last-child { margin-right: 0px; }

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

	.footer footer { height: 260px; }

	.footer footer .adress-area { margin-right: 0px; width: 100%; }

	.footer footer .phone-area { margin-top: 20px; }

	.footer #google-map { height: calc(100% - 260px); }

}

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

	.footer footer .social-area { float: left; margin-top: 30px; }

	.footer footer { height: 360px; }

}










.contact { position: fixed; display: inline-block; opacity: 0; pointer-events: none; width: 100%; height: 100%;top:0px; z-index: 999; background-color: rgba(255, 255, 255, .4); font-family: "Avenir"; -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; }

.active-contact { pointer-events: auto; opacity: 1; -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; }

.contact .contact-inner { position: relative; display: inline-block; width: 90%; max-width: 740px; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); background-color: #c2583f; }

.contact .contact-inner .title { position: relative; display: inline-block; width: calc(100% - 120px); padding: 40px 60px 50px 60px; background-color: #913c28; float: left; }

.contact .contact-inner .title p { position: relative; display: inline-block; width: 100%; font-weight: bold; font-size: 20px; color: white; margin-top: 40px; }

.contact .contact-inner .title .close-button { position: relative; display: inline-block; float: right; cursor: pointer; }

.contact .contact-inner .title .close-button i { font-size: 35px; color: white; }

.contact .contact-inner .content { position: relative; display: inline-block; width: calc(100% - 270px); float: left; margin-left: 135px; margin-top: 130px; margin-bottom: 55px; }

.contact .privacy-inner { position: relative; display: none; width: calc(100% - 80px); height: calc(100% - 80px); padding: 20px; background-color: #c2583f; color: white; overflow: scroll; max-width: 740px; max-height: 580px; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); }

.contact .privacy-inner a { color: white; }

.contact .privacy-inner p { margin-top: 10px; }

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

	.contact .contact-inner { height: 90%; overflow: scroll; }

	.contact .contact-inner .title { width: calc(100% - 80px); padding: 20px 40px 20px 40px; }

	.contact .contact-inner .content { width: calc(100% - 80px); margin-left: 40px; margin-top: 40px; }

	.contact .custom-button { float: left !important; }

}










form { position: relative; display: inline-block; width: 100%; }

form .input-container { position: relative; display: inline-block; width: 100%; margin-bottom: 30px; }

form .input-container input { position: relative; display: inline-block; width: 100%; background-color: transparent; border: 0; border-bottom: 1px solid rgba(255, 255, 255, .5); font-family: Avenir; font-size: 14px; color: white; font-weight: 500; outline: none; float: left; -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; }

form .input-container input:focus { -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; border-color: rgba(255, 255, 255, 1); }

form .input-container::after { content: attr(data-focus); position: absolute; top: 0; left: 0; font-size: 14px; font-weight: 500; color: rgba(255, 255, 255, .5); pointer-events: none; -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; }

form .focus-input::after { top: -19px; color: rgba(255, 255, 255, 1); -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; }

form .full-input::after { top: -19px; color: rgba(255, 255, 255, 1); -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; }

form .error-text { position: relative; width: 100%; height: 0px; overflow: hidden; font-size: 14px; margin-top: 10px;color: #FFF;font-weight: bold; }

.checkbox-custom, .radio-custom { opacity: 0; position: absolute; }

.checkbox-custom, .checkbox-custom-label, .radio-custom, .radio-custom-label { display: inline-block; vertical-align: middle; margin: 5px; cursor: pointer; -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; }

.checkbox-custom-label, .radio-custom-label { position: relative; -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; }

.checkbox-custom-label span, .radio-custom-label span { position: relative; display: inline-block; width: calc(100% - 47px); float: left; font-family: "Avenir Oblique"; font-size: 14px; color: white; margin-top: 5px; }

.checkbox-custom-label span a, .radio-custom-label span a { color: white; text-decoration: underline; font-family: "Avenir Oblique"; }

.checkbox-custom-label a, .radio-custom-label a { color: #3d99ca; font-family: "Helvetica_Bold"; }

.checkbox-custom + .checkbox-custom-label:before, .radio-custom + .radio-custom-label:before { content: ''; display: inline-block; vertical-align: middle; width: 25px; height: 25px; background-color: #c2583f; text-align: center; margin-right: 20px; float: left; border: 1px solid white; line-height: 25px; font-size: 12px; }

.radio-custom:checked + .radio-custom-label:before { font-family: FontAwesome; content: "\f00c"; color: white; }

.custom-button { position: relative; display: inline-block; width: 167px; font-family: "Avenir"; font-weight: 900; font-size: 14px; background-color: white; padding-top: 10px; padding-bottom: 10px; outline: none; border: 0; color: #c2583f; margin-top: 30px; float: right; border: 1px solid transparent; cursor: pointer; -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; }

.custom-button:hover { color: white; background-color: #c2583f; border-color: white; -webkit-transition-duration: .5s; -moz-transition-duration: .5s; -o-transition-duration: .5s; transition-duration: .5s; }










.hamburger-button { width: 36px; height: 45px; position: relative; margin: 50px auto; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .5s ease-in-out; -moz-transition: .5s ease-in-out; -o-transition: .5s ease-in-out; transition: .5s ease-in-out; cursor: pointer; }

.hamburger-button span { display: block; position: absolute; height: 6px; width: 100%; background: white; border-radius: 9px; opacity: 1; left: 0; -webkit-transform: rotate(0deg); -moz-transform: rotate(0deg); -o-transform: rotate(0deg); transform: rotate(0deg); -webkit-transition: .25s ease-in-out; -moz-transition: .25s ease-in-out; -o-transition: .25s ease-in-out; transition: .25s ease-in-out; }

.hamburger-button span:nth-child(1) { top: 0px; }

.hamburger-button span:nth-child(2),.hamburger-button span:nth-child(3) { top: 12px; }

.hamburger-button span:nth-child(4) { top: 24px; }

.hamburger-button.open span:nth-child(1) { top: 18px; width: 0%; left: 50%; }

.hamburger-button.open span:nth-child(2) { -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); }

.hamburger-button.open span:nth-child(3) { -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); -o-transform: rotate(-45deg); transform: rotate(-45deg); }

.hamburger-button.open span:nth-child(4) { top: 18px; width: 0%; left: 50%; }









