Well...yes.
The max value you can get in an INT is 2147483647
And you are trying to add one to:
012016031800001
2147483647
See the problem?
I'm not exactly sure why you are doing that: the VARCHAR cast is already unnecessary, and the ISNULL is also pretty redundant by that point.
This may be what you need:
SELECT MAX(CAST(RIGHT('012016031800001',15) AS BIGINT))+1
But...If you are trying to use this to generate unique IDs in advance, that's a bad idea!