@charset "UTF-8";
@media screen and (max-width: 768px) {
  .sp {
    display: block !important;
  }
  .pc {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  .pc {
    display: block;
  }
  .sp {
    display: none !important;
  }
}
:root {
  --blue: #004b83;
  --sky: #299CD2;
}

.smn {
  line-height: 1.5;
}
.smn img {
  width: 100%;
  vertical-align: top;
}
.smn a {
  text-decoration: none;
}
.smn .inner {
  max-width: 1280px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}
.smn ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.smn ul li {
  margin: 0;
}

.smnHd {
  padding-top: 41px;
  padding-bottom: 41px;
  font-size: 40px;
  font-weight: bold;
  line-height: 1.5;
  color: #fff;
  text-align: center;
  background: url(../images/menu/menu_hd_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

.smnTop {
  text-align: center;
}

.smnEn {
  font-family: "Cormorant Garamond", serif;
  font-size: 19px;
  font-weight: bold;
  font-style: italic;
  line-height: 1.2;
  font-optical-sizing: auto;
  color: var(--sky);
}

.smnTtl {
  position: relative;
  padding-bottom: 24px;
  font-family: "Zen Old Mincho", serif;
  font-size: 32px;
  line-height: 1.5;
  font-weight: bold;
}
.smnTtl::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 45px;
  height: 5px;
  background: url(../images/menu/menu_ttl_icon.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.smnTtl__hd {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 80px;
  font-family: "Zen Old Mincho", serif;
  font-size: 32px;
  font-weight: bold;
  color: #fff;
  background: url(../images/menu/menu_ttl_bg.jpg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.smnTtl__hd::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 45px;
  height: 3px;
  background: #fff;
}

.smnAnc {
  margin-top: 85px;
}

.smnAnc__links {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 24px;
  padding: 40px 80px;
  background: #f6f8fb;
}

.smnAnc__link {
  position: relative;
  width: calc((100% - 72px) / 4);
  padding: 11px 34px 11px 0;
  border-bottom: 1px solid var(--blue);
  font-size: 18px;
  font-weight: 500;
  color: var(--blue);
}
.smnAnc__link::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 24px;
  height: 24px;
  background: url(../images/icon/anchor.svg);
  background-repeat: no-repeat;
  background-size: cover;
}

@media (min-width: 1921px) {
  .smn .inner {
    max-width: 1440px;
    padding: 0 22.5px;
  }
  .smnHd {
    padding-top: 46.125px;
    padding-bottom: 46.125px;
    font-size: 45px;
  }
  .smnEn {
    font-size: 21.375px;
  }
  .smnTtl {
    padding-bottom: 27px;
    font-size: 36px;
  }
  .smnTtl::after {
    width: 50.625px;
    height: 5.625px;
  }
  .smnTtl__hd {
    height: 90px;
    font-size: 36px;
  }
  .smnTtl__hd::after {
    width: 50.625px;
    height: 3.375px;
  }
  .smnAnc {
    margin-top: 95.625px;
  }
  .smnAnc__links {
    gap: 27px;
    padding: 45px 90px;
  }
  .smnAnc__link {
    width: calc((100% - 81px) / 4);
    padding: 12.375px 38.25px 12.375px 0;
    font-size: 20.25px;
  }
  .smnAnc__link::after {
    width: 27px;
    height: 27px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .smn .inner {
    max-width: 100vw;
    padding: 0 1.5625vw;
  }
  .smnHd {
    padding-top: 3.203125vw;
    padding-bottom: 3.203125vw;
    font-size: 3.125vw;
  }
  .smnEn {
    font-size: 1.484375vw;
  }
  .smnTtl {
    padding-bottom: 1.875vw;
    font-size: 2.5vw;
  }
  .smnTtl::after {
    width: 3.515625vw;
    height: 0.390625vw;
  }
  .smnTtl__hd {
    height: 6.25vw;
    font-size: 2.5vw;
  }
  .smnTtl__hd::after {
    width: 3.515625vw;
    height: 0.234375vw;
  }
  .smnAnc {
    margin-top: 6.640625vw;
  }
  .smnAnc__links {
    gap: 1.875vw;
    padding: 3.125vw 6.25vw;
  }
  .smnAnc__link {
    width: calc((100% - 5.625vw) / 4);
    padding: 0.859375vw 2.65625vw 0.859375vw 0;
    font-size: 1.40625vw;
  }
  .smnAnc__link::after {
    width: 1.875vw;
    height: 1.875vw;
  }
}
@media (max-width: 768px) {
  .smn .inner {
    max-width: 341.3333333333vw;
    width: 100%;
    margin: 0 auto;
    padding: 0 5.3333333333vw;
  }
  .smnHd {
    padding-top: 8.8vw;
    padding-bottom: 8.8vw;
    font-size: 6.4vw;
    background: url(../images/menu/menu_hd_bg_sp.png);
    background-repeat: no-repeat;
    background-size: cover;
  }
  .smnEn {
    font-size: 4.2666666667vw;
  }
  .smnTtl {
    padding-bottom: 4.2666666667vw;
    font-size: 6.4vw;
  }
  .smnTtl::after {
    width: 12vw;
    height: 1.3333333333vw;
  }
  .smnTtl__hd {
    height: 18.6666666667vw;
    font-size: 6.4vw;
    background: url(../images/menu/menu_ttl_bg_sp.png);
    background-repeat: no-repeat;
    background-size: 100% 100%;
  }
  .smnTtl__hd::after {
    width: 12vw;
    height: 0.8vw;
  }
  .smnAnc {
    margin-top: 0;
    background: #f6f8fb;
  }
  .smnAnc__links {
    gap: 4.2666666667vw;
    padding: 5.3333333333vw 0 8vw;
  }
  .smnAnc__link {
    width: calc((100% - 4.2666666667vw) / 2);
    padding: 3.7333333333vw 0vw;
    font-size: 3.7333333333vw;
  }
  .smnAnc__link::after {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
    background: url(../images/icon/anchor.svg);
    background-repeat: no-repeat;
    background-size: cover;
  }
}
.smnPc {
  margin-top: 100px;
}
.smnPc .inner {
  max-width: 900px;
  width: 100%;
  margin: 0 auto;
}

.smnPc__flex {
  margin: 50px auto 0;
  gap: 10px;
}

.smnPc__read {
  font-size: 14px;
}

.smnPc__tax {
  margin-left: auto;
  font-size: 16px;
  font-weight: bold;
  white-space: nowrap;
}

.smnPc__main {
  max-width: 900px;
  width: 100%;
  margin: 10px auto 0;
}

.smnPc__ttl {
  -webkit-box-pack: start;
  -webkit-justify-content: flex-start;
      -ms-flex-pack: start;
          justify-content: flex-start;
  height: 60px;
  padding: 0 16px;
  font-size: 22px;
  font-weight: bold;
  color: #fff;
  background: var(--blue);
}

table.smnPc__tb {
  width: 100%;
  margin: 0;
  border: none;
}
table.smnPc__tb th {
  padding: 16px;
  border: 1px solid #c9c8c7;
  border-left: none;
  border-right: none;
  background: #e3e8f1;
  font-size: 16px;
  font-weight: bold;
}
table.smnPc__tb th .noto {
  display: block;
  margin-top: 4px;
  font-size: 14px;
  font-weight: 400;
}
table.smnPc__tb td {
  padding: 23px 0 23px 23px;
  border: 1px solid #c9c8c7;
  border-left: none;
  border-right: none;
  vertical-align: middle;
  text-align: right;
}
table.smnPc__tb td .lot {
  font-size: 14px;
  font-weight: 400;
}
table.smnPc__tb td .num {
  font-size: 26px;
  font-weight: bold;
}
table.smnPc__tb td .yen {
  font-size: 14px;
  font-weight: bold;
}

.smnPc__note {
  margin-top: 20px;
  font-size: 14px;
  line-height: 1.5;
}

.smnPay {
  margin-top: 100px;
}
.smnPay .inner {
  max-width: 900px;
  width: 100%;
  margin: 0 auto;
}

.smnPay__main {
  border: 1px solid #f2e100;
}

.smnPay__hd {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 76px;
  border-bottom: 1px solid #f2e100;
  font-size: 24px;
  font-weight: bold;
  color: var(--blue);
  background: #fdfad6;
}

.smnPay__box {
  padding: 23px 24px 30px;
}

.smnPay__read {
  font-size: 16px;
  line-height: 1.5;
  text-align: center;
}

.smnPay__img {
  margin: 30px auto 0;
  width: 660px;
}

.smnPay__flex {
  -webkit-box-align: start;
  -webkit-align-items: flex-start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 760px;
  margin: 30px auto 0;
}

.smnPay__li {
  width: 50%;
}

.smnPay__sub {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 300px;
  height: 30px;
  margin: 0 auto;
  border-radius: 50px;
  font-size: 16px;
  font-weight: 600;
  color: #fff;
  background: #299cd2;
}

.smnPay__logo.smnPay__logo01 {
  width: 360px;
  margin: 16px auto 0;
}
.smnPay__logo.smnPay__logo02 {
  width: 204px;
  margin: 12px auto 0;
}

@media (min-width: 1921px) {
  .smnPc {
    margin-top: 112.5px;
  }
  .smnPc .inner {
    max-width: 1012.5px;
  }
  .smnPc__flex {
    margin: 56.25px auto 0;
    gap: 11.25px;
  }
  .smnPc__read {
    font-size: 15.75px;
  }
  .smnPc__tax {
    font-size: 18px;
  }
  .smnPc__main {
    max-width: 1012.5px;
    margin: 11.25px auto 0;
  }
  .smnPc__ttl {
    height: 67.5px;
    padding: 0 18px;
    font-size: 24.75px;
  }
  table.smnPc__tb th {
    padding: 18px;
    font-size: 18px;
  }
  table.smnPc__tb th .noto {
    margin-top: 4.5px;
    font-size: 15.75px;
  }
  table.smnPc__tb td {
    padding: 25.875px 0 25.875px 25.875px;
  }
  table.smnPc__tb td .lot {
    font-size: 15.75px;
    font-weight: 400;
  }
  table.smnPc__tb td .num {
    font-size: 29.25px;
  }
  table.smnPc__tb td .yen {
    font-size: 15.75px;
  }
  .smnPc__note {
    margin-top: 22.5px;
    font-size: 15.75px;
  }
  .smnPay {
    margin-top: 112.5px;
  }
  .smnPay .inner {
    max-width: 1012.5px;
  }
  .smnPay__hd {
    height: 85.5px;
    font-size: 27px;
  }
  .smnPay__box {
    padding: 25.875px 27px 33.75px;
  }
  .smnPay__read {
    font-size: 18px;
  }
  .smnPay__img {
    margin: 33.75px auto 0;
    width: 742.5px;
  }
  .smnPay__flex {
    width: 855px;
    margin: 33.75px auto 0;
  }
  .smnPay__sub {
    width: 337.5px;
    height: 33.75px;
    border-radius: 56.25px;
    font-size: 18px;
  }
  .smnPay__logo.smnPay__logo01 {
    width: 405px;
    margin: 18px auto 0;
  }
  .smnPay__logo.smnPay__logo02 {
    width: 229.5px;
    margin: 13.5px auto 0;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .smnPc {
    margin-top: 7.8125vw;
  }
  .smnPc .inner {
    max-width: 70.3125vw;
  }
  .smnPc__flex {
    margin: 3.90625vw auto 0;
    gap: 0.78125vw;
  }
  .smnPc__read {
    font-size: 1.09375vw;
  }
  .smnPc__tax {
    font-size: 1.25vw;
  }
  .smnPc__main {
    max-width: 70.3125vw;
    margin: 0.78125vw auto 0;
  }
  .smnPc__ttl {
    height: 4.6875vw;
    padding: 0 1.25vw;
    font-size: 1.71875vw;
  }
  table.smnPc__tb th {
    padding: 1.25vw;
    font-size: 1.25vw;
  }
  table.smnPc__tb th .noto {
    margin-top: 0.3125vw;
    font-size: 1.09375vw;
  }
  table.smnPc__tb td {
    padding: 1.796875vw 0 1.796875vw 1.796875vw;
  }
  table.smnPc__tb td .lot {
    font-size: 1.09375vw;
    font-weight: 400;
  }
  table.smnPc__tb td .num {
    font-size: 2.03125vw;
  }
  table.smnPc__tb td .yen {
    font-size: 1.09375vw;
  }
  .smnPc__note {
    margin-top: 1.5625vw;
    font-size: 1.09375vw;
  }
  .smnPay {
    margin-top: 7.8125vw;
  }
  .smnPay .inner {
    max-width: 70.3125vw;
  }
  .smnPay__hd {
    height: 5.9375vw;
    font-size: 1.875vw;
  }
  .smnPay__box {
    padding: 1.796875vw 1.875vw 2.34375vw;
  }
  .smnPay__read {
    font-size: 1.25vw;
  }
  .smnPay__img {
    margin: 2.34375vw auto 0;
    width: 51.5625vw;
  }
  .smnPay__flex {
    width: 59.375vw;
    margin: 2.34375vw auto 0;
  }
  .smnPay__sub {
    width: 23.4375vw;
    height: 2.34375vw;
    border-radius: 3.90625vw;
    font-size: 1.25vw;
  }
  .smnPay__logo.smnPay__logo01 {
    width: 28.125vw;
    margin: 1.25vw auto 0;
  }
  .smnPay__logo.smnPay__logo02 {
    width: 15.9375vw;
    margin: 0.9375vw auto 0;
  }
}
@media (max-width: 768px) {
  .smnPc {
    margin-top: 16vw;
  }
  .smnPc__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 2.6666666667vw;
    margin: 10.6666666667vw auto 0;
  }
  .smnPc__read {
    font-size: 3.7333333333vw;
  }
  .smnPc__tax {
    font-size: 3.7333333333vw;
    font-weight: bold;
    margin-left: auto;
  }
  .smnPc__main {
    max-width: 240vw;
    margin: 2.6666666667vw auto 0;
  }
  .smnPc__ttl {
    height: 13.3333333333vw;
    padding: 0 3.2vw;
    font-size: 4.8vw;
  }
  table.smnPc__tb tr {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
  }
  table.smnPc__tb th {
    padding: 3.7333333333vw 4.2666666667vw;
    font-size: 4.8vw;
    border: 1px solid #c9c8c7;
    border-bottom: none;
  }
  table.smnPc__tb th .noto {
    display: inline;
    margin-top: 0;
    font-size: 3.7333333333vw;
  }
  table.smnPc__tb td {
    padding: 2.1333333333vw;
    border: 1px solid #c9c8c7;
    border-top: none;
  }
  table.smnPc__tb td .lot {
    font-size: 3.7333333333vw;
  }
  table.smnPc__tb td .num {
    padding-left: 2.6666666667vw;
    font-size: 6.9333333333vw;
  }
  table.smnPc__tb td .yen {
    padding-left: 0.8vw;
    font-size: 3.7333333333vw;
  }
  .smnPc__note {
    margin-top: 4.2666666667vw;
    font-size: 3.2vw;
    line-height: 1.5;
  }
  .smnPay {
    margin-top: 16vw;
  }
  .smnPay .inner {
    max-width: 240vw;
  }
  .smnPay__hd {
    height: 13.3333333333vw;
    font-size: 4.8vw;
  }
  .smnPay__box {
    padding: 6.6666666667vw 4.8vw 7.2vw;
  }
  .smnPay__read {
    font-size: 4vw;
  }
  .smnPay__img {
    margin: 5.3333333333vw auto 0;
    width: 56vw;
  }
  .smnPay__flex {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-flow: column;
        -ms-flex-flow: column;
            flex-flow: column;
    gap: 8vw;
    width: 100%;
    margin: 8vw auto 0;
  }
  .smnPay__li {
    width: 100%;
  }
  .smnPay__sub {
    width: 80vw;
    height: 8vw;
    border-radius: 13.3333333333vw;
    font-size: 4.2666666667vw;
  }
  .smnPay__logo.smnPay__logo01 {
    width: 57.6vw;
    margin: 4.2666666667vw auto 0;
  }
  .smnPay__logo.smnPay__logo02 {
    width: 57.8666666667vw;
    margin: 4vw auto 0;
  }
}
.top .node:not(.scrollin) {
  -webkit-transform: unset;
          transform: unset;
  opacity: unset;
}

.t-mvNote {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 70px;
  font-family: "Zen Old Mincho", serif;
  font-size: 20px;
  font-weight: 600;
  color: #fff;
  background: var(--blue);
  text-align: center;
  text-decoration: none;
}
.t-mvNote p {
  position: relative;
  margin: 0 auto;
}
.t-mvNote p span {
  font-size: 30px;
}
.t-mvNote p::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -35px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 28px;
  height: 28px;
  background: url(../images/icon/arrow_right_w.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.bnr_specialist {
  position: absolute;
  bottom: 100px;
  right: 2.5%;
  width: 332px;
  height: auto;
  -webkit-box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
  z-index: 5;
}
.bnr_specialist img {
  vertical-align: top;
}

.t-bnrs {
  width: 100%;
  gap: 18px 14px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.t-bnrs a:nth-child(3) {
  grid-column: 1/3;
  justify-self: center;
}

.t-bnr {
  display: block;
  max-width: 610px;
  width: 100%;
  height: auto;
}

.concept__img {
  max-width: 937px;
  width: 100%;
  height: auto;
  margin: 0 auto;
}

.news {
  position: relative;
  overflow: hidden;
  margin-top: 0 !important;
  padding-top: 100px;
  padding-bottom: 100px;
}
.news .p-menu__index {
  margin-top: 30px;
}
.news .node-wrapper {
  width: 95%;
  margin-inline: auto;
  padding: 0;
  display: grid;
  -webkit-box-align: start;
  -webkit-align-items: start;
      -ms-flex-align: start;
          align-items: start;
  grid-template-columns: 0.15fr 1fr;
  grid-template-rows: 58px 1fr;
  grid-template-areas: "tit news" "btn news";
  gap: 70px 138px;
}
.news .title_h3 {
  grid-area: tit;
  text-align: left;
}
.news .btn-wrapper {
  grid-area: btn;
}
.news .btn-wrapper a {
  margin-inline: 0;
}
.news .news-wrapper {
  grid-area: news;
  width: 106%;
}
.news .news-wrapper .news-item {
  margin-bottom: 0;
}
.news .news-wrapper .news-item ul {
  height: auto;
  overflow: visible;
  margin: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px 0;
}
.news .news-wrapper .news-item ul li {
  position: relative;
  text-indent: 0;
  border-bottom: 1px solid #D9D9D9;
  padding-left: 0;
  margin-bottom: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -webkit-flex-direction: row-reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.news .news-wrapper .news-item ul li::before {
  position: absolute;
  right: 0;
  top: 37px;
  background: url(../images/icon/arrow_btn.svg);
  background-repeat: no-repeat;
  background-size: contain;
  margin: 0;
  width: 18px;
  height: 18px;
  border: none;
  margin-top: -14px;
  margin-right: 2px;
}
.news .news-wrapper .news-item a {
  text-decoration: none;
  width: 100%;
  display: block;
  height: auto;
  padding-bottom: 32px;
}
.news .news-wrapper .news-item a .cat {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  padding: 2px 4px;
  color: var(--blue);
  border: 1px solid var(--blue);
  font-size: 15px;
}
.news .news-wrapper .news-item a .area {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 16px;
  margin-bottom: 4px;
}
.news .news-wrapper .news-item a .date {
  display: block;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  color: #8F8D8C;
  font-weight: 400;
  font-size: 17px;
}
.news .news-wrapper .news-item a .text {
  width: 80%;
  display: block;
  color: #000000;
  font-weight: 600;
  font-size: 18px;
}

.t-bnrSlids {
  margin-bottom: 120px;
}
.t-bnrSlids .t-bnrSlids__wrap {
  margin-bottom: 0;
}
.t-bnrSlids .t-bnrSlids__wrap.slick-initialized {
  display: block;
  opacity: 1;
}
.t-bnrSlids .t-bnrSlids__wrap .slick-arrow::before {
  display: none;
}
.t-bnrSlids .t-bnrSlids__wrap .slick-prev {
  width: 50px;
  height: 50px;
  top: 50%;
  left: -80px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../images/icon/pager_left.png);
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: center;
  z-index: 2;
}
.t-bnrSlids .t-bnrSlids__wrap .slick-prev::before {
  display: none;
}
.t-bnrSlids .t-bnrSlids__wrap .slick-next {
  width: 50px;
  height: 50px;
  top: 50%;
  right: -80px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../images/icon/pager_right.png);
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: center;
  z-index: 2;
}
.t-bnrSlids .t-bnrSlids__wrap .slick-next::before {
  display: none;
}
.t-bnrSlids .t-bnrSlids__wrap .slick-dots {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  gap: 12px;
  position: relative;
  left: unset;
  bottom: unset;
  -webkit-transform: unset;
          transform: unset;
  width: 230px;
  margin: 60px auto 0;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.t-bnrSlids .t-bnrSlids__wrap .slick-dots li {
  width: 48px;
  height: 5px;
  background: #c9c8c7;
  pointer-events: none;
}
.t-bnrSlids .t-bnrSlids__wrap .slick-dots li.slick-active {
  background: var(--blue);
}
.t-bnrSlids .t-bnrSlids__wrap .slick-dots li button {
  display: none;
}
.t-bnrSlids .t-bnrSlid {
  width: 880px;
  margin: 0 25px;
}

.belief {
  background: url(../images/home/belief.jpg) no-repeat top center/cover;
  padding: 120px 0;
}
.belief .node-wrapper {
  padding: 0;
  width: 95%;
  margin-inline: auto;
}
.belief .node-wrapper .belief-tit {
  margin-bottom: 60px;
}
.belief .node-wrapper .belief-tit h2 {
  color: #fff;
}
.belief .node-wrapper .belief-copy {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 140px;
}
.belief .node-wrapper .belief-copy .belief-copytit {
  color: #fff;
  font-size: 46px;
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  position: relative;
}
.belief .node-wrapper .belief-copy .belief-copytit::after {
  content: "";
  position: absolute;
  right: 20%;
  top: -124%;
  width: 0.5px;
  height: 385%;
  background: #fff;
}
.belief .node-wrapper .belief-copy p {
  color: #fff;
  font-size: 40px;
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  margin-bottom: 0;
  line-height: 2;
}
.belief .node-wrapper .belief-copy p span {
  display: inline-block;
}
.belief .node-wrapper .belief-copy p span:nth-of-type(1) span {
  text-indent: -0.8vw;
}
.belief .node-wrapper .belief-copy p span:nth-of-type(2) {
  white-space: nowrap;
  text-indent: -19.5px;
}
.belief .node-wrapper .belief-copy p span:nth-of-type(3) span {
  text-indent: -0.8vw;
}
.belief .node-wrapper .belief-detail {
  display: grid;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  grid-template-columns: repeat(2, 1fr);
  -webkit-column-gap: 90px;
     -moz-column-gap: 90px;
          column-gap: 90px;
}
.belief .node-wrapper .belief-detail .belief-text {
  -webkit-box-ordinal-group: 0;
  -webkit-order: -1;
      -ms-flex-order: -1;
          order: -1;
  font-size: 20px;
  line-height: 2.8;
  color: #fff;
  font-family: "Zen Old Mincho", serif;
  font-weight: 500;
  margin-bottom: 0;
  white-space: nowrap;
}

.promise {
  background: url(../images/home/promise_bg.jpg) no-repeat top center/cover;
  padding: 0;
  height: 37vw;
  padding-top: 33%;
}
.promise .node-wrapper {
  background: #fff;
  padding: 70px 80px 80px;
  width: 95%;
  margin-inline: auto;
  position: relative;
  z-index: 3;
  margin-top: -11%;
}
.promise .node-wrapper .promise-tit {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 50px;
}
.promise .node-wrapper .promise-tit h2 {
  font-size: 18px;
}
.promise .node-wrapper .promise-tit .en {
  font-size: 40px;
}
.promise .node-wrapper .promise-tit .en::after {
  margin-inline: auto;
}
.promise .node-wrapper .promise-team {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px 10px;
}
.promise .node-wrapper .promise-team li {
  border-bottom: 1px solid var(--blue);
  padding-bottom: 24px;
  display: grid;
  -webkit-column-gap: 14px;
     -moz-column-gap: 14px;
          column-gap: 14px;
  grid-template-columns: repeat(1, 56px 1fr);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.promise .node-wrapper .promise-team li h3 {
  color: var(--blue);
  font-family: "Zen Old Mincho", serif;
  font-weight: bold;
  margin-bottom: 0;
}

.features {
  padding: 309px 0 84px;
  background: url(../images/home/features_bg.jpg) no-repeat top center/cover;
  -webkit-transform: none !important;
          transform: none !important;
  opacity: unset !important;
}
.features .node-wrapper {
  padding: 0;
  width: 95%;
  margin-inline: auto;
}
.features .node-wrapper .features-tit {
  margin-bottom: 60px;
}
.features .node-wrapper .features-detail {
  margin-bottom: 80px;
}
.features .node-wrapper .features-detail .features-copy {
  font-size: 46px;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  color: var(--blue);
  white-space: nowrap;
}
.features .node-wrapper .features-detail .features-text {
  font-size: 20px;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  line-height: 2.4;
}
.features .node-wrapper .features-detail .features-text span {
  display: block;
}
.features .node-wrapper .features-difference .features-tit {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.features .node-wrapper .features-difference .features-tit h3 {
  text-align: center;
  font-size: 18px;
}
.features .node-wrapper .features-difference .features-tit .en {
  font-size: 40px;
}
.features .node-wrapper .features-difference .features-tit .en::after {
  margin-inline: auto;
}
.features .node-wrapper .features-difference .features-contents {
  padding: 0 80px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 40px;
}
.features .node-wrapper .features-difference .features-contents .features-free {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.features .node-wrapper .features-difference .features-contents .features-free h3 {
  padding: 20px;
  background: var(--blue);
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 28px;
  color: #F2E100;
  text-align: center;
  line-height: 1.2;
}
.features .node-wrapper .features-difference .features-contents .features-free h3 .features-position {
  border: 1px solid #F2E100;
  font-size: 16px;
  margin-right: 10px;
  padding: 5px;
  display: inline-block;
  vertical-align: bottom;
}
.features .node-wrapper .features-difference .features-contents .features-free h3 .features-order {
  font-size: 17px;
  display: inline-block;
}
.features .node-wrapper .features-difference .features-contents .features-free .features-list {
  background: #fff;
  border-right: 4px solid var(--blue);
  border-left: 4px solid var(--blue);
  border-bottom: 4px solid var(--blue);
  padding: 26px 24px 36px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.features .node-wrapper .features-difference .features-contents .features-free .features-list .features-inner {
  display: grid;
  grid-template-columns: 1fr 77%;
  gap: 0 24px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid #D9D9D9;
}
.features .node-wrapper .features-difference .features-contents .features-free .features-list .features-inner:last-of-type {
  padding-bottom: 0;
  margin-bottom: 0;
  border-bottom: 0;
}
.features .node-wrapper .features-difference .features-contents .features-free .features-list .features-inner dd p {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
}
.features .node-wrapper .features-difference .features-contents .features-free .features-list .features-inner dd p:nth-of-type(1) {
  margin-bottom: 10px;
  font-size: 22px;
  color: var(--blue);
}
.features .node-wrapper .features-difference .features-contents .features-free .features-list .features-inner dd p:nth-of-type(2) {
  font-size: 17px;
  line-height: 1.6;
  margin-bottom: 0;
}
.features .node-wrapper .features-difference .features-contents .features-guarantee {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
}
.features .node-wrapper .features-difference .features-contents .features-guarantee h3 {
  padding: 12px 0;
  background: #678AA5;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 28px;
  color: #fff;
  text-align: center;
  line-height: 1.4;
}
.features .node-wrapper .features-difference .features-contents .features-guarantee h3 .features-position {
  font-size: 17px;
  display: block;
}
.features .node-wrapper .features-difference .features-contents .features-guarantee h3 .features-order {
  font-size: 16px;
  display: block;
}
.features .node-wrapper .features-difference .features-contents .features-guarantee .features-list {
  background: #fff;
  border-right: 4px solid #678AA5;
  border-left: 4px solid #678AA5;
  border-bottom: 4px solid #678AA5;
  padding: 26px 24px 36px;
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}
.features .node-wrapper .features-difference .features-contents .features-guarantee .features-list .features-inner {
  display: grid;
  grid-template-columns: 1fr 77%;
  gap: 0 24px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid #D9D9D9;
}
.features .node-wrapper .features-difference .features-contents .features-guarantee .features-list .features-inner:last-of-type {
  padding-bottom: 0px;
  margin-bottom: 0px;
  border-bottom: 0;
}
.features .node-wrapper .features-difference .features-contents .features-guarantee .features-list .features-inner dd p {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
}
.features .node-wrapper .features-difference .features-contents .features-guarantee .features-list .features-inner dd p:nth-of-type(1) {
  margin-bottom: 12px;
  font-size: 22px;
  color: #678AA5;
}
.features .node-wrapper .features-difference .features-contents .features-guarantee .features-list .features-inner dd p:nth-of-type(2) {
  font-size: 17px;
  line-height: 1.6;
  margin-bottom: 0;
}
.features .node-wrapper .btn-wrapper a {
  margin: 50px auto 0;
  width: 352px;
}

.program {
  position: relative;
  padding: 120px 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e3e8f1));
  background: -webkit-linear-gradient(top, #ffffff, #e3e8f1);
  background: linear-gradient(to bottom, #ffffff, #e3e8f1);
}
.program .program-wrapper {
  width: 95%;
  margin-inline: auto;
  padding-inline: 0;
}
.program .program-wrapper .program-outline {
  margin-bottom: 15.625vw;
}
.program .program-wrapper .program-outline .program-tit {
  margin-bottom: 60px;
}
.program .program-wrapper .program-outline .program-img {
  width: 40vw;
  position: absolute;
  right: 0;
  top: 0;
}
.program .program-wrapper .program-outline .program-img::before {
  content: "PRECISE";
  color: #D9D9D9;
  font-style: italic;
  font-weight: 600;
  font-family: "Cormorant Garamond", serif;
  font-size: 150px;
  position: absolute;
  right: 48%;
  bottom: -14%;
  white-space: nowrap;
}
@media screen and (min-width: 1220px) and (max-width: 1740px) {
  .program .program-wrapper .program-outline .program-img::before {
    font-size: 8.6206896552vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 1219px) {
  .program .program-wrapper .program-outline .program-img::before {
    font-size: 7.3831009024vw;
  }
}
.program .program-wrapper .program-outline .program-img::after {
  content: "BLUEPRINT";
  color: #D9D9D9;
  font-style: italic;
  font-weight: 600;
  font-family: "Cormorant Garamond", serif;
  font-size: 150px;
  position: absolute;
  right: 5%;
  bottom: -32%;
  white-space: nowrap;
}
@media screen and (min-width: 1220px) and (max-width: 1740px) {
  .program .program-wrapper .program-outline .program-img::after {
    font-size: 8.6206896552vw;
  }
}
@media screen and (min-width: 768px) and (max-width: 1219px) {
  .program .program-wrapper .program-outline .program-img::after {
    font-size: 7.3831009024vw;
  }
}
.program .program-wrapper .program-outline .program-read {
  color: var(--blue);
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 46px;
  line-height: 1.5;
}
.program .program-wrapper .program-outline .program-txt {
  color: #000;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 2;
  margin-top: 60px;
  margin-bottom: 0;
}
.program .program-wrapper .program-step .program-tit {
  margin-bottom: 50px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.program .program-wrapper .program-step .program-tit h3 {
  font-size: 18px;
}
.program .program-wrapper .program-step .program-tit .en {
  font-size: 46px;
}
.program .program-wrapper .program-step .program-tit .en::after {
  margin-inline: auto;
}
.program .program-wrapper .program-step .program-tit .en span {
  font-size: 110px;
  vertical-align: super;
}
.program .program-wrapper .program-step .program-copy {
  text-align: center;
  font-size: 17px;
  line-height: 2;
  font-weight: 600;
  color: #000;
  font-family: "Zen Old Mincho", serif;
  margin-bottom: 50px;
}
.program .program-wrapper .program-step .program-area .program-group {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0 5px;
}
.program .program-wrapper .program-step .program-area .program-group li button {
  background: #D9D9D9;
  color: #8F8D8C;
  border: none;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  width: 100%;
  display: block;
  padding: 10px 0 13px;
  cursor: pointer;
}
.program .program-wrapper .program-step .program-area .program-group li button span {
  display: block;
}
.program .program-wrapper .program-step .program-area .program-group li button span:first-of-type {
  font-size: 17px;
  border-bottom: 1px solid #C6C6C6;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-inline: auto;
  padding-inline: 20px;
  -webkit-padding-after: 5px;
          padding-block-end: 5px;
  -webkit-margin-after: 5px;
          margin-block-end: 5px;
}
.program .program-wrapper .program-step .program-area .program-group li button span:last-of-type {
  font-size: 22px;
}
.program .program-wrapper .program-step .program-area .program-group li.is-active button {
  background: var(--blue);
  color: #fff;
}
.program .program-wrapper .program-step .program-area .program-group li.is-active button span:first-of-type {
  border-bottom: 1px solid #678AA5;
}
.program .program-wrapper .program-step .program-area .program-panels {
  border: 4px solid var(--blue);
  padding: 40px 40px 60px;
  background: #fff;
  margin-bottom: 20px;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel {
  display: grid;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  grid-template-columns: 37.282% auto;
  gap: 0 42px;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-img picture {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
  display: block;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-count {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 15px;
  padding: 3px;
  color: var(--blue);
  border: 1px solid var(--blue);
  display: inline-block;
  margin-bottom: 6px;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead {
  margin-bottom: 16px;
  padding-bottom: 14px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid var(--blue);
  white-space: nowrap;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead h4 {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 26px;
  color: var(--blue);
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead p {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 18px;
  color: var(--blue);
  margin-bottom: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  gap: 0 10px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead p span {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 10px;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead p span::before {
  content: "";
  width: 1px;
  height: 22px;
  background: var(--blue);
  display: inline-block;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-txtRead {
  margin-bottom: 16px;
  font-size: 22px;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-txt {
  margin-bottom: 30px;
  font-size: 17px;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-txt span {
  display: block;
  margin-top: 16px;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list {
  border: 1px solid #F2E100;
  background: #FEFEF4;
  padding: 20px;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dt {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 18px;
  margin-bottom: 14px;
  background: #fff;
  border-bottom: 1px solid #F2E100;
  position: relative;
  padding: 2px 0 7px 12px;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dt::before {
  content: "";
  position: absolute;
  background: #F2E100;
  width: 2px;
  height: 90%;
  top: 5%;
  left: 0;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dd.program-column {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 0 16px;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dd ul {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 5px 0;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dd ul li {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 17px;
}
.program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dd ul li::before {
  content: "・";
}
.program .program-wrapper .program-point {
  margin-bottom: 60px;
}
.program .program-wrapper .program-point li {
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 16px;
  color: #8F8D8C;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.program .program-wrapper .program-point li::before {
  content: "※";
}
.program .program-wrapper .btn-wrapper a {
  margin-top: 0;
  margin-bottom: 80px;
  font-size: 14px;
  width: 282px;
}
.program .program-wrapper .program-cta {
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 600;
  text-align: center;
  margin-bottom: 40px;
}
.program .program-wrapper .program-cta h3 {
  font-size: 28px;
  color: var(--blue);
  margin-bottom: 30px;
}
.program .program-wrapper .program-cta p {
  font-size: 17px;
  line-height: 2;
  margin-bottom: 0;
}
.program .program-wrapper .program-cv {
  font-family: "Zen Old Mincho", sans-serif;
  display: grid;
  grid-template-columns: 48.3870967742% 48.3870967742%;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.program .program-wrapper .program-cv .program-price {
  -webkit-box-shadow: 4px 4px 0 0 #004B83;
  box-shadow: 4px 4px 0 0 #004B83;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  background: #299CD2;
  text-align: left;
  font-weight: bold;
  padding: 30px 44px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
.program .program-wrapper .program-cv .program-price::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  background: #000;
  background: url(../images/icon/arrow_btn.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.program .program-wrapper .program-cv .program-price .txt {
  color: #fff;
  text-align: left;
  font-size: 30px;
  margin-bottom: 10px;
}
.program .program-wrapper .program-cv .program-price .sub {
  color: #fff;
  text-align: left;
  font-size: 17px;
  margin-bottom: 0;
}
.program .program-wrapper .program-cv .program-web {
  font-weight: bold;
  letter-spacing: 0.01em;
  background: #f2e100;
  -webkit-box-shadow: 4px 4px 0 0 #004B83;
  box-shadow: 4px 4px 0 0 #004B83;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-flow: column;
      -ms-flex-flow: column;
          flex-flow: column;
  text-align: left;
  padding: 30px 44px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
}
.program .program-wrapper .program-cv .program-web::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 30px;
  height: 30px;
  background: #000;
  background: url(../images/icon/arrow_btn.svg);
  background-repeat: no-repeat;
  background-size: contain;
}
.program .program-wrapper .program-cv .program-web .txt {
  color: var(--blue);
  text-align: left;
  font-size: 30px;
  margin-bottom: 10px;
}
.program .program-wrapper .program-cv .program-web .sub {
  color: var(--blue);
  text-align: left;
  font-size: 17px;
  display: block;
}
.program .program-wrapper .program-cv .program-web .sub span {
  margin-bottom: 8px;
  display: inline-block;
}

.navs {
  background: var(--blue);
  padding: 50px 0;
}
.navs .node-wrapper {
  width: 95%;
  margin-inline: auto;
  padding: 0 80px;
}
.navs .node-wrapper ul {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
}
.navs .node-wrapper ul li {
  border-right: 1px solid #3A81B7;
}
.navs .node-wrapper ul li:first-child {
  border-left: 1px solid #3A81B7;
}
.navs .node-wrapper ul li a {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 6px 0;
  gap: 6px 0;
  width: 100%;
  height: 100%;
}
.navs .node-wrapper ul li a .nav-img {
  width: 56px;
}
.navs .node-wrapper ul li a .nav-txt {
  font-family: "Zen Old Mincho", serif;
  color: #fff;
  font-size: 18px;
  margin-bottom: 0;
  text-align: center;
}

.menu {
  padding: 100px 0;
}
.menu .node-wrapper {
  padding: 0;
  width: 95%;
  margin-inline: auto;
  padding: 0 80px;
}
.menu .node-wrapper .menu-tit {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 50px;
}
.menu .node-wrapper .menu-tit h2 {
  font-size: 24px;
}
.menu .node-wrapper .menu-tit .en {
  font-size: 70px;
}
.menu .node-wrapper .menu-tit .en::after {
  margin-inline: auto;
}
.menu .node-wrapper .p-menu__wrap {
  padding: 0;
}
.menu .node-wrapper .p-menu__wrap .btn-wrapper a {
  width: 320px;
}

.casestudy {
  padding: 100px 0 120px;
  background: #0D3D6D;
  color: #000;
  position: relative;
  z-index: 2;
}
.casestudy::before {
  content: "";
  background: url(../images/home/casestudy_bg_pc_pic1.jpg) no-repeat top center/cover;
  width: 100%;
  height: 575px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.casestudy .casestudy-wrapper {
  width: 95%;
  margin-inline: auto;
  padding: 0;
}
.casestudy .casestudy-wrapper .casestudy-tit {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 50px;
}
.casestudy .casestudy-wrapper .casestudy-tit h2 {
  font-size: 24px;
  color: #fff;
}
.casestudy .casestudy-wrapper .casestudy-tit .en {
  font-size: 70px;
  color: #F2E100;
}
.casestudy .casestudy-wrapper .casestudy-tit .en::after {
  margin-inline: auto;
}
.casestudy .casestudy-wrapper .casestudy-picture {
  background: #fff;
  color: #000;
  padding: 80px 0;
}
.casestudy .casestudy-wrapper .casestudy-picture .casestudy-copy {
  padding: 0 80px;
  margin-bottom: 77px;
}
.casestudy .casestudy-wrapper .casestudy-picture .casestudy-copy .casestudy-copytit {
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 600;
  font-size: 46px;
  color: var(--blue);
  margin-bottom: 30px;
}
.casestudy .casestudy-wrapper .casestudy-picture .casestudy-copy p {
  color: #000;
  font-size: 20px;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 600;
  line-height: 2;
}
.casestudy .casestudy-wrapper .casestudy-picture .casestudy-tab {
  padding: 0 80px;
  margin-bottom: 60px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  gap: 10px;
}
.casestudy .casestudy-wrapper .casestudy-picture .casestudy-tab h3 {
  margin-bottom: 0;
}
.casestudy .casestudy-wrapper .casestudy-picture .casestudy-tab h3 button {
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 600;
  font-size: 17px;
  color: var(--blue);
  background: #E3E8F1;
  border: none;
  border-radius: 100px;
  padding: 7px 15px;
  cursor: pointer;
}
.casestudy .casestudy-wrapper .casestudy-picture .casestudy-tab h3 button.is-active {
  background: var(--blue);
  color: #fff;
}
.casestudy .casestudy-wrapper .casestudy-picture .casestudy-tab h3 button:hover {
  background: var(--blue);
  color: #fff;
}
.casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .menu-slider {
  width: 100%;
  margin: 0;
}
.casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .sliderDot .slick-dots li {
  display: none;
}
.casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .slick-list .slick-track {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-margin-end: -80px;
          margin-inline-end: -80px;
  padding-bottom: 100px;
}
.casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .slick-list .slick-track .slick-slide {
  height: auto !important;
  margin-left: 12px;
}
.casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .smnCuBox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .smnCuBox .btn-wrapper {
  position: absolute;
  left: 0;
  bottom: 0;
}
.casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .smnCuBox .btn-wrapper a {
  width: 320px;
  margin: 0;
}
.casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .smnCuBox .smnCurrent {
  position: absolute;
  right: 0;
  bottom: 0;
}

.reason {
  padding: 100px 0 120px;
  background: url(../images/home/reason_bg.jpg) no-repeat top center/cover;
}
.reason .reason-wrapper {
  max-width: 57.7%;
  padding-inline: 4.1666666667vw;
  margin-inline: auto;
}
.reason .reason-wrapper .reason-tit {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 50px;
}
.reason .reason-wrapper .reason-tit h2 {
  font-size: 24px;
  color: #000;
}
.reason .reason-wrapper .reason-tit .en {
  font-size: 70px;
}
.reason .reason-wrapper .reason-tit .en::after {
  margin-inline: auto;
}
.reason .reason-wrapper .reason-tabs {
  margin-bottom: 3.125vw;
  width: 100%;
  margin-inline: auto;
  list-style-type: none;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  padding: 0;
  counter-reset: listnum;
}
.reason .reason-wrapper .reason-tabs li .reason-tab {
  position: relative;
}
.reason .reason-wrapper .reason-tabs li .reason-tab:before {
  position: absolute;
  left: -0.1vw;
  top: -0.15vw;
  counter-increment: listnum; /* counter-resetと同じ文字列 */
  content: "0" counter(listnum); /* カウントした数に応じて番号を表示 */
  background: var(--blue);
  color: #fff;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 600;
  padding: 0.12vw 0.12vw;
  font-size: 0.9375vw;
}
.reason .reason-wrapper .reason-tabs li .reason-tab {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  font-size: 0.77vw;
  background: #fff;
  color: #000;
  cursor: pointer;
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 600;
  width: 100%;
  height: 100%;
  padding: 0.95vw 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
  border: 2px solid #fff;
}
.reason .reason-wrapper .reason-tabs li .reason-tab.is-active {
  background: #E0EAF2;
  font-weight: bold;
  border: 2px solid var(--blue);
}
.reason .reason-wrapper .reason-tabs:not(.reset) > li {
  margin: 0;
}
.reason .reason-wrapper .reason-swiper {
  overflow: unset;
  position: relative;
}
.reason .reason-wrapper .reason-swiper .swiper-wrapper:not(.reset) {
  list-style-type: none;
  margin-bottom: 0;
  padding-left: 0;
  overflow: unset;
}
.reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide {
  -webkit-transition: -webkit-transform 600ms ease-out;
  transition: -webkit-transform 600ms ease-out;
  transition: transform 600ms ease-out;
  transition: transform 600ms ease-out, -webkit-transform 600ms ease-out;
  height: auto;
}
.reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-wrap {
  display: grid;
  grid-template-columns: 6fr 40.5%;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  height: 100%;
}
.reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents {
  background: #fff;
  padding: 3.125vw 1.7708333333vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents h3 {
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 600;
  font-size: 1.4583333333vw;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0 1.25vw;
  margin-bottom: 1.6666666667vw;
  color: var(--blue);
  line-height: 1.2;
  border-bottom: 1px solid var(--blue);
  padding-bottom: 0.625vw;
}
.reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents h3::before {
  content: attr(data-index);
  color: var(--blue);
  font-size: 2.7604166667vw;
  white-space: nowrap;
}
.reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents p {
  font-family: "Zen Old Mincho", sans-serif;
  font-weight: 600;
  font-size: 0.9375vw;
  line-height: 1.7708333333vw;
  margin-bottom: 0;
}
.reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-img {
  height: 100%;
}
.reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-img picture, .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-img img {
  display: block;
  width: 100%;
  height: 100%; /* 親のGridの高さ（100%）に合わせる */
  -o-object-fit: cover;
     object-fit: cover; /* これを入れないと画像が縦に伸びてしまいます */
}
.reason .reason-wrapper .reason-swiper .swiper-wrapper:not(.reset) > li {
  margin: 0;
}
.reason .reason-wrapper .reason-swiper .swiper-slide-prev,
.reason .reason-wrapper .reason-swiper .swiper-slide-next {
  -webkit-transform: scale(0.85);
          transform: scale(0.85);
}
.reason .reason-wrapper .reason-swiper {
  /* 左右のスライド */
}
.reason .reason-wrapper .reason-swiper .swiper-slide-active {
  -webkit-transform: scale(1);
          transform: scale(1);
}
.reason .reason-wrapper .reason-swiper .swiper-pagination {
  display: none;
}
.reason .reason-wrapper .reason-swiper .swiper-button-prev {
  width: 2.7vw;
  height: 2.7vw;
  top: 50%;
  left: -6.5%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../images/icon/pager_left.png);
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: center;
  z-index: 2;
  cursor: pointer;
}
.reason .reason-wrapper .reason-swiper .swiper-button-prev::after {
  display: none;
}
.reason .reason-wrapper .reason-swiper .swiper-button-next {
  width: 2.7vw;
  height: 2.7vw;
  top: 50%;
  right: -6.5%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  background: url(../images/icon/pager_right.png);
  background-repeat: no-repeat;
  background-size: auto 100%;
  background-position: center;
  z-index: 2;
  cursor: pointer;
}
.reason .reason-wrapper .reason-swiper .swiper-button-next::after {
  display: none;
}

.msg {
  background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), to(#e3e8f1));
  background: -webkit-linear-gradient(top, #ffffff 0%, #e3e8f1 100%);
  background: linear-gradient(180deg, #ffffff 0%, #e3e8f1 100%);
  padding: 100px 0;
}
.msg .msg-wrapper {
  position: relative;
  display: grid;
  grid-template-columns: auto 50%;
  gap: 0 120px;
  padding: 0;
  width: 95%;
  padding-top: 150px;
  margin-bottom: 60px;
}
.msg .msg-wrapper .msg-contents {
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
  margin-top: 44px;
}
.msg .msg-wrapper .msg-contents .msg-tit {
  margin-bottom: 60px;
}
.msg .msg-wrapper .msg-contents .msg-copy {
  font-size: 46px;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  color: var(--blue);
  margin-bottom: 60px;
  white-space: nowrap;
}
.msg .msg-wrapper .msg-contents .msg-txt {
  color: #000;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 1.8;
  margin-bottom: 60px;
}
.msg .msg-wrapper .msg-contents .msg-name {
  margin-left: auto;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
  font-size: 18px;
  text-align: right;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
  -webkit-justify-content: end;
      -ms-flex-pack: end;
          justify-content: end;
  gap: 0 15px;
  margin-bottom: 0;
}
.msg .msg-wrapper .msg-contents .msg-name span {
  font-size: 28px;
}
.msg .msg-wrapper .msg-img {
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
  position: relative;
  height: -webkit-min-content;
  height: -moz-min-content;
  height: min-content;
}
.msg .msg-wrapper .msg-img::after {
  content: "DOCTOR";
  color: #D9D9D9;
  font-style: italic;
  font-weight: 600;
  font-family: "Cormorant Garamond", serif;
  font-size: 150px;
  position: absolute;
  left: -28%;
  bottom: -14%;
  white-space: nowrap;
}
@media screen and (min-width: 1321px) and (max-width: 1580px) {
  .msg .msg-wrapper .msg-img::after {
    left: -5%;
  }
}
@media screen and (min-width: 951px) and (max-width: 1320px) {
  .msg .msg-wrapper .msg-img::after {
    left: -2.15vw;
    font-size: 10.6060606061vw;
  }
}
.msg .msg-wrapper .msg-pic {
  width: 225px;
  position: absolute;
  top: 0;
  right: 0;
}
.msg .msg-careers .msg-career {
  background: #F9FAFC;
  padding: 20px 24px 70px;
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
  position: relative;
  height: 273px;
  overflow-y: clip;
}
.msg .msg-careers .msg-career.active {
  height: auto;
}
.msg .msg-careers .msg-career .msg-list h4 {
  font-family: "Zen Old Mincho", serif;
  color: var(--blue);
  font-weight: 600;
  font-size: 26px;
  border-bottom: 1px solid var(--blue);
  margin-bottom: 16px;
  padding-bottom: 14px;
}
.msg .msg-careers .msg-career .msg-list .msg-list-body ul li {
  font-size: 16px;
  line-height: 1.8;
  font-family: "Zen Old Mincho", serif;
  font-weight: 600;
}
.msg .msg-careers .msg-career .msg-more {
  position: absolute;
  width: 100%;
  height: 120px;
  bottom: 0;
  background: -webkit-gradient(linear, left bottom, left top, from(#fff), color-stop(50%, rgba(255, 255, 255, 0.74)), to(rgba(255, 255, 255, 0)));
  background: -webkit-linear-gradient(bottom, #fff 0%, rgba(255, 255, 255, 0.74) 50%, rgba(255, 255, 255, 0) 100%);
  background: linear-gradient(0deg, #fff 0%, rgba(255, 255, 255, 0.74) 50%, rgba(255, 255, 255, 0) 100%);
  cursor: pointer;
}
.msg .msg-careers .msg-career .msg-more .txt {
  position: absolute;
  bottom: 30px;
  right: 40px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 16px;
  font-weight: 600;
  color: var(--blue);
}
.msg .msg-careers .msg-career .msg-more .icon {
  position: absolute;
  top: calc(50% + 1px);
  left: -33px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: var(--blue);
}
.msg .msg-careers .msg-career .msg-more .icon::after {
  content: "";
  width: 12px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.msg .msg-careers .msg-career .msg-more .icon::before {
  content: "";
  width: 12px;
  height: 2px;
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  -webkit-transform: translate(-50%, -50%) rotate(90deg);
          transform: translate(-50%, -50%) rotate(90deg);
}
.msg .msg-careers .msg-career .msg-more .icon.active::before {
  -webkit-transform: translate(-50%, -50%) rotate(0deg);
          transform: translate(-50%, -50%) rotate(0deg);
}
.msg .msg-careers .msg-career .msg-more p {
  margin: 0;
}
.msg .msg-careers .msg-career .msg-more.active {
  height: 1px;
}
.msg .msg-careers .btn-wrapper a {
  width: 270px;
}

.shared {
  background: #F9FAFC;
  padding: 100px 0;
}
.shared .node-wrapper {
  padding: 0;
  width: 95%;
  margin-inline: auto;
}
.shared .node-wrapper .shared-blogs {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  margin-bottom: 80px;
  gap: 0 80px;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-tit {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 60px;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-tit h2 {
  font-size: 24px;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-tit .en {
  font-size: 70px;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-tit .en::after {
  margin-inline: auto;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-articles article a {
  border-bottom: 1px solid #D9D9D9;
  padding: 20px 0;
  width: 100%;
  display: block;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents {
  display: grid;
  grid-template-columns: 187px auto;
  gap: 0 30px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents .shared-thumbnail img {
  width: 100%;
  height: auto;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents .shared-info .shared-read {
  font-size: 17px;
  font-family: "Zen Old Mincho", serif;
  color: var(--blue);
  font-weight: 600;
  margin-bottom: 8px;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents .shared-info .shared-date {
  font-family: "Zen Old Mincho", serif;
  color: #8F8D8C;
  font-weight: 400;
  font-size: 17px;
  position: relative;
  padding-left: 16px;
  margin-right: 10px;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents .shared-info .shared-date::after {
  content: "";
  position: absolute;
  top: calc(50% + 2px);
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background: url(../images/icon/clock.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents .shared-info .shared-cat {
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  color: var(--blue);
  font-size: 15px;
  border: 1px solid var(--blue);
  padding: 2px 8px;
}
.shared .node-wrapper .shared-blogs .shared-column .shared-articles article:first-of-type a {
  border-top: 1px solid #D9D9D9;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-tit {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 60px;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-tit h2 {
  font-size: 24px;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-tit .en {
  font-size: 70px;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-tit .en::after {
  margin-inline: auto;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-articles article a {
  border-bottom: 1px solid #D9D9D9;
  padding: 20px 0;
  width: 100%;
  display: block;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents {
  display: grid;
  grid-template-columns: 187px auto;
  gap: 0 30px;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-thumbnail {
  width: 187px;
  height: 117px;
  overflow: clip;
  position: relative;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-thumbnail img {
  width: 100%;
  height: auto;
  position: absolute;
  top: 0;
  left: 0;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-info .shared-read {
  font-size: 17px;
  font-family: "Zen Old Mincho", serif;
  color: var(--blue);
  font-weight: 600;
  margin-bottom: 8px;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-info .shared-date {
  font-family: "Zen Old Mincho", serif;
  color: #8F8D8C;
  font-weight: 400;
  font-size: 17px;
  position: relative;
  padding-left: 16px;
  margin-right: 10px;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-info .shared-date::after {
  content: "";
  position: absolute;
  top: calc(50% + 2px);
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background: url(../images/icon/clock.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-info .shared-cat {
  font-weight: 500;
  font-family: "Noto Sans JP", sans-serif;
  color: var(--blue);
  font-size: 15px;
  border: 1px solid var(--blue);
  padding: 2px 8px;
}
.shared .node-wrapper .shared-blogs .shared-blog .shared-articles article:first-of-type a {
  border-top: 1px solid #D9D9D9;
}
.shared .node-wrapper .shared-blogs .btn-wrapper a {
  margin-top: 20px;
}
.shared .node-wrapper .shared-text .shared-tit {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 40px;
}
.shared .node-wrapper .shared-text .shared-tit h2 {
  font-size: 18px;
}
.shared .node-wrapper .shared-text .shared-tit .en {
  font-size: 60px;
}
.shared .node-wrapper .shared-text .shared-tit .en::after {
  margin-inline: auto;
}

.faq {
  padding: 100px 0 0;
}
.faq .faq-wrapper .faq-tit {
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 80px;
}
.faq .faq-wrapper .faq-tit h2 {
  font-size: 18px;
}
.faq .faq-wrapper .faq-tit .en {
  font-size: 70px;
}
.faq .faq-wrapper .faq-tit .en::after {
  margin-inline: auto;
}
.faq .faq-wrapper .smnFaq {
  margin-top: 0;
  margin-bottom: 0;
}
.faq .faq-wrapper .btn-wrapper a {
  width: 356px;
  margin-top: 58px;
}

.access .smnAc__white {
  margin-inline: auto;
  padding-bottom: 74px;
}
.access .smnAc__meta {
  line-height: 1.2;
}

.t-newsSpBtn {
  display: none;
}

.no_scroll .casestudy {
  z-index: unset;
}

@media (min-width: 1921px) {
  .casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap {
    width: 1080px;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .slick-list .slick-track .slick-slide {
    width: 341px;
    margin-left: 12px;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .smnCuBox .smnCurrent {
    right: 12px;
  }
}
@media screen and (min-width: 1500px) {
  .mv .swiper .swiper-wrapper .swiper-slide .img {
    width: 100%;
    height: auto;
    max-height: unset;
  }
}
@media screen and (min-width: 769px) and (max-width: 1499px) {
  .mv .swiper .swiper-wrapper .swiper-slide .img {
    width: 100%;
    height: 36.71875vw;
    position: relative;
    overflow: hidden;
  }
  .mv .swiper .swiper-wrapper .swiper-slide .img picture, .mv .swiper .swiper-wrapper .swiper-slide .img img {
    display: block;
    position: absolute;
    top: 0;
    width: calc(100% + 130px) !important;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
    left: 50%;
    -webkit-transform: translateX(-52%);
            transform: translateX(-52%);
    aspect-ratio: auto;
  }
}
@media screen and (min-width: 769px) {
  .features .node-wrapper .features-detail {
    display: grid;
    -webkit-box-align: start;
    -webkit-align-items: start;
        -ms-flex-align: start;
            align-items: start;
    grid-template-rows: 185px 1fr;
    grid-template-areas: "copy features" "text features";
  }
  .features .node-wrapper .features-detail .features-copy {
    grid-area: copy;
  }
  .features .node-wrapper .features-detail .features-text {
    grid-area: text;
    margin-bottom: 0;
  }
  .features .node-wrapper .features-detail .features-figure {
    grid-area: features;
  }
  .smnAc {
    margin-top: 140px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1499px) {
  .reason .reason-wrapper {
    max-width: 77.0833333333vw;
    padding-inline: 5.5555555556vw;
  }
  .reason .reason-wrapper .reason-tabs {
    margin-bottom: 4.1666666667vw;
    gap: 12px;
  }
  .reason .reason-wrapper .reason-tabs li .reason-tab {
    font-size: 1.0416666667vw;
    padding: 0.95vw 0;
    border: 2px solid #fff;
  }
  .reason .reason-wrapper .reason-tabs li .reason-tab:before {
    left: -0.1vw;
    top: -0.18vw;
    padding: 0.12vw 0.12vw;
    font-size: 1.25vw;
  }
  .reason .reason-wrapper .reason-tabs li .reason-tab.is-active {
    border: 2px solid var(--blue);
  }
  .reason .reason-wrapper .reason-tabs:not(.reset) > li {
    margin: 0;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide {
    -webkit-transition: -webkit-transform 600ms ease-out;
    transition: -webkit-transform 600ms ease-out;
    transition: transform 600ms ease-out;
    transition: transform 600ms ease-out, -webkit-transform 600ms ease-out;
    height: auto;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents {
    padding: 4.1666666667vw 2.3611111111vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents h3 {
    font-size: 1.9444444444vw;
    gap: 0 1.6666666667vw;
    margin-bottom: 2.2222222222vw;
    border-bottom: 1px solid var(--blue);
    padding-bottom: 0.8333333333vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents h3::before {
    font-size: 3.6805555556vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents p {
    font-size: 1.25vw;
    line-height: 2.3611111111vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper:not(.reset) > li {
    margin: 0;
  }
  .reason .reason-wrapper .reason-swiper .swiper-slide-prev,
  .reason .reason-wrapper .reason-swiper .swiper-slide-next {
    -webkit-transform: scale(0.85);
            transform: scale(0.85);
  }
  .reason .reason-wrapper .reason-swiper {
    /* 左右のスライド */
  }
  .reason .reason-wrapper .reason-swiper .swiper-slide-active {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .reason .reason-wrapper .reason-swiper .swiper-pagination {
    display: none;
  }
  .reason .reason-wrapper .reason-swiper .swiper-button-prev {
    left: -3.5vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-button-prev::after {
    display: none;
  }
  .reason .reason-wrapper .reason-swiper .swiper-button-next {
    right: -3.5vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-button-next::after {
    display: none;
  }
}
@media screen and (min-width: 1921px) {
  .program .program-wrapper {
    position: relative;
  }
  .program .program-wrapper .program-outline .program-img {
    width: 768px;
    right: -8vw;
    top: -120px;
  }
}
@media screen and (max-width: 1023px) {
  .shared .shared-wrapper .shared-blogs {
    grid-template-columns: repeat(1, 1fr);
    gap: 16vw 0;
  }
}
@media screen and (min-width: 951px) {
  .msg-careers {
    padding: 0 !important;
    width: 95%;
  }
  .msg-careers .msg-career {
    -webkit-box-ordinal-group: 4;
    -webkit-order: 3;
        -ms-flex-order: 3;
            order: 3;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 0.75fr 1fr;
    -webkit-column-gap: 36px;
       -moz-column-gap: 36px;
            column-gap: 36px;
    grid-template-areas: "quali lit" "lecture lit";
  }
  .msg-careers .msg-career .msg-list:nth-of-type(1) {
    grid-area: quali;
  }
  .msg-careers .msg-career .msg-list:nth-of-type(2) {
    grid-area: lecture;
  }
  .msg-careers .msg-career .msg-list:nth-of-type(3) {
    grid-area: lit;
  }
  .msg-careers .btn-wrapper a {
    width: 270px;
  }
}
@media screen and (max-width: 950px) {
  .msg {
    padding: 23.2vw 0 16vw;
  }
  .msg .msg-wrapper {
    grid-template-columns: repeat(1, 1fr);
    gap: 16.5333333333vw 0;
    padding: 0 5.3333333333vw;
    width: 100%;
    margin-bottom: 16vw;
  }
  .msg .msg-wrapper .msg-contents {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    margin-top: 16.5333333333vw;
  }
  .msg .msg-wrapper .msg-contents .msg-tit {
    margin-bottom: 10.6666666667vw;
    font-size: 13.3333333333vw;
  }
  .msg .msg-wrapper .msg-contents .msg-copy {
    font-size: 6.4vw;
    margin-bottom: 6.9333333333vw;
  }
  .msg .msg-wrapper .msg-contents .msg-txt {
    font-size: 4.2666666667vw;
    line-height: 2;
    margin-bottom: 5.3333333333vw;
  }
  .msg .msg-wrapper .msg-contents .msg-name {
    font-size: 3.7333333333vw;
    gap: 0 6.4vw;
  }
  .msg .msg-wrapper .msg-contents .msg-name span {
    font-size: 5.8666666667vw;
  }
  .msg .msg-wrapper .msg-img {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    position: relative;
    width: 56.2666666667vw;
    margin-left: -5.3333333333vw;
  }
  .msg .msg-wrapper .msg-img::after {
    font-size: 16vw;
    left: auto;
    right: -41.3333333333vw;
    top: -12vw;
    white-space: nowrap;
  }
  .msg .msg-wrapper .msg-pic {
    width: 34.6666666667vw;
    position: absolute;
    top: 70vw;
    right: 0;
  }
  .msg .msg-careers {
    padding-inline: 5.3333333333vw;
  }
  .msg .msg-careers .msg-career {
    background: #F9FAFC;
    padding: 3.2vw 3.2vw 10.6666666667vw;
    display: grid;
    grid-template-columns: auto;
    row-gap: 10.6666666667vw;
    height: 54.4vw;
  }
  .msg .msg-careers .msg-career .msg-list h4 {
    font-family: "Zen Old Mincho", serif;
    color: var(--blue);
    font-weight: 600;
    font-size: 5.3333333333vw;
    border-bottom: 0.2666666667vw solid var(--blue);
    margin-bottom: 2.6666666667vw;
    padding-bottom: 2.6666666667vw;
  }
  .msg .msg-careers .msg-career .msg-list .msg-list-body ul li {
    font-size: 3.7333333333vw;
  }
  .msg .msg-careers .msg-career .msg-more {
    height: 32vw;
  }
  .msg .msg-careers .msg-career .msg-more .txt {
    bottom: 3.7333333333vw;
    right: 3.2vw;
  }
  .msg .msg-careers .msg-career .msg-more .txt p {
    font-size: 3.2vw;
  }
  .msg .msg-careers .msg-career .msg-more .icon {
    left: -7.4666666667vw;
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .msg .msg-careers .msg-career .msg-more .icon::after {
    width: 3.2vw;
    height: 0.5333333333vw;
  }
  .msg .msg-careers .msg-career .msg-more .icon::before {
    width: 3.2vw;
    height: 0.5333333333vw;
  }
  .msg .msg-careers .msg-career .msg-more.active {
    height: 1px;
  }
  .msg .msg-careers .msg-career .msg-more.active .txt {
    bottom: 2.6666666667vw;
  }
  .msg .msg-careers .btn-wrapper a {
    width: 62.6666666667vw;
    margin-top: 10.6666666667vw;
  }
}
@media (max-width: 768px) {
  .t-mvNote {
    height: 39px;
    font-size: 12px;
  }
  .t-mvNote p span {
    font-size: 20px;
  }
  .t-mvNote p::after {
    right: -30px;
    width: 22px;
    height: 22px;
  }
  .eyecatch-sp {
    position: absolute;
    bottom: 36px;
    right: 20px;
    margin: 0;
    z-index: 5;
  }
  .t-bnrs {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    grid-template-columns: repeat(1, 1fr);
    gap: 3.2vw;
  }
  .t-bnrs a:nth-child(3) {
    grid-column: auto;
    justify-self: center;
  }
  .t-bnr {
    width: 100%;
  }
  .concept__img {
    width: 100%;
  }
  .t-bnrSlids {
    margin-top: 16vw;
    margin-bottom: 12.2666666667vw;
  }
  .t-bnrSlids .t-bnrSlid {
    width: 90vw;
    margin: 0 1.3333333333vw;
  }
  .t-bnrSlids .t-bnrSlids__wrap .t-bnrSlid {
    width: 335px;
    margin: 0 5px;
  }
  .t-bnrSlids .t-bnrSlids__wrap .slick-prev {
    width: 40px;
    height: 40px;
    left: -77px;
  }
  .t-bnrSlids .t-bnrSlids__wrap .slick-next {
    width: 40px;
    height: 40px;
    right: -77px;
  }
  .t-bnrSlids .t-bnrSlids__wrap .slick-dots {
    gap: 8px;
    width: 160px;
    margin: 40px auto 0;
    padding-left: 0;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .t-bnrSlids .t-bnrSlids__wrap .slick-dots li {
    width: 20px;
    height: 3px;
  }
  .t-newsSpBtn {
    position: relative;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 150px;
    height: 40px;
    margin: 20px auto 40px;
    border: 1px solid var(--blue);
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.06em;
    color: var(--blue);
    background: #fff;
    text-decoration: none;
    -webkit-box-shadow: 4px 5px 0 0 var(--blue);
            box-shadow: 4px 5px 0 0 var(--blue);
  }
  .t-newsSpBtn::after {
    content: "";
    position: absolute;
    top: calc(50% + 2px);
    right: -12px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background: #000;
    background: url(../images/icon/arrow_btn.svg);
    background-repeat: no-repeat;
    background-size: cover;
  }
  .news {
    padding-top: 16vw !important;
    padding-bottom: 0px;
  }
  .news .p-menu__index {
    display: none;
  }
  .news .c-tit-section {
    margin-bottom: 10.6666666667vw;
  }
  .news .node-wrapper {
    grid-template-columns: auto;
    grid-template-rows: auto;
    grid-template-areas: none;
    gap: 0;
    display: block;
    padding-inline: 5.3333333333vw;
    width: 100%;
  }
  .news .news-wrapper {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    grid-area: none;
  }
  .news .news-wrapper .news-item ul li::before {
    margin-top: -10.6666666667vw;
    width: 4.8vw;
    height: 4.8vw;
    margin-right: 0.5333333333vw;
    top: 21vw;
  }
  .news .news-wrapper .news-item ul li a {
    padding-bottom: 8.5333333333vw;
  }
  .news .news-wrapper .news-item ul li a .area {
    margin-bottom: 2.6666666667vw;
  }
  .news .news-wrapper .news-item ul li a .date {
    font-size: 4.2666666667vw;
  }
  .news .news-wrapper .news-item ul li a .cat {
    font-size: 4vw;
    padding: 0.001vw 1.0666666667vw;
  }
  .news .news-wrapper .news-item ul li a .text {
    font-size: 4.2666666667vw;
    width: 90%;
  }
  .news .btn-wrapper {
    grid-area: none;
  }
  .news .btn-wrapper a {
    margin-inline: auto;
    margin-top: 10.6666666667vw;
  }
  .belief {
    background: url(../images/home/belief_sp.jpg) no-repeat top center/cover;
    padding: 16vw 0;
  }
  .belief .node-wrapper {
    padding-inline: 5.3333333333vw;
    width: 100%;
  }
  .belief .node-wrapper .belief-tit {
    margin-bottom: 10.6666666667vw;
  }
  .belief .node-wrapper .belief-copy {
    grid-template-columns: repeat(1, 1fr);
    margin-bottom: 10.6666666667vw;
  }
  .belief .node-wrapper .belief-copy .belief-copytit {
    font-size: 6.4vw;
    margin-bottom: 5.3333333333vw;
  }
  .belief .node-wrapper .belief-copy .belief-copytit::after {
    content: "";
    position: relative;
    display: block;
    top: auto;
    right: auto;
    width: 100%;
    height: 0.2666666667vw;
    margin-top: 5.3333333333vw;
  }
  .belief .node-wrapper .belief-copy p {
    line-height: 1.8;
    font-size: 5.3333333333vw;
  }
  .belief .node-wrapper .belief-copy p span:nth-of-type(2) {
    text-indent: -3vw;
  }
  .belief .node-wrapper .belief-detail {
    grid-template-columns: repeat(1, 1fr);
  }
  .belief .node-wrapper .belief-detail .belief-img {
    margin-bottom: 10.6666666667vw;
    padding-inline: 10.6666666667vw;
  }
  .belief .node-wrapper .belief-detail .belief-text {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    font-size: 4.2666666667vw;
    line-height: 1.8;
    white-space: normal;
  }
  .promise {
    background: url(../images/home/promise_bg_sp.jpg) no-repeat top center/cover;
    height: 48.2666666667vw;
    padding-top: 48vw;
    padding-inline: 5.3333333333vw;
  }
  .promise .node-wrapper {
    padding: 10.6666666667vw 5.3333333333vw;
    width: 100%;
  }
  .promise .node-wrapper .promise-tit {
    margin-bottom: 5.3333333333vw;
  }
  .promise .node-wrapper .promise-tit h2 {
    font-size: 4.5333333333vw;
  }
  .promise .node-wrapper .promise-tit .en {
    font-size: 9.6vw;
  }
  .promise .node-wrapper .promise-team {
    grid-template-columns: repeat(1, 1fr);
    gap: 2.6666666667vw 0;
  }
  .promise .node-wrapper .promise-team li {
    padding-bottom: 4.2666666667vw;
    padding-inline: 6.1333333333vw;
    grid-template-columns: repeat(1, 9.6vw 1fr);
  }
  .promise .node-wrapper .promise-team li h3 {
    font-size: 4.2666666667vw;
  }
  .features {
    padding: 156.8vw 0 16vw;
    background: url(../images/home/features_bg_sp.jpg) no-repeat top center/cover;
  }
  .features .node-wrapper {
    padding-inline: 5.3333333333vw;
    width: 100%;
  }
  .features .node-wrapper .features-tit {
    margin-bottom: 11.2vw;
  }
  .features .node-wrapper .features-tit h2 {
    text-align: center;
  }
  .features .node-wrapper .features-tit .en {
    text-align: center;
  }
  .features .node-wrapper .features-tit .en::after {
    margin-inline: auto;
  }
  .features .node-wrapper .features-detail {
    margin-bottom: 16vw;
  }
  .features .node-wrapper .features-detail .features-copy {
    font-size: 6.4vw;
    margin-bottom: 8vw;
    text-align: center;
  }
  .features .node-wrapper .features-detail .features-text {
    font-size: 4.2666666667vw;
    line-height: 8.5333333333vw;
    text-align: center;
  }
  .features .node-wrapper .features-detail .features-text span:nth-of-type(2) {
    margin-block: 6.4vw;
  }
  .features .node-wrapper .features-detail .features-figure {
    margin-bottom: 8vw;
  }
  .features .node-wrapper .features-difference .features-tit {
    margin-bottom: 8.5333333333vw;
  }
  .features .node-wrapper .features-difference .features-tit h3 {
    font-size: 4.5333333333vw;
  }
  .features .node-wrapper .features-difference .features-tit .en {
    font-size: 9.6vw;
  }
  .features .node-wrapper .features-difference .features-contents {
    padding: 0;
    grid-template-columns: repeat(1, 1fr);
    gap: 5.3333333333vw 0;
  }
  .features .node-wrapper .features-difference .features-contents .features-free h3 {
    padding: 5.3333333333vw;
    font-size: 6.4vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-free h3 .features-position {
    border: 0.2666666667vw solid #F2E100;
    font-size: 4.2666666667vw;
    margin-right: 2.6666666667vw;
    padding: 0 0.8vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-free h3 .features-order {
    font-size: 4.5333333333vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-free .features-list {
    border-right: 1.0666666667vw solid var(--blue);
    border-left: 1.0666666667vw solid var(--blue);
    border-bottom: 1.0666666667vw solid var(--blue);
    padding: 7.2vw 5.3333333333vw 9.3333333333vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-free .features-list .features-inner {
    grid-template-columns: 18.4vw 55.7333333333vw;
    gap: 0 4vw;
    padding-bottom: 7.4666666667vw;
    margin-bottom: 7.4666666667vw;
    border-bottom: 0.2666666667vw solid #D9D9D9;
  }
  .features .node-wrapper .features-difference .features-contents .features-free .features-list .features-inner dd p:nth-of-type(1) {
    margin-bottom: 2.1333333333vw;
    font-size: 5.3333333333vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-free .features-list .features-inner dd p:nth-of-type(2) {
    font-size: 4.2666666667vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-guarantee h3 {
    padding: 5.3333333333vw;
    font-size: 6.4vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-guarantee h3 .features-position {
    font-size: 4.2666666667vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-guarantee h3 .features-order {
    font-size: 4vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-guarantee .features-list {
    background: #fff;
    border-right: 1.0666666667vw solid #678AA5;
    border-left: 1.0666666667vw solid #678AA5;
    border-bottom: 1.0666666667vw solid #678AA5;
    padding: 6.9333333333vw 4.5333333333vw 9.3333333333vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-guarantee .features-list .features-inner {
    grid-template-columns: 18.4vw 55.7333333333vw;
    gap: 0 4vw;
    padding-bottom: 7.4666666667vw;
    margin-bottom: 6.4vw;
    border-bottom: 0.2666666667vw solid #D9D9D9;
  }
  .features .node-wrapper .features-difference .features-contents .features-guarantee .features-list .features-inner dd p:nth-of-type(1) {
    margin-bottom: 2.1333333333vw;
    font-size: 5.3333333333vw;
  }
  .features .node-wrapper .features-difference .features-contents .features-guarantee .features-list .features-inner dd p:nth-of-type(2) {
    font-size: 4.2666666667vw;
  }
  .features .node-wrapper .btn-wrapper a {
    margin: 8.5333333333vw auto 0;
    width: 78.1333333333vw;
    -webkit-padding-end: 6vw;
            padding-inline-end: 6vw;
  }
  .program {
    position: relative;
  }
  .program .program-wrapper {
    padding-inline: 1.5625vw;
    width: 100%;
  }
  .program .program-wrapper .program-outline {
    margin-bottom: 15.625vw;
  }
  .program .program-wrapper .program-outline .program-tit {
    margin-bottom: 4.6875vw;
  }
  .program .program-wrapper .program-outline .program-read {
    font-size: 3.59375vw;
  }
  .program .program-wrapper .program-outline .program-txt {
    font-size: 1.5625vw;
    margin-top: 4.6875vw;
  }
  .program .program-wrapper .program-step .program-tit {
    margin-bottom: 10.6666666667vw;
    font-size: 4.8vw;
  }
  .program .program-wrapper .program-step .program-tit .en {
    font-size: 9.0666666667vw;
  }
  .program .program-wrapper .program-step .program-tit .en span {
    font-size: 16vw;
    line-height: 0.5;
  }
  .program .program-wrapper .program-step .program-copy {
    font-size: 4.2666666667vw;
    margin-bottom: 8.5333333333vw;
    text-align: left;
    word-break: keep-all;
  }
  .program .program-wrapper .program-step .program-area .program-group {
    display: grid;
    grid-template-columns: auto;
    gap: 0;
    margin-bottom: 3.2vw;
    position: -webkit-sticky;
    position: sticky;
    top: 22vw;
    z-index: 2;
  }
  .program .program-wrapper .program-step .program-area .program-group li {
    grid-row: 1;
    grid-column: 1;
    color: #fff;
    font-family: "Zen Old Mincho", serif;
    font-weight: 600;
    text-align: center;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.3s, visibility 0.3s;
    transition: opacity 0.3s, visibility 0.3s;
    pointer-events: none;
  }
  .program .program-wrapper .program-step .program-area .program-group li.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .program .program-wrapper .program-step .program-area .program-group li dl {
    background: var(--blue);
    padding: 4.5333333333vw 0 1.6vw;
  }
  .program .program-wrapper .program-step .program-area .program-group li dl dt {
    font-size: 3.7333333333vw;
    background: #fff;
    color: var(--blue);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin-inline: auto;
    border: 0.2666666667vw solid var(--blue);
    border-radius: 13.3333333333vw;
    padding: 1.3333333333vw 4vw;
    margin-top: -8vw;
  }
  .program .program-wrapper .program-step .program-area .program-group li dl dd {
    font-size: 4vw;
  }
  .program .program-wrapper .program-step .program-area .program-group li dl dd span {
    font-size: 3.7333333333vw;
  }
  .program .program-wrapper .program-step .program-area .program-group li dl dd span::after {
    content: "";
    display: inline-block;
    background: #678AA5;
    width: 0.2666666667vw;
    height: 2.6666666667vw;
    margin: 0 1.6vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels {
    border: none;
    padding: 0;
    margin-bottom: 5.3333333333vw;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 5.3333333333vw 0;
    background: none;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel {
    display: grid;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    grid-template-columns: auto;
    gap: 8vw 0;
    border: 1.0666666667vw solid var(--blue);
    padding: 5.3333333333vw 5.3333333333vw 6.9333333333vw;
    background: #fff;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-img picture {
    height: -webkit-fit-content;
    height: -moz-fit-content;
    height: fit-content;
    display: block;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-count {
    font-family: "Zen Old Mincho", serif;
    font-weight: 600;
    font-size: 3.7333333333vw;
    padding: 0.2666666667vw 0.8vw;
    border: 0.2666666667vw solid var(--blue);
    display: inline-block;
    margin-bottom: 2.1333333333vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead {
    margin-bottom: 4.2666666667vw;
    padding-bottom: 3.7333333333vw;
    grid-template-columns: auto;
    border-bottom: 0.2666666667vw solid var(--blue);
    gap: 0 2.6666666667vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead h4 {
    font-size: 5.8666666667vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead p {
    font-size: 3.7333333333vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead p span {
    gap: 0 2.6666666667vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead p span::before {
    content: "";
    width: 0.2666666667vw;
    height: 4.2666666667vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-txtRead {
    margin-bottom: 4.2666666667vw;
    font-size: 4.8vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-txt {
    margin-bottom: 8.5333333333vw;
    font-size: 4.2666666667vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-txt span {
    display: block;
    margin-top: 4.2666666667vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list {
    border: 0.2666666667vw solid #F2E100;
    padding: 3.7333333333vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dt {
    font-size: 4.8vw;
    margin-bottom: 2.6666666667vw;
    border-bottom: 0.2666666667vw solid #F2E100;
    position: relative;
    padding: 0.5333333333vw 0 1.3333333333vw 3.2vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dt::before {
    content: "";
    width: 0.5333333333vw;
    height: 8vw;
    top: 0.8vw;
    left: 0;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dd.program-column {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 1.3333333333vw 0;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dd ul {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 1.3333333333vw 0;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dd ul li {
    font-size: 4.2666666667vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-list dd ul li::before {
    content: "・";
  }
  .program .program-wrapper .program-point {
    margin-bottom: 10.6666666667vw;
  }
  .program .program-wrapper .program-point li {
    font-size: 4.2666666667vw;
  }
  .program .program-wrapper .btn-wrapper a {
    width: 78.1333333333vw;
    margin-bottom: 16vw;
    font-size: 4.2666666667vw;
  }
  .program .program-wrapper .program-cta h3 {
    font-size: 5.8666666667vw;
    margin-bottom: 5.3333333333vw;
    white-space: nowrap;
  }
  .program .program-wrapper .program-cta p {
    font-size: 4.2666666667vw;
  }
  .program .program-wrapper .program-cta p span {
    display: block;
    margin-bottom: 6.4vw;
  }
  .program .program-wrapper .program-cta p span:last-of-type {
    margin-bottom: 0;
  }
  .program .program-wrapper .program-cv {
    grid-template-columns: auto;
    gap: 5.3333333333vw 0;
  }
  .program .program-wrapper .program-cv .program-price, .program .program-wrapper .program-cv .program-web {
    padding: 5.3333333333vw 3.2vw 5.3333333333vw 3.2vw;
    -webkit-box-shadow: 1.0666666667vw 1.0666666667vw 0 0 var(--blue);
            box-shadow: 1.0666666667vw 1.0666666667vw 0 0 var(--blue);
    width: 88vw;
  }
  .program .program-wrapper .program-cv .program-price .txt, .program .program-wrapper .program-cv .program-web .txt {
    font-size: 6.4vw;
    white-space: nowrap;
  }
  .program .program-wrapper .program-cv .program-price .txt {
    font-size: 6.4vw;
  }
  .program .program-wrapper .program-cv .program-price .sub {
    font-size: 3.7333333333vw;
  }
  .program .program-wrapper .program-cv .program-web .txt span {
    font-size: 6.4vw;
    margin-left: -0.9vw;
  }
  .program .program-wrapper .program-cv .program-web .sub span {
    display: inline-block;
    margin-bottom: 5.3333333333vw;
    font-size: 3.7333333333vw;
  }
  .navs {
    background: var(--blue);
    padding: 0;
  }
  .navs .node-wrapper {
    width: 100%;
    margin-inline: auto;
    padding: 0;
  }
  .navs .node-wrapper ul {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
  }
  .navs .node-wrapper ul li {
    border-left: 0.2666666667vw solid #3A81B7;
  }
  .navs .node-wrapper ul li:nth-of-type(-n + 6) {
    border-left: 0;
    border-bottom: 0.2666666667vw solid #3A81B7;
  }
  .navs .node-wrapper ul li:nth-of-type(n + 4):nth-of-type(-n + 6) {
    border-bottom: 0;
  }
  .navs .node-wrapper ul li a {
    padding: 5.3333333333vw 0;
    gap: 6px 0;
  }
  .navs .node-wrapper ul li a .nav-img {
    width: 10.1333333333vw;
  }
  .navs .node-wrapper ul li a .nav-txt {
    font-family: "Zen Old Mincho", serif;
    font-size: 3.7333333333vw;
  }
  .program {
    position: relative;
    padding: 16vw 0;
  }
  .program .program-wrapper {
    padding: 0 5.3333333333vw;
  }
  .program .program-wrapper .program-outline {
    margin-bottom: 16vw;
  }
  .program .program-wrapper .program-outline .program-tit {
    margin-bottom: 8.5333333333vw;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .program .program-wrapper .program-outline .program-tit .en::after {
    margin-inline: auto;
  }
  .program .program-wrapper .program-outline .program-img {
    position: relative;
    width: 68vw;
    margin-left: 29vw;
  }
  .program .program-wrapper .program-outline .program-img::before {
    font-size: 12.2666666667vw;
    right: 37vw;
    bottom: -8vw;
  }
  .program .program-wrapper .program-outline .program-img::after {
    font-size: 12.2666666667vw;
    right: 11vw;
    bottom: -18vw;
  }
  .program .program-wrapper .program-outline .program-read {
    font-size: 6.4vw;
    margin-top: 23.4666666667vw;
  }
  .program .program-wrapper .program-outline .program-txt {
    font-size: 4.2666666667vw;
  }
  .program .program-wrapper .program-outline .program-txt span {
    display: block;
  }
  .program .program-wrapper .program-outline .program-txt span:last-of-type {
    margin-top: 4.2666666667vw;
  }
  .menu {
    padding-top: 16vw;
    padding-bottom: 16vw !important;
  }
  .menu .node-wrapper {
    padding-inline: 5.3333333333vw;
    width: 100%;
  }
  .menu .node-wrapper .menu-tit {
    margin-bottom: 10.6666666667vw;
  }
  .menu .node-wrapper .menu-tit h2 {
    font-size: 4.5333333333vw;
  }
  .menu .node-wrapper .menu-tit .en {
    font-size: 13.3333333333vw;
  }
  .menu .node-wrapper .p-menu__wrap .btn-wrapper a {
    width: 67.4666666667vw;
    margin-top: 10.6666666667vw;
  }
  .casestudy {
    padding: 16vw 0 10.6666666667vw;
  }
  .casestudy::before {
    content: "";
    background: url(../images/home/casestudy_bg_sp_pic1.jpg) no-repeat 27% 50%/cover;
    width: 100%;
    height: 74.6666666667vw;
    position: absolute;
    top: 0;
    left: 0;
  }
  .casestudy .casestudy-wrapper .casestudy-tit {
    margin-bottom: 10.6666666667vw;
  }
  .casestudy .casestudy-wrapper .casestudy-tit h2 {
    font-size: 4.5333333333vw;
  }
  .casestudy .casestudy-wrapper .casestudy-tit .en {
    font-size: 13.3333333333vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture {
    padding: 10.6666666667vw 0;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .casestudy-copy {
    padding: 0 4.2666666667vw;
    margin-bottom: 10.6666666667vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .casestudy-copy .casestudy-copytit {
    font-size: 6.1333333333vw;
    text-align: center;
    margin-bottom: 6.4vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .casestudy-copy p {
    font-size: 3.7333333333vw;
    text-align: center;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .casestudy-tab {
    padding: 0 5.8666666667vw;
    margin-bottom: 5.3333333333vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .casestudy-tab h3 .casestudy-tab__btn {
    font-size: 3.7333333333vw;
    padding: 1.0666666667vw 1.6vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap {
    margin-top: 0;
    width: 86.6666666667vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .slick-list .slick-track {
    padding-bottom: 5.3333333333vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .slick-list .slick-track .slick-slide {
    width: 86.4vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .smnCuBox {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -webkit-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .smnCuBox .btn-wrapper {
    position: static;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .smnCuBox .btn-wrapper a {
    width: 67.2vw;
    height: 12.2666666667vw;
    margin-inline: auto;
    -webkit-padding-end: 4vw;
            padding-inline-end: 4vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .menu-boxWrap .smnCuBox .smnCurrent {
    position: static;
    margin-bottom: 5.3333333333vw;
  }
  .reason {
    background: url(../images/home/reason_bg_sp.jpg) no-repeat top center/cover;
    padding: 16vw 0;
  }
  .reason .reason-wrapper {
    width: 100%;
    max-width: 100%;
    padding-inline: 5.3333333333vw;
  }
  .reason .reason-wrapper .reason-tit {
    margin-bottom: 10.6666666667vw;
  }
  .reason .reason-wrapper .reason-tit h2 {
    font-size: 4.5333333333vw;
  }
  .reason .reason-wrapper .reason-tit .en {
    font-size: 13.3333333333vw;
  }
  .reason .reason-wrapper .reason-tit .en::after {
    margin-inline: auto;
  }
  .reason .reason-wrapper .reason-tabs {
    margin-bottom: 8vw;
    width: 100%;
    margin-inline: auto;
    grid-template-columns: repeat(2, 1fr);
    gap: 2.1333333333vw;
    padding: 0;
  }
  .reason .reason-wrapper .reason-tabs li .reason-tab:before {
    font-size: 3.7333333333vw;
    top: 5vw;
    left: -0.4vw;
    padding: 0.2666666667vw 0.5333333333vw;
  }
  .reason .reason-wrapper .reason-tabs li .reason-tab {
    text-align: left;
    font-size: 3.7333333333vw;
    padding: 2.6666666667vw 4vw 2.6666666667vw 8vw;
    border: 0.5333333333vw solid #fff;
  }
  .reason .reason-wrapper .reason-tabs li .reason-tab.is-active {
    border: 0.5333333333vw solid var(--blue);
  }
  .reason .reason-wrapper .reason-tabs:not(.reset) > li {
    margin: 0;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper {
    -webkit-box-align: stretch;
    -webkit-align-items: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide {
    height: auto;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-wrap {
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    grid-template-columns: auto;
    height: 100%;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents {
    -webkit-box-ordinal-group: 3;
    -webkit-order: 2;
        -ms-flex-order: 2;
            order: 2;
    padding: 8vw 6.6666666667vw 12.8vw;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: start;
    -webkit-justify-content: start;
        -ms-flex-pack: start;
            justify-content: start;
    height: 100%;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents h3 {
    font-size: 4.8vw;
    line-height: 1;
    border-bottom: 0.2666666667vw solid var(--blue);
    padding-bottom: 7.2vw;
    margin-bottom: 4.8vw;
    line-height: 6.9333333333vw;
    gap: 0 3.7333333333vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents h3::before {
    font-size: 8.5333333333vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-contents p {
    font-size: 4vw;
    line-height: 6.4vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-wrapper .swiper-slide .reason-img {
    -webkit-box-ordinal-group: 2;
    -webkit-order: 1;
        -ms-flex-order: 1;
            order: 1;
    height: 41.3333333333vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-slide-prev,
  .reason .reason-wrapper .reason-swiper .swiper-slide-next {
    -webkit-transform: scale(0.95);
            transform: scale(0.95);
  }
  .reason .reason-wrapper .reason-swiper {
    /* 左右のスライド */
  }
  .reason .reason-wrapper .reason-swiper .swiper-slide-active {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
  .reason .reason-wrapper .reason-swiper .swiper-pagination {
    display: block;
    top: auto;
    bottom: auto;
    position: static;
    gap: 0 5.3333333333vw;
    margin-top: 9.6vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-pagination .swiper-pagination-bullet {
    width: 5.3333333333vw;
    border-radius: 0;
    height: 0.8vw;
    background: #C9C8C7;
    opacity: 1;
  }
  .reason .reason-wrapper .reason-swiper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: var(--blue);
  }
  .reason .reason-wrapper .reason-swiper .swiper-button-prev {
    position: relative;
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    top: auto;
    left: auto;
    -webkit-transform: none;
            transform: none;
    margin-top: -7vw;
  }
  .reason .reason-wrapper .reason-swiper .swiper-button-next {
    position: relative;
    right: auto;
    top: auto;
    width: 10.6666666667vw;
    height: 10.6666666667vw;
    margin-left: auto;
    margin-top: -10.15vw;
    -webkit-transform: none;
            transform: none;
  }
  .shared {
    padding: 16vw 0;
  }
  .shared .shared-wrapper {
    width: 100%;
    padding-inline: 5.3333333333vw;
  }
  .shared .shared-wrapper .shared-blogs {
    margin-bottom: 16vw;
    grid-template-columns: repeat(1, 1fr);
    gap: 16vw 0;
  }
  .shared .shared-wrapper .shared-blogs .shared-column .shared-tit {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 10.6666666667vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-column .shared-tit h2 {
    font-size: 4.5333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-column .shared-tit .en {
    font-size: 13.3333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-column .shared-articles article a {
    border-bottom: 0.2666666667vw solid #D9D9D9;
    padding: 8vw 0 5.8666666667vw;
    text-decoration: none;
  }
  .shared .shared-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents {
    display: grid;
    grid-template-columns: 32vw auto;
    gap: 0 3.7333333333vw;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .shared .shared-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents .shared-info .shared-read {
    font-size: 4.2666666667vw;
    margin-bottom: 4.5333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents .shared-info .shared-date {
    font-size: 3.7333333333vw;
    padding-left: 4.2666666667vw;
    display: block;
    margin-right: 0;
    margin-bottom: 2.6666666667vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents .shared-info .shared-date::after {
    top: calc(50% + 1px);
    width: 2.9333333333vw;
    height: 2.9333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-column .shared-articles article a .shared-contents .shared-info .shared-cat {
    font-size: 3.4666666667vw;
    border: 0.2666666667vw solid var(--blue);
    padding: 0.5333333333vw 2.1333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-column .shared-articles article:first-of-type a {
    border-top: 0.2666666667vw solid #D9D9D9;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-tit {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 10.6666666667vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-tit h2 {
    font-size: 4.5333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-tit .en {
    font-size: 13.3333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-tit .en::after {
    margin-inline: auto;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-articles article a {
    border-bottom: 0.2666666667vw solid #D9D9D9;
    padding: 8vw 0 5.8666666667vw;
    width: 100%;
    display: block;
    text-decoration: none;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents {
    grid-template-columns: 32vw auto;
    gap: 0 3.7333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-thumbnail {
    width: 32vw;
    height: 20vw;
    overflow: clip;
    position: relative;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-thumbnail img {
    width: 100%;
    height: auto;
    position: absolute;
    top: 0;
    left: 0;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-info .shared-read {
    font-size: 4.2666666667vw;
    margin-bottom: 2.1333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-info .shared-date {
    font-size: 3.7333333333vw;
    padding-left: 4.2666666667vw;
    display: block;
    margin-right: 0;
    margin-bottom: 2.6666666667vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-info .shared-date::after {
    top: calc(50% + 1px);
    width: 2.9333333333vw;
    height: 2.9333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-articles article a .shared-contents .shared-info .shared-cat {
    font-size: 3.4666666667vw;
    border: 0.2666666667vw solid var(--blue);
    padding: 0.5333333333vw 2.1333333333vw;
  }
  .shared .shared-wrapper .shared-blogs .shared-blog .shared-articles article:first-of-type a {
    border-top: 0.2666666667vw solid #D9D9D9;
  }
  .shared .shared-wrapper .shared-blogs .btn-wrapper a {
    margin-top: 10.6666666667vw;
  }
  .shared .shared-wrapper .shared-text .shared-tit {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    margin-bottom: 10.6666666667vw;
  }
  .shared .shared-wrapper .shared-text .shared-tit h2 {
    font-size: 4.5333333333vw;
  }
  .shared .shared-wrapper .shared-text .shared-tit .en {
    font-size: 13.3333333333vw;
  }
  .shared .shared-wrapper .shared-text .shared-tit .en::after {
    margin-inline: auto;
  }
  .faq {
    padding: 16vw 0 0;
  }
  .faq .faq-wrapper {
    padding: 0 5.3333333333vw;
  }
  .faq .faq-wrapper .faq-tit {
    margin-bottom: 10.6666666667vw;
  }
  .faq .faq-wrapper .faq-tit h2 {
    font-size: 4.5333333333vw;
  }
  .faq .faq-wrapper .faq-tit .en {
    font-size: 13.3333333333vw;
  }
  .faq .faq-wrapper .smnFaq {
    margin-bottom: 9.8666666667vw;
  }
  .faq .faq-wrapper .smnFaq .inner {
    padding-inline: 0;
  }
  .faq .faq-wrapper .btn-wrapper a {
    margin-top: 0;
    width: 74.6666666667vw;
    padding-right: 6vw;
  }
  .access .smnAc__white {
    padding-bottom: 3.2vw;
  }
  .access .smnAc__meta {
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .access .smnAc__meta dt {
    padding: 0.8vw;
    font-size: 3.7333333333vw;
  }
  .access .smnAc__meta dd {
    font-size: 4vw;
  }
}
@media screen and (min-width: 769px) and (max-width: 1280px) {
  .mv .swiper .swiper-wrapper .swiper-slide .img picture, .mv .swiper .swiper-wrapper .swiper-slide .img img {
    width: calc(100% + 15vw) !important;
    -webkit-transform: translateX(-60.45vw);
            transform: translateX(-60.45vw);
    -o-object-fit: cover;
       object-fit: cover;
  }
  .mv .swiper .swiper-pagination {
    bottom: 8% !important;
  }
  .news .news-wrapper {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
  .belief .node-wrapper .belief-copytit h3 {
    font-size: 3.59375vw;
  }
  .belief .node-wrapper .belief-copytit p {
    font-size: 3.125vw;
  }
  .belief .node-wrapper .belief-copytit p span:nth-of-type(2) {
    text-indent: -0.8vw;
  }
  .belief .node-wrapper .belief-detail .belief-text {
    font-size: 1.5625vw;
  }
  .features {
    padding: 380px 0 84px;
  }
  .features .node-wrapper .features-detail {
    grid-template-rows: 14.453125vw 1fr;
  }
  .features .node-wrapper .features-detail .features-copy {
    font-size: 3.59375vw;
  }
  .features .node-wrapper .features-detail .features-text {
    font-size: 1.5625vw;
  }
  .features .node-wrapper .features-detail .features-figure {
    margin-top: -4.53125vw;
    width: 37.65625vw;
  }
  .features .node-wrapper .features-difference .features-contents {
    padding: 0 1.5625vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .casestudy-copy {
    padding: 0 5.2vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .casestudy-tab {
    padding: 0 5.2vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .smnCsWrap .smnCsBoxs--top {
    width: 100% !important;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .smnCsWrap .slick-list {
    width: 85.5vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .smnCsWrap .slick-list .smnCuBox .btn-wrapper a {
    width: 25vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .smnCsWrap .slick-list .smnCuBox .smnCurrent {
    grid-template-columns: 4.21875vw 3.90625vw 3.90625vw;
  }
  .casestudy .casestudy-wrapper .casestudy-picture .smnCsWrap .slick-list .smnCuBox .smnCurrent .smnCurrent__num span {
    font-size: 1.171875vw;
  }
  .navs .node-wrapper {
    padding: 0 1.5625vw;
  }
  .program .program-wrapper .program-outline .program-tit {
    margin-bottom: 4.6875vw;
  }
  .program .program-wrapper .program-outline .program-read {
    font-size: 3.59375vw;
  }
  .program .program-wrapper .program-outline .program-txt {
    font-size: 1.5625vw;
    margin-top: 4.6875vw;
  }
  .program .program-wrapper .btn-wrapper a {
    height: 5.2vw;
  }
  .program .program-wrapper .program-cv .program-price .txt, .program .program-wrapper .program-cv .program-web .txt {
    font-size: 2.34375vw;
  }
  .program .program-wrapper .program-cv .program-price .sub, .program .program-wrapper .program-cv .program-web .sub {
    font-size: 1.328125vw;
  }
  .program .program-wrapper .program-step .program-area .program-group li button span:first-of-type {
    font-size: 1.328125vw;
  }
  .program .program-wrapper .program-step .program-area .program-group li button span:last-of-type {
    font-size: 1.71875vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead h4 {
    font-size: 1.875vw;
  }
  .program .program-wrapper .program-step .program-area .program-panels .program-panel .program-contents .program-titRead p {
    font-size: 1.71875vw;
  }
  .menu .node-wrapper .p-menu__wrap {
    padding: 0;
  }
  .menu .node-wrapper .p-menu__wrap .btn-wrapper a {
    width: 25vw;
  }
  .msg .msg-wrapper .msg-contents .msg-copy {
    font-size: 3.59375vw;
  }
  .msg .msg-wrapper .msg-contents .msg-txt {
    font-size: 1.5625vw;
  }
}/*# sourceMappingURL=top.css.map */