<?xml version="1.0" encoding="utf-8"?>
<FilingSummary xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
  <Version>2.2.0.25</Version>
  <ReportType />
  <MyReports>
    <Report>
      <IsDefault>true</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>00 - Document - Document and Entity Information</LongName>
      <ShortName>Document and Entity Information</ShortName>
      <Role>http://emcorgroup.com/role/DocumentAndEntityInformation</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R1.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0110 - Statement - Condensed Consolidated Balance Sheets</LongName>
      <ShortName>Condensed Consolidated Balance Sheets</ShortName>
      <Role>http://emcorgroup.com/role/BalanceSheets</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R2.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0111 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)</LongName>
      <ShortName>Condensed Consolidated Balance Sheets (Parenthetical)</ShortName>
      <Role>http://emcorgroup.com/role/BalanceSheetsParenthetical</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R3.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0120 - Statement - Condensed Consolidated Statements of Operations (Unaudited)</LongName>
      <ShortName>Condensed Consolidated Statements of Operations (Unaudited)</ShortName>
      <Role>http://emcorgroup.com/role/StatementsOfOperations</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R4.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0130 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)</LongName>
      <ShortName>Condensed Consolidated Statements of Cash Flows (Unaudited)</ShortName>
      <Role>http://emcorgroup.com/role/StatementsOfCashFlows</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R5.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0140 - Statement - Condensed Consolidated Statements of Equity and Comprehensive Income (Unaudited)</LongName>
      <ShortName>Condensed Consolidated Statements of Equity and Comprehensive Income (Unaudited)</ShortName>
      <Role>http://emcorgroup.com/role/StatementsOfEquityAndComprehensiveIncome</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R6.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0141 - Statement - Condensed Consolidated Statements of Equity and Comprehensive Income (Unaudited) (Parenthetical)</LongName>
      <ShortName>Condensed Consolidated Statements of Equity and Comprehensive Income (Unaudited) (Parenthetical)</ShortName>
      <Role>http://emcorgroup.com/role/StatementsOfEquityAndComprehensiveIncomeParenthetical</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R7.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0201 - Disclosure - Basis of Presentation</LongName>
      <ShortName>Basis of Presentation</ShortName>
      <Role>http://emcorgroup.com/role/BasisOfPresentation</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R8.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0202 - Disclosure - New Accounting Pronouncements</LongName>
      <ShortName>New Accounting Pronouncements</ShortName>
      <Role>http://emcorgroup.com/role/NewAccountingPronouncements</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R9.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0203 - Disclosure - Acquisitions of Businesses</LongName>
      <ShortName>Acquisitions of Businesses</ShortName>
      <Role>http://emcorgroup.com/role/AcquisitionsOfBusinesses</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R10.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0204 - Disclosure - Earnings Per Share</LongName>
      <ShortName>Earnings Per Share</ShortName>
      <Role>http://emcorgroup.com/role/EarningsPerShare</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R11.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0205 - Disclosure - Inventories</LongName>
      <ShortName>Inventories</ShortName>
      <Role>http://emcorgroup.com/role/Inventories</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R12.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Notes</ReportType>
      <LongName>0206 - Disclosure - Investments, Notes and Other Long-Term Receivables</LongName>
      <ShortName>Investments, Notes and Other Long-Term Receivables</ShortName>
      <Role>http://emcorgroup.com/role/InvestmentsNotesandOtherLongTermReceivables</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R13.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0207 - Disclosure - Debt</LongName>
      <ShortName>Debt</ShortName>
      <Role>http://emcorgroup.com/role/Debt</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R14.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0208 - Disclosure - Derivative Instrument and Hedging Activity</LongName>
      <ShortName>Derivative Instrument and Hedging Activity</ShortName>
      <Role>http://emcorgroup.com/role/DerivativeInstrumentAndHedgingActivity</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R15.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0209 - Disclosure - Fair Value Measurements</LongName>
      <ShortName>Fair Value Measurements</ShortName>
      <Role>http://emcorgroup.com/role/FairValueMeasurements</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R16.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0210 - Disclosure - Income Taxes</LongName>
      <ShortName>Income Taxes</ShortName>
      <Role>http://emcorgroup.com/role/IncomeTaxes</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R17.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0211 - Disclosure - Common Stock</LongName>
      <ShortName>Common Stock</ShortName>
      <Role>http://emcorgroup.com/role/CommonStock</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R18.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0212 - Disclosure - Retirement Plans</LongName>
      <ShortName>Retirement Plans</ShortName>
      <Role>http://emcorgroup.com/role/RetirementPlans</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R19.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0213 - Disclosure - Commitments and Contingencies</LongName>
      <ShortName>Commitments and Contingencies</ShortName>
      <Role>http://emcorgroup.com/role/CommitmentsAndContingencies</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R20.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Sheet</ReportType>
      <LongName>0214 - Disclosure - Segment Information</LongName>
      <ShortName>Segment Information</ShortName>
      <Role>http://emcorgroup.com/role/SegmentInformation</Role>
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName>R21.xml</XmlFileName>
    </Report>
    <Report>
      <IsDefault>false</IsDefault>
      <ReportType>Book</ReportType>
      <LongName>All Reports</LongName>
      <ShortName>All Reports</ShortName>
      <Role />
      <ContainEmbeddedReports>false</ContainEmbeddedReports>
      <XmlFileName />
    </Report>
  </MyReports>
  <EntityCount>1</EntityCount>
  <ContextCount>46</ContextCount>
  <SegmentCount>7</SegmentCount>
  <ScenarioCount>0</ScenarioCount>
  <UnitCount>3</UnitCount>
  <ElementCount>126</ElementCount>
  <FootnotesReported>true</FootnotesReported>
  <TuplesReported>false</TuplesReported>
  <ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2010_Comprehensive_Income_Member</ContextName>
      <ElementCount>7</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2010_Retained_Earnings_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2010_Additional_Paid_In_Capital_Member</ContextName>
      <ElementCount>3</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2011_Comprehensive_Income_Member</ContextName>
      <ElementCount>6</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Mar2011_Additional_Paid_In_Capital_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2011_Accumulated_Other_Comprehensive_Income_Member</ContextName>
      <ElementCount>2</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2010_Treasury_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31March2010_Additional_Paid_In_Capital_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Mar2011_Accumulated_Other_Comprehensive_Income_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2009_Treasury_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Mar2011</ContextName>
      <ElementCount>41</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2010_Accumulated_Other_Comprehensive_Income_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Mar2011_Retained_Earnings_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31March2010</ContextName>
      <ElementCount>2</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2009_Additional_Paid_In_Capital_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2010_Common_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2010_Treasury_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2009</ContextName>
      <ElementCount>2</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Mar2011_Noncontrolling_Interest_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2010_Noncontrolling_Interest_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31March2010_Noncontrolling_Interest_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31March2010_Common_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2010</ContextName>
      <ElementCount>41</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>Jan-01-2011_Mar-31-2011</ContextName>
      <ElementCount>79</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2011_Common_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2010_Accumulated_Other_Comprehensive_Income_Member</ContextName>
      <ElementCount>3</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2011_Additional_Paid_In_Capital_Member</ContextName>
      <ElementCount>3</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2010_Noncontrolling_Interest_Member</ContextName>
      <ElementCount>2</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Mar2011_Treasury_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2010_Additional_Paid_In_Capital_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2009_Accumulated_Other_Comprehensive_Income_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2010</ContextName>
      <ElementCount>54</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2011_Noncontrolling_Interest_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2009_Noncontrolling_Interest_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2009_Common_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Mar2011_Common_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31Dec2009_Retained_Earnings_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2011_Treasury_Stock_Member</ContextName>
      <ElementCount>2</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31March2010_Treasury_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_30Jun2010</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2010_Retained_Earnings_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31March2010_Accumulated_Other_Comprehensive_Income_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_31March2010_Retained_Earnings_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2010_Common_Stock_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>BalanceAsOf_25Apr2011</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
    <ContextSummary>
      <ContextName>ThreeMonthsEnded_31Mar2011_Retained_Earnings_Member</ContextName>
      <ElementCount>1</ElementCount>
    </ContextSummary>
  </ContextSummary>
  <BaseTaxonomies />
  <HasPresentationLinkbase>true</HasPresentationLinkbase>
  <HasCalculationLinkbase>true</HasCalculationLinkbase>
</FilingSummary>
