/* =========================================
   月兎耳亭ニコラシカ
   Hatena Blog Minimalism 用 整理版CSS
   ========================================= */

/* ===== 全体 ===== */
html,
body {
  margin: 0 !important;
  padding: 0 !important;
  background: #5a2d1b;
  color: #fffaf0;
  font: 16px/1.9 "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;
}

#globalheader-container,
#globalheader {
  top: 0 !important;
}

#container {
  max-width: 1100px;
  margin: 0 auto;
}

#content {
  margin-top: 30px;
}

#main {
  width: 68%;
  float: left;
  box-sizing: border-box;
}

#box2 {
  width: 30%;
  float: right;
  box-sizing: border-box;
}

#content::after {
  content: "";
  display: block;
  clear: both;
}

/* ===== リンク ===== */
a {
  color: #ffe066;
  text-decoration: none;
}

a:hover {
  color: #fff3a0;
  text-decoration: underline;
}

/* ===== ヘッダー ===== */
#blog-title {
  margin: 18px 0 28px;
  text-align: center;
}

#blog-title-inner {
  position: relative;
  overflow: hidden;
  border: 1px solid #8b5a2b;
  border-radius: 6px;
  margin-bottom: 34px;
  box-shadow:
    0 0 22px rgba(255, 200, 120, 0.35),
    0 0 60px rgba(255, 170, 70, 0.18),
    0 18px 38px rgba(0, 0, 0, 0.55);
}

#blog-title-inner::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(
    ellipse at center,
    rgba(255, 220, 150, 0.15) 0%,
    rgba(255, 180, 80, 0.08) 40%,
    rgba(0, 0, 0, 0) 70%
  );
}

/* SEO用に残して非表示 */
#title,
#blog-description {
  margin: 0 !important;
  padding: 0 !important;
}

#title a {
  display: inline-block;
  width: 1px;
  height: 1px;
  overflow: hidden;
  white-space: nowrap;
  text-indent: 100%;
}

#blog-description {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* ===== 記事カード ===== */
.entry,
.archive-entry,
.page-entry {
  background: #6b3a24;
  color: #fffaf0;
  border: 1px solid #8b5a2b;
  padding: 24px;
  margin-bottom: 28px;
  box-shadow:
    inset 0 1px 0 rgba(255, 220, 160, 0.08),
    0 4px 14px rgba(0, 0, 0, 0.25),
    0 12px 26px rgba(0, 0, 0, 0.15);
  box-sizing: border-box;
}

/* ===== 記事タイトル ===== */
.entry-title,
.archive-entry-title {
  margin: 0 0 18px;
  padding: 14px 18px;
  max-width: 90%;
  margin-left: auto;
  margin-right: auto;
  border-left: 6px solid #d8a94b;
  background: linear-gradient(to right, #5a0a3f, #7a4328);
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.35);
  line-height: 1.5;
  text-align: center;
}

.entry-title a,
.archive-entry-title a {
  display: block;
  text-align: center;
  color: #fff36a;
  font-size: 28px;
  font-weight: bold;
  letter-spacing: 0.06em;
  text-decoration: none;
  text-shadow: 0 0 6px rgba(0, 0, 0, 0.45);
}

.entry-title a:hover,
.archive-entry-title a:hover {
  color: #ffe44d;
  text-decoration: none;
}

.entry-header .date,
.entry-header .entry-date {
  text-align: center;
}

.entry-header .date a,
.entry-header .entry-date a,
.entry-date,
.entry-header .date {
  color: #f0dfb3;
  font-size: 13px;
}

.entry-footer {
  text-align: center;
}

/* ===== 本文 ===== */
.entry-content,
.archive-entry-body,
.page-entry-content {
  color: #fffaf0;
  font-size: 16px;
  line-height: 2;
}

.entry-content p {
  margin: 1.2em 0;
}

