@charset "utf-8";

.cont h3 {
  padding: 10px 20px;
  font-weight: 600;
  font-size: 20px;
  background-color: #eee;
  border: none;
}

@media only screen and (max-width: 768px) {
  .cont h3 {
    font-size: 18px;
  }
}

/*============================
#message
============================*/

#message .photo.flex {
  align-items: stretch;
  margin-bottom: 30px;
}

#message img {
  width: 254px;
}

#message .text {
  background: url(../images/message02.jpg) no-repeat center;
  -webkit-background-size: cover;
  background-size: cover;
  width: 100%;
  flex: 1;
  padding: 60px 40px 0;
}

#message .text p {
  color: #fff;
  font-size: 26px;
  font-weight: 600;
  line-height: 1.5;
}

#message .text p.name {
  font-size: 20px;
  text-align: right;
}

#message .text p.name span {
  font-size: 16px;
  margin-right: 10px;
}

@media only screen and (max-width: 768px) {
  #message .photo.flex {
    align-items: stretch;
    margin-bottom: 30px;
  }

  #message img {
    width: 100%;
  }

  #message .text {
    padding: 20px;
  }

  #message .text p {
    color: #fff;
    font-size: 18px;
    font-weight: 600;
    line-height: 1.5;
  }

  #message .text p.name {
    font-size: 15px;
  }

  #message .text p.name span {
    font-size: 14px;
  }
}

/*============================
#strength
============================*/

#strength .catch {
  background: url(../images/strength.jpg) no-repeat center;
  width: 100%;
  -webkit-background-size: cover;
  background-size: cover;
  padding: 90px 0;
  text-align: center;
  font-weight: 600;
  color: #fff;
}

#strength .catch p {
  font-size: 18px;
  line-height: 1;
}

#strength .catch p.eng {
  font-size: 28px;
}

@media only screen and (max-width: 768px) {
  #strength .catch {
    background: url(../images/strength_sp.jpg) no-repeat center;
    width: 100%;
    -webkit-background-size: 100%;
    background-size: 100%;
    padding-top: 121.0526%;
    padding: 60px 20px;
    text-align: center;
    font-weight: 600;
    color: #fff;
  }

  #strength .catch p {
    font-size: 18px;
    line-height: 1.4;
  }

  #strength .catch p.eng {
    font-size: 26px;
    line-height: 1.2;
  }
}

/*============================
#service
============================*/

#service section {
  margin-top: 80px;
}

#service section img {
  width: 300px;
}

#service section .text {
  width: 430px;
}

#service section h3 {
  font-size: 18px;
  margin-top: 0;
}

#service .link {
  padding-top: 30px;
}

#service .link li {
  width: 100%;
  margin: 0;
}

@media only screen and (max-width: 768px) {
  #service section {
    margin-top: 20px;
  }

  #service section:nth-of-type(2){
    margin-top: 60px;
  }

  #service section img {
    width: 100%;
  }

  #service section .text {
    width: 100%;
  }
}
