<?xml version="1.0" encoding="utf-8"?>
<FilingSummary xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <Version>2.4.0.8</Version>
  <ProcessingTime />
  <ReportFormat>Html</ReportFormat>
  <ContextCount>6</ContextCount>
  <ElementCount>15</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>false</FootnotesReported>
  <SegmentCount>6</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>4</UnitCount>
  <MyReports>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>010000 - Document - Risk/Return Summary {Unlabeled}</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/rr/role/RiskReturn</Role>
      <ShortName>Risk/Return Summary</ShortName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>true</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>030000 - Document - Risk/Return Detail {Unlabeled}</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/rr/role/RiskReturnDetail</Role>
      <ShortName>Risk/Return Detail</ShortName>
    </Report>
    <Report>
      <IsDefault>true</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <Logs />
  <InputFiles>
    <File>jhvit-20140228.xml</File>
    <File>jhvit-20140228.xsd</File>
    <File>jhvit-20140228_cal.xml</File>
    <File>jhvit-20140228_def.xml</File>
    <File>jhvit-20140228_lab.xml</File>
    <File>jhvit-20140228_pre.xml</File>
  </InputFiles>
  <SupplementalFiles />
  <BaseTaxonomies />
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
