<?xml version='1.0' encoding='utf-8'?>
<FilingSummary>
  <Version>3.26.1</Version>
  <ProcessingTime/>
  <ReportFormat>html</ReportFormat>
  <ContextCount>62</ContextCount>
  <ElementCount>13</ElementCount>
  <EntityCount>1</EntityCount>
  <FootnotesReported>true</FootnotesReported>
  <SegmentCount>23</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <TuplesReported>false</TuplesReported>
  <UnitCount>1</UnitCount>
  <MyReports>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R1.htm</HtmlFileName>
      <LongName>010000 - Disclosure - Form N-1A Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://xbrl.sec.gov/rr/role/N1aCover</Role>
      <ShortName>Form N-1A Cover</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>1</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R2.htm</HtmlFileName>
      <LongName>110000 - Disclosure - Lifestyle Balanced Portfolio N-1A Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/1/role/N1aCover</Role>
      <ShortName>Lifestyle Balanced Portfolio N-1A Cover</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>2</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R3.htm</HtmlFileName>
      <LongName>110003 - Disclosure - Lifestyle Balanced Portfolio Investment Strategy</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/1/role/InvestmentStrategy</Role>
      <ShortName>Lifestyle Balanced Portfolio Investment Strategy</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>3</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R4.htm</HtmlFileName>
      <LongName>110005 - Disclosure - Lifestyle Balanced Portfolio Performance Management</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/1/role/PerformanceManagement</Role>
      <ShortName>Lifestyle Balanced Portfolio Performance Management</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>4</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R5.htm</HtmlFileName>
      <LongName>120060 - Disclosure - Lifestyle Balanced Portfolio Average Annual Total Returns</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/1/role/PerformanceTableData</Role>
      <ShortName>Lifestyle Balanced Portfolio Average Annual Total Returns</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>5</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R6.htm</HtmlFileName>
      <LongName>210000 - Disclosure - Managed Volatility Growth Portfolio N-1A Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/2/role/N1aCover</Role>
      <ShortName>Managed Volatility Growth Portfolio N-1A Cover</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>6</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R7.htm</HtmlFileName>
      <LongName>210003 - Disclosure - Managed Volatility Growth Portfolio Investment Strategy</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/2/role/InvestmentStrategy</Role>
      <ShortName>Managed Volatility Growth Portfolio Investment Strategy</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>7</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R8.htm</HtmlFileName>
      <LongName>210005 - Disclosure - Managed Volatility Growth Portfolio Performance Management</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/2/role/PerformanceManagement</Role>
      <ShortName>Managed Volatility Growth Portfolio Performance Management</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>8</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R9.htm</HtmlFileName>
      <LongName>220060 - Disclosure - Managed Volatility Growth Portfolio Average Annual Total Returns</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/2/role/PerformanceTableData</Role>
      <ShortName>Managed Volatility Growth Portfolio Average Annual Total Returns</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>9</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R10.htm</HtmlFileName>
      <LongName>310000 - Disclosure - Managed Volatility Balanced Portfolio N-1A Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/3/role/N1aCover</Role>
      <ShortName>Managed Volatility Balanced Portfolio N-1A Cover</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>10</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R11.htm</HtmlFileName>
      <LongName>310003 - Disclosure - Managed Volatility Balanced Portfolio Investment Strategy</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/3/role/InvestmentStrategy</Role>
      <ShortName>Managed Volatility Balanced Portfolio Investment Strategy</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>11</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R12.htm</HtmlFileName>
      <LongName>310005 - Disclosure - Managed Volatility Balanced Portfolio Performance Management</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/3/role/PerformanceManagement</Role>
      <ShortName>Managed Volatility Balanced Portfolio Performance Management</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>12</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R13.htm</HtmlFileName>
      <LongName>320060 - Disclosure - Managed Volatility Balanced Portfolio Average Annual Total Returns</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/3/role/PerformanceTableData</Role>
      <ShortName>Managed Volatility Balanced Portfolio Average Annual Total Returns</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>13</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R14.htm</HtmlFileName>
      <LongName>410000 - Disclosure - Managed Volatility Conservative Portfolio N-1A Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/4/role/N1aCover</Role>
      <ShortName>Managed Volatility Conservative Portfolio N-1A Cover</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>14</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R15.htm</HtmlFileName>
      <LongName>510000 - Disclosure - Managed Volatility Moderate Portfolio N-1A Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/5/role/N1aCover</Role>
      <ShortName>Managed Volatility Moderate Portfolio N-1A Cover</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>15</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R16.htm</HtmlFileName>
      <LongName>610000 - Disclosure - Lifestyle Growth Portfolio N-1A Cover</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/6/role/N1aCover</Role>
      <ShortName>Lifestyle Growth Portfolio N-1A Cover</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>16</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R17.htm</HtmlFileName>
      <LongName>610003 - Disclosure - Lifestyle Growth Portfolio Investment Strategy</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/6/role/InvestmentStrategy</Role>
      <ShortName>Lifestyle Growth Portfolio Investment Strategy</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>17</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R18.htm</HtmlFileName>
      <LongName>610005 - Disclosure - Lifestyle Growth Portfolio Performance Management</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/6/role/PerformanceManagement</Role>
      <ShortName>Lifestyle Growth Portfolio Performance Management</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>18</Position>
    </Report>
    <Report instance="d124533d497.htm">
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <HtmlFileName>R19.htm</HtmlFileName>
      <LongName>620060 - Disclosure - Lifestyle Growth Portfolio Average Annual Total Returns</LongName>
      <ReportType>Sheet</ReportType>
      <Role>http://www.johnhancock.com/6/role/PerformanceTableData</Role>
      <ShortName>Lifestyle Growth Portfolio Average Annual Total Returns</ShortName>
      <MenuCategory>Risk/Return</MenuCategory>
      <Position>19</Position>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <HasEmbeddedReports>false</HasEmbeddedReports>
      <LongName>All Reports</LongName>
      <ReportType>Book</ReportType>
      <ShortName>All Reports</ShortName>
    </Report>
  </MyReports>
  <InputFiles>
    <File doctype="497" isN1a="true" isN2Prospectus="true" isOEF="true" isRRorOEF="true" isUsgaap="true" original="d124533d497.htm">d124533d497.htm</File>
    <File>jhf-20241231.xsd</File>
  </InputFiles>
  <SupplementalFiles>
    <File>g124533jh_blk.gif</File>
  </SupplementalFiles>
  <BaseTaxonomies>
    <BaseTaxonomy items="6">http://xbrl.sec.gov/dei/2024</BaseTaxonomy>
    <BaseTaxonomy items="102">http://xbrl.sec.gov/oef/2024q3</BaseTaxonomy>
  </BaseTaxonomies>
  <HasPresentationLinkbase>false</HasPresentationLinkbase>
  <HasCalculationLinkbase>false</HasCalculationLinkbase>
</FilingSummary>
