XML 21 R50.htm IDEA: XBRL DOCUMENT v2.4.1.9
Loan and Lease Receivables, Impaired Loans and Leases and Allowance for Loan and Lease Losses (Past Due Loans) (Details) (USD $)
In Thousands, unless otherwise specified
Mar. 31, 2015
Dec. 31, 2014
Mar. 31, 2014
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due $ 239us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue $ 364us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue  
60-89 days past due 157us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue 660us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue  
Greater than 90 days past due 3,053us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue 1,762us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue  
Total past due 3,449us-gaap_FinancingReceivableRecordedInvestmentPastDue 2,786us-gaap_FinancingReceivableRecordedInvestmentPastDue  
Current 1,294,618us-gaap_FinancingReceivableRecordedInvestmentCurrent 1,279,006us-gaap_FinancingReceivableRecordedInvestmentCurrent  
Non-accrual loans and leases 9,352us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus 9,792us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus  
Total gross loans and leases receivable 1,298,067us-gaap_LoansAndLeasesReceivableGrossCarryingAmount 1,281,792us-gaap_LoansAndLeasesReceivableGrossCarryingAmount 986,221us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
30 to 59 days past due, percent of total portfolio 0.02%fbiz_FinancingReceivableRecordedInvestment30To59DaysPastDuePercentOfPortfolio 0.03%fbiz_FinancingReceivableRecordedInvestment30To59DaysPastDuePercentOfPortfolio  
60 to 89 days past due, percent of total portfolio 0.01%fbiz_FinancingReceivableRecordedInvestment60To89DaysPastDuePercentOfPortfolio 0.05%fbiz_FinancingReceivableRecordedInvestment60To89DaysPastDuePercentOfPortfolio  
Greater than 90 days past due, percent of portfolio 0.24%fbiz_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDuePercentOfPortfolio 0.14%fbiz_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDuePercentOfPortfolio  
Past due, percent of total portfolio 0.27%fbiz_FinancingReceivableRecordedInvestmentPastDuePercentOfPortfolio 0.22%fbiz_FinancingReceivableRecordedInvestmentPastDuePercentOfPortfolio  
Current, percent of total portfolio 99.73%fbiz_FinancingReceivableRecordedInvestmentCurrentPercentOfPortfolio 99.78%fbiz_FinancingReceivableRecordedInvestmentCurrentPercentOfPortfolio  
Gross loans, percent of total portfolio 100.00%fbiz_FinancingReceivableRecordedInvestmentGrossPercentOfPortfolio 100.00%fbiz_FinancingReceivableRecordedInvestmentGrossPercentOfPortfolio  
Commercial real estate — owner occupied      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
 
Current 163,982us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
163,884us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
 
Non-accrual loans and leases 493us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
500us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
 
Total gross loans and leases receivable 163,982us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
163,884us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
 
Commercial real estate — non-owner occupied      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
 
60-89 days past due 24us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
215us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
 
Greater than 90 days past due 214us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
 
Total past due 238us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
215us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
 
Current 404,693us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
417,747us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
 
Non-accrual loans and leases 286us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
286us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
 
Total gross loans and leases receivable 404,931us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
417,962us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
 
Construction and land development      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
193us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
 
Greater than 90 days past due 193us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
 
Total past due 193us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
193us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
 
Current 121,018us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
120,967us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
 
Non-accrual loans and leases 4,849us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
4,932us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
 
Total gross loans and leases receivable 121,211us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
121,160us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
 
Multi-family      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
 
Current 84,163us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
72,578us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
 
Non-accrual loans and leases 14us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
17us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
 
Total gross loans and leases receivable 84,163us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
72,578us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
 
1-4 family      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 238us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
106us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
 
Greater than 90 days past due 296us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
306us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
 
Total past due 534us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
412us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
 
Current 39,625us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
35,770us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
 
Non-accrual loans and leases 910us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
690us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
 
Total gross loans and leases receivable 40,159us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
36,182us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
 
Commercial and industrial      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 1us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
364us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
 
60-89 days past due 81us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
146us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
 
Greater than 90 days past due 1,647us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
736us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
 
Total past due 1,729us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
1,246us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
 
Current 424,684us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
415,408us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
 
Non-accrual loans and leases 1,774us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
2,318us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
 
Total gross loans and leases receivable 426,413us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
416,654us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
303,630us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
Direct financing leases, net      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
 
Current 31,644us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
34,165us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
 
Non-accrual loans and leases 0us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
 
Total gross loans and leases receivable 31,644us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
34,165us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
26,364us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
Home equity and second mortgages      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
 
60-89 days past due 52us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
 
Total past due 52us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
 
