Swithing from one orientation to other orientation UI not postioning well

im developing my first game in android ,i done one ui concept in my game .this ui get fits if i open game in one more at correct postion where i want .if i switching from one mode to other mode .ui is not repositioning its remains in same position why?.i written in screen.width and screen height format only:then why its not changing ?

here is the code!!

using UnityEngine;
using System.Collections;

public class uitxt : MonoBehaviour 
	{
	
	
	private int hgh;
	public GUISkin ui;
	private int sw;
	// Use this for initialization
	void Start () 
	{
		sw=Screen.width;
		sw=sw-230;
		
		hgh=Screen.height;
		hgh=hgh-100;
		Debug.Log("hg"+hgh);
		widht=Screen.width/2;
		
		
	}
	
	// Update is called once per frame
	void Update () 
	{
		
	
	}
	void OnGUI()
	{
		GUI.skin=ui;
		GUILayout.BeginVertical();
		GUILayout.Space(hgh);
		GUILayout.EndVertical();
		GUILayout.BeginHorizontal();
		GUILayout.Space(sw);

			if(GUILayout.Button("", GUILayout.Width(201),GUILayout.Height(41) ))
			{
			Application.LoadLevel(1);
			}
		GUILayout.EndHorizontal();
	}
}

You should do those calculations that you do in Start() again, when user changes from landscape to portrait (or vice versa).