@charset "utf-8";

header {
  background-color: rgba(255, 255, 255, .8);
}

#hero_Vis {
  background-image: url(../img/boshu/page-ttl.png);
}

.boshu-all h3 {
  color: #fff;
  margin-bottom: 50px;
}

.boshu-all h3 .box-ttl {
  display: inline-block;
  width: 90%;
  max-width: 584px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  padding: 14px 14px 14px 14px;
  position: relative;
}

.boshu-all h3 .box-ttl .s-text {
  position: relative;
  margin-left: 1.5em;
}

.boshu-all h3 .box-ttl .num {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  min-width: 30px;
  min-height: 30px;
  font-size: 20px;
  background: #fff;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: -40px;
  transform: translateY(-50%);
}

.boshu-all h3 .box-ttl::before {
  content: "";
  display: block;
  width: 1200px;
  max-width: 90vw;
  height: 4px;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}

/* ttl01 */
.boshu-all h3.ttl01 .box-ttl {
  background: #17467c;
}

.boshu-all h3.ttl01 .box-ttl::before {
  border-bottom: 4px solid #17467c;
}

.boshu-all h3.ttl01 .box-ttl .num {
  color: #17467c;
}

/* ttl02 */
.boshu-all h3.ttl02 .box-ttl {
  background: #0070a2;
}

.boshu-all h3.ttl02 .box-ttl::before {
  border-bottom: 4px solid #0070a2;
}

.boshu-all h3.ttl02 .box-ttl .num {
  color: #0070a2;
}

/* ttl03 */
.boshu-all h3.ttl03 .box-ttl {
  background: #5476b1;
}

.boshu-all h3.ttl03 .box-ttl::before {
  border-bottom: 4px solid #5476b1;
}

.boshu-all h3.ttl03 .box-ttl .num {
  color: #5476b1;
}

/* ttl04 */
.boshu-all h3.ttl04 .box-ttl {
  background: #717788;
}

.boshu-all h3.ttl04 .box-ttl::before {
  border-bottom: 4px solid #717788;
}

.boshu-all h3.ttl04 .box-ttl .num {
  color: #717788;
}

.feature {
  width: 100%;
  max-width: 700px;
  margin: 50px auto 0;
}

.feature .flex {
  justify-content: center;
  flex-wrap: wrap;
}

.feature .flex li {
  width: 32%;
}

.feature .flex li:not(:last-of-type) {
  margin-right: 2%;
}

.feature .caption {
  text-align: right;
}

.organization {
  width: 100%;
  max-width: 745px;
  margin: 50px auto 0;
}

.one-box .text {
  color: #17467c;
}

.two-box .text {
  color: #0070a2;
}

.three-box .text {
  color: #5476b1;
}

.four-box .text {
  color: #717788;
}

.text {
  margin-bottom: 40px;
}

.one-box .subttl {
  background: #17467c;
}

.two-box .subttl {
  background: #0070a2;
}

.three-box .subttl {
  background: #5476b1;
}

.four-box .subttl {
  background: #717788;
}

.smart-lock {
  color: #17467c;
  background: #fff;
  padding: 100px 0;
}

.smart-lock .flex {
  flex-wrap: wrap;
  justify-content: space-between;
}

.smart-lock .flex li {
  width: 48%;
}

.smart-lock p.smart-ttl {
  display: inline-block;
  font-size: 30px;
  letter-spacing: 2px;
  text-align: left;
  position: relative;
  z-index: 10;
  margin-bottom: 20px;
}

.smart-lock p {
  font-size: 16px;
  line-height: 1.8;
  text-align: left;
}



/* sp */
@media only screen and (max-width: 900px) {
  [class$="-box"] {
    margin: 60px auto 0;
  }

  .one-box {
    margin: 0 auto;
  }

  .boshu-all h3 {
    margin-bottom: 20px;
  }

  .boshu-all h3 .box-ttl {
    width: 92%;
  }

  .boshu-all h3 .box-ttl .s-text {
    margin-left: 0;
  }

  .boshu-all h3 .box-ttl .num {
    min-width: 25px;
    min-height: 25px;
    font-size: 15px;
    left: -30px;
  }

  .text {
    margin-bottom: 20px;
  }

  .feature {
    margin: 0 auto 0;
  }

  .smart-lock {
    padding: 50px 0;
  }

  .smart-lock .flex li {
    width: 100%;
  }

  .smart-lock p.smart-ttl {
    font-size: 20px;
  }

  .smart-lock p {
    font-size: 14px;
  }


 
}