What is the evidence that that types are more basic specifications, and specifications are more detailed types?
As Gilles points out, it depends on what you count as types. If you mean by types something like
types in Java or Scala or Haskell, then this is clearly true.

One easy way to see this is (simplifying a bit) to use a general framework of
specifications to express the behavioural content of types as a
specific case of specification. The best framework to do this at the
moment is $\pi$-calculus as a programming language and Hennessy-Milner
logic as a specification language. I suggest to choose $\pi$-calculus
because it's expressive, and well studied. In particular, most
sequential programming languages are easily seen to be (behaviourally
equivalent to) specific sub-calculi of $\pi$-calculus.  Hennessy-Milner
logic is an expressive modal logic that can be used to nail down
processes up to behavioural equivalence.  Now we take an arbitarty
type, say the function space constructor
$
   int \rightarrow bool
$
and express the constraints this type imposes on programs as a
specification in Hennessy-Milner logic.

Conversely, we need to show that specifications are strictly more
expressive than types but that's fairly obvious, for we cannot specify
e.g. that a method is sorting its input array.