You and a relative are Nth cousins K times removed, where your common ancestor is N+1 generations before the older of the two of you, and the two of you are K generations apart. So for example, first cousins share grandparents (2 generations before both of you, so N = 1, and you're the same generation, so K = 0: first cousins 0 times removed). Second cousins share great-grandparents (3 generations back, so N = 2).
The great-granddaughter of your great-great-grandfather is 3 generations after your great-great-grandfather, and you're 4 generations after him. So N+1 = 3, and K = 4 - 3 = 1, so you are 2nd cousins (N = 2), once removed.
These relationships are symmetric, because N is always calculated from the older-generation relative.
Schwarz/Schwartz/Szwarc, Katz (Grzymalów, Galicia)
Schwebel, Kallenberg, Klein, Schramm, Wolfmann (Czortków, Galicia; Neulengbach and Vienna, Austria)
Adler, Feith (Koblenz, Germany)
Rosenthal, Elkan, Block (Wetzlar, Germany)
Heymann (Cologne, Germany; Amsterdam, Netherlands)
A product of a mixed marriage: my father was a Galizianer, my mother a Yekke :-).