Theme output of submenu
function mytheme_menu_tree__menu_mymenu($variables) {
  return '&lt;ul class="subpagemenu"&gt;' . $variables['tree'] . '&lt;/ul&gt;';
}

function mytheme_menu_tree__menu_mymenu_second($variables) {
  return '&lt;ul&gt;' . $variables['tree'] . '&lt;/ul&gt;';
}

function mytheme_menu_link__menu_mymenu($variables) {
  $element = $variables['element'];

  $submenu = '';
  if ($element['#below']) {
    // You can set a theme wrapper here or put an empty array() only
    // and theme the second level directly by adding &lt;ul&gt;&lt;/ul&gt; one line below.
    $element['#below']['#theme_wrappers'] = array('menu_tree__menu_mymenu_second');
    $submenu = drupal_render($element['#below']);
  }

  $output = l($element['#title'], $element['#href'], $element['#localized_options']);
  return '&lt;li' . drupal_attributes($element['#attributes']) . '&gt;' . $output . $submenu . "&lt;/li&gt;\n";
}