.entry-content ul,
.entry-content ol {
  margin: 1.2em 0 1.2em 1.5em;
  padding-left: 1.2em;
}

.entry-content li {
  margin: 0.5em 0;
}

.entry-content hr,
hr {
  border: 0;
  border-top: 1px solid #8b5a2b;
  margin: 2.5em 0;
}

/* 見出し */
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
  color: #ffe066;
  line-height: 1.5;
}

.entry-content h2 {
  margin: 2.2em 0 1em;
  padding: 10px 14px;
  border-left: 6px solid #d8a94b;
  background: #7a4328;
  font-size: 24px;
  box-shadow: inset 0 1px 0 rgba(255, 240, 180, 0.12);
}

.entry-content h3 {
  margin: 2.2em 0 0.8em;
  padding-bottom: 6px;
  border-bottom: 1px dashed #c89b52;
  background: transparent;
  font-size: 20px;
}

.entry-content h4 {
  color: #f3d98c;
  margin: 1.8em 0 0.6em;
  font-size: 17px;
}

/* 引用・コード */
.entry-content blockquote,
blockquote {
  background: #73412a;
  border-left: 4px solid #d8a94b;
  color: #fff8dc;
  padding: 14px 16px;
  margin: 1.8em 0;
}

.entry-content pre,
pre {
  background: #4a2416;
  color: #fff4c2;
  padding: 14px;
  overflow-x: auto;
  border: 1px solid #8b5a2b;
  font-size: 14px;
  line-height: 1.7;
}

.entry-content code,
code {
  background: #4a2416;
  color: #fff4c2;
  padding: 0.15em 0.35em;
  font-size: 0.95em;
}

.entry-content pre code {
  background: transparent;
  color: inherit;
  padding: 0;
}

/* 本文リンク */
.entry-content a {
  color: #ffd86a;
  text-decoration: underline;
  text-underline-offset: 0.15em;
}

.entry-content a:hover {
  color: #fff3a0;
}

/* 画像 */
.entry-content img {
  max-width: 100%;
  height: auto;
  border: 1px solid #8b5a2b;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18);
}

/* ===== メタ情報 ===== */
.entry-footer,
.entry-footer-section,
.entry-footer a,
.entry-footer-section a,
.post-meta,
.post-meta a {
  color: #f3d98c !important;
  font-size: 13px;
  letter-spacing: 0.02em;
}

.entry-footer a:hover,
.entry-footer-section a:hover,
.post-meta a:hover {
  color: #fff3c4 !important;
}

/* ===== カテゴリ・タグ ===== */
.entry-categories,
.categories {
  margin: 14px 0;
}

.entry-categories a,
.categories a,
.archive-category-link,
.category-link,
a[rel="tag"],
.entry-footer a[href*="/archive/category/"],
.entry a[href*="/archive/category/"],
.entry-tags a,
.entry-tags a:link,
.entry-tags a:visited {
  display: inline-block !important;
  background: #7a4328 !important;
  color: #ffe8a3 !important;
  border: 1px solid #b07a3f !important;
  padding: 5px 10px !important;
  margin: 0 6px 6px 0 !important;
  text-decoration: none !important;
  font-size: 0.92em;
  line-height: 1.5;
  box-shadow: none !important;
  text-shadow: none !important;
}

.entry-categories a:hover,
.categories a:hover,
.archive-category-link:hover,
.category-link:hover,
a[rel="tag"]:hover,
.entry-footer a[href*="/archive/category/"]:hover,
.entry a[href*="/archive/category/"]:hover,
.entry-tags a:hover {
  background: #8a4b2d !important;
  color: #fff3c4 !important;
  text-decoration: none !important;
}

/* ===== サイドバー ===== */
.sidebar,
#box2 {
  color: #fffaf0;
}

