Character Controller goes inside colliders

Hi I am creating a 3d Runner game similar to subway surfer however I am facing this strange problem… when m shifting my player;s position through swipe… while shifting if there is any obstacle on the lane… if goes inside it… What could be the reason???

m using Vector3.MoveTowards() to shift the player’s lane … is there any other better optimized option instead of this??

Assuming your character has a rigidbody you can use