I voted on 622 questions and 25% of them are on questions, but still didn't get a badge, is there any specific reason for it.
To quote the badge page:
Voted on 600 questions and 25% or more of total votes are on questions
It is a little confusing, but it actually means that you must vote 600 questions, not that you should have 600 votes combined between questions and answers. From what I see in your profile, out of the 622 votes only about 300 are on questions. So I belive that you don't qualify yet.
Based on meta you seem to have fall in a common wording trap:
Also see the electorate badge description on List of all badges with full descriptions