.hatena-module,
.sidebar .widget,
.archive-module,
.category-module,
.profile-module {
  background: #6b3a24;
  border: 1px solid #8b5a2b;
  padding: 14px;
  margin-bottom: 22px;
  box-shadow:
    inset 0 1px 0 rgba(255, 230, 170, 0.08),
    0 6px 18px rgba(0, 0, 0, 0.25);
  box-sizing: border-box;
  overflow: hidden;
}

.hatena-module-title,
.sidebar .widget-title {
  margin: -14px -14px 12px -14px;
  padding: 8px 12px;
  border: 1px solid #a06a33;
  background: linear-gradient(to right, #5a0a3f, #7a4328);
  color: #ffe066;
  font-weight: bold;
  letter-spacing: 0.04em;
  box-shadow: inset 0 1px 0 rgba(255, 240, 180, 0.15);
  font-size: 1.02em;
  text-align: center;
}

.hatena-module a,
.sidebar a,
.hatena-module-body a {
  color: #ffe066;
}

.hatena-module a:hover,
.sidebar a:hover,
.hatena-module-body a:hover {
  color: #fff3a0;
}

.profile-description {
  letter-spacing: 0.02em;
}

/* サイドバー中央寄せ */
#box2 .hatena-module-body,
#box2 .hatena-module,
#box2 .sidebar-module-body,
#box2 p,
#box2 li,
#box2 a,
#box2 .profile-description,
#box2 .urllist-item,
#box2 .hatena-urllist li {
  text-align: center;
}

#box2 ul {
  list-style: none;
  padding-left: 0;
  margin-left: 0;
}

#box2 .hatena-module-category li a,
#box2 .hatena-module-categories li a,
#box2 .widget_categories li a,
#box2 .hatena-module a,
#box2 .hatena-module-body a {
  display: inline-block;
}

#box2 .profile-icon,
#box2 .hatena-id-icon {
  text-align: center;
}

#box2 .search-form,
#box2 .hatena-module-search-box {
  text-align: center;
}

#box2 .search-module-input,
#box2 .search-form-input,
#box2 input[type="text"],
#box2 input[type="search"] {
  text-align: left;
}

/* サイドバーカテゴリ */
.hatena-module-category ul,
.hatena-module-categories ul,
.widget_categories ul,
.categories ul {
  list-style: none;
  margin: 0;
  padding-left: 0;
}

.hatena-module-category li,
.hatena-module-categories li,
.widget_categories li,
.categories li {
  margin: 0 0 6px 0;
  padding: 0;
}

.hatena-module-category li a,
.hatena-module-categories li a,
.widget_categories li a,
.hatena-module-category a,
.hatena-module-categories a {
  display: inline-block;
  background: #7a4328 !important;
  color: #ffe8a3 !important;
  border: 1px solid #b07a3f !important;
  padding: 6px 10px;
  text-decoration: none;
  line-height: 1.6;
}

.hatena-module-category li a:hover,
.hatena-module-categories li a:hover,
.widget_categories li a:hover,
.hatena-module-category a:hover,
.hatena-module-categories a:hover {
  background: #8a4b2d !important;
  color: #fff3c4 !important;
  text-decoration: none;
}

.hatena-module-category .count,
.hatena-module-categories .count,
.category-count {
  color: #f3d98c !important;
}

/* 参加グループ */
.hatena-module-group a,
.hatena-module-group li a,
.hatena-module-group .urllist-item a,
.hatena-module-group .hatena-urllist a,
.hatena-module-group .hatena-module-body a {
  color: #ffe8a3 !important;
  text-decoration: none;
}

.hatena-module-group a:hover,
.hatena-module-group li a:hover,
.hatena-module-group .urllist-item a:hover,
.hatena-module-group .hatena-urllist a:hover,
.hatena-module-group .hatena-module-body a:hover {
  color: #fff3c4 !important;
  text-decoration: underline;
}

/* ===== ページャー ===== */
.pager,
.archive-pager {
  margin: 28px 0;
}

