.the_content h1,
.the_content h2,
.the_content h3,
.the_content h4,
.the_content h5,
.the_content h6 {
  font-weight: bold !important;
  margin-top: 3em;
  line-height: 1.5;
}

.the_content {
  font-size: clamp(1.3rem, 1.5vw, 1.6rem) !important;
}

.the_content blockquote {
  display: inline-block;
  background-color: #F8F8F8;
  padding: 3em;
  background-image: url("../img/icon/double_quote_head.svg"), url("../img/icon/double_quote_tail.svg");
  background-repeat: no-repeat, no-repeat;
  background-position: left 2em top 2em, right 2em bottom 2em;
  background-size: 2em auto, 2em auto;
  margin: 1em 0;
}

.the_content blockquote cite {
  font-size: 90%;
}

@media screen and (max-width: 599px) {
  .the_content blockquote {
    padding: 3em;
    background-position: left 1.5em top 1.5em, right 1.5em bottom 1.5em;
    background-size: 1.4em auto, 1.4em auto;
    margin: 1.8em 0;
  }
}
@media screen and (max-width: 375px) {
  .the_content blockquote {
    display: block;
    padding: 3em;
    background-size: 1.2em auto, 1.2em auto;
    margin: 2em 0;
  }
}
/*--------------------------------------------------------------------*/
.the_content p {
  line-height: 2;
  margin-top: 2em;
}

.the_content *:first-child {
  margin-top: 0;
}

.the_content figure {
  margin: 0;
}

.the_content img {
  height: auto;
}

.the_content strong em,
.the_content em strong {
  background: linear-gradient(transparent 75%, #d4e9ff 25%);
  font-style: normal;
  font-weight: bold;
  padding: 0 0.2em;
  margin: 0 0.2em;
  padding-bottom: 0.2em;
}

.the_content ol,
.the_content ul {
  list-style-position: inside;
  margin-top: 2em;
  line-height: 2;
}

.the_content ol {
  list-style-type: decimal;
  padding-left: 1em;
  text-indent: -1em;
}

.the_content ul {
  list-style-type: disc;
  padding-left: 1.5em;
  text-indent: -1.5em;
}

.the_content ol a,
.the_content ul a {
  display: inline;
}

/*--------------------------------------------------------------------*/
.the_content h1 {
  font-size: 170%;
  position: relative;
  padding-left: 1em;
}

.the_content h1::before,
.the_content h1::after {
  display: block;
  content: "";
  width: 5px;
  position: absolute;
  left: 0;
  top: 0;
  background-color: #5EA4C5;
  height: 50%;
}

.the_content h1::after {
  background-color: #226194;
  top: auto;
  bottom: 0;
}

@media screen and (max-width: 520px) {
  .the_content h1 {
    font-size: 150%;
  }
}
/*--------------------------------------------------------------------*/
.the_content h2 {
  font-size: 150%;
  padding-left: 1.4em;
  position: relative;
}

.the_content h2::before {
  display: block;
  content: "";
  width: 0.7em;
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  background-color: #5EA4C5;
  height: 4px;
}

@media screen and (max-width: 520px) {
  .the_content h2 {
    font-size: 130%;
  }
}
/*--------------------------------------------------------------------*/
.the_content h3 {
  font-size: 120%;
  margin: 3.8em 0 1em 0;
  position: relative;
}

.the_content h3 + .wp-block-group {
  padding-left: 2em;
}

@media screen and (max-width: 599px) {
  .the_content h3 {
    margin: 3em 0 1em 0;
  }
  .the_content h3 + .wp-block-group {
    padding-left: 1.2em;
  }
}
/*--------------------------------------------------------------------*/
.the_content table {
  font-size: 85%;
  width: auto;
  border: 1px solid #707070;
}

.the_content table th,
.the_content table td {
  border: 1px solid #707070;
  padding: 0.5em 1em;
}

.the_content table th {
  color: #fff;
  background-color: #8798A7;
  text-align: center;
}

.the_content table tbody tr:nth-of-type(even) td {
  background-color: #F6F7F8;
}

.the_content table + figcaption {
  font-size: 70%;
  margin-top: 0.5em;
}

@media screen and (max-width: 599px) {
  figure.wp-block-table {
    max-width: 100%;
    overflow: auto;
  }
  .the_content table {
    width: 100%;
  }
  .the_content table th,
  .the_content table td {
    /*white-space: nowrap;*/
  }
}
/*--------------------------------------------------------------------*/
.the_content img {
  max-width: 100%;
}

.the_content .wp-block-image.size-full img {
  zoom: 0.5;
  backface-visibility: hidden;
}

.the_content .wp-block-table {
  margin-top: 2em;
}

.the_content .wp-block-image {
  margin-top: 2em;
}

.the_content .wp-block-image figcaption {
  font-size: 70%;
  margin-top: 0.5em;
}

.blog-comment {
  position: relative;
  display: inline-block;
  margin: 1.5em 0 1.5em 15px;
  padding: 20px 20px;
  min-width: 120px;
  max-width: 100%;
  color: #555;
  font-size: 16px;
  background: #E8F4FC;
}

.blog-comment:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -15px;
  border: 15px solid transparent;
  border-right: 15px solid #E8F4FC;
}

.blog-comment p {
  margin: 0;
  padding: 0;
}
