CSS セレクタで使用できる文字
CSSのセレクタ名で使える文字は、HTMLでの名前文字より制約が厳しく、「"使用できる文字は大小アルファベットと数字 [A-Za-z0-9] 、ASCII以外のUnicode文字、およびハイフン(-)とアンダースコア(_)に限る。識別名は数字もしくはハイフンと数字の組合せで始めることはできない。また、セレクタの要素型名、クラス名、ID名はハイフンで始めることはできない"」とされています。
http://www.kanzaki.com/docs/html/htminfo17.html#S32
なお、ピリオド( . )などの文字は、「\」でエスケープすればセレクタに用いることができます。
http://www.kanzaki.com/docs/html/htminfo17.html#S32