XML 39 R79.htm IDEA: XBRL DOCUMENT v2.4.1.9
INVESTMENTS - Debt Securities Held-to-Maturity (Details) (USD $)
In Millions, unless otherwise specified
Mar. 31, 2015
Dec. 31, 2014
Debt Securities Held-to-maturity    
Amortized cost $ 23,925us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment $ 24,701us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
Net unrealized gains (losses) recognized in AOCI (671)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax (780)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
Carrying value 23,254us-gaap_HeldToMaturitySecurities 23,921us-gaap_HeldToMaturitySecurities
Gross unrecognized gains 1,154us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain 1,111us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
Gross unrecognized losses (367)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss (361)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
Fair value 24,041us-gaap_HeldToMaturitySecuritiesFairValue 24,671us-gaap_HeldToMaturitySecuritiesFairValue
Mortgage-backed securities - U.S. agency-sponsored    
Debt Securities Held-to-maturity    
Amortized cost 8,879us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
8,795us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Net unrealized gains (losses) recognized in AOCI 93c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
95c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Carrying value 8,972us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
8,890us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Gross unrecognized gains 209us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
106us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Gross unrecognized losses (2)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
(6)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Fair value 9,179us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
8,990us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesIssuedByUSGovernmentCorporationsAndAgenciesMember
Mortgage-backed securities - Prime    
Debt Securities Held-to-maturity    
Amortized cost 59us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
60us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
Net unrealized gains (losses) recognized in AOCI (12)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
(12)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
Carrying value 47us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
48us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
Gross unrecognized gains 5us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
6us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
Gross unrecognized losses (1)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
(1)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
Fair value 51us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
53us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesPrimeMember
Mortgage-backed securities - Alt-A    
Debt Securities Held-to-maturity    
Amortized cost 1,094us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
1,125us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
Net unrealized gains (losses) recognized in AOCI (203)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
(213)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
Carrying value 891us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
912us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
Gross unrecognized gains 548us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
537us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
Gross unrecognized losses (293)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
(287)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
Fair value 1,146us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
1,162us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesAltAMember
Mortgage-backed securities - Subprime    
Debt Securities Held-to-maturity    
Amortized cost 5us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
6us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
Net unrealized gains (losses) recognized in AOCI 0c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
(1)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
Carrying value 5us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
5us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
Gross unrecognized gains 15us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
15us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
Gross unrecognized losses 0us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
0us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
Fair value 20us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
20us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= c_MortgageBackedSecuritiesSubprimeMember
Mortgage-backed securities - Non-U.S. residential    
Debt Securities Held-to-maturity    
Amortized cost 607us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
983us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
Net unrealized gains (losses) recognized in AOCI (86)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
(137)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
Carrying value 521us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
846us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
Gross unrecognized gains 59us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
92us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
Gross unrecognized losses 0us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
0us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
Fair value 580us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
938us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= c_ForeignResidentialMortgageBackedSecuritiesMember
Mortgage-backed securities - Commercial    
Debt Securities Held-to-maturity    
Amortized cost 7us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
8us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Net unrealized gains (losses) recognized in AOCI 0c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
0c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Carrying value 7us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
8us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Gross unrecognized gains 1us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
1us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Gross unrecognized losses 0us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
0us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Fair value 8us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
9us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= us-gaap_CommercialMortgageBackedSecuritiesMember
Mortgage-backed securities    
Debt Securities Held-to-maturity    
Amortized cost 10,651us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
10,977us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Net unrealized gains (losses) recognized in AOCI (208)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
(268)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Carrying value 10,443us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
10,709us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Gross unrecognized gains 837us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
757us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Gross unrecognized losses (296)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
(294)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
Fair value 10,984us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
11,172us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= us-gaap_MortgageBackedSecuritiesMember
State and municipal securities    
Debt Securities Held-to-maturity    
Amortized cost 8,374us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
8,443us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Net unrealized gains (losses) recognized in AOCI (446)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
(494)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Carrying value 7,928us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
7,949us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Gross unrecognized gains 211us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
227us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Gross unrecognized losses (70)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
(57)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Fair value 8,069us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
8,119us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= us-gaap_USStatesAndPoliticalSubdivisionsMember
Foreign government    
Debt Securities Held-to-maturity    
Amortized cost 4,550us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
4,725us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Net unrealized gains (losses) recognized in AOCI 0c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
0c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Carrying value 4,550us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
4,725us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Gross unrecognized gains 51us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
77us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Gross unrecognized losses 0us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
0us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Fair value 4,601us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
4,802us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= us-gaap_ForeignGovernmentDebtSecuritiesMember
Asset-backed securities    
Debt Securities Held-to-maturity    
Amortized cost 350us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
556us-gaap_HeldToMaturitySecuritiesAmortizedCostBeforeOtherThanTemporaryImpairment
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Net unrealized gains (losses) recognized in AOCI (17)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
(18)c_HeldtoMaturitySecuritiesAccumulatedUnrecognizedGainLossIncludingOtherthanTemporaryImpairmentNotCreditLossPreTax
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Carrying value 333us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
538us-gaap_HeldToMaturitySecurities
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Gross unrecognized gains 55us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
50us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingGain
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Gross unrecognized losses (1)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
(10)us-gaap_HeldToMaturitySecuritiesAccumulatedUnrecognizedHoldingLoss
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
Fair value $ 387us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember
$ 578us-gaap_HeldToMaturitySecuritiesFairValue
/ invest_InvestmentAxis
= us-gaap_AssetBackedSecuritiesMember