.banner-wrap {
  transition: background 0.3s, border 0.3s, border-radius 0.3s, box-shadow 0.3s;
  height: 405px;
  position: relative;
  background-size: cover;
  background-position: center;
}

.banner-wrap .banner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  max-width: 100% !important;
  height: 100%;
}

.banner-wrap .banner-inner {
  width: 100%;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.banner-wrap .title-wrap {
  width: 100%;
  position: relative;
  min-height: 1px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.banner-wrap .title {
  width: 100%;
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.banner-wrap .title-inner {
  width: 100%;
  position: relative;
  height: 100%;
  display: flex;
  display: -ms-flexbox;
  display: -webkit-flex;
  justify-content: center;
  -webkit-justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.banner-wrap h1 {
  font-size: calc(80rem / 16);
  color: #fff !important;
  text-shadow: 2px 2px 10px rgb(0 0 0);
  padding: 0;
  margin: 0;
  line-height: 1;
  font-weight: 600;
  letter-spacing: -0.02em;
}

@media (max-width: 1400px) {
  .banner-wrap h1 {
    font-size: calc(60rem/16);
    letter-spacing: -0.02em;
  }
}

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

}

@media (max-width: 1024px) {
  .banner-wrap h1 {
    font-size: calc(40rem/16);
  }

  .banner-wrap {
    height: 170px;
  }
}

@media (max-width: 900px) {
  .banner-wrap {
    height: 152px;
  }
}

@media (max-width: 768px) {
  .banner-wrap {
    height: 130px;
  }

  .banner-wrap h1 {
    font-size: calc(30rem/16);
    padding: 0px 20px !important;
    text-align: center;
  }
}
