html, body, dl, dd, ul, li, h1, h2, h3, h4, h5 {
  margin: 0;
  padding: 0;
  -moz-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}
body {
  color: #333;
  font-size: 16px;
  font-weight: 400;
  font-family: "Roboto", sans-serif;
}

.wrap {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 100%;
}
.header {
  display: flex;
  align-items: center;
  width: 1440px;
  height: 102px;
  margin: 0 auto;
}
.header h1 {
  color: transparent;
  width: 128px;
  height: 39px;
  background: transparent url(../images/logo_black.png) no-repeat center;
  overflow: hidden;
  text-indent: -999em;
  margin-left: 130px;
}

.banner {
  width: 1440px;
  margin: 0 auto;
}
.contents {
  width: 950px;
  margin: 130px auto 135px;
}
.contents .comment {
  font-size: 3.125em;
  letter-spacing: -.02em;
  line-height: 1.64;
}
.contents .item-01 {
  position: relative;
  margin-top: 6.875em;
  /* padding-right: .8125em; */
  padding-bottom: 4.0625em;
}
.contents .item-02,
.contents .item-03 {
  position: relative;
  border-top: 5px solid #f3f3f3;
}
.contents .item-02 {
  padding: 4.375em 0;
  padding-right: 1.25em;
  display: flex;
  justify-content: flex-end;
}
.contents .item-03 {
  position: relative;
  /* padding-right: .8125em; */
  padding-top: 4.375em;
}
.contents aside {
  display: table;
  text-align: center;
}
.contents nav {
  display: block;
  color: #f2f2f2;
  font-size: 12.5em;
  font-weight: 900;
  line-height: 1;
  pointer-events: none;
}
.contents h3 {
  font-size: 1.875em;
  font-weight: 600;
  letter-spacing: -.02em;
}
.contents .item-01 img,
.contents .item-03 img {
  position: absolute;
  top: 0;
  right: .8125em;
}
.contents .item-02 img {
  position: absolute;
  left: 0;
  top: 4.375em;
}
.contents .item-03 img {
  top: 4.375em;
}

.footer {
  position: relative;
  display: block;
  background-color: #2c2c2c;
  color: #fff;
  /* height: 345px; */
  height: 415px;
  padding-top: 110px;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
}
.footer .info {
  display: flex;
  width: 1440px;
  margin: 0 auto;
}
.footer h4 {
  margin: 0;
  color: transparent;
  width: 170px;
  height: 51px;
  background: transparent url(../images/logo_white.png) no-repeat center;
  overflow: hidden;
  text-indent: -999em;
  margin-left: 130px;
  margin-left: 8.125em;
  margin-right: 135px;
  margin-right: 8.4375em;
}
.footer dl dt {
  font-weight: 700;
  line-height: 1.5;
}
.footer dl dd {
  margin-top: 25px;
}
.footer ul {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: nowrap;
}
.footer ul li {
  font-size: .875em;
  line-height: 1.75;
}
.footer .address {
  padding-left: 1.8em;
  background: transparent url(../images/icon_address.svg) no-repeat .46875em center;
}
.footer .people {
  margin-left: 75px;
  margin-left: 4.6875em;
  padding-left: 1.75em;
  background: transparent url(../images/icon_people.svg) no-repeat 0 .3em;
}
.footer .people i {
  font-style: normal;
}
.footer .email {
  margin-left: 105px;
  margin-left: 6.5625em;
  padding-left: 2em;
  background: transparent url(../images/icon_email.svg) no-repeat 5px center;
}
.footer .email a {
  color: inherit;
  text-decoration: none;
}
.footer p {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  border-top: 1px solid #fff;
  border-color: rgba(255, 255, 255, .1);
  color:rgba(200, 200, 200, .5);
  font-size: .75em;
  height: 65px;
  display: flex;
  align-items: center;
  justify-content: center;
}