Showing that the first hitting time of a closed set is a stopping time.

Since $G_i \supseteq B$, we have $\tau_i \leq t$ and therefore, as you already noted,

$$\sup_{i \in \mathbb{N}} \tau_i \leq \tau.$$

It remains to show that

$$\tau \leq \sup_{i \in \mathbb{N}} \tau_i.$$

Fix $\omega \in \Omega$. Without loss of generality, we may assume that the right-hand side is finite (otherwise there is nothing to prove), i.e.

$$T(\omega):= \sup_{i \in \mathbb{N}} \tau_i(\omega) <\infty.$$

Since $\tau_1 \leq \tau_2 \leq \ldots$, it follows from the very definition of "sup" that $\lim_{i \to \infty} \tau_i(\omega) = T(\omega)$. Hence, as $(X_t)_{t \geq 0}$ has continuous sample paths,

$$X_{T(\omega)}(\omega) = \lim_{i \to \infty} X_{\tau_i(\omega)}(\omega).$$

Since

$$|X_{T(\omega)}-b| \leq |X_{T(\omega)}-X_{\tau_i(\omega)}(\omega)| + |X_{\tau_i(\omega)}(\omega)-b|$$

for any $b \in B$, we find

$$d(X_{T(\omega)}(\omega),B) \leq |X_{T(\omega)}-X_{\tau_i(\omega)}(\omega)| + \underbrace{d(X_{\tau_i(\omega)}(\omega),B)}_{\leq i^{-1}} \xrightarrow[]{i \to \infty} 0,$$

i.e.

$$d(X_{T(\omega)}(\omega),B)=0.$$

As $B$ is closed, this entails $X_{T(\omega)}(\omega) \in B$. By the very definition of $\tau$, this means that $\tau(\omega) \leq T(\omega)$.

As the proof shows we just need left-continuity of the sample paths and not necessarily continuity.