再利用性に乏しいため ViewportExtension を削除。