.pager a,
.archive-pager a {
  display: inline-block;
  min-width: 3.2em;
  text-align: center;
  background: #7a4328;
  color: #ffe066;
  border: 1px solid #a06a33;
  padding: 8px 12px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.18);
}

.pager a:hover,
.archive-pager a:hover {
  background: #8a4b2d;
  color: #fff3a0;
  text-decoration: none;
}

/* ===== 検索ボックス ===== */
.search-form,
.hatena-module-search-box {
  margin-top: 8px;
}

.search-module-input,
.search-form-input,
input[type="text"],
input[type="search"],
textarea,
select {
  width: 100%;
  box-sizing: border-box;
  padding: 9px 10px;
  border: 1px solid #8b5a2b;
  font-size: 14px;
  background: #fffaf0;
  color: #3a1c12;
}

.search-module-button,
.search-form-button,
button,
input[type="submit"] {
  margin-top: 8px;
  padding: 8px 12px;
  border: 1px solid #a06a33;
  background: #7a4328;
  color: #ffe066;
  cursor: pointer;
}

.search-module-button:hover,
.search-form-button:hover,
button:hover,
input[type="submit"]:hover {
  background: #8a4b2d;
  color: #fff3a0;
}

/* ===== コメント・フッター ===== */
.comment-box,
.comment-content,
.entry-comment {
  background: #6b3a24;
  color: #fffaf0;
  border: 1px solid #8b5a2b;
}

.comment-content {
  padding: 12px;
}

#footer {
  background: #4a2416;
  color: #f8f1e7;
  border-top: 1px solid #8b5a2b;
  padding: 24px 0;
  box-shadow: inset 0 1px 0 rgba(255, 240, 180, 0.08);
}

#footer a {
  color: #ffe066;
}

/* ===== 読者になるボタン ===== */
.blog-controlls-subscribe-btn {
  position: fixed !important;
  top: 70px !important;
  right: 20px !important;
  z-index: 1000 !important;
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25);
}

