@charset "UTF-8";

.single-ulin-knowledge .p-page-ttl::before,
.post-type-archive-ulin-knowledge .p-page-ttl::before,
.tax-ulin-knowledge_category .p-page-ttl::before {
  background-color: #e9d4c0;
}

footer .link { justify-content: flex-start;}
.inner1000 { max-width: 1000px; width: calc(100% - 40px); margin: 0 auto;}

.archive-ulin-knowledge {
  padding: 80px 0;
}

.ulin-knowledge-list {
  display: flex;
  flex-wrap: wrap; margin-left: -40px; margin-bottom: -40px;
}

.ulin-knowledge-item {
  width: calc(25% - 40px); margin-left: 40px; margin-bottom: 40px;
}
@media screen and (max-width: 1080px) {
  .ulin-knowledge-list { margin-left: -20px; margin-bottom: -20px; }
  .ulin-knowledge-item { width: calc(25% - 20px); margin-left: 20px; margin-bottom: 20px; }
}
@media screen and (max-width: 760px) {
  .archive-ulin-knowledge { padding: 40px 0; }
  .ulin-knowledge-item { width: calc(50% - 20px); }
}
.ulin-knowledge-link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.ulin-knowledge-thumb {
  overflow: hidden; /* 枠外に出さない */
}

.ulin-knowledge-thumb img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.4s ease;
  transform: scale(1.01);
}

.ulin-knowledge-item:hover .ulin-knowledge-thumb img {
  transform: scale(1.08); /* 拡大率はお好みで */
}

.ulin-knowledge-date {
  display: block;
  margin-top: 10px;
  font-size: 13px;
  color: #555;
}

.ulin-knowledge-category-container {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  margin: 12px 0;
}

.ulin-knowledge-category-name {
  display: inline-block;
  color: #4b0c00;
  border: 1px solid #4b0c00;
  padding: 5px; font-size: 0.75rem;
  border-radius: 4px;
  line-height: 1; transition: 0.4s;
}

.ulin-knowledge-link:hover .ulin-knowledge-category-name {
  background-color: #4b0c00; color: #fff;
}

.ulin-knowledge-title {
  margin: 6px 0;
  font-size: 1.1rem; font-weight: bold;
  line-height: 1.5;
}

.ulin-knowledge-excerpt {
  font-size: 14px;
  line-height: 1.6;

  /* 2行まで表示して「…」 */
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}






/* ページネーション全体 */
.pagination,
.nav-links {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin-top: 40px;
  font-size: 14px;
}

@media screen and (max-width: 760px) {
.pagination,
.nav-links {
  margin-top: 20px;
}
}


/* 各リンク共通 */
.page-numbers {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border: 1px solid #4b0c00;
  color: #4b0c00;
  text-decoration: none;
  background: #fff;
  transition: all 0.3s ease;
}

/* hover */
.page-numbers:hover {
  background: #4b0c00;
  color: #fff;
}

/* 現在のページ */
.page-numbers.current {
  background: #4b0c00;
  color: #fff;
  pointer-events: none;
}

/* 前へ・次へ */
.page-numbers.prev,
.page-numbers.next {
  padding: 0 8px;
}

/* … */
.page-numbers.dots {
  border: none;
  background: none;
  color: #4b0c00;
}




/* ===== ulin-knowledge_single ===== */

.ulin-knowledge_single-img { margin-bottom:30px; }

.ulin-knowledge_single-content ul { padding: 20px; background: #faf8f7; }
.ulin-knowledge_single-content ul li { padding-left: 1em; position: relative;}
.ulin-knowledge_single-content ul li:not(#toc_container li)::after { content: "・"; position: absolute; top: 0; left: 0}
.ulin-knowledge_single-content table { width: 100%; border-collapse: collapse; border-spacing: 0; background: #faf8f7; }
.ulin-knowledge_single-content table:not(:last-child),
.ulin-knowledge_single-content ul:not(:last-child),
.ulin-knowledge_single-content img:not(:last-child) { margin-bottom: 20px;}
.ulin-knowledge_single-content table th,
.ulin-knowledge_single-content table td { border: 1px solid #d4c6c3; padding: 10px }
.ulin-knowledge_single-content table th { padding: 5px }

#toc_container { width: 100% !important; padding: 20px !important; box-sizing: border-box; background:#faf8f7; border-color: #d4c6c3; }
.toc_title { color: #4b0c00; }
.toc_list > li { font-size: 14px !important; font-weight: 500; }
.toc_list > li > a { text-decoration: underline !important; color: #4b0c00;}
.toc_list > li > a:hover { text-decoration: none !important;}
.toc_list > li > ul { margin-bottom: 0.5em !important;}
.toc_list > li > ul > li { font-size: 13px !important; }
.toc_list > li > ul > li > a { color:#3d2b26; }


#ulin-knowledge_single-article { padding-top: 150px; margin-top: -150px; }

/* 日付 */
.ulin-knowledge_single-date {
  display: block;
  font-size: 14px;
  color: #777;
  margin-bottom: 30px;
}

/* タイトル */
.ulin-knowledge_single-title {
  font-size: 1.8rem; font-weight: bold;
  line-height: 1.4;
  margin-bottom: 10px;
  color: #000;
}

/* 本文 */
.ulin-knowledge_single-content {
  line-height: 1.9;
}

/* 本文内要素 */
.ulin-knowledge_single-content p {
  margin-bottom: 1.8em;
}

.ulin-knowledge_single-content h2 {
  font-size: 1.4rem; padding: 10px 15px; font-weight: bold;
  margin: 60px 0 20px; line-height: 1.5;
  background: #4b0c00; color: #fff;
}

.ulin-knowledge_single-content h3 {
  font-size: 1.4rem; font-weight: bold;
    margin: 1.8em 0 0.9em;
    padding-bottom: 0.45em; line-height: 1.5;
    border-bottom: solid 3px #4b0c00;
}

.ulin-knowledge_single-content img {
  max-width: 100%; display: inline-block;
  height: auto;
}

/* ===== ulin-knowledge_single navigation ===== */

.ulin-knowledge_single-nav {
  margin-top: 60px;
  padding-top: 30px;
  border-top: 1px solid #ddd;
}

.ulin-knowledge_single-nav-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.ulin-knowledge_single-nav a {
  color: #4b0c00;
  font-size: 14px;
  text-decoration: none;
  transition: opacity 0.3s ease;
}

.ulin-knowledge_single-nav a:hover {
  opacity: 0.7;
}

/* 中央 */
.ulin-knowledge_single-nav-back { display: flex; justify-content: center }
.ulin-knowledge_single-nav-back a {
  font-weight: 600;
}

/* リスト全体のスタイル */
.ulin-knowledge_single-category-list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0 0 15px 0; /* タイトルとの間隔 */
    gap: 8px;
}

/* 各ターム（バッジ）のスタイル */
.ulin-knowledge_single-category-item a {
    display: inline-block;
    background-color: #333; /* 背景色 */
    color: #fff;            /* 文字色 */
    padding: 4px 12px 2px;
    font-size: 0.8rem;
    text-decoration: none;
    border-radius: 4px;
    transition: background-color 0.3s ease;
}

/* ホバー時の挙動 */
.ulin-knowledge_single-category-item a:hover {
    background-color: #555;
    text-decoration: none;
}

strong { font-weight: bold;}