.profile {
  border: solid 2px #e7e7e7;
  padding: 3rem;
  border-radius: 2rem;
  display: grid;
  grid-template-columns: 19rem 1fr;
  gap: 3rem;
  align-items: center;
  margin: 5rem auto;
}
@media (max-width: 768px) {
  .profile {
    margin: 3rem auto;
    display: block;
    padding: 2.4rem;
  }
}
.profile__name {
  margin-bottom: 2rem;
  color: rgba(9, 27, 35, 0.5019607843);
}
@media (max-width: 768px) {
  .profile__name {
    font-size: 1.4rem;
    margin-top: 1rem;
    margin-bottom: 1rem;
  }
}
.profile__name span {
  color: #091b23;
  font-size: 2.2rem;
  margin-left: 0.5em;
  font-weight: bold;
}
@media (max-width: 768px) {
  .profile__name span {
    font-size: 2rem;
    margin-left: 0.25em;
  }
}
.profile__links {
  display: flex;
  gap: 2rem;
  margin-top: 2rem;
}
@media (max-width: 768px) {
  .profile__links {
    justify-content: center;
  }
}
.profile ul {
  padding-left: 1em;
  line-height: 1.8;
}
.profile ul li::marker {
  color: var(--color-blue);
}
@media (max-width: 768px) {
  .profile ul li::marker {
    font-size: 1.8rem;
  }
}

.sns-links {
  display: flex;
  gap: 2rem;
  justify-content: center;
  margin: 5rem auto;
}
@media (max-width: 768px) {
  .sns-links {
    gap: 1rem;
    margin: 3rem auto;
  }
}

