* {
  box-sizing: border-box;
}

html,
body,
.main {
  height: 100%;
  overflow: hidden;
}

body {
  background: #fff url(../img/bg.jpg) repeat center -10vh / cover;
  color: #595959;
  font-family: serenity, sans-serif;
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.2;
}

@media screen and (min-width: 576px) {
  body {
    background-position: 40% center;
  }
}

@media screen and (min-width: 992px) {
  body {
    background-position: center;
  }
}

.head {
  background-color: #cfa;
  position: absolute;
  z-index: 2;
  bottom: 600px;
  left: -900px;
  width: 1200px;
  transform: scale(0.5);
  transform-origin: right bottom;
}

@media screen and (min-width: 576px) {
  .head {
    bottom: 780px;
    left: -820px;
    transform: scale(0.75);
    transform-origin: right bottom;
  }
}

@media screen and (max-height: 460px) and (max-width: 575px) {
  .head {
    bottom: 490px;
    left: -1000px;
    transform: scale(0.35);
  }
}

@media screen and (max-height: 460px) and (min-width: 576px) {
  .head {
    bottom: 640px;
  }
}

@media screen and (min-width: 992px) {
  .head {
    bottom: 900px;
    left: -700px;
    transform: scale(1);
  }
}

@media screen and (min-width: 1200px) {
  .head {
    bottom: 110vh;
    left: -600px;
  }
}

@media screen and (max-height: 560px) and (min-width: 1200px) {
  .head {
    bottom: 900px;
  }
}

@media screen and (min-width: 1600px) {
  .head {
    bottom: 120vh;
    left: -500px;
  }
}

@media screen and (max-height: 560px) and (min-width: 1600px) {
  .head {
    bottom: 900px;
  }
}

.head-logo {
  position: absolute;
  top: 400px;
  right: 10px;
  z-index: 10;
}

.head-logo img {
  width: 540px;
  height: auto;
}

.head-shape {
  position: absolute;
  z-index: 5;
  width: 100%;
  height: auto;
  transform: rotate(55deg);
}

.foot {
  position: absolute;
  z-index: 1;
  bottom: 330px;
  right: -50px;
  width: 1200px;
}

@media screen and (min-height: 561px) and (min-width: 1200px) {
  .foot {
    right: 50px;
  }
}

.foot-shape {
  width: 100%;
  position: absolute;
  z-index: 15;
}

.foot-cnt {
  position: absolute;
  right: 7%;
  top: 160px;
  z-index: 20;
  width: 80vw;
  color: #fff;
  line-height: 1;
  text-align: center;
}

@media screen and (min-width: 380px) {
  .foot-cnt {
    width: 27%;
  }
}

.form-group {
  position: relative;
}

.form-control {
  width: 100%;
  padding: 0.5em 7em 0.5em 1em;
  border: none;
  border-radius: 5px;
  box-shadow: 0 0 5px rgba(0, 0, 0, 0.16);
  outline: none;
  color: #595959;
  font-size: 0.6em;
}

.form-btn {
  position: absolute;
  right: 0;
  bottom: 0;
  padding: 1em 2em;
  background-color: #595959;
  border: none;
  border-radius: 5px;
  outline: none;
  color: #fff;
  font-size: 0.4em;
  text-transform: uppercase;
}

.form-control::placeholder {
  color: #b5b5b5;
}

.conf {
  font-size: 1.25em;
}

#message {
  display: none;
}

/* IE10&11 FIX */
@media all and (-ms-high-contrast: none) {
  .svg {
    width: 1200px;
    height: 800px;
  }

  .head-logo {
    right: 200px;
  }
  .head-logo img {
    width: 150%;
    height: auto;
  }
}
