.single__inner {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-top: 105px;
  padding-bottom: 184px;
}
@media (max-width: 1280px) {
  .single__inner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
  }
}
@media (max-width: 768px) {
  .single__inner {
    padding-top: 47px;
    padding-bottom: 85px;
  }
}
.single__main_column {
  width: 67.85%;
}
@media (max-width: 1280px) {
  .single__main_column {
    width: 100%;
    margin-bottom: 79px;
  }
}
.single__side_column {
  width: 27%;
}
@media (max-width: 1280px) {
  .single__side_column {
    width: 100%;
  }
}
.single__info-top {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  line-height: 1.55;
  margin-bottom: 14px;
}
@media (max-width: 768px) {
  .single__info-top {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    margin-bottom: 7px;
  }
}
.single__info-top span {
  display: block;
}
.single__info--cat a {
  display: block;
  border-radius: 10px;
  color: #fff;
  font-size: 17px;
  padding: 8px 15px;
  background-color: #F6A631;
}
@media (max-width: 768px) {
  .single__info--cat a {
    font-size: 13px;
    border-radius: 4px;
    padding: 0px 6px;
    margin-right: 9px;
  }
}
.single__info--cat--news_ikejiri a {
  background-color: #F6A631;
}
.single__info--cat--news_gakugei a {
  background-color: #40C1C9;
}
.single__info--date {
  font-size: 21px;
  font-weight: bold;
}
@media (max-width: 768px) {
  .single__info--date {
    font-size: 15px;
  }
}
.single__title {
  font-size: 38px;
  margin-bottom: 46px;
}
@media (max-width: 768px) {
  .single__title {
    font-size: 19px;
    margin-bottom: 16px;
  }
}
.single__thumbnail {
  border-radius: 20px;
  overflow: hidden;
  -webkit-box-shadow: 0 3px 16px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 16px rgba(0, 0, 0, 0.16);
  margin-bottom: 30px;
}
@media (max-width: 768px) {
  .single__thumbnail {
    border-radius: 10px;
    margin-bottom: 15px;
    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, 0.16);
            box-shadow: 0 3px 5px rgba(0, 0, 0, 0.16);
    position: relative;
  }
  .single__thumbnail::before {
    content: "";
    display: block;
    padding-top: 56.25%;
  }
  .single__thumbnail img, .single__thumbnail video, .single__thumbnail iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .single__thumbnail::before {
    padding-top: 54.85%;
  }
}
.single #toc_container {
  margin-bottom: 64px;
  width: 100%;
  border-radius: 10px;
  border: none;
  -webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  padding: 28px 35px 24px;
}
@media (max-width: 768px) {
  .single #toc_container {
    margin-bottom: 35px;
    padding: 25px 20px 13px;
  }
}
.single #toc_container .toc_title {
  text-align: left;
  color: #F6A631;
  font-size: 21px;
  position: relative;
  padding-left: 43px;
}
@media (max-width: 768px) {
  .single #toc_container .toc_title {
    font-size: 16px;
    padding-left: 34px;
  }
}
.single #toc_container .toc_title::before, .single #toc_container .toc_title::after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  display: block;
}
.single #toc_container .toc_title::before {
  left: 0;
  width: 32px;
  height: 32px;
  border-radius: 6px;
  background-color: #F6A631;
}
@media (max-width: 768px) {
  .single #toc_container .toc_title::before {
    width: 25px;
    height: 25px;
  }
}
.single #toc_container .toc_title::after {
  left: 5px;
  background: url(../img/single/icon_table.svg) no-repeat center center/cover;
  width: 21.5px;
  height: 21.5px;
}
@media (max-width: 768px) {
  .single #toc_container .toc_title::after {
    left: 3.8px;
    width: 17px;
    height: 17px;
  }
}
.single #toc_container .toc_list {
  padding-left: 22px;
  font-size: 18px;
  font-weight: bold;
  margin-top: 26px !important;
}
@media (max-width: 768px) {
  .single #toc_container .toc_list {
    padding-left: 0;
    font-size: 14px;
    margin-top: 12px !important;
  }
}
.single #toc_container .toc_list a {
  color: #000;
}
.single #toc_container .toc_list > li + li {
  margin-top: 30px;
}
@media (max-width: 768px) {
  .single #toc_container .toc_list > li + li {
    margin-top: 9px;
  }
}
@media (max-width: 768px) {
  .single #toc_container ul ul {
    margin-top: 3px;
    margin-left: 9px;
    line-height: 2.3;
  }
}
.single__content {
  margin-bottom: 25px;
}
@media (max-width: 768px) {
  .single__content {
    margin-bottom: 13px;
  }
}
.single__content-inner {
  line-height: 1.8;
  padding: 30px 0;
  margin: auto;
}
@media (max-width: 768px) {
  .single__content-inner {
    padding: 15px 0;
  }
}
.single__content-inner h2, .single__content-inner h3, .single__content-inner h4, .single__content-inner h5, .single__content-inner h6, .single__content-inner p {
  margin-bottom: 26px;
}
@media (max-width: 768px) {
  .single__content-inner h2, .single__content-inner h3, .single__content-inner h4, .single__content-inner h5, .single__content-inner h6, .single__content-inner p {
    margin-bottom: 10px;
  }
}
.single__content-inner h2 {
  font-size: 32px;
  padding-left: 0.6em;
  line-height: 1.5;
  margin-top: 51px;
  position: relative;
}
@media (max-width: 980px) {
  .single__content-inner h2 {
    font-size: 25px;
  }
}
@media (max-width: 768px) {
  .single__content-inner h2 {
    font-size: 18px;
    padding-left: 0.3em;
    margin-top: 20px;
  }
}
.single__content-inner h2 span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 9px;
  height: 100%;
  background-color: #F6A631;
  border-radius: 6px;
}
@media (max-width: 768px) {
  .single__content-inner h2 span::before {
    width: 3px;
  }
}
.single__content-inner h3 {
  font-size: 26px;
  background-color: #F4F4F4;
  border-radius: 10px;
  padding: 23px 23px;
  margin-top: 42px;
  line-height: 1;
}
@media (max-width: 980px) {
  .single__content-inner h3 {
    font-size: 21px;
    padding: 20px;
  }
}
@media (max-width: 768px) {
  .single__content-inner h3 {
    font-size: 16px;
    border-radius: 6px;
    padding: 13px 20px;
    margin-top: 20px;
  }
}
.single__content-inner h4 {
  font-size: 20px;
}
@media (max-width: 980px) {
  .single__content-inner h4 {
    font-size: 16px;
  }
}
.single__content-inner h5 {
  font-size: clamp(16px, 1.25vw, 20px);
}
@media (max-width: 768px) {
  .single__content-inner h5 {
    font-size: 14px;
  }
}
.single__content-inner h6 {
  font-size: clamp(16px, 1.25vw, 20px);
}
@media (max-width: 768px) {
  .single__content-inner h6 {
    font-size: 16px;
  }
}
.single__content-inner p {
  font-size: 17px;
  letter-spacing: 0.072em;
}
@media (max-width: 768px) {
  .single__content-inner p {
    font-size: 13px;
    line-height: 1.84;
  }
}
.single__content-inner img, .single__content-inner video {
  display: block;
}
.single__content-inner img.alignleft, .single__content-inner video.alignleft {
  float: left;
}
.single__content-inner img.aligncenter, .single__content-inner video.aligncenter {
  margin: 20px auto;
}
.single__content-inner img.alignright, .single__content-inner video.alignright {
  float: right;
}
.single__content-inner img {
  width: inherit;
  margin: 30px 0;
  border-radius: 10px;
}
@media (max-width: 768px) {
  .single__content-inner img {
    margin: 15px 0 10px;
  }
}
.single__content-inner video {
  margin: 60px auto;
}
.single__content-inner .is-type-video, .single__content-inner .is-type-rich {
  margin: 60px auto;
}
.single__content-inner .is-type-video .wp-block-embed__wrapper, .single__content-inner .is-type-rich .wp-block-embed__wrapper {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  text-align: center;
}
.single__content-inner .is-type-video .wp-block-embed__wrapper iframe, .single__content-inner .is-type-rich .wp-block-embed__wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.single__content-inner a {
  color: #F6A631;
  text-decoration: underline;
}