/* 業者詳細ページ・共通スタイル */

/* スクロールバー非表示 */
.scrollbar-hide::-webkit-scrollbar {
    display: none;
}
.scrollbar-hide {
    -ms-overflow-style: none;
    scrollbar-width: none;
}

/* ナビゲーション・アクティブ状態（フォールバック用） */
.tab-active {
    border-bottom: 4px solid #f97316;
    color: #f97316;
}

/* アニメーション：ゆっくりとした鼓動 */
@keyframes pulse-slow {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.8; transform: scale(1.05); }
}
.animate-pulse-slow {
    animation: pulse-slow 2s infinite;
}

/* アニメーション：フェードイン */
@keyframes fadeIn {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}
.fade-in {
    animation: fadeIn 0.5s ease-out forwards;
}

/* 記事コンテンツ（PR・エディター・レポート）内の装飾 */
.pr-content img, 
.editor-note-content img, 
.report-content img {
    max-width: 100%;
    height: auto;
    border-radius: 1rem;
    margin: 1.5rem auto;
    box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
}

.pr-content h2, 
.report-content h2 {
    font-weight: 900;
    font-size: 1.875rem;
    margin-top: 3rem;
    margin-bottom: 1.5rem;
    color: #111827;
    border-bottom: 4px solid #f97316;
    padding-bottom: 0.5rem;
    display: inline-block;
}

.pr-content h3, 
.report-content h3 {
    font-weight: 800;
    font-size: 1.5rem;
    margin-top: 2.5rem;
    margin-bottom: 1.25rem;
    color: #1f2937;
    padding-left: 1rem;
    border-left: 4px solid #f97316;
}

.pr-content p, 
.editor-note-content p {
    margin-bottom: 1.5rem;
    line-height: 1.8;
    color: #374151;
}

.report-content p {
    margin-bottom: 1.5rem;
    line-height: 2;
    color: #374151;
    font-size: 1.125rem;
}

