XML 128 R84.htm IDEA: XBRL DOCUMENT v2.4.1.9
INVESTMENTS - Cumulative OTTI Credit Losses (Details) (USD $)
In Millions, unless otherwise specified
3 Months Ended
Mar. 31, 2015
Mar. 31, 2014
AFS debt securities    
Schedule of other-than-temporary impairment, credit losses recognized in earnings, roll forward    
Balance at beginning of period $ 733us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
$ 723us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
Credit impairments recognized in earnings on securities not previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
Credit impairments recognized in earnings on securities that have been previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
Reductions due to credit-impaired securities sold, transferred or matured (7)c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
Balance at end of period 726us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
723us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
AFS debt securities | Mortgage-backed securities    
Schedule of other-than-temporary impairment, credit losses recognized in earnings, roll forward    
Balance at beginning of period 295us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
295us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Credit impairments recognized in earnings on securities not previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Credit impairments recognized in earnings on securities that have been previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Reductions due to credit-impaired securities sold, transferred or matured 0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Balance at end of period 295us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
295us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
AFS debt securities | Foreign government securities    
Schedule of other-than-temporary impairment, credit losses recognized in earnings, roll forward    
Balance at beginning of period 171us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
171us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Credit impairments recognized in earnings on securities not previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Credit impairments recognized in earnings on securities that have been previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Reductions due to credit-impaired securities sold, transferred or matured (1)c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Balance at end of period 170us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
171us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
AFS debt securities | Corporate    
Schedule of other-than-temporary impairment, credit losses recognized in earnings, roll forward    
Balance at beginning of period 118us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
113us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Credit impairments recognized in earnings on securities not previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Credit impairments recognized in earnings on securities that have been previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Reductions due to credit-impaired securities sold, transferred or matured (6)c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Balance at end of period 112us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
113us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
AFS debt securities | Other debt securities    
Schedule of other-than-temporary impairment, credit losses recognized in earnings, roll forward    
Balance at beginning of period 149us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
144us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Credit impairments recognized in earnings on securities not previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Credit impairments recognized in earnings on securities that have been previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Reductions due to credit-impaired securities sold, transferred or matured 0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Balance at end of period 149us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
144us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_AvailableforsaleSecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
HTM debt securities    
Schedule of other-than-temporary impairment, credit losses recognized in earnings, roll forward    
Balance at beginning of period 803us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
867us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
Credit impairments recognized in earnings on securities not previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
Credit impairments recognized in earnings on securities that have been previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
Reductions due to credit-impaired securities sold, transferred or matured (2)c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
(13)c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
Balance at end of period 801us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
854us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
HTM debt securities | Mortgage-backed securities    
Schedule of other-than-temporary impairment, credit losses recognized in earnings, roll forward    
Balance at beginning of period 670us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
678us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Credit impairments recognized in earnings on securities not previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Credit impairments recognized in earnings on securities that have been previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Reductions due to credit-impaired securities sold, transferred or matured (2)c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
(13)c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Balance at end of period 668us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
665us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
HTM debt securities | Corporate    
Schedule of other-than-temporary impairment, credit losses recognized in earnings, roll forward    
Balance at beginning of period 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
56us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Credit impairments recognized in earnings on securities not previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Credit impairments recognized in earnings on securities that have been previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Reductions due to credit-impaired securities sold, transferred or matured 0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
Balance at end of period 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
56us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_CorporateDebtSecuritiesMember
HTM debt securities | Other debt securities    
Schedule of other-than-temporary impairment, credit losses recognized in earnings, roll forward    
Balance at beginning of period 133us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
133us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Credit impairments recognized in earnings on securities not previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsNoPreviousImpairment
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Credit impairments recognized in earnings on securities that have been previously impaired 0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
0us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsAdditionsAdditionalCreditLosses
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Reductions due to credit-impaired securities sold, transferred or matured 0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
0c_OtherThanTemporaryCreditImpairmentReductionsDueToSaleOfCreditImpairedSecuritiesSoldOrMatured
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
Balance at end of period $ 133us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember
$ 133us-gaap_OtherThanTemporaryImpairmentCreditLossesRecognizedInEarningsCreditLossesOnDebtSecuritiesHeld
/ us-gaap_InformationByCategoryOfDebtSecurityAxis
= us-gaap_HeldtomaturitySecuritiesMember
/ invest_InvestmentAxis
= us-gaap_OtherDebtSecuritiesMember