Nishikori advances to first ATP semi-final in two years