On Android it runs on ART.
But Android tooling is heavy dependent on Java and Google even had to drop their Jack/Jill compiler replacement, because they weren't able to make it work properly with all the tooling that targets the JVM.
So they pivoted to translating JVM bytecodes into ART ones (originally Dalvik ones, DEX) again.
However even with the way Google has handled the Java story, the whole Android eco-system is heavyly dependent on it.
They also pivoted the Brillo project with the promise of a set of C++ userspace frameworks, into Android Things using Java instead, including the ability to write device drivers in Java.
Hence why thinking that Kotlin can manage without Java and its eco-system is kind of strange, even on Android.
EDIT: Of course it runs on Dalvik as well when targeting pre-Lolipop devices.