.subpage.single_page .page_title .en {
  font-family: Arial, Helvetica, sans-serif;
  font-size: min(3.1818181818vw, 78px);
  display: block;
  color: #fff;
  font-weight: 600;
}
.subpage.single_page .post_contents {
  max-width: 1100px;
  padding: 0 60px;
  box-sizing: content-box;
  margin: clamp(40px, 3.6363636364vw, 80px) auto 0;
}
.subpage.single_page .post_header_title {
  font-size: min(1.6363636364vw, 36px);
  text-align: center;
}
.subpage.single_page .post_header_meta {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: min(1.3636363636vw, 30px);
}
.subpage.single_page .post_header_date {
  font-weight: 600;
  font-size: clamp(11px, 0.8181818182vw, 18px);
}
.subpage.single_page .post_header_categories {
  margin-left: 24px;
}
.subpage.single_page .post_header_categories a {
  font-size: clamp(9px, 0.6363636364vw, 14px);
  color: #fff;
  display: inline-block;
  line-height: 1;
  padding: 4px 15px;
  background-color: #169100;
  text-decoration: none;
  border-radius: 50px;
}
.subpage.single_page .post_body {
  margin-top: clamp(40px, 4.5454545455vw, 100px);
  margin-bottom: clamp(60px, 5.4545454545vw, 120px);
}
.subpage.single_page .post_body * {
  margin: 0.8em 0;
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: 0.0125em;
}
.subpage.single_page .post_body h2 {
  font-size: min(2vw, 32px);
  color: #169100;
  padding-bottom: 0.25em;
  border-bottom: solid 2px #169100;
}
.subpage.single_page .post_body h3 {
  font-size: min(1.75vw, 28px);
  padding-left: 0.5em;
  border-left: solid 5px #169100;
}
.subpage.single_page .post_body h4 {
  font-size: min(1.5vw, 24px);
  color: rgba(0, 0, 0, 0.75);
}
.subpage.single_page .post_body h5 {
  font-size: min(1.375vw, 22px);
  color: rgba(0, 0, 0, 0.75);
  padding-bottom: 0.25em;
  border-bottom: solid 1px rgba(0, 0, 0, 0.75);
}
.subpage.single_page .post_body ul li {
  list-style: disc;
  list-style-position: inside;
}
.subpage.single_page .post_body ol li {
  list-style: decimal-leading-zero;
  list-style-position: inside;
}
.subpage.single_page .post_body blockquote {
  padding: 0.8em;
  background-color: #F1F4F0;
}
.subpage.single_page .post_footer {
  border-top: solid 1px rgba(0, 0, 0, 0.75);
  padding-top: min(1.8181818182vw, 40px);
}
.subpage.single_page .post_footer .post_navigation {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(20px, 2.7272727273vw, 80px);
}
.subpage.single_page .post_footer a {
  text-decoration: none;
  font-size: clamp(14px, 0.8181818182vw, 18px);
  color: #000;
  font-weight: 600;
}
.subpage.single_page .post_footer .previous_post {
  order: 1;
}
.subpage.single_page .post_footer .previous_post a::before {
  content: "<";
  display: inline-block;
  font-size: 18px;
  margin-right: 4px;
  height: 20px;
  font-weight: 400;
  position: relative;
  bottom: -2px;
}
.subpage.single_page .post_footer .next_post {
  order: 3;
}
.subpage.single_page .post_footer .next_post a::after {
  content: ">";
  display: inline-block;
  font-size: 18px;
  margin-left: 4px;
  height: 20px;
  font-weight: 400;
  position: relative;
  bottom: -2px;
}
.subpage.single_page .post_footer .back_to_list {
  order: 2;
}
.subpage.single_page .post_footer .back_to_list a {
  background-color: #169100;
  color: #fff;
  display: inline-block;
  padding: min(1.6363636364vw, 36px) min(5.0909090909vw, 115px);
  border-radius: 200px;
}
@media screen and (max-width: 1078px) {
  .subpage.single_page .page_title .en {
    font-size: min(10.2564102564vw, 44px);
  }
  .subpage.single_page .post_contents {
    padding: 0 25px;
    box-sizing: border-box;
  }
  .subpage.single_page .post_header_title {
    font-size: min(6.1538461538vw, 24px);
  }
  .subpage.single_page .post_header_meta {
    margin-top: min(5.1282051282vw, 30px);
  }
  .subpage.single_page .post_body * {
    font-size: min(3.8461538462vw, 16px);
    line-height: 1.36;
  }
  .subpage.single_page .post_body h2 {
    font-size: min(7.1794871795vw, 28px);
  }
  .subpage.single_page .post_body h3 {
    font-size: min(6.1538461538vw, 24px);
  }
  .subpage.single_page .post_body h4 {
    font-size: min(5.641025641vw, 22px);
  }
  .subpage.single_page .post_body h5 {
    font-size: min(5.1282051282vw, 20px);
  }
  .subpage.single_page .post_body blockquote {
    padding: 0.8em;
    background-color: #F1F4F0;
  }
  .subpage.single_page .post_footer {
    border-top: solid 1px rgba(0, 0, 0, 0.75);
    padding-top: min(6.1538461538vw, 32px);
  }
  .subpage.single_page .post_footer .post_navigation {
    flex-wrap: wrap;
    gap: 20px;
    padding: 0 12px;
  }
  .subpage.single_page .post_footer .previous_post {
    order: 1;
    width: calc((100% - 20px) / 2);
  }
  .subpage.single_page .post_footer .next_post {
    order: 2;
    width: calc((100% - 20px) / 2);
    text-align: right;
  }
  .subpage.single_page .post_footer .back_to_list {
    order: 3;
    width: 100%;
    text-align: center;
  }
  .subpage.single_page .post_footer .back_to_list a {
    width: 100%;
  }
}