「長い期間」を表したい場合、「long term」と「long-term」、どちらが正しいですか?

両方とも正しいです。ただし、使い分ける必要があります。

「long term」と「-(ハイフン)」がなく二つの単語である場合、形容詞「long(長い)」が名詞「term(期間、時間)」を修飾して、「長い期間、長期」という意味になります。一方、「long-term」と「-(ハイフン)」で二つの単語が繋がっている場合は、「長期的な、長期の〜」という意味を持つ複合形容詞(2語からなる形容詞)になります。従って、名詞を修飾する場合に使用されます。

The company’s success will be evaluated in the long term.

会社の成功は長期にわたって評価される。

The company’s long-term goal is to open 100 stores nationwide.

その会社の長期の目標は、全国で100店舗をオープンさせることである。

難易度:7/10
関連リンク:「再」という意味を持つ接頭辞である「re」の後に、「-(ハイフン)」は必要ですか?

「ひいおじいちゃん」は「great grandfather」と表記しますか?

いいえ、「great grandfather」だと、「偉大なおじいちゃん」になってしまいます。「ひいおじいちゃん」と表記したい場合、「great-grandfather」と、「great」と「grandfather」の間に、「-(ハイフン)」を入れます。ハイフンがないことにより、「great」は「偉大な」という意味を持つ形容詞となり、「grandfather」を修飾します。

His great grandfather was the mayor of the city.

彼の偉大なおじいちゃんは、市長だった。

His great-grandfather was the mayor of the city.

彼のひいおじいちゃんは、市長だった。

難易度:5/10
関連リンク:「Elderly」と言う単語は形容詞?それとも名詞?

「再」という意味を持つ接頭辞である「re」の後に、「-(ハイフン)」は必要ですか?

一般的に以下二つの場面で「-」が必要になります。

①「e」で始まる単語の前に「re」を付ける場合:

例)
reelect X
re-elect ◯

reenter X
re-enter ◯

reexamine X
re-examine ◯

②ハイフンを付けないと他の単語と重複してしまう場合:

例)
「Re-sign(再度サインする)」の場合、「resign(辞職する)」という単語が存在する為、「-」が必要になります。

他の例)
re-form(再度形成する)/ reform(改革する)
re-sent(再度送った)/ resent(憤る)

例えば、「reissue(再度発行する)」の場合、「reissue」という既存の単語は存在しない為、「-」は必要ありません。

難易度:5/10
関連リンク:タイトル(題名)や見出しなどで何(どの単語)が大文字になりますか?