float variable gradually from a random float to another

Hi guys, I have a question:

Task Background:
I have many Idle animation clip and I want them are played randomly. For now I use BlenTree to blend them and driven them by a random float from 0.0f to 1.0f. It works well.

But there is no transition between two random variable, which turns out that the animation jump between different idle animation clips suddenly. What I want is a smooth animation transition between clips.

I am an artist and not good at coding. I am appreciate your help.

My code is here:

using UnityEngine;
using System.Collections;

public class IdleScript : MonoBehaviour {

	Animator anim;
	public float random;
	float curValue;
	float targetValue;

	void Start () 
		anim = GetComponent<Animator>();
		random = Random.value;

		InvokeRepeating ("RandomValue", 10.0f, 10.0f);

	void Update () 
		anim.SetFloat ("randomIdle", random);

	void RandomValue()
		targetValue = Random.value;
		curValue = Random.value;
		random = Mathf.Lerp (curValue, targetValue, 2.0f * Time.deltaTime);

To control the speed and timing of the transition: Animator> Click the arrow transition> Change the chart transition inspector.