 | us-gaap:FairValueInputsAssetsQuantitativeInformationTable | dep-concept-deprecatedConcept | http://fasb.org/us-gaap/role/deprecated/deprecated |
 | us-gaap:FairValueInputsLiabilitiesQuantitativeInformationTable | dep-concept-deprecatedConcept | http://fasb.org/us-gaap/role/deprecated/deprecated |
 | us-gaap:FairValueInputsInstrumentsClassifiedInShareholdersEquityQuantitativeInformationTable | dep-concept-deprecatedConcept | http://fasb.org/us-gaap/role/deprecated/deprecated |
 | us-gaap:FinancialInstrumentAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp01 |
 | us-gaap:FairValueByFairValueHierarchyLevelAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp01 |
 | us-gaap:EquitySecuritiesByIndustryAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp01 |
 | us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp01 |
 | us-gaap:FinancialInstrumentAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp01FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:FairValueByFairValueHierarchyLevelAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp01FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:EquitySecuritiesByIndustryAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp01FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | srt:RangeAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02 |
 | us-gaap:FinancialInstrumentAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02 |
 | us-gaap:ValuationTechniqueAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02 |
 | us-gaap:MeasurementInputTypeAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02 |
 | us-gaap:FairValueByFairValueHierarchyLevelAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02 |
 | us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02 |
 | srt:RangeAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:FinancialInstrumentAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:ValuationTechniqueAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:MeasurementInputTypeAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:FairValueByFairValueHierarchyLevelAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FairValueMeasuresAndDisclosuresTmp02FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:FinancialInstrumentAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | srt:RangeAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:ValuationTechniqueAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:FairValueByFairValueHierarchyLevelAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:MeasurementInputTypeAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosures |
 | us-gaap:FinancialInstrumentAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | srt:RangeAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:ValuationTechniqueAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:FairValueByFairValueHierarchyLevelAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:MeasurementInputTypeAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialInstrumentsFairValueDisclosuresFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:FinancialInstrumentAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | srt:ProductOrServiceAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | srt:RangeAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | us-gaap:ValuationTechniqueAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | us-gaap:FairValueByFairValueHierarchyLevelAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | us-gaap:MeasurementInputTypeAxis | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesLineItems | parent-child | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceA |
 | us-gaap:FinancialInstrumentAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceAFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | srt:ProductOrServiceAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceAFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | srt:RangeAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceAFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:ValuationTechniqueAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceAFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:FairValueByFairValueHierarchyLevelAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceAFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |
 | us-gaap:MeasurementInputTypeAxis | hypercube-dimension | http://fasb.org/us-gaap/role/disclosure/FinancialServicesInsuranceAFairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisValuationTechniquesTable |