/* ScrollSmoother用の基本設定 */
#smooth-wrapper {
    overflow: hidden;
}

#smooth-content {
    overflow: visible;
    width: 100%;
}

/* フェードアップアニメーション用の初期状態 */
.fade-up {
    opacity: 0;
    transform: translateY(50px);
}

/* フェードアップバリエーション */
.fade-up-slow {
    opacity: 0;
    transform: translateY(80px);
}

.fade-up-fast {
    opacity: 0;
    transform: translateY(30px);
}

.fade-left {
    opacity: 0;
    transform: translateX(-50px);
}

.fade-right {
    opacity: 0;
    transform: translateX(50px);
}

.fade-scale {
    opacity: 0;
    transform: scale(0.8);
}

.fade-scale-large {
    opacity: 0;
    transform: scale(2.0);
}

.fade-up-rotate {
    opacity: 0;
    transform: translateY(50px) rotate(5deg);
}

/* スプリットレイアウト用CSS（769px以上） */
@media (min-width: 769px) {
    .split-left-fixed,
    .split-right-fixed {
        display: flex;
        position: relative;
    }
    
    .split-left-fixed .split-content-left,
    .split-left-fixed .split-content-right,
    .split-right-fixed .split-content-left,
    .split-right-fixed .split-content-right {
        width: 50%;
    }
    
    /* 固定側共通スタイル */
    .split-left-fixed .split-content-left,
    .split-right-fixed .split-content-right {
        height: 100vh;
        display: flex;
        align-items: center;
        background: var(--primary-gradient);
        color: white;
    }
    
    /* スクロール側共通スタイル */
    .split-left-fixed .split-content-right,
    .split-right-fixed .split-content-left {
        background: var(--background-light);
        padding: 300px 0 50px;
    }
}

/* 769px未満では通常のレイアウトを適用 */
@media (max-width: 768px) {
    .split-left-fixed,
    .split-right-fixed {
        display: block;
    }
    
    .split-left-fixed .split-content-left,
    .split-left-fixed .split-content-right,
    .split-right-fixed .split-content-left,
    .split-right-fixed .split-content-right {
        width: 100%;
        padding: 50px 0;
    }
    
    .split-left-fixed .split-content-left,
    .split-right-fixed .split-content-right {
        position: static;
        height: auto;
        background: var(--primary-gradient);
        color: white;
    }
}