What you want to do is to my knowledge not really possible in pure css (but I would be more than happy to be proven wrong).
If I understand you right ... you want the nth count to reset after every div of class .cr, rigt?
CSS unfortunately does not work that way. Every time you will assign a new nth rule it will apply for all elements of a type from beginning. Using the adjacent selector + or ~ you could do some of the magic ... for example to start applying the style with the nth rule only after the first occurrence of the .cr class
but there is no way to reset the nth counter after each div of class .cr.
You could do this by adding hierarchical structure or dynamically by assigning specific classes using javascript or serverside ... but NOT in pure css.
Edit: For example if you are using jQuery you could add something like this:
var i=1;
$("div").each(function(){
if($(this).hasClass('cr') || i%5==0){
$(this).addClass('cr');
i=1;
}
i++;
});
And in css apply clear:both; to the .cr class.
Here is this example in jsfiddle: http://jsfiddle.net/MJ29T/