Thin, but not at all sheer, cotton. Comfy. The top is not fitted, and it drapes nicely. The bottoms do have a very slight flair at the hemline, but not as exaggerated as it seems in the product image (which I think looks more pronounced because the model's legs are so long). I have docked a couple of stars because I don't think these should cost more than $20, and they're selling them for three times as much. They're very nice, but nothing special so as to justify such an inflated price. You can find PJs of similar quality and comfort for around $20, no problem.