<div class="container">
  <div class="headnav">
    <header class="header">
      <div class="header__logo">
        <svg width="320" height="60" viewBox="0 0 320 60">
            <path fill="#fff" d="M284 45h16v-3l-3-1.5v-20c1.2-.9 2.8-1.1 4.3-1.1 2.8 0 3.7.9 3.7 4.1v17l-3 1.5v3h16v-3l-3-1.5v-19c0-5.7-2.1-8.3-7.1-8.3-4.1 0-8.1 1.5-10.8 4V13h-1l-12.4 2.2v2.7l3.3 1.6v21l-3 1.5v3zM245.3.4c-3 0-5.4 2.4-5.4 5.5 0 3 2.4 5.4 5.4 5.4 2.9 0 5.4-2.4 5.4-5.4-.1-3.1-2.5-5.5-5.4-5.5zM237 15.1v2.8l3 1.6v20.9l-3 1.5V45h16v-3.1l-3-1.5V13.1h-1l-12 2zM223 39c-.7.6-1.7 1.1-3.2 1.1-4 0-5.9-3.3-5.9-10.9 0-8.7 2.4-11.6 5.6-11.6 1.8 0 2.8.6 3.5 1.4v20zm0-24.4c-1.2-.9-3.3-1.4-5-1.4-7.4 0-14.5 4.4-14.5 16.8 0 11.9 7.1 15.7 11.8 15.7 3.8 0 6.4-1.7 7.6-3.4h.3v3.3h.9l11.9-1.4v-2.3l-3-1.8V.6h-1l-12.6 2v2.8l3.6 1.5v7.7zM181 18l3 1.5v20.9l-3 1.5V45h17v-3.1l-4-1.5V24.1c1.8-1.4 4.1-1.9 6.8-1.9.9 0 1.6.2 2.2.3v-9c-.3-.1-.7-.2-1.2-.2-3.3 0-6 2.2-7.8 6.2V13h-1l-12 2v3zm-19.3-.8c3.9 0 5.3 2 5.3 5.9v3.5l-6.1 1.1c-5.9 1.1-10.4 2.9-10.4 9.3 0 5.1 3.5 8.7 8.3 8.7 3.8 0 7.4-1.7 8.7-4.4h.3c.5 3.3 3.3 4.4 6.4 4.4 2.4 0 4.8-.6 5.7-1.6v-2l-2.9-1.5v-18c0-7-5.2-9.4-13.3-9.4-5.3 0-8.6 1.3-11.4 2.6v7.8h4.7l2-6c1.1-.4 2.3-.4 2.7-.4zm2.3 22.9c-1.9 0-4-1.1-4-4.6 0-2.4 2.4-4.7 4.8-5l2.2-.5v8.5s-1.9 1.6-3 1.6zm100.7-22.9c3.9 0 5.3 2 5.3 5.9v3.5l-6.1 1.1c-5.9 1.1-10.4 2.9-10.4 9.3 0 5.1 3.5 8.7 8.3 8.7 3.8 0 7.4-1.7 8.7-4.4h.3c.5 3.3 3.3 4.4 6.4 4.4 2.4 0 4.8-.6 5.7-1.6v-2l-2.9-1.5v-18c0-7-5.2-9.4-13.3-9.4-5.3 0-8.6 1.3-11.4 2.6v7.8h4.7l2-6c1.1-.4 2.3-.4 2.7-.4zm2.3 22.9c-1.9 0-4-1.1-4-4.6 0-2.4 2.4-4.7 4.8-5l2.2-.5v8.5s-1.9 1.6-3 1.6zm-138.7 5.6c.4 0 .9 0 1.3-.1 3.5-.3 6.7-2 8.4-4.2v4.1l12-1.5v-2l-3-2V13h-1l-12 2.3V18l4 1.7V38c-1.1.8-2.4 1.3-4.2 1.3-2.5 0-4.8-.8-4.8-4.3V13h-1l-12 2.5v2.6l4 1.6V36c0 5.4 2.2 9.7 8.3 9.7zM96 38c-1.2 0-2.5-.8-2.5-1.9 0-.8.6-1.7 1.4-2.3 1.6.5 3 .6 5 .6 7.8 0 13.2-3.7 13.2-10.4 0-3-1.3-4.6-3.2-6.4L115 19v-6l-8.2 1.6c-1.9-.7-4.5-1.6-7-1.6-7.8 0-13.2 4.1-13.2 10.8 0 4.1 2 7.1 5 8.8l.2.2c-1.7 1.2-5.3 4-5.3 7.2 0 2.4 1.5 4.8 4.8 5.5-3.4.8-7.3 2.5-7.3 6.5 0 4.1 5.9 8 15.5 8 11.8 0 16.5-5.7 16.5-13 0-6.1-2.8-9-9.5-9H96zm7.5-14c0 5.7-1.3 6.5-3.5 6.5s-4-.8-4-6.5c0-5.8 1.8-7.5 4-7.5s3.5 2 3.5 7.5zM92 50.9c.1-1.5 1.1-3.4 3.7-3.6h8.6c2.5 0 3.7 2 3.7 3.6 0 3.2-2 4.4-8.3 4.4-5.5 0-7.8-2.2-7.7-4.4z"></path>
            <path fill="#AADCE6" d="M83 30c0-13-5.1-16.9-13-16.9-9 0-15 6.2-15 16.4 0 10.5 5.5 16.2 15.8 16.2 5.6 0 9.7-2.7 11.2-4.7v-3c-2.1.7-3.9 1.2-7.7 1.2-5.6 0-9.3-3.2-9.3-9.2h18zM69.9 16.6c2.5 0 3.8 1.8 3.8 9.6l-8.4.7c.1-7.9 1.8-10.3 4.6-10.3zM37 45v-3l-3-1.5V21c1.2-.9 3.2-1.7 4.8-1.7 2.8 0 4.3 1.6 4.2 4.2v17L40 42v3h16v-3l-3-1.5v-19c0-5.7-3.3-8.3-7.7-8.3-4.1 0-8.6 1.3-11.3 3.8V0h-1L21 2v3l4 1.5v34L22 42v3h15zM4 36.4c0 5.7 2.8 9.3 8.9 9.3 3.1 0 6.2-.8 8.1-2.3v-3.8c-.8.3-1.9.5-2.9.5-2.9 0-4.1-1.6-4.1-4.6V19h7v-5h-7V6.5L4 8v6l-4 1v4h4v17.4z"></path>
        </svg>
      </div>
    </header>
    <nav class="header__nav js-header-nav" role="navigation">
      <ul class="header__nav__list">
          <li class="header__nav__item">  
            <a href="#" class="header__nav__item__link">UK</a>
          </li>
          <li class="header__nav__item">  
            <a href="#" class="header__nav__item__link">World</a>
          </li>
          <li class="header__nav__item">  
            <a href="#" class="header__nav__item__link">Sport</a>
          </li>
          <li class="header__nav__item">  
            <a href="#" class="header__nav__item__link">Football</a>
          </li>
          <li class="header__nav__item">  
            <a href="#" class="header__nav__item__link">Opinion</a>
          </li>
          <li class="header__nav__item">  
            <a href="#" class="header__nav__item__link">Culture</a>
          </li>
          <li class="header__nav__item">  
            <a href="#" class="header__nav__item__link">Business</a>
          </li>
          <li class="header__nav__item">  
            <a href="#" class="header__nav__item__link">Lifestyle</a>
          </li>
          <li class="header__nav__item">  
            <a href="#" class="header__nav__item__link">Fashion</a>
          </li>
          <li class="header__nav__item">  
            <a href="#" class="header__nav__item__link">Environment</a>
          </li>
        </ul>
      <div class="nav__item--toggle">
        <button href="#" class="nav-toggle nav-toggle--open js-nav-toggle" title="navigation menu" aria-label="navigation menu" role="button" aria-controls="navigation" aria-expanded="false">All</button>
      </div>
    </nav>
    
    <nav class="nav js-nav" role="navigation">
      <header class="nav__header">
        Home
        <div class="nav__header__toggle">
          <button href="#" class="nav-toggle nav-toggle--close js-nav-toggle" title="navigation menu" aria-label="navigation menu" role="button" aria-controls="navigation" aria-expanded="false">Close</button>
        </div>
      </header>
      <ul class="nav__list">
        <li class="nav__item">
          <header class="nav__item__header">UK</header>
          <ul class="nav__item__actions">
            <li class="nav__item__action">Education</li>
            <li class="nav__item__action">Media</li>
            <li class="nav__item__action">Society</li>
            <li class="nav__item__action">Law</li>
            <li class="nav__item__action">Scotland</li>
            <li class="nav__item__action">Wales</li>
            <li class="nav__item__action">Nothern Ireland</li>
          </ul>
        </li>
        <li class="nav__item">
          <header class="nav__item__header">World</header>
          <ul class="nav__item__actions">
            <li class="nav__item__action">Europe</li>
            <li class="nav__item__action">US</li>
            <li class="nav__item__action">Americas</li>
            <li class="nav__item__action">Asia</li>
            <li class="nav__item__action">Australia</li>
            <li class="nav__item__action">Africa</li>
            <li class="nav__item__action">Middle East</li>
          </ul>
        </li>
        <li class="nav__item">
          <header class="nav__item__header">Sport</header>
          <ul class="nav__item__actions">
            <li class="nav__item__action">Football</li>
            <li class="nav__item__action">Cricket</li>
            <li class="nav__item__action">Rugby Union</li>
            <li class="nav__item__action">F1</li>
            <li class="nav__item__action">Tennis</li>
            <li class="nav__item__action">Golf</li>
            <li class="nav__item__action">Boxing</li>
            <li class="nav__item__action">Cycling</li>
          </ul>
        </li>
        <li class="nav__item">
          <header class="nav__item__header">Football</header>
          <ul class="nav__item__actions">
            <li class="nav__item__action">Live Scores</li>
            <li class="nav__item__action">Tables</li>
            <li class="nav__item__action">Competiton</li>
            <li class="nav__item__action">Results</li>
            <li class="nav__item__action">Fixtures</li>
            <li class="nav__item__action">Club</li>
          </ul>
        </li>
      </ul>
    </nav>
  </div>
  <div class="content">
    <h3>Resize the viewport and play with the nav :)</h3>
  </div>
