:root {
  --main-color: #0067BA;
  /* --unuse-pc: 1600px;
  --unuse-sp: 960px; */
}


.h1, .h2, .h3, .h4, .h5 {
  font-weight: 700;
}

a {
  color: #3b8ce7;
}

.bg-gray {
  background: rgba(224, 224, 224, 0.2);
}
.bg-blue {
  background: #1d4b97;
}
.text-blue {
  color: #1d4b97;
}
.text-white {
  color: white;
}
.text-yellow {
  color: #fff100;
}
.text-black {
  color: #000;
}

.main {
  margin-bottom: 3em;
  font-size: 1.0rem;
  font-weight: 400;
  width: 80%;
}

.dan {
  font-size: 1rem;
  line-height: 1.5em;
  font-weight: 400;
  padding-left: 2em;
  text-indent: -2em;
}

.many {
  padding-left: 2em;
  text-indent: -2em;
}

div,p {
  line-height: 1.5em;
}

.dan1 {
  padding-left:1em;
	text-indent:-1em;
}

.dan2 {
  padding-left:2em;
}

.dan3 {
  font-size: 1rem;
  line-height: 1.5em;
  font-weight: 400;
  padding-left: 2em;
}

.rect{
  display: inline-block;
	width: 0.8em;
	height: 0.8em;
  background: #3b8ce7;
  margin-right: 0.5em;
}

.contents {
  width: 900px;
}

.content:not(.static-page) {
  width: 900px;
  text-align: left;
  border-bottom: 1px solid #3b8ce7;
  padding-top: 30px;
  padding-bottom: 5px;
  font-size: 1.5em;
}

form {
  font-weight: 400;
}

.text-25rem-15rem {
  font-size: 2.5rem;
  @media (width <= 960px) {
    font-size: 1.5rem;
  }
}

@media screen and (max-width: 960px) and (max-width: 568px) {
  .main {
    margin-bottom: 1em;
    font-size: 1.0rem;
    font-weight: 400;
    width: 100%;
    margin-top: 30px;
  }

  .contents {
    width: 100%;
  }
  .content:not(.static-page) {
    width: 100%;
    text-align: left;
    border-bottom: 1px solid #3b8ce7;
    padding-top: 30px;
    padding-bottom: 5px;
    font-size: 1.5em;
  }
  .wrapper {
    margin-top: 140px;
  }
}




.static-page {
  display: flex;
  position: relative;
  margin-top: 120px;
  top: 0;
  left: 0;
  font-weight: normal;
  &.content {
    @media (width <= 960px) {
      font-size: 1.2em;
    }
  }
  @media (width <= 1600px) {
    flex-direction: column;
  }
  .static-page-menu-area {
    position: fixed;
    max-width: 400px;
    margin: 4em auto 0;
    @media (width <= 1600px) {
      position: static;
      width: 100%;
      max-width: 900px;
    }
    .static-page-menu {
      border: none;
      @media (width <= 1600px) {
        border: solid 1px var(--main-color);
      }
    }
    .static-page-menu-header-over1600 {
      display: flex;
      @media (width <= 1600px) {
        display: none;
      }
    }
    .static-page-menu-header-less1600 {
      display: none;
      @media (width <= 1600px) {
        display: flex;
      }
    }
    .static-page-menu-toggle-button {
      cursor: pointer;
    }
    .static-page-menu-items-area {
      display: block;
      @media (width <= 1600px) {
        display: none;
      }
      .static-page-menu-items {
        display: flex;
        flex-direction: column;
        gap: 1.5em;
      }
    }
  }

  .container {
    max-width: 900px;
  }
  p {
    font-weight: normal;
  }
  .static-page-sections {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
    .section-header {
      font-size: 1.5rem;
      position: relative;
      border-bottom: solid 1px var(--main-color);
      padding-left: 1.5em;
      padding-top: 0.25em;
      padding-bottom: 0.25em;
      &::before {
        content: "";
        background: var(--main-color);
        width: 1.25rem;
        height: 1.25rem;
        position: absolute;
        top: calc(50% - (1.25rem / 2));
        left: 0;
      }
    }
    .section-content {
      display: flex;
      flex-direction: column;
      gap: 1.5rem;
    }
  }

  .button-w-75-pcsp {
    width: 75%;
    display: inline-block;
    font-weight: bold;
    text-align: center;
    padding: 1rem 0;
    font-size: 1.5rem;
    background: var(--main-color);
    color: white;
    @media (width <= 960px) {
      width: 100%;
      font-size: 1.25rem;
    }
  }
  .kinou-images-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem;
    @media (width <= 960px) {
      grid-template-columns: 1fr;
      gap: 1.5rem;
    }
  }
}



/* 購読料金 ---------------------------------------------------------- */
.application {
  img {
    max-width: 100%;
  }
  @media (width < 568px) {
    .plan-type-header {
      text-align: center;
      font-size: 1.1rem;
      white-space: nowrap;
      margin: 2rem -1rem;
    }
  }
  .step {
    .step-header {
      font-weight: bold;
      font-size: 1.25em;
      border-bottom: solid 2px black;
      margin-bottom: 0.25rem;
    }
  }
  .application-page-button {
    border-radius: 20px;
    padding: 0.5em 1em;
  }
}






