@charset "UTF-8";

#wp-postbody {
  font-size: 17px;
  line-height: calc(32 / 17);
  letter-spacing: 0.2em;
  --vk-margin-meta: 0.5rem;
  --vk-margin-headding-bottom: 1.5em;
  --vk-margin-element-bottom: 1.5rem;
  --vk-margin-block-bottom: 2rem;
  --vk-margin-section-bottom: 3rem;
  --vk-size-text: 17px;
  --vk-size-text-meta: 0.75rem;
  --vk-size-text-lg: 1.5rem;
  --vk-size-text-sm: 0.875rem;
  --vk-size-text-xs: 0.75rem;
}

#wp-postbody > * + *:not(:where(h1, h2, h3, h4, h5, h6)) {
  margin-bottom: var(--vk-margin-block-bottom);
}

@media screen and (max-width: 768px) {
  #wp-postbody {
    font-size: 15px;
  }
}

#wp-postbody h1 {
  font-size: 50px;
  line-height: calc(80 / 50);
  font-family: var(--fontFamily-serif);
  letter-spacing: 0.15em;
  font-weight: 500;
}

@media screen and (max-width: 768px) {
  #wp-postbody h1 {
    font-size: 35px;
  }
}

#wp-postbody h2 {
  font-weight: 500;
  font-family: var(--fontFamily-serif);
  letter-spacing: 0.15em;
  line-height: calc(55 / 35);
  font-size: 35px;
}

@media screen and (max-width: 768px) {
  #wp-postbody h2 {
    font-size: 25px;
  }
}
#wp-postbody h3 {
  font-weight: 500;
  font-size: 25px;
  letter-spacing: 0.15em;
  line-height: calc(42 / 25);
}
@media screen and (max-width: 768px) {
  #wp-postbody h3 {
    font-size: 20px;
  }
}
#wp-postbody h4 {
  font-weight: 500;
  font-size: 20px;
  letter-spacing: 0.2em;
  line-height: calc(35 / 20);
}

@media screen and (max-width: 768px) {
  #wp-postbody h4 {
    font-size: 17px;
  }
}
#wp-postbody h5 {
  font-weight: 500;
  font-size: 17px;
  letter-spacing: 0.2em;
  line-height: calc(32 / 27);
}

@media screen and (max-width: 768px) {
  #wp-postbody h5 {
    font-size: 15px;
  }
}
#wp-postbody strong {
  font-weight: 500;
}
#wp-postbody a {
  text-decoration: revert;
}
#wp-postbody .wp-element-button {
  padding-top: 5px;
  padding-left: 25px;
  padding-right: 25px;
  padding-bottom: 5px;
  display: grid;
  grid-template-columns: 9px 1fr 9px;
  column-gap: 9px;
  min-height: 50px;
  align-items: center;
  width: fit-content;
  border-radius: 25px;
  font-weight: 700;
  letter-spacing: 0.1em;
  background-color: var(--color-primary);
  color: white;
  min-width: 220px;
  padding-left: 23px;
  padding-right: 23px;
  text-align: center;
  font-size: 15px;
  line-height: calc(32 / 15);
}
#wp-postbody .wp-element-button::before {
  content: "";
  display: inline-block;
  width: 9px;
  height: 10px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 9 10'><path d='M0 5H8' stroke='white' stroke-miterlimit='10'/><path d='M4 1L8 5L4 9' stroke='white' stroke-miterlimit='10'/></svg>");
  background-repeat: no-repeat;
  background-size: contain;
}
#wp-postbody .wp-element-button::after {
  content: "";
  width: 9px;
  height: 10px;
}

@media screen and (max-width: 768px) {
  #wp-postbody .wp-element-button {
    min-height: 40px;
    min-width: 176px;
    padding-left: 18px;
    padding-right: 18px;
    font-size: 12px;
    line-height: calc(20 / 12);
  }
}

#wp-postbody {
  table {
    border-collapse: separate;
    border-spacing: 8px 0px;
    margin-left: -8px;
    margin-right: -8px;

    :is(th, td):not(:first-child) {
      border-left: unset;
    }
    :is(th, td):not(:last-child) {
      border-right: unset;
    }
  }

  thead {
    border-bottom: unset;
  }

  tfoot {
    border-top: unset;
  }

  th,
  td {
    background-color: white;
    border: 1px solid #b4b4b4;
  }

  :is(th, td) {
    padding: calc(15 / 15 * 1em) calc(20 / 15 * 1em);
    font-size: 15px;
    letter-spacing: 0.2em;
    line-height: calc(25 / 15);
  }

  tr:not(:nth-child(1)) :is(td, th) {
    border-top: unset;
  }

  .is-style-firstColumn {
    :is(th, td):nth-of-type(1) {
      background-color: #dce1e1;
      font-weight: 500;
      border-right: unset;
    }
  }

  .is-style-firstRow {
    tr:nth-of-type(1) :is(td, th) {
      background-color: #dce1e1;
      font-weight: 500;
      border-right: unset;
    }
  }

  .is-style-firstMatrix {
    :is(th, td):nth-of-type(1) {
      background-color: #dce1e1;
      font-weight: 500;
      border-right: unset;
    }

    tr:nth-of-type(1) :is(td, th) {
      background-color: #dce1e1;
      font-weight: 500;
    }
  }
}

