@charset "UTF-8";
:root {
  -webkit-font-smoothing: antialiased;
  --clr-facebook: #1877F2;
  --clr-twitter: #1D9BF0;
  --clr-line: #4CC764;
  --fzSP: 1.4rem;
  --fzPC: 1.6rem;
  --fz-headline: 4.6rem;
  --fz-heading: 2.3rem;
  --fz-subhead: 1.6rem;
  --lh: 2;
  --ls: normal;
  --ff-serif: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝ProN W3", HiraMinProN-W3, "ヒラギノ明朝Pro W3", "Hiragino Mincho Pro", "ＭＳ 明朝", "MS Mincho", serif;
  --ff-sans: YakuHanJP, "Roboto", "Noto Sans JP", sans-serif;
}

.contentsblocks {
  width: 92vw;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .contentsblocks {
    width: 1200px;
  }
}

span.red {
  color: #da340b;
}

#leadblock {
  margin-top: 10.6666666667vw;
}
#leadblock .img {
  border-radius: 4vw;
  overflow: hidden;
}
#leadblock .lead {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.78;
  margin-top: 10.6666666667vw;
}
@media (min-width: 768px) {
  #leadblock {
    margin-top: 55px;
  }
  #leadblock .img {
    border-radius: 20px;
  }
  #leadblock .lead {
    font-size: 3rem;
    line-height: 1.8;
    margin-top: 40px;
  }
}

#companypolicy {
  margin-top: 10.6666666667vw;
}
#companypolicy .copytext {
  text-align: center;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 2.13;
  margin-top: 6.6666666667vw;
}
@media (min-width: 768px) {
  #companypolicy {
    margin-top: 50px;
  }
  #companypolicy .copytext {
    font-size: 1.8rem;
    line-height: 2.22;
    margin-top: 50px;
  }
}

#companyprofile {
  margin-top: 13.3333333333vw;
}
#companyprofile dl {
  border-top: 1px solid #ccc;
  display: grid;
  grid-template-columns: 25.3333333333vw 66.6666666667vw;
  margin-top: 6.6666666667vw;
}
#companyprofile dt, #companyprofile dd {
  border-bottom: 1px solid #ccc;
  font-size: 1.5rem;
  line-height: 1.6;
  padding: 4.6666666667vw 0;
}
#companyprofile dt {
  font-weight: 700;
}
#companyprofile .photo {
  margin-top: 10.6666666667vw;
}
@media (min-width: 768px) {
  #companyprofile {
    margin-top: 60px;
    display: grid;
    grid-template-columns: 710px 430px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0 60px;
  }
  #companyprofile .sectionHead {
    grid-column: 1/3;
  }
  #companyprofile dl {
    width: 710px;
    grid-template-columns: 150px 560px;
    margin-top: 30px;
  }
  #companyprofile dt, #companyprofile dd {
    padding: 15px 20px;
    font-size: 1.6rem;
    line-height: 1.88;
  }
  #companyprofile .photo {
    margin-top: 30px;
  }
}

#nationalbusinessheadquarters {
  margin-top: 13.3333333333vw;
}
#nationalbusinessheadquarters .imgmain {
  margin-top: 6.6666666667vw;
}
#nationalbusinessheadquarters .sectionsubHead {
  margin-top: 10.6666666667vw;
  padding-top: 2.6666666667vw;
  padding-bottom: 2.6666666667vw;
}
#nationalbusinessheadquarters .sectionsubHead + dl {
  margin-top: 5.3333333333vw;
}
#nationalbusinessheadquarters dl {
  border-top: 1px solid #ccc;
}
#nationalbusinessheadquarters dt, #nationalbusinessheadquarters dd {
  font-size: 1.5rem;
  line-height: 1.6;
}
#nationalbusinessheadquarters dt {
  font-weight: 700;
  padding-top: 4vw;
}
@media (max-width: 767px) {
  #nationalbusinessheadquarters dd + dd {
    border-bottom: 1px solid #ccc;
    padding-bottom: 4vw;
  }
}
@media (min-width: 768px) {
  #nationalbusinessheadquarters {
    margin-top: 60px;
  }
  #nationalbusinessheadquarters .imgmain {
    margin-top: 30px;
  }
  #nationalbusinessheadquarters .sectionsubHead {
    margin-top: 60px;
    padding-top: 15px;
    padding-bottom: 15px;
  }
  #nationalbusinessheadquarters .sectionsubHead + dl {
    margin-top: 30px;
  }
  #nationalbusinessheadquarters dl {
    display: grid;
    grid-template-columns: 250px 650px 300px;
  }
  #nationalbusinessheadquarters dt, #nationalbusinessheadquarters dd {
    font-size: 1.6rem;
    line-height: 2.5;
    padding: 25px 20px;
    border-bottom: 1px solid #ccc;
  }
}