.page {
  text-align: center;
  width: calc(var(--base-page-width));
  margin-left: auto;
  margin-right: auto;
  padding-top: calc(var(--base-spacing-height));
  padding-bottom: calc(var(--base-spacing-height)*2/3);
}

.breadcrumb {
  text-align: left;
}

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

.breadcrumb a:hover {
  color: var(--base-color-primary);
}

.page-layout {
  width: 100%;
  display: flex;
  margin-top: calc(var(--base-spacing-height)*1);
}

.page-left {
  width: calc(100% - 240px - var(--base-spacing-width));
  text-align: left;
}

.page-title {
  font-size: calc(var(--base-font-size)*1.5);
  line-height: calc(var(--base-line-height));
  background-color: #7a7a7a;
  color: var(--base-color-white);
  padding: 0.5em 1em 0.5em 1.5em;
}

.page-catch {
  text-align: center;
  line-height: calc(var(--base-line-height));
  margin-top: calc(var(--base-spacing-height));
  font-size: calc(var(--base-font-size)*1.2);
}

.page-catch small {
  font-size: calc(var(--base-font-size)*1);
}

.page-lead {
  text-align: left;
  line-height: calc(var(--base-line-height));
  margin-top: calc(var(--base-spacing-height));
  font-size: calc(var(--base-font-size));
}

.page-toc {
  text-align: left;
  line-height: calc(var(--base-line-height));
  margin-top: calc(var(--base-spacing-height));
  font-size: calc(var(--base-font-size));
}

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

.page-toc a:hover {
  color: var(--base-color-primary);
}

.page-title small {
  font-size: calc(var(--base-font-size)*1);
}

.page-body a {
//  color: var(--base-color-black);
  color: var(--base-color-primary);
}

/*
.page-body a:hover {
  color: var(--base-color-primary);
}
*/

.page-right {
  width: 240px;
  margin-left: calc(var(--base-spacing-width));
}

.lnav {
  text-align: left;
}

.lnav-title {
  color: var(--base-color-white);
  padding: 1em 0;
  width: 100%; 
  text-align: center;
  background: linear-gradient(
    to bottom,
    #ff8b00 0%,
    #ff7400 50%,
    #ff8b00 100%
  );
  border-radius:
    calc(var(--base-border-radius)/2)
    0
    calc(var(--base-border-radius)/2)
    0;
  font-size: calc(var(--base-font-size)*0.9);
}

.lnav-title a {
  color: var(--base-color-white);
  text-decoration: none;
}

.lnav-list.level1 {
  margin-top: calc(var(--base-spacing-height)*1/3);
  background-color: #fff3e6;
  border-radius: calc(var(--base-border-radius)/2);
  border: solid 1px var(--base-color-primary);
  text-align: left;
}

.lnav-item.level1 {
  padding: 1em 0;
}

.lnav-item.level1:not(:last-of-type) {
  border-bottom: solid 1px var(--base-color-primary);
}

.lnav-item.level2:first-of-type {
  margin-top: .5em;
}

.lnav-link {
  display: inline-block;
  text-decoration: none;
  line-height: calc(var(--base-line-height));
  font-size: calc(var(--base-font-size)*0.75);
  color: var(--base-color-black);
  position: relative;
}

.lnav-link.level1 {
  padding-right:  1.25em;
  padding-left: 2.25em;
}

.lnav-link.level2 {
  padding-right: 2.25em;
  padding-left: 3.25em;
}

.lnav-link:hover {
  color: var(--base-color-primary);
}

.lnav-link::before {
  content: "・";
  position: absolute;
}

.lnav-link.level1::before {
  left: 1em;
}

.lnav-link.level2::before {
  left: 2em;
}

.sidebar-banner {
  margin-top: calc(var(--base-spacing-height)*2/3);
  list-style-type: none;
}

.sidebar-banner-item {
  margin-top: calc(var(--base-spacing-height)*1/3);
}

.sidebar-banner-item:first-of-type {
  margin-top: 0;
}

.sidebar-banner-link:hover {
  opacity: var(--base-hover-opacity);
}
