Why not tag a static field onto the end of each q1 and q2 and order by that.
SELECT C.CLIENTGROUPID AS GROUPID,
C.CLIENTGROUP AS 'GROUP','0' as gOrder
FROM TBLCLIENTGROUP C
UNION
SELECT 0 AS GROUPID,
'<< Select >>' AS 'GROUP', '1' as gOrder
ORDER
BY gOrder,'GROUP' asc