/* スマートフォン専用の強制非表示CSS */
@media screen and (max-width: 738px) {
    .sp-hide,
    .sp-hide *,
    div.sp-hide,
    form.sp-hide,
    nav.sp-hide,
    .header-right.sp-hide,
    div.header-right.sp-hide {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        position: absolute !important;
        left: -999999px !important;
        top: -999999px !important;
        width: 0 !important;
        height: 0 !important;
        max-width: 0 !important;
        max-height: 0 !important;
        min-width: 0 !important;
        min-height: 0 !important;
        margin: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        outline: 0 !important;
        overflow: hidden !important;
        z-index: -999999 !important;
        pointer-events: none !important;
        user-select: none !important;
        -webkit-user-select: none !important;
        -moz-user-select: none !important;
        -ms-user-select: none !important;
    }

    /* インラインスタイル付きの要素も強制非表示 */
    [style].sp-hide,
    [style*="display"].sp-hide,
    [style*="flex"].sp-hide,
    [style*="inline"].sp-hide,
    [style*="block"].sp-hide {
        display: none !important;
        visibility: hidden !important;
        position: absolute !important;
        left: -999999px !important;
        top: -999999px !important;
        width: 0 !important;
        height: 0 !important;
        opacity: 0 !important;
        z-index: -999999 !important;
    }
}