The KIND values associated with one type have no relation to those of another type, so this is definitely not standard or portable. In fact, many people believe that the KIND values for different types (integer, real, logical) should all be distinct so that the common mistake of mixing types and kinds can be detected at compile time. Some compilers already optionally allow for this convention. The exception to this is the KIND values for real and complex, which are required by the standard to match.
Also, some compilers assign KIND values of 1 to the default integer, real, or logical types, and 2 to the extended precision kinds (double precision and 64-bit integer). So on these compilers, declaring LOGICAL(1) would be a 32-bit quantity, not an 8-bit quantity. The NAG compiler documentation says, “The compiler option ‘-kind=sequential’ (the default), ‘-kind=byte’ or ‘-kind=unique’ selects the method.”
I personally would like to see a 1-bit logical kind value supported, along with a 1-bit integer kind. Bit strings have been one of the most frequently requested features in fortran since the 1980s.