Transparent stroke issue

My code doesnt fill the top moving circle with the full #0000FF even after a long time, and the bottom one looks like it, but it isnt filling it with #0000FF!
Why is this like this?

void setup() {
  size(500,500);
  background(255);
  colorMode(HSB, 255);
  frameRate(120);
}

void draw() {
  noStroke();
  fill(#0000FF,1);
  circle(width/2+sin(frameCount/(float)100)*200, 25, 50);
  fill(#0000FF,5);
  circle(width/2+sin(frameCount/(float)100)*200, 25+55, 50);
}

im not much of a graphics dude but i fiddled with your sketch a bit i think the reason why it doesnt work is because of the way processing handles transparency:

if you try changing the background in your sketch youll notice how the color changes too because the color is based on what it is being drawn over, to simulate transparency

it is filling with complete blue, just note that itll look different based on the background/things drawn behind it

hope this helps bro