| 15. Income Taxes (Details-Deferred income taxes) - USD ($) | Dec. 31, 2019 | Dec. 31, 2018 | 
|---|---|---|
| Deferred tax assets: | ||
| NOL Carryover | $ 10,068,800 | $ 8,278,500 | 
| Lease Liability | 1,166,400 | 0 | 
| Inventory Reserve | 0 | 7,300 | 
| Deferred Rent | 0 | 10,600 | 
| Accrued Compensated Absences | 27,800 | 37,100 | 
| Secured Convertible Notes | 2,000 | 0 | 
| Charitable Contributions | 6,900 | 6,900 | 
| Deferred tax assets | 11,271,900 | 8,340,400 | 
| Valuation Allowance | (10,068,700) | (7,619,300) | 
| Deferred tax liabilities: | ||
| Convertible Notes | 0 | (658,800) | 
| Right of Use Assets | (1,122,100) | 0 | 
| Deferred rent | (12,100) | 0 | 
| Depreciation and Amortization | (48,900) | (49,100) | 
| Prepaid Expenses | (20,100) | (13,200) | 
| Net deferred tax asset | $ 0 | $ 0 | 
| X | ||||||||||
| 
- Definition Amount before allocation of valuation allowances of deferred tax asset attributable to deductible charitable contribution carryforwards. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from inventory. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount after allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences and carryforwards. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- References No definition available. 
 | 
| X | ||||||||||
| 
- Definition Amount before allocation of valuation allowances of deferred tax asset attributable to deductible operating loss carryforwards. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount, before allocation of valuation allowance, of deferred tax asset attributable to deductible temporary differences, classified as other. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from compensated absences (includes, but not limited to, sick and personal days). Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from reserves and accruals. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount before allocation of valuation allowances of deferred tax asset attributable to deductible temporary differences from deferred rent. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount of deferred tax assets for which it is more likely than not that a tax benefit will not be realized. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- References No definition available. 
 | 
| X | ||||||||||
| 
- Definition Amount of deferred tax liability attributable to taxable temporary differences from financing arrangements. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount of deferred tax liability attributable to taxable temporary differences from leasing arrangements. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount of deferred tax consequences attributable to taxable temporary differences derived from prepaid expenses. No definition available. 
 | 
| X | ||||||||||
| 
- Definition Amount of deferred tax liability attributable to taxable temporary differences from property, plant, and equipment. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 | 
| X | ||||||||||
| 
- Definition Amount of deferred tax liability attributable to taxable temporary differences from tax deferred revenue or income classified as other. Reference 1: http://fasb.org/us-gaap/role/ref/legacyRef 
 |