How to move the object?

How to make the object (red arrow) move to the green figure after pressing the mouse?

My problem is that when I press the left mouse button, the arrow moves only per one frame.

Any help?

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class CatControl : MonoBehaviour {
	
	public Rigidbody2D rb;



	[SerializeField]
	Transform[] waypoints;

	[SerializeField]
	float MoveSpeed = 2f;

	int waypointIndex = 0;

	void Start () {
		transform.position = waypoints [waypointIndex].transform.position;

		rb = GetComponent<Rigidbody2D>();
	}

	void Update () {
		if (Input.GetMouseButtonDown (0)) {
		Move ();


	}
	}

	void Move()
	{		
		transform.position = Vector2.MoveTowards (transform.position,
			waypoints[waypointIndex].transform.position,
			MoveSpeed * Time.deltaTime);

		if (transform.position == waypoints [waypointIndex].transform.position) {
			waypointIndex += 1;
		}
				
		if (waypointIndex == waypoints.Length)
			waypointIndex = 0;
	}

}

GetMouseButtonDown only checks whether the mouse button was just pressed; it does not, as you might expect, determine whether the mouse button is currently down. For persistent state, you’ll want to use GetMouseButton(0); which will always tell you if the mouse button is up, or down.

Think of it as a question of state; what is the state of the mouse button having been pressed down, versus, what is the state of the mouse button?