</div>
html {
  box-sizing: border-box;
}
*, *::before, *::after {
  box-sizing: inherit;
}

html,
body {
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

body {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 5%;
  font-family: 'Montserrat', sans-serif;
  background-color: rgba(0,0,0,0.6);
}

img {
  height: auto;
  max-width: 100%;
}

ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

h1 {
  color: white;
  text-align: center;
  margin-bottom: 3rem;
}

.hidden { display: none; }

//Params
$white: #FBFBFB;
$black: #323232;
$black-light: #4C4C4C;
$blue: #014E79;
$blue-light: #016094;
$grey: #D8D8D8;
$grey-light: #F3F3F3;
$header-height: 3rem;
$nav-toggle-height: 3rem;
$breakpoint: 60rem;

.container {
  width: 90%;
  margin: 0 auto;
  height: 30rem;
  background-color: white;
  overflow: auto;
}

.headnav {
  position: relative;
}

.header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: $header-height;
  width: 100%;
  background-color: $blue-light;
  z-index: 2;
}

.header__logo {
  display: flex;
  flex-shrink: 0;
  width: 6rem;
  margin: 0 .5rem;
}

.header__nav {
  position: relative;
  display: flex;
  height: $header-height;
  background-color: $blue;
  overflow: hidden;
}

.header__nav__list {
  position: relative;
  display: flex;
  height: 100%;
  background-color: $blue;
  overflow-x: scroll;
  overflow-y: hidden;
  white-space: nowrap;
  backface-visibility: hidden;
  
  &::-webkit-scrollbar { display: none; }
}

