body {
  width: 100%;
  background-color: var(--base-color-primary);
}

.header {
  text-align: center;
  padding-top: calc(var(--base-spacing-height)*1/2);
  background-image: url('/nenji_taikai/common/images/bg.png');
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-color: var(--base-color-white);
}

.header-brand {
//  padding: 0 calc(var(--base-spacing-width));
}

.header-brand:hover {
  opacity: var(--base-opacity);
}

.header-brand.landscape {
  display: none;
}

.header-brand-image {
  width: 300px;
  height: auto;
}

.gnav {
  margin-top: calc(var(--base-spacing-height)*5/6);
  background-color: var(--base-color-primary);
}

.gnav-list {
  padding: calc(var(--base-spacing-height)*1/5)
    calc(var(--base-spacing-width)*1/2);
  text-align: center;
}

.gnav-list-item {
  display: inline-block;
  margin: calc(var(--base-spacing-height)*1/5)
    calc(var(--base-spacing-width)*1/5);
}

.gnav-link {
  color: var(--base-color-white);
  text-decoration: none;
}

.page {
  background-color: var(--base-color-white);
}

.page-content {
  margin: 0 calc(var(--base-spacing-width)*1/3);
  padding: calc(var(--base-spacing-height)*1) 0
}

.page-title {
  font-size: calc(var(--base-font-size)*1.5);
  text-align: center;
  color: var(--base-color-primary);
}

.page-lead {
  font-size: calc(var(--base-font-size)*1.1);
  margin-top: calc(var(--base-spacing-height)*2/3);
  text-align: center;
  line-height: calc(var(--base-line-height)*1.1);
  text-align: left; 
}

.page-lead a {
  color: var(--base-color-black);
}

.page-body {
  margin-top: calc(var(--base-spacing-height)*2/3);
}

@media screen and (min-width: 480px), print {

/*
  .header-brand {
  }
*/

  .header-brand.portrait {
    display: none;
  }

  .header-brand.landscape {
    display: block;
  }

  .header-brand-image {
    width: 470px;
    height: auto;
  }

  .page-content {
    padding-left: calc(var(--base-spacing-width)*2/3);
    padding-right: calc(var(--base-spacing-width)*2/3);
  }
}

@media screen and (min-width: 960px), print {

/*
  .header-brand {
  }
*/

  .header-brand-image {
    width: 660px;
    height: auto;
  }

  .gnav {
    width: calc(var(--base-desktop-width) + 60px);
    margin-left: auto;
    margin-right: auto;
    border-radius: calc(var(--base-border-radius));
  }

  .gnav-list {
    padding-top: calc(var(--base-spacing-height)*1/2);
    padding-bottom: calc(var(--base-spacing-height)*1/2);
  }

  .gnav-link:hover {
    text-decoration: underline;
  }

  .page-content {
    width: calc(var(--base-desktop-width));
    margin-left: auto;
    margin-right: auto;
   }
}

