A quick and easy solution if you do not want to deal with too many calculations (you can refer to Ivictorino's solution if you want that), is to simply parent the small rotating circle to the big circles.
The hierarchy might look something like this:
In code, all you're doing is rotating the "EmptyObjectAtCenterOfBigCircle".
When you need to do the transfer, lerp the small circle to the appropriate position, reset the parent, and start spinning the new "EmptyObjectAtCenterOfBigCircle".
smallCircle.transform.position = Vector3.Lerp(
targetCircle.transform.position + targetCircle.radius + 0.1F,
//When the lerp is done:
Spincode simply rotates the EmptyObjectAtCenterOfBigCircle.