.sns-link {
  height: 6.3rem;
  display: block;
  border: solid 2px #e6e8e9;
  padding: 1.2rem 5.6rem;
  border-radius: 0.5rem;
}
@media (max-width: 768px) {
  .sns-link {
    width: 6.3rem;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}
.sns-link img {
  width: 3.7rem;
}

.relations__title {
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0.05em;
}

.wp-embed-site-icon {
  display: none;
}

.wp-embed-site-title a {
  padding-left: 0;
}

.wp-embed-meta {
  display: none;
}

@media (max-width: 768px) {
  .wp-embedded-content {
    width: 100%;
  }
}

.wp-embed-site-icon {
  display: none !important;
}

.entry-content {
  margin: auto;
  max-width: 800px;
}

.wp-video {
  margin: 5rem auto;
}
@media (max-width: 768px) {
  .wp-video {
    margin: 3rem auto;
  }
}

.mce-content-body video,
.wp-block-freeform video,
#tinymce video,
.entry video {
  margin: 3rem auto;
}
.mce-content-body img,
.wp-block-freeform img,
#tinymce img,
.entry img {
  margin: 3rem auto;
}
.mce-content-body a,
.wp-block-freeform a,
#tinymce a,
.entry a {
  color: var(--color-blue);
  text-decoration: underline;
}
.mce-content-body hr,
.wp-block-freeform hr,
#tinymce hr,
.entry hr {
  margin: 5rem auto;
}
@media (max-width: 768px) {
  .mce-content-body hr,
  .wp-block-freeform hr,
  #tinymce hr,
  .entry hr {
    margin: 3rem auto;
  }
}
.mce-content-body h2,
.wp-block-freeform h2,
#tinymce h2,
.entry h2 {
  font-size: 2.8rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  padding-bottom: 2.4rem;
  border-bottom: 3px solid rgba(9, 27, 35, 0.1019607843);
  position: relative;
  margin-top: 5rem;
  margin-bottom: 3rem;
}
@media (max-width: 768px) {
  .mce-content-body h2,
  .wp-block-freeform h2,
  #tinymce h2,
  .entry h2 {
    margin-top: 4rem;
    font-size: 2rem;
    padding-bottom: 1.8rem;
    margin-bottom: 3rem;
  }
}
.mce-content-body h2::before,
.wp-block-freeform h2::before,
#tinymce h2::before,
.entry h2::before {
  content: "";
  width: 12rem;
  height: 1px;
  border-bottom: 3px solid var(--color-blue);
  position: absolute;
  left: 0;
  bottom: -3px;
  z-index: 1;
}
@media (max-width: 768px) {
  .mce-content-body h2::before,
  .wp-block-freeform h2::before,
  #tinymce h2::before,
  .entry h2::before {
    width: 10rem;
  }
}
.mce-content-body h3,
.wp-block-freeform h3,
#tinymce h3,
.entry h3 {
  background-color: var(--color-blue);
  padding: 1rem 2.4rem;
  font-size: 2.2rem;
  letter-spacing: 0.05em;
  border-radius: 0.5rem;
  color: #fff;
  margin-top: 5rem;
  margin-bottom: 5rem;
}
@media (max-width: 768px) {
  .mce-content-body h3,
  .wp-block-freeform h3,
  #tinymce h3,
  .entry h3 {
    font-size: 1.8rem;
    padding: 0.8rem 1.4rem;
    margin-top: 3rem;
    margin-bottom: 3rem;
  }
}
.mce-content-body h4,
.wp-block-freeform h4,
#tinymce h4,
.entry h4 {
  font-size: 1.8rem;
  margin-bottom: 5rem;
}
@media (max-width: 768px) {
  .mce-content-body h4,
  .wp-block-freeform h4,
  #tinymce h4,
  .entry h4 {
    font-size: 1.6rem;
    margin-bottom: 3rem;
  }
}
.mce-content-body ul,
.mce-content-body ol,
.wp-block-freeform ul,
.wp-block-freeform ol,
#tinymce ul,
#tinymce ol,
.entry ul,
.entry ol {
  margin: 5rem 0;
  padding-left: 1em;
}
@media (max-width: 768px) {
  .mce-content-body ul,
  .mce-content-body ol,
  .wp-block-freeform ul,
  .wp-block-freeform ol,
  #tinymce ul,
  #tinymce ol,
  .entry ul,
  .entry ol {
    margin: 3rem 0;
  }
}
.mce-content-body li,
.wp-block-freeform li,
#tinymce li,
.entry li {
  line-height: 1.8;
}
.mce-content-body li::marker,
.wp-block-freeform li::marker,
#tinymce li::marker,
.entry li::marker {
  color: var(--color-blue);
}
.mce-content-body blockquote,
.wp-block-freeform blockquote,
#tinymce blockquote,
.entry blockquote {
  border-radius: 1rem;
  padding: 3rem;
  margin: 5rem 0;
  background-color: #f3f3f3;
}
@media (max-width: 768px) {
  .mce-content-body blockquote,
  .wp-block-freeform blockquote,
  #tinymce blockquote,
  .entry blockquote {
    padding: 2rem;
    margin: 3rem auto;
  }
}
.mce-content-body blockquote a,
.wp-block-freeform blockquote a,
#tinymce blockquote a,
.entry blockquote a {
  text-decoration: underline;
  color: var(--color-blue);
  margin-top: 1rem;
  display: inline-block;
}
.mce-content-body iframe,
.wp-block-freeform iframe,
#tinymce iframe,
.entry iframe {
  margin: 5rem auto;
}
.mce-content-body table td,
.wp-block-freeform table td,
#tinymce table td,
.entry table td {
  padding: 1.1rem 1.5rem;
  border: solid 1px #e6e8e9;
}
.mce-content-body .underline,
.wp-block-freeform .underline,
#tinymce .underline,
.entry .underline {
  text-decoration: underline;
}
.mce-content-body .marker,
.wp-block-freeform .marker,
#tinymce .marker,
.entry .marker {
  background-color: rgba(47, 168, 225, 0.1019607843);
}

#toc_container {
  margin: 5rem auto;
  width: 100% !important;
  padding: 0 !important;
  background-color: #fff !important;
  border: solid 2px #e6e8e9 !important;
  border-radius: 1rem;
  overflow: hidden;
}
#toc_container a {
  color: var(--color-black);
}
#toc_container .toc_title {
  font-size: 2rem;
  color: var(--color-blue);
  text-align: left !important;
  height: 5rem;
  padding: 0.2rem 2.5rem !important;
  background-color: #f8f8f8;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#toc_container .toc_number::after {
  content: ".";
}
#toc_container .toc_list {
  margin-top: 0 !important;
  border-top: solid 2px #e6e8e9 !important;
  padding: 2rem 2.5rem;
}
@media (max-width: 768px) {
  #toc_container .toc_list {
    padding: 2rem;
  }
}
#toc_container .toc_list > li {
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-bottom: 2rem;
}
#toc_container .toc_list > li:last-child {
  margin-bottom: 0;
}
#toc_container .toc_list ul {
  margin-top: 0.5rem;
}
#toc_container .toc_list ul > li {
  font-weight: normal;
  letter-spacing: 0.05em;
}
#toc_container .toc_brackets {
  display: none !important;
}
#toc_container .toc_toggle a {
  display: block;
  font-size: 0 !important;
  background-image: url("data:image/svg+xml;charset=utf8,%3Csvg%20width%3D%2217%22%20height%3D%2211%22%20viewBox%3D%220%200%2017%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cpath%20opacity%3D%220.2%22%20d%3D%22M0.730469%209.46191L8.23047%201.46191L15.7305%209.46191%22%20stroke%3D%22%23343434%22%20stroke-width%3D%222%22%2F%3E%3C%2Fsvg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  width: 1.6rem;
  height: 1rem;
}
#toc_container.contracted .toc_toggle a {
  rotate: 180deg;
}