.c-box-profile {
  margin-top: 60px;
  padding-bottom: 60px;
  max-width: 688px;
  color: var(--color-text);
}

@media screen and (max-width: 768px) {
  .c-box-profile {
    margin-top: 40px;
    padding-bottom: 40px;
  }
}
.c-box-profile__heading {
  font-family: var(--fontFamily-railway);
  color: var(--color-secondary);
  text-transform: uppercase;
  font-size: 16px;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
}

.c-box-profile__inner[class] {
  margin-top: 50px;
  display: grid;
  grid-template-columns: 150px 1fr;
  column-gap: 38px;
}

@media screen and (max-width: 768px) {
  .c-box-profile__inner[class] {
    margin-top: 25px;
    grid-template-columns: 100px 1fr;
    column-gap: 20px;
  }
}
.c-box-profile__thumbnail {
  width: 150px;
  align-self: flex-start;
}

.c-box-profile__name-ja {
  font-family: var(--fontFamily-serif);
  margin-bottom: 0;
  font-size: 25px;
  line-height: 1;
  letter-spacing: 0.2em;
  font-weight: 500;
}

@media screen and (max-width: 768px) {
  .c-box-profile__name-ja {
    font-size: 20px;
  }
}
.c-box-profile__name-en {
  font-size: 14px;
  font-weight: 500;
  font-family: var(--fontFamily-railway);
  margin-bottom: 0;
  line-height: calc(32 / 14);
  letter-spacing: 0.1em;
  margin-top: 3px;
}

@media screen and (max-width: 768px) {
  .c-box-profile__name-en {
    font-size: 12px;
    line-height: calc(21 / 12);
    margin-top: 5px;
  }
}
.c-box-profile__description {
  font-size: 15px;
  line-height: calc(25 / 15);
  letter-spacing: 0.2em;
  margin-top: 20px;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .c-box-profile__description {
    margin-top: 15px;
    font-size: 12px;
    line-height: calc(21 / 12);
  }
}

.c-box-profile__sns {
  margin-top: 30px;
  margin-bottom: 0;
}

@media screen and (max-width: 768px) {
  .c-box-profile__sns {
    margin-top: 20px;
  }
}

.c-button-anchor {
  width: min(100%, 260px);
  padding-left: 10px;
  padding-right: 10px;
}

.c-button-anchor > * {
  display: grid;
  grid-template-columns: 1fr 26px;
  column-gap: 10px;
  border-bottom: 1px solid #b4b4b4;
  padding-top: 10px;
  padding-bottom: 10px;
}

.c-button-anchor__text {
  margin-bottom: unset;
  font-size: 17px;
  line-height: calc(28 / 17);
  letter-spacing: 0.1em;
}

.vk_faq .vk_faq_title[class]:before,
.vk_faq .vk_faq_content[class]:before {
  color: var(--color-primary);
  font-family: var(--fontFamily-raleway);
  font-size: 20px;
  font-weight: 500;
  line-height: calc(32 / 20);
}

.vk_faq .vk_faq_title[class] {
  font-size: 17px;
  font-weight: 500;
  line-height: calc(27 / 17);
  letter-spacing: 0.2em;
  color: var(--color-text);
  background-color: #dce1e1;
}

.wp-block-vk-blocks-faq.vk_faq[class],
.wp-block-vk-blocks-faq2.vk_faq[class] {
  border-radius: 20px;
  box-shadow: unset;
  transition: border-radius 0.3s;
}

.vk_faq .vk_faq_content {
  font-size: 15px;
  line-height: calc(25 / 15);
  letter-spacing: 0.2em;
}
.vk_faq.vk_faq-accordion-close[class] .vk_faq_title::after,
.vk_faq.vk_faq-accordion-open[class] .vk_faq_title::after {
  content: "";
  display: inline-block;
  width: 40px;
  height: 40px;
  border-top: unset;
  border-right: unset;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 40'><path d='M20 0C31.0457 0 40 8.9543 40 20C40 31.0457 31.0457 40 20 40C8.9543 40 0 31.0457 0 20C0 8.9543 8.9543 0 20 0Z' fill='white'/><path d='M25 22L20 17L15 22' stroke='black' stroke-width='2' stroke-miterlimit='10' fill='white'/></svg>");
  background-repeat: no-repeat;
  background-size: contain;
}

.vk_faq.vk_faq-accordion-close[class] .vk_faq_title::after {
  -webkit-transform: translate(50%, -50%) rotate(180deg);
  transform: translate(50%, -50%) rotate(180deg);
}
.vk_faq.vk_faq-accordion-open[class] .vk_faq_title::after {
  -webkit-transform: translate(50%, -50%) rotate(0deg);
  transform: translate(50%, -50%) rotate(0deg);
}

.vk_faq.vk_faq-accordion-close[class] .vk_faq_title,
.vk_faq.vk_faq-accordion-open[class] .vk_faq_title {
  padding-right: 80px;
}
