/* ヒーローエリア全体の共通設定 */
.brand-hero-wrapper {
    background-color: #ffffff;
    padding: 60px 10px; /* 余白を贅沢に */
    text-align: center;
    font-family: 'Noto Serif JP', serif;
}

.hero-content {
    max-width: 800px;
    margin: 0 auto;
}

/* サブラベル：英字の小文字を混ぜたセリフ体で品格を出す */
.hero-sub-label {
    display: block;
    font-family: 'Lora', serif;
    font-size: 14px;
    letter-spacing: 0.3em;
    color: #5D9CB3; 
    margin-bottom: 24px;
    text-transform: uppercase;
}

/* メインコピー：文字を詰めすぎず、優雅に */
.hero-main-copy {
    font-size: clamp(1.5rem, 4vw, 2rem);
    font-weight: 500;
    line-height: 1.6;
    letter-spacing: 0.12em;
    color: #2C2C2C;
    margin-bottom: 24px;
}

/* 説明文：コントラストを抑えて情緒的に */
.hero-description {
    font-size: 0.95rem;
    line-height: 1.8;
    letter-spacing: 0.08em;
    color: #6E6E6E;
    margin-bottom: 0;
}

/* カテゴリーリスト：装飾を排除し、スラッシュで区切る洗練された見せ方 */
.hero-category-list {
    margin-top: 40px;
    padding-top: 20px;
    border-top: 1px solid #E0DCD6;
}

.hero-category-list p {
    font-family: 'Lora', serif;
    font-size: 11px;
    letter-spacing: 0.15em;
    color: #9E9E9E;
    text-transform: uppercase;
}

.hero-category-list span {
    margin: 0 10px;
    color: #E0DCD6;
}

/* モバイル対応の改行制御 */
@media (min-width: 768px) {
    .mobile-br {
        display: none;
    }
    .brand-hero-wrapper {
        padding: 120px 20px;
    }
}
/* ログイン後専用のコンパクトなラッパー */
.brand-hero-wrapper-mini {
    background-color: #ffffff;
    padding: 40px 20px 20px 20px; /* 上の余白を抑え、画像との距離を縮める */
    text-align: center;
    font-family: 'Noto Serif JP', serif;
}

/* メインコピー：小さく、繊細に */
.hero-main-copy-mini {
    font-size: 1.1rem; /* かなり小さめに設定 */
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.2em; /* 間隔を広げて品格を出す */
    color: #2C2C2C;
    margin-bottom: 8px;
    border: none;
}

/* 説明文：さらに控えめに、空気のように */
.hero-description-mini {
    font-size: 0.95rem;
    line-height: 1.5;
    letter-spacing: 0.15em;
    color: #9E9E9E; /* 色を薄くして主張を抑える */
    margin-bottom: 0;
}

/* モバイル対応：さらに小さく、1行に収まるように調整 */
@media (max-width: 768px) {
    .brand-hero-wrapper-mini {
        padding: 30px 15px 15px 15px;
    }
    .hero-main-copy-mini {
        font-size: 0.85rem;
        letter-spacing: 0.1em;
    }
    .hero-description-mini {
        font-size: 0.7rem;
    }
    /* モバイルでの強制改行を解除して1行で見せる */
    .mobile-br {
        display: none;
    }
}