cm:Level3TextBlock: us-gaap:ScheduleOfValuationAllowanceForImpairmentOfRecognizedServicingAssetsTextBlock
       
          
          | Schedule of Valuation Allowance for Impairment of Recognized Servicing Assets [Table Text Block] | 
       
       
          
          | us-gaap:ScheduleOfValuationAllowanceForImpairmentOfRecognizedServicingAssetsTextBlock | 
       
       
          
          | Tabular disclosure of the activity by class in any valuation allowance for impairment of recognized servicing assets - including beginning and ending balances, aggregate additions charged and recoveries credited to operations, and aggregate write-downs charged against allowance. | 
       
       
          
          | cm:Level3TextBlock | 
       
       
          
          | Text Block (HTML) (nonnum:textBlockItemType) | 
       
       
          
          | For Period (duration) | 
       
       
          
          | (no balance type) | 
       
       
          
          | false | 
       
       
          
          | us-gaap:ScheduleOfValuationAllowanceForImpairmentOfRecognizedServicingAssetsTextBlock |