header nav ul li:nth-child(3)::after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #222;
  margin-top: 5px;
}

main h3 {
  font-size: 4rem;
  line-height: 120%;
  margin-bottom: 50px;
}
@media screen and (max-width: 1200px) {
  main h3 {
    font-size: clamp(14px, 3.3333333333vw, 100px);
  }
}
@media screen and (max-width: 668px) {
  main h3 {
    font-size: calc(4rem * 0.75);
  }
}
@media screen and (max-width: 668px) {
  main h3 {
    margin-bottom: 30px;
  }
}

.flowArea {
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 50px;
}
@media screen and (max-width: 1260px) {
  .flowArea {
    max-width: 100%;
    margin-left: 30px;
    margin-right: 30px;
  }
}
@media screen and (max-width: 668px) and (orientation: portrait) {
  .flowArea {
    max-width: 100%;
    margin-left: 20px;
    margin-right: 20px;
  }
}
.flowArea h3 {
  font-size: 4rem;
  line-height: 120%;
  text-align: center;
  margin-bottom: 60px;
}
@media screen and (max-width: 1200px) {
  .flowArea h3 {
    font-size: clamp(14px, 3.3333333333vw, 100px);
  }
}
@media screen and (max-width: 668px) {
  .flowArea h3 {
    font-size: calc(4rem * 0.75);
  }
}
@media screen and (max-width: 960px) {
  .flowArea h3 {
    margin-bottom: 30px;
  }
}
.flowArea > div {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
.flowArea > div > section {
  width: calc(33.3333333333% - 14px);
  border-left: 2px solid #222;
  padding-left: 20px;
  margin-bottom: 40px;
}
.flowArea > div > section:not(:nth-child(3n)) {
  margin-right: 21px;
}
@media screen and (max-width: 668px) {
  .flowArea > div > section {
    width: calc(50% - 10px);
    padding-left: 15px;
    margin-bottom: 20px;
  }
  .flowArea > div > section:not(:nth-child(3n)) {
    margin-right: 0;
  }
  .flowArea > div > section:not(:nth-child(2n)) {
    margin-right: 20px;
  }
}
.flowArea > div > section h4 {
  font-size: 5rem;
  line-height: 120%;
  line-height: 100%;
  color: #fff;
  margin-bottom: 15px;
  text-shadow: -1px -1px 0 #222, 1px -1px 0 #222, -1px 1px 0 #222, 1px 1px 0 #222;
}
@media screen and (max-width: 1200px) {
  .flowArea > div > section h4 {
    font-size: clamp(14px, 4.1666666667vw, 100px);
  }
}
@media screen and (max-width: 668px) {
  .flowArea > div > section h4 {
    font-size: calc(5rem * 0.75);
  }
}
.flowArea > div > section p small {
  display: block;
  font-size: 0.8em;
}

.meritArea {
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 100px;
}
@media screen and (max-width: 1260px) {
  .meritArea {
    max-width: 100%;
    margin-left: 30px;
    margin-right: 30px;
  }
}
@media screen and (max-width: 668px) and (orientation: portrait) {
  .meritArea {
    max-width: 100%;
    margin-left: 20px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 960px) {
  .meritArea {
    margin-bottom: 50px;
  }
}
.meritArea h3 {
  font-size: 4rem;
  line-height: 120%;
  text-align: center;
  margin-bottom: 30px;
}
@media screen and (max-width: 1200px) {
  .meritArea h3 {
    font-size: clamp(14px, 3.3333333333vw, 100px);
  }
}
@media screen and (max-width: 668px) {
  .meritArea h3 {
    font-size: calc(4rem * 0.75);
  }
}
.meritArea .text {
  line-height: 2.2;
}
@media screen and (max-width: 960px) {
  .meritArea .text {
    line-height: 1.8;
  }
}
.meritArea .sub {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 70px;
}
@media screen and (max-width: 960px) {
  .meritArea .sub {
    margin-top: 30px;
  }
}
.meritArea .sub > section {
  width: calc(50% - 30px);
}
@media screen and (max-width: 668px) {
  .meritArea .sub > section {
    width: 100%;
    margin-bottom: 20px;
  }
}
.meritArea .sub > section h4 {
  font-size: 3.5rem;
  line-height: 120%;
  margin-bottom: 30px;
  line-height: 130%;
}
@media screen and (max-width: 1200px) {
  .meritArea .sub > section h4 {
    font-size: clamp(14px, 2.9166666667vw, 100px);
  }
}
@media screen and (max-width: 668px) {
  .meritArea .sub > section h4 {
    font-size: calc(3.5rem * 0.75);
  }
}
@media screen and (max-width: 668px) {
  .meritArea .sub > section h4 {
    font-size: 2.3rem;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 668px) and (orientation: portrait) {
  .meritArea .sub > section h4 {
    text-align: left;
  }
}
.meritArea .sub > section .text {
  line-height: 2.3;
}
@media screen and (max-width: 960px) {
  .meritArea .sub > section .text {
    line-height: 1.8;
  }
}
.meritArea .sub > p.photo {
  width: 50%;
}
@media screen and (max-width: 668px) {
  .meritArea .sub > p.photo {
    width: 100%;
  }
}

.jinzaiArea {
  background-color: #f5f5f5;
  background: linear-gradient(90deg, #f5f5f5 0%, #f5f5f5 calc(100vw - (100vw - 1200px) / 4), transparent calc(100vw - (100vw - 1200px) / 4), transparent 100%);
  margin-bottom: 100px;
  padding: 100px 0;
}
@media screen and (max-width: 960px) {
  .jinzaiArea {
    margin-bottom: 50px;
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.jinzaiArea > section {
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 1260px) {
  .jinzaiArea > section {
    max-width: 100%;
    margin-left: 30px;
    margin-right: 30px;
  }
}
@media screen and (max-width: 668px) and (orientation: portrait) {
  .jinzaiArea > section {
    max-width: 100%;
    margin-left: 20px;
    margin-right: 20px;
  }
}
.jinzaiArea > section > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.jinzaiArea > section > div > p.text {
  width: 50%;
  line-height: 2.3;
}
@media screen and (max-width: 960px) {
  .jinzaiArea > section > div > p.text {
    line-height: 1.8;
  }
}
@media screen and (max-width: 668px) {
  .jinzaiArea > section > div > p.text {
    width: 100%;
  }
}
.jinzaiArea > section > div > p.figure {
  width: 35%;
}
@media screen and (max-width: 960px) {
  .jinzaiArea > section > div > p.figure {
    width: calc(50% - 30px);
  }
}
@media screen and (max-width: 668px) {
  .jinzaiArea > section > div > p.figure {
    width: 400px;
    max-width: 100%;
    margin: 30px auto 0;
  }
}

.hakenArea {
  max-width: 1200px;
  margin: 0 auto;
  margin-bottom: 100px;
}
@media screen and (max-width: 1260px) {
  .hakenArea {
    max-width: 100%;
    margin-left: 30px;
    margin-right: 30px;
  }
}
@media screen and (max-width: 668px) and (orientation: portrait) {
  .hakenArea {
    max-width: 100%;
    margin-left: 20px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 960px) {
  .hakenArea {
    margin-bottom: 50px;
  }
}
.hakenArea .haken01 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 70px;
}
@media screen and (max-width: 960px) {
  .hakenArea .haken01 {
    margin-bottom: 30px;
  }
}
.hakenArea .haken01 > p.text {
  width: calc(50% - 30px);
  line-height: 2.3;
}
@media screen and (max-width: 960px) {
  .hakenArea .haken01 > p.text {
    line-height: 1.8;
  }
}
@media screen and (max-width: 668px) {
  .hakenArea .haken01 > p.text {
    width: 100%;
    margin-bottom: 30px;
  }
}
.hakenArea .haken01 > p.photo {
  width: 50%;
}
@media screen and (max-width: 668px) {
  .hakenArea .haken01 > p.photo {
    width: 100%;
  }
}
.hakenArea .haken02 {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
}
.hakenArea .haken02 > section {
  width: calc(25% - 15px);
  border-left: 2px solid #222;
  padding-left: 20px;
  margin-bottom: 40px;
}
.hakenArea .haken02 > section:not(:nth-child(4n)) {
  margin-right: 20px;
}
@media screen and (max-width: 668px) {
  .hakenArea .haken02 > section {
    width: calc(50% - 10px);
    padding-left: 15px;
    margin-bottom: 20px;
  }
  .hakenArea .haken02 > section:not(:nth-child(4n)) {
    margin-right: 0;
  }
  .hakenArea .haken02 > section:not(:nth-child(2n)) {
    margin-right: 20px;
  }
}
.hakenArea .haken02 > section h4 {
  font-size: 5rem;
  line-height: 120%;
  line-height: 100%;
  color: #fff;
  margin-bottom: 15px;
  text-shadow: -1px -1px 0 #222, 1px -1px 0 #222, -1px 1px 0 #222, 1px 1px 0 #222;
}
@media screen and (max-width: 1200px) {
  .hakenArea .haken02 > section h4 {
    font-size: clamp(14px, 4.1666666667vw, 100px);
  }
}
@media screen and (max-width: 668px) {
  .hakenArea .haken02 > section h4 {
    font-size: calc(5rem * 0.75);
  }
}
.hakenArea .haken02 > section p small {
  display: block;
  font-size: 0.8em;
}
.hakenArea .haken03 > section {
  margin-bottom: 20px;
}
.hakenArea .haken03 > section h4 {
  font-size: 2rem;
  margin-bottom: 20px;
}
@media screen and (max-width: 1200px) {
  .hakenArea .haken03 > section h4 {
    font-size: clamp(16px, 1.6666666667vw, 100px);
  }
}
.hakenArea .haken03 > section h4::before {
  content: "";
  display: inline-block;
  width: 31px;
  height: 11px;
  background: url(../../common/images/icon_sub.svg) no-repeat center/contain;
  vertical-align: middle;
  margin-right: 10px;
}
.hakenArea .haken03 > section ol {
  margin-left: 20px;
  margin-top: 7px;
  margin-bottom: 7px;
}
.hakenArea .haken03 > section ol li {
  list-style: decimal;
}

.syainArea {
  background-color: #f5f5f5;
  background: linear-gradient(-90deg, #f5f5f5 0%, #f5f5f5 calc(100vw - (100vw - 1200px) / 4), transparent calc(100vw - (100vw - 1200px) / 4), transparent 100%);
  margin-bottom: 100px;
  padding: 100px 0;
}
@media screen and (max-width: 960px) {
  .syainArea {
    margin-bottom: 50px;
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
.syainArea > section {
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 1260px) {
  .syainArea > section {
    max-width: 100%;
    margin-left: 30px;
    margin-right: 30px;
  }
}
@media screen and (max-width: 668px) and (orientation: portrait) {
  .syainArea > section {
    max-width: 100%;
    margin-left: 20px;
    margin-right: 20px;
  }
}
.syainArea > section > p.text {
  line-height: 2.2;
  margin-bottom: 50px;
}
@media screen and (max-width: 960px) {
  .syainArea > section > p.text {
    line-height: 1.8;
  }
}
.syainArea > section > div {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.syainArea > section > div .photo {
  width: 50%;
}
@media screen and (max-width: 668px) {
  .syainArea > section > div .photo {
    width: 100%;
    margin-bottom: 20px;
  }
}
.syainArea > section > div .text {
  width: calc(50% - 40px);
  line-height: 2.2;
}
@media screen and (max-width: 960px) {
  .syainArea > section > div .text {
    line-height: 1.8;
  }
}
@media screen and (max-width: 668px) {
  .syainArea > section > div .text {
    width: 100%;
  }
}

.staffArea > section {
  max-width: 1200px;
  margin: 0 auto;
}
@media screen and (max-width: 1260px) {
  .staffArea > section {
    max-width: 100%;
    margin-left: 30px;
    margin-right: 30px;
  }
}
@media screen and (max-width: 668px) and (orientation: portrait) {
  .staffArea > section {
    max-width: 100%;
    margin-left: 20px;
    margin-right: 20px;
  }
}
.staffArea > section .staff01 {
  margin-bottom: 50px;
}
@media screen and (max-width: 960px) {
  .staffArea > section .staff01 {
    margin-bottom: 30px;
  }
}
.staffArea > section .staff01 ul {
  margin-left: 20px;
  margin-top: 15px;
  margin-bottom: 15px;
}
.staffArea > section .staff01 ul li {
  list-style: disc;
}
.staffArea > section .staff02 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
}
.staffArea > section .staff02 .text {
  width: calc(50% - 30px);
}
@media screen and (max-width: 668px) {
  .staffArea > section .staff02 .text {
    width: 100%;
  }
}
.staffArea > section .staff02 .text > section {
  margin-bottom: 30px;
}
@media screen and (max-width: 960px) {
  .staffArea > section .staff02 .text > section {
    margin-bottom: 20px;
  }
}
.staffArea > section .staff02 .text > section h4 {
  font-size: 2.5rem;
  line-height: 120%;
  margin-bottom: 15px;
}
@media screen and (max-width: 1200px) {
  .staffArea > section .staff02 .text > section h4 {
    font-size: clamp(14px, 2.0833333333vw, 100px);
  }
}
@media screen and (max-width: 668px) {
  .staffArea > section .staff02 .text > section h4 {
    font-size: calc(2.5rem * 0.75);
  }
}
.staffArea > section .staff02 .photo {
  width: 50%;
}
@media screen and (max-width: 668px) {
  .staffArea > section .staff02 .photo {
    width: 100%;
  }
}
.staffArea > section .staff03 {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.staffArea > section .staff03 > section {
  width: calc(50% - 20px);
  margin-bottom: 20px;
}
@media screen and (max-width: 668px) and (orientation: portrait) {
  .staffArea > section .staff03 > section {
    width: 100%;
  }
}
.staffArea > section .staff03 > section h4 {
  font-size: 2rem;
  margin-bottom: 20px;
}
@media screen and (max-width: 1200px) {
  .staffArea > section .staff03 > section h4 {
    font-size: clamp(16px, 1.6666666667vw, 100px);
  }
}
.staffArea > section .staff03 > section h4::before {
  content: "";
  display: inline-block;
  width: 31px;
  height: 11px;
  background: url(../../common/images/icon_sub.svg) no-repeat center/contain;
  vertical-align: middle;
  margin-right: 10px;
}/*# sourceMappingURL=index.css.map */