#key {
  background: url("../img/housing/key.jpg") center no-repeat;
  background-size: cover;
  position: relative;
  margin-left: 40px;
  margin-right: 40px;
  height: 660px;
}
#key .key_ttl {
  position: absolute;
  right: 147px;
  bottom: 52px;
}
#sec1 h2 {
  font-size: 42px;
  letter-spacing: 0.02em;
  padding: 259px 0 109px;
  line-height: 66px;
  z-index: 9;
}
#sec1 h2 .smz {
  font-family: 'HGSeikaishotai';
  font-size: 60px;
  letter-spacing: -0.08em;
}
#sec1 h2 span:nth-child(3) {
  animation-delay: 0.025s;
}
#sec1 h2 span:nth-child(4) {
  animation-delay: 0.1s;
}
#sec1 h2 span:nth-child(5) {
  animation-delay: 0.175s;
}
#sec1 h2 span:nth-child(6) {
  animation-delay: 0.25s;
}
#sec1 h2 span:nth-child(7) {
  animation-delay: 0.325s;
}
#sec1 h2 span:nth-child(8) {
  animation-delay: 0.4s;
}
#sec1 h2 span:nth-child(9) {
  animation-delay: 0.475s;
}
#sec1 h2 span:nth-child(10) {
  animation-delay: 0.55s;
}
#sec1 h2 span:nth-child(11) {
  animation-delay: 0.625s;
}
#sec1 h2 span:nth-child(12) {
  animation-delay: 0.7s;
}
#sec1 h2 span:nth-child(13) {
  animation-delay: 0.775s;
}
#sec1 h2 span:nth-child(14) {
  animation-delay: 0.85s;
}
#sec1 h2 span:nth-child(15) {
  animation-delay: 0.925s;
}
#sec1 h2 span:nth-child(16) {
  animation-delay: 1s;
}
#sec1 h2 span:nth-child(17) {
  animation-delay: 1.075s;
}
#sec1 h2 span:nth-child(18) {
  animation-delay: 1.15s;
}
#sec1 h2 span:nth-child(19) {
  animation-delay: 1.225s;
}
#sec1 h2 span:nth-child(20) {
  animation-delay: 1.3s;
}
#sec1 h2 span:nth-child(21) {
  animation-delay: 1.375s;
}
#sec1 h2 span:nth-child(22) {
  animation-delay: 1.45s;
}
#sec1 h2 span:nth-child(23) {
  animation-delay: 1.525s;
}
#sec1 .photo_1 {
  position: absolute;
  top: 157px;
  left: calc(50% - 146px);
  z-index: -1;
}
#sec1 .photo_2 {
  margin-left: -182px;
	position: absolute;
	left: -20px;
	top: 510px;
}
#sec1 .photo_3 {
  position: absolute;
  top: 776px;
  left: -140px;
}
#sec1 .box {
  background: rgba(213, 213, 213, 0.88);
  margin-left: 394px;
  margin-top: -38px;
  padding: 126px 249px 0 0;
  position: relative;
  z-index: 9;
  margin-right: -249px;
}
#sec1 .box h3 {
  font-size: 33px;
  line-height: 50px;
  letter-spacing: -0.07em;
  padding: 19px 0 0 54px;
}
#sec1 .box h3 span:nth-child(3) {
  animation-delay: 0.025s;
}
#sec1 .box h3 span:nth-child(4) {
  animation-delay: 0.1s;
}
#sec1 .box h3 span:nth-child(5) {
  animation-delay: 0.175s;
}
#sec1 .box h3 span:nth-child(6) {
  animation-delay: 0.25s;
}
#sec1 .box h3 span:nth-child(7) {
  animation-delay: 0.325s;
}
#sec1 .box h3 span:nth-child(8) {
  animation-delay: 0.4s;
}
#sec1 .box h3 span:nth-child(9) {
  animation-delay: 0.475s;
}
#sec1 .box h3 span:nth-child(10) {
  animation-delay: 0.55s;
}
#sec1 .box h3 span:nth-child(11) {
  animation-delay: 0.625s;
}
#sec1 .box h3 span:nth-child(12) {
  animation-delay: 0.7s;
}
#sec1 .box h3 span:nth-child(13) {
  animation-delay: 0.775s;
}
#sec1 .box h3 span:nth-child(14) {
  animation-delay: 0.85s;
}
#sec1 .box .txt {
  padding: 15px 0 79px 56px;
}
#sec1 .photo_4 {
  position: absolute;
  top: 1135px;
  left: -251px;
}
#sec1 .photo_5 {
  margin-left: 990px;
  margin-top: 38px;
}
#sec1 .photo_6 {
  margin-left: 739px;
  padding-top: 10px;
  padding-bottom: 87px;
}
#sec2 {
  min-height: 661px;
}
#sec2 h2 {
  padding: 104px 0 0 661px;
}
#sec2 .txt {
  padding: 16px 0 0 668px;
}
#sec2 .photo {
  position: absolute;
  top: 0;
  left: calc(50% - 712px);
  z-index: -1;
}
#sec2_2 {
  position: relative;
  color: #fff;
}
#sec2_2:before {
  content: '';
  background: #353535;
  top: 0;
  left: 0;
  bottom: 0;
  right: calc(50% - 71px);
  position: absolute;
}
#sec2_2 h2 {
  padding: 83px 0 109px 403px;
}
#sec2_2 h3 {
  padding-left: 19px;
}
#sec2_2 .txt {
  padding: 41px 0 90px 21px;
  width: 330px;
}
#sec2_2 .photo {
  position: absolute;
  top: 176px;
  left: 403px;
}
#sec2_2 .line {
  position: absolute;
  top: 171px;
  left: calc(50% - 353px);
}
#sec2_2 .line .line_left:before {
  left: 0;
  bottom: 0;
}
#sec2_2 .line .line_left[style*="visible"]:before {
  width: 952px;
}
#sec3 {
  position: relative;
}
#sec3:before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 577px;
  background: #20758d;
}
#sec3 .line {
  position: absolute;
  top: 139px;
  left: calc(50% - 177px);
}
#sec3 .line .line_left:before {
  left: 0;
  bottom: 0;
  background: #fff;
}
#sec3 .line .line_left[style*="visible"]:before {
  width: 926px;
}
#sec3 h2 {
  text-align: center;
  color: #fff;
  font-size: 42px;
  letter-spacing: 0.05em;
  padding: 180px 0 44px;
  line-height: 68px;
}
#sec3 h2 .smz {
  font-size: 60px;
  font-family: 'HGSeikaishotai';
}
#sec3 h2 span:nth-child(3) {
  animation-delay: 0.025s;
}
#sec3 h2 span:nth-child(4) {
  animation-delay: 0.1s;
}
#sec3 h2 span:nth-child(5) {
  animation-delay: 0.175s;
}
#sec3 h2 span:nth-child(6) {
  animation-delay: 0.25s;
}
#sec3 h2 span:nth-child(7) {
  animation-delay: 0.325s;
}
#sec3 h2 span:nth-child(8) {
  animation-delay: 0.4s;
}
#sec3 h2 span:nth-child(9) {
  animation-delay: 0.475s;
}
#sec3 h2 span:nth-child(10) {
  animation-delay: 0.55s;
}
#sec3 h2 span:nth-child(11) {
  animation-delay: 0.625s;
}
#sec3 h2 span:nth-child(12) {
  animation-delay: 0.7s;
}
#sec3 ul {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between;
  margin-left: -224px;
  margin-right: -224px;
}
#sec3 .photo_3 {
  position: absolute;
  top: 781px;
  left: calc(50% - 724px);
}
#sec3 .box {
  background: rgba(150, 150, 150, 0.4);
  margin-left: 433px;
  margin-top: -46px;
  padding: 99px 20px 109px 133px;
  position: relative;
  z-index: 1;
}
#sec3 .box:before {
  content: '';
  position: absolute;
  top: 84px;
  left: 83px;
  width: 2px;
  height: 276px;
  background: #fff;
}
#sec4 {
  padding-bottom: 34px;
  position: relative;
  z-index: 2;
}
#sec4:before {
  content: '';
  background: #353535;
  top: -18px;
  left: 0;
  right: calc(50% - 99px);
  height: 752px;
  position: absolute;
  z-index: -1;
}
#sec4:after {
  content: '';
  background: url("../img/housing/s4_bga.jpg");
  position: absolute;
  left: 0;
  bottom: 0;
  height: 374px;
  right: calc(50% - 630px);
  background-size: cover;
  z-index: -2;
}
#sec4 h2 {
  margin-left: -250px;
  line-height: 1;
  padding-top: 95px;
  padding-bottom: 133px;
}
#sec4 .photo_1 {
  position: absolute;
  top: 120px;
  left: calc(50% - 500px);
  z-index: -1;
}
#sec4 h3 {
  padding-left: 90px;
}
#sec4 .txt {
  padding: 32px 0 221px 95px;
  width: 570px;
  color: #FFF;
}
#sec4 .photo_2 {
  position: absolute;
  top: 707px;
  left: calc(50% + 67px);
  z-index: 1;
}
#sec4 .photo_3 {
  position: absolute;
  top: 526px;
  left: calc(50% + 308px);
  z-index: 1;
}
#sec4 ul {
  margin-left: 22px;
}
#sec4 ul li {
  margin-bottom: 38px;
}
#box_tel {
  background: url("../img/furniture/s5_bg.jpg") center no-repeat;
  background-size: cover;
  text-align: center;
  padding: 112px 0 110px;
}
#box_tel .box {
  background: rgba(40, 107, 145, 0.8);
  margin-left: 42px;
  margin-right: 32px;
  color: #fff;
  padding: 54px 0 47px;
}
#box_tel .box h3 {
  text-align: center;
  font-size: 30px;
  line-height: 30px;
  letter-spacing: 0.14em;
  padding-bottom: 13px;
}
#box_tel .box h3 span:nth-child(3) {
  animation-delay: 0.025s;
}
#box_tel .box h3 span:nth-child(4) {
  animation-delay: 0.1s;
}
#box_tel .box h3 span:nth-child(5) {
  animation-delay: 0.175s;
}
#box_tel .box h3 span:nth-child(6) {
  animation-delay: 0.25s;
}
#box_tel .box h3 span:nth-child(7) {
  animation-delay: 0.325s;
}
#box_tel .box h3 span:nth-child(8) {
  animation-delay: 0.4s;
}
#box_tel .box h3 span:nth-child(9) {
  animation-delay: 0.475s;
}
#box_tel .box h3 span:nth-child(10) {
  animation-delay: 0.55s;
}
#box_tel .box h3 span:nth-child(11) {
  animation-delay: 0.625s;
}
#box_tel .box .tel {
  font-size: 55px;
  letter-spacing: 0.03em;
  line-height: 1;
}
#box_tel .box .tel img {
  margin-top: -17px;
  margin-right: -10px;
}
#box_tel .box .tel span:nth-child(3) {
  animation-delay: 0.025s;
}
#box_tel .box .tel span:nth-child(4) {
  animation-delay: 0.1s;
}
#box_tel .box .tel span:nth-child(5) {
  animation-delay: 0.175s;
}
#box_tel .box .tel span:nth-child(6) {
  animation-delay: 0.25s;
}
#box_tel .box .tel span:nth-child(7) {
  animation-delay: 0.325s;
}
#box_tel .box .tel span:nth-child(8) {
  animation-delay: 0.4s;
}
#box_tel .box .tel span:nth-child(9) {
  animation-delay: 0.475s;
}
#box_tel .box .tel span:nth-child(10) {
  animation-delay: 0.55s;
}
#box_tel .box .tel span:nth-child(11) {
  animation-delay: 0.625s;
}
#box_tel .box .tel span:nth-child(12) {
  animation-delay: 0.7s;
}
#box_tel .box .tel span:nth-child(13) {
  animation-delay: 0.775s;
}
#box_tel .box .txt {
  padding: 1px 0 16px;
  color: rgba(255, 255, 255, 0.6);
  font-size: 15px;
  letter-spacing: -0.05em;
}
#box_tel .box .btn_cus a:before {
  background: rgba(205, 205, 205, 0.6);
}
#qa {
  background: #353535;
  color: #FFF;
  padding-bottom: 121px;
}
#qa h2 {
  text-align: center;
  padding: 172px 0 8px;
  font-size: 52px;
  letter-spacing: -0.1em;
}
#qa h2 .smz {
  font-size: 35px;
}
#qa h2 span:nth-child(1) {
  animation-delay: 0.025s;
}
#qa h2 span:nth-child(2) {
  animation-delay: 0.1s;
}
#qa h2 span:nth-child(3) {
  animation-delay: 0.175s;
}
#qa h3 {
  text-align: center;
  font-size: 19px;
  font-weight: 500;
  padding-bottom: 78px;
}
#qa .item {
  padding-bottom: 83px;
  position: relative;
}
#qa .item.item_2 {
  padding-bottom: 37px;
}
#qa .item .heading {
  color: #20758d;
  font-size: 18px;
  letter-spacing: 0.1em;
  padding-left: 8px;
  line-height: 1;
}
#qa .item .line {
  position: absolute;
  top: 18px;
  left: 3px;
}
#qa .item .line .line_left:before {
  left: 0;
  bottom: 0;
  height: 4px;
}
#qa .item .line .line_left[style*="visible"]:before {
  width: 600px;
}
#qa .item dl {
  padding: 0 70px;
}
#qa .item dl dt {
  font-size: 20px;
  background: #3a3a3a;
  padding: 24px 0 14px 44px;
}
#qa .item dl dd {
  font-size: 15px;
  line-height: 36px;
  letter-spacing: 0.06em;
  display: flex;
  padding: 39px 0 0 45px;
}
#qa .item dl dd span {
  font-size: 52px;
  width: 57px;
  margin-top: -16px;
}

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	#sec2_2 .line{
		top: 161px;
	}
	#sec3 .line{
		top: 138px;
	}
	#qa .item .line{
		top: 8px;
	}
	#sec1 h2 .smz {
	  font-family: YuMincho,  serif;
	}
	#sec3 h2 .smz {
	  font-family: YuMincho,  serif;
	}
}