@import url('../reset.css?ver=1.0.3');
@import url('../variables.css?ver=1.0.3');
/* components */
@import url('../components/adjuster.css?ver=1.0.3');
@import url('../components/breadcrumbs.css?ver=1.0.3');
@import url('../components/contact-form7.css?ver=1.0.3');
@import url('../components/header-box.css?ver=1.0.3');
@import url('../components/post-list.css?ver=1.0.3');
@import url('../components/table-of-contents.css?ver=1.0.3');
@import url('../components/text.css?ver=1.0.3');
/* layouts */
@import url('../layouts/footer.css?ver=1.0.3');
@import url('../layouts/simple-header.css?ver=1.0.3');
@import url('../layouts/single-column.css?ver=1.0.3');

.page-singular__content-header {
  margin-bottom: 28px;
}

.page-singular__content-title {
  margin-bottom: 30px;
  font-weight: 600;
  font-size: var(--heading-large);
}

.page-singular__content-author {
  display: flex;
  align-items: center;
  gap: 10px;
}

/* block-libraryを踏襲した本文スタイル */
.page-singular__content-body {
  margin-bottom: 40px;

  [class^="wp-block"],
  div, ul, ol,
  h1,h2, h3, h4, p,
  figure, blockquote, form, fieldset, legend {
    margin-bottom: 28px;

    &:last-child {
      margin-bottom: 0;
    }

    [class^="wp-block"] {
      margin-bottom: 0;
    }
  }

  p {
    font-size: var(--text-medium);
  }

  h1 {
    font-weight: 600;
    font-size: var(--heading-large);
  }

  h2 {
    font-weight: 600;
    font-size: var(--heading-medium);
  }

  h3 {
    font-weight: 600;
    font-size: var(--heading-small);
  }

  h4 {
    font-weight: 600;
    font-size: var(--heading-xsmall);
  }

  ul {
    margin-left: 20px;
    list-style-type: disc;
  }

  ol {
    margin-left: 20px;
    list-style-type: decimal;
  }

  a {
    color: #2271b1;
    text-decoration: underline;
  }

  b, strong {
    font-weight: 600;
  }

  i, em, cite {
    font-style: italic;
  }

  .wp-block-image {
    overflow: hidden;
    border-radius: var(--border-radius-secondary);
  }

  /* オリジナル登録パターン */
  .facility-info {
    background-color: var(--background-secondary);
    padding: 16px;
    border-radius: var(--border-radius-secondary);

    .facility-info__title {
      margin-bottom: 10px;
      font-weight: 600;
      font-size: var(--text-medium);
    }

    li {
      margin-bottom: 5px;
      font-size: var(--text-small);

      &:last-child {
        margin-bottom: 0;
      }
    }
  }
}

/* 関連記事 */
.page-singular__related-posts {
  margin-top: 40px;
  padding-top: 40px;
  border-top: 1px solid var(--border-primary);
}

.page-singular__related-posts-list--ranking-reset {
  counter-reset: ranking;
}

/* コメントフォーム */
.page-singular__comments {
  margin-top: 40px;
  border-top: 1px solid var(--border-primary);

  .comments-area {
    margin-top: 40px;
  }

  .comments-title {
    margin-bottom: 20px;
  }

  .comment-list {
    margin: 0;
    padding: 0;
    list-style: none;
  }

  .comment {
    margin-bottom: 30px;
    padding: 16px;
    background-color: var(--background-secondary);
    border-radius: var(--border-radius-secondary);

    &:last-child {
      margin-bottom: 0;
    }
  }

  .comment-author {
    display: flex;
    align-items: center;
    margin-bottom: 10px;

    img {
      border-radius: 50%;
      margin-right: 10px;
    }
  }

  .comment-metadata {
    font-size: var(--text-small);
    color: var(--text-gray);
    margin-bottom: 15px;
  }

  .comment-content {
    margin-bottom: 10px;
  }

  .reply {
    text-align: right;
  }

  .comment-respond {
    margin-top: 40px;

  }

  [class^="comment-form-"] {
    margin-top: 20px;

    label {
      display: block;
      margin-bottom: 5px;
      font-weight: bold;
    }

    input:not([type="checkbox"]),
    textarea {
      width: 100%;
      padding: 10px;
      border: 1px solid var(--border-primary);
      border-radius: var(--border-radius-secondary);
    }
  }

  .comment-form-cookies-consent,
  .form-privacy-policy {
    margin: 20px 0;
    display: flex;
    align-items: flex-start;
    gap: 8px;

    input[type="checkbox"] {
      margin-top: 4px;
    }

    label {
      font-size: var(--text-small);
      color: var(--text-gray);
      line-height: 1.5;

      &:hover {
        cursor: pointer;
      }

      a {
        color: var(--text-black);
        text-decoration: underline;

        &:hover {
          opacity: 0.7;
        }
      }
    }
  }

  .form-submit {
    margin-top: 20px;

    input[type="submit"] {
      background-color: var(--text-black);
      color: var(--background-primary);
      font-weight: 600;
      border: none;
      padding: 10px 20px;
      border-radius: var(--border-radius-secondary);
      cursor: pointer;
    }
  }
}