Current 8,980us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
7,866us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
 
Non-accrual loans and leases 323us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
329us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
 
Total gross loans and leases receivable 9,032us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
7,866us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
 
Other      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
 
Greater than 90 days past due 703us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
720us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
 
Total past due 703us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
720us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
 
Current 15,829us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
10,621us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
 
Non-accrual loans and leases 703us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
720us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
 
Total gross loans and leases receivable 16,532us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
11,341us-gaap_LoansAndLeasesReceivableGrossCarryingAmount
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
 
Accruing loans and leases      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Current 1,288,715us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
1,272,000us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accrual loans and leases 1,288,715fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
1,272,000fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accruing loans and leases | Commercial real estate — owner occupied      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Current 163,489us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
163,384us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accrual loans and leases 163,489fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
163,384fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accruing loans and leases | Commercial real estate — non-owner occupied      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Current 404,645us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
417,676us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accrual loans and leases 404,645fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
417,676fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accruing loans and leases | Construction and land development      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Current 116,362us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
116,228us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accrual loans and leases 116,362fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
116,228fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accruing loans and leases | Multi-family      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Current 84,149us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
72,561us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accrual loans and leases 84,149fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
72,561fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accruing loans and leases | 1-4 family      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Current 39,249us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
35,492us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accrual loans and leases 39,249fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
35,492fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accruing loans and leases | Commercial and industrial      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Current 424,639us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
414,336us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accrual loans and leases 424,639fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
414,336fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accruing loans and leases | Direct financing leases, net      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Current 31,644us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
34,165us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accrual loans and leases 31,644fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
34,165fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accruing loans and leases | Home equity and second mortgages      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Current 8,709us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
7,537us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accrual loans and leases 8,709fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
7,537fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accruing loans and leases | Other      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Current 15,829us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
10,621us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Accrual loans and leases 15,829fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
10,621fbiz_FinancingReceivableRecordedInvestmentAccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PerformingFinancingReceivableMember
 
Non-accruing loans and leases      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 239us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
364us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
60-89 days past due 157us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
660us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Greater than 90 days past due 3,053us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
1,762us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Total past due 3,449us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
2,786us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Current 5,903us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
7,006us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accrual loans and leases 9,352us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
9,792us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accruing loans and leases | Commercial real estate — owner occupied      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Current 493us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
500us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accrual loans and leases 493us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
500us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accruing loans and leases | Commercial real estate — non-owner occupied      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
60-89 days past due 24us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
215us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Greater than 90 days past due 214us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Total past due 238us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
215us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Current 48us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
71us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accrual loans and leases 286us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
286us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accruing loans and leases | Construction and land development      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
193us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Greater than 90 days past due 193us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Total past due 193us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
193us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Current 4,656us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
4,739us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accrual loans and leases 4,849us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
4,932us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableConstructionAndLandDevelopmentMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accruing loans and leases | Multi-family      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Current 14us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
17us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accrual loans and leases 14us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
17us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivableMultiFamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accruing loans and leases | 1-4 family      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 238us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
106us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Greater than 90 days past due 296us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
306us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Total past due 534us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
412us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Current 376us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
278us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accrual loans and leases 910us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
690us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialRealEstateLoansReceivable14FamilyMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accruing loans and leases | Commercial and industrial      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 1us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
364us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
60-89 days past due 81us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
146us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Greater than 90 days past due 1,647us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
736us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Total past due 1,729us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
1,246us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Current 45us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
1,072us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accrual loans and leases 1,774us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
2,318us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_CommercialAndIndustrialLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accruing loans and leases | Direct financing leases, net      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Total past due 0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Current 0us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accrual loans and leases 0us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_FinanceLeasesFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accruing loans and leases | Home equity and second mortgages      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
60-89 days past due 52us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Greater than 90 days past due 0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Total past due 52us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Current 271us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
329us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accrual loans and leases 323us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
329us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_HomeEquityLoansAndSecondMortageLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accruing loans and leases | Other      
Financing Receivable, Recorded Investment, Aging [Abstract]      
30-59 days past due 0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment30To59DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
60-89 days past due 0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestment60To89DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Greater than 90 days past due 703us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
720us-gaap_FinancingReceivableRecordedInvestmentEqualToGreaterThan90DaysPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Total past due 703us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
720us-gaap_FinancingReceivableRecordedInvestmentPastDue
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Current 0us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
0us-gaap_FinancingReceivableRecordedInvestmentCurrent
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
 
Non-accrual loans and leases $ 703us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember
$ 720us-gaap_FinancingReceivableRecordedInvestmentNonaccrualStatus
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= fbiz_OtherLoansReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_NonperformingFinancingReceivableMember