.header__nav__item {
  position: relative;
  padding: 0 .5rem;
  height: 100%;
  
  &:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 5px;
    background-color: $blue;
    transition: all ease-out .2s;
    transform: translateY(5px);
  }
  
  &:hover:after {
    transform: translateY(0);
  }
}

//.nav__item--hidden {
//  display: none;
//}

.nav__item--toggle,
.nav__header__toggle {
  display: flex;
  height: 100%;
  padding: 0 .5rem;
  margin-left: auto;
  background-color: $black-light;
  border-left: 2px solid $black;
  color: white;
  
  &:after { display: none; }
}

.header__nav__item__link {
  position: relative;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  color: white;
  text-decoration: none;
  
  &:hover { text-decoration: underline; }
}

.nav-toggle {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  background-color: inherit;
  padding-right: 18px;
  padding-left: 0;
  border: none;
  overflow: hidden;
  outline: 0;
  
  &:hover { text-decoration: underline; }
  
  &:after {
    content: '';
    position: absolute;
    display: block;
    width: 12px;
    height: 12px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
  }
}

.nav-toggle--open:after {
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAmElEQVQ4T6WS0Q3DIAxE7ybpSt2gdIJ2lGSDdLNschUIIkRMIDI/SOju/GxMOA+dfvgDJD0BPEiud2gkfQHslKRs3Ei+Z0IkbQBeURsDFgCf2ZDaDGBNM2geuySN7kcyHEMchVjm1ELdcy+kZz4FWO3kAiHfCbsuau5BU7HoT2aToKivsIcEVUjCJRn/3Tz+VZ7ZvCuNm+APF2xM5wC4k90AAAAASUVORK5CYII='); 
}

