El atributo required no es aplicacle a un grupo de elementos del mismo nombre, checkboxes, radios ú otros. solo a cada input que contiene el grupo.
Para validar el que al menos uno del grupo esté chequeado utilizás javascript.
Ejemplo
Código HTML:
Ver original<!DOCTYPE html>
<link rel="stylesheet" href="estilos.css" media="screen" /> function validar(){
var ok = 0;
var ckbox = document.getElementsByName('mes[]');
for (var i=0; i < ckbox.length; i++){
if(ckbox[i].checked == true){
ok = 1;
}
}
if(ok == 0){
alert('indique al menos un mes');
return false;
}
}
<form action="#" onsubmit="return validar();"> <input type='checkbox' name="mes[]" value="enero">Enero
<input type='checkbox' name="mes[]" value="febrero">Febrero
<input type='checkbox' name="mes[]" value="marzo">Marzo
<input type='checkbox' name="mes[]" value="abril">Abril
<input type='checkbox' name="mes[]" value="abril">Mayo
<input type='checkbox' name="mes[]" value="abril">Junio
<input type='checkbox' name="mes[]" value="abril">Julio
<input type='checkbox' name="mes[]" value="abril">Agosto
<input type='checkbox' name="mes[]" value="abril">Septiembre
<input type='checkbox' name="mes[]" value="abril">Octubre
<input type='checkbox' name="mes[]" value="abril">Noviembre
<input type='checkbox' name="mes[]" value="abril">Diciembre
Salu2