main { padding: 120px 20px 80px; width: 100%; max-width: 940px; margin: 0 auto; }
.blog-container { background: white; border-radius: 24px; border: 4px solid var(--base-brown); padding: 50px 50px 50px 65px; position: relative; overflow: hidden; box-shadow: 0 10px 30px rgba(0,0,0,0.08); }

/* ノート風の点線 */
.blog-container::before { content: ''; position: absolute; top: 0; bottom: 0; left: 25px; width: 2px; border-left: 2px dashed rgba(67, 37, 23, 0.15); z-index: 1; }

/* カテゴリタグ（これが消えていました） */
.blog-category { display: inline-block; background: var(--accent-orange); color: white; font-size: 0.9rem; font-weight: bold; padding: 6px 14px; border-radius: 999px; margin-bottom: 20px; }

/* 日付 */
.blog-date { font-size: 1.1rem; opacity: 0.7; margin-bottom: 15px; font-weight: bold; }

h1 { font-size: clamp(1.8rem, 5vw, 2.5rem); line-height: 1.4; margin-bottom: 30px; border-bottom: 2px solid var(--base-beige); padding-bottom: 20px; }
article p { margin-bottom: 30px; font-size: 1.2rem; line-height: 2.0; }
article h2 { margin-top: 50px; margin-bottom: 25px; font-size: 1.8rem; color: var(--accent-orange); border-bottom: 1px dashed var(--accent-orange); display: inline-block; }
.highlight-box { background: #fff7ea; border-left: 6px solid var(--accent-orange); padding: 25px; margin: 40px 0; font-weight: bold; font-size: 1.2rem; border-radius: 0 12px 12px 0; }
.back-link { margin-top: 50px; display: inline-block; font-weight: bold; color: var(--accent-orange); font-size: 1.2rem; }

/* 画像設定 */
article img { max-width: 100%; height: auto; }
.hero-image { width: 100%; max-width: 400px; display: block; margin: 0 auto 40px; border-radius: 20px; border: 4px solid var(--base-brown); }

/* レスポンシブ */
@media (max-width: 768px) {
    main { padding-top: 100px; padding-left: 15px; padding-right: 15px; }
    .blog-container { padding: 40px 20px 40px 45px; border-radius: 15px; }
    .blog-container::before { left: 20px; }
    h1 { font-size: 1.6rem; }
    article p { font-size: 1.1rem; }
}
