「体が硬い」は
My body is inflexible. や
My joints are stiff.
などと言えると思います。
inflexible は「曲げられない」
stiff は「硬い」という意味です。
逆に「体が柔らかい」は
My body is flexible. や
I'm quite supple. と言えます。
flexible は「柔軟な」
supple は「しなやかな、柔軟性のある」という意味です。
ご参考になれば幸いです!
具体的な身体の部分で、筋肉が硬いことを表現する場合にはtightもよく使われます。
My hamstrings are so tight.(腿の裏側がすごく硬い)
My neck muscles are tight.(首の筋肉が硬い)
関節が硬い場合はstiffと表現します。
My knee joints are stiff.(膝の関節が硬い)
身体全体の柔軟性について話す場合は、not flexibleと表現できます。
not flexibleはinflexibleのことですが、not flexibleと表現されることのほうが多いように思います。