If $S$ is a closed achronal set in a spacetime, any timelike curve starting at a point in $I^+[S]$ and ending at a point in $I^-[S]$ interset $S$?

Suppose $S$ is an achronal set in a spacetime $M$. And $S$ is closed. At the same time, any null geodesic of $M$ intersects $S$. Then, why does any timelike curve from $I^+[S]$ to $I^-[S]$ intersect $S$, too?

I understand that, any point $r\in M$ belongs to either $S$, or $I^+[S]$ or $I^-[S]$. Because if $r\notin S$, and there is a past null geodesic $\gamma$ starting at $r$, then $\gamma$ must intersect $S$ at $q$. Pick any point $p\in\gamma$ and $p$ is in the causal future of $q$, then there is a second null geodesic $\eta$ from $p$ and intersecting $S$ at $s$. Therefore, we can find a timelike curve connecting $r$ to $s$ which implies that $r\in I^+[S]$.

But unfortunately, I cannot figure out how to show any timelike curve from $I^+[S]$ to $I^-[S]$ intersects $S$. Would you give me some hint, please?

First observe that if a future directed causal curve enters $I^+(S)$ is will remain in it because with $p\in S$, $p\ll q_1\le q_1$ implies $p\ll q_2$, where $q_1,q_2$ are points in the curve. Dually a past directed causal curve that enters $I^-(S)$ remains in it. Let $\sigma:[0,1]\to M$ be a causal curve. You have noticed that $M=S\cup I^+(S)\cup I^-(S)$. Suppose $\sigma$ does not intersect $S$ but it intersects $I^+(S)$ and $I^-(S)$ then $[0,1]=\sigma^{-1}(I^-(S))\cup \sigma^{-1}(I^+(S))$ where by continuity of $\sigma$ the two sets on the right hand side are open. That is, $[0,1]$ is the union of two disjoint open sets (in the topology of $[0,1]$ induced from that of the real line) which is impossible since it is a connected topological space.