Faits: Faits: A. S._ était assurée auprès de la caisse-maladie et accidents Futura (ci-après : la caisse) pour l'assurance obligatoire des soins en cas de maladie. Le 28 mai 2002 elle a demandé à la caisse la prise en charge des frais d'un traitement administré durant la période du 22 mai au 12 octobre 2001 par le docteur R._, médecin-dentiste. Par lettre du 2 septembre 2002, la caisse a rejeté cette demande, motif pris que le traitement en cause ne pouvait pas être pris en charge au titre de l'assurance obligatoire des soins. L'assurée ayant contesté ce mode de résolution du cas, la caisse a rendu une décision, le 22 octobre 2002, par laquelle elle a réitéré son refus d'allouer des prestations. Saisie d'une opposition, la caisse l'a rejetée par décision du 18 décembre 2002. Saisie d'une opposition, la caisse l'a rejetée par décision du 18 décembre 2002. B. Par lettre adressée le 17 janvier 2003 au directeur de la caisse, l'assurée a demandé à se voir notifier une nouvelle décision sur opposition, motif pris que la décision initiale du 22 octobre 2002 ne satisfaisait pas aux conditions de validité d'un tel acte juridique et que, partant, la seconde décision, du 18 décembre 2002, n'était pas une véritable décision sur opposition. Par écriture adressée le même jour à la caisse, l'intéressée a déclaré faire opposition à la décision du 18 décembre 2002, en concluant à la prise en charge du traitement dentaire administré par le docteur R._. Le 23 janvier 2003, la caisse a accusé réception des courriers du 17 janvier précédent. Elle a indiqué ne pas pouvoir donner une suite favorable à la requête et a réitéré les voies de droit contre la décision sur opposition du 18 décembre 2002. Le 23 janvier 2003, la caisse a accusé réception des courriers du 17 janvier précédent. Elle a indiqué ne pas pouvoir donner une suite favorable à la requête et a réitéré les voies de droit contre la décision sur opposition du 18 décembre 2002. C. Le 6 février 2003, S._ a recouru contre la décision sur opposition du 18 décembre 2002 devant le Tribunal administratif du canton de Genève (aujourd'hui : Tribunal cantonal des assurances sociales). Par jugement du 3 février 2004, la juridiction cantonale a déclaré le recours irrecevable au motif qu'il était tardif. Par jugement du 3 février 2004, la juridiction cantonale a déclaré le recours irrecevable au motif qu'il était tardif. D. S._ interjette recours de droit administratif contre ce jugement, dont elle requiert l'annulation, en concluant, sous suite de dépens, à ce que la juridiction cantonale entre en matière sur son recours. La caisse conclut au rejet du recours. L'Office fédéral de la santé publique a renoncé à présenter des déterminations.