@charset "UTF-8";
@import url(https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@400;600&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500;700&display=swap);
abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
canvas,
caption,
cite,
code,
dd,
del,
details,
dfn,
div,
dl,
dt,
em,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
ul,
var,
video {
  background: 0 0;
  border: 0;
  font-size: 100%;
  margin: 0;
  outline: 0;
  padding: 0;
  vertical-align: baseline;
}
body {
  line-height: 1;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}
nav ul {
  list-style: none;
}
blockquote,
q {
  quotes: none;
}
blockquote:after,
blockquote:before,
q:after,
q:before {
  content: "";
  content: none;
}
a {
  background: 0 0;
  font-size: 100%;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
}
img {
  vertical-align: bottom;
}
ins {
  text-decoration: none;
}
ins,
mark {
  background-color: #ff9;
  color: #000;
}
mark {
  font-style: italic;
  font-weight: 700;
}
del {
  text-decoration: line-through;
}
abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
hr {
  border: 0;
  border-top: 1px solid #ccc;
  display: block;
  height: 1px;
  margin: 1em 0;
  padding: 0;
}
input,
select {
  vertical-align: middle;
}
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  min-height: 0;
  min-width: 0;
}
body {
  color: #404040;
  font-family: Noto Sans JP, sans-serif;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  font-size: 14px;
  -webkit-font-smoothing: antialiased;
  letter-spacing: 0.12em;
  min-width: 1260px;
}
body.js-navopen {
  height: 100%;
  position: fixed;
  width: 100%;
}
.preload * {
  -webkit-transition: none !important;
  -o-transition: none !important;
  transition: none !important;
}
img {
  max-width: 100%;
}
a {
  text-decoration: none;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
a:after,
a:before {
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
a:hover {
  opacity: 0.8;
}
a:hover:after,
a:hover:before {
  opacity: 0.8;
}
li {
  list-style: none;
}
.pc {
  display: block;
}
.sp,
.tb_only {
  display: none;
}
.br-pc {
  display: block;
}
.br-sp,
.br-tb {
  display: none;
}
.breadcrumbs {
  margin-bottom: 39px;
  margin-top: 9px;
  padding: 0 40px;
}
.breadcrumbs__item {
  display: inline-block;
  font-size: 12px;
  line-height: 1.5;
  margin-right: 0.3em;
}
.breadcrumbs__item + .breadcrumbs__item:before {
  content: ">";
  margin-right: 0.5em;
}
.btn {
  border: 1px solid #fff;
  border-radius: 5px;
  color: #fff;
  display: block;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.2em;
  line-height: 1.5;
  margin: 0 auto;
  max-width: 350px;
  padding: 13px 18px 13px 13px;
  position: relative;
  text-align: center;
}
.btn:after {
  border-color: #91abe1 #91abe1 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: block;
  height: 4px;
  margin-top: -4px;
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 4px;
}
.btn:hover {
  background-color: #fff;
  color: #002eb2;
  opacity: 1;
}
.btn:hover:after {
  border-color: #002eb2 #002eb2 transparent transparent;
}
.btn.-small {
  font-size: 12px;
  letter-spacing: 0.2em;
  max-width: 260px;
  padding: 5px 18px;
}
.btn.-blue {
  background-color: transparent;
  border: 1px solid #002eb2;
  color: #002eb2;
}
.btn.-blue:after {
  border-color: #002eb2 #002eb2 transparent transparent;
}
.btn.-blue:hover {
  background-color: #002eb2;
  color: #fff;
}
.btn.-blue:hover:after {
  border-color: #fff #fff transparent transparent;
}
.fixedBtn {
  display: none;
}
.navbtn {
  background: -webkit-linear-gradient(340deg, #0d45e5, #2e8ede);
  background: -o-linear-gradient(340deg, #0d45e5 0, #2e8ede 100%);
  background: linear-gradient(110deg, #0d45e5, #2e8ede);
  border-radius: 50%;
  display: none;
  margin-top: -21px;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transition: all 0.5s;
  -o-transition: all 0.5s;
  transition: all 0.5s;
  z-index: 1001;
}
.navbtn,
.navbtn button {
  cursor: pointer;
  height: 42px;
  width: 42px;
}
.navbtn button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: 0 0;
  border: none;
  color: transparent;
  display: block;
  font-family: Josefin Sans, sans-serif;
  font-size: 0;
  font-weight: 600;
  line-height: 0;
  outline: 0;
  padding: 0;
}
.navbtn span {
  background: #fff;
  bottom: 50%;
  display: block;
  height: 1px;
  left: 50%;
  position: absolute;
  -webkit-transform: translate(-50%, 50%);
  -ms-transform: translate(-50%, 50%);
  transform: translate(-50%, 50%);
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  width: 20px;
}
.navbtn span:after,
.navbtn span:before {
  background: #fff;
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  width: 20px;
}
.navbtn span:before {
  top: -6px;
}
.navbtn span:after {
  bottom: -6px;
}
.navbtn.js-active span {
  background: 0 0;
}
.navbtn.js-active span:before {
  -webkit-transform: translateY(6px) rotate(45deg);
  -ms-transform: translateY(6px) rotate(45deg);
  transform: translateY(6px) rotate(45deg);
}
.navbtn.js-active span:after {
  -webkit-transform: translateY(-6px) rotate(-45deg);
  -ms-transform: translateY(-6px) rotate(-45deg);
  transform: translateY(-6px) rotate(-45deg);
}
.pagetop {
  bottom: 150px;
  height: 50px;
  position: fixed;
  right: 20px;
  width: 50px;
  z-index: 997;
}
.pagetop.js-active {
  bottom: auto;
  position: absolute;
  top: -70px;
}
.pagetop__link {
  align-items: center;
  background: #002eb2;
  border-radius: 50%;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  height: 100%;
  justify-content: center;
  width: 100%;
}
.pagetop__link:hover {
  background: #0037d5;
  opacity: 1;
}
.title--borderL,
.title--borderL--yellow {
  border-left: 4px solid #002eb2;
  color: #252525;
  font-size: 18px;
  letter-spacing: 0.12em;
  line-height: 1.5;
  margin-bottom: 25px;
  padding-left: 14px;
}
.title--borderL--yellow {
  border-color: #fef200;
  font-size: 20px;
  letter-spacing: 0.12em;
  padding-left: 15px;
}
.title--borderB {
  color: #002eb2;
  font-size: 26px;
  letter-spacing: 0.2em;
  line-height: 1.65;
  text-align: center;
}
.title--borderB:after {
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  content: "";
  display: block;
  height: 3px;
  margin: 23px auto 0;
  width: 60px;
}
.title--borderB-yellow {
  color: #fff;
  font-size: 26px;
  letter-spacing: 0.2em;
  line-height: 1.65;
  text-align: center;
}
.title--borderB-yellow::after {
  background-color: #ffff00 !important;
  content: "";
  display: block;
  height: 3px;
  margin: 23px auto 0;
  width: 60px;
}
.title--borderB span.small {
  display: block;
  font-size: 14px;
  margin-bottom: 26px;
  margin-top: 4px;
}
.title--borderB--small {
  border-bottom: 1px solid #c2d1ee;
  color: #002eb2;
  line-height: 1.5;
  margin-bottom: 12px;
  padding-bottom: 7px;
}
.title--blue {
  color: #002eb2;
  font-size: 16px;
  letter-spacing: 0.12em;
  line-height: 1.5;
  margin-bottom: 11px;
}
.title--circle {
  font-weight: 500;
}
.title--circle:before {
  color: #002eb2;
  content: "● ";
}
.title--circle--yellow {
  font-size: 20px;
  letter-spacing: 0.25em;
}
.title--circle--yellow:before {
  color: #fef200;
  content: "● ";
  font-size: 18px;
}
.title--icon {
  color: #002eb2;
  font-size: 26px;
  letter-spacing: 0.2em;
  line-height: 1.6;
  text-align: center;
}
.title--icon.-white {
  color: #fff;
}
.bg--blue2 .title--icon {
  margin-bottom: 40px;
  padding-top: 60px;
}
.title--icon__img {
  display: block;
  margin: 0 auto 20px;
}
.title--icon__img img {
  max-width: 50px;
}
.app {
  margin: 0 auto 50px;
  max-width: 700px;
}
.app__img,
.app__title {
  margin-bottom: 28px;
}
.app__title {
  color: #629eac;
  font-size: 18px;
  font-size: 15px;
  letter-spacing: 0.2em;
  position: relative;
  text-align: center;
}
.app__title span {
  background: #fff;
  padding: 0 17px 0 20px;
  position: relative;
}
.app__title:before {
  background: #79b6c5;
  content: "";
  display: block;
  height: 1px;
  left: 0;
  position: absolute;
  top: 50%;
  width: 100%;
}
.app__download {
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
}
.app__download a {
  display: block;
  margin: 0 10px;
}
.app__download img {
  width: 157px;
}
.app__download + .app__link {
  margin-top: 34px;
}
.app__copy {
  font-size: 18px;
  line-height: 2.2;
  margin-bottom: 20px;
}
.app__copy,
.app__link {
  letter-spacing: 0.2em;
  text-align: center;
}
.app__link {
  color: #002eb2;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.7;
}
.app__linkBtn {
  margin-top: 20px;
}
.app__linkBtn .btn {
  font-size: 14px;
}
.commitment .bg--blue2,
.commitment.page__content {
  margin-bottom: 0;
}
.commitment .bg--blue2 + .section {
  margin-top: 90px;
}
.commitment__lead {
  font-size: 18px;
  letter-spacing: 0.2em;
  line-height: 1.8;
  margin: 21px 0 43px;
  text-align: center;
}
.commitment__lead + .btn--product {
  margin-bottom: 60px;
  margin-top: -10px;
}
.commitment__list__item {
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  border-radius: 15px;
  padding: 1px;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.commitment__list__item + .commitment__list__item {
  margin-top: 40px;
}
.commitment__list__link {
  background: #fff;
  border-radius: 14px;
  color: #404040;
  display: block;
  overflow: hidden;
  padding: 44px 75px 44px 30px;
  position: relative;
}
.commitment__list__link:after {
  border-color: #abc4f8 #abc4f8 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 6px;
  margin-left: 7px;
  margin-top: -4px;
  position: absolute;
  right: 32px;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 6px;
}
.commitment__list__link:hover {
  background: #f1f9ff;
  opacity: 1;
}
.commitment__list__link:hover:after {
  opacity: 1;
}
.commitment__list__img {
  float: left;
  width: 300px;
}
.commitment__list__img img {
  border-radius: 5px;
  width: 100%;
}
.commitment__list__name {
  -webkit-background-clip: text;
  background-clip: text;
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  color: #4f4fe5;
  display: block;
  float: right;
  font-size: 22px;
  letter-spacing: 0.12em;
  line-height: 1.6;
  margin-bottom: 10px;
  -webkit-text-fill-color: transparent;
  width: calc(100% - 350px);
}
.-caremaru .commitment__list__name,
.-kyouzai .commitment__list__name {
  margin-top: 12px;
}
.commitment__list__text {
  float: right;
  font-size: 16px;
  letter-spacing: 0.1em;
  line-height: 1.6;
  width: calc(100% - 350px);
}
.commitment__list__more {
  display: none;
}
.commitment__submenu {
  background: #fffcf4;
  padding: 70px 0 80px;
}
.commitment__submenu__title {
  color: #002eb2;
  font-size: 22px;
  letter-spacing: 0.2em;
  margin-bottom: 40px;
  text-align: center;
}
.commitment__submenu__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.commitment__submenu__item {
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  border-radius: 10px;
  padding: 1px;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  width: 32%;
}
.commitment__submenu__item + .commitment__submenu__item {
  margin-left: 2%;
}
.commitment__submenu__item a {
  align-items: center;
  background: #fff;
  border-radius: 9px;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 10px 15px;
  position: relative;
}
.commitment__submenu__item a:after {
  border-color: #abc4f8 #abc4f8 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 5px;
  margin-left: 7px;
  margin-top: -4px;
  position: absolute;
  right: 15px;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}
.commitment__submenu__item a:hover {
  background: #f1f9ff;
  opacity: 1;
}
.commitment__submenu__item a:hover:after {
  opacity: 1;
}
.commitment__submenu__img {
  display: block;
  width: 116px;
}
.commitment__submenu__img img {
  border-radius: 5px;
  width: 100%;
}
.commitment__submenu__text {
  -webkit-background-clip: text;
  background-clip: text;
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  color: #4f4fe5;
  display: block;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.12em;
  line-height: 1.45;
  -webkit-text-fill-color: transparent;
  width: calc(100% - 128px);
}
.bg--blue2.-elearning {
  background: url(../images/bg_eleaning.jpg) no-repeat top/100% auto, #0931c8;
}
.company__title {
  color: #4f4fe5;
  font-family: Noto Sans JP, sans-serif;
  font-size: 14px;
  letter-spacing: 0.12em;
  margin-bottom: 24px;
}
.company__title span {
  -webkit-background-clip: text;
  background-clip: text;
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  color: #4f4fe5;
  font-family: Josefin Sans, sans-serif;
  font-size: 34px;
  letter-spacing: 0.12em;
  margin-right: 9px;
  -webkit-text-fill-color: transparent;
}
.company__copy {
  font-size: 26px;
  letter-spacing: 0.2em;
  line-height: 1.85;
  margin-bottom: 15px;
}
.company__text {
  color: #6c7c83;
  font-size: 16px;
  letter-spacing: 0.2em;
  line-height: 2.13;
}
.company__vision .company__text {
  border-bottom: 1px solid #c2d1ee;
  padding-bottom: 50px;
}
.company__mission {
  margin-bottom: 71px;
  padding-top: 60px;
}
.company__dl {
  font-size: 16px;
  letter-spacing: 0.2em;
  line-height: 1.8;
}
.company__dl__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 23px 0;
}
.company__dl__inner + .company__dl__inner {
  border-top: 1px solid #c2d1ee;
}
.company__dl__dt {
  width: 192px;
}
.company__dl__dd {
  width: calc(100% - 192px);
}
.company__img {
  align-items: flex-start;
  -webkit-box-align: start;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.company__img img {
  display: block;
  width: 30%;
}
.section.summary {
  margin-bottom: 51px;
}
.message {
  background: #dfeffa;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 56px 40px 50px;
}
.message__left {
  position: relative;
  width: 250px;
}
.message__img img {
  display: block;
  max-width: 100%;
  padding-left: 20px;
}
.message__title {
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  color: #fff;
  font-size: 16px;
  font-weight: 500;
  left: 0;
  letter-spacing: 0.2em;
  padding: 8px 12px;
  position: absolute;
  top: -16px;
}
.message__right {
  width: calc(100% - 300px);
}
.message__position {
  color: #252525;
  letter-spacing: 0.2em;
  margin-bottom: 16px;
}
.message__name {
  color: #002eb2;
  font-size: 24px;
  letter-spacing: 0.2em;
  margin-bottom: 30px;
}
.message__name span {
  font-size: 18px;
  letter-spacing: 0.2em;
  margin-left: 11px;
}
.message__text {
  letter-spacing: 0.2em;
  line-height: 2.14;
}
.contact__faq {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 50px;
}
.contact__faq__text {
  background: #c9e4f6;
  border-radius: 15px 0 0 15px;
  line-height: 1.79;
  padding: 15px 30px;
  width: calc(100% - 390px);
}
.contact__faq__btn {
  background: #47a7ea;
  border-radius: 0 15px 15px 0;
  padding: 20px 30px 20px 40px;
  width: 390px;
}
.contact__faq__btn--large {
  margin: 0 auto 39px;
  max-width: 450px;
}
.contact__faq__btn--large a {
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#5555f4),
    to(#2cacf5)
  );
  background-image: -webkit-linear-gradient(right, #5555f4, #2cacf5);
  background-image: -o-linear-gradient(right, #5555f4, #2cacf5);
  background-image: linear-gradient(270deg, #5555f4, #2cacf5);
  border-radius: 10px;
  color: #fff;
  display: block;
  font-size: 18px;
  letter-spacing: 0.12em;
  overflow: hidden;
  padding: 20px 0 19px;
  position: relative;
  text-align: center;
}
.contact__faq__btn--large a:before {
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
.contact__faq__btn--large a:after {
  border-color: #abc4f8 #abc4f8 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 4px;
  margin-top: -4px;
  position: absolute;
  right: 22px;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 4px;
  z-index: 1;
}
.contact__faq__btn--large a > span {
  position: relative;
  z-index: 1;
}
.contact__faq__btn--large a .small {
  display: block;
  font-family: Josefin Sans, sans-serif;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin-top: 10px;
}
.contact__faq__btn--large a:hover {
  opacity: 1;
}
.contact__faq__btn--large a:hover:before {
  opacity: 0;
}
.contact__faq__btn--large a:hover:after {
  opacity: 1;
}
.contact__faq__link {
  align-items: center;
  border: 1px solid #fff;
  border-radius: 10px;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  font-size: 16px;
  height: 100%;
  justify-content: center;
  letter-spacing: 0.12em;
  position: relative;
  text-align: center;
}
.contact__faq__link:after {
  border-color: #fff #fff transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 4px;
  margin-top: -4px;
  position: absolute;
  right: 22px;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 4px;
}
.contact__faq__link:hover {
  background: #fff;
  color: #47a7ea;
  opacity: 1;
}
.contact__faq__link:hover:after {
  border-color: #47a7ea #47a7ea transparent transparent;
  opacity: 1;
}
.contact__faq__serial {
  margin-top: 29px;
  width: 100%;
}
.contact__faq__serial a {
  border-radius: 10px;
  color: #002eb2;
  font-size: 16px;
  letter-spacing: 0.12em;
  max-width: 380px;
}
.confirm .form__text {
  margin-bottom: 12px;
}
.thanks .form__step {
  border-radius: 6px;
  margin-bottom: 36px;
}
.thanks .form__text {
  line-height: 2.07;
  margin-bottom: 32px;
}
.content {
  margin-left: auto;
  margin-right: auto;
  max-width: 1120px;
  padding-left: 60px;
  padding-right: 60px;
  width: 100%;
}
.content2 {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: -120px;
  max-width: 1120px;
  padding-left: 20px;
  padding-right: 20px;
  width: 100%;
}
.content3 {
  margin-left: auto;
  margin-right: auto;
  padding-left: 20px;
  padding-right: 20px;
  width: 100%;
}
.content--column {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.content--column__title {
  width: 130px;
}
.content--column__main {
  padding: 50px 0 0;
  width: calc(100% - 130px);
}
.bg--blue {
  background: #f4fbff;
  padding: 80px 0 90px;
}
.bg--blue2 {
  background: #0931c8;
  color: #fff;
  padding-bottom: 20px;
}
.course .bg--blue2,
.course.page__content {
  margin-bottom: 0 !important;
}
.course .section {
  margin-bottom: 100px;
}
.course .bg--blue2 + .section {
  margin-top: 100px;
}
.course__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: -25px;
  padding-top: 5px;
}
.course__list__item {
  margin-bottom: 35px;
  margin-right: 3.5%;
  width: 31%;
}
.course__list__item:nth-of-type(3n) {
  margin-right: 0;
}
.course__list__link {
  border: 1px solid #4f4fe5;
  border-radius: 15px;
  color: #404040;
  display: block;
  height: 100%;
  padding: 30px 25px;
  position: relative;
}
.course__list__img {
  display: block;
  margin-bottom: 22px;
}
.course__list__img img {
  width: 100%;
}
.course__list__name {
  color: #002eb2;
  display: block;
  font-size: 20px;
  letter-spacing: 0.12em;
  margin-bottom: 14px;
  position: relative;
  text-align: center;
}
.course__list__name:after {
  border-color: #abc4f8 #abc4f8 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 4px;
  margin-top: -4px;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 4px;
}
.course__list__text {
  display: block;
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: 2;
}
.course__news {
  background: #dfeffa;
  padding: 40px 0;
}
.course__news__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1120px;
  padding-left: 60px;
  padding-right: 60px;
  width: 100%;
}
.course__news__title {
  color: #002eb2;
  font-size: 18px;
  letter-spacing: 0.12em;
  margin-bottom: 10px;
}
.course__news__item {
  border-bottom: 1px solid #c2d1ee;
}
.course__news__link {
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  line-height: 1.5;
  padding: 16px 0;
}
.course__news__date {
  color: #404040;
  display: block;
  font-size: 12px;
  letter-spacing: 0.12em;
  width: 130px;
}
.course__news__text {
  color: #002eb2;
  display: block;
  width: calc(100% - 130px);
}
.course__about__block {
  padding-bottom: 80px;
}
.course__about__block2 {
  padding-top: 100px;
  padding-bottom: 80px;
}
.course__about__block + .course__about__block {
  border-top: 1px solid #3c6bce;
  padding-top: 70px;
}
.course__about__block:last-of-type {
  padding-bottom: 60px;
}
.course__about__block .features__item__title,
.course__about__block .title--circle--yellow {
  margin: 0 100px;
}
.course__about__block.dialysis--info {
  background: #2363e6;
  border-radius: 10px;
  border-top: 0;
  padding: 40px 50px;
}
.course__about__block.dialysis--info .features__item__title {
  margin: 0 0 30px;
}
.course__about__block.dialysis--info .title--circle--yellow {
  margin: 0 0 16px;
}
.course__about__block.dialysis--info p {
  color: #fff;
  color: hsla(0, 0%, 100%, 0.9);
  letter-spacing: 0.09em;
  line-height: 1.7;
  margin-bottom: 20px;
}
.course__about__block.dialysis--info p:last-child {
  margin-bottom: 0;
}
.course__about__subtitle {
  color: #fef200;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin: 40px auto 0;
  text-align: center;
  width: 430px;
}
.course__about__subtitle span {
  background: #fef200;
  border-radius: 13px;
  color: #0931c8;
  display: block;
  margin-top: 14px;
  padding: 3px 0 6px;
  width: 100%;
}
.course__about__text {
  color: #fff;
  color: hsla(0, 0%, 100%, 0.8);
  line-height: 2;
  margin-bottom: 40px;
  padding: 0 100px;
}
.course__about__slider {
  margin: 30px 0;
}
.course__about__slider img {
  width: 100%;
}
.course__about__point {
  margin-bottom: 70px;
  padding: 0 100px;
}
.course__about__point:last-child {
  margin-bottom: 0;
}
.course__about__point__title {
  border-bottom: 2px solid #3481f3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 12px;
}
.course__about__point__title span {
  align-items: center;
  background: #3481f3;
  border-radius: 5px 5px 0 0;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  font-family: Josefin Sans, sans-serif;
  font-size: 14px;
  height: 26px;
  justify-content: center;
  letter-spacing: 0.15em;
  margin-bottom: -2px;
  padding: 4px 11px 0;
}
.course__about__point__title span:before {
  background: url(../images/ico_check.svg) no-repeat 2px 4px, #fff;
  background: url(../images/ico_check.svg) no-repeat 2px 4px,
    hsla(0, 0%, 100%, 0.9);
  border-radius: 50%;
  content: "";
  display: block;
  height: 14px;
  margin-right: 10px;
  margin-top: -2px;
  width: 14px;
}
.course__about__point__lead {
  border-bottom: 2px solid #3481f3;
  font-size: 16px;
  letter-spacing: 0.12em;
  line-height: 1.88;
  margin-bottom: 21px;
  padding-bottom: 12px;
}
.course__about__point__text {
  color: #fff;
  color: hsla(0, 0%, 100%, 0.9);
  line-height: 2;
  margin-bottom: 41px;
}
.course__about__point__text .text-circle {
  color: #3481f3;
  color: rgba(52, 129, 243, 0.8);
  font-size: 12px;
}
.course__about__step {
  margin: 0 auto 40px;
  max-width: 800px;
}
.course__about__step__item {
  margin-top: 34px;
}
.course__about__step__title {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.2em;
  margin-bottom: 13px;
}
.course__about__step__title .small {
  color: #abc4f8;
  font-family: Josefin Sans, sans-serif;
  font-size: 14px;
  letter-spacing: 0.1em;
  margin-right: 16px;
}
.course__about__step__text {
  color: #fff;
  color: hsla(0, 0%, 100%, 0.8);
  line-height: 1.7;
}
.course__about__feature {
  background: #eaf6ff;
  border-radius: 10px;
  color: #404040;
  margin: 0 auto 30px;
  max-width: 800px;
  padding: 20px 20px 14px;
}
.course__about__feature__title {
  border-bottom: 1px solid #39a6f1;
  color: #002eb2;
  font-size: 16px;
  letter-spacing: 0.2em;
  margin-bottom: 6px;
  padding-bottom: 10px;
}
.course__about__feature__text {
  line-height: 2;
}
.tokuchou {
  color: #404040;
  margin: 0 auto;
  max-width: 726px;
  padding: 0 13px;
}
.tokuchou__inner {
  background: #eaf6ff;
  border-radius: 10px;
  -webkit-box-shadow: 0 28px 30px -11px rgba(24, 20, 119, 0.8);
  box-shadow: 0 28px 30px -11px rgba(24, 20, 119, 0.8);
  padding: 14px 0 30px;
}
.tokuchou__title {
  background: #00228e;
  color: #fff;
  font-size: 22px;
  left: -13px;
  letter-spacing: 0.2em;
  margin-bottom: 7px;
  padding: 20px 0;
  position: relative;
  text-align: center;
  width: calc(100% + 26px);
}
.tokuchou__title:after,
.tokuchou__title:before {
  background: url(../images/bg_ribon_left.svg) no-repeat 50%;
  bottom: -13px;
  content: "";
  display: block;
  height: 14px;
  left: 0;
  position: absolute;
  width: 13px;
}
.tokuchou__title:after {
  background: url(../images/bg_ribon_right.svg) no-repeat 50%;
  left: auto;
  right: 0;
}
.tokuchou__title .small {
  display: block;
  font-size: 16px;
  letter-spacing: 0.2em;
  margin-bottom: 11px;
}
.tokuchou__list {
  padding: 0 50px;
}
.tokuchou__list + .btn {
  margin-top: 20px;
}
.tokuchou__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 15px 0;
}
.tokuchou__item + .tokuchou__item {
  border-top: 1px solid #c2d1ee;
}
.tokuchou__no {
  color: #39a6f1;
  font-family: Josefin Sans, sans-serif;
  letter-spacing: 0.1em;
  margin-top: 6px;
  width: 90px;
}
.tokuchou__no,
.tokuchou__text {
  font-weight: 700;
  line-height: 1.6;
}
.tokuchou__text {
  font-size: 18px;
  letter-spacing: 0.2em;
  width: calc(100% - 90px);
}
.tokuchou__more {
  margin: 7px 0 4px;
  text-align: center;
}
.tokuchou__more a {
  border-bottom: 1px solid #002eb2;
  color: #002eb2;
  font-family: Josefin Sans, sans-serif;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.12em;
}
.tokuchou__more a:after {
  border-color: #002eb2 #002eb2 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 4px;
  margin-left: 3px;
  margin-top: -2px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  width: 4px;
}
.btn--product .btn {
  align-items: center;
  border-radius: 10px;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  font-weight: 500;
  height: 50px;
  justify-content: center;
  max-width: 380px;
  padding: 0 18px;
}
.btn--product .btn:before {
  background: url(../images/ico_cart.svg) no-repeat 0 0;
  content: "";
  display: block;
  height: 28px;
  margin-right: 20px;
  width: 28px;
}
.btn--product .btn:after {
  border-color: transparent #002eb2 #002eb2 transparent;
  margin-top: -6px;
}
.btn--product .btn:hover:before {
  opacity: 1;
}
.btn--product .btn:hover:after {
  border-color: transparent #fff #fff transparent;
}
.btn--product--fixed {
  display: none;
  height: 186px;
  opacity: 1;
  position: fixed;
  right: 0;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  visibility: visible;
  z-index: 998;
}
.btn--product--fixed.js-none {
  opacity: 0;
  visibility: hidden;
}
.btn--product--fixed a {
  align-items: center;
  background: #fff;
  border-radius: 10px 0 0 10px;
  border: 1px solid #fff;
  border-right: none;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  color: #0437a2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  font-size: 14px;
  font-weight: 700;
  height: 100%;
  justify-content: center;
  letter-spacing: 0.15em;
  text-align: center;
  text-decoration: none;
  width: 50px;
  -ms-writing-mode: tb-rl;
  -webkit-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
.btn--product--fixed a:before {
  background: url(../images/ico_cart.svg) no-repeat 0 0/24px auto;
  content: "";
  display: block;
  height: 24px;
  margin-bottom: 10px;
  width: 24px;
}
.btn--product--fixed a:hover {
  background: #0437a2;
  color: #fff;
  opacity: 1;
}
.btn--product--fixed a:hover:before {
  opacity: 1;
}
.btn--product--fixed a span {
  display: block;
  margin-left: 7px;
}
.btn--product--fixed a span:-ms-input-placeholder {
  margin-left: 0;
}
.dialysis--info:last-child {
  margin-bottom: 80px;
}
.dialysis--info__img + p {
  margin-top: 25px;
}
.dialysis--info__img--01 img {
  max-width: 632px;
}
.dialysis--info__img--02 img {
  max-width: 590px;
}
.elearning .section {
  margin-bottom: 70px;
}
.elearning .section.bg--blue {
  margin-bottom: 0;
  padding: 70px 0 100px;
}
.elearning .section.bg--blue .app__img {
  margin-bottom: 70px;
  text-align: center;
}
.elearning .section.bg--blue .app__img img {
  width: 600px;
}
.elearning .app,
.elearning .form__thanks__btn {
  margin-bottom: 0;
}
.faq .section {
  margin-bottom: 70px;
}
.faq .title--borderL--yellow {
  margin-bottom: 8px;
}
.faq__list__item {
  border-bottom: 1px solid #c2d1ee;
  padding-bottom: 4px;
}
.faq__list__q {
  position: relative;
}
.faq__list__q button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: 0 0;
  border: 0;
  color: #002eb2;
  cursor: pointer;
  display: block;
  font-family: Noto Sans JP, sans-serif;
  font-size: 16px;
  letter-spacing: 0.12em;
  line-height: 1.69;
  padding: 15px 20px 12px 0;
  text-align: left;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  width: 100%;
}
.faq__list__q button:hover {
  opacity: 0.8;
}
.faq__list__q:after,
.faq__list__q:before {
  background: #91abe1;
  content: "";
  display: block;
  position: absolute;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
}
.faq__list__q:before {
  height: 1px;
  right: 0;
  top: 50%;
  width: 13px;
}
.faq__list__q:after {
  height: 13px;
  margin-top: -6px;
  right: 6px;
  top: 50%;
  width: 1px;
}
.faq__list__q.js-open button {
  padding-bottom: 13px;
}
.faq__list__q.js-open:after {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.faq__list__a {
  display: none;
  padding-bottom: 20px;
}
.faq__text {
  line-height: 1.85;
}
.faq__text + .faq__text {
  margin-top: 16px;
}
.faq__contact {
  background: #c9e4f6;
  border-radius: 15px;
  padding: 36px 20px 40px;
}
.faq__contact__title {
  color: #002eb2;
  font-size: 18px;
  letter-spacing: 0.12em;
  line-height: 1.5;
  margin-bottom: 16px;
  text-align: center;
}
.faq__contact__title:after {
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  content: "";
  display: block;
  height: 3px;
  margin: 16px auto 0;
  width: 60px;
}
.faq__contact__text {
  line-height: 1.5;
  margin-bottom: 26px;
  text-align: center;
}
.faq__contact__btn {
  margin: 0 auto;
  max-width: 350px;
}
.faq__contact__btn a {
  background: #0437a2;
  border-radius: 10px;
  color: #fff;
  display: block;
  font-size: 16px;
  letter-spacing: 0.12em;
  padding: 16px 20px 18px;
  text-align: center;
  width: 100%;
}
.features__movie iframe {
  display: block;
  margin: 0 auto;
}
.features__movie + .course__about__block {
  margin-top: 70px;
}
.features__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 70px 0 20px;
}
.features__list.-column3 {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.features__item {
  margin-bottom: 40px;
  width: 47%;
}
.-column3 .features__item {
  width: 30%;
}
.features__item:nth-of-type(odd) {
  margin-right: 6%;
}
.-column3 .features__item:nth-of-type(odd) {
  margin-right: 0;
}
.features__item__title {
  border-left: 3px solid #fef200;
  font-size: 20px;
  letter-spacing: 0.18em;
  line-height: 1.45;
  margin-bottom: 20px;
  padding-left: 19px;
}
.features__item__title__wrap {
  margin-bottom: 20px;
}
.features__item__title.-blue {
  border-color: #39a6f1;
}
.course .features__item__title {
  font-size: 22px;
  line-height: 1.2;
  margin-bottom: 0;
}
.features__item__title + .course__about__text {
  margin-top: 13px;
}
.features__item__img {
  border-radius: 10px;
  margin-bottom: 13px;
  overflow: hidden;
}
.features__item__img img {
  width: 100%;
}
.features__item__text {
  color: #fff;
  color: hsla(0, 0%, 100%, 0.8);
  letter-spacing: 0.1em;
  line-height: 1.8;
}
.features__item .btn {
  margin-top: 15px;
}
.features__use {
  border-top: 1px solid #3c6bce;
  padding-top: 60px;
}
.features__use:last-child {
  margin-bottom: 80px;
}
.features__use__title {
  font-size: 18px;
  letter-spacing: 0.2em;
  margin-bottom: 30px;
  text-align: center;
}
.flow {
  margin: 0 auto;
  max-width: 800px;
}
.flow__block {
  background: #f1f7fb;
  border-radius: 10px;
  margin-top: 30px;
  padding: 25px 40px;
}
.flow__block + .flow__block {
  position: relative;
}
.flow__block + .flow__block:before {
  border-color: transparent #abc4f8 #abc4f8 transparent;
  border-style: solid;
  border-width: 3px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 6px;
  margin-right: -10px;
  position: absolute;
  right: 50%;
  top: -25px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 6px;
}
.flow__title {
  color: #002eb2;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.2em;
  line-height: 1.65;
  margin-bottom: 10px;
}
.flow__text {
  font-size: 16px;
  line-height: 1.9;
}
.footer {
  background: #525f78;
  position: relative;
}
.footer__inner {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding: 40px 60px 50px;
  width: 100%;
}
.footer__info {
  color: #c8ced8;
  font-size: 12px;
  letter-spacing: 0.12em;
  line-height: 1.8;
  width: 300px;
}
.footer__logo {
  margin-bottom: 25px;
}
.footer__logo img {
  width: 127px;
}
.footer__lead {
  border-bottom: 1px solid #858b95;
  margin-bottom: 25px;
  padding-bottom: 25px;
}
.footer__address {
  font-style: normal;
}
.footer__nav {
  width: 714px;
}
.footer__nav__title {
  border-left: 3px solid #fef200;
  color: #fff;
  line-height: 1.3;
  margin-bottom: 14px;
  padding-left: 10px;
}
.ftnav {
  border-bottom: 1px solid #858b95;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 30px;
  padding-bottom: 8px;
  padding-top: 11px;
}
.ftnav.-small {
  border-bottom: 0;
  margin-bottom: 0;
  padding: 0;
}
.ftnav__item {
  border-left: 1px solid #858b95;
  margin-bottom: 20px;
  padding: 0 18px;
}
.ftnav__link {
  color: #c8ced8;
  display: block;
}
.ftnav__link:hover {
  color: #fff;
  opacity: 1;
}
.-small .ftnav__link,
.copyright {
  font-size: 12px;
  letter-spacing: 0.12em;
}
.copyright {
  background: #2d3953;
  color: #b3b8c1;
  display: block;
  padding: 12px 0;
  text-align: center;
  width: 100%;
}
.form__title {
  background: #0437a2;
  border-radius: 25px;
  color: #fff;
  font-size: 20px;
  font-weight: 500;
  letter-spacing: 0.12em;
  line-height: 1.5;
  padding: 9px 30px 11px;
}
.form__title + .form__text {
  margin-top: 14px;
}
.form__title + .form__step {
  margin-top: 20px;
}
.form__text {
  font-size: 14px;
  line-height: 1.7;
  margin-bottom: 26px;
}
.form__text--confirm {
  line-height: 1.9;
}
.form__text .small {
  font-size: 12px;
}
.form__step {
  background: #dfeffa;
  border-radius: 6px 6px 0 0;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  padding: 13px 0 14px;
}
.form__step__item {
  color: #bcbcbc;
}
.form__step__item + .form__step__item:before {
  border-color: #47a7ea #47a7ea transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 4px;
  margin: -2px 15px 0 9px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  width: 4px;
}
.form__step__item.-current {
  color: #002eb2;
}
.form__content {
  background: #f1f7fb;
  border-radius: 0 0 6px 6px;
  padding: 40px 30px 50px;
}
.form__content__title {
  border-left: 2px solid #0437a2;
  color: #0437a2;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.12em;
  line-height: 1.2;
  margin-bottom: 20px;
  padding-left: 8px;
}
.form__block + .form__content__title {
  margin-top: 45px;
}
.form__block__inner {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.form__block__inner + .form__block__inner {
  margin-top: 20px;
}
.form__block__dt {
  font-size: 16px;
  letter-spacing: 0.12em;
  line-height: 1.56;
  padding-top: 7px;
  width: 238px;
}
.confirm .form__block__dt {
  font-size: 14px;
  font-weight: 700;
  line-height: 1.9;
  padding-top: 0;
}
.form__block__dt .small {
  font-size: 12px;
  margin-top: 6px;
}
.form__block__dt label {
  align-items: flex-start;
  -webkit-box-align: start;
  -ms-flex-align: start;
}
.form__block__dd,
.form__block__dt label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.form__block__dd {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: calc(100% - 238px);
}
.confirm .form__block__dd {
  padding-top: 7px;
}
.form__check {
  background: #fff;
  border-radius: 6px;
  max-width: 410px;
  padding: 14px 15px;
  width: 100%;
}
.confirm .form__check {
  background: 0 0;
  border-radius: none;
  padding: 0;
}
.form__check li + li {
  margin-top: 15px;
}
.form__btn {
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 40px;
}
.serialcode.confirm .form__btn {
  margin-top: 0;
}
.form__btn__item {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: 0 0;
  border: 0;
  border-radius: 10px;
  color: #fff;
  cursor: pointer;
  display: block;
  font-family: Noto Sans JP, sans-serif;
  font-size: 16px;
  letter-spacing: 0.12em;
  margin: 0 15px;
  max-width: 350px;
  padding: 13px 20px 15px;
  text-align: center;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  width: 100%;
}
.form__btn__item.-submit {
  background: #47a7ea;
}
.form__btn__item.-submit:hover {
  background: #23a5ff;
}
.form__btn__item.-prev {
  background: #8894aa;
}
.form__btn__item.-prev:hover {
  background: #8d9cb8;
}
.form__btn__agree {
  margin-bottom: 15px;
  text-align: center;
  width: 100%;
}
.confirm .form__btn__agree {
  line-height: 1.79;
  margin-bottom: 40px;
  text-align: left;
}
.form__thanks__title {
  color: #002eb2;
  font-size: 20px;
  letter-spacing: 0.12em;
  margin-bottom: 20px;
}
.form__thanks__btn {
  margin: 0 auto 53px;
  max-width: 300px;
}
.form__thanks__btn a {
  background: #8894aa;
  border-radius: 10px;
  color: #fff;
  display: block;
  font-size: 16px;
  letter-spacing: 0.12em;
  padding: 12px 0;
  text-align: center;
}
.form__thanks__btn a:hover {
  background: #8d9cb8;
  opacity: 1;
}
.form__mail {
  background: #dfeffa;
  border-radius: 15px;
  margin-bottom: 40px;
  padding: 38px 0;
}
.form__mail--text {
  line-height: 1.79;
  margin-bottom: 15px;
}
.form__mail--text:before {
  color: #002eb2;
  content: "● ";
}
.form__mail__title {
  color: #002eb2;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin-bottom: 15px;
  text-align: center;
}
.form__mail__title:after {
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  content: "";
  display: block;
  height: 3px;
  margin: 15px auto 0;
  width: 60px;
}
.form__mail__address {
  background: #fff;
  border-radius: 10px;
  color: #002eb2;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin: 0 auto 17px;
  max-width: 400px;
  padding: 17px 0;
  text-align: center;
}
.form__mail__caution {
  color: #e34343;
  font-size: 12px;
  letter-spacing: 0.12em;
  line-height: 1.5;
  text-align: center;
}
.form__checklist {
  margin-top: 70px;
}
.confirm .form__checklist {
  margin-top: 42px;
}
.form__checklist__title {
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 20px;
}
.form__checklist__title:before {
  color: #47a7ea;
  content: "● ";
  font-size: 14px;
}
.form__checklist__main {
  background: #fff;
  border-radius: 6px;
  padding: 16px 20px;
}
.confirm .form__checklist__main {
  display: none;
}
.form__checklist__item + .form__checklist__item {
  margin-top: 8px;
}
.form__checklist h4 {
  color: #002eb2;
  line-height: 1.79;
}
.form__checklist p {
  line-height: 1.79;
}
.form__checklist a {
  color: #1883f1;
}
.form__confirm {
  display: flex;
  justify-content: center;
  flex-direction: column;
  text-align: center;
  margin-top: 40px;
  line-height: 1.5;
}
.form__confirm__annotation {
  font-size: 12px;
  text-align: center;
}
.form__confirm__annotation a {
  color: #002eb2;
}
.form__confirm__checkbox {
  margin-top: 20px;
  text-align: center;
}

input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 0;
  padding: 0;
}
input[type="email"],
input[type="text"] {
  border: 1px solid #c2d1ee;
  border-radius: 6px;
  font-family: Noto Sans JP, sans-serif;
  padding: 11px 13px;
  width: 100%;
}
input#zip {
  max-width: 200px;
}
input[type="checkbox"] {
  display: none;
}
input[type="checkbox"]:checked + .checkbox:after,
input[type="checkbox"]:checked + .mwform-checkbox-field-text:after {
  border-bottom: 2px solid #4472c8;
  border-right: 2px solid #4472c8;
  content: "";
  display: block;
  height: 6px;
  left: 7px;
  position: absolute;
  top: 5px;
  -webkit-transform: rotate(40deg);
  -ms-transform: rotate(40deg);
  transform: rotate(40deg);
  width: 3px;
}
.input--item {
  max-width: 410px;
  width: 100%;
}
.input--item.half {
  max-width: 200px;
}
.input--item.half + .half {
  margin-left: 10px;
}
.confirm .input--item.half {
  width: auto;
}
.input--item.full {
  max-width: 100%;
}
.input--item.tel {
  max-width: 250px;
}
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #c2d1ee;
  border-radius: 6px;
  font-family: Noto Sans JP, sans-serif;
  height: 100px;
  padding: 11px 13px;
  width: 100%;
}
.checkbox,
.mwform-checkbox-field-text:before {
  background: #fff;
  border: 1px solid #c2d1ee;
  border-radius: 3px;
  display: inline-block;
  height: 16px;
  margin-right: 9px;
  position: relative;
  vertical-align: sub;
  width: 16px;
}
.checkbox--wrap {
  cursor: pointer;
}
.mw_wp_form .form__check .vertical-item {
  display: block;
}
.mw_wp_form .form__check .vertical-item + .vertical-item {
  margin-top: 15px;
}
.mwform-checkbox-field-text {
  position: relative;
}
.mwform-checkbox-field-text:before {
  content: "";
}
.zipbtn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #002eb2;
  border: 0;
  border-radius: 6px;
  color: #fff;
  cursor: pointer;
  font-family: Noto Sans JP, sans-serif;
  font-size: 12px;
  letter-spacing: 0.12em;
  margin-left: 5px;
  margin-top: 6px;
  padding: 5px 0 7px;
  text-align: center;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  width: 120px;
}
.zipbtn:hover {
  background: #0037d5;
}
.confirm .zipbtn {
  display: none;
}
.optional,
.required {
  background: #8894aa;
  border-radius: 4px;
  color: #fff;
  display: inline-block;
  font-size: 12px;
  line-height: 1;
  margin-right: 12px;
  margin-top: 3px;
  padding: 4px 5px 5px;
}
.confirm .optional,
.confirm .required {
  display: none;
}
.required {
  background: #e34343;
}
.error {
  color: #b70000;
  display: block;
  font-size: 93%;
  margin-top: 0.5em;
}
.gnav {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 1000px;
  width: calc(100% - 180px);
}
.gnav,
.gnav__item {
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: justify;
  justify-content: flex-end;
}
.gnav__item {
  margin-left: 0;
  height: 100%;
}
.gnav__link {
  color: #002eb2;
  font-size: 16px;
  letter-spacing: 0.12em;
  position: relative;
}
.gnav__link:hover {
  color: #053fe6;
  opacity: 1;
}
.gnav__item__recruit {
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.gnav__toggle--pc {
  padding-right: 17px;
  position: relative;
}
.gnav__toggle--pc:before {
  border-color: transparent #104cc8 #104cc8 transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: block;
  height: 4px;
  margin-top: -5px;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 4px;
}
.gnav__toggle--pc:hover:before {
  border-color: transparent #053fe6 #053fe6 transparent;
  opacity: 1;
}
.gnav__toggle--sp {
  display: none;
}
.gnav__toggle--block {
  background: #002eb2;
  width: 100%;
}
.gnav__second {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-left: auto;
  margin-right: auto;
  max-width: 1120px;
  padding: 50px 70px 10px 60px;
  width: 100%;
}
.gnav__second__item {
  margin-bottom: 40px;
  margin-right: 50px;
}
.gnav__second__item.-sp {
  display: none;
}
.gnav__second__link {
  color: #dde2ea;
  letter-spacing: 0.12em;
}
.gnav__second__link:before {
  border-color: #91abe1 #91abe1 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 4px;
  margin-right: 10px;
  margin-top: -2px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  width: 4px;
}
.gnav__second__link:hover {
  color: #fef200;
  opacity: 1;
}
.gnav__second__link:hover:before {
  opacity: 1;
}
.header {
  background: #fff;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 0 8px 0 20px;
  position: relative;
  z-index: 9999;
}
.header__logo {
  padding: 15px 0;
}
.header__logo a:hover {
  opacity: 0.8;
}
.header__logo img {
  max-width: 127px;
}
.header__nav {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 1000px;
  width: calc(100% - 180px);
}
.header__nav.js-active {
  opacity: 1;
  visibility: inherit;
}
.header__btn {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.header__btn,
.header__btn__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.header__btn__item {
  align-items: flex-end;
  -webkit-box-align: end;
  -ms-flex-align: end;
  text-align: center;
}
.header__btn__item a {
  border-radius: 10px 10px 0 0;
  font-weight: 700;
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  font-size: 15px;
  height: 54px;
  justify-content: center;
  margin-top: 0;
  text-align: center;
  width: 100%;
}
.header__btn__item a:hover {
  height: 54px;
  opacity: 1;
}
.header__btn__item.-eLearning {
  margin-right: 5px;
  width: 152px;
}
.header__btn__item.-eLearning img {
  display: block;
  margin: 0 auto 5px;
  width: 92px;
}
.header__btn__item.-eLearning a {
  background: #fef200;
  color: #000;
  /*padding-top: 13px;*/
}
.header__btn__item.-contact {
  width: 172px;
}
.header__btn__item.-contact a {
  background: #0437a2;
  color: #fff;
  padding-top: 21px;
}
.header__btn__item.-contact a:before {
  background: url(../images/ico_mail.svg) no-repeat top/16px 12px;
  content: "";
  display: inline-block;
  height: 12px;
  margin-right: 10px;
  vertical-align: middle;
  width: 16px;
}
.header__btn__item.-contact a:hover {
  background: #002eb2;
}
.header__btn__item.-contact a:hover:before {
  opacity: 1;
}
.kv {
  height: 522px;
  margin-bottom: 57px;
  position: relative;
}
.kv:before {
  background: url(../images/img_kv_deco.svg) no-repeat 0 0 / cover;
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 5;
}
.kv__inner {
  align-items: flex-end;
  -webkit-box-align: end;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: end;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  height: 100%;
  justify-content: space-between;
  margin-left: auto;
  margin-right: auto;
  max-width: 1280px;
  padding-left: 60px;
  padding-right: 60px;
  position: relative;
  width: 100%;
  z-index: 10;
}
.kv__lead {
  margin-bottom: 64px;
}
.kv__lead__sub {
  background: url(../images/bg_kv_lead_sub.svg) no-repeat 100% 0;
  color: #fff;
  display: inline-block;
  font-size: 16px;
  letter-spacing: 0.12em;
  margin-bottom: 15px;
  padding: 10px 25px 10px 15px;
}
.kv__lead__main {
  align-items: flex-start;
  -webkit-box-align: start;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -webkit-box-pack: start;
  -ms-flex-align: start;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: start;
  font-weight: 700;
  justify-content: flex-start;
}
.kv__lead__main,
.kv__lead__main span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.kv__lead__main span {
  align-items: center;
  background: #fff;
  -webkit-box-align: center;
  -ms-flex-align: center;
  font-size: 28px;
  height: 50px;
  letter-spacing: 0.12em;
  padding: 0 16px 3px;
}
.kv__lead__main span + span {
  margin-top: 6px;
}
.kv__lead__main strong {
  font-size: 36px;
  letter-spacing: 0.12em;
}
.kv__lead__main strong.blue {
  color: #104cc8;
}
.kv__link {
  -webkit-box-pack: end;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: end;
  justify-content: flex-end;
  padding-right: 80px;
}
.kv__link a {
  display: block;
  width: 259px;
}
.kv__slider {
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 0;
}
.kv__slider__item {
  height: 522px;
}
.kv__slider__item--01 {
  background: url(../images/img_main_01.jpg) no-repeat top/cover;
}
.kv__slider__item--02 {
  background: url(../images/img_main_02.jpg) no-repeat top/cover;
}
.kv__slider__item--03 {
  background: url(../images/img_main_03.jpg) no-repeat top/cover;
}
.f--red {
  color: #e34343;
}
.f--yellow {
  color: #fbfe00;
}
.f--blue {
  color: #002eb2;
}
.page__content {
  margin-bottom: 90px;
  padding-top: 40px;
}
.page__content.company {
  padding-top: 0;
}
.page__content.contact,
.page__content.serialcode {
  padding-top: 30px;
}
.page__content.elearning {
  margin-bottom: 0;
  padding-top: 60px;
}
.page__header {
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -webkit-box-pack: center;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  font-size: 30px;
  height: 250px;
  justify-content: center;
  letter-spacing: 0.2em;
  line-height: 1.56;
  text-align: center;
}
.page__header.-commitment {
  background: url(../images/bg_commitment_title.png) no-repeat 50% / cover;
}
.page__header.-elearning {
  background: url(../images/bg_elearning_title.png) no-repeat 50% / cover;
}
.page__header.-caremaru {
  background: url(../images/bg_caremaru_title.png) no-repeat 50% / cover;
}
.page__header.-teachingmaterial {
  background: url(../images/bg_teachingmaterial_title.png) no-repeat 50% / cover;
}
.page__header.-test {
  background: url(../images/bg_test_title.png) no-repeat 50% / cover;
}
.page__header.-result {
  background: url(../images/bg_result_title.png) no-repeat 50% / cover;
}
.page__header.-company {
  background: url(../images/bg_company_title.png) no-repeat 50% / cover;
}
.page__header.-kokyu {
  background: url(../images/bg_kokyu_title.png) no-repeat 50% / cover;
}
.page__header.-course {
  background: url(../images/bg_course_title.png) no-repeat 50% / cover;
}
.page__header.-syumatsuki {
  background: url(../images/bg_syumatsuki_title.png) no-repeat 50% / cover;
}
.page__header.-syumatsuki02 {
  background: url(../images/bg_syumatsuki02_title.png) no-repeat 50% / cover;
}
.page__header.-kyuseiki {
  background: url(../images/bg_kyuseiki_title.png) no-repeat 50% / cover;
}
.page__header.-zaitaku {
  background: url(../images/bg_zaitaku_title.png) no-repeat 50% / cover;
}
.page__header.-zaitakukaigo {
  background: url(../images/bg_zaitakukaigo_title.png) no-repeat 50% / cover;
}
.page__header.-dementia {
  background: url(../images/bg_dementia_title.png) no-repeat 50% / cover;
}
.page__header.-dementia02 {
  background: url(../images/bg_dementia02_title.png) no-repeat 50% / cover;
}
.page__header.-guidance {
  background: url(../images/bg_guidance_title.png) no-repeat 50% / cover;
}
.page__header.-dialysis {
  background: url(../images/bg_dialysis_title.png) no-repeat 50% / cover;
}
.page__header.-diabetes {
  background: url(../images/bg_diabetes_title.png) no-repeat 50% / cover;
}
.page__header.-elearning02 {
  background: url(../images/bg_elearning02_title.png) no-repeat 50% / cover;
}
.page__header.-kazokucare {
  background: url(../images/bg_kazokucare_title.png) no-repeat 50% / cover;
}
.page__header.-shindenzu {
  align-items: flex-start;
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -webkit-box-pack: center;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  -ms-flex-align: start;
  -ms-flex-direction: column;
  -ms-flex-pack: center;
  letter-spacing: 0.12em;
}

.page__header span {
  display: block;
  font-family: Josefin Sans, sans-serif;
  font-size: 14px;
  letter-spacing: 0.2em;
  margin-top: 17px;
}
.page__header--simple {
  align-items: flex-start;
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  -webkit-box-align: start;
  -webkit-box-direction: normal;
  -webkit-box-orient: vertical;
  -webkit-box-pack: center;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: start;
  -ms-flex-direction: column;
  flex-direction: column;
  -ms-flex-pack: center;
  font-size: 24px;
  height: 120px;
  justify-content: center;
  letter-spacing: 0.12em;
}
.page__header--simple span {
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 1120px;
  padding-left: 60px;
  padding-right: 60px;
  width: 100%;
}
.page__header--simple__small {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.79;
  margin-top: 10px;
}
.page__navi {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 60px;
}
.page__navi,
.page__navi__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.page__navi__link {
  align-items: center;
  border: 1px solid #002eb2;
  border-radius: 10px;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  color: #002eb2;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  font-size: 16px;
  justify-content: center;
  letter-spacing: 0.12em;
  line-height: 1.7;
  padding: 12px 0 13px;
  position: relative;
  text-align: center;
  width: 49%;
}
.-column3 .page__navi__link {
  width: 32%;
}
.-white .page__navi__link {
  border: 1px solid #fff;
  color: #fff;
  font-size: 14px;
  line-height: 1.5;
  padding: 15px 0;
  margin-bottom: 10px;
}
.-white .page__navi__link:after {
  border-color: transparent #91abe1 #91abe1 transparent;
}
.-white .page__navi__link:hover {
  background: #fff;
  color: #0931c8;
}
.-white .page__navi__link:hover:after {
  border-color: transparent #0931c8 #0931c8 transparent;
}
.page__navi__link:after {
  border-color: transparent #002eb2 #002eb2 transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: block;
  height: 5px;
  margin-top: -5px;
  position: absolute;
  right: 20px;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 5px;
}
.page__navi__link:hover {
  background: #002eb2;
  color: #fff;
  opacity: 1;
}
.page__navi__link:hover:after {
  border-color: transparent #fff #fff transparent;
}
.page__lead {
  color: #002eb2;
  font-size: 16px;
  line-height: 1.7;
}
.page__lead + .page__lead--text {
  margin-top: 8px;
}
.page__lead--text {
  line-height: 1.7;
  margin-bottom: 36px;
}
.page__dl {
  margin-left: auto;
  margin-right: auto;
  max-width: 1120px;
  padding-left: 60px;
  padding-right: 60px;
  width: 100%;
}
.page__dl dt {
  background: #002eb2;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.12em;
  margin-bottom: 16px;
  padding: 9px 10px;
}
.page__dl dd {
  line-height: 1.5;
  margin-bottom: 26px;
}
.page__dl dd h2 {
  color: #002eb2;
  font-weight: 700;
}
.page__dl dd .img {
  margin-bottom: 20px;
  margin-top: 12px;
}
.page__dl dd p + p {
  margin-top: 17px;
}
.page__dl dd p + h3 {
  margin-top: 11px;
}
.page__dl dd hr {
  border-top: 1px solid #c2d1ee;
  margin: 30px 0;
}
.page__dl dd hr + h2 {
  margin-top: -9px;
}
.-small {
  font-size: 12px;
  letter-spacing: 0.12em;
}
.-red {
  color: #e34343;
}
.-center {
  text-align: center;
}
.passrate {
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  margin-bottom: 70px;
}
.passrate:last-child {
  margin-bottom: 0;
}
.commitment .passrate {
  padding-top: 53px;
}
.passrate__item {
  width: 450px;
}
.passrate__item + .passrate__item {
  margin-left: 40px;
}
.passrate__title {
  color: #fbfe00;
  font-size: 26px;
  letter-spacing: 0.2em;
  line-height: 1.65;
  margin-bottom: 23px;
  text-align: center;
  width: 100%;
}
.passrate__title.-slash:after,
.passrate__title.-slash:before {
  background: url(../images/slash_left_pc.svg) no-repeat 0 0/17px 24px;
  content: "";
  display: inline-block;
  height: 24px;
  margin-right: 15px;
  vertical-align: middle;
  width: 17px;
}
.passrate__title.-slash:after {
  background: url(../images/slash_right_pc.svg) no-repeat 100% 0/17px 24px;
  margin-left: 15px;
  margin-right: 0;
}
.passrate__title + .passrate__item {
  margin-top: 33px;
}
.passrate__text {
  font-size: 16px;
  letter-spacing: 0.12em;
  line-height: 1.69;
  margin-bottom: 55px;
  text-align: center;
  width: 100%;
}
.passrate__lead {
  background: #3481f3;
  border-radius: 10px;
  margin-bottom: 17px;
  overflow: hidden;
  padding: 17px 0;
}
.passrate__lead.-layout2 {
  background: #eaf6ff;
  color: #002eb2;
  padding-top: 0;
}
.passrate__lead__title {
  background: #3481f3;
  color: #fff;
  font-size: 16px;
  letter-spacing: 0.2em;
  margin-bottom: 16px;
  padding: 12px 10px;
  text-align: center;
}
.passrate__lead__text {
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  font-size: 16px;
  justify-content: center;
  letter-spacing: 0.15em;
  text-align: center;
}
.passrate__lead__text .passtext {
  letter-spacing: 0.2em;
  margin-right: 7px;
}
.passrate__lead__text .large {
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 0.1em;
  margin-bottom: 4px;
}
.passrate__lead__text .small {
  font-size: 18px;
  line-height: 1;
  margin-top: 2px;
}
.passrate__lead__kome {
  color: #e4efff;
  font-size: 12px;
  letter-spacing: 0.2em;
  margin-top: 7px;
  text-align: center;
}
.-layout2 .passrate__lead__kome {
  color: #404040;
}
.passrate__for {
  height: 38px;
  margin: 0 auto 13px;
  padding: 3px 0 0;
  text-align: center;
}
.passrate__for img {
  height: 100%;
}
.passrate__main {
  background: #0d00b4;
  border-radius: 10px;
  -webkit-box-shadow: 0 28px 30px -11px rgba(24, 20, 119, 0.8);
  box-shadow: 0 28px 30px -11px rgba(24, 20, 119, 0.8);
  padding: 30px 20px;
}
.passrate__main + .btn {
  margin-top: 50px;
}
.passrate__name {
  margin-bottom: 28px;
  text-align: center;
}
.passrate__name span {
  display: block;
  letter-spacing: 0.2em;
}
.passrate__name span + span {
  margin-top: 10px;
}
.passrate__name__sub {
  font-size: 16px;
}
.passrate__name__text {
  font-size: 24px;
}
.passrate__name__sup {
  font-size: 12px;
  font-weight: 400;
}
.passrate__graph {
  text-align: center;
}
.passrate__graph img {
  width: 218px;
}
.passrate__supplement {
  font-size: 12px;
  letter-spacing: 0.2em;
  margin-top: 30px;
  text-align: center;
}
.point {
  margin: 0 auto 50px;
  max-width: 700px;
}
.point__title {
  background: #002eb2;
  border-radius: 20px;
  color: #fff;
  font-size: 20px;
  letter-spacing: 0.2em;
  line-height: 1.47;
  margin-bottom: 20px;
  padding: 5px 0 6px;
  text-align: center;
}
.point__list {
  background: #eaf6ff;
  border-radius: 10px;
  padding: 15px 30px;
}
.point__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 15px 0;
}
.point__item + .point__item {
  border-top: 1px solid #c2d1ee;
}
.point__no {
  color: #39a6f1;
  font-family: Josefin Sans, sans-serif;
  letter-spacing: 0.1em;
  margin-top: 6px;
  width: 90px;
}
.point__no,
.point__text {
  font-weight: 700;
  line-height: 1.6;
}
.point__text {
  font-size: 18px;
  letter-spacing: 0.2em;
  width: calc(100% - 90px);
}
.privacy .section {
  margin-bottom: 60px;
}
.privacy__lead {
  line-height: 1.8;
  margin-bottom: 34px;
}
.privacy__text {
  line-height: 1.8;
  margin-bottom: 25px;
}
.privacy__text--circle + p {
  margin-top: 1em !important;
}
.privacy__text--circle:before {
  color: #002eb2;
  content: "● ";
}
.privacy .page__dl dd hr {
  margin: 20px 0;
}
.privacy__supplement {
  background: #c9e4f6;
  background: rgba(201, 228, 246, 0.6);
  border-radius: 15px;
  margin-top: 13px;
  padding: 12px 20px;
}
.privacy__supplement h5 {
  color: #002eb2;
  margin-bottom: 4px;
}
.privacy__supplement p {
  font-size: 12px;
  letter-spacing: 0.12em;
}
.privacy__supplement p.-large {
  font-size: 14px;
  letter-spacing: 0.12em;
}
.product {
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
  margin: 30px auto -25px;
  max-width: 1160px;
  width: 100%;
}
.bg--blue2 .product {
  margin-top: 70px;
}
.product__item {
  background: #fff;
  border: 1px solid #002eb2;
  color: #404040;
  margin-bottom: 25px;
  margin-left: 25px;
  width: 370px;
}
.bg--blue2 .product__item {
  border-color: #24a3fa;
}
.product__item:nth-of-type(3n-2) {
  margin-left: 0;
}
.product__title {
  background: #002eb2;
  color: #fff;
  font-size: 18px;
  letter-spacing: 0.12em;
  line-height: 1.44;
  margin-top: -1px;
  padding: 9px 10px;
  text-align: center;
}
.bg--blue2 .product__title {
  background: #24a3fa;
}
.product__detail {
  padding: 20px 20px 30px;
}
.product__detail__box h5 {
  color: #002eb2;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.9;
}
.product__detail__box h5:before {
  color: #39a6f1;
  content: "● ";
  font-size: 14px;
}
.product__detail__box p {
  line-height: 1.64;
}
.product__detail__box .kome {
  font-size: 12px;
  letter-spacing: 0.12em;
  line-height: 1.67;
}
.product__lead h4 {
  color: #002eb2;
  margin-bottom: 14px;
  text-align: center;
}
.product__lead p {
  font-size: 16px;
  letter-spacing: 0.2em;
  line-height: 1.63;
  margin-bottom: 16px;
}
.product__img {
  margin: 25px 0 30px;
  text-align: center;
}

.product__img img {
  max-width: 100%;
  max-height: 100px;
}

.product__lineup {
  color: #002eb2;
  font-weight: 700;
  line-height: 1.9;
  margin-bottom: 21px;
}
.product__price {
  text-align: center;
}
.product__price__normal {
  color: #707070;
  margin: 11px 0;
  text-decoration: line-through;
}
.product__price__set {
  margin: 11px 0;
}
.product__price__taxin {
  font-size: 11px;
  margin: 0 0 20px;
}
.product__price__text {
  color: #002eb2;
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin: 11px 0 7px;
}
.product__price__text .yen {
  font-size: 18px;
}
.product__price__text .tax {
  font-size: 14px;
  font-weight: 400;
}
.product__price__caution {
  color: #e34343;
  line-height: 1.64;
  margin-top: 15px;
}
.product__price__end {
  color: #e34343;
  margin: 20px 0;
}
.product__price__btn {
  border-radius: 10px;
  display: block;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: 0.12em;
  margin: 0 auto 20px;
  max-width: 284px;
  padding: 10px;
  text-align: center;
}
.product__price__btn:last-child {
  margin-bottom: 0;
}
.product__price a.product__price__btn {
  background: #002eb2;
  color: #fff;
  position: relative;
}
.product__price a.product__price__btn:after {
  border-color: #91abe1 #91abe1 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: block;
  height: 4px;
  margin-left: 3px;
  margin-top: -4px;
  position: absolute;
  right: 21px;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 4px;
}
.product__price a.product__price__btn:hover {
  background: #0037d5;
  opacity: 1;
}
.product__price a.product__price__btn:hover:after {
  opacity: 1;
}
.product__price .cus_btn_cart {
  margin: 0 auto 20px;
  max-width: 284px;
  position: relative;
}
.product__price .cus_btn_cart:after {
  border-color: #91abe1 #91abe1 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: block;
  height: 4px;
  margin-left: 3px;
  margin-top: -4px;
  position: absolute;
  right: 21px;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 4px;
}
.product__price input.product__price__btn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #002eb2;
  color: #fff;
  cursor: pointer;
  display: block;
  font-family: Noto Sans JP, sans-serif;
  line-height: 1;
  position: relative;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  width: 100%;
}
.product__price input.product__price__btn:hover {
  background: #0037d5;
  opacity: 1;
}
.product__price span.product__price__btn {
  background: #c8daff;
  color: #002eb2;
}
.product__price__saikai {
  color: #e34343;
  font-size: 16px;
  letter-spacing: 0.12em;
  margin-top: 26px;
}
.product table {
  width: 100%;
}
.product table tr:nth-of-type(odd) {
  background: #eaf6ff;
}
.product table td {
  height: 70px;
  line-height: 1.86;
  text-align: left;
  vertical-align: middle;
}
.product table td:first-of-type {
  padding: 0 13px;
}
.product table td:nth-of-type(2) {
  padding: 0 20px 0 0;
}
.product table td img {
  vertical-align: middle;
}
.product table td strong {
  border: 1px solid #002eb2;
  color: #002eb2;
  display: inline-block;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.12em;
  padding: 0 8px;
}
.product__menu {
  padding: 16px 20px 14px;
}
.product__menu h4 {
  font-weight: 400;
  line-height: 1.5;
  margin-bottom: 3px;
}
.product__menu p {
  font-size: 12px;
  line-height: 1.9;
}
.result .bg--blue2,
.result.page__content {
  margin-bottom: 0 !important;
}
.result .section {
  margin-bottom: 100px;
}
.result .section:first-child {
  margin-bottom: 74px;
}
.result .bg--blue2 {
  padding: 48px 0 40px;
}
.result .bg--blue2 + .section {
  padding-top: 100px;
}
.section {
  margin-bottom: 90px;
}
.section__text {
  letter-spacing: 0.25em;
  line-height: 1.4286;
}
.serialcode__flow {
  margin-bottom: 70px;
}
.thanks .serialcode__flow {
  margin-bottom: 40px;
}
.serialcode__flow__list {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
}
.serialcode__flow__item {
  background: #f1f7fb;
  border-radius: 10px;
  padding: 20px 0;
  width: 23%;
}
.serialcode__flow__item + .serialcode__flow__item {
  position: relative;
}
.serialcode__flow__item + .serialcode__flow__item:before {
  border-color: #abc4f8 #abc4f8 transparent transparent;
  border-style: solid;
  border-width: 3px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 8px;
  left: -24px;
  margin: -4px 0 0;
  position: absolute;
  top: 50%;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  width: 8px;
}
.serialcode__flow__step {
  color: #002eb2;
  font-family: Josefin Sans, sans-serif;
  font-weight: 700;
  margin-bottom: 9px;
  text-align: center;
}
.serialcode__flow__step span {
  font-size: 16px;
}
.serialcode__flow__img {
  background: #fff;
  border-radius: 5px;
  margin: 0 25px 10px;
  padding: 10px 0;
  text-align: center;
}
.serialcode__flow__text {
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  font-size: 16px;
  height: 50px;
  justify-content: center;
  line-height: 1.56;
  text-align: center;
}
.serialcode.thanks .form__text {
  margin-bottom: 52px;
}
.course__about__slider .fotorama {
  margin: 0 auto 14px;
  max-width: 600px;
}
.course__about__slider .fotorama__wrap {
  margin: 0 auto;
}
.course__about__slider .fotorama__thumb-border {
  border-color: #3481f3;
}
.tglbox {
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  border-radius: 10px;
  margin: 30px auto 40px;
  max-width: 800px;
  overflow: hidden;
  padding: 1px;
}
.tglbox__title {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#5555f4),
    to(#2cacf5)
  );
  background-image: -webkit-linear-gradient(right, #5555f4, #2cacf5);
  background-image: -o-linear-gradient(right, #5555f4, #2cacf5);
  background-image: linear-gradient(270deg, #5555f4, #2cacf5);
  border: none;
  color: #fff;
  cursor: pointer;
  font-family: Noto Sans JP, sans-serif;
  font-size: 18px;
  height: 60px;
  letter-spacing: 0.12em;
  padding: 0;
  width: 100%;
}
.tglbox__title > span {
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  height: 100%;
  justify-content: center;
  position: relative;
  width: 100%;
}
.tglbox__title > span:before {
  background-image: -webkit-gradient(
    linear,
    right top,
    left top,
    from(#4f4fe5),
    to(#2e9ede)
  );
  background-image: -webkit-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: -o-linear-gradient(right, #4f4fe5, #2e9ede);
  background-image: linear-gradient(270deg, #4f4fe5, #2e9ede);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  -webkit-transition: all 0.25s ease;
  -o-transition: all 0.25s ease;
  transition: all 0.25s ease;
  width: 100%;
  z-index: 0;
}
.tglbox__title:hover > span:before {
  opacity: 0;
}
.tglbox__title__text {
  display: block;
  position: relative;
  width: 100%;
  z-index: 1;
}
.tglbox__title__text:after {
  background: url(../images/ico_arrow_bottom.svg) no-repeat 50%;
  content: "";
  display: inline-block;
  height: 7px;
  margin-top: -2px;
  position: absolute;
  right: 40px;
  top: 50%;
  width: 11px;
}
.tglbox__title.js-open .tglbox__title__text:after {
  background: url(../images/ico_arrow_top.svg) no-repeat 50%;
}
.tglbox__main {
  background: #fff;
  border-radius: 0 0 10px 10px;
  display: none;
  padding: 30px 50px;
}
.tglbox__subtitle {
  color: #002eb2;
  font-size: 16px;
  letter-spacing: 0.12em;
  margin-bottom: 16px;
}
.tglbox__subtitle:before {
  color: #39a6f1;
  content: "● ";
  font-size: 14px;
}
.tglbox__subtitle2 {
  color: #002eb2;
  margin-bottom: 7px;
}
.tglbox__text {
  line-height: 1.5;
  margin-bottom: 25px;
}
.tglbox__list + .tglbox__subtitle {
  margin-top: 32px;
}
.tglbox__list li {
  font-size: 16px;
  letter-spacing: 0.12em;
  line-height: 2.5;
  padding-left: 3.5em;
  text-indent: -3.5em;
}
.tglbox__list li span {
  color: #002eb2;
}
.tglbox__list2 {
  margin-bottom: 30px;
}
.tglbox__list2:last-child {
  margin-bottom: 0;
}
.tglbox__list2 li {
  line-height: 2.2;
}
.tglbox__hr {
  border-color: #c2d1ee;
  margin: 0 0 39px;
}
.topCourse {
  margin-bottom: 90px;
}
.topCourse__title {
  color: #002eb2;
  font-size: 28px;
  letter-spacing: 0.12em;
  line-height: 1.7;
  margin-bottom: 15px;
  text-align: center;
}
.topCourse__title .small {
  color: #252525;
  display: block;
  font-size: 16px;
  letter-spacing: 0.12em;
}
.topCourse__title .ico {
  display: block;
  line-height: 1;
  margin: 0 auto 11px;
  text-align: center;
}
.topCourse__title .ico img {
  height: 24px;
  width: 30px;
}
.topCourse__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.topCourse__item {
  margin-right: 26px;
  margin-top: 26px;
  width: 230px;
}
.topCourse__item:nth-of-type(4n) {
  margin-right: 0;
}
.topCourse__link {
  background: url(../images/bg_topCourse_link.svg) no-repeat 50% / cover;
  border-radius: 10px 10px 0 10px;
  color: #fff;
  display: block;
  font-size: 16px;
  letter-spacing: 0.12em;
  padding: 28px 10px;
  position: relative;
  text-align: center;
}
.topCourse__link:after {
  background: url(../images/ico_arrow.svg) no-repeat 50%/10px 9px, #678cd8;
  border-radius: 6px 0 0 0;
  bottom: 0;
  content: "";
  display: block;
  height: 16px;
  position: absolute;
  right: 0;
  width: 18px;
}
.topCourse__link:hover {
  background: url(../images/bg_topCourse_link_on.svg) no-repeat 50% / cover;
  opacity: 1;
}
.topCourse__link:hover:after {
  opacity: 1;
}
.topColumn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.topColumn.-lower {
  background: #021f7d;
  padding: 55px 0;
}
.topColumn__box {
  color: #fff;
  width: 50%;
}
.topColumn__box:nth-of-type(odd) .topColumn__box__inner {
  margin-left: auto;
}
.topColumn__box:nth-of-type(2n) .topColumn__box__inner {
  border-left: 1px solid #2d4c8a;
  margin-right: auto;
}
.topColumn__box.-commitment {
  background: #002eb2;
}
.topColumn__box.-result {
  background: #0a2188;
}
.topColumn__box.-result .topColumn__box__inner {
  border-left: none;
}
.topColumn__box__inner {
  height: 100%;
  max-width: 560px;
  padding: 55px 60px;
  position: relative;
}
.-lower .topColumn__box__inner {
  padding: 0 60px;
}
.topColumn__title {
  align-items: center;
  -webkit-box-align: center;
  -webkit-box-pack: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: center;
  font-size: 24px;
  justify-content: center;
  letter-spacing: 0.12em;
  margin-bottom: 30px;
  text-align: center;
}
.-lower .topColumn__title {
  font-size: 20px;
  letter-spacing: 0.2em;
}
.topColumn__title span {
  display: inline-block;
  height: 30px;
  margin-right: 16px;
  width: 20px;
}
.-lower .topColumn__title span {
  height: auto;
}
.topColumn__title span img {
  max-height: 30px;
  vertical-align: middle;
}
.-lower .topColumn__title span img {
  max-height: 20px;
  vertical-align: bottom;
}
.topColumn__img {
  border-radius: 15px;
  margin-bottom: 23px;
  overflow: hidden;
}
.topColumn__text {
  font-size: 16px;
  letter-spacing: 0.12em;
  line-height: 1.75;
  margin-bottom: 23px;
}
.-lower .topColumn__text {
  color: #fff;
  color: hsla(0, 0%, 100%, 0.9);
  font-size: 14px;
  line-height: 2;
  min-height: 82px;
}
.topColumn__link {
  bottom: 55px;
  font-family: Josefin Sans, sans-serif;
  font-weight: 700;
  position: absolute;
  right: 60px;
  text-align: right;
}
.-lower .topColumn__link {
  bottom: 2px;
}
.topColumn__link a {
  border-bottom: 1px solid #91abe1;
  color: #91abe1;
  font-size: 13px;
  letter-spacing: 0.12em;
}
.topColumn__link a:after {
  border-color: #91abe1 #91abe1 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 4px;
  margin-left: 3px;
  margin-top: -2px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  width: 4px;
}
.topFaq {
  display: none;
}
.topNews {
  background: #c9e4f6;
  padding-bottom: 80px;
  padding-top: 90px;
}
.topNews__title {
  color: #002eb2;
  font-size: 24px;
  letter-spacing: 0.12em;
  margin-bottom: 28px;
}
.topNews__item + .topNews__item {
  border-top: 1px solid #c2d1ee;
}
.topNews__item__link {
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  line-height: 1.5;
  padding: 16px 0;
}
.topNews__item__date {
  color: #404040;
  display: block;
  font-size: 12px;
  letter-spacing: 0.12em;
  width: 130px;
}
.topNews__item__title {
  color: #002eb2;
  display: block;
  width: calc(100% - 130px);
}
.topNews__link {
  text-align: right;
}
.topNews__link a {
  border-bottom: 1px solid #104cc8;
  color: #104cc8;
  font-family: Josefin Sans, sans-serif;
  font-weight: 700;
}
.topNews__link a:after {
  border-color: #104cc8 #104cc8 transparent transparent;
  border-style: solid;
  border-width: 2px;
  border-radius: 1px;
  content: "";
  display: inline-block;
  height: 4px;
  margin-left: 3px;
  margin-top: -2px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  vertical-align: middle;
  width: 4px;
}
.voice {
  background: #fffbf4;
  border-radius: 15px;
  margin: 0 auto;
  max-width: 900px;
  padding: 26px 50px;
}
.voice + .voice {
  margin-top: 30px;
}
.voice.-white {
  background: 0 0;
  padding-bottom: 0;
  padding-top: 0;
}
.course .voice {
  margin: 0 auto 24px;
}
.voice__header {
  align-items: center;
  border-bottom: 1px solid #c2d1ee;
  -webkit-box-align: center;
  -webkit-box-pack: justify;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  -ms-flex-pack: justify;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 24px;
  padding-bottom: 20px;
}
.course .voice__header {
  margin-top: 40px;
}
.voice__title {
  line-height: 1.43;
  width: calc(100% - 80px);
}
.voice__title__name {
  margin-bottom: 5px;
}
.voice__title__course {
  color: #002eb2;
}
.voice__img {
  width: 60px;
}
.voice__img img {
  width: 100%;
}
.voice__text {
  letter-spacing: 0.2em;
  line-height: 1.71;
}
@media screen and (max-width: 768px) and (min-width: 768px) {
  .tb_only {
    display: block;
  }
  .br-pc {
    display: none;
  }
  .br-tb {
    display: block;
  }
  .br-sp {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .ftnav__item:first-of-type,
  .ftnav__item:nth-of-type(4n + 1) {
    border-left: 0;
    padding-left: 0;
  }
  .gnav__item {
    margin-left: 3%;
  }
  .gnav__toggle {
    align-items: center;
    -webkit-box-align: center;
    -webkit-box-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -ms-flex-pack: justify;
    height: 100%;
    justify-content: space-between;
  }
  .gnav__toggle:hover + .gnav__toggle--block {
    opacity: 1;
    visibility: inherit;
  }
  .gnav__toggle--block {
    left: 0;
    opacity: 0;
    position: absolute;
    top: 60px;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    visibility: hidden;
  }
  .gnav__toggle--block:hover {
    opacity: 1;
    visibility: inherit;
  }
  .gnav__item__recruit {
    border: 1px solid #002eb2;
    border-radius: 5px;
    padding: 6px 10px;
  }
  .gnav__item__recruit:hover {
    border: 1px solid #053fe6;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 13px;
    min-width: auto;
  }
  a {
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
  }
  a:after,
  a:before {
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
  }
  a:hover {
    opacity: 1;
  }
  a:hover:after,
  a:hover:before {
    opacity: 1;
  }
  .pc,
  .tb {
    display: none;
  }
  .sp {
    display: block;
  }
  .br-pc,
  .br-tb {
    display: none;
  }
  .br-sp {
    display: block;
  }
  .breadcrumbs {
    margin-bottom: 20px;
    padding: 0 20px;
  }
  .breadcrumbs__item {
    margin-right: 0;
  }
  .btn {
    font-size: 17px;
    letter-spacing: 0.1em;
  }
  .fixedBtn {
    bottom: 0;
    -webkit-box-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    height: 45px;
    justify-content: space-between;
    padding: 0 10px;
    position: fixed;
    width: 100%;
    z-index: 996;
  }
  .fixedBtn__item {
    width: calc(50% - 4.5px);
  }
  .fixedBtn__item a {
    align-items: center;
    border-radius: 7px 7px 0 0;
    -webkit-box-align: center;
    -webkit-box-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    font-size: 12px;
    font-weight: 700;
    height: 100%;
    justify-content: center;
    text-align: center;
    width: 100%;
  }
  .fixedBtn__item a:hover {
    opacity: 1;
  }
  .fixedBtn .-contact a {
    background: #002eb2;
    color: #fff;
  }
  .fixedBtn .-contact a:before {
    background: url(../images/ico_mail.svg) no-repeat top/12px 9px;
    content: "";
    display: inline-block;
    height: 9px;
    margin-right: 9px;
    margin-top: 2px;
    vertical-align: middle;
    width: 12px;
  }
  .fixedBtn .-eLearning a {
    background: #fef200;
    color: #000;
  }
  .fixedBtn .-eLearning a img {
    margin-right: 5px;
    margin-top: 2px;
    width: 71px;
  }
  .navbtn {
    display: block;
  }
  .pagetop {
    bottom: 50px;
    height: 35px;
    right: 10px;
    width: 35px;
  }
  .top .pagetop {
    bottom: 65px;
  }
  .pagetop.js-active {
    top: -45px;
  }
  .pagetop__link img {
    height: 7px;
  }
  .title--borderL,
  .title--borderL--yellow {
    border-width: 3px;
    font-size: 16px;
    letter-spacing: 0.12em;
    margin-bottom: 20px;
    padding-left: 10px;
  }
  .title--borderL--yellow {
    font-size: 17px;
  }
  .title--borderB {
    font-size: 20px;
  }
  .title--borderB:after {
    margin-top: 18px;
    width: 50px;
  }
  .title--borderB span {
    font-size: 15px;
  }
  .title--borderB span.small {
    font-size: 12px;
    margin-bottom: 0;
  }
  .title--blue {
    font-size: 14px;
    letter-spacing: 0.12em;
  }
  .title--circle--yellow {
    font-size: 16px;
    letter-spacing: 0.12em;
  }
  .title--circle--yellow:before {
    font-size: 15px;
  }
  .title--icon {
    font-size: 20px;
    letter-spacing: 0.12em;
  }
  .bg--blue2 .title--icon {
    margin-bottom: 30px;
    padding-top: 40px;
  }
  .title--icon__img {
    margin-bottom: 12px;
  }
  .title--icon__img img {
    width: 26px;
  }
  .app {
    margin-bottom: 75px;
  }
  .app__img {
    margin-bottom: 17px;
  }
  .app__title {
    margin-bottom: 25px;
  }
  .app__title span {
    padding: 0 9px 0 13px;
  }
  .app__copy {
    letter-spacing: 0.1em;
    line-height: 1.86;
    text-align: left;
  }
  .app__copy,
  .app__link {
    font-size: 14px;
  }
  .commitment .bg--blue2 + .section {
    margin-top: 60px;
  }
  .commitment__lead {
    font-size: 14px;
    letter-spacing: 0.1em;
    line-height: 1.6;
    margin: 19px 0 35px;
    text-align: left;
  }
  .commitment__lead + .btn--product {
    margin-bottom: 35px;
  }
  .commitment__list__item + .commitment__list__item {
    margin-top: 25px;
  }
  .commitment__list__link {
    -webkit-box-direction: normal;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 23px 22px 25px;
  }
  .commitment__list__link:after {
    display: none;
  }
  .commitment__list__img {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    float: none;
    margin-bottom: 19px;
    order: 2;
    width: 100%;
  }
  .-caremaru .commitment__list__name,
  .-kyouzai .commitment__list__name {
    margin-top: 0;
  }
  .commitment__list__name {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    float: none;
    font-size: 19px;
    letter-spacing: 0.15em;
    margin-bottom: 13px;
    order: 1;
    text-align: center;
    width: 100%;
  }
  .commitment__list__text {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    float: none;
    font-size: 13px;
    line-height: 1.65;
    margin-bottom: 18px;
    order: 3;
    width: 100%;
  }
  .commitment__list__more {
    -webkit-box-ordinal-group: 5;
    color: #91abe1;
    display: block;
    -ms-flex-order: 4;
    font-family: Josefin Sans, sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.12em;
    order: 4;
    text-align: center;
  }
  .commitment__list__more span {
    border-bottom: 1px solid #91abe1;
  }
  .commitment__list__more span:after {
    border-color: #91abe1 #91abe1 transparent transparent;
    border-style: solid;
    border-width: 2px;
    border-radius: 1px;
    content: "";
    display: inline-block;
    height: 3px;
    margin-left: 4px;
    margin-top: -4px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    vertical-align: middle;
    width: 3px;
  }
  .commitment__submenu {
    padding: 40px 0 25px;
  }
  .commitment__submenu__title {
    font-size: 18px;
    margin-bottom: 30px;
  }
  .commitment__submenu__item {
    margin-bottom: 15px;
    width: 48%;
  }
  .commitment__submenu__item:nth-of-type(odd) {
    margin-left: 0;
  }
  .commitment__submenu__item:nth-of-type(2n) {
    margin-left: 4%;
  }
  .commitment__submenu__item a {
    display: block;
  }
  .commitment__submenu__item a:after {
    right: 11px;
  }
  .commitment__submenu__img {
    margin-bottom: 10px;
  }
  .commitment__submenu__img img {
    border-radius: 4px;
  }
  .commitment__submenu__text {
    font-size: 13px;
    line-height: 1.35;
    width: 100%;
  }
  .bg--blue2.-elearning {
    background-position: 0 0;
    background-size: auto auto;
  }
  .company__title {
    font-size: 12px;
    margin-bottom: 20px;
  }
  .company__title span {
    font-size: 25px;
  }
  .company__copy {
    font-size: 17px;
    line-height: 2.24;
    margin-bottom: 16px;
  }
  .company__text {
    font-size: 13px;
    letter-spacing: 0.1em;
    line-height: 1.92;
  }
  .company__vision .company__text {
    padding-bottom: 43px;
  }
  .company__mission {
    margin-bottom: 43px;
    padding-top: 50px;
  }
  .company__dl {
    font-size: 13px;
    letter-spacing: 0.1em;
    line-height: 2;
  }
  .company__dl__inner {
    padding: 13px 0;
  }
  .company__dl__dt {
    width: 107px;
  }
  .company__dl__dd {
    width: calc(100% - 107px);
  }
  .company__img img {
    margin-bottom: 20px;
    width: 100%;
  }
  .company__img img:last-of-type {
    margin-bottom: 0;
  }
  .section.summary {
    margin-bottom: 30px;
  }
  .message {
    display: block;
    padding: 42px 25px 35px;
  }
  .message__left {
    margin: 0 auto 24px;
    width: 230px;
  }
  .message__img img {
    padding-left: 0;
  }
  .message__title {
    font-size: 14px;
    left: -20px;
  }
  .message__right {
    width: 100%;
  }
  .message__position {
    font-size: 12px;
    margin-bottom: 14px;
    text-align: center;
  }
  .message__name {
    font-size: 19px;
    margin-bottom: 22px;
    text-align: center;
  }
  .message__name span {
    display: block;
    font-size: 13px;
    margin-top: 14px;
  }
  .message__text {
    letter-spacing: 0.1em;
    line-height: 1.92;
  }
  .contact__faq {
    margin-bottom: 44px;
  }
  .contact__faq__text {
    border-radius: 10px 10px 0 0;
    font-size: 12px;
    line-height: 1.86;
    padding: 12px 18px;
    width: 100%;
  }
  .contact__faq__btn {
    border-radius: 0 0 10px 10px;
    padding: 12px 18px;
    width: 100%;
  }
  .contact__faq__btn--large {
    margin: 0 20px 35px;
  }
  .contact__faq__btn--large a {
    border-radius: 12px;
    font-size: 19px;
  }
  .contact__faq__btn--large a .small {
    font-size: 13px;
    margin-top: 11px;
  }
  .contact__faq__link {
    padding: 10px 0;
  }
  .contact__faq__link,
  .contact__faq__serial a {
    border-radius: 7px;
    font-size: 14px;
  }
  .thanks .form__step {
    border-radius: 0;
  }
  .thanks .form__text {
    line-height: 1.58;
    padding: 0;
  }
  .thanks .form__text .f--red {
    font-size: 12px;
  }
  .content {
    padding-left: 20px;
    padding-right: 20px;
  }
  .content--column {
    display: block;
  }
  .content--column__title {
    margin-bottom: 40px;
    text-align: center;
    width: 100%;
  }
  .content--column__title img {
    height: 94px;
  }
  .content--column__main {
    padding: 0;
    width: 100%;
  }
  .bg--blue {
    padding: 40px 0 50px;
  }
  .course .section {
    margin-bottom: 68px;
  }
  .course .bg--blue2 + .section {
    margin-top: 68px;
  }
  .course__list {
    margin-bottom: 0;
  }
  .course__list__item {
    margin-bottom: 0;
    margin-right: 0;
    width: 100%;
  }
  .course__list__item + .course__list__item {
    margin-top: 26px;
  }
  .course__list__link {
    padding: 21px 22px;
  }
  .course__list__img {
    margin-bottom: 19px;
  }
  .course__list__name {
    font-size: 18px;
    letter-spacing: 0.15em;
    margin-bottom: 13px;
  }
  .course__list__text {
    font-size: 13px;
    line-height: 1.92;
  }
  .course__news {
    padding: 35px 0;
  }
  .course__news__inner {
    padding-left: 20px;
    padding-right: 20px;
  }
  .course__news__title {
    font-size: 17px;
    margin-bottom: 12px;
    text-align: center;
  }
  .course__news__link {
    display: block;
    padding: 14px 0;
  }
  .course__news__date,
  .course__news__text {
    width: 100%;
  }
  .course__about__block {
    padding-bottom: 60px;
  }
  .course__about__block + .course__about__block {
    padding-top: 50px;
  }
  .course__about__block:last-of-type {
    padding-bottom: 50px;
  }
  .course__about__block .features__item__title,
  .course__about__block .title--circle--yellow {
    margin: 0;
  }
  .course__about__block.dialysis--info {
    padding: 30px 20px;
  }
  .course__about__subtitle {
    font-size: 14px;
    margin-top: 20px;
    width: 100%;
  }
  .course__about__text {
    line-height: 1.65;
    padding: 0;
  }
  .course__about__slider {
    margin: 20px 0;
  }
  .course__about__point {
    padding: 0;
  }
  .course__about__point__title {
    margin-bottom: 9px;
  }
  .course__about__point__title span {
    font-size: 11px;
    height: 20px;
    line-height: 1;
    margin-bottom: -2px;
    padding: 2px 7px 0;
  }
  .course__about__point__title span:before {
    background-position: 2px 3px;
    background-size: 6px auto;
    height: 10px;
    margin-right: 7px;
    width: 10px;
  }
  .course__about__point__lead {
    font-size: 14px;
    line-height: 1.79;
    margin-bottom: 15px;
    padding-bottom: 9px;
  }
  .course__about__point__text {
    line-height: 1.69;
    margin-bottom: 26px;
  }
  .course__about__step {
    margin-bottom: 35px;
  }
  .course__about__step__item {
    margin-top: 31px;
  }
  .course__about__step__title {
    font-size: 14px;
    line-height: 1.86;
    margin-bottom: 7px;
  }
  .course__about__step__title .small {
    display: block;
    font-size: 12px;
    line-height: 1;
    margin: 0 0 7px;
  }
  .course__about__feature {
    margin-bottom: 35px;
    padding-bottom: 16px;
  }
  .course__about__feature__title {
    font-size: 14px;
    letter-spacing: 0.12em;
    margin-bottom: 8px;
  }
  .course__about__feature__text {
    line-height: 1.69;
  }
  .tokuchou {
    padding: 0;
  }
  .tokuchou__inner {
    padding: 15px 0 31px;
  }
  .tokuchou__title {
    font-size: 18px;
    left: -10px;
    line-height: 1.4;
    margin-bottom: 2px;
    padding: 11px 0 12px;
    width: calc(100% + 20px);
  }
  .tokuchou__title:after,
  .tokuchou__title:before {
    background-size: 10px 11px;
    bottom: -10px;
    height: 11px;
    width: 10px;
  }
  .tokuchou__title .small {
    font-size: 13px;
    line-height: 1.58;
    margin-bottom: 0;
  }
  .tokuchou__list {
    padding: 5px 20px;
  }
  .tokuchou__list + .btn {
    margin-top: 0;
  }
  .tokuchou__item {
    display: block;
  }
  .tokuchou__no {
    font-size: 12px;
    margin-top: 0;
    width: 100%;
  }
  .tokuchou__text {
    font-size: 15px;
    width: 100%;
  }
  .tokuchou__more a:after {
    border-width: 1px;
  }
  .btn--product .btn {
    border-radius: 7px;
    font-size: 14px;
    height: 45px;
  }
  .btn--product .btn:before {
    background-size: 21px 21px;
    height: 21px;
    width: 21px;
  }
  .btn--product--fixed {
    bottom: 110px;
    height: 39px;
    width: 157px;
  }
  .btn--product--fixed a {
    border-radius: 7px 0 0 7px;
    display: block;
    font-size: 12px;
    letter-spacing: 0.12em;
    padding: 9px 0;
    width: 100%;
    -ms-writing-mode: horizontal-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
  }
  .btn--product--fixed a:before {
    background-size: 18px auto;
    display: inline-block;
    height: 18px;
    margin-bottom: 2px;
    margin-right: 10px;
    vertical-align: middle;
    width: 18px;
  }
  .btn--product--fixed a span {
    display: inline;
    margin-left: 0;
  }
  .dialysis--info:last-child {
    margin-bottom: 50px;
  }
  .dialysis--info__img--01 img,
  .dialysis--info__img--02 img {
    max-width: 100%;
  }
  .elearning .section {
    margin-bottom: 50px;
  }
  .elearning .section.bg--blue {
    margin-bottom: 0;
    padding: 50px 0 85px;
  }
  .elearning .section.bg--blue .app__img,
  .faq .section {
    margin-bottom: 60px;
  }
  .faq .title--borderL--yellow {
    margin-bottom: 9px;
  }
  .faq__list__q button {
    font-size: 13px;
    padding-right: 25px;
  }
  .faq__text + .faq__text {
    margin-top: 18px;
  }
  .faq__contact {
    padding: 22px 18px 30px;
  }
  .faq__contact__title {
    font-size: 16px;
    line-height: 1.97;
    margin-bottom: 14px;
  }
  .faq__contact__title:after {
    margin-top: 12px;
  }
  .faq__contact__text {
    font-size: 12px;
    line-height: 1.83;
  }
  .faq__contact__btn a {
    font-size: 15px;
    padding: 14px 20px 16px;
  }
  .features__movie iframe {
    height: 200px;
    width: 100%;
  }
  .features__list {
    display: block;
    padding-bottom: 0;
  }
  .features__item {
    margin-bottom: 50px;
    width: 100%;
  }
  .-column3 .features__item {
    width: 100%;
  }
  .features__item:nth-of-type(odd) {
    margin-right: 0;
  }
  .features__item__title {
    font-size: 17px;
    line-height: 1.55;
  }
  .course .features__item__title {
    font-size: 18px;
  }
  .features__use {
    padding-top: 55px;
  }
  .features__use:last-child {
    margin-bottom: 55px;
  }
  .flow__block {
    padding: 20px;
  }
  .flow__title {
    font-size: 15px;
    margin-bottom: 8px;
    padding-left: 1.6em;
    text-indent: -1.6em;
  }
  .flow__text {
    font-size: 13px;
  }
  .footer__inner {
    padding-left: 20px;
    padding-right: 20px;
    padding: 45px 20px 39px;
  }
  .footer__info {
    border-bottom: 1px solid #858b95;
    margin-bottom: 17px;
    padding-bottom: 23px;
    width: 100%;
  }
  .footer__logo {
    margin-bottom: 13px;
    text-align: center;
  }
  .footer__logo img {
    width: 115px;
  }
  .footer__lead {
    border-bottom: 0;
    margin-bottom: 12px;
    padding-bottom: 0;
  }
  .footer__address {
    line-height: 2;
  }
  .ftnav {
    padding: 0 0 17px;
  }
  .ftnav.-small {
    margin: -12px 0 0 -20px;
  }
  .ftnav__item {
    border-left: 0;
    line-height: 1.4;
    margin-bottom: 0;
    padding: 0;
    width: 50%;
  }
  .-small .ftnav__item {
    margin: 0 10px 0 20px;
    width: auto;
  }
  .ftnav__link {
    display: block;
    padding: 9px 0 9px 1.3em;
    text-indent: -1.3em;
  }
  .ftnav__link:before {
    border-color: #c8ced8 #c8ced8 transparent transparent;
    border-style: solid;
    border-width: 1px;
    border-radius: 1px;
    content: "";
    display: inline-block;
    height: 3px;
    margin-right: 10px;
    margin-top: -2px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    vertical-align: middle;
    width: 3px;
  }
  .-small .ftnav__link:before {
    background: url(../images/ico_arrow_footernav.svg) no-repeat 50%/8px auto;
    border: none;
    border-radius: 0;
    height: 8px;
    margin-right: 7px;
    margin-top: 0;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    width: 8px;
  }
  .copyright {
    font-size: 10px;
    text-align: center;
  }
  .top .copyright {
    padding-bottom: 57px;
  }
  .form {
    padding: 0;
  }
  .form__title {
    border-radius: 0;
    font-size: 18px;
    padding: 9px 20px 11px;
  }
  .form__title + .form__text {
    margin-top: 10px;
  }
  .form__title + .form__step {
    margin-top: 0;
  }
  .form__text {
    font-size: 13px;
    line-height: 1.5;
    margin-bottom: 17px;
    padding: 0 20px;
  }
  .form__text--confirm {
    line-height: 2.08;
  }
  .form__step {
    border-radius: 0;
    padding: 8px 0 10px;
  }
  .form__step__item {
    font-size: 13px;
  }
  .form__content {
    border-radius: 0;
    padding: 25px 20px 90px;
  }
  .form__content__title {
    font-size: 16px;
  }
  .form__block + .form__content__title {
    margin-top: 30px;
  }
  .form__block__inner + .form__block__inner {
    margin-top: 25px;
  }
  .form__block__dt {
    font-size: 14px;
    margin-bottom: 10px;
    padding-top: 0;
    width: 100%;
  }
  .confirm .form__block__dt {
    font-size: 12px;
    line-height: 1;
    margin-bottom: 7px;
  }
  .form__block__dt .small {
    margin-top: 3px;
  }
  .form__block__dd {
    padding: 0 10px;
    width: 100%;
  }
  .form__check {
    padding: 18px 15px;
  }
  .form__btn__item {
    border-radius: 7px;
    font-size: 15px;
    margin: 0;
    padding: 11px 20px 12px;
  }
  .form__btn__item.-prev {
    width: 35%;
  }
  .form__btn__item.-prev + .-submit {
    margin-left: 5%;
    width: 60%;
  }
  .form__thanks {
    padding: 0 20px;
  }
  .form__thanks__title {
    font-size: 16px;
  }
  .form__thanks__btn a {
    border-radius: 7px;
    font-size: 15px;
    padding: 15px 0;
  }
  .form__mail {
    border-radius: 10px;
    margin: 0 20px 40px;
    padding: 28px 18px;
  }
  .form__mail--text {
    line-height: 1.58;
    margin-bottom: 17px;
    padding: 0 20px;
  }
  .form__mail__title {
    font-size: 16px;
  }
  .form__mail__title:after {
    width: 50px;
  }
  .form__mail__address {
    border-radius: 7px;
    font-size: 15px;
    margin-bottom: 21px;
    padding: 15px 0;
  }
  .form__mail__caution {
    text-align: left;
  }
  .form__checklist__title {
    font-size: 14px;
  }
  .form__checklist__title:before {
    font-size: 13px;
  }
  .form__checklist h4,
  .form__checklist p {
    line-height: 1.4;
  }
  .form__confirm {
  }
  .form__confirm__annotation {
    text-align: initial;
    white-space: pre-line;
  }
  .form__confirm__checkbox {
    text-align: initial;
  }
  input#zip {
    max-width: 100%;
    width: 100%;
  }
  .input--item.half {
    width: 48%;
  }
  .input--item.half.zip {
    margin-left: 0;
    max-width: 100%;
    width: 100%;
  }
  .zipbtn {
    margin-left: 0;
    margin-top: 10px;
    width: 125px;
  }
  .optional,
  .required {
    margin-right: 8px;
    padding: 2px 4px 4px;
    vertical-align: baseline;
  }
  .gnav {
    display: block;
    margin-bottom: 40px;
    max-width: 100%;
    width: 100%;
  }
  .gnav__item {
    border-bottom: 1px solid #4472c8;
    display: block;
    height: auto;
  }
  .gnav__link {
    color: #fff;
    display: block;
    padding: 24px 20px;
  }
  .gnav__link:hover {
    color: #fff;
  }
  .gnav__toggle--pc {
    display: none;
  }
  .gnav__toggle--sp {
    display: block;
    position: relative;
  }
  .gnav__toggle--sp:after,
  .gnav__toggle--sp:before {
    background: #4472c8;
    content: "";
    display: block;
    position: absolute;
    top: 50%;
  }
  .gnav__toggle--sp:before {
    height: 13px;
    margin-top: -6px;
    right: 26px;
    -webkit-transition: all 0.25s ease;
    -o-transition: all 0.25s ease;
    transition: all 0.25s ease;
    width: 1px;
  }
  .gnav__toggle--sp:after {
    bottom: auto;
    height: 1px;
    left: auto;
    right: 20px;
    width: 13px;
  }
  .js-open .gnav__toggle--sp:before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .gnav__second {
    padding-left: 20px;
    padding-right: 20px;
    display: block;
    padding: 0 0 18px;
  }
  .gnav__second__item {
    margin: 0;
    padding: 0 20px 8px;
  }
  .gnav__second__item.-sp {
    display: block;
  }
  .gnav__second__link {
    display: block;
    padding: 10px 0;
  }
  .gnav__second__link:before {
    border-width: 1px;
  }
  .header {
    height: 56px;
    overflow: inherit;
    padding: 0 0 0 10px;
  }
  .header__logo {
    padding: 14px 0;
  }
  .header__logo img {
    max-width: 104px;
  }
  .header__nav {
    background: #002eb2;
    display: block;
    height: 100%;
    left: 0;
    opacity: 0;
    padding-bottom: 200px;
    position: fixed;
    top: 56px;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
    visibility: hidden;
    width: 100%;
  }
  .header__nav,
  .header__nav.js-active {
    overflow-y: scroll;
  }
  .header__btn {
    display: block;
    padding: 0 20px;
  }
  .header__btn__item {
    display: block;
    margin-top: 20px;
  }
  .header__btn__item a {
    align-items: center;
    border-radius: 7px;
    -webkit-box-align: center;
    -webkit-box-pack: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    -ms-flex-pack: center;
    font-size: 15px;
    height: 55px;
    justify-content: center;
    margin-top: 0;
    text-align: center;
  }
  .header__btn__item a:hover {
    height: 55px;
    margin-top: 0;
  }
  .header__btn__item.-eLearning {
    margin-right: 0;
    width: 100%;
  }
  .header__btn__item.-eLearning img {
    display: inline;
    margin: 0 15px 0 0;
  }
  .header__btn__item.-eLearning a {
    padding-top: 0;
  }
  .header__btn__item.-eLearning a:hover {
    background: #fef200;
  }
  .header__btn__item.-contact {
    width: 100%;
  }
  .header__btn__item.-contact a {
    background: #fff;
    color: #0437a2;
    padding-top: 0;
  }
  .header__btn__item.-contact a:before {
    background: url(../images/ico_mail_blue.svg) no-repeat top/16px 12px;
  }
  .header__btn__item.-contact a:hover {
    background: #fff;
  }
  .kv {
    height: 555px;
    margin-bottom: 40px;
  }
  .kv:before {
    background: url(../images/img_kv_deco_sp.svg) no-repeat 0 0 / contain;
  }
  .kv__inner {
    padding-left: 20px;
    padding-right: 20px;
    display: block;
  }
  .kv__lead {
    bottom: 52px;
    left: 10px;
    margin-bottom: 0;
    position: absolute;
  }
  .kv__lead__sub {
    background: url(../images/bg_kv_lead_sub_sp.svg) no-repeat 100% 0/295px auto;
    font-size: 12px;
    padding: 6px 21px 7px 7px;
  }
  .kv__lead__main span {
    font-size: 21px;
    height: 32px;
    padding: 0 8px 3px;
  }
  .kv__lead__main strong {
    font-size: 21px;
  }
  .kv__lead__main strong.blue {
    font-size: 25px;
  }
  .kv__link {
    bottom: -31px;
    padding-right: 0;
    position: absolute;
    right: 0;
  }
  .kv__link a {
    width: 124px;
  }
  .kv__link a img {
    width: 100%;
  }
  .kv__slider__item {
    height: 555px;
  }
  .kv__slider__item--01 {
    background-image: url(../images/img_main_01_sp.jpg);
  }
  .kv__slider__item--02 {
    background-image: url(../images/img_main_02_sp.jpg);
  }
  .kv__slider__item--03 {
    background-image: url(../images/img_main_03_sp.jpg);
  }
  .page__content.contact,
  .page__content.serialcode {
    padding-top: 20px;
  }
  .page__content.input {
    margin-bottom: 0;
  }
  .page__content.confirm {
    margin-bottom: 0;
    padding-top: 0;
  }
  .page__content.thanks {
    padding-top: 0;
  }
  .page__content.elearning {
    padding-top: 35px;
  }
  .page__header {
    font-size: 22px;
    height: 175px;
  }
  .page__header.-commitment {
    background-image: url(../images/bg_commitment_title_sp.png);
  }
  .page__header.-elearning {
    background-image: url(../images/bg_elearning_title_sp.png);
  }
  .page__header.-caremaru {
    background-image: url(../images/bg_caremaru_title_sp.png);
  }
  .page__header.-teachingmaterial {
    background-image: url(../images/bg_teachingmaterial_title_sp.png);
  }
  .page__header.-test {
    background-image: url(../images/bg_test_title_sp.png);
  }
  .page__header.-result {
    background-image: url(../images/bg_result_title_sp.png);
  }
  .page__header.-company {
    background-image: url(../images/bg_company_title_sp.png);
  }
  .page__header.-kokyu {
    background-image: url(../images/bg_kokyu_title_sp.png);
  }
  .page__header.-course {
    background-image: url(../images/bg_course_title_sp.png);
  }
  .page__header.-syumatsuki {
    background-image: url(../images/bg_syumatsuki_title_sp.png);
  }
  .page__header.-syumatsuki02 {
    background-image: url(../images/bg_syumatsuki02_title_sp.png);
  }
  .page__header.-kyuseiki {
    background-image: url(../images/bg_kyuseiki_title_sp.png);
  }
  .page__header.-zaitaku {
    background-image: url(../images/bg_zaitaku_title_sp.png);
  }
  .page__header.-dementia {
    background-image: url(../images/bg_dementia_title_sp.png);
  }
  .page__header.-dementia02 {
    background-image: url(../images/bg_dementia02_title_sp.png);
  }
  .page__header.-guidance {
    background-image: url(../images/bg_guidance_title_sp.png);
  }
  .page__header.-dialysis {
    background-image: url(../images/bg_dialysis_title_sp.png);
  }
  .page__header.-diabetes {
    background-image: url(../images/bg_diabetes_title_sp.png);
  }
  .page__header.-elearning02 {
    background-image: url(../images/bg_elearning02_title_sp.png);
  }
  .page__header.-kazokucare {
    background-image: url(../images/bg_kazokucare_title_sp.png);
  }
  .page__header span {
    font-size: 12px;
    margin-top: 21px;
  }
  .page__header--simple {
    font-size: 20px;
    height: auto;
    line-height: 1.4;
    min-height: 90px;
    padding: 20px 0;
  }
  .page__header--simple span {
    padding-left: 20px;
    padding-right: 20px;
  }
  .page__header--simple__small {
    font-size: 12px;
    line-height: 1.375;
    margin-top: 14px;
  }
  .page__navi {
    display: block;
    margin-bottom: 50px;
  }
  .page__navi__link {
    border-radius: 7px;
    font-size: 15px;
    padding: 7px 0 8px;
    width: 100%;
  }
  .page__navi__link + .page__navi__link {
    margin-top: 20px;
  }
  .-column3 .page__navi__link {
    width: 100%;
  }
  .page__navi__link:after {
    height: 3px;
    margin-top: -6px;
    right: 15px;
    width: 3px;
  }
  .page__lead {
    font-size: 13px;
    line-height: 1.85;
  }
  .page__lead + .page__lead--text {
    margin-top: 3px;
  }
  .page__lead--text {
    font-size: 12px;
    line-height: 1.83;
    margin-bottom: 20px;
  }
  .page__dl {
    padding-left: 20px;
    padding-right: 20px;
    padding: 0;
  }
  .page__dl dt {
    font-size: 14px;
    margin-bottom: 10px;
    padding: 10px 20px;
  }
  .page__dl dd {
    line-height: 1.65;
    margin-bottom: 17px;
    padding: 0 20px;
  }
  .page__dl dd p + p {
    margin-top: 20px;
  }
  .page__dl dd p + h3 {
    margin-top: 16px;
  }
  .page__dl dd hr {
    margin: 25px 0;
  }
  .page__dl dd hr + h2 {
    margin-top: -7px;
  }
  .passrate {
    padding: 0;
  }
  .commitment .passrate {
    padding-top: 45px;
  }
  .passrate__item {
    width: 100%;
  }
  .passrate__item + .passrate__item {
    margin-left: 0;
    margin-top: 70px;
  }
  .passrate__title {
    font-size: 20px;
    line-height: 1.5;
    margin-bottom: 18px;
  }
  .passrate__title.-slash {
    align-items: flex-end;
    -webkit-box-align: end;
    -webkit-box-pack: justify;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: end;
    -ms-flex-pack: justify;
    font-size: 17px;
    justify-content: space-between;
    margin-bottom: 22px;
  }
  .passrate__title.-slash:after,
  .passrate__title.-slash:before {
    background: url(../images/slash_left_sp.svg) no-repeat 0 100%/28px 40px;
    height: 40px;
    margin: 0;
    width: 28px;
  }
  .passrate__title.-slash:after {
    background: url(../images/slash_right_sp.svg) no-repeat 100% 100%/28px 40px;
  }
  .passrate__title + .passrate__item {
    margin-top: 0;
  }
  .passrate__text {
    font-size: 14px;
    line-height: 1.8;
    margin-bottom: 40px;
  }
  .passrate__lead {
    margin-bottom: 12px;
    padding: 19px 0;
  }
  .passrate__lead__text {
    font-size: 14px;
  }
  .passrate__lead__text .passtext {
    letter-spacing: 0.15em;
  }
  .passrate__lead__text .large {
    font-size: 21px;
  }
  .passrate__lead__text .small {
    font-size: 13px;
    margin-top: 4px;
  }
  .passrate__lead__kome {
    font-size: 11px;
    letter-spacing: 0.15em;
    margin-top: 13px;
  }
  .passrate__for {
    height: 42px;
    margin-bottom: 15px;
  }
  .passrate__main + .btn {
    margin-top: 55px;
  }
  .passrate__name {
    margin-bottom: 31px;
  }
  .passrate__name span + span {
    margin-top: 15px;
  }
  .passrate__name__sub {
    font-size: 14px;
  }
  .passrate__name__text {
    font-size: 19px;
  }
  .passrate__name__sup {
    font-size: 11px;
  }
  .passrate__graph {
    padding: 0 60px;
  }
  .passrate__graph img {
    max-width: none;
    width: 100%;
  }
  .passrate__supplement {
    font-size: 11px;
    margin-top: 40px;
  }
  .point {
    margin-bottom: 35px;
  }
  .point__title {
    border-radius: 100px;
    font-size: 16px;
  }
  .point__list {
    padding: 5px 20px;
  }
  .point__item {
    display: block;
  }
  .point__no {
    font-size: 12px;
    margin-top: 0;
    width: 100%;
  }
  .point__text {
    font-size: 15px;
    width: 100%;
  }
  .privacy .section {
    margin-bottom: 50px;
  }
  .privacy__lead {
    font-size: 12px;
    line-height: 1.83;
  }
  .privacy__text {
    line-height: 1.92;
  }
  .privacy .page__dl dd hr {
    margin: 15px 0;
  }
  .product {
    margin-bottom: 0;
    padding: 0 20px;
  }
  .bg--blue2 .product {
    padding: 0;
  }
  .product__item {
    margin: 0 auto;
    width: 100%;
  }
  .product__item + .product__item {
    margin-top: 50px;
  }
  .product__detail {
    padding: 16px 18px 30px;
  }
  .product__detail__box h5 {
    font-size: 14px;
  }
  .product__detail__box h5:before {
    font-size: 13px;
  }
  .product__lead p {
    font-size: 14px;
    line-height: 1.4;
  }
  .product__price__normal,
  .product__price__set {
    font-size: 11px;
    margin: 7px 0;
  }
  .product__price__taxin {
    font-size: 11px;
    margin: 0 0 20px;
  }
  .product__price__text {
    font-size: 26px;
    margin: 7px 0 7px;
  }
  .product__price__text .yen {
    font-size: 15px;
  }
  .product__price__text .tax {
    font-size: 13px;
  }
  .product__price__method {
    font-size: 12px;
  }
  .product__price__caution {
    font-size: 12px;
    margin-top: 13px;
  }
  .product__price__end {
    font-size: 12px;
    margin-bottom: 10px;
  }
  .product__price__btn {
    border-radius: 7px;
    margin-bottom: 15px;
    padding: 15px;
  }
  .product__price a.product__price__btn:after {
    right: 16px;
  }
  .product__price .cus_btn_cart:after {
    right: 16px;
  }
  .product__price__saikai {
    font-size: 13px;
    margin-top: 19px;
  }
  .product table td {
    height: 60px;
  }
  .product table td:first-of-type {
    padding: 0 18px;
    width: 85%;
  }
  .product table td:nth-of-type(2) {
    width: 15%;
  }
  .product table td:nth-of-type(2) img {
    height: 18px;
    width: 18px;
  }
  .result .section:first-child {
    margin-bottom: 0;
  }
  .result .bg--blue2 {
    padding: 34px 0 20px;
  }
  .result .bg--blue2 + .section {
    padding-top: 68px;
  }
  .section {
    margin-bottom: 60px;
  }
  .section__text {
    letter-spacing: 0.15em;
    line-height: 2;
  }
  .serialcode__flow {
    margin-bottom: 55px;
  }
  .thanks .serialcode__flow {
    padding: 0 20px;
  }
  .serialcode__flow__list {
    display: block;
  }
  .serialcode__flow__item {
    padding: 12px;
    width: 100%;
  }
  .serialcode__flow__item:after {
    clear: both;
    content: "";
    display: block;
  }
  .serialcode__flow__item + .serialcode__flow__item {
    margin-top: 25px;
  }
  .serialcode__flow__item + .serialcode__flow__item:before {
    border-color: transparent #abc4f8 #abc4f8 transparent;
    left: 50%;
    margin-left: -8px;
    top: -19px;
  }
  .serialcode__flow__step {
    float: right;
    font-size: 12px;
    margin-bottom: 6px;
    margin-top: 6px;
    text-align: left;
    width: calc(100% - 150px);
  }
  .serialcode__flow__step span {
    font-size: 13px;
  }
  .serialcode__flow__img {
    float: left;
    margin: 0;
    padding: 13px 0;
    width: 125px;
  }
  .serialcode__flow__img img {
    height: 48px;
  }
  .serialcode__flow__text {
    display: block;
    float: right;
    font-size: 14px;
    height: auto;
    line-height: 1.46;
    text-align: left;
    width: calc(100% - 150px);
  }
  .serialcode.thanks .form__text {
    margin-bottom: 47px;
  }
  .tglbox {
    margin: 30px 20px 40px;
  }
  .tglbox__title {
    font-size: 16px;
    height: 70px;
    line-height: 1.5;
    text-align: left;
  }
  .tglbox__title__text {
    padding: 0 35px 0 19px;
  }
  .tglbox__title__text:after {
    right: 15px;
  }
  .tglbox__main {
    padding: 15px 20px;
  }
  .tglbox__subtitle {
    font-size: 14px;
    margin: 15px 0 8px;
  }
  .tglbox__subtitle:before {
    font-size: 13px;
  }
  .tglbox__list + .tglbox__subtitle {
    margin-top: 26px;
  }
  .tglbox__list li {
    font-size: 14px;
  }
  .topCourse {
    margin-bottom: 64px;
  }
  .topCourse__title {
    font-size: 21px;
    line-height: 1.62;
  }
  .topCourse__title .small {
    font-size: 12px;
    margin-bottom: 2px;
  }
  .topCourse__title .ico {
    margin-bottom: 10px;
  }
  .topCourse__title .ico img {
    height: 18px;
    width: 22px;
  }
  .topCourse__list {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .topCourse__item {
    margin-right: 0;
    width: calc(50% - 7.5px);
  }
  .topCourse__link {
    align-items: center;
    border-radius: 8px 8px 0 8px;
    -webkit-box-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    font-size: 14px;
    height: 60px;
    line-height: 1.7;
    padding: 0 15px;
    text-align: left;
  }
  .topCourse__link:hover {
    background: url(../images/bg_topCourse_link.svg) no-repeat 50% / cover;
  }
  .topColumn {
    display: block;
  }
  .topColumn.-lower {
    padding: 0 20px 35px;
  }
  .topColumn__box {
    width: 100%;
  }
  .topColumn__box:nth-of-type(2n) .topColumn__box__inner {
    border-left: none;
    border-top: 1px solid #2d4c8a;
  }
  .topColumn__box.-result .topColumn__box__inner {
    border-top: none;
  }
  .topColumn__box__inner {
    max-width: 100%;
    padding: 50px 20px;
  }
  .-lower .topColumn__box__inner {
    padding: 40px 0;
  }
  .topColumn__title {
    font-size: 21px;
    margin-bottom: 24px;
  }
  .topColumn__title span {
    height: auto;
  }
  .topColumn__title span img {
    vertical-align: bottom;
  }
  .topColumn__img {
    border-radius: 13px;
    margin-bottom: 13px;
  }
  .topColumn__text {
    font-size: 13px;
    line-height: 1.85;
    margin-bottom: 15px;
  }
  .topColumn__link {
    bottom: auto;
    position: relative;
    right: auto;
  }
  .-lower .topColumn__link {
    bottom: auto;
  }
  .topColumn__link a:after {
    border-width: 1px;
  }
  .topFaq {
    display: block;
    padding: 40px 20px;
  }
  .topFaq__btn {
    background: -webkit-gradient(
      linear,
      left top,
      right top,
      from(#2e9ede),
      to(#4f4fe5)
    );
    background: -webkit-linear-gradient(left, #2e9ede, #4f4fe5);
    background: -o-linear-gradient(left, #2e9ede 0, #4f4fe5 100%);
    background: linear-gradient(90deg, #2e9ede, #4f4fe5);
    border-radius: 13px;
    color: #fff;
    display: block;
    font-size: 19px;
    padding: 20px 0 17px;
    position: relative;
    text-align: center;
  }
  .topFaq__btn:after {
    border-color: #abc4f8 #abc4f8 transparent transparent;
    border-style: solid;
    border-width: 2px;
    border-radius: 1px;
    content: "";
    display: inline-block;
    height: 4px;
    margin-left: 3px;
    margin-top: -2px;
    position: absolute;
    right: 20px;
    top: 50%;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    vertical-align: middle;
    width: 4px;
  }
  .topFaq__btn span {
    display: block;
    font-family: Josefin Sans, sans-serif;
    font-size: 13px;
    font-weight: 700;
    margin-top: 12px;
    text-align: center;
  }
  .topNews {
    padding-top: 60px;
  }
  .topNews__list {
    margin-bottom: 25px;
  }
  .topNews__title {
    font-size: 21px;
    margin-bottom: 12px;
  }
  .topNews__item {
    border-bottom: 1px solid #c2d1ee;
  }
  .topNews__item + .topNews__item {
    border-top: 0;
  }
  .topNews__item__link {
    display: block;
    padding: 14px 0;
  }
  .topNews__item__date,
  .topNews__item__title {
    width: 100%;
  }
  .topNews__link a:after {
    border-width: 1px;
  }
  .voice {
    padding: 21px 20px;
  }
  .voice.-white {
    padding: 0;
  }
  .voice + .voice {
    margin-top: 20px;
  }
  .voice__header {
    margin-bottom: 15px;
    padding-bottom: 15px;
  }
  .course .voice__header {
    margin-top: 32px;
  }
  .voice__title {
    font-size: 12px;
    line-height: 1.7;
    width: calc(100% - 70px);
  }
  .voice__title__name {
    margin-bottom: 1px;
  }
  .voice__img {
    width: 50px;
  }
  .voice__text {
    line-height: 1.5;
  }
}
@media (-ms-high-contrast: none) {
  .commitment__list__name,
  .commitment__submenu__text,
  .company__title span {
    background-image: none;
  }
}

/* 模擬試験ページ追加 */

.is-pc {
  display: block;
}
@media screen and (max-width: 768px) {
  .is-pc {
    display: none;
  }
}
.is-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .is-sp {
    display: block;
  }
}

.container {
  max-width: 1000px;
  margin: 0 auto;
  padding: 0 20px;
}

.page__header.is-normal {
  background: linear-gradient(270deg, #4f4fe5, #2e9ede);
}

.sec {
  padding: 20px 0;
}
@media screen and (max-width: 768px) {
  .sec {
    padding: 20px 0;
  }
}
.border-top {
  border-top: 1px solid #e1e1e1;
  margin: 0 auto;
  max-width: 1200px;
}

.documentList {
  background: #e7f1f9;
  border-radius: 10px;
  padding: 50px 20px;
  max-width: 600px;
  margin: 30px auto 80px;
}
.documentList_body {
  margin: 0 auto;
  width: fit-content;
}
.documentList_item {
  font-size: 18px;
  font-weight: bold;
  padding-left: 40px;
  position: relative;
}
.documentList_item + .documentList_item {
  margin-top: 20px;
}
.documentList_item::before,
.documentList_item::after {
  content: "";
  position: absolute;
}
.documentList_item::before {
  background: #fff;
  border-radius: 4px;
  left: 0;
  height: 22px;
  width: 22px;
  top: -2px;
}
.documentList_item::after {
  border-left: 2px solid #002eb2;
  border-bottom: 2px solid #002eb2;
  transform: rotate(-45deg);
  left: 5px;
  top: 5px;
  height: 4px;
  width: 9px;
}
@media screen and (max-width: 768px) {
  .documentList {
    border-radius: 5px;
    padding: 25px 15px;
    margin: 20px auto 30px;
  }
  .documentList li {
    font-size: 16px;
  }
  .documentList_item {
    padding-left: 30px;
  }
  .documentList_body {
    width: 100%;
  }
}

.schedule {
  margin: 40px auto 100px;
  max-width: 700px;
}
.schedule--borderB {
  margin: 40px auto 100px;
  max-width: 700px;
}
.schedule_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border: 1px solid #002eb2;
  min-height: 120px;
  position: relative;
}
.schedule_item + .schedule_item {
  margin-top: 54px;
}
.schedule_item + .schedule_item::after {
  content: "";
  position: absolute;
  border-left: 2px solid #002eb2;
  border-bottom: 2px solid #002eb2;
  transform: rotate(-45deg);
  display: block;
  left: 0;
  right: 0;
  margin: auto;
  top: -38px;
  height: 12px;
  width: 12px;
}
.schedule--borderB .schedule_item + .schedule_item::after {
  content: "";
  position: absolute;
  border-left: 2px solid #fff;
  border-bottom: 2px solid #fff;
  transform: rotate(-45deg);
  display: block;
  left: 0;
  right: 0;
  margin: auto;
  top: -38px;
  height: 12px;
  width: 12px;
}
.schedule_title {
  background: #002eb2;
  align-items: center;
  -webkit-box-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  justify-content: center;
  font-size: 18px;
  color: #fff;
  font-weight: bold;
  min-height: 120px;
  width: 140px;
}
.schedule_content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-align: center;
  flex-direction: column;
  justify-content: center;
  padding: 0 30px;
  width: calc(100% - 140px);
  line-height: 1.5;
}
.schedule_content p {
  font-weight: bold;
  font-size: 16px;
}
.schedule_content span {
  display: block;
  font-size: 14px;
  margin-top: 16px;
}
@media screen and (max-width: 768px) {
  .schedule {
    margin: 20px 0 70px;
  }
  .schedule_title {
    font-size: 15px;
    padding: 0 20px;
    min-height: 40px;
    justify-content: flex-start;
    width: 100%;
  }
  .schedule_item {
    display: block;
  }
  .schedule_item + .schedule_item {
    margin-top: 45px;
  }
  .schedule_item + .schedule_item::after {
    top: -30px;
    height: 10px;
    width: 10px;
  }
  .schedule_content {
    min-height: 75px;
    padding: 20px;
    width: 100%;
  }
  .schedule_content span {
    margin-top: 8px;
  }
}

.forApply {
  margin: 0 auto 80px;
  max-width: 700px;
}
.forApply_item {
  border-bottom: 1px solid #c6d9e7;
  font-weight: bold;
  padding: 24px 0 26px 30px;
  position: relative;
  font-size: 16px;
  line-height: 1.5;
}

.forApply_item::before {
  content: "";
  display: block;
  background: #002eb2;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 30px;
  height: 14px;
  width: 14px;
}

.forApply_item_material {
  margin: 50px auto 0;
  font-weight: bold;
  padding: 24px 0 26px 30px;
  position: relative;
  font-size: 16px;
  line-height: 1.5;
}

.forApply_item_material::before {
  content: "";
  display: block;
  background: #002eb2;
  border-radius: 50%;
  position: absolute;
  left: 0;
  top: 30px;
  height: 14px;
  width: 14px;
}

@media screen and (max-width: 768px) {
  .forApply {
    margin: 0 auto 50px;
  }
  .forApply_item {
    padding: 16px 0 20px 26px;
  }
  .forApply_item::before {
    top: 22px;
  }
}

.caremarupro_img {
  background: #f5f8f9;
  border-radius: 10px;
  margin: 0 auto;
  max-width: 700px;
  text-align: center;
  width: 100%;
}
.caremarupro_img img {
  height: 264px;
  display: inline-block;
  width: auto;
}

.download {
  margin: 28px auto 0;
  max-width: 700px;
}
.download h3 {
  color: #629eac;
  letter-spacing: 0.12rem;
  position: relative;
  text-align: center;
  font-size: 18px;
}
.download h3::before {
  content: "";
  position: absolute;
  width: 280px;
  height: 100%;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  background: #fff;
  z-index: -1;
}
.download h3::after {
  background: #629eac;
  content: "";
  display: block;
  height: 1px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 100%;
  z-index: -2;
}
.download ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
}
.download li {
  margin: 24px 10px 0;
  width: 157px;
}
@media screen and (max-width: 768px) {
  .download {
    margin: 0;
  }
  .download h3 {
    margin-top: 16px;
    padding: 0 10px;
    font-size: 15px;
  }
  .download li {
    margin: 20px 10px 0;
    width: 44%;
  }
}

.material {
  background: #f5f4ee;
  margin-top: 100px;
  line-height: 1.3;
}
.material_content {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
  justify-content: space-around;
  position: relative;
  top: -50px;
}
.material_content img {
  margin: 0 auto;
  max-height: 400px;
  width: auto;
}
.material_purchase {
  background: #fff;
  border-radius: 15px;
  box-shadow: 0px 0px 15px rgba(#bdbdbd, 0.2);
  max-width: 600px;
  padding: 30px 10px;
  text-align: center;
  width: 54%;
}
.material_purchase button {
  align-items: center;
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  height: 46px;
  letter-spacing: 0.2rem;
  justify-content: center;
  max-width: 320px;
  margin: 30px auto 12px;
  padding-top: 2px;
  position: relative;
  transition: 0.3s;
  width: 100%;
  margin-top: 20px;
  max-width: 280px;
  font-size: 18px;
  line-height: 18px;
  border-radius: 50px;
  background: #d01027;
  color: #fff;
  position: relative;
  transition: 0.3s;
}
.material_purchase button:hover {
  opacity: 0.7;
}
.material_title {
  font-weight: bold;
  font-size: 22px;
}
.material_price {
  align-items: center;
  display: flex;
  justify-content: center;
  margin-top: 12px;
}
.material_price span {
  font-weight: bold;
}
.material_price span.is-price {
  letter-spacing: 0.5rem;
  font-size: 36px;
}
.material_price span.is-yen {
  position: relative;
  top: 3px;
  font-size: 22px;
}
.material_price span.is-tax {
  position: relative;
  top: 3px;
  font-size: 18px;
}
.material_end_message {
  margin-top: 20px;
  text-align: center;
  font-size: 14px;
}
.material_resale_message {
  margin-top: 20px;
  text-align: center;
  font-size: 16px;
}
.material_attention_message {
  color: #d01027;
  margin-top: 14px;
  text-align: center;
  font-size: 14px;
}
.material_soldout_button {
  align-items: center;
  background: transparent;
  border: none;
  cursor: pointer;
  display: flex;
  height: 46px;
  letter-spacing: 0.2rem;
  justify-content: center;
  max-width: 320px;
  margin: 30px auto 12px;
  position: relative;
  transition: 0.3s;
  width: 100%;
  margin-top: 20px;
  max-width: 280px;
  font-size: 18px;
  line-height: 18px;
  border-radius: 50px;
  background: #7d7d7d;
  color: #fff;
  position: relative;
  transition: 0.3s;
}

@media screen and (max-width: 768px) {
  .material {
    margin-top: 85px;
  }
  .material_content {
    top: -60px;
  }
  .material img {
    max-height: inherit;
    width: 60%;
  }
  .material_purchase {
    margin-top: 35px;
    max-width: inherit;
    padding: 25px 12px;
    width: 100%;
  }
  .material_purchase button {
    font-size: 16px;
  }
  .material_title {
    line-height: 1.5;
    font-size: 20px;
  }
  .material_price {
    margin-top: 8px;
  }
  .material_price span.is-price {
    letter-spacing: 0.4rem;
    font-size: 28px;
  }
  .material_price span.is-yen {
    font-size: 18px;
  }
  .material_price span.is-tax {
    font-size: 16px;
  }
  .material_end_message {
    font-size: 13px;
  }
  .material_resale_message {
    font-size: 14px;
  }
  .material_attention_message {
    font-size: 12px;
  }
}
.features__item__title.hs-mt40 {
  margin-top: 40px !important;
}
