Quarterly report pursuant to Section 13 or 15(d)

Subsequent Events - Monthly Distributions Declared by Company's Board of Directors (Detail)

v2.4.1.9
Subsequent Events - Monthly Distributions Declared by Company's Board of Directors (Detail) (USD $)
0 Months Ended
Apr. 14, 2015
Subsequent Event A [Member]  
Dividends Payable [Line Items]  
Record Date Apr. 24, 2015
Payment Date May 05, 2015
Payable to the Holders of Records During the Month April
Subsequent Event A [Member] | Common Stock [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1250000us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventOneMember
Subsequent Event B [Member]  
Dividends Payable [Line Items]  
Record Date May 19, 2015
Payment Date May 29, 2015
Payable to the Holders of Records During the Month May
Subsequent Event B [Member] | Common Stock [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1250000us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventTwoMember
Subsequent Event C [Member]  
Dividends Payable [Line Items]  
Record Date Jun. 19, 2015
Payment Date Jun. 30, 2015
Payable to the Holders of Records During the Month June
Subsequent Event C [Member] | Common Stock [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1250000us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventThreeMember
Subsequent Event [Member] | Common Stock [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.3750000us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= us-gaap_SubsequentEventMember
Senior Common Stock [Member] | Subsequent Event A [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.0875us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= good_SeniorCommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventOneMember
Payment Date May 07, 2015
Senior Common Stock [Member] | Subsequent Event B [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.0875us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= good_SeniorCommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventTwoMember
Payment Date Jun. 05, 2015
Senior Common Stock [Member] | Subsequent Event C [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.0875us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= good_SeniorCommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventThreeMember
Payment Date Jul. 08, 2015
Senior Common Stock [Member] | Subsequent Event [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.2625us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= good_SeniorCommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= us-gaap_SubsequentEventMember
Series A Preferred Stock [Member] | Subsequent Event A [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1614583us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventOneMember
Series A Preferred Stock [Member] | Subsequent Event B [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1614583us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventTwoMember
Series A Preferred Stock [Member] | Subsequent Event C [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1614583us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventThreeMember
Series A Preferred Stock [Member] | Subsequent Event [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.4843749us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= us-gaap_SubsequentEventMember
Series B Preferred Stock [Member] | Subsequent Event A [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1562500us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventOneMember
Series B Preferred Stock [Member] | Subsequent Event B [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1562500us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventTwoMember
Series B Preferred Stock [Member] | Subsequent Event C [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1562500us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventThreeMember
Series B Preferred Stock [Member] | Subsequent Event [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.4687500us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= us-gaap_SubsequentEventMember
Series C Preferred Stock [Member] | Subsequent Event A [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1484375us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventOneMember
Series C Preferred Stock [Member] | Subsequent Event B [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1484375us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventTwoMember
Series C Preferred Stock [Member] | Subsequent Event C [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1484375us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventThreeMember
Series C Preferred Stock [Member] | Subsequent Event [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.4453125us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= us-gaap_SubsequentEventMember