First things first
*BACKUP ALL your important data, resizing a partition (even non-destructively) always has risks especially to the data residing within it
then take a look at this thread
HFS+ resizing
(yes i know where it leads; but we're all OSS so why not lead from others shoulders-or however the saying goes)