XML 21 R43.htm IDEA: XBRL DOCUMENT v2.4.1.9
Loans, Allowance For Loan Losses and OREO (Credit Quality Information-By Class) (Details) (USD $)
In Thousands, unless otherwise specified
Mar. 31, 2015
Dec. 31, 2014
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables $ 408,318us-gaap_NotesReceivableNet $ 399,363us-gaap_NotesReceivableNet
Pass [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 385,737us-gaap_NotesReceivableNet
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
376,517us-gaap_NotesReceivableNet
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
Monitor [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 7,305us-gaap_NotesReceivableNet
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
5,841us-gaap_NotesReceivableNet
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
Special Mention [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 6,238us-gaap_NotesReceivableNet
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
5,667us-gaap_NotesReceivableNet
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
Substandard [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 9,038us-gaap_NotesReceivableNet
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
11,338us-gaap_NotesReceivableNet
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
Doubtful [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables     
Commercial [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 63,396us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialLoanMember
63,259us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialLoanMember
Commercial [Member] | Pass [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 60,888us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialLoanMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
58,745us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialLoanMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
Commercial [Member] | Monitor [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 676us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialLoanMember
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
725us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialLoanMember
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
Commercial [Member] | Special Mention [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 737us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialLoanMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
224us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialLoanMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
Commercial [Member] | Substandard [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 1,095us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialLoanMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
3,565us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialLoanMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
Commercial [Member] | Doubtful [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables     
Commercial Mortgages-Owner Occupied [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 79,025us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesOwnerOccupiedMember
77,708us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesOwnerOccupiedMember
Commercial Mortgages-Owner Occupied [Member] | Pass [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 72,558us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
71,087us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
Commercial Mortgages-Owner Occupied [Member] | Monitor [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 1,732us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
1,718us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
Commercial Mortgages-Owner Occupied [Member] | Special Mention [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 1,209us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
1,216us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
Commercial Mortgages-Owner Occupied [Member] | Substandard [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 3,526us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
3,687us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
Commercial Mortgages-Owner Occupied [Member] | Doubtful [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables     
Commercial Mortgages-Non-Owner Occupied [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 121,667us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesNonOwnerOccupiedMember
119,175us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesNonOwnerOccupiedMember
Commercial Mortgages-Non-Owner Occupied [Member] | Pass [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 113,064us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
112,560us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
Commercial Mortgages-Non-Owner Occupied [Member] | Monitor [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 3,095us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
1,586us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
Commercial Mortgages-Non-Owner Occupied [Member] | Special Mention [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 4,059us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
3,971us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
Commercial Mortgages-Non-Owner Occupied [Member] | Substandard [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 1,449us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
1,058us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_CommercialMortgagesNonOwnerOccupiedMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
Commercial Mortgages-Non-Owner Occupied [Member] | Doubtful [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables     
Commercial Construction [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 13,734us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
10,379us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
Commercial Construction [Member] | Pass [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 13,274us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
9,919us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
Commercial Construction [Member] | Substandard [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 460us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
460us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_CommercialRealEstateConstructionFinancingReceivableMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
Commercial Construction [Member] | Doubtful [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables     
Consumer Unsecured [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 5,087us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerUnsecuredMember
5,760us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerUnsecuredMember
Consumer Unsecured [Member] | Pass [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 5,087us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerUnsecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
5,673us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerUnsecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
Consumer Unsecured [Member] | Substandard [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables   87us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerUnsecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
Consumer Unsecured [Member] | Doubtful [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables     
Consumer Secured [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 72,637us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerSecuredMember
70,620us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerSecuredMember
Consumer Secured [Member] | Pass [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 71,433us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerSecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
69,527us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerSecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
Consumer Secured [Member] | Monitor [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 550us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerSecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
554us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerSecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
Consumer Secured [Member] | Special Mention [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 127us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerSecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
136us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerSecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
Consumer Secured [Member] | Substandard [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 527us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerSecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
403us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ConsumerSecuredMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
Consumer Secured [Member] | Doubtful [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables     
Residential Mortgages [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 45,750us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
44,944us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
Residential Mortgages [Member] | Pass [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 42,500us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
41,578us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
Residential Mortgages [Member] | Monitor [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 1,252us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
1,258us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= botj_MonitorMember
Residential Mortgages [Member] | Special Mention [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 106us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
120us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SpecialMentionMember
Residential Mortgages [Member] | Substandard [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 1,892us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
1,988us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= us-gaap_ResidentialMortgageMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
Residential Mortgages [Member] | Doubtful [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables     
Residential Consumer Construction [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 7,022us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ResidentialConsumerConstructionMember
7,518us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ResidentialConsumerConstructionMember
Residential Consumer Construction [Member] | Pass [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 6,933us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ResidentialConsumerConstructionMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
7,428us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ResidentialConsumerConstructionMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_PassMember
Residential Consumer Construction [Member] | Substandard [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables 89us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ResidentialConsumerConstructionMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
90us-gaap_NotesReceivableNet
/ us-gaap_FinancingReceivableRecordedInvestmentByClassOfFinancingReceivableAxis
= botj_ResidentialConsumerConstructionMember
/ us-gaap_InternalCreditAssessmentAxis
= us-gaap_SubstandardMember
Residential Consumer Construction [Member] | Doubtful [Member]    
Financing Receivable, Recorded Investment [Line Items]    
Financing receivables