#header .key-title {
  position: relative;
  display: table;
}
#header .key-title:before {
  content: "";
  position: absolute;
  background: url(../img/index/key-deco.png) no-repeat;
  width: 413px;
  height: 176px;
  top: -176px;
  right: -56px;
}
#sec01 {
  position: relative;
}
#sec01:before {
  content: "";
  position: absolute;
  background: url(../img/shared/line.jpg) repeat-x;
  height: 8px;
  bottom: -8px;
  left: 0;
  right: 0;
  z-index: 55;
}
#sec01 .slider {
  position: relative;
  min-height: 780px;
}
#sec01 li {
  min-height: 780px;
}
#sec01 .slide1 {
  background: url(../img/index/s1-slide1.jpg) no-repeat center top / cover;
}
#sec01 .slide1 .s-img {
  float: right;
  margin: 16px -57px 0 0;
}
#sec01 .slide2 {
  background: url(../img/index/s1-slide2.jpg) no-repeat center top / cover;
}
#sec01 .slide2 .s-img {
  float: right;
  margin: 33px -107px 0 0;
}
#sec01 .slide3 {
  background: url(../img/index/s1-slide3.jpg) no-repeat center top / cover;
}
#sec01 .slide3 .s-img {
  float: right;
  margin: 33px -107px 0 0;
}
#sec01 .tit {
  position: absolute;
  bottom: 0;
}
#sec01 .wrap {
  min-height: inherit;
}
#sec01 .bx-controls-direction a {
  height: 181px;
  width: 94px;
}
#sec01 .bx-controls-direction .bx-prev {
  background: url(../img/shared/btn-left.png) no-repeat;
  margin-left: 21px;
}
#sec01 .bx-controls-direction .bx-next {
  background: url(../img/shared/btn-right.png) no-repeat;
  margin-right: 21px;
}
#sec02 {
  padding: 94px 0 394px;
  position: relative;
  background: url(../img/index/s2-pattern.jpg) repeat center top;
}
#sec02:before {
  content: "";
  position: absolute;
  background: url(../img/index/s2-cover.png) no-repeat bottom right / cover;
  width: 50%;
  height: 617px;
  bottom: 0;
  right: 0;
}
#sec02 .wrap.s {
  position: relative;
}
#sec02 .wrap.s:before {
  content: "";
  position: absolute;
  background: url(../img/index/s2-bg.png) no-repeat;
  width: 578px;
  height: 1041px;
  top: -52px;
  right: -7px;
}
#sec02 .content {
  width: 490px;
  float: left;
  margin-bottom: 35px;
}
#sec02 .content h2 {
  margin-bottom: 20px;
}
#sec02 .content .txt-deco {
  top: -27px;
  right: 0;
  position: absolute;
}
#sec02 .content .txt-img {
  top: 94px;
  right: 286px;
  position: absolute;
}
#sec02 .group {
  display: table;
  width: 100%;
  position: relative;
}
#sec02 .group:before {
  content: "";
  position: absolute;
  background: url(../img/index/s2-img.jpg) no-repeat center / cover;
  height: 543px;
  width: calc(50% + 240px);
  top: 0;
  left: 0;
}
#sec02 .group .box {
  width: 444px;
  float: right;
  margin-top: -55px;
  padding-bottom: 62px;
  background: url(../img/shared/pattern.png) repeat center / cover;
  position: relative;
  z-index: 1;
}
#sec02 .group .box:before {
  content: "";
  position: absolute;
  background: url(../img/index/s2-box-deco.png) no-repeat;
  top: -169px;
  right: -3px;
  width: 256px;
  height: 255px;
}
#sec02 .group .box h3 {
  float: left;
  margin: -33px 0 20px;
  position: relative;
  z-index: 3;
}
#sec02 .group .box .txt {
  width: 340px;
  margin: 0 auto;
  color: #fff;
}
#sec03 {
  position: relative;
}
#sec03:before,
#sec03:after {
  content: "";
  position: absolute;
  background: url(../img/shared/line.jpg) repeat-x;
  height: 18px;
  top: -18px;
  left: 0;
  right: 0;
}
#sec03:after {
  top: auto;
  bottom: -18px;
}
#sec03 h2 {
  position: absolute;
  top: -196px;
  left: 50%;
  transform: translate(-50%);
  margin-left: -15px;
}
#sec03 .slideFrame,
#sec03 .slideCell {
  height: 411px;
}
#sec03 li {
  float: left;
}
#sec04 {
  padding: 72px 0 102px;
}
#sec04 h2 {
  text-align: center;
  margin-bottom: 58px;
}
#sec04 .box {
  width: 310px;
  margin-right: 35px;
  text-align: center;
  float: left;
  color: #fff;
  background: url(../img/shared/pattern.png) repeat center top;
  position: relative;
}
#sec04 .box:nth-child(3n+3) {
  margin-right: 0;
}
#sec04 .box:before {
  content: "";
  position: absolute;
  border: 2px solid #9b5b3c;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  -moz-transition: all 0.4s ease;
  -o-transition: all 0.4s ease;
  -webkit-transition: all 0.4s ease;
  transition: all 0.4s ease;
  z-index: 1;
}
#sec04 .box:hover:before {
  opacity: 1;
}
#sec04 .content {
  padding: 24px 0 78px;
  position: relative;
}
#sec04 .content:before {
  content: "";
  position: absolute;
  background: url(../img/index/s4-deco.png) no-repeat;
  width: 59px;
  height: 59px;
  bottom: 0;
  right: 0;
}
#sec04 .content a {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  cursor: pointer !important;
}
#sec04 h3 {
  font-size: 16px;
  line-height: 30px;
  width: 98%;
  margin: 0 auto 20px;
}
#sec04 .item {
  margin-bottom: 22px;
}
#sec04 .txt {
  width: 98%;
  margin: 0 auto;
  font-size: 12px;
  line-height: 25px;
}
