/* レスポンシブ時の余白修正 */

/* ヘッダー直後の要素の余白削除 */
header + * {
    margin-top: 0 !important;
}

/* レスポンシブ時の修正 */
@media (max-width: 768px) {
    /* bodyの余白を削除 */
    body {
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* ヘッダーの余白削除 */
    header {
        position: relative !important;
        margin: 0 !important;
        padding: 0 !important;
    }
    
    /* サブバナーコンテナの余白を完全に削除 */
    .sub-banner-container {
        margin-top: 0 !important;
        margin-bottom: 0 !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }
    
    /* ヘッダー直下のコンテンツ */
    body > .sub-banner-container:first-child,
    header + .sub-banner-container {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
    
    /* サブバナーの画像 */
    .sub-banner {
        margin: 0 !important;
        padding: 0 !important;
    }
    
    .sub-banner img {
        margin: 0 !important;
        padding: 0 !important;
        display: block;
    }
}