.nav-toggle--close:after {
  background-image: url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAw0lEQVQ4T42TYRXCMAyEvygAKTgAHIATUAJOwAHgYFJAQXg3Nl7XNe36s6/3NZdczN3XwA04m1nHguPuG+ACHM3dn8AWeAP7FmQQPwB9/BJANEFWLUgm/gA7U8VLIEWxWdcDWpBILN0fEEEG/uj5V3bS7AkggOhaDZuJZxUEdnRdFLcAY9l6F444spB6FiAccamJk4YNtsKc5GMsdruWkzRI4ahqORmjXBVXw5YsUziqdEEzO/0yKSR34NTaxKySK3D4ArhVl/9crtFYAAAAAElFTkSuQmCC');
}

.nav {
  position: absolute;
  top: $header-height;
  left: 0;
  display: none;
  flex-direction: column;
  height: auto;
  width: 100%;
  
  &.is-open {
    display: flex;
  }
}

.nav__header {
  display: flex;
  align-items: center;
  height: $header-height;
  background-color: $grey;
  padding-left: .8rem;
  color: $blue-light;
}

.nav__list,
.nav__item { 
  display: flex;
  flex-direction: column;
}

.nav__item {
  display: flex;
  width: 100%;
  color: $black;
  
  @media screen and (min-width: $breakpoint) {
    flex-direction: row;
  }
}

.nav__item__header {
  display: flex;
  padding: .8rem;
  background-color: $blue;
  color: white;
  
  @media screen and (min-width: $breakpoint) {
    width: 7rem;
    flex-shrink: 0;
    border-top: 1px solid $blue-light;
  }
}

.nav__item__actions {
  display: flex;
  flex-flow: row wrap;
  background-color: $grey-light;
  width: 100%;
  border-bottom: 1px solid white;
}

.nav__item__action {
  padding: .5rem .8rem;
  width: 50%;
  
  @media screen and (min-width: $breakpoint) {
    width: initial;
    display: flex;
    align-items: center;
  }
}

.content {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 80%;
  padding: 0 4rem;
  text-align: center;
}
View Compiled
var Menu = {
  $el: $('.js-nav'),
  $elToggle: $('.js-nav-toggle'),
  isOpened: false,
  
  init: function() {
   this.events();
  },
  events: function() {
    var self = this;
    this.$elToggle.on('click', function() {
      if (self.isOpened) {
        self.close();
      } else {
        self.open();
      }
    });
    $(document).on('click', function(e) {
      if(self.isOpened) {
        var is_menu = $(e.target).closest(self.$el).length;
        var is_toggle = $(e.target).closest(self.$elToggle).length;
        if(!is_menu && !is_toggle) {
          self.close();
        }
      }
    });
  },
  open: function() {
    this.$el.addClass('is-open');
    this.$elToggle.addClass('is-active');
    this.isOpened = true;
  },
  close: function() {
    this.$el.removeClass('is-open');
    this.$elToggle.removeClass('is-active');
    this.isOpened = false;
  }
};

Menu.init();

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

  1. //cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js
  2. //cdnjs.cloudflare.com/ajax/libs/underscore.js/1.8.2/underscore-min.js