@media print, screen and (min-width: 961px) {
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 960px) {
  .pc {
    display: none !important;
  }
}

@media print, screen and (min-width: 961px) {
  section.cont {
    padding: 50px 0 0;
  }
}
@media screen and (max-width: 960px) {
  section.cont {
    padding: 0 6.4102564103vw;
  }
}
section.cont .inner {
  border-top: 1px solid #EAEAEA;
}
@media print, screen and (min-width: 961px) {
  section.cont .inner {
    padding: 50px 0 0;
  }
}
@media screen and (max-width: 960px) {
  section.cont .inner {
    padding: 12.8205128205vw 0;
  }
}
section.cont:last-child .inner {
  border-bottom: 1px solid #EAEAEA;
}
@media print, screen and (min-width: 961px) {
  section.cont:last-child .inner {
    padding-bottom: 50px;
  }
}
section h2 {
  color: #0E5099;
  font-weight: 700;
  line-height: 150%;
}
@media print, screen and (min-width: 961px) {
  section h2 {
    font-size: 18px;
    letter-spacing: 1.8px;
  }
}
@media screen and (max-width: 960px) {
  section h2 {
    font-size: 4.6153846154vw;
    letter-spacing: 0.4615384615vw;
  }
}
@media print, screen and (min-width: 961px) {
  section h2 + p {
    margin-top: 20px;
  }
}
@media screen and (max-width: 960px) {
  section h2 + p {
    margin-top: 5.1282051282vw;
  }
}
section h3 {
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
}
@media print, screen and (min-width: 961px) {
  section h3 {
    margin-top: 20px;
    font-size: 15px;
    letter-spacing: 1.5px;
  }
}
@media screen and (max-width: 960px) {
  section h3 {
    margin-top: 5.1282051282vw;
    font-size: 3.8461538462vw;
    letter-spacing: 0.3846153846vw;
  }
}
@media print, screen and (min-width: 961px) {
  section ul,
  section ol {
    margin-top: 10px;
  }
}
@media screen and (max-width: 960px) {
  section ul,
  section ol {
    margin-top: 2.5641025641vw;
  }
}
section ul li,
section ol li {
  line-height: 150%;
}
@media print, screen and (min-width: 961px) {
  section ul li,
  section ol li {
    font-size: 15px;
    letter-spacing: 1.5px;
  }
}
@media screen and (max-width: 960px) {
  section ul li,
  section ol li {
    font-size: 3.8461538462vw;
    letter-spacing: 0.3846153846vw;
  }
}
section ul li {
  padding-left: 1em;
  text-indent: -1em;
}
section ol li {
  padding-left: 3em;
  text-indent: -3em;
}
@media print, screen and (min-width: 961px) {
  section p {
    margin-top: 10px;
  }
}
@media screen and (max-width: 960px) {
  section p {
    margin-top: 2.5641025641vw;
  }
}
section p + p {
  margin-top: 1.5em;
}
section ul + h3,
section ol + h3,
section p + h3 {
  border-top: 1px solid #EAEAEA;
}
@media print, screen and (min-width: 961px) {
  section ul + h3,
  section ol + h3,
  section p + h3 {
    margin-top: 20px;
    padding-top: 20px;
  }
}
@media screen and (max-width: 960px) {
  section ul + h3,
  section ol + h3,
  section p + h3 {
    margin-top: 5.1282051282vw;
    padding-top: 5.1282051282vw;
  }
}

.kv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  background-color: #EAF5FF;
}
@media print, screen and (min-width: 961px) {
  .kv {
    margin-top: 102px;
    padding: 40px;
  }
}
@media screen and (max-width: 960px) {
  .kv {
    margin-top: 23.0769230769vw;
    padding: 6.4102564103vw 0;
  }
}
.kv h1 {
  color: #0E5099;
  font-weight: 300;
  line-height: normal;
}
@media print, screen and (min-width: 961px) {
  .kv h1 {
    font-size: 36px;
    letter-spacing: 3.6px;
  }
}
@media screen and (max-width: 960px) {
  .kv h1 {
    font-size: 6.9230769231vw;
    letter-spacing: 0.6923076923vw;
  }
}
.kv + .cont .inner {
  border-top: none;
}