<?xml version="1.0" encoding="UTF-8"?>
<informationTable
	xmlns="http://www.sec.gov/edgar/document/thirteenf/informationtable">
	<infoTable>
		<nameOfIssuer>Accenture Ltd. Cl. A</nameOfIssuer>
		<titleOfClass>SHS CLASS A</titleOfClass>
		<cusip>G1151C101</cusip>
		<value>10406520</value>
		<shrsOrPrnAmt>
			<sshPrnamt>42200</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>10406520</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Alphabet Inc. Class A</nameOfIssuer>
		<titleOfClass>CAP STK CL A</titleOfClass>
		<cusip>02079K305</cusip>
		<value>34138533</value>
		<shrsOrPrnAmt>
			<sshPrnamt>140430</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>34138533</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Alphabet Inc. Class C</nameOfIssuer>
		<titleOfClass>CAP STK CL C</titleOfClass>
		<cusip>02079K107</cusip>
		<value>510237</value>
		<shrsOrPrnAmt>
			<sshPrnamt>2095</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>510237</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>American Express</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>025816109</cusip>
		<value>29860188</value>
		<shrsOrPrnAmt>
			<sshPrnamt>89897</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>29860188</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Apple Inc.</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>037833100</cusip>
		<value>19822436</value>
		<shrsOrPrnAmt>
			<sshPrnamt>77848</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>19822436</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Becton Dickinson &amp; Co.</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>075887109</cusip>
		<value>16719335</value>
		<shrsOrPrnAmt>
			<sshPrnamt>89327</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>16719335</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Berkshire Hathaway B</nameOfIssuer>
		<titleOfClass>CL B NEW</titleOfClass>
		<cusip>084670702</cusip>
		<value>20774222</value>
		<shrsOrPrnAmt>
			<sshPrnamt>41322</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>20774222</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Comcast Corp.</nameOfIssuer>
		<titleOfClass>CL A</titleOfClass>
		<cusip>20030N101</cusip>
		<value>11309598</value>
		<shrsOrPrnAmt>
			<sshPrnamt>359949</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>11309598</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Diageo PLC Sponsored ADR</nameOfIssuer>
		<titleOfClass>SPON ADR NEW</titleOfClass>
		<cusip>25243Q205</cusip>
		<value>6646986</value>
		<shrsOrPrnAmt>
			<sshPrnamt>69653</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>6646986</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Microsoft Corp.</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>594918104</cusip>
		<value>37854894</value>
		<shrsOrPrnAmt>
			<sshPrnamt>73086</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>37854894</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Novartis AG (ADR)</nameOfIssuer>
		<titleOfClass>SPONSORED ADR</titleOfClass>
		<cusip>66987V109</cusip>
		<value>17447052</value>
		<shrsOrPrnAmt>
			<sshPrnamt>136050</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>17447052</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Oracle Corp.</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>68389X105</cusip>
		<value>26749861</value>
		<shrsOrPrnAmt>
			<sshPrnamt>95114</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>26749861</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Pepsico Inc.</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>713448108</cusip>
		<value>12836216</value>
		<shrsOrPrnAmt>
			<sshPrnamt>91400</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>12836216</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Visa Inc. Cl. A</nameOfIssuer>
		<titleOfClass>COM CL A</titleOfClass>
		<cusip>92826C839</cusip>
		<value>24602915</value>
		<shrsOrPrnAmt>
			<sshPrnamt>72069</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>24602915</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Wal-Mart Inc.</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>931142103</cusip>
		<value>35514991</value>
		<shrsOrPrnAmt>
			<sshPrnamt>344605</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>35514991</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Bank of Nova Scotia</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>064149107</cusip>
		<value>13253397</value>
		<shrsOrPrnAmt>
			<sshPrnamt>205206</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>13253397</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Canadian National Railway</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>136375102</cusip>
		<value>13894670</value>
		<shrsOrPrnAmt>
			<sshPrnamt>147516</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>13894670</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Royal Bank of Canada</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>780087102</cusip>
		<value>29429525</value>
		<shrsOrPrnAmt>
			<sshPrnamt>199909</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>29429525</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>TC Energy Corp.</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>87807B107</cusip>
		<value>14794742</value>
		<shrsOrPrnAmt>
			<sshPrnamt>269395</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>14794742</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Toronto Dominion Bank</nameOfIssuer>
		<titleOfClass>COM NEW</titleOfClass>
		<cusip>891160509</cusip>
		<value>19361110</value>
		<shrsOrPrnAmt>
			<sshPrnamt>242421</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>19361110</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Fortis Inc.</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>349553107</cusip>
		<value>10515749</value>
		<shrsOrPrnAmt>
			<sshPrnamt>207565</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>10515749</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
	<infoTable>
		<nameOfIssuer>Canadian Pacific Kansas City</nameOfIssuer>
		<titleOfClass>COM</titleOfClass>
		<cusip>13646K108</cusip>
		<value>9930714</value>
		<shrsOrPrnAmt>
			<sshPrnamt>133496</sshPrnamt>
			<sshPrnamtType>SH</sshPrnamtType>
		</shrsOrPrnAmt>
		<investmentDiscretion>SOLE</investmentDiscretion>
		<votingAuthority>
			<Sole>9930714</Sole>
			<Shared>0</Shared>
			<None>0</None>
		</votingAuthority>
	</infoTable>
</informationTable>
