.page-ttl {
  background-image: url("../img/company/mv.jpg");
}
@media only screen and (max-width: 767px) {
  .page-ttl {
    background-image: url("../img/company/sp/mv.jpg");
  }
}

.pankuzu {
  margin-bottom: 7.9rem;
}

.message {
  margin-bottom: 12rem;
}
.message .inner {
  margin: auto;
}
@media print, screen and (min-width: 768px) {
  .message .inner {
    width: 110rem;
  }
}
@media only screen and (max-width: 767px) {
  .message .inner {
    padding: 0 4rem;
  }
}
@media print, screen and (min-width: 768px) {
  .message .section-content {
    display: flex;
    align-items: flex-start;
  }
}
@media print, screen and (min-width: 768px) {
  .message .section-content .message-area {
    width: 70rem;
    margin-right: 5rem;
  }
}
@media only screen and (max-width: 767px) {
  .message .section-content {
    margin-bottom: 6.8rem;
  }
}
.message .section-content .single {
  margin-bottom: 4rem;
}
@media only screen and (max-width: 767px) {
  .message .section-content .single {
    margin-bottom: 5.2rem;
  }
}
.message .section-content h3 {
  color: #0065B3;
  font-size: 2.4rem;
  font-weight: 600;
  margin-bottom: 2.3rem;
}
@media only screen and (max-width: 767px) {
  .message .section-content h3 {
    font-size: 3.5rem;
    letter-spacing: 0.3rem;
    line-height: 1.6;
    margin-bottom: 2.6rem;
  }
}
.message .section-content h4 {
  margin-bottom: 1.5rem;
  font-size: 2.1rem;
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  .message .section-content h4 {
    margin-bottom: 1.6rem;
    font-size: 3.2rem;
  }
}
.message .section-content p {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: 0.05rem;
  margin-bottom: 0.6rem;
}
@media only screen and (max-width: 767px) {
  .message .section-content p {
    margin-bottom: 3.5rem;
    letter-spacing: 0.18rem;
    line-height: 1.65;
    font-size: 2.8rem;
  }
}
.message .section-content .signature {
  text-align: right;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  margin-bottom: 0;
  margin-top: 3rem;
}
@media only screen and (max-width: 767px) {
  .message .section-content .signature {
    margin-right: 1.2rem;
  }
}
.message .section-content .signature span {
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: 0.05rem;
  font-weight: 300;
}
@media only screen and (max-width: 767px) {
  .message .section-content .signature span {
    font-size: 2.8rem;
  }
}
.message .section-content .signature span.name {
  margin-left: 1rem;
}
@media only screen and (max-width: 767px) {
  .message .section-content .signature span.name {
    margin-left: 3rem;
    width: 24rem;
  }
  .message .section-content .signature span.name img {
    width: 100%;
  }
}
.message .section-content .message-img {
  margin: 0 calc(50% - 50vw) 0 auto;
  line-height: 1.66;
  width: 39vw;
}
@media only screen and (max-width: 767px) {
  .message .section-content .message-img {
    width: 68.7rem;
    margin-bottom: 5.6rem;
  }
}
.message .section-content .message-img img {
  width: 100%;
}

.content-table {
  margin: auto;
}
@media print, screen and (min-width: 768px) {
  .content-table {
    width: 100rem;
  }
}
.content-table dl {
  border-bottom: 0.1rem solid #CCCCCC;
  padding-bottom: 2.4rem;
  margin-bottom: 2.6rem;
  display: flex;
  align-items: flex-start;
}
@media only screen and (max-width: 767px) {
  .content-table dl {
    padding-bottom: 3.3rem;
    margin-bottom: 3.3rem;
  }
}
.content-table dl dt {
  padding-left: 2rem;
  color: #045BAA;
  font-size: 1.5rem;
  letter-spacing: 0.16rem;
  width: 24rem;
}
@media only screen and (max-width: 767px) {
  .content-table dl dt {
    width: 19rem;
    font-size: 2.8rem;
    padding: 0 3rem 0 0;
    letter-spacing: 0.15rem;
    line-height: 1.65;
  }
}
.content-table dl dd {
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0.05rem;
  width: 70rem;
}
@media only screen and (max-width: 767px) {
  .content-table dl dd {
    width: 49.7rem;
    font-size: 2.8rem;
    line-height: 1.65;
    letter-spacing: 0.24rem;
  }
}

.company-profile {
  margin-bottom: 15rem;
  background: url("../img/company/client-bg.jpg") no-repeat top center/cover;
  padding: 5rem 0 7rem;
}
@media only screen and (max-width: 767px) {
  .company-profile {
    background: url("../img/company/sp/client-bg.jpg") no-repeat top center/cover;
    padding-bottom: 7.6rem;
    margin-bottom: 17rem;
  }
}
.company-profile .inner {
  margin: auto;
}
@media print, screen and (min-width: 768px) {
  .company-profile .inner {
    width: 110rem;
  }
}
@media only screen and (max-width: 767px) {
  .company-profile .inner {
    padding: 0 4rem;
  }
}

.main-client {
  background: url("../img/company/client-bg.jpg") no-repeat top center/cover;
  padding: 5rem 0 7rem;
  margin-bottom: 11.6rem;
}
@media only screen and (max-width: 767px) {
  .main-client {
    background: url("../img/company/sp/client-bg.jpg") no-repeat top center/cover;
    margin-bottom: 12.2rem;
    padding-bottom: 7.6rem;
  }
}
.main-client .inner {
  margin: auto;
}
@media print, screen and (min-width: 768px) {
  .main-client .inner {
    width: 110rem;
  }
}
@media only screen and (max-width: 767px) {
  .main-client .inner {
    padding: 0 4rem;
  }
}
.main-client .inner .client-list {
  margin: auto;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}
@media print, screen and (min-width: 768px) {
  .main-client .inner .client-list {
    width: 100rem;
  }
}
@media only screen and (max-width: 767px) {
  .main-client .inner .client-list {
    margin-top: 7rem;
  }
}
.main-client .inner .client-list li {
  width: 32.6rem;
  height: 7.2rem;
  line-height: 7.2rem;
  background: rgba(255, 255, 255, 0.7);
  text-align: center;
  font-size: 1.5rem;
  letter-spacing: 0.05rem;
  margin-bottom: 1rem;
}
@media only screen and (max-width: 767px) {
  .main-client .inner .client-list li {
    width: 32.8rem;
    height: 13.2rem;
    line-height: 1.71;
    font-size: 2.8rem;
    margin-bottom: 3rem;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .main-client .inner .client-list li:nth-of-type(odd) {
    margin-right: 3rem;
  }
}
@media print, screen and (min-width: 768px) {
  .main-client .inner .client-list li:not(:nth-of-type(3n)) {
    margin-right: 1rem;
  }
}

.history .inner {
  margin: auto;
}
@media print, screen and (min-width: 768px) {
  .history .inner {
    width: 110rem;
  }
}
@media only screen and (max-width: 767px) {
  .history .inner {
    padding: 0 4rem;
  }
}
@media only screen and (max-width: 767px) {
  .history .inner .content-table dl {
    padding-bottom: 3.3rem;
    margin-bottom: 3.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .history .inner .content-table dl dt {
    width: 22rem;
  }
}
@media only screen and (max-width: 767px) {
  .history .inner .content-table dl dd {
    width: 47rem;
    letter-spacing: 0.12rem;
  }
}

main {
  margin-bottom: 17rem;
}
/*# sourceMappingURL=company.css.map */