XML 33 R35.htm IDEA: XBRL DOCUMENT v2.4.1.9
LOANS, Allowance for Loan Losses (Details) (USD $)
In Thousands, unless otherwise specified
3 Months Ended 12 Months Ended
Mar. 31, 2015
Mar. 31, 2014
Dec. 31, 2014
Allowance for credit losses [Roll Forward]      
Beginning balance $ 8,583us-gaap_FinancingReceivableAllowanceForCreditLosses $ 9,353us-gaap_FinancingReceivableAllowanceForCreditLosses $ 9,353us-gaap_FinancingReceivableAllowanceForCreditLosses
Provision for (reversal of) loan losses 350us-gaap_ProvisionForLoanLeaseAndOtherLosses 600us-gaap_ProvisionForLoanLeaseAndOtherLosses 1,800us-gaap_ProvisionForLoanLeaseAndOtherLosses
Charge-offs (67)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs (1,364)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs (2,821)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
Recoveries 28us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery 57us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery 251us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
Net charge-offs (39)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease (1,307)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease (2,570)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
Ending balance 8,894us-gaap_FinancingReceivableAllowanceForCreditLosses 8,646us-gaap_FinancingReceivableAllowanceForCreditLosses 8,583us-gaap_FinancingReceivableAllowanceForCreditLosses
Allowance for loan loss allocations for impairments [Abstract]      
Loans individually evaluated for impairment 850us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1 940us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1 860us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
Loans collectively evaluated for impairment 8,044us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment 7,706us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment 7,723us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
Ending balance 8,894us-gaap_FinancingReceivableAllowanceForCreditLosses 8,646us-gaap_FinancingReceivableAllowanceForCreditLosses 8,583us-gaap_FinancingReceivableAllowanceForCreditLosses
Loans individually and collectively evaluated for impairment [Abstract]      
Loans individually evaluated for impairment 10,500us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment 17,222us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment 10,704us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
Loans collectively evaluated for impairment 533,999us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment 495,349us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment 534,531us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
Ending Balance 544,499us-gaap_LoansAndLeasesReceivableGrossCarryingAmount 512,571us-gaap_LoansAndLeasesReceivableGrossCarryingAmount 545,235us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
Commercial [Member]      
Allowance for credit losses [Roll Forward]      
Beginning balance 3,581us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
3,199us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
3,199us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Provision for (reversal of) loan losses (268)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
1,133us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
2,612us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Charge-offs 0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
(1,062)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
(2,288)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Recoveries 12us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
12us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
58us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Net charge-offs 12us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
(1,050)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
(2,230)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Ending balance 3,325us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
3,282us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
3,581us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Allowance for loan loss allocations for impairments [Abstract]      
Loans individually evaluated for impairment 31us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
54us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
39us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Loans collectively evaluated for impairment 3,294us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
3,228us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
3,542us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Ending balance 3,325us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
3,282us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
3,581us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Loans individually and collectively evaluated for impairment [Abstract]      
Loans individually evaluated for impairment 2,578us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
4,502us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
2,678us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Loans collectively evaluated for impairment 113,355us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
108,276us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
118,073us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Ending Balance 115,933us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
112,778us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
120,751us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialPortfolioSegmentMember
Commercial Real Estate [Member]      
Allowance for credit losses [Roll Forward]      
Beginning balance 1,825us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
2,290us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
2,290us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Provision for (reversal of) loan losses 660us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
(140)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
(396)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Charge-offs 0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
(69)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Recoveries 0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Net charge-offs 0us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
(69)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Ending balance 2,485us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
2,150us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
1,825us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Allowance for loan loss allocations for impairments [Abstract]      
Loans individually evaluated for impairment 45us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
56us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
45us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Loans collectively evaluated for impairment 2,440us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
2,094us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
1,780us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Ending balance 2,485us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
2,150us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
1,825us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Loans individually and collectively evaluated for impairment [Abstract]      
Loans individually evaluated for impairment 960us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
3,692us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
976us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Loans collectively evaluated for impairment 263,920us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
240,253us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
255,979us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Ending Balance 264,880us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
243,945us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
256,955us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstatePortfolioSegmentMember
Agriculture [Member]      
Allowance for credit losses [Roll Forward]      
Beginning balance 580us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
557us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
557us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Provision for (reversal of) loan losses 66us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
(118)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
23us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Charge-offs 0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Recoveries 0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Net charge-offs 0us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Ending balance 646us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
439us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
580us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Allowance for loan loss allocations for impairments [Abstract]      
Loans individually evaluated for impairment 0us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Loans collectively evaluated for impairment 646us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
439us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
580us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Ending balance 646us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
439us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
580us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Loans individually and collectively evaluated for impairment [Abstract]      
Loans individually evaluated for impairment 0us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
1,029us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
0us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Loans collectively evaluated for impairment 54,719us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
39,897us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
61,144us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Ending Balance 54,719us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
40,926us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
61,144us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fnrn_AgricultureMember
Residential Mortgage [Member]      
Allowance for credit losses [Roll Forward]      
Beginning balance 1,181us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
1,216us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
1,216us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Provision for (reversal of) loan losses (134)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
(43)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
36us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Charge-offs 0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
(71)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Recoveries 0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Net charge-offs 0us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
(71)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Ending balance 1,047us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
1,173us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
1,181us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Allowance for loan loss allocations for impairments [Abstract]      
Loans individually evaluated for impairment 638us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
693us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
646us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Loans collectively evaluated for impairment 409us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
480us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
535us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Ending balance 1,047us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
1,173us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
1,181us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Loans individually and collectively evaluated for impairment [Abstract]      
Loans individually evaluated for impairment 4,595us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
5,394us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
4,647us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Loans collectively evaluated for impairment 45,101us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
47,361us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
45,864us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Ending Balance 49,696us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
52,755us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
50,511us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Residential Construction [Member]      
Allowance for credit losses [Roll Forward]      
Beginning balance 161us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
441us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
441us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Provision for (reversal of) loan losses 33us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
(185)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
(366)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Charge-offs 0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Recoveries 1us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
2us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
86us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Net charge-offs 1us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
2us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
86us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Ending balance 195us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
258us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
161us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Allowance for loan loss allocations for impairments [Abstract]      
Loans individually evaluated for impairment 105us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
118us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
107us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Loans collectively evaluated for impairment 90us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
140us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
54us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Ending balance 195us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
258us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
161us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Loans individually and collectively evaluated for impairment [Abstract]      
Loans individually evaluated for impairment 885us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
931us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
897us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Loans collectively evaluated for impairment 9,211us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
8,456us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
5,066us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Ending Balance 10,096us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
9,387us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
5,963us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialRealEstateMember
Consumer [Member]      
Allowance for credit losses [Roll Forward]      
Beginning balance 886us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
1,023us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
1,023us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Provision for (reversal of) loan losses (8)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
203us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
149us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Charge-offs (67)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
(302)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
(393)us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Recoveries 15us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
43us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
107us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Net charge-offs (52)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
(259)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
(286)us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Ending balance 826us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
967us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
886us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Allowance for loan loss allocations for impairments [Abstract]      
Loans individually evaluated for impairment 31us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
19us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
23us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Loans collectively evaluated for impairment 795us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
948us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
863us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Ending balance 826us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
967us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
886us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Loans individually and collectively evaluated for impairment [Abstract]      
Loans individually evaluated for impairment 1,482us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
1,674us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
1,506us-gaap_FinancingReceivableIndividuallyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Loans collectively evaluated for impairment 47,693us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
51,106us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
48,405us-gaap_FinancingReceivableCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Ending Balance 49,175us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
52,780us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
49,911us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ConsumerPortfolioSegmentMember
Unallocated [Member]      
Allowance for credit losses [Roll Forward]      
Beginning balance 369us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
627us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
627us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
Provision for (reversal of) loan losses 1us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
(250)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
(258)us-gaap_ProvisionForLoanLeaseAndOtherLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
Charge-offs 0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesWriteOffs
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
Recoveries 0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesRecovery
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
Net charge-offs 0us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesPeriodIncreaseDecrease
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
Ending balance 370us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
377us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
369us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
Allowance for loan loss allocations for impairments [Abstract]      
Loans individually evaluated for impairment 0us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
0us-gaap_FinancingReceivableAllowanceForCreditLossesIndividuallyEvaluatedForImpairment1
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
Loans collectively evaluated for impairment 370us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
377us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
369us-gaap_FinancingReceivableAllowanceForCreditLossesCollectivelyEvaluatedForImpairment
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
Ending balance $ 370us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
$ 377us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember
$ 369us-gaap_FinancingReceivableAllowanceForCreditLosses
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_UnallocatedFinancingReceivablesMember