 | us-gaap:ScheduleOfRetainedEarningsAdjustmentsTable | dep-concept-deprecatedConcept | http://fasb.org/us-gaap/role/deprecated/deprecated |
 | us-gaap:StatementEquityComponentsAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp061 |
 | srt:RestatementAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp061 |
 | us-gaap:AdjustmentsForNewAccountingPronouncementsAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp061 |
 | us-gaap:NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp061 |
 | us-gaap:StatementEquityComponentsAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp061NewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | srt:RestatementAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp061NewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AdjustmentsForNewAccountingPronouncementsAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp061NewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | srt:RestatementAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp062 |
 | us-gaap:AdjustmentsForNewAccountingPronouncementsAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp062 |
 | us-gaap:NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp062 |
 | srt:RestatementAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp062NewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AdjustmentsForNewAccountingPronouncementsAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceLongDurationContractsTmp062NewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AdjustmentsForNewAccountingPronouncementsAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | srt:CumulativeEffectPeriodOfAdoptionAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | srt:RestatementAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AdjustmentsForChangeInAccountingPrincipleAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:ChangeInAccountingPrincipleIndirectEffectAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrections |
 | us-gaap:AdjustmentsForNewAccountingPronouncementsAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | srt:CumulativeEffectPeriodOfAdoptionAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | srt:RestatementAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AdjustmentsForChangeInAccountingPrincipleAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:ChangeInAccountingPrincipleIndirectEffectAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/AccountingChangesAndErrorCorrectionsNewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:AdjustmentsForNewAccountingPronouncementsAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | us-gaap:StatementEquityComponentsAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | srt:RestatementAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | us-gaap:NewAccountingPronouncementsOrChangeInAccountingPrincipleLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | us-gaap:AdjustmentsForNewAccountingPronouncementsAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceANewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | us-gaap:StatementEquityComponentsAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceANewAccountingPronouncementsOrChangeInAccountingPrincipleTable |
 | srt:RestatementAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceANewAccountingPronouncementsOrChangeInAccountingPrincipleTable |