/* ===== 来客帳・カウンター ===== */
.tavern-counter-box {
  text-align: center;
  background: linear-gradient(to bottom, #3f2316, #2b150d);
  border: 1px solid #8b5a2b;
  padding: 12px 10px;
  box-shadow:
    inset 0 0 12px rgba(0, 0, 0, 0.6),
    0 3px 10px rgba(0, 0, 0, 0.4);
}

.tavern-counter-row {
  margin-bottom: 10px;
  padding-bottom: 8px;
  border-bottom: 1px dashed rgba(216, 169, 75, 0.35);
}

.tavern-counter-row:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.counter-label {
  display: block;
  font-size: 0.85em;
  color: #ffd86a;
  margin-bottom: 4px;
  letter-spacing: 0.05em;
}

.tavern-counter-box img {
  display: inline-block;
  margin: 4px auto 2px;
  padding: 4px 6px;
  background: #24110b;
  border: 1px solid #8b5a2b;
  box-shadow:
    inset 0 0 8px rgba(0, 0, 0, 0.6),
    0 2px 6px rgba(0, 0, 0, 0.35);
  filter: drop-shadow(0 0 4px rgba(180, 255, 120, 0.35));
}

/* ===== サイドバー用 汎用UI ===== */
.tavern-ui-box {
  text-align: center;
  background: linear-gradient(to bottom, #3f2316, #2b150d);
  border: 1px solid #8b5a2b;
  padding: 12px 10px;
  box-shadow:
    inset 0 0 12px rgba(0, 0, 0, 0.6),
    0 3px 10px rgba(0, 0, 0, 0.4);
}

.tavern-text {
  color: #f3d98c;
  line-height: 1.8;
  margin-bottom: 8px;
}

.tavern-note {
  font-size: 0.85em;
  color: #cfae6b;
  letter-spacing: 0.04em;
  margin-bottom: 8px;
}

.tavern-follow-real a,
.tavern-guide-box a,
.tavern-ui-box a {
  display: inline-block;
  background: #7a4328;
  color: #ffe8a3 !important;
  border: 1px solid #b07a3f;
  padding: 6px 12px;
  text-decoration: none !important;
  line-height: 1.6;
}

.tavern-follow-real a:hover,
.tavern-guide-box a:hover,
.tavern-ui-box a:hover {
  background: #8a4b2d;
  color: #fff3c4 !important;
}

/* ===== 常連ボタン関連 ===== */
.tavern-follow-wrapper {
  text-align: center;
}

.tavern-follow-title {
  display: inline-block;
  padding: 10px 18px;
  background: linear-gradient(#7a4328, #5a2d1b);
  border: 1px solid #b07a3f;
  color: #ffe8a3;
  font-weight: bold;
  letter-spacing: 0.06em;
  box-shadow:
    0 3px 8px rgba(0, 0, 0, 0.35),
    inset 0 1px 0 rgba(255, 220, 150, 0.25);
}

.tavern-follow-real a {
  display: none;
}

.hatena-module-follow .count,
.hatena-follow-count,
.hatena-module-subscribe .count {
  display: block;
  margin-top: 8px;
  text-align: center;
  font-size: 0.9em;
  color: #ffd86a;
  letter-spacing: 0.05em;
}

/* 公式読者ボタンを隠す */
.hatena-module-follow {
  display: none;
}

/* ===== 酒場案内などのリスト ===== */
.tavern-board-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.tavern-board-list li {
  margin: 0 0 8px 0;
}

.tavern-board-list a {
  display: inline-block;
  background: #7a4328;
  color: #ffe8a3 !important;
  border: 1px solid #b07a3f;
  padding: 6px 12px;
  text-decoration: none !important;
  line-height: 1.6;
}

.tavern-board-list a:hover {
  background: #8a4b2d;
  color: #fff3c4 !important;
}

/* ===== 補助 ===== */
::selection {
  background: rgba(216, 169, 75, 0.35);
  color: #fffaf0;
}

/* 角丸ゼロは必要箇所に限定 */
.entry,
.archive-entry,
.page-entry,
.hatena-module,
.sidebar .widget,
.comment-box,
.comment-content,
.entry-comment,
.search-module-input,
.search-form-input,
input[type="text"],
input[type="search"],
textarea,
select,
button,
input[type="submit"],
.pager a,
.archive-pager a,
.entry-categories a,
.categories a,
.archive-category-link,
.category-link,
a[rel="tag"],
.entry-tags a,
.blog-controlls-subscribe-btn {
  border-radius: 0 !important;
}

/* ===== 上へ戻るボタン ===== */
#nikolaschka-top-btn {
  display: block;
  position: fixed;
  top: 110px;
  right: 18px;
  z-index: 9999;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: linear-gradient(145deg, #7a4b27, #5a341b);
  border: 1px solid #c9a063;
  color: #fff8e6;
  font-size: 20px;
  text-align: center;
  line-height: 48px;
  text-decoration: none;
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.35);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-12px);
  transition:
    opacity 0.35s ease,
    transform 0.35s ease,
    box-shadow 0.35s ease,
    visibility 0.35s ease;
}

#nikolaschka-top-btn.show {
  opacity: 0.95;
  visibility: visible;
  transform: translateY(0);
}

#nikolaschka-top-btn:hover {
  opacity: 1;
  transform: translateY(-3px);
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.45);
}

/* ===== スマホ ===== */
@media screen and (max-width: 768px) {
  body {
    font-size: 15px;
  }

  #main,
  #box2 {
    width: 100%;
    float: none;
  }

  #content {
    margin-top: 20px;
  }

  .entry-title a,
  .archive-entry-title a {
    font-size: 23px;
  }

  .entry-content h2 {
    font-size: 21px;
  }

  .entry-content h3 {
    font-size: 18px;
  }

  .blog-controlls-subscribe-btn {
    right: 10px !important;
  }

  #nikolaschka-top-btn {
    top: 95px;
    right: 12px;
    width: 42px;
    height: 42px;
    line-height: 42px;
    font-size: 18px;
  }
}
/* =========================================
   おすすめ・人気の「各記事タイトル」を箱で囲う
   今のCSSの一番最後に追加
========================================= */

