.serviceListDiv {
  display: flex;
  padding-bottom: 6em;
}
.serviceContentBlock {
  height: 650px !important;
}

.serviceListMenuNav {
  width: 15%;
  border-right: 2px solid #ccc;
  margin: 0;
  margin-left: 6em;
}
.serviceListInfo {
  width: 85%;
}

.serviceListMenu {
  list-style-type: none;
  padding: 0;
}

.serviceList {
  line-height: 2em;
  list-style-type: none;
  color: #000 !important;
  font-weight: 700;
  letter-spacing: 1px;
}

.serviceListMenu li {
  line-height: 2em;
  list-style-type: none;
  color: #000;
  font-weight: 700;
  letter-spacing: 1px;
}

.serviceListMenu > ul {
  padding: 0;

} 

.serviceListMenu a {
  color: #595757;
}

.serviceListMenu > li {
  margin-top: 2em;
}

.serviceListMenu > li:first-child {
  margin-top: 0;
}

.aboutDiv {
  width: 80%;
  position: relative;
  padding: 6em;
  margin: 0 auto;
  margin-top: -2em;
}

.aboutDiv .rightImg {
  width: 50px;
  position: absolute;
  right: 6%;
  top: 10%;
}

.aboutDiv .leftImg {
  width: 50px;
  position: absolute;
  left: 4%;
  bottom: 10%;
}

.aboutInfo {
  display: flex;
}

.aboutInfo .aboutTitle {
  width: 50%;
  border-top: 2px solid #ccc;
  border-bottom: 2px solid #ccc;
  text-align: center;
  margin: 0 5em 0 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.aboutInfo .aboutContent {
  width: 50%;
  margin: 0;
  letter-spacing: 2px;
  line-height: 1.8em;
  color: #595757;
  font-weight: 500;
  min-height: 130px;
}

.aboutTitle h3 {
  font-size: 1.5em;
  margin: 0;
  color: #813e54;
  font-weight: 700;
}

.aboutTitle h4 {
  margin: .5em 0;
  font-weight: 700;
  color: #595757;
  font-family: lora;
  font-size: 1.2em;
  letter-spacing: 1px;
}

.serviceListBottom {
  width: 88%;
  padding: 4em 4em 0 4em;
  position: relative;
  display: flex;
  align-items: center;
}

.serviceListBottom img {
  width: 45%;
  max-height: 500px;
  display: block;
  object-fit: contain;
}

.characteristic {
  background: #fff;
  width: 100%;
  padding: 4em;
  border-bottom-right-radius: 70px;
  box-shadow: 0 5px 15px -10px #999999;
}

.characteristic .title {
  width: 50%;
}

.characteristic .title h3 {
  padding: 0;
  margin: 0;
  color: #813e54;
  letter-spacing: 2px;
  font-weight: 700;
  border-bottom: 1px solid #813e54;
  line-height: 2em;
}

.characteristic .title p {
  padding: 0;
  margin: 0;
  color: #813e54;
  letter-spacing: 1px;
  font-weight: 500;
  font-size: 1.2em;
  line-height: 2em;
  font-family: lora;
  text-align: right;
}


.characteristic .content p {
  margin: 2em 0;
}

.characteristic .content p span:first-child {
  margin-right: 1em;
  color: #813e54;
  border-bottom: 1px solid #813e54;
  font-family: elmessiri;
  min-width: 1em;
  display: inline-block;
  font-weight: 700;
}

.characteristic .content p span:last-child {
  color: #595757;
  font-weight: 700;
  line-height: 1.8em;
}

@media screen and (max-width: 1280px) {
  .serviceContentBlock {
    height: 600px !important;
  }
}

@media screen and (max-width: 1024px) {
  .serviceContentBlock {
    height: 480px !important;
  }
  .serviceListMenuNav {
    width: 10em;
    margin-left: 2em;
  }
  .serviceListInfo {
    width: calc(100% - 12em);
  }
}

@media screen and (max-width: 820px) {
  .serviceContentBlock {
    height: 360px !important;
  }
  .aboutDiv {
    width: 90%;
    padding: 3em;
  }
  .serviceListBottom {
    width: 90%;
    padding: 2em 2em 0 2em;
  }
}

@media screen and (max-width: 768px) {
  .aboutDiv {
    width: 70%;
  }
  .aboutInfo .aboutTitle {
    margin: 0 1em 0 0;
  }
  
  .characteristic {
    padding: 2em;
  }
  .serviceListDiv {
    flex-direction: column-reverse;
  }
  .serviceListMenuNav {
    width: 90%;
    margin-left: 0;
    margin: 0 auto;
    margin-top: 2em;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    border-right: none;
    border-top: 2px solid #ccc;
  }
  .serviceListMenu {
    width: 9em;
  }
  .serviceListMenu > li {
    margin-top: 0;
  }
  .serviceListInfo {
    width: 100%;
  }
  .aboutTitle h3, .characteristic .title h3 {
    font-size: 1.3em;
  }
}

@media screen and (max-width: 428px) {
  .serviceContentBlock .serviceBlockDiv h2 {
    bottom: 17%;
  }
  .serviceContentBlock .serviceBlockDiv h3 {
    bottom: 7%;
  }
  .aboutInfo {
    flex-direction: column;
    align-items: center;
  }
  .aboutDiv {
    width: calc(100% - 4em);
    padding: 2em;
  }
  .aboutDiv .rightImg {
    top: 5%;
  }
  .aboutInfo .aboutTitle {
    margin: 2em 0;
    width: 80%;
  }
  .aboutTitle h3, .characteristic .title h3 {
    font-size: 1.2em;
    padding: .5em 0 0 0;
  }
  .aboutInfo .aboutContent {
    width: 80%;
  }
  .aboutDiv .leftImg {
    bottom: 0;
  }
  .serviceContentBlock {
    height: 300px !important;
  }
  .serviceListBottom {
    width: 100%;
    padding: 2em 0 0;
    flex-direction: column;
  }
  .serviceListBottom img {
    width: 100%;
  }
  .characteristic {
    width: calc(100% - 4em);
    border-bottom-right-radius: 0px;
  }
  .characteristic .title p {
    font-size: 1em;
  }
  .serviceListMenuNav {
    border-top: unset;
    margin-top: 0;
    width: 100%;
  }
  .serviceListMenu {
    width: 8em;
    text-align: center;
  }
  .characteristic .content p {
    display: flex;
    align-items: center;
  }
}
