@charset "UTF-8";
/*==========================================
変数 inc.scss
===========================================*/
/*==========================================
変数 fonts.scss
===========================================*/
/*===================================
userSS 追加
=====================================*/
/*==========================================
変数 inc.scss
===========================================*/
/*==========================================
変数 fonts.scss
===========================================*/
/*===================================
userSS 追加
=====================================*/
/*==========================================
 EDITOR STYLE
===========================================*/
.editor-style {
  color: #000;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media all and (-ms-high-contrast: none) {
  .editor-style {
    word-break: break-all;
  }
}
.editor-style p {
  margin: 0;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.1em;
}
.editor-style p:not(:last-child) {
  margin-bottom: 2em;
}
.editor-style a {
  color: #187bb5;
  text-decoration: underline !important;
  transition: opacity 0.3s;
}
.editor-style a img {
  transition: opacity 0.3s;
}
@media (hover: hover) {
  .editor-style a:hover:hover {
    text-decoration: underline !important;
    opacity: 0.5;
  }
  .editor-style a:hover:hover img {
    opacity: 0.5;
  }
}
.editor-style mark {
  padding: 0;
  background-color: transparent;
  background-image: linear-gradient(to bottom, transparent 55%, #b6dae5 55%);
  color: inherit;
}
.editor-style strong {
  font-weight: 700;
}
.editor-style em {
  font-style: italic;
}
.editor-style img {
  max-width: 100%;
  height: auto;
}
.editor-style {
  /*==========================================
   H2
  ===========================================*/
}
.editor-style h2 {
  width: 100%;
  margin: clamp(6rem, 4.1666666667vw, 8rem) 0 clamp(3.5rem, 2.34375vw, 4.5rem);
  padding: 0;
  background: transparent;
  color: #187bb5;
  font-size: clamp(2.4rem, 1.5625vw, 3rem);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1200px) {
  .editor-style h2 {
    margin: 7rem 0 4rem;
    font-size: clamp(2.2rem, 2.3333333333vw, 2.8rem);
  }
}
@media screen and (max-width: 960px) {
  .editor-style h2 {
    margin: 6rem 0 3.5rem;
    font-size: clamp(2.1rem, 2.7083333333vw, 2.6rem);
  }
}
@media screen and (max-width: 576px) {
  .editor-style h2 {
    margin: 5rem 0 3rem;
    font-size: clamp(2rem, 4.1666666667vw, 2.4rem);
  }
}
.editor-style {
  /*==========================================
   H3
  ===========================================*/
}
.editor-style h3 {
  position: relative;
  width: 100%;
  margin: clamp(5rem, 3.3854166667vw, 6.5rem) 0 clamp(3rem, 2.0833333333vw, 4rem);
  padding: 0 0 1.5rem 1.6rem;
  border-bottom: 1px solid #79b5df;
  color: #000;
  font-size: clamp(2rem, 1.25vw, 2.4rem);
  font-weight: 500;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1200px) {
  .editor-style h3 {
    margin-top: 5rem;
    font-size: clamp(1.9rem, 1.8333333333vw, 2.2rem);
  }
}
@media screen and (max-width: 960px) {
  .editor-style h3 {
    margin: 4.5rem 0 3rem;
    font-size: clamp(1.8rem, 2.1875vw, 2.1rem);
  }
}
@media screen and (max-width: 576px) {
  .editor-style h3 {
    margin: 4rem 0 2.5rem;
    padding: 0 0 1.2rem 1.4rem;
    font-size: 1.8rem;
  }
}
.editor-style h3::before {
  content: "";
  position: absolute;
  top: 0.55em;
  left: 0;
  width: 6px;
  height: 6px;
  background: #187bb5;
}
@media screen and (max-width: 576px) {
  .editor-style h3::before {
    width: 5px;
    height: 5px;
  }
}
.editor-style {
  /*==========================================
   H4
  ===========================================*/
}
.editor-style h4 {
  width: 100%;
  margin: clamp(4.5rem, 3.125vw, 6rem) 0 clamp(2.5rem, 1.8229166667vw, 3.5rem);
  padding: 0.2rem 0 0.2rem 1.8rem;
  border-left: 5px solid #187bb5;
  color: #000;
  font-size: clamp(1.8rem, 1.09375vw, 2.1rem);
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1200px) {
  .editor-style h4 {
    margin-top: 5rem;
    font-size: clamp(1.8rem, 1.6666666667vw, 2rem);
  }
}
@media screen and (max-width: 960px) {
  .editor-style h4 {
    margin: 4rem 0 3rem;
    font-size: clamp(1.7rem, 1.9791666667vw, 1.9rem);
  }
}
@media screen and (max-width: 576px) {
  .editor-style h4 {
    margin: 3.5rem 0 2.5rem;
    padding-left: 1.4rem;
    border-left-width: 4px;
    font-size: 1.8rem;
  }
}
.editor-style {
  /*==========================================
   H5
  ===========================================*/
}
.editor-style h5 {
  width: 100%;
  margin: 4rem 0 3rem;
  padding: 1rem 0;
  border-block: 1px solid #777;
  color: #000;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 576px) {
  .editor-style h5 {
    margin: 3.5rem 0 2.5rem;
    font-size: 1.6rem;
  }
}
.editor-style {
  /*==========================================
   UL
  ===========================================*/
}
.editor-style ul {
  margin: clamp(4rem, 2.8645833333vw, 5.5rem) 0;
  padding: 3rem 3.5rem;
  border: none;
  background: #f1f1f1;
  list-style: none;
}
@media screen and (max-width: 960px) {
  .editor-style ul {
    margin-block: 4rem;
    padding: 2.5rem 3rem;
  }
}
@media screen and (max-width: 576px) {
  .editor-style ul {
    margin-block: 3.5rem;
    padding: 2.5rem 2rem;
  }
}
.editor-style ul li {
  position: relative;
  margin: 0;
  padding: 0 0 0 2rem;
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
.editor-style ul li:not(:last-child) {
  margin-bottom: 1.4rem;
}
.editor-style ul li::before {
  content: "";
  position: absolute;
  top: 0.7em;
  left: 0;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #000;
}
.editor-style {
  /*==========================================
   OL
  ===========================================*/
}
.editor-style ol {
  margin: clamp(4rem, 2.8645833333vw, 5.5rem) 0;
  padding: 3rem 3.5rem;
  border: 1px solid #e5e5e5;
  background: #fff;
  list-style: none;
  counter-reset: number;
}
@media screen and (max-width: 960px) {
  .editor-style ol {
    margin-block: 4rem;
    padding: 2.5rem 3rem;
  }
}
@media screen and (max-width: 576px) {
  .editor-style ol {
    margin-block: 3.5rem;
    padding: 2.5rem 2rem;
  }
}
.editor-style ol li {
  position: relative;
  margin: 0;
  padding: 0 0 0 3.8rem;
  font-size: 1.6rem;
  line-height: 2.4rem;
  letter-spacing: 0.1em;
}
.editor-style ol li:not(:last-child) {
  margin-bottom: 1.2rem;
}
.editor-style ol li::before {
  content: counter(number);
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.4rem;
  height: 2.4rem;
  border-radius: 50%;
  background: #187bb5;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  counter-increment: number;
}
.editor-style {
  /*==========================================
   IMAGE / GALLERY
  ===========================================*/
}
.editor-style .blocks-gallery-grid,
.editor-style .wp-block-gallery {
  margin: 0;
}
.editor-style li.blocks-gallery-item {
  padding-left: 0;
}
.editor-style li.blocks-gallery-item::before {
  display: none;
}
.editor-style .wp-block-image {
  margin-inline: 0;
}
.editor-style .wp-block-image:not(:last-child) {
  margin-bottom: 3rem;
}
.editor-style .wp-block-columns {
  margin-block: 3rem;
}
.editor-style {
  /*==========================================
   HR
  ===========================================*/
}
.editor-style hr {
  width: 70%;
  margin: clamp(4rem, 3.125vw, 6rem) auto;
  border: none;
  border-top: 1px solid #999;
}
@media screen and (max-width: 960px) {
  .editor-style hr {
    width: 80%;
    margin-block: 5rem;
  }
}
@media screen and (max-width: 576px) {
  .editor-style hr {
    width: 100%;
    margin-block: 4rem;
  }
}
.editor-style {
  /*==========================================
   PULLQUOTE
  ===========================================*/
}
.editor-style .wp-block-pullquote {
  width: 90%;
  margin: clamp(5rem, 3.6458333333vw, 7rem) auto;
  padding: 0;
  border: none;
  background: #efefef;
  color: #000;
  font-size: 1.6rem;
  text-align: left;
}
@media screen and (max-width: 960px) {
  .editor-style .wp-block-pullquote {
    width: 94%;
    margin-block: 5rem;
  }
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-pullquote {
    width: 100%;
    margin-block: 4rem;
  }
}
.editor-style .wp-block-pullquote blockquote {
  position: relative;
  margin: 0;
  padding: 3rem 3.5rem 3rem 4.5rem;
}
@media screen and (max-width: 960px) {
  .editor-style .wp-block-pullquote blockquote {
    padding: 2.5rem 3rem 2.5rem 4rem;
  }
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-pullquote blockquote {
    padding: 2.5rem 2rem 2.5rem 3.2rem;
  }
}
.editor-style .wp-block-pullquote blockquote::before {
  content: "";
  position: absolute;
  top: 1rem;
  bottom: 1rem;
  left: 1.5rem;
  width: 4px;
  background: #187bb5;
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-pullquote blockquote::before {
    left: 1rem;
  }
}
.editor-style .wp-block-pullquote blockquote p {
  margin: 0;
  padding-bottom: 2rem;
  border-bottom: 1px solid #999;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
}
.editor-style .wp-block-pullquote blockquote p:not(:last-child) {
  margin-bottom: 2rem;
}
.editor-style .wp-block-pullquote blockquote cite {
  display: block;
  margin-top: 2rem;
  color: #000;
  font-size: 1.6rem;
  font-style: normal;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
.editor-style {
  /*==========================================
   通常 BLOCKQUOTE
  ===========================================*/
}
.editor-style blockquote:not(.wp-block-pullquote blockquote) {
  position: relative;
  width: 90%;
  margin: clamp(4rem, 2.8645833333vw, 5.5rem) auto;
  padding: 2rem 3rem 2rem 4rem;
  background: #efefef;
  color: #000;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 960px) {
  .editor-style blockquote:not(.wp-block-pullquote blockquote) {
    width: 94%;
  }
}
@media screen and (max-width: 576px) {
  .editor-style blockquote:not(.wp-block-pullquote blockquote) {
    width: 100%;
    padding: 2rem 2rem 2rem 3.2rem;
  }
}
.editor-style blockquote:not(.wp-block-pullquote blockquote)::before {
  content: "";
  position: absolute;
  top: 0.7rem;
  bottom: 0.7rem;
  left: 1.5rem;
  width: 4px;
  background: #187bb5;
}
@media screen and (max-width: 576px) {
  .editor-style blockquote:not(.wp-block-pullquote blockquote)::before {
    left: 1rem;
  }
}
.editor-style {
  /*==========================================
   DETAILS
  ===========================================*/
}
.editor-style .wp-block-details {
  width: 90%;
  margin: clamp(4rem, 2.8645833333vw, 5.5rem) auto;
  background: #efefef;
}
@media screen and (max-width: 960px) {
  .editor-style .wp-block-details {
    width: 94%;
  }
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-details {
    width: 100%;
    margin-block: 4rem;
  }
}
.editor-style .wp-block-details summary {
  position: relative;
  display: block;
  margin: 0;
  padding: 2rem 6rem 2rem 3.5rem;
  color: #000;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.7;
  letter-spacing: 0.1em;
  cursor: pointer;
  list-style: none;
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-details summary {
    padding: 1.8rem 5rem 1.8rem 2.8rem;
  }
}
.editor-style .wp-block-details summary::-webkit-details-marker {
  display: none;
}
.editor-style .wp-block-details summary::before {
  content: "";
  position: absolute;
  top: 0.7rem;
  bottom: 0.7rem;
  left: 1.2rem;
  width: 4px;
  background: #187bb5;
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-details summary::before {
    left: 0.8rem;
  }
}
.editor-style .wp-block-details summary::after {
  content: "＋";
  position: absolute;
  top: 50%;
  right: 2rem;
  color: #666;
  font-size: 2.2rem;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0;
  transform: translateY(-50%);
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-details summary::after {
    right: 1.5rem;
    font-size: 2rem;
  }
}
.editor-style .wp-block-details[open] summary::after {
  content: "−";
}
.editor-style .wp-block-details > *:not(summary) {
  margin-inline: 0;
  padding-inline: 3.5rem;
  animation: td-details-open 0.35s ease;
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-details > *:not(summary) {
    padding-inline: 2rem;
  }
}
.editor-style .wp-block-details > *:not(summary):first-of-type {
  padding-top: 2rem;
}
.editor-style .wp-block-details > *:not(summary):last-child {
  padding-bottom: 2.5rem;
}
.editor-style .wp-block-details p {
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.1em;
}
.editor-style .wp-block-details.td-details {
  background: #efefef;
}
.editor-style {
  /*==========================================
   BUTTON
  ===========================================*/
}
.editor-style .wp-block-buttons {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 2rem;
  margin-block: clamp(4.5rem, 3.125vw, 6rem);
}
@media screen and (max-width: 1200px) {
  .editor-style .wp-block-buttons {
    flex-direction: column;
    align-items: flex-start;
    gap: 1.5rem;
  }
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-buttons {
    margin-block: 4rem;
  }
}
.editor-style .wp-block-buttons .wp-block-button {
  margin: 0;
}
@media screen and (max-width: 1200px) {
  .editor-style .wp-block-buttons .wp-block-button {
    width: 100%;
  }
}
.editor-style .wp-block-buttons .wp-block-button.wp-block-button__width-50 {
  width: calc(50% - var(--wp--style--block-gap, 0.5em) * 0.5);
}
@media screen and (max-width: 1200px) {
  .editor-style .wp-block-buttons .wp-block-button.wp-block-button__width-50 {
    width: 100%;
  }
}
.editor-style .wp-block-buttons .wp-block-button.wp-block-button__width-75 {
  width: 75%;
}
@media screen and (max-width: 1200px) {
  .editor-style .wp-block-buttons .wp-block-button.wp-block-button__width-75 {
    width: 100%;
  }
}
.editor-style .wp-block-buttons .wp-block-button__link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 0;
  padding: 1rem 4rem;
  border: 1px solid #187bb5;
  border-radius: 100vmax;
  background: #187bb5;
  color: #fff;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
  text-decoration: none !important;
  transition: background 0.3s, color 0.3s, border-color 0.3s;
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-buttons .wp-block-button__link {
    width: 100%;
    padding: 1.2rem 2rem;
  }
}
@media (hover: hover) {
  .editor-style .wp-block-buttons .wp-block-button__link:hover:hover {
    border-color: #000;
    background: #000;
    color: #fff;
    text-decoration: none !important;
    opacity: 1;
  }
}
.editor-style {
  /*==========================================
   TABLE
  ===========================================*/
}
.editor-style .wp-block-table {
  width: 76%;
  margin: clamp(4.5rem, 3.125vw, 6rem) auto;
  overflow-x: auto;
}
@media screen and (max-width: 960px) {
  .editor-style .wp-block-table {
    width: 90%;
  }
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-table {
    width: 100%;
    margin-block: 4rem;
  }
}
.editor-style .wp-block-table table {
  width: 100%;
  border-collapse: collapse;
  table-layout: fixed;
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-table table {
    min-width: 60rem;
  }
}
.editor-style .wp-block-table thead {
  border-bottom: none;
}
.editor-style .wp-block-table th,
.editor-style .wp-block-table td {
  padding: 1.5rem 2rem;
  border: 1px solid #e5e5e5;
  color: #000;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-table th,
  .editor-style .wp-block-table td {
    padding: 1.3rem 1.5rem;
  }
}
.editor-style .wp-block-table th {
  background: #ededed;
  font-weight: 500;
  text-align: center;
}
.editor-style {
  /*==========================================
   STRIPE TABLE
  ===========================================*/
}
.editor-style .wp-block-table.td-stripe-table {
  width: 76%;
  margin: clamp(4.5rem, 3.125vw, 6rem) auto;
}
@media screen and (max-width: 960px) {
  .editor-style .wp-block-table.td-stripe-table {
    width: 90%;
  }
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-table.td-stripe-table {
    width: 100%;
    margin-block: 4rem;
  }
}
.editor-style .wp-block-table.td-stripe-table table {
  width: 100%;
  border-collapse: collapse;
  border-top: 2px solid #000;
  border-bottom: 2px solid #000;
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-table.td-stripe-table table {
    min-width: 60rem;
  }
}
.editor-style .wp-block-table.td-stripe-table thead {
  border-bottom: 1px solid #000;
}
.editor-style .wp-block-table.td-stripe-table thead th {
  background: transparent;
  font-weight: 500;
}
.editor-style .wp-block-table.td-stripe-table th,
.editor-style .wp-block-table.td-stripe-table td {
  padding: 1.3rem 2rem;
  border: none;
  color: #000;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.1em;
  text-align: center;
}
@media screen and (max-width: 576px) {
  .editor-style .wp-block-table.td-stripe-table th,
  .editor-style .wp-block-table.td-stripe-table td {
    padding: 1.2rem 1.5rem;
  }
}
.editor-style .wp-block-table.td-stripe-table tbody tr:nth-child(even) {
  background: #efefef;
}
.editor-style {
  /*==========================================
   CONTACT BUTTON
  ===========================================*/
}
.editor-style .td-contact-buttons {
  display: flex;
  justify-content: center;
  gap: clamp(2.4rem, 2.5vw, 4.8rem);
  margin: 3em 0;
}
@media screen and (max-width: 576px) {
  .editor-style .td-contact-buttons {
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
  }
}
.editor-style .td-contact-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: min(100%, 360px);
  padding: 1.2rem 2rem;
  border-radius: 100vmax;
  background: #187bb5;
  color: #fff;
  font-size: 1.6rem;
  line-height: 1.5;
  letter-spacing: 0.1em;
  text-align: center;
  text-decoration: none !important;
  transition: background 0.3s, color 0.3s, transform 0.3s;
}
@media screen and (max-width: 576px) {
  .editor-style .td-contact-button {
    width: 100%;
  }
}
@media (hover: hover) {
  .editor-style .td-contact-button:hover:hover {
    background: #000;
    color: #fff;
    text-decoration: none !important;
    transform: translateY(-2px);
  }
}
.editor-style .td-contact-button__label {
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
.editor-style .td-contact-button__text {
  display: block;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@keyframes td-details-open {
  from {
    opacity: 0;
    transform: translateY(-8px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/*==========================================
 JOURNAL / NEWS / VOICE / CASE EDITOR STYLE
===========================================*/
.single-journal .editor-style,
.single-journal-detail .editor-style,
.single-news .editor-style,
.single-news-detail .editor-style,
.single-voice .editor-style,
.single-voice-detail .editor-style,
.single-case .editor-style,
.single-case-detail .editor-style {
  color: #141414;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
.single-journal .editor-style p,
.single-journal .editor-style li,
.single-journal .editor-style td,
.single-journal .editor-style th,
.single-journal .editor-style summary,
.single-journal .editor-style cite,
.single-journal .editor-style figcaption,
.single-journal-detail .editor-style p,
.single-journal-detail .editor-style li,
.single-journal-detail .editor-style td,
.single-journal-detail .editor-style th,
.single-journal-detail .editor-style summary,
.single-journal-detail .editor-style cite,
.single-journal-detail .editor-style figcaption,
.single-news .editor-style p,
.single-news .editor-style li,
.single-news .editor-style td,
.single-news .editor-style th,
.single-news .editor-style summary,
.single-news .editor-style cite,
.single-news .editor-style figcaption,
.single-news-detail .editor-style p,
.single-news-detail .editor-style li,
.single-news-detail .editor-style td,
.single-news-detail .editor-style th,
.single-news-detail .editor-style summary,
.single-news-detail .editor-style cite,
.single-news-detail .editor-style figcaption,
.single-voice .editor-style p,
.single-voice .editor-style li,
.single-voice .editor-style td,
.single-voice .editor-style th,
.single-voice .editor-style summary,
.single-voice .editor-style cite,
.single-voice .editor-style figcaption,
.single-voice-detail .editor-style p,
.single-voice-detail .editor-style li,
.single-voice-detail .editor-style td,
.single-voice-detail .editor-style th,
.single-voice-detail .editor-style summary,
.single-voice-detail .editor-style cite,
.single-voice-detail .editor-style figcaption,
.single-case .editor-style p,
.single-case .editor-style li,
.single-case .editor-style td,
.single-case .editor-style th,
.single-case .editor-style summary,
.single-case .editor-style cite,
.single-case .editor-style figcaption,
.single-case-detail .editor-style p,
.single-case-detail .editor-style li,
.single-case-detail .editor-style td,
.single-case-detail .editor-style th,
.single-case-detail .editor-style summary,
.single-case-detail .editor-style cite,
.single-case-detail .editor-style figcaption {
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
.single-journal .editor-style a,
.single-journal-detail .editor-style a,
.single-news .editor-style a,
.single-news-detail .editor-style a,
.single-voice .editor-style a,
.single-voice-detail .editor-style a,
.single-case .editor-style a,
.single-case-detail .editor-style a {
  color: #79614a;
  font-family: inherit;
}
.single-journal .editor-style mark,
.single-journal-detail .editor-style mark,
.single-news .editor-style mark,
.single-news-detail .editor-style mark,
.single-voice .editor-style mark,
.single-voice-detail .editor-style mark,
.single-case .editor-style mark,
.single-case-detail .editor-style mark {
  padding: 0.1em 0.15em;
  background-color: #ebe4db;
  background-image: none;
  color: inherit;
}
.single-journal .editor-style h2,
.single-journal-detail .editor-style h2,
.single-news .editor-style h2,
.single-news-detail .editor-style h2,
.single-voice .editor-style h2,
.single-voice-detail .editor-style h2,
.single-case .editor-style h2,
.single-case-detail .editor-style h2 {
  margin: clamp(4.8rem, 3.75vw, 7.2rem) 0 clamp(2.4rem, 1.875vw, 3.6rem);
  color: #79614a;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: clamp(2.4rem, 1.6666666667vw, 3.2rem);
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 1200px) {
  .single-journal .editor-style h2,
  .single-journal-detail .editor-style h2,
  .single-news .editor-style h2,
  .single-news-detail .editor-style h2,
  .single-voice .editor-style h2,
  .single-voice-detail .editor-style h2,
  .single-case .editor-style h2,
  .single-case-detail .editor-style h2 {
    margin: 6rem 0 3.5rem;
    font-size: clamp(2.2rem, 2.3333333333vw, 2.8rem);
  }
}
@media screen and (max-width: 960px) {
  .single-journal .editor-style h2,
  .single-journal-detail .editor-style h2,
  .single-news .editor-style h2,
  .single-news-detail .editor-style h2,
  .single-voice .editor-style h2,
  .single-voice-detail .editor-style h2,
  .single-case .editor-style h2,
  .single-case-detail .editor-style h2 {
    margin: 5.5rem 0 3rem;
    font-size: clamp(2.2rem, 2.7083333333vw, 2.6rem);
  }
}
@media screen and (max-width: 576px) {
  .single-journal .editor-style h2,
  .single-journal-detail .editor-style h2,
  .single-news .editor-style h2,
  .single-news-detail .editor-style h2,
  .single-voice .editor-style h2,
  .single-voice-detail .editor-style h2,
  .single-case .editor-style h2,
  .single-case-detail .editor-style h2 {
    margin: 5rem 0 2.5rem;
    font-size: 2.2rem;
  }
}
.single-journal .editor-style h3,
.single-journal-detail .editor-style h3,
.single-news .editor-style h3,
.single-news-detail .editor-style h3,
.single-voice .editor-style h3,
.single-voice-detail .editor-style h3,
.single-case .editor-style h3,
.single-case-detail .editor-style h3 {
  margin: clamp(4rem, 2.9166666667vw, 5.6rem) 0 clamp(2rem, 1.4583333333vw, 2.8rem);
  padding: 0 0 1.4rem 1.8rem;
  border-bottom: 1px solid #e5e5e5;
  color: #000;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: clamp(2rem, 1.3541666667vw, 2.6rem);
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 1200px) {
  .single-journal .editor-style h3,
  .single-journal-detail .editor-style h3,
  .single-news .editor-style h3,
  .single-news-detail .editor-style h3,
  .single-voice .editor-style h3,
  .single-voice-detail .editor-style h3,
  .single-case .editor-style h3,
  .single-case-detail .editor-style h3 {
    margin-top: 5rem;
    font-size: clamp(1.9rem, 2vw, 2.4rem);
  }
}
@media screen and (max-width: 960px) {
  .single-journal .editor-style h3,
  .single-journal-detail .editor-style h3,
  .single-news .editor-style h3,
  .single-news-detail .editor-style h3,
  .single-voice .editor-style h3,
  .single-voice-detail .editor-style h3,
  .single-case .editor-style h3,
  .single-case-detail .editor-style h3 {
    margin: 4.5rem 0 2.5rem;
    font-size: clamp(1.8rem, 2.2916666667vw, 2.2rem);
  }
}
@media screen and (max-width: 576px) {
  .single-journal .editor-style h3,
  .single-journal-detail .editor-style h3,
  .single-news .editor-style h3,
  .single-news-detail .editor-style h3,
  .single-voice .editor-style h3,
  .single-voice-detail .editor-style h3,
  .single-case .editor-style h3,
  .single-case-detail .editor-style h3 {
    margin: 4rem 0 2.5rem;
    padding: 0 0 1.2rem 1.6rem;
    font-size: 2rem;
  }
}
.single-journal .editor-style h3::before,
.single-journal-detail .editor-style h3::before,
.single-news .editor-style h3::before,
.single-news-detail .editor-style h3::before,
.single-voice .editor-style h3::before,
.single-voice-detail .editor-style h3::before,
.single-case .editor-style h3::before,
.single-case-detail .editor-style h3::before {
  top: 0.55em;
  width: 0.7rem;
  height: 0.7rem;
  border-radius: 0;
  background: #b5a993;
}
@media screen and (max-width: 576px) {
  .single-journal .editor-style h3::before,
  .single-journal-detail .editor-style h3::before,
  .single-news .editor-style h3::before,
  .single-news-detail .editor-style h3::before,
  .single-voice .editor-style h3::before,
  .single-voice-detail .editor-style h3::before,
  .single-case .editor-style h3::before,
  .single-case-detail .editor-style h3::before {
    width: 0.6rem;
    height: 0.6rem;
  }
}
.single-journal .editor-style h4,
.single-journal-detail .editor-style h4,
.single-news .editor-style h4,
.single-news-detail .editor-style h4,
.single-voice .editor-style h4,
.single-voice-detail .editor-style h4,
.single-case .editor-style h4,
.single-case-detail .editor-style h4 {
  margin: clamp(3.6rem, 2.5vw, 4.8rem) 0 clamp(1.8rem, 1.25vw, 2.4rem);
  padding: 0.2rem 0 0.2rem 1.6rem;
  border-left: 4px solid #b5a993;
  color: #141414;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: clamp(1.8rem, 1.25vw, 2.4rem);
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 1200px) {
  .single-journal .editor-style h4,
  .single-journal-detail .editor-style h4,
  .single-news .editor-style h4,
  .single-news-detail .editor-style h4,
  .single-voice .editor-style h4,
  .single-voice-detail .editor-style h4,
  .single-case .editor-style h4,
  .single-case-detail .editor-style h4 {
    margin-top: 4.5rem;
    font-size: clamp(1.8rem, 1.8333333333vw, 2.2rem);
  }
}
@media screen and (max-width: 960px) {
  .single-journal .editor-style h4,
  .single-journal-detail .editor-style h4,
  .single-news .editor-style h4,
  .single-news-detail .editor-style h4,
  .single-voice .editor-style h4,
  .single-voice-detail .editor-style h4,
  .single-case .editor-style h4,
  .single-case-detail .editor-style h4 {
    margin: 4rem 0 2.5rem;
    font-size: clamp(1.7rem, 2.0833333333vw, 2rem);
  }
}
@media screen and (max-width: 576px) {
  .single-journal .editor-style h4,
  .single-journal-detail .editor-style h4,
  .single-news .editor-style h4,
  .single-news-detail .editor-style h4,
  .single-voice .editor-style h4,
  .single-voice-detail .editor-style h4,
  .single-case .editor-style h4,
  .single-case-detail .editor-style h4 {
    margin: 3.5rem 0 2.5rem;
    padding-left: 1.4rem;
    border-left-width: 4px;
    font-size: 1.8rem;
  }
}
.single-journal .editor-style ul,
.single-journal-detail .editor-style ul,
.single-news .editor-style ul,
.single-news-detail .editor-style ul,
.single-voice .editor-style ul,
.single-voice-detail .editor-style ul,
.single-case .editor-style ul,
.single-case-detail .editor-style ul {
  background: #ebe4db;
}
.single-journal .editor-style ul li::before,
.single-journal-detail .editor-style ul li::before,
.single-news .editor-style ul li::before,
.single-news-detail .editor-style ul li::before,
.single-voice .editor-style ul li::before,
.single-voice-detail .editor-style ul li::before,
.single-case .editor-style ul li::before,
.single-case-detail .editor-style ul li::before {
  width: 0.6rem;
  height: 0.6rem;
  background: #000;
}
.single-journal .editor-style ol,
.single-journal-detail .editor-style ol,
.single-news .editor-style ol,
.single-news-detail .editor-style ol,
.single-voice .editor-style ol,
.single-voice-detail .editor-style ol,
.single-case .editor-style ol,
.single-case-detail .editor-style ol {
  border-color: #ededed;
}
.single-journal .editor-style ol li::before,
.single-journal-detail .editor-style ol li::before,
.single-news .editor-style ol li::before,
.single-news-detail .editor-style ol li::before,
.single-voice .editor-style ol li::before,
.single-voice-detail .editor-style ol li::before,
.single-case .editor-style ol li::before,
.single-case-detail .editor-style ol li::before {
  background: #b5a993;
}
.single-journal .editor-style,
.single-journal-detail .editor-style,
.single-news .editor-style,
.single-news-detail .editor-style,
.single-voice .editor-style,
.single-voice-detail .editor-style,
.single-case .editor-style,
.single-case-detail .editor-style {
  /* 赤字: 中央配置 / ベージュ＋アクセントバー */
}
.single-journal .editor-style .wp-block-pullquote,
.single-journal-detail .editor-style .wp-block-pullquote,
.single-news .editor-style .wp-block-pullquote,
.single-news-detail .editor-style .wp-block-pullquote,
.single-voice .editor-style .wp-block-pullquote,
.single-voice-detail .editor-style .wp-block-pullquote,
.single-case .editor-style .wp-block-pullquote,
.single-case-detail .editor-style .wp-block-pullquote {
  width: min(100%, 108rem);
  margin-inline: auto;
  background: #ebe4db;
}
.single-journal .editor-style .wp-block-pullquote blockquote,
.single-journal-detail .editor-style .wp-block-pullquote blockquote,
.single-news .editor-style .wp-block-pullquote blockquote,
.single-news-detail .editor-style .wp-block-pullquote blockquote,
.single-voice .editor-style .wp-block-pullquote blockquote,
.single-voice-detail .editor-style .wp-block-pullquote blockquote,
.single-case .editor-style .wp-block-pullquote blockquote,
.single-case-detail .editor-style .wp-block-pullquote blockquote {
  padding: clamp(2.8rem, 2.0833333333vw, 4rem) clamp(2.8rem, 2.0833333333vw, 4rem) clamp(2.4rem, 1.6666666667vw, 3.2rem) clamp(3.2rem, 2.5vw, 4.8rem);
}
.single-journal .editor-style .wp-block-pullquote blockquote::before,
.single-journal-detail .editor-style .wp-block-pullquote blockquote::before,
.single-news .editor-style .wp-block-pullquote blockquote::before,
.single-news-detail .editor-style .wp-block-pullquote blockquote::before,
.single-voice .editor-style .wp-block-pullquote blockquote::before,
.single-voice-detail .editor-style .wp-block-pullquote blockquote::before,
.single-case .editor-style .wp-block-pullquote blockquote::before,
.single-case-detail .editor-style .wp-block-pullquote blockquote::before {
  top: 0;
  bottom: 0;
  left: 0;
  width: 6px;
  background: #b5a993;
}
.single-journal .editor-style .wp-block-pullquote blockquote p,
.single-journal-detail .editor-style .wp-block-pullquote blockquote p,
.single-news .editor-style .wp-block-pullquote blockquote p,
.single-news-detail .editor-style .wp-block-pullquote blockquote p,
.single-voice .editor-style .wp-block-pullquote blockquote p,
.single-voice-detail .editor-style .wp-block-pullquote blockquote p,
.single-case .editor-style .wp-block-pullquote blockquote p,
.single-case-detail .editor-style .wp-block-pullquote blockquote p {
  border-bottom-color: #b5a993;
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
}
.single-journal .editor-style .wp-block-pullquote blockquote cite,
.single-journal-detail .editor-style .wp-block-pullquote blockquote cite,
.single-news .editor-style .wp-block-pullquote blockquote cite,
.single-news-detail .editor-style .wp-block-pullquote blockquote cite,
.single-voice .editor-style .wp-block-pullquote blockquote cite,
.single-voice-detail .editor-style .wp-block-pullquote blockquote cite,
.single-case .editor-style .wp-block-pullquote blockquote cite,
.single-case-detail .editor-style .wp-block-pullquote blockquote cite {
  font-weight: 400;
}
.single-journal .editor-style blockquote:not(.wp-block-pullquote blockquote),
.single-journal-detail .editor-style blockquote:not(.wp-block-pullquote blockquote),
.single-news .editor-style blockquote:not(.wp-block-pullquote blockquote),
.single-news-detail .editor-style blockquote:not(.wp-block-pullquote blockquote),
.single-voice .editor-style blockquote:not(.wp-block-pullquote blockquote),
.single-voice-detail .editor-style blockquote:not(.wp-block-pullquote blockquote),
.single-case .editor-style blockquote:not(.wp-block-pullquote blockquote),
.single-case-detail .editor-style blockquote:not(.wp-block-pullquote blockquote) {
  width: min(100%, 108rem);
  margin-inline: auto;
  background: #ebe4db;
}
.single-journal .editor-style blockquote:not(.wp-block-pullquote blockquote)::before,
.single-journal-detail .editor-style blockquote:not(.wp-block-pullquote blockquote)::before,
.single-news .editor-style blockquote:not(.wp-block-pullquote blockquote)::before,
.single-news-detail .editor-style blockquote:not(.wp-block-pullquote blockquote)::before,
.single-voice .editor-style blockquote:not(.wp-block-pullquote blockquote)::before,
.single-voice-detail .editor-style blockquote:not(.wp-block-pullquote blockquote)::before,
.single-case .editor-style blockquote:not(.wp-block-pullquote blockquote)::before,
.single-case-detail .editor-style blockquote:not(.wp-block-pullquote blockquote)::before {
  background: #b5a993;
}
.single-journal .editor-style .wp-block-details,
.single-journal-detail .editor-style .wp-block-details,
.single-news .editor-style .wp-block-details,
.single-news-detail .editor-style .wp-block-details,
.single-voice .editor-style .wp-block-details,
.single-voice-detail .editor-style .wp-block-details,
.single-case .editor-style .wp-block-details,
.single-case-detail .editor-style .wp-block-details {
  width: min(100%, 108rem);
  margin-inline: auto;
  background: #ebe4db;
}
.single-journal .editor-style .wp-block-details summary,
.single-journal-detail .editor-style .wp-block-details summary,
.single-news .editor-style .wp-block-details summary,
.single-news-detail .editor-style .wp-block-details summary,
.single-voice .editor-style .wp-block-details summary,
.single-voice-detail .editor-style .wp-block-details summary,
.single-case .editor-style .wp-block-details summary,
.single-case-detail .editor-style .wp-block-details summary {
  font-weight: 400;
}
.single-journal .editor-style .wp-block-details summary::before,
.single-journal-detail .editor-style .wp-block-details summary::before,
.single-news .editor-style .wp-block-details summary::before,
.single-news-detail .editor-style .wp-block-details summary::before,
.single-voice .editor-style .wp-block-details summary::before,
.single-voice-detail .editor-style .wp-block-details summary::before,
.single-case .editor-style .wp-block-details summary::before,
.single-case-detail .editor-style .wp-block-details summary::before {
  background: #b5a993;
}
.single-journal .editor-style .wp-block-details summary::after,
.single-journal-detail .editor-style .wp-block-details summary::after,
.single-news .editor-style .wp-block-details summary::after,
.single-news-detail .editor-style .wp-block-details summary::after,
.single-voice .editor-style .wp-block-details summary::after,
.single-voice-detail .editor-style .wp-block-details summary::after,
.single-case .editor-style .wp-block-details summary::after,
.single-case-detail .editor-style .wp-block-details summary::after {
  color: #b5a993;
}
.single-journal .editor-style .wp-block-details.td-details,
.single-journal-detail .editor-style .wp-block-details.td-details,
.single-news .editor-style .wp-block-details.td-details,
.single-news-detail .editor-style .wp-block-details.td-details,
.single-voice .editor-style .wp-block-details.td-details,
.single-voice-detail .editor-style .wp-block-details.td-details,
.single-case .editor-style .wp-block-details.td-details,
.single-case-detail .editor-style .wp-block-details.td-details {
  background: #ebe4db;
}
.single-journal .editor-style .wp-block-buttons .wp-block-button__link,
.single-journal-detail .editor-style .wp-block-buttons .wp-block-button__link,
.single-news .editor-style .wp-block-buttons .wp-block-button__link,
.single-news-detail .editor-style .wp-block-buttons .wp-block-button__link,
.single-voice .editor-style .wp-block-buttons .wp-block-button__link,
.single-voice-detail .editor-style .wp-block-buttons .wp-block-button__link,
.single-case .editor-style .wp-block-buttons .wp-block-button__link,
.single-case-detail .editor-style .wp-block-buttons .wp-block-button__link {
  min-width: 26.4rem;
  min-height: 5.1rem;
  padding: 1.2rem 3.2rem;
  border-color: #b5a993;
  background: #b5a993;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}
@media (hover: hover) {
  .single-journal .editor-style .wp-block-buttons .wp-block-button__link:hover:hover,
  .single-journal-detail .editor-style .wp-block-buttons .wp-block-button__link:hover:hover,
  .single-news .editor-style .wp-block-buttons .wp-block-button__link:hover:hover,
  .single-news-detail .editor-style .wp-block-buttons .wp-block-button__link:hover:hover,
  .single-voice .editor-style .wp-block-buttons .wp-block-button__link:hover:hover,
  .single-voice-detail .editor-style .wp-block-buttons .wp-block-button__link:hover:hover,
  .single-case .editor-style .wp-block-buttons .wp-block-button__link:hover:hover,
  .single-case-detail .editor-style .wp-block-buttons .wp-block-button__link:hover:hover {
    border-color: #79614a;
    background: #79614a;
  }
}
.single-journal .editor-style .wp-block-table,
.single-journal-detail .editor-style .wp-block-table,
.single-news .editor-style .wp-block-table,
.single-news-detail .editor-style .wp-block-table,
.single-voice .editor-style .wp-block-table,
.single-voice-detail .editor-style .wp-block-table,
.single-case .editor-style .wp-block-table,
.single-case-detail .editor-style .wp-block-table {
  width: min(100%, 108rem);
}
.single-journal .editor-style .wp-block-table th,
.single-journal .editor-style .wp-block-table td,
.single-journal-detail .editor-style .wp-block-table th,
.single-journal-detail .editor-style .wp-block-table td,
.single-news .editor-style .wp-block-table th,
.single-news .editor-style .wp-block-table td,
.single-news-detail .editor-style .wp-block-table th,
.single-news-detail .editor-style .wp-block-table td,
.single-voice .editor-style .wp-block-table th,
.single-voice .editor-style .wp-block-table td,
.single-voice-detail .editor-style .wp-block-table th,
.single-voice-detail .editor-style .wp-block-table td,
.single-case .editor-style .wp-block-table th,
.single-case .editor-style .wp-block-table td,
.single-case-detail .editor-style .wp-block-table th,
.single-case-detail .editor-style .wp-block-table td {
  border-color: #ededed;
}
.single-journal .editor-style .wp-block-table th,
.single-journal-detail .editor-style .wp-block-table th,
.single-news .editor-style .wp-block-table th,
.single-news-detail .editor-style .wp-block-table th,
.single-voice .editor-style .wp-block-table th,
.single-voice-detail .editor-style .wp-block-table th,
.single-case .editor-style .wp-block-table th,
.single-case-detail .editor-style .wp-block-table th {
  background: #ebe4db;
  font-size: clamp(1.6rem, 1.0416666667vw, 2rem);
  font-weight: 400;
}
.single-journal .editor-style .wp-block-table.td-stripe-table,
.single-journal-detail .editor-style .wp-block-table.td-stripe-table,
.single-news .editor-style .wp-block-table.td-stripe-table,
.single-news-detail .editor-style .wp-block-table.td-stripe-table,
.single-voice .editor-style .wp-block-table.td-stripe-table,
.single-voice-detail .editor-style .wp-block-table.td-stripe-table,
.single-case .editor-style .wp-block-table.td-stripe-table,
.single-case-detail .editor-style .wp-block-table.td-stripe-table {
  width: min(100%, 108rem);
}
.single-journal .editor-style .wp-block-table.td-stripe-table table,
.single-journal-detail .editor-style .wp-block-table.td-stripe-table table,
.single-news .editor-style .wp-block-table.td-stripe-table table,
.single-news-detail .editor-style .wp-block-table.td-stripe-table table,
.single-voice .editor-style .wp-block-table.td-stripe-table table,
.single-voice-detail .editor-style .wp-block-table.td-stripe-table table,
.single-case .editor-style .wp-block-table.td-stripe-table table,
.single-case-detail .editor-style .wp-block-table.td-stripe-table table {
  border-top-color: #141414;
  border-bottom-color: #141414;
}
.single-journal .editor-style .wp-block-table.td-stripe-table thead,
.single-journal-detail .editor-style .wp-block-table.td-stripe-table thead,
.single-news .editor-style .wp-block-table.td-stripe-table thead,
.single-news-detail .editor-style .wp-block-table.td-stripe-table thead,
.single-voice .editor-style .wp-block-table.td-stripe-table thead,
.single-voice-detail .editor-style .wp-block-table.td-stripe-table thead,
.single-case .editor-style .wp-block-table.td-stripe-table thead,
.single-case-detail .editor-style .wp-block-table.td-stripe-table thead {
  border-bottom-color: #141414;
}
.single-journal .editor-style .wp-block-table.td-stripe-table tbody tr:nth-child(even),
.single-journal-detail .editor-style .wp-block-table.td-stripe-table tbody tr:nth-child(even),
.single-news .editor-style .wp-block-table.td-stripe-table tbody tr:nth-child(even),
.single-news-detail .editor-style .wp-block-table.td-stripe-table tbody tr:nth-child(even),
.single-voice .editor-style .wp-block-table.td-stripe-table tbody tr:nth-child(even),
.single-voice-detail .editor-style .wp-block-table.td-stripe-table tbody tr:nth-child(even),
.single-case .editor-style .wp-block-table.td-stripe-table tbody tr:nth-child(even),
.single-case-detail .editor-style .wp-block-table.td-stripe-table tbody tr:nth-child(even) {
  background: #ebe4db;
}
.single-journal .editor-style .td-contact-button,
.single-journal-detail .editor-style .td-contact-button,
.single-news .editor-style .td-contact-button,
.single-news-detail .editor-style .td-contact-button,
.single-voice .editor-style .td-contact-button,
.single-voice-detail .editor-style .td-contact-button,
.single-case .editor-style .td-contact-button,
.single-case-detail .editor-style .td-contact-button {
  background: #b5a993;
}
@media (hover: hover) {
  .single-journal .editor-style .td-contact-button:hover:hover,
  .single-journal-detail .editor-style .td-contact-button:hover:hover,
  .single-news .editor-style .td-contact-button:hover:hover,
  .single-news-detail .editor-style .td-contact-button:hover:hover,
  .single-voice .editor-style .td-contact-button:hover:hover,
  .single-voice-detail .editor-style .td-contact-button:hover:hover,
  .single-case .editor-style .td-contact-button:hover:hover,
  .single-case-detail .editor-style .td-contact-button:hover:hover {
    background: #79614a;
  }
}

/*==========================================
  format-area
===========================================*/
.format-area {
  font-weight: 500;
  color: #000;
}
.format-area .format-wrap {
  max-width: 100%;
  margin-inline: auto;
}
.format-area .format-img-box {
  max-width: 100%;
  margin-inline: auto;
  width: auto;
}
.format-area .format-heading {
  text-align: left;
  font-size: clamp(2rem, 2.0833333333vw, 4rem);
}
@media screen and (max-width: 960px) {
  .format-area .format-heading {
    font-size: clamp(2rem, 3.5416666667vw, 3.4rem);
  }
}
@media screen and (max-width: 576px) {
  .format-area .format-heading {
    font-size: 2.2rem;
  }
}
.format-area .article-mainimg {
  margin: 60px auto;
  text-align: center;
}
@media screen and (max-width: 960px) {
  .format-area .article-mainimg {
    margin: 50px auto;
  }
}
@media screen and (max-width: 576px) {
  .format-area .article-mainimg {
    margin: 40px auto;
  }
}
.format-area .format-txt {
  font-size: 1.6rem;
  line-height: 2.1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 960px) {
  .format-area .format-txt {
    font-size: 1.6rem;
    line-height: 2;
    letter-spacing: 0.04em;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format-txt {
    font-size: 1.6rem;
    line-height: 1.9;
    letter-spacing: 0.02em;
  }
}
.format-area .format-txt p {
  margin: 0;
}
.format-area .format-txt p:not(:last-child) {
  margin-bottom: 1em;
}
.format-area .format-txt a {
  color: #005bac;
  text-decoration: underline !important;
  text-underline-offset: 0.2em;
  transition: 0.3s ease-in-out;
}
.format-area .format-txt a img {
  transition: 0.3s ease-in-out;
}
@media (hover: hover) {
  .format-area .format-txt a:hover:hover {
    opacity: 0.5;
    text-decoration: underline !important;
  }
  .format-area .format-txt a:hover:hover img {
    opacity: 0.5;
  }
}
.format-area .format-txt strong {
  font-weight: bold;
}
.format-area .format-txt em {
  font-style: italic;
}
.format-area .format-txt mark {
  background: linear-gradient(transparent 55%, #fff100 55%);
  padding-inline: 0.1em;
}
.format-area .format-txt img {
  height: auto;
}
.format-area .format-txt h2 {
  margin: 80px 0 28px;
  padding: 28px 40px;
  background: #333333;
  color: #fff;
  font-family: "Yu Mincho", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "MS PMincho", serif;
  font-size: 2.8rem;
  line-height: 1.6;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media screen and (max-width: 1200px) {
  .format-area .format-txt h2 {
    margin-top: 70px;
    padding: 26px 34px;
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 960px) {
  .format-area .format-txt h2 {
    margin-top: 60px;
    padding: 22px 26px;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format-txt h2 {
    margin-top: 50px;
    padding: 18px 18px;
    font-size: 2rem;
  }
}
.format-area .format-txt h3 {
  margin: 80px 0 28px;
  padding-bottom: 16px;
  border-bottom: 2px solid rgba(0, 0, 0, 0.75);
  color: #000;
  font-family: "Yu Mincho", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "MS PMincho", serif;
  font-size: 2.6rem;
  line-height: 1.6;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media screen and (max-width: 1200px) {
  .format-area .format-txt h3 {
    margin-top: 70px;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 960px) {
  .format-area .format-txt h3 {
    margin-top: 60px;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format-txt h3 {
    margin-top: 50px;
    padding-bottom: 12px;
    font-size: 2rem;
  }
}
.format-area .format-txt h4 {
  position: relative;
  margin: 72px 0 28px;
  padding-left: 24px;
  color: #000;
  font-family: "Yu Mincho", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "MS PMincho", serif;
  font-size: 2.1rem;
  line-height: 1.7;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media screen and (max-width: 1200px) {
  .format-area .format-txt h4 {
    margin-top: 64px;
    font-size: 2rem;
  }
}
@media screen and (max-width: 960px) {
  .format-area .format-txt h4 {
    margin-top: 56px;
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format-txt h4 {
    margin-top: 48px;
    padding-left: 18px;
    font-size: 1.8rem;
  }
}
.format-area .format-txt h4::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.22em;
  width: 6px;
  height: 1.6em;
  background: #333333;
}
@media screen and (max-width: 576px) {
  .format-area .format-txt h4::before {
    width: 5px;
  }
}
.format-area .format-txt blockquote {
  position: relative;
  margin: 60px 0;
  padding: 38px 44px 34px;
  background: #eeeeee;
  border-left: 6px solid #00a5e8;
  color: #000;
  font-size: 1.6rem;
  line-height: 2.1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1200px) {
  .format-area .format-txt blockquote {
    padding: 34px 38px 30px;
  }
}
@media screen and (max-width: 960px) {
  .format-area .format-txt blockquote {
    margin: 50px 0;
    padding: 30px 30px 28px;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format-txt blockquote {
    margin: 40px 0;
    padding: 26px 20px 24px;
    font-size: 1.6rem;
    line-height: 1.9;
  }
}
.format-area .format-txt blockquote p {
  margin: 0;
}
.format-area .format-txt blockquote p:not(:last-child) {
  margin-bottom: 1em;
}
.format-area .format-txt blockquote cite {
  display: block;
  margin-top: 42px;
  padding-top: 18px;
  border-top: 1px solid rgba(0, 0, 0, 0.5);
  font-style: normal;
  font-size: 1.6rem;
  line-height: 1.6;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 576px) {
  .format-area .format-txt blockquote cite {
    margin-top: 28px;
  }
}
.format-area .format-txt .reference,
.format-area .format-txt .cite-box {
  position: relative;
  margin: 40px 0;
  padding: 16px 24px 16px 34px;
  background: #eeeeee;
  border-left: 5px solid #00a5e8;
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 960px) {
  .format-area .format-txt .reference,
  .format-area .format-txt .cite-box {
    padding: 16px 20px 16px 28px;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format-txt .reference,
  .format-area .format-txt .cite-box {
    padding: 14px 16px 14px 24px;
  }
}
.format-area .format-txt details {
  margin: 40px 0;
  background: #eeeeee;
  color: #000;
}
.format-area .format-txt details summary {
  position: relative;
  display: block;
  padding: 22px 60px 22px 28px;
  cursor: pointer;
  font-size: 1.6rem;
  line-height: 1.7;
  letter-spacing: 0.06em;
  list-style: none;
}
@media screen and (max-width: 576px) {
  .format-area .format-txt details summary {
    padding: 18px 48px 18px 18px;
  }
}
.format-area .format-txt details summary::-webkit-details-marker {
  display: none;
}
.format-area .format-txt details summary::before, .format-area .format-txt details summary::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 28px;
  width: 16px;
  height: 1px;
  background: #000;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 576px) {
  .format-area .format-txt details summary::before, .format-area .format-txt details summary::after {
    right: 18px;
  }
}
.format-area .format-txt details summary::after {
  transform: rotate(90deg);
}
.format-area .format-txt details[open] summary::after {
  transform: rotate(0deg);
}
.format-area .format-txt details .details-body {
  padding: 0 28px 28px;
}
@media screen and (max-width: 576px) {
  .format-area .format-txt details .details-body {
    padding: 0 18px 22px;
  }
}
.format-area .format-txt .box-gray,
.format-area .format-txt .point-box {
  margin: 40px 0;
  padding: 28px 32px;
  background: #eeeeee;
  font-size: 1.6rem;
  line-height: 2;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 960px) {
  .format-area .format-txt .box-gray,
  .format-area .format-txt .point-box {
    padding: 24px 26px;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format-txt .box-gray,
  .format-area .format-txt .point-box {
    padding: 22px 18px;
  }
}
.format-area .format-txt .box-gray .box-ttl,
.format-area .format-txt .box-gray .point-ttl,
.format-area .format-txt .point-box .box-ttl,
.format-area .format-txt .point-box .point-ttl {
  margin: 0 0 14px;
  font-size: 1.6rem;
  line-height: 1.7;
  letter-spacing: 0.08em;
  font-weight: 600;
}
.format-area .format-txt ul {
  margin: 40px 0;
  padding: 30px 34px;
  background: #eeeeee;
  list-style: none;
}
@media screen and (max-width: 960px) {
  .format-area .format-txt ul {
    padding: 26px 28px;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format-txt ul {
    padding: 22px 20px;
  }
}
.format-area .format-txt ul li {
  position: relative;
  padding: 0 0 0 1.4em;
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
.format-area .format-txt ul li:not(:last-child) {
  margin-bottom: 0.8em;
}
.format-area .format-txt ul li::before {
  content: "";
  position: absolute;
  top: 0.72em;
  left: 0;
  display: block;
  width: 0.65em;
  height: 0.65em;
  border-radius: 50%;
  background: #005bac;
}
.format-area .format-txt ol {
  margin: 40px 0;
  padding: 28px 34px;
  background: #fff;
  border: 1px solid #dddddd;
  list-style: none;
  counter-reset: format-number;
}
@media screen and (max-width: 960px) {
  .format-area .format-txt ol {
    padding: 26px 28px;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format-txt ol {
    padding: 22px 20px;
  }
}
.format-area .format-txt ol li {
  position: relative;
  padding: 0 0 0 2.4em;
  counter-increment: format-number;
  font-size: 1.6rem;
  line-height: 1.8;
  letter-spacing: 0.06em;
}
.format-area .format-txt ol li:not(:last-child) {
  margin-bottom: 0.8em;
}
.format-area .format-txt ol li::before {
  content: counter(format-number);
  position: absolute;
  left: 0;
  top: 0.1em;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 1.7em;
  height: 1.7em;
  border-radius: 50%;
  background: #005bac;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
}
.format-area .format-txt table {
  width: 100%;
  margin: 46px 0;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 1.6rem;
  line-height: 1.7;
  letter-spacing: 0.06em;
}
@media screen and (max-width: 576px) {
  .format-area .format-txt table {
    display: block;
    overflow-x: auto;
    white-space: nowrap;
    font-size: 1.6rem;
  }
}
.format-area .format-txt table th,
.format-area .format-txt table td {
  padding: 18px 22px;
  border: 1px solid #dddddd;
  text-align: center;
  vertical-align: middle;
}
@media screen and (max-width: 576px) {
  .format-area .format-txt table th,
  .format-area .format-txt table td {
    padding: 14px 18px;
  }
}
.format-area .format-txt table th {
  background: #eeeeee;
  font-weight: 600;
}
.format-area .format-txt table td {
  background: #fff;
}
.format-area .format-txt .table-simple table {
  border-top: 2px solid #000;
  border-bottom: 2px solid #000;
}
.format-area .format-txt .table-simple table th,
.format-area .format-txt .table-simple table td {
  border-left: none;
  border-right: none;
  border-color: rgba(0, 0, 0, 0.65);
}
.format-area .format-txt .table-simple table th {
  background: #fff;
}
.format-area .format-txt .table-simple table tr:nth-child(odd) td {
  background: #eeeeee;
}
.format-area .format-txt .btn-wrap {
  margin: 50px 0;
}
@media screen and (max-width: 576px) {
  .format-area .format-txt .btn-wrap {
    margin: 40px 0;
  }
}
.format-area .format-txt .btn-link,
.format-area .format-txt .format-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-width: 240px;
  min-height: 54px;
  padding: 12px 24px;
  border-radius: 100vmax;
  background: #000;
  color: #fff;
  border: 1px solid #000;
  text-decoration: none !important;
  font-size: 1.6rem;
  line-height: 1.4;
  letter-spacing: 0.08em;
  transition: 0.3s ease-in-out;
}
@media screen and (max-width: 576px) {
  .format-area .format-txt .btn-link,
  .format-area .format-txt .format-btn {
    width: 100%;
    max-width: 280px;
  }
}
.format-area .format-txt .btn-link::after,
.format-area .format-txt .format-btn::after {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  flex: 0 0 auto;
}
@media (hover: hover) {
  .format-area .format-txt .btn-link:hover:hover,
  .format-area .format-txt .format-btn:hover:hover {
    background: #fff;
    color: #000;
    opacity: 1;
  }
}
.format-area .format-img {
  font-size: 0;
  text-align: center;
  position: relative;
}
.format-area .format-img img {
  object-fit: cover;
  width: 100%;
  height: auto;
  max-height: max-content;
}
.format-area .img-title {
  font-size: 2rem;
  text-align: left;
  padding-bottom: 10px;
  margin-block: 10px;
}
.format-area .img-caption {
  font-size: 1.6rem;
  line-height: 2;
  margin-top: 10px;
  text-align: justify;
}
.format-area .format-row {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 576px) {
  .format-area .format-row {
    display: block;
  }
}
.format-area .format01 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format01 {
    margin: 40px auto;
  }
}
.format-area .format02 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format02 {
    margin: 40px auto;
  }
}
.format-area .format03 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format03 {
    margin: 40px auto;
  }
}
.format-area .format04 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format04 {
    margin: 40px auto;
  }
}
.format-area .format05 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format05 {
    margin: 40px auto;
  }
}
.format-area .format06 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format06 {
    margin: 40px auto;
  }
}
.format-area .format07 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format07 {
    margin: 40px auto;
  }
}
.format-area .format08 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format08 {
    margin: 40px auto;
  }
}
.format-area .format09 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format09 {
    margin: 40px auto;
  }
}
.format-area .format10 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format10 {
    margin: 40px auto;
  }
}
.format-area .format20 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format20 {
    margin: 40px auto;
  }
}
.format-area .format30 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format30 {
    margin: 40px auto;
  }
}
.format-area .format40 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format40 {
    margin: 40px auto;
  }
}
.format-area .format50 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format50 {
    margin: 40px auto;
  }
}
.format-area .format60 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format60 {
    margin: 40px auto;
  }
}
.format-area .format70 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format70 {
    margin: 40px auto;
  }
}
.format-area .format80 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format80 {
    margin: 40px auto;
  }
}
.format-area .format90 {
  margin: 60px auto;
}
@media screen and (max-width: 576px) {
  .format-area .format90 {
    margin: 40px auto;
  }
}
.format-area .format01 .ttl-lrg {
  margin: 80px 0 28px;
  padding: 28px 40px;
  background: #333333;
  color: #fff;
  font-family: "Yu Mincho", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "MS PMincho", serif;
  font-size: 2.8rem;
  line-height: 1.6;
  letter-spacing: 0.08em;
  font-weight: 400;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .format-area .format01 .ttl-lrg {
    margin-top: 70px;
    padding: 26px 34px;
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 960px) {
  .format-area .format01 .ttl-lrg {
    margin-top: 60px;
    padding: 22px 26px;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format01 .ttl-lrg {
    margin-top: 50px;
    padding: 18px 18px;
    font-size: 2rem;
  }
}
.format-area .format01 .ttl-lrg.border_none::after {
  content: none;
}
.format-area .format01 .ttl-lrg::after {
  content: none;
}
.format-area .format01 .format-heading {
  text-align: left;
}
@media screen and (max-width: 960px) {
  .format-area .format01 .format-heading {
    font-size: clamp(2rem, 3.125vw, 3rem);
  }
}
.format-area .format02 {
  margin-bottom: 100px;
}
@media screen and (max-width: 960px) {
  .format-area .format02 {
    margin-bottom: 60px;
  }
}
.format-area .format02 .ttl-mid {
  margin: 80px 0 28px;
  padding-bottom: 16px;
  border-bottom: 2px solid rgba(0, 0, 0, 0.75);
  color: #000;
  font-family: "Yu Mincho", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "MS PMincho", serif;
  font-size: 2.6rem;
  line-height: 1.6;
  letter-spacing: 0.08em;
  font-weight: 400;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .format-area .format02 .ttl-mid {
    margin-top: 70px;
    font-size: 2.4rem;
  }
}
@media screen and (max-width: 960px) {
  .format-area .format02 .ttl-mid {
    margin-top: 60px;
    font-size: 2.2rem;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format02 .ttl-mid {
    margin-top: 50px;
    padding-bottom: 12px;
    font-size: 2rem;
  }
}
.format-area .format02 .ttl-mid.before_none::before {
  content: none;
}
.format-area .format02 .ttl-mid::before {
  content: none;
}
.format-area .format03 .ttl-sml {
  position: relative;
  margin: 72px 0 28px;
  padding-left: 24px;
  color: #000;
  font-family: "Yu Mincho", "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "MS PMincho", serif;
  font-size: 2.1rem;
  line-height: 1.7;
  letter-spacing: 0.08em;
  font-weight: 400;
}
@media screen and (max-width: 1200px) {
  .format-area .format03 .ttl-sml {
    margin-top: 64px;
    font-size: 2rem;
  }
}
@media screen and (max-width: 960px) {
  .format-area .format03 .ttl-sml {
    margin-top: 56px;
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format03 .ttl-sml {
    margin-top: 48px;
    padding-left: 18px;
    font-size: 1.8rem;
  }
}
.format-area .format03 .ttl-sml::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.22em;
  width: 6px;
  height: 1.6em;
  background: #333333;
}
@media screen and (max-width: 576px) {
  .format-area .format03 .ttl-sml::before {
    width: 5px;
  }
}
.format-area .format05 .format-img img {
  width: auto;
  max-width: 100%;
  max-height: max-content;
  object-fit: contain;
  aspect-ratio: auto;
}
.format-area .format06 .format-img img {
  aspect-ratio: 3/2;
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: center;
}
.format-area .format07 .format-img img {
  aspect-ratio: 1;
  width: 100%;
  height: auto;
  object-fit: cover;
  object-position: center;
  max-height: 100%;
}
@media screen and (min-width: 577px) {
  .format-area .format09 .format-img {
    width: 48%;
  }
}
.format-area .format09 .format-img img {
  object-fit: cover;
  max-height: max-content;
}
@media screen and (max-width: 576px) {
  .format-area .format09 .format-txt {
    margin-top: 40px;
  }
}
@media screen and (min-width: 577px) {
  .format-area .format10 .format-img {
    width: 48%;
  }
}
.format-area .format10 .format-img img {
  object-fit: cover;
  max-height: max-content;
}
@media screen and (max-width: 576px) {
  .format-area .format10 .format-txt {
    margin-top: 40px;
  }
}
.format-area .format11 .format-movie {
  width: 100%;
}
.format-area .format11 .format-movie iframe {
  width: 100%;
  height: auto;
  width: 100%;
  object-fit: cover;
  aspect-ratio: 1.772972973;
}
@media screen and (max-width: 767px) {
  .format-area .format11 .format-movie iframe {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 1.6666666667;
  }
}
@media screen and (max-width: 576px) {
  .format-area .format11 .format-movie iframe {
    width: 100%;
    object-fit: cover;
    aspect-ratio: 1.1111111111;
  }
}

/*==========================================
  format-area PC
===========================================*/
@media screen and (min-width: 768px) {
  .format-area .format-rowPC {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
  }
  .format-area .format-rowPC .head,
  .format-area .format-rowPC .body {
    width: 48%;
  }
  .format-area .format04 .format-txt {
    width: 48%;
  }
  .format-area .format04 .format-txt-wrap {
    position: relative;
    overflow: hidden;
    padding-top: 68.78%;
  }
  .format-area .format04 .format-txt-wrap img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    height: 100%;
    width: auto;
    max-width: inherit;
  }
  .format-area .format06 .format-img {
    width: 48%;
  }
  .format-area .format06 .format-img-wrap {
    position: relative;
    overflow: hidden;
    padding-top: 68.78%;
  }
  .format-area .format06 .format-img-wrap img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    height: 100%;
    width: auto;
    max-width: inherit;
  }
  .format-area .format07 .format-img {
    width: 48%;
  }
  .format-area .format07 .format-img-wrap {
    position: relative;
    overflow: hidden;
    padding-top: 68.78%;
  }
  .format-area .format07 .format-img-wrap img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    height: 100%;
    width: auto;
    max-width: inherit;
  }
  .format-area .format08 .format-img {
    width: 31.3333333333%;
    margin: 0 1%;
    position: relative;
    overflow: hidden;
    padding-top: 22.2%;
  }
  .format-area .format08 .format-img img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    height: 100%;
    width: auto;
    max-width: inherit;
  }
  .format-area .format08 .format-img {
    padding-top: 0%;
  }
  .format-area .format08 .format-img img {
    position: relative;
    top: 0;
    left: 0;
    transform: translate(0%, 0%);
    margin: auto;
    height: auto;
    width: auto;
    max-width: 100%;
    aspect-ratio: 3/2;
    object-fit: cover;
    object-position: center;
  }
  .format-area .format11 .format-img {
    width: 31.3333333333%;
    margin: 0 1%;
    position: relative;
    overflow: hidden;
    padding-top: 22.2%;
  }
  .format-area .format11 .format-img img {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    height: 100%;
    width: auto;
    max-width: inherit;
  }
  .format-area .format11 .format-img {
    padding-top: 0%;
    margin-bottom: 60px;
  }
  .format-area .format11 .format-img img {
    position: relative;
    top: 0;
    left: 0;
    transform: translate(0%, 0%);
    margin: auto;
    height: auto;
    width: auto;
    max-width: 100%;
    aspect-ratio: 2/3;
    object-fit: cover;
    object-position: center;
  }
  .format-area .format10 .format-rowPC {
    flex-direction: row-reverse;
  }
}
/*==========================================
  format-area tablet
===========================================*/
@media screen and (max-width: 767px) {
  .format-area .format-rowPC .head {
    margin-bottom: 25px;
  }
  .format-area .format01 .ttl-lrg {
    font-size: 2.2rem;
  }
  .format-area .format02 .ttl-mid {
    font-size: 2rem;
  }
  .format-area .format04 .format-row {
    display: block;
    margin-bottom: 60px;
  }
  .format-area .format04 .format-txt {
    width: 100%;
  }
  .format-area .format04 .format-txt:not(:first-child) {
    margin-top: 60px;
  }
  .format-area .format06 .format-row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 60px;
  }
  .format-area .format06 .format-img {
    width: 100%;
  }
  .format-area .format06 .format-img:not(:first-child) {
    margin-top: 60px;
  }
  .format-area .format07 .format-row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 60px;
  }
  .format-area .format07 .format-img {
    width: 100%;
  }
  .format-area .format07 .format-img:not(:first-child) {
    margin-top: 60px;
  }
  .format-area .format08 .format-row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 60px;
  }
  .format-area .format08 .format-img img {
    aspect-ratio: 3/2;
    object-fit: cover;
    object-position: center;
  }
  .format-area .format08 .format-img:not(:first-child) {
    margin-top: 60px;
  }
  .format-area .format08 .format-img:nth-of-type(1), .format-area .format08 .format-img:nth-of-type(2), .format-area .format08 .format-img:nth-of-type(3) {
    width: 100%;
  }
  .format-area .format11 .format-row {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 40px;
  }
  .format-area .format11 .format-img img {
    aspect-ratio: 2/3;
    object-fit: cover;
    object-position: center;
  }
  .format-area .format11 .format-img:not(:first-child) {
    margin-top: 60px;
  }
  .format-area .format11 .format-img:nth-of-type(1), .format-area .format11 .format-img:nth-of-type(2), .format-area .format11 .format-img:nth-of-type(3) {
    width: 100%;
  }
}
/*==========================================
  format-area sp
===========================================*/
@media screen and (max-width: 576px) {
  .format-area .wrapW-P,
  .format-area .wrapW,
  .format-area .wrap-inner {
    width: 100%;
    padding: 0;
  }
  .format-area .wrapW-P p,
  .format-area .wrapW p,
  .format-area .wrap-inner p {
    padding: 0 5vw;
  }
  .format-area .format01 .ttl-lrg {
    font-size: 2rem;
  }
  .format-area .format02 .ttl-mid {
    font-size: 1.9rem;
  }
  .format-area .format03 .ttl-sml {
    font-size: 1.8rem;
  }
  .format-area .format06 .format-row {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    margin-bottom: 60px;
  }
  .format-area .format06 .format-img {
    width: 100%;
  }
  .format-area .format06 .format-img:not(:first-child) {
    margin-top: 60px;
  }
}
/* FAQアクセント（Illustrator計測色。CONTACT共通の #b5a68b とは別） */
/*==========================================
 archive FAQ
===========================================*/
.archive-faq {
  background: #fff;
  color: #1c1c1c;
  overflow: visible;
  padding-top: 10rem;
  padding-bottom: clamp(10rem, 6.25vw, 12rem);
}
@media screen and (max-width: 1200px) {
  .archive-faq {
    padding-top: 8rem;
  }
}
@media screen and (max-width: 960px) {
  .archive-faq {
    padding-top: 8rem;
    padding-bottom: clamp(8rem, 10.4166666667vw, 10rem);
  }
}
.archive-faq .sec-faq {
  background: #fff;
  color: #1c1c1c;
  overflow: visible;
  padding-bottom: clamp(10rem, 7.8125vw, 15rem);
}
@media screen and (max-width: 960px) {
  .archive-faq .sec-faq {
    padding-bottom: clamp(8rem, 10.4166666667vw, 10rem);
  }
}
.archive-faq .sec-faq .cts-wrap,
.archive-faq .sec-faq .cts-body,
.archive-faq .sec-faq .faq-layout {
  overflow: visible;
}
.archive-faq .sec-faq .cts-wrap {
  width: 100%;
}
.archive-faq .sec-faq .breadcrumbs_area {
  margin: 0 0 clamp(12rem, 9.375vw, 20rem);
  font-size: 1.6rem;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 960px) {
  .archive-faq .sec-faq .breadcrumbs_area {
    margin-bottom: clamp(6rem, 8.3333333333vw, 8rem);
  }
}
.archive-faq .sec-faq .cts-body {
  width: 100%;
}
.archive-faq .sec-faq .faq-layout {
  display: grid;
  grid-template-columns: 340px minmax(0, 1fr);
  gap: 96px;
  align-items: flex-start;
}
@media screen and (max-width: 1200px) {
  .archive-faq .sec-faq .faq-layout {
    grid-template-columns: 280px minmax(0, 1fr);
    gap: 50px;
  }
}
@media screen and (max-width: 960px) {
  .archive-faq .sec-faq .faq-layout {
    display: flex;
    flex-direction: column;
    gap: 50px;
  }
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-layout {
    gap: 40px;
  }
}
.archive-faq .sec-faq .faq-side {
  position: sticky;
  top: 12rem;
  align-self: start;
  width: 100%;
  min-width: 0;
}
@media screen and (max-width: 1200px) {
  .archive-faq .sec-faq .faq-side {
    top: 10rem;
  }
}
@media screen and (max-width: 960px) {
  .archive-faq .sec-faq .faq-side {
    position: static;
    top: auto;
  }
}
.archive-faq .sec-faq .faq-side-inner {
  width: 100%;
}
.archive-faq .sec-faq .cts-ttl-wrap {
  width: 100%;
  margin-bottom: clamp(4rem, 3.6458333333vw, 7rem);
  text-align: left;
}
@media screen and (max-width: 960px) {
  .archive-faq .sec-faq .cts-ttl-wrap {
    margin-bottom: 36px;
  }
}
.archive-faq .sec-faq .cts-ttl {
  margin: 0;
  color: #000;
  font-size: clamp(5.6rem, 4.1666666667vw, 8rem);
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.08em;
}
@media screen and (max-width: 1200px) {
  .archive-faq .sec-faq .cts-ttl {
    font-size: clamp(5.2rem, 5.6666666667vw, 6.8rem);
  }
}
@media screen and (max-width: 960px) {
  .archive-faq .sec-faq .cts-ttl {
    font-size: clamp(4.8rem, 6.25vw, 6rem);
  }
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .cts-ttl {
    font-size: clamp(4rem, 9.0277777778vw, 5.2rem);
  }
}
.archive-faq .sec-faq .cts-subttl {
  position: relative;
  display: inline-block;
  margin: 18px 0 0;
  padding-left: 2.4em;
  color: #000;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.12em;
}
.archive-faq .sec-faq .cts-subttl::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 1.6em;
  height: 1px;
  background: #000;
  transform: translateY(-50%);
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .cts-subttl {
    margin-top: 14px;
    font-size: 1.6rem;
  }
}
.archive-faq .sec-faq .faq-category {
  width: 100%;
}
.archive-faq .sec-faq .faq-category-title {
  margin: 0 0 18px;
  padding-bottom: 12px;
  border-bottom: 1px solid #000;
  color: #000;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-category-title {
    font-size: 1.7rem;
  }
}
.archive-faq .sec-faq .faq-category-list {
  display: flex;
  flex-direction: column;
  gap: 14px;
  margin: 0;
  padding: 0 0 0 1.8rem;
  list-style: none;
}
@media screen and (max-width: 960px) {
  .archive-faq .sec-faq .faq-category-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 12px 24px;
  }
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-category-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
  }
}
.archive-faq .sec-faq .faq-category-item {
  margin: 0;
  padding: 0;
}
.archive-faq .sec-faq .faq-category-item.is-muted .faq-category-link {
  color: #bbb;
}
.archive-faq .sec-faq .faq-category-item.is-current .faq-category-link, .archive-faq .sec-faq .faq-category-item.is-active .faq-category-link {
  color: #000;
}
.archive-faq .sec-faq .faq-category-item-all {
  margin-top: 3rem;
}
@media screen and (max-width: 960px) {
  .archive-faq .sec-faq .faq-category-item-all {
    margin-top: 0;
  }
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-category-item-all {
    margin-top: 2rem;
  }
}
.archive-faq .sec-faq .faq-category-link {
  display: block;
  width: 100%;
  margin: 0;
  padding: 0;
  border: none;
  background: transparent;
  color: #000;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.1em;
  text-align: left;
  cursor: pointer;
  transition: color 0.3s, opacity 0.3s;
}
@media (hover: hover) {
  .archive-faq .sec-faq .faq-category-link:hover:hover {
    opacity: 0.65;
  }
}
.archive-faq .sec-faq .faq-main {
  width: 100%;
  min-width: 0;
}
.archive-faq .sec-faq .faq-list {
  width: 100%;
  border-top: 1px solid #cfcfcf;
}
.archive-faq .sec-faq .faq-item {
  width: 100%;
  border-bottom: 1px solid #cfcfcf;
}
.archive-faq .sec-faq .faq-item.is-hidden {
  display: none;
}
.archive-faq .sec-faq .faq-item.is-open .faq-question-arrow {
  transform: rotate(180deg);
}
.archive-faq .sec-faq .faq-question {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 40px;
  gap: 28px;
  align-items: center;
  width: 100%;
  min-height: 126px;
  margin: 0;
  padding: 35px;
  border: none;
  background: transparent;
  color: #000;
  text-align: left;
  cursor: pointer;
}
@media screen and (max-width: 1200px) {
  .archive-faq .sec-faq .faq-question {
    grid-template-columns: 44px minmax(0, 1fr) 36px;
    gap: 18px;
    min-height: 118px;
    padding: 35px 24px;
  }
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-question {
    grid-template-columns: 40px minmax(0, 1fr) 34px;
    gap: 14px;
    min-height: 108px;
    padding: 35px 16px;
  }
}
@media (hover: hover) {
  .archive-faq .sec-faq .faq-question:hover:hover .faq-question-text {
    opacity: 0.65;
  }
}
.archive-faq .sec-faq .faq-question-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: #b8a88f;
  color: #000;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 1.7rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1200px) {
  .archive-faq .sec-faq .faq-question-mark {
    width: 44px;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-question-mark {
    width: 40px;
  }
}
.archive-faq .sec-faq .faq-question-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
  min-width: 0;
}
.archive-faq .sec-faq .faq-question-category {
  display: block;
  overflow: hidden;
  max-width: 880px;
  color: #b1b1b1;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: 0.1em;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.archive-faq .sec-faq .faq-question-text {
  display: block;
  overflow: hidden;
  max-width: 880px;
  color: #000;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1.6;
  letter-spacing: 0.1em;
  text-overflow: ellipsis;
  white-space: nowrap;
  transition: opacity 0.3s;
}
@media screen and (max-width: 960px) {
  .archive-faq .sec-faq .faq-question-text {
    font-size: 1.7rem;
  }
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-question-text {
    font-size: 1.6rem;
    line-height: 1.7;
  }
}
.archive-faq .sec-faq .faq-question-toggle {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: end;
  box-sizing: border-box;
  width: 40px;
  height: 40px;
  padding: 0;
  border: 1px solid #000;
  border-radius: 50%;
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-question-toggle {
    width: 34px;
    height: 34px;
  }
}
.archive-faq .sec-faq .faq-question-arrow {
  display: block;
  width: 0.8rem;
  height: auto;
  transition: transform 0.3s;
}
.archive-faq .sec-faq .faq-answer {
  display: none;
  width: 100%;
  background: #f7f7f7;
}
.archive-faq .sec-faq .faq-answer-inner {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr);
  gap: 28px;
  align-items: flex-start;
  padding: 35px;
}
@media screen and (max-width: 1200px) {
  .archive-faq .sec-faq .faq-answer-inner {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 18px;
    padding: 35px 24px;
  }
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-answer-inner {
    grid-template-columns: 40px minmax(0, 1fr);
    gap: 14px;
    padding: 35px 16px;
  }
}
.archive-faq .sec-faq .faq-answer-mark {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: #24211e;
  color: #fff;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 1.7rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 1200px) {
  .archive-faq .sec-faq .faq-answer-mark {
    width: 44px;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-answer-mark {
    width: 40px;
  }
}
.archive-faq .sec-faq .faq-answer-text {
  color: #000;
  font-family: "Noto Serif JP", "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
  font-size: 1.7rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 576px) {
  .archive-faq .sec-faq .faq-answer-text {
    font-size: 1.6rem;
    line-height: 1.9;
  }
}
.archive-faq .sec-faq .faq-answer-text p {
  margin: 0;
}
.archive-faq .sec-faq .faq-answer-text p + p {
  margin-top: 1.2em;
}
.archive-faq .sec-faq .faq-answer-text a {
  color: #187bb5;
  text-decoration: underline;
}
@media (hover: hover) {
  .archive-faq .sec-faq .faq-answer-text a:hover:hover {
    text-decoration: none;
  }
}
.archive-faq .sec-faq .pager {
  width: 100%;
}
.archive-faq .sec-relaqua-contact {
  background: #b8a88f;
}
.archive-faq .sec-relaqua-contact .cts-head {
  margin-bottom: 5.5rem;
}
.archive-faq .sec-relaqua-contact .cts-ttl {
  color: #24211e;
  letter-spacing: 0.18em;
}
.archive-faq .sec-relaqua-contact .item-txt {
  color: #fff;
}

/*# sourceMappingURL=faq.css.map */
