const_cast
is specified to do very specific things. It can convert lvalues to lvalue references and rvalues to rvalue references. It can convert between pointers. It cannot convert from an rvalue to an lvalue reference, even a const one. Read 5.2.11 for the exact listing what the cast can do; what that section doesn't list, it can't do.
static_cast
can do other things, as listed in 5.2.9. Among them, it can convert from rvalue to lvalue reference to const.