/* おすすめ・人気モジュール内のリンク一覧を整える */
.hatena-module-custom-tavern-osusume ul,
.hatena-module-custom-tavern-ninki ul,
.hatena-module.custom-module.tavern-osusume ul,
.hatena-module.custom-module.tavern-ninki ul,
#box2 .hatena-module[class*="tavern-osusume"] ul,
#box2 .hatena-module[class*="tavern-ninki"] ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* 各項目の余白 */
.hatena-module-custom-tavern-osusume li,
.hatena-module-custom-tavern-ninki li,
.hatena-module.custom-module.tavern-osusume li,
.hatena-module.custom-module.tavern-ninki li,
#box2 .hatena-module[class*="tavern-osusume"] li,
#box2 .hatena-module[class*="tavern-ninki"] li {
  margin: 0 0 10px 0;
  padding: 0;
}

/* 各記事タイトルを箱枠化 */
.hatena-module-custom-tavern-osusume li a,
.hatena-module-custom-tavern-ninki li a,
.hatena-module.custom-module.tavern-osusume li a,
.hatena-module.custom-module.tavern-ninki li a,
#box2 .hatena-module[class*="tavern-osusume"] li a,
#box2 .hatena-module[class*="tavern-ninki"] li a,
.hatena-module-custom-tavern-osusume .urllist-item-link,
.hatena-module-custom-tavern-ninki .urllist-item-link,
.hatena-module.custom-module.tavern-osusume .urllist-item-link,
.hatena-module.custom-module.tavern-ninki .urllist-item-link,
#box2 .hatena-module[class*="tavern-osusume"] .urllist-item-link,
#box2 .hatena-module[class*="tavern-ninki"] .urllist-item-link {
  display: block !important;
  padding: 10px 12px !important;
  margin: 0 !important;
  background: #6f3a24 !important;
  border: 1px solid #b07a3f !important;
  color: #ffe8a3 !important;
  text-decoration: none !important;
  line-height: 1.7 !important;
  text-align: center !important;
  box-sizing: border-box;
}

/* ホバー時 */
.hatena-module-custom-tavern-osusume li a:hover,
.hatena-module-custom-tavern-ninki li a:hover,
.hatena-module.custom-module.tavern-osusume li a:hover,
.hatena-module.custom-module.tavern-ninki li a:hover,
#box2 .hatena-module[class*="tavern-osusume"] li a:hover,
#box2 .hatena-module[class*="tavern-ninki"] li a:hover,
.hatena-module-custom-tavern-osusume .urllist-item-link:hover,
.hatena-module-custom-tavern-ninki .urllist-item-link:hover,
.hatena-module.custom-module.tavern-osusume .urllist-item-link:hover,
.hatena-module.custom-module.tavern-ninki .urllist-item-link:hover,
#box2 .hatena-module[class*="tavern-osusume"] .urllist-item-link:hover,
#box2 .hatena-module[class*="tavern-ninki"] .urllist-item-link:hover {
  background: #8a4b2d !important;
  color: #fff3c4 !important;
  text-decoration: none !important;
}

/* 最後の項目だけ余白を消す */
.hatena-module-custom-tavern-osusume li:last-child,
.hatena-module-custom-tavern-ninki li:last-child,
.hatena-module.custom-module.tavern-osusume li:last-child,
.hatena-module.custom-module.tavern-ninki li:last-child,
#box2 .hatena-module[class*="tavern-osusume"] li:last-child,
#box2 .hatena-module[class*="tavern-ninki"] li:last-child {
  margin-bottom: 0;
}