Inheritors of a class cannot widen the scope of accessibility of the base class.
public: Access not limited
  internal: Access limited to this program
Once limited to the program, all inheritors of a, internal class must remain internal or assume lesser accessibility (protected internal or private).
Per the C# specification, section §3.5.4 Accessibility constraints:
The parameter types of an instance constructor must be at least as
  accessible as the instance constructor itself.
In the example
class A {...}
public class B: A {...}
the B class results in a compile-time error because A is not at least
  as accessible as B.
Also:
The direct base class of a class type must be at least as accessible
  as the class type itself (§3.5.2). For example, it is a compile-time
  error for a public class to derive from a private or internal class.
If you are trying to create a Common class with functionality you prefer not to make accessible to external code, you should prefer composition over inheritance. For example:
public abstract class Base
{
...
}
internal class Common : Base
{
...
}
public class Instance
{
    internal Instance(Common common)
    {
        ...
    }
...
}