#key {
  background-image: url(../img/concept/key.jpg);
  position: relative;
}

#key:before {
  position: absolute;
  content: "";
  right: 150px;
  left: 0;
  top: 0;
  bottom: 0;
  background-image: url(../img/shared/mask.png);
  background-repeat: no-repeat;
  background-size: 100%;
  background-repeat: repeat-y;
  pointer-events: none;
}

#sec1 {
  background-image: url(../img/concept/sec2_bg.jpg);
  background-position: top center;
  position: relative;
  padding-bottom: 86px;
}

#sec1:before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background-image: url(../img/concept/sec1_bg.png);
  background-size: cover;
  background-repeat: no-repeat;
}

#sec1 .ttl {
  padding-top: 73px;
  margin-left: -10px;
}

#sec1 .text {
  margin-top: 36px;
  margin-left: 10px;
}

#sec2 {
  background-image: url(../img/concept/sec3_bg.png);
  background-position: top center;
  position: relative;
  padding-bottom: 72px;
}

#sec2:before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 50%;
  left: 0;
  background-image: url(../img/concept/sec2_deco.png);
  background-position: top right;
  background-repeat: no-repeat;
}

#sec2 .ttl {
  padding-top: 56px;
}

#sec2 .button {
  margin-top: 20px;
}

#sec2 .button a {
  margin: 0 30px;
}

#sec3 {
  position: relative;
/*  padding: 128px;*/
  padding-bottom: 128px;
  z-index: 1;
}

/*
#sec3:before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  right: 0;
  height: 772px;
  background-image: url(../img/concept/sec3_bg_img.png);
  background-position: bottom center;
  background-size: 100%;
  background-repeat: no-repeat;
}
*/

#sec3:before {
  position: absolute;
  content: "";
  top: 127px;
  left: 53px;
  right: 0;
  height: 772px;
  width: 100%;
  background-image: url(../img/concept/sec3_bg_img.png);
  background-position: bottom center;
  /* background-size: 100%; */
  background-repeat: no-repeat;
}

#sec3:after {
  position: absolute;
  content: "";
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  background-image: url(../img/concept/sec3_deco.png);
  background-position: bottom 47px center;
  background-repeat: no-repeat;
  z-index: -1;
}

#sec3 .ttl {
  margin-left: -295px;
  margin-top: -127px;
  padding-top: 128px;
}

#sec3 .images {
  margin-left: -103px;
  width: 603px;
  position: relative;
  z-index: 1;
}

#sec3 .text {
  width: 500px;
  padding-left: 30px;
  margin-top: 41px;
}

#sec4 {
  position: relative;
  background-image: url(../img/concept/sec4_deco.png), url(../img/concept/sec2_bg.jpg);
  background-position: bottom center, top center;
  background-repeat: no-repeat, repeat;
  padding-bottom: 80px;
}

#sec4:before {
  position: absolute;
  content: "";
  top: -68px;
  left: 0;
  right: 0;
  background-image: url(../img/concept/sec4_bg1.png);
  background-position: top center;
  height: 248px;
  background-size: 100% 100%;
}

#sec4 .ttl {
  margin-right: -42px;
  padding-top: 225px;
  position: relative;
  text-align: right;
  z-index: 2;
}

#sec4 .img_bg {
  position: absolute;
  top: -73px;
  left: -205px;
  pointer-events: none;
}

#sec4 .image_01 {
  position: absolute;
  top: -311px;
  right: -456px;
  pointer-events: none;
  z-index: 1;
}

#sec4 .text {
  margin-top: 35px;
  margin-left: 22px;
  margin-right: 22px;
}

#sec4 .button1 {
  margin-top: 35px;
  margin-left: 40px;
}

#sec4 .button2 {
  margin-top: 20px;
  margin-left: 110px;
}

#sec4 .content_main {
  margin-top: 26px;
}

#sec4 .content_main .content {
  width: 500px;
}

#sec4 .content_main .slider {
  width: 557px;
  margin-right: -57px;
}

#sec4 .content_main .slider .slick-dots {
  text-align: left;
  margin-left: 40px;
}

#sec4 .content_main .slider .slick-dots li button {
  width: 18px;
  height: 18px;
  border: 1px solid #3a1500;
  border-radius: 50%;
  position: relative;
}

#sec4 .content_main .slider .slick-dots li button:before {
  display: none;
}

#sec4 .content_main .slider .slick-dots li button:after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #3a1500;
  margin: auto;
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

#sec4 .content_main .slider .slick-dots li.slick-active button:after {
  opacity: 1;
}

#sec4 .slick-dotted.slick-slider {
  margin-bottom: 75px;
}

#sec5 {
  padding-top: 95px;
  background: url(../img/concept/sec5_bg.jpg) top center repeat-x, url(../img/concept/sec3_bg.png) top center repeat;
  color: #fff;
  position: relative;
  padding-bottom: 125px;
  border-bottom: 9px solid #1c110a;
}

#sec5 .wrap:before {
  position: absolute;
  content: "";
  top: 380px;
  right: -370px;
  background-image: url(../img/concept/sec5_bg_img.png);
  background-repeat: no-repeat;
  width: 961px;
  height: 527px;
}

#sec5 .ttl {
  position: absolute;
  top: -94px;
  right: 0;
  z-index: 2;
}

#sec5 .images {
  margin-left: -20px;
}

#sec5 .deco1 {
  position: absolute;
  top: 236px;
  left: -260px;
}

#sec5 .deco2 {
  position: absolute;
  bottom: -113px;
  right: -255px;
}

#sec5 .text {
  margin-top: 48px;
  margin-left: 58px;
  width: 605px;
}

#sec5 .text p + p {
  margin-top: 30px;
}

#sec5 .bnr {
  margin-top: 82px;
}
/*# sourceMappingURL=concept.css.map */