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.