@charset "utf-8";
audio:not([controls]),
[hidden] {
  display: none;
}
input,
textarea {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
input:focus,
textarea:focus {
  outline: none;
}
select {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
select::-ms-expand {
  display: none;
}
select:focus {
  outline: none;
}
button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@import url("http://fonts.googleapis.com/earlyaccess/notosansjp.css");
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-weight: inherit;
  font-style: inherit;
  vertical-align: baseline;
}
body {
  line-height: 1;
}
ol,
ul {
  list-style: none;
}
table {
  border-collapse: separate;
  border-spacing: 0;
  vertical-align: middle;
}
caption,
th,
td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}
a img {
  border: none;
}
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
main {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: block;
}
audio,
canvas,
video {
  display: inline-block;
}
* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
body {
  font-family: 'Noto Sans JP', 'Yu Gothic', '游ゴシック', YuGothic, '游ゴシック体', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
  position: relative;
  min-height: 100vh;
  width: 100%;
  line-height: 1.4;
  letter-spacing: 0.03em;
  color: #1b345d;
}
a {
  cursor: pointer;
}
a:link,
a:active {
  text-decoration: none;
}
a:hover {
  text-decoration: none;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.item--pc {
  display: none;
}
@media screen and (min-width: 835px) {
  .item--pc {
    display: block;
  }
}
.item--sp {
  display: block;
}
@media screen and (min-width: 835px) {
  .item--sp {
    display: none;
  }
}
.header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 0 12px 0 20px;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 64px;
  z-index: 999;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: background-color 0.3s, -webkit-box-shadow 0.3s, -webkit-backdrop-filter 0.3s;
  transition: background-color 0.3s, -webkit-box-shadow 0.3s, -webkit-backdrop-filter 0.3s;
  transition: background-color 0.3s, box-shadow 0.3s, backdrop-filter 0.3s;
  transition: background-color 0.3s, box-shadow 0.3s, backdrop-filter 0.3s, -webkit-box-shadow 0.3s, -webkit-backdrop-filter 0.3s;
}
.header.is-active {
  background-color: rgba(255, 255, 255, .761);
  -webkit-backdrop-filter: blur(8px);
  backdrop-filter: blur(8px);
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .24);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .24);
}
@media screen and (min-width: 835px) {
  .header {
    width: 100%;
    height: 110px;
    position: fixed;
    left: 0;
    top: 0;
    padding: 0 40px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .header.is-active {
    height: 90px;
  }
  .header.is-active .header__info,
  .header.is-active .header__pcmenu__item,
  .header.is-active .header__pcmenu__item--ac {
    color: #333;
  }
  .header.is-active .header__info a,
  .header.is-active .header__pcmenu__item a,
  .header.is-active .header__pcmenu__item--ac a {
    color: #333;
  }
  .header.is-active .header__pcmenu__item--ac span {
    border-color: transparent transparent #115096 #115096;
  }
  .header.is-active .header__logo img:nth-of-type(1) {
    display: none;
  }
  .header.is-active .header__logo img:nth-of-type(2) {
    display: block;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1140px) {
  .header {
    padding: 0;
  }
}
.header__spmenu__header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 50px;
  padding: 0 20px;
  transition: 0.3s;
}
.header__spmenu__header img {
  width: 200px;
  display: block;
}
.header__spmenu__header.is-active {
  background: #fff;
  opacity: 1;
  visibility: visible;
}
.header__pcmenu {
  display: none;
}
@media screen and (min-width: 835px) {
  .header__pcmenu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    gap: 0 25px;
    align-items: center;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    position: relative;
  }
}
@media screen and (min-width: 1024px) and (max-width: 1140px) {
  .header__pcmenu {
    gap: 12px;
  }
}
.header__pcmenu__item {
  font-size: 14px;
  font-weight: bold;
  cursor: pointer;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.header__pcmenu__item a {
  color: #1b345d;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.header__pcmenu__item:hover {
  opacity: 0.7;
}
.header__pcmenu__button {
  display: none;
}
@media screen and (min-width: 835px) {
  .header__pcmenu__button {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
  }
}
.header__pcmenu__consult {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 156px;
  height: 58px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, right top, from(#ffb133), color-stop(50%, #f78800), to(#e05e00));
  background: linear-gradient(90deg, #ffb133 0%, #f78800 50%, #e05e00 100%);
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  color: #fff;
  text-shadow: 2px 2px 2px rgba(44, 82, 145, .3);
  font-size: 14px;
  font-weight: bold;
}
.header__pcmenu__contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 156px;
  height: 58px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  color: #fff;
  text-shadow: 2px 2px 2px rgba(44, 82, 145, .3);
  font-size: 14px;
  font-weight: bold;
}
.header__logo {
  width: 150px;
  display: block;
  position: relative;
  z-index: 999;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.header__logo:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 835px) {
  .header__logo {
    width: 185px;
  }
}
.header__logo img {
  width: 100%;
  display: block;
}
.header__logo img:nth-of-type(1) {
  display: block;
}
.header__logo img:nth-of-type(2) {
  display: none;
}
.header__sp__btn {
  width: 50px;
  height: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 6px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  z-index: 999;
  position: relative;
}
@media screen and (min-width: 835px) {
  .header__sp__btn {
    display: none;
  }
}
.header__sp__btn div {
  position: relative;
  width: 26px;
  height: 18px;
}
.header__sp__btn div span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 2px;
}
.header__sp__btn div span:nth-of-type(1) {
  top: 0;
  -webkit-animation: btn07-bar01 0.6s forwards;
          animation: btn07-bar01 0.6s forwards;
}
.header__sp__btn div span:nth-of-type(2) {
  top: 8px;
  -webkit-transition: all 0.25s 0.25s;
  transition: all 0.25s 0.25s;
  opacity: 1;
}
.header__sp__btn div span:nth-of-type(3) {
  bottom: 0;
  -webkit-animation: btn07-bar03 0.6s forwards;
          animation: btn07-bar03 0.6s forwards;
}
.header__sp__btn.is-active div span:nth-of-type(1) {
  -webkit-animation: active-btn07-bar01 0.6s forwards;
          animation: active-btn07-bar01 0.6s forwards;
}
.header__sp__btn.is-active div span:nth-of-type(2) {
  opacity: 0;
}
.header__sp__btn.is-active div span:nth-of-type(3) {
  -webkit-animation: active-btn07-bar03 0.6s forwards;
          animation: active-btn07-bar03 0.6s forwards;
}
.header__spmenu {
  opacity: 0;
  visibility: hidden;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 998;
  overflow: auto;
  background: #ecf3ff;
  padding: 75px 30px 100px;
}
.header__spmenu.is-active {
  opacity: 1;
  visibility: visible;
}
.header__spmenu__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 12px;
  width: 100%;
  height: 62px;
  font-size: 15px;
  font-weight: bold;
  border-bottom: 1px solid rgba(49, 104, 174, .3);
  position: relative;
  color: #1b345d;
}
.header__spmenu__tel {
  margin-top: 20px;
}
.header__spmenu__tel > a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 6px;
}
.header__spmenu__tel > a img {
  width: 15px;
}
.header__spmenu__tel > a p {
  color: #fff;
  font-size: 26px;
  font-family: "Oswald", serif;
  letter-spacing: 2.6px;
}
.header__spmenu__tel > p {
  text-align: center;
  color: #fff;
  font-size: 11px;
  margin-top: 5px;
}
.contact__btn,
.contact__btn--w {
  background: -webkit-gradient(linear, left top, right top, from(#ad8334), to(#f5dd86));
  background: linear-gradient(90deg, #ad8334 0%, #f5dd86 100%);
  width: 255px;
  height: 57px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  margin: 0 auto;
  position: relative;
  z-index: 10;
  cursor: pointer;
  overflow: hidden;
}
.contact__btn:before,
.contact__btn--w:before {
  position: absolute;
  z-index: -1;
  -webkit-transform: rotate(-30deg);
          transform: rotate(-30deg);
  width: 100%;
  height: 0;
  border-radius: 5px;
  background-color: #2589d0;
  content: '';
  -webkit-transition: height 0.3s ease;
  transition: height 0.3s ease;
}
.contact__btn:hover,
.contact__btn--w:hover {
  background-color: transparent;
  color: #fff;
}
.contact__btn:hover:before,
.contact__btn--w:hover:before {
  height: 350%;
}
.contact__btn--w {
  background: #fff;
  color: #3168ae;
}
.header__left {
  position: relative;
}
.header__info {
  display: none;
}
@media screen and (min-width: 835px) {
  .header__info {
    display: block;
    color: #fff;
    font-size: 14px;
    margin-bottom: 4px;
    -webkit-transition: 0.3s;
    transition: 0.3s;
    position: absolute;
    left: 0;
    top: 0;
    white-space: nowrap;
  }
}
@media screen and (min-width: 835px) and (max-width: 1024px) {
  .header__info {
    font-size: 12px;
  }
}
@media screen and (min-width: 835px) {
  .header__right {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 35px;
  }
}
@media screen and (min-width: 835px) and (max-width: 1024px) {
  .header__right {
    gap: 20px;
  }
}
.header__spmenu__consult {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 315px;
  height: 58px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  border-radius: 8px;
  background: #f78800;
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  color: #fff;
  margin: 30px auto 0;
  font-size: 16px;
  font-weight: bold;
  text-shadow: 2px 2px 2px rgba(44, 82, 145, .3);
}
.header__spmenu__contact {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 315px;
  height: 58px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  color: #fff;
  margin: 10px auto 0;
  font-size: 16px;
  font-weight: bold;
  text-shadow: 2px 2px 2px rgba(44, 82, 145, .3);
}
@-webkit-keyframes btn07-bar01 {
  0% {
    -webkit-transform: translateY(8px) rotate(45deg);
            transform: translateY(8px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(8px) rotate(0);
            transform: translateY(8px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}
@keyframes btn07-bar01 {
  0% {
    -webkit-transform: translateY(8px) rotate(45deg);
            transform: translateY(8px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(8px) rotate(0);
            transform: translateY(8px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}
@-webkit-keyframes btn07-bar03 {
  0% {
    -webkit-transform: translateY(-8px) rotate(-45deg);
            transform: translateY(-8px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-8px) rotate(0);
            transform: translateY(-8px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}
@keyframes btn07-bar03 {
  0% {
    -webkit-transform: translateY(-8px) rotate(-45deg);
            transform: translateY(-8px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-8px) rotate(0);
            transform: translateY(-8px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
}
@-webkit-keyframes active-btn07-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(8px) rotate(0);
            transform: translateY(8px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(8px) rotate(45deg);
            transform: translateY(8px) rotate(45deg);
  }
}
@keyframes active-btn07-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(8px) rotate(0);
            transform: translateY(8px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(8px) rotate(45deg);
            transform: translateY(8px) rotate(45deg);
  }
}
@-webkit-keyframes active-btn07-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-8px) rotate(0);
            transform: translateY(-8px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-8px) rotate(-45deg);
            transform: translateY(-8px) rotate(-45deg);
  }
}
@keyframes active-btn07-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
            transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-8px) rotate(0);
            transform: translateY(-8px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-8px) rotate(-45deg);
            transform: translateY(-8px) rotate(-45deg);
  }
}
.footer__inner {
  padding: 40px 20px 60px;
}
@media screen and (min-width: 835px) {
  .footer__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 1200px;
    margin: auto;
  }
}
@media screen and (min-width: 835px) {
  .footer__info {
    width: 360px;
  }
}
.footer__logo {
  width: 90px;
  display: block;
  margin: auto;
}
.footer__address {
  font-size: 14px;
  text-align: center;
  margin-top: 30px;
  color: #1b345d;
}
.footer__banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  width: 280px;
  margin: 30px auto 0;
}
.footer__banner a img {
  display: block;
  width: 100%;
}
.footer__box {
  margin-top: 40px;
}
@media screen and (min-width: 835px) {
  .footer__box {
    width: calc(100% - 360px);
  }
}
.footer__service {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 16px;
  margin-top: 40px;
}
@media screen and (min-width: 835px) {
  .footer__service {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    gap: 40px;
  }
}
.footer__service a {
  display: block;
  width: 100px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.footer__service a:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 835px) {
  .footer__service a {
    width: 160px;
  }
}
.footer__service a img {
  display: block;
  width: 100%;
}
.footer__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.footer__link .footer__navGroup {
  display: contents;
}
.footer__link .footer__navGroup > .footer__nav:nth-child(1) {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
}
.footer__link > .footer__nav:nth-child(2) {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
}
.footer__link .footer__navGroup > .footer__nav:nth-child(2) {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}
.footer__link > .footer__nav:nth-child(3) {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}
@media screen and (min-width: 835px) {
  .footer__link {
    margin-top: 60px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    padding-left: 70px;
  }
  .footer__link .footer__navGroup {
    display: block;
  }
  .footer__link .footer__navGroup > .footer__nav,
  .footer__link > .footer__nav {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}
.footer__nav__item {
  border-bottom: 1px solid #d5dee8;
  position: relative;
}
@media screen and (min-width: 835px) {
  .footer__nav__item.footer__nav__item--parent {
    border-bottom: 0;
  }
  .footer__nav__item.footer__nav__item--parent > .footer__nav__link {
    border-bottom: 1px solid #d5dee8;
  }
}
.footer__nav__link {
  display: block;
  padding: 20px 0;
  font-size: 14px;
  font-weight: bold;
  color: #1b345d;
}
@media screen and (min-width: 835px) {
  .footer__nav__link {
    font-size: 16px;
  }
}
.footer__nav__toggle {
  position: absolute;
  top: 0;
  right: 0;
  width: 44px;
  height: 58px;
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.footer__nav__toggle::before,
.footer__nav__toggle::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 2px;
  margin: -1px 0 0 -7px;
  background: #1b345d;
}
.footer__nav__toggle::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: opacity 0.2s, -webkit-transform 0.2s;
  transition: transform 0.2s, opacity 0.2s;
  transition: transform 0.2s, opacity 0.2s, -webkit-transform 0.2s;
}
@media screen and (min-width: 835px) {
  .footer__nav__toggle {
    display: none;
  }
}
.footer__nav__item.is-open .footer__nav__toggle::after {
  opacity: 0;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}
.footer__nav__child {
  display: none;
  padding: 0 16px;
  background: rgba(184, 197, 219, .1);
}
@media screen and (min-width: 835px) {
  .footer__nav__child {
    padding: 0 0 14px;
    background: none;
  }
}
.footer__nav__child li:not(:last-of-type) a {
  border-bottom: 1px solid #b8c5db;
}
@media screen and (min-width: 835px) {
  .footer__nav__child li:not(:last-of-type) a {
    border: none;
  }
}
.footer__nav__child li a {
  display: block;
  padding: 16px 0;
  font-size: 13px;
  color: #1b345d;
}
@media screen and (min-width: 835px) {
  .footer__nav__child li a {
    padding: 8px 0 8px 14px;
    font-size: 14px;
  }
}
.footer__nav__item.is-open .footer__nav__child {
  display: block;
}
@media screen and (min-width: 835px) {
  .footer__nav__child {
    display: block;
    padding-top: 10px;
  }
  .footer__nav__child li a {
    padding: 10px 0 6px 14px;
  }
}
.footer__copy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 30px 20px;
  border-top: 1px solid #b8c5db;
}
@media screen and (min-width: 835px) {
  .footer__copy {
    padding: 50px 80px;
  }
}
.footer__copy p {
  font-size: 14px;
}
.footer__copy a {
  color: #1b345d;
  font-size: 12px;
}
.btn {
  width: 320px;
  height: 58px;
  padding: 0 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #3168ae;
  border-bottom: 2px solid #3168ae;
  position: relative;
  gap: 16px;
  margin: 30px auto 0;
}
@media screen and (min-width: 835px) {
  .btn {
    margin: 40px auto 0;
  }
}
.btn p {
  font-family: "Montserrat", sans-serif;
  letter-spacing: 2.08px;
  font-size: 26px;
}
.btn small {
  font-size: 13px;
  font-weight: bold;
}
.btn span {
  background: #f78800;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
.btn span svg {
  color: #fff;
}
.clipImage {
  display: block;
  width: 128.57142857142858%;
  height: auto;
  margin: -14.285714285714285%;
  pointer-events: none;
}
.clipImage__box {
  display: flow-root;
}
.silhouetteShadow {
  position: absolute;
  left: 0;
  top: -14%;
  width: 100%;
  height: 114%;
  display: block;
  z-index: -1;
  pointer-events: none;
}
.silhouetteShadow--pc {
  display: none;
}
@media screen and (min-width: 835px) {
  .silhouetteShadow--sp {
    display: none;
  }
  .silhouetteShadow--pc {
    display: block;
  }
}
.logoAnim {
  display: block;
  width: 90vw;
  height: auto;
  overflow: visible;
}
.logoAnim__line {
  fill: none;
  stroke: #ecf3ff;
  stroke-width: 20;
  stroke-linecap: round;
}
.logoAnim__dot {
  fill: #ecf3ff;
  -webkit-transform-origin: center;
          transform-origin: center;
  transform-box: fill-box;
}
.iconArrow {
  display: inline-block;
  vertical-align: middle;
  width: 10px;
  height: 10px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.c-arrow,
.c-arrow--r,
.c-arrow--l {
  width: 8px;
  height: 8px;
  border: 0px;
  border-top: solid 2.3px #222;
  border-right: solid 2.3px #222;
  position: absolute;
  top: 50%;
  margin-top: -4px;
}
.c-arrow--r {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  left: 0;
}
.c-arrow--l {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  right: 0;
}
@font-face {
  font-family: 'icomoon';
  font-display: swap;
  src: url("../img/fonts/icomoon.eot?816ycz");
  src: url("../img/fonts/icomoon.eot?816ycz#iefix") format('embedded-opentype'), url("../img/fonts/icomoon.ttf?816ycz") format('truetype'), url("../img/fonts/icomoon.woff?816ycz") format('woff'), url("../img/fonts/icomoon.svg?816ycz#icomoon") format('svg');
  font-weight: normal;
  font-style: normal;
}
[class^="c-ico--"]:before,
[class*=" c-ico--"]:before {
/* use !important to prevent issues with browser extensions that change fonts */
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
/* Better Font Rendering =========== */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
.c-ico--menu:before {
  content: "\e902";
}
.c-ico--close:before {
  content: "\e903";
}
.c-ico--arrow--r:before {
  content: "\e904";
}
.c-ico--arrow--u:before {
  content: "\e905";
}
.c-ico--arrow--l:before {
  content: "\e906";
}
.c-ico--arrow--d:before {
  content: "\e907";
}
.c-ico--search:before {
  content: "\e908";
}
.c-ico--tag:before {
  content: "\e909";
}
.c-ico--feedly--01:before {
  content: "\e90c";
}
.c-ico--instagram--01:before {
  content: "\e90d";
}
.c-ico--facebook:before {
  content: "\e90e";
}
.c-ico--twitter:before {
  content: "\e90f";
}
.about__intro {
  padding: 20px 24px 80px;
  position: relative;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .about__intro {
    padding: 20px 24px 160px;
  }
}
.about__intro__eng {
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 40px;
  letter-spacing: 4px;
  font-family: "Montserrat", sans-serif;
  display: inline-block;
}
@media screen and (min-width: 835px) {
  .about__intro__eng {
    font-size: 70px;
    letter-spacing: 5.6px;
  }
}
.about__intro__title {
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 20px;
  font-weight: bold;
  display: inline-block;
}
@media screen and (min-width: 835px) {
  .about__intro__title {
    font-size: 28px;
  }
}
@media screen and (min-width: 835px) {
  .about__intro__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: 1140px;
    margin: 80px auto 0;
    gap: 60px;
  }
}
.about__intro__img {
  width: 240px;
  margin: 20px auto;
}
@media screen and (min-width: 835px) {
  .about__intro__img {
    margin: 0;
    width: 500px;
  }
}
.about__intro__text {
  font-size: 13px;
  line-height: 2;
  text-align: left;
}
@media screen and (min-width: 835px) {
  .about__intro__text {
    width: calc(100% - 560px);
    font-size: 15px;
    padding-top: 40px;
    line-height: 2.4;
  }
}
.about__intro__bgeng {
  position: absolute;
  top: 200px;
  left: 0;
  right: 0;
  z-index: -1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  pointer-events: none;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 1.12px;
}
@media screen and (min-width: 835px) {
  .about__intro__bgeng {
    bottom: 170px;
    top: auto;
  }
}
.about__intro__bgeng__text {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  white-space: nowrap;
  font-size: 28px;
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 162, 217, .3)), color-stop(50%, rgba(59, 111, 182, .3)), to(rgba(49, 104, 174, .3)));
  background: linear-gradient(90deg, rgba(0, 162, 217, .3) 0%, rgba(59, 111, 182, .3) 50%, rgba(49, 104, 174, .3) 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  padding-right: 40px;
  -webkit-animation: aboutBgengScroll 30s linear infinite;
          animation: aboutBgengScroll 30s linear infinite;
}
@media screen and (min-width: 835px) {
  .about__intro__bgeng__text {
    font-size: 58px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .about__intro__bgeng__text {
    -webkit-animation: none;
            animation: none;
  }
}
.about__philosophy {
  position: relative;
  z-index: 0;
  padding: 60px 0 80px;
}
@media screen and (min-width: 835px) {
  .about__philosophy {
    padding: 80px 0 120px;
  }
}
.about__philosophy__eng {
  font-family: "Montserrat", sans-serif;
  font-size: 30px;
  letter-spacing: 2.4px;
  text-align: center;
  color: #fff;
}
@media screen and (min-width: 835px) {
  .about__philosophy__eng {
    font-size: 40px;
    letter-spacing: 3.2px;
  }
}
.about__philosophy__title {
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .about__philosophy__title {
    font-size: 36px;
  }
}
.about__philosophy__title span {
  font-size: 48px;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 3.84px;
  margin-right: 3px;
}
@media screen and (min-width: 835px) {
  .about__philosophy__title span {
    font-size: 70px;
  }
}
.about__philosophy__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 70px;
  margin-top: 40px;
  padding: 0 24px;
}
@media screen and (min-width: 835px) {
  .about__philosophy__list {
    max-width: 1080px;
    margin: 40px auto 0;
    gap: 60px;
  }
}
.about__philosophy__item {
  position: relative;
}
@media screen and (min-width: 835px) {
  .about__philosophy__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 60px;
  }
  .about__philosophy__item:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
@media screen and (min-width: 835px) {
  .about__philosophy__item__content {
    width: calc(100% - 420px);
  }
}
.about__philosophy__item__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: relative;
  gap: 40px;
}
@media screen and (min-width: 835px) {
  .about__philosophy__item__title {
    gap: 20px;
  }
}
.about__philosophy__item__title em {
  font-family: "Montserrat", sans-serif;
  color: #fff;
  letter-spacing: 3.84px;
  font-size: 48px;
}
.about__philosophy__item__title h3 {
  font-size: 26px;
  font-weight: bold;
  letter-spacing: 2.08px;
  color: #fff;
  text-shadow: 4px 4px 16px rgba(44, 82, 145, .8);
}
@media screen and (min-width: 835px) {
  .about__philosophy__item__title h3 {
    font-size: 32px;
  }
}
.about__philosophy__item__title span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f78800;
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
}
@media screen and (min-width: 835px) {
  .about__philosophy__item__title span {
    position: relative;
    margin: 0;
  }
}
.about__philosophy__item__text {
  margin-top: 260px;
  color: #fff;
}
@media screen and (min-width: 835px) {
  .about__philosophy__item__text {
    margin-top: 30px;
  }
}
.about__philosophy__item__text p {
  font-size: 13px;
  line-height: 2;
}
@media screen and (min-width: 835px) {
  .about__philosophy__item__text p {
    font-size: 15px;
  }
}
.about__philosophy__item__text h4 {
  font-size: 18px;
  line-height: 1.8;
}
@media screen and (min-width: 835px) {
  .about__philosophy__item__text h4 {
    font-size: 22px;
  }
}
.about__philosophy__item__text ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
  margin-top: 16px;
}
.about__philosophy__item__text ul li {
  border-left: 1px solid #fff;
  padding: 0 20px;
  position: relative;
}
.about__philosophy__item__text ul li:before {
  content: "";
  position: absolute;
  left: -5.5px;
  top: 10px;
  width: 10px;
  height: 10px;
  background: #fff;
  border-radius: 50%;
}
.about__philosophy__item__text ul li h5 {
  font-size: 16px;
  line-height: 1.8;
  margin-bottom: 6px;
}
@media screen and (min-width: 835px) {
  .about__philosophy__item__text ul li h5 {
    font-size: 18px;
  }
}
.about__philosophy__item__img {
  position: absolute;
  width: 240px;
  top: 50px;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (min-width: 835px) {
  .about__philosophy__item__img {
    position: relative;
    top: 0;
    width: 360px;
  }
}
.about__message {
  padding: 60px 24px 80px;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .about__message {
    padding: 80px 0 120px;
  }
}
.about__message__eng {
  font-family: "Montserrat", sans-serif;
  font-size: 30px;
  letter-spacing: 2.4px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}
@media screen and (min-width: 835px) {
  .about__message__eng {
    font-size: 50px;
  }
}
.about__message__title {
  font-size: 16px;
  font-weight: bold;
  color: #3168ae;
  display: inline-block;
}
@media screen and (min-width: 835px) {
  .about__message__title {
    font-size: 22px;
  }
}
.about__message__head {
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 22px;
  line-height: 1.8;
  font-weight: bold;
  margin-top: 20px;
  display: inline-block;
}
@media screen and (min-width: 835px) {
  .about__message__head {
    font-size: 32px;
  }
}
.about__message__text {
  font-size: 13px;
  line-height: 2;
  margin-top: 20px;
  text-align: left;
}
@media screen and (min-width: 835px) {
  .about__message__text {
    font-size: 15px;
    margin-top: 40px;
    text-align: center;
    line-height: 2.4;
  }
}
.about__message__text strong {
  color: #3168ae;
  font-weight: bold;
}
.about__number {
  background: #ecf3ff;
  padding: 60px 0 80px;
}
@media screen and (min-width: 835px) {
  .about__number {
    padding: 80px 0 120px;
  }
}
.about__number .section__title {
  margin-left: 24px;
}
@media screen and (min-width: 835px) {
  .about__number .section__title {
    max-width: 952px;
    margin: auto;
  }
}
.about__company {
  background: #ecf3ff;
  padding: 60px 0 80px;
}
@media screen and (min-width: 835px) {
  .about__company {
    padding: 80px 0 120px;
  }
}
.about__company__table {
  margin-top: 30px;
  width: 100%;
  -webkit-box-shadow: 4px 4px 24px 0 rgba(44, 82, 145, .2);
          box-shadow: 4px 4px 24px 0 rgba(44, 82, 145, .2);
}
.about__company__table th,
.about__company__table td {
  display: block;
}
@media screen and (min-width: 835px) {
  .about__company__table th,
  .about__company__table td {
    display: table-cell;
  }
}
.about__company__table th {
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 162, 217, .1)), color-stop(50%, rgba(59, 111, 182, .1)), to(rgba(49, 104, 174, .1)));
  background: linear-gradient(90deg, rgba(0, 162, 217, .1) 0%, rgba(59, 111, 182, .1) 50%, rgba(49, 104, 174, .1) 100%);
  font-size: 13px;
  padding: 8px 10px;
}
@media screen and (min-width: 835px) {
  .about__company__table th {
    width: 220px;
    padding: 24px 16px;
    font-size: 15px;
    border-bottom: 1px solid #30c2e4;
    background: -webkit-gradient(linear, left top, right top, from(rgba(0, 162, 217, .1)), color-stop(50%, rgba(59, 111, 182, .1)), to(rgba(49, 104, 174, .1))), #fff;
    background: linear-gradient(90deg, rgba(0, 162, 217, .1) 0%, rgba(59, 111, 182, .1) 50%, rgba(49, 104, 174, .1) 100%), #fff;
  }
}
.about__company__table td {
  background: #fff;
  font-size: 13px;
  padding: 16px 10px;
}
@media screen and (min-width: 835px) {
  .about__company__table td {
    font-size: 15px;
    padding: 24px 16px;
    border-bottom: 1px solid #b8c5db;
    border-bottom: 1px solid var(--border-gray, #b8c5db);
    background: #fff;
  }
}
.about__company__table td small {
  font-size: 10px;
}
@media screen and (min-width: 835px) {
  .about__company__table td small {
    font-size: 12px;
  }
}
.about__client {
  padding: 60px 0 80px;
}
@media screen and (min-width: 835px) {
  .about__client {
    padding: 80px 0 120px;
  }
}
.about__client__list {
  border: 1px solid #b8c5db;
  margin-top: 20px;
  padding: 20px;
}
@media screen and (min-width: 835px) {
  .about__client__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-top: 40px;
    padding: 40px;
  }
}
.about__client__list p {
  text-align: right;
  font-size: 13px;
  margin-top: 30px;
}
@media screen and (min-width: 835px) {
  .about__client__list p {
    font-size: 15px;
    margin-top: 20px;
    width: 100%;
  }
}
@media screen and (min-width: 835px) {
  .about__client__list ul {
    width: 50%;
  }
}
.about__client__list ul + ul {
  margin-top: 12px;
}
@media screen and (min-width: 835px) {
  .about__client__list ul + ul {
    margin-top: 0;
  }
}
.about__client__list li {
  position: relative;
  color: #1b345d;
  font-size: 13px;
  font-weight: 500;
  line-height: 1.8;
  letter-spacing: 0;
  padding: 0 8px 0 24px;
}
@media screen and (min-width: 835px) {
  .about__client__list li {
    font-size: 15px;
    line-height: 1.4;
  }
}
.about__client__list li + li {
  margin-top: 12px;
}
.about__client__list li:before {
  content: "";
  position: absolute;
  left: 10px;
  top: 12px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #3168ae;
}
@media screen and (min-width: 835px) {
  .about__client__list li:before {
    top: 10px;
  }
}
.about__service {
  padding: 60px 0 80px;
}
@media screen and (min-width: 835px) {
  .about__service {
    padding: 80px 0 120px;
  }
}
.about__service__list {
  border: 1px solid #b8c5db;
  margin: 20px 20px 0;
  padding: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 835px) {
  .about__service__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 40px;
    gap: 12px 0;
    margin: 40px 0 0;
  }
}
.about__service__list li {
  position: relative;
  font-size: 13px;
  line-height: 1.8;
  padding-left: 24px;
}
@media screen and (min-width: 835px) {
  .about__service__list li {
    font-size: 15px;
    width: 33.33333%;
  }
}
.about__service__list li:before {
  content: "";
  position: absolute;
  left: 8px;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #3168ae;
}
.about__service__btn {
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  width: 320px;
  height: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 16px;
  margin: 40px auto 0;
}
@media screen and (min-width: 835px) {
  .about__service__btn {
    width: 400px;
    height: 70px;
    font-size: 20px;
  }
}
@-webkit-keyframes aboutBgengScroll {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes aboutBgengScroll {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
.breadcrumbs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  padding: 18px 24px;
}
@media screen and (min-width: 835px) {
  .breadcrumbs {
    max-width: 1000px;
    margin: 0 auto;
    padding: 18px 0;
  }
}
.breadcrumbs > span {
  font-size: 12px;
  color: #78838a;
  white-space: nowrap;
}
.breadcrumbs > span:last-of-type {
  max-width: 200px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media screen and (min-width: 835px) {
  .breadcrumbs > span:last-of-type {
    max-width: 100%;
  }
}
.breadcrumbs a {
  font-size: 12px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  color: #3168ae;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 0.96px;
}
.breadcrumbs a:hover {
  opacity: 0.7;
}
.breadcrumbs .line {
  margin: 0 10px;
  width: 16px;
  height: 1px;
  background: #78838a;
}
@media screen and (min-width: 835px) {
  .breadcrumbs .line {
    margin: 0 16px;
  }
}
.contactConfirm .contact__text--contact {
  display: none;
}
.contactConfirm .contact__form__label {
  color: #78838a;
}
.contactConfirm .contact__text--confirm {
  display: block;
}
.contactConfirm .contact__form__item {
  margin-bottom: 0;
  padding: 20px 0;
  border-bottom: 1px solid #d5dee8;
}
@media screen and (min-width: 835px) {
  .contactConfirm .contact__form__item {
    padding: 25px 0;
  }
}
.contactConfirm .contact__form__item:first-of-type {
  border-top: 1px solid #d5dee8;
}
.contactConfirm .contact__form__label {
  margin-bottom: 8px;
}
@media screen and (min-width: 835px) {
  .contactConfirm .contact__form__label {
    width: 220px;
    -webkit-box-flex: 0;
        -ms-flex: 0 0 auto;
            flex: 0 0 auto;
    margin-bottom: 0;
  }
}
.contactConfirm .contact__form__value {
  font-size: 15px;
  line-height: 1.8;
  color: #1b345d;
  word-wrap: anywhere;
  white-space: pre-wrap;
}
@media screen and (min-width: 835px) {
  .contactConfirm .contact__form__value {
    font-size: 16px;
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    margin-top: 12px;
  }
}
.contact__container {
  padding: 40px 24px 80px;
}
@media screen and (min-width: 835px) {
  .contact__container {
    max-width: 860px;
    padding: 60px 60px 80px;
    border: 2px solid rgba(184, 197, 219, .3);
    background: #fff;
    margin: 20px auto 160px;
    border-radius: 10px;
  }
}
.contact__step {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: 0 auto 20px;
  width: 210px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .contact__step {
    margin: 0 auto 40px;
    width: 460px;
  }
}
.contact__step:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: calc(100% - 50px);
  height: 2px;
  background: #ddd;
}
.contact__step__item {
  width: 54px;
  height: 54px;
  position: relative;
  border: 2px solid #3168ae;
  background: #ecf3ff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  border-radius: 50%;
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .contact__step__item {
    width: 100px;
    height: 100px;
    border: 4px solid #3168ae;
  }
}
.contact__step__item span {
  font-size: 10px;
  color: #3168ae;
}
@media screen and (min-width: 835px) {
  .contact__step__item span {
    font-size: 12px;
    margin-bottom: 10px;
  }
}
.contact__step__item p {
  font-size: 13px;
  color: #3168ae;
}
@media screen and (min-width: 835px) {
  .contact__step__item p {
    font-size: 16px;
  }
}
.contact__step__item.is-active {
  background: #3168ae;
  border: 2px solid #3168ae;
}
@media screen and (min-width: 835px) {
  .contact__step__item.is-active {
    border: 4px solid #3168ae;
  }
}
.contact__step__item.is-active p,
.contact__step__item.is-active span {
  color: #fff;
}
.contact__text,
.contact__text--contact,
.contact__text--confirm {
  font-size: 13px;
  line-height: 1.8;
  text-align: center;
  color: #1b345d;
  margin-top: 24px;
}
@media screen and (min-width: 835px) {
  .contact__text,
  .contact__text--contact,
  .contact__text--confirm {
    font-size: 15px;
    margin-top: 32px;
  }
}
.contact__text--confirm {
  display: none;
}
.contact__form {
  margin-top: 32px;
}
@media screen and (min-width: 835px) {
  .contact__form {
    margin-top: 40px;
  }
}
.contact__form__item {
  margin-bottom: 28px;
}
@media screen and (min-width: 835px) {
  .contact__form__item {
    margin-bottom: 32px;
  }
}
.contact__form__label {
  font-size: 14px;
  color: #1b345d;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  margin-bottom: 10px;
}
@media screen and (min-width: 835px) {
  .contact__form__label {
    font-size: 16px;
    margin-bottom: 12px;
  }
}
.contact__form__required {
  background: #f78800;
  color: #fff;
  font-size: 11px;
  font-weight: bold;
  line-height: 1;
  padding: 4px 12px;
}
.contact__form__sublabel {
  font-size: 13px;
  color: #1b345d;
  margin-bottom: 6px;
}
.contact__form__note {
  display: block;
  font-size: 12px;
  color: #1b345d;
  line-height: 1.6;
  margin: -4px 0 8px;
}
.contact__form__count {
  display: block;
  text-align: right;
  font-size: 12px;
  color: #6b7a90;
  line-height: 1.6;
  margin-top: 6px;
}
.contact__form__count b {
  font-weight: bold;
}
.contact__form__count.is-limit {
  color: #e53935;
}
.contact__form__foot {
  display: block;
  font-size: 12px;
  color: #1b345d;
  line-height: 1.6;
}
.contact__form input[type="text"],
.contact__form input[type="tel"],
.contact__form input[type="email"],
.contact__form textarea,
.contact__form select {
  width: 100%;
  border: 1px solid #b8c5db;
  border-radius: 4px;
  background: #ecf3ff;
  color: #1b345d;
  font-size: 15px;
  padding: 0 16px;
  height: 56px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}
@media screen and (min-width: 835px) {
  .contact__form input[type="text"],
  .contact__form input[type="tel"],
  .contact__form input[type="email"],
  .contact__form textarea,
  .contact__form select {
    font-size: 16px;
  }
}
.contact__form input[type="text"]::-webkit-input-placeholder,
.contact__form input[type="tel"]::-webkit-input-placeholder,
.contact__form input[type="email"]::-webkit-input-placeholder,
.contact__form textarea::-webkit-input-placeholder,
.contact__form select::-webkit-input-placeholder {
  color: #b2bbc5;
}
.contact__form input[type="text"]::-moz-placeholder,
.contact__form input[type="tel"]::-moz-placeholder,
.contact__form input[type="email"]::-moz-placeholder,
.contact__form textarea::-moz-placeholder,
.contact__form select::-moz-placeholder {
  color: #b2bbc5;
}
.contact__form input[type="text"]::-ms-input-placeholder,
.contact__form input[type="tel"]::-ms-input-placeholder,
.contact__form input[type="email"]::-ms-input-placeholder,
.contact__form textarea::-ms-input-placeholder,
.contact__form select::-ms-input-placeholder {
  color: #b2bbc5;
}
.contact__form input[type="text"]::placeholder,
.contact__form input[type="tel"]::placeholder,
.contact__form input[type="email"]::placeholder,
.contact__form textarea::placeholder,
.contact__form select::placeholder {
  color: #b2bbc5;
}
.contact__form textarea {
  height: 180px;
  padding: 16px;
  line-height: 1.7;
}
@media screen and (min-width: 835px) {
  .contact__form textarea {
    height: 220px;
  }
}
.contact__form .wpcf7-form-control-wrap {
  display: block;
}
.contact__form input + input,
.contact__form .wpcf7-form-control-wrap + .wpcf7-form-control-wrap {
  margin-top: 8px;
}
.contact__form .select {
  position: relative;
}
.contact__form .select .arw {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 16px;
  margin: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 6px 4px 0 4px;
  border-color: #1b345d transparent transparent transparent;
  pointer-events: none;
}
.contact__form__radio .wpcf7-list-item {
  display: block;
  margin: 0 0 10px;
}
@media screen and (min-width: 835px) {
  .contact__form__radio .wpcf7-list-item {
    width: calc(50% - 6px);
    margin: 0;
  }
}
@media screen and (min-width: 835px) {
  .contact__form__radio .wpcf7-radio {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 12px;
  }
}
.contact__form__radio label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  gap: 12px;
  height: 56px;
  padding: 0 16px;
  border: 1px solid #d2d7de;
  background: #fff;
  color: #1b345d;
  font-size: 14px;
  font-weight: bold;
  cursor: pointer;
  -webkit-transition: background 0.3s, border-color 0.3s, color 0.3s;
  transition: background 0.3s, border-color 0.3s, color 0.3s;
}
@media screen and (min-width: 835px) {
  .contact__form__radio label {
    font-size: 15px;
  }
}
.contact__form__radio input[type="radio"] {
  display: none;
}
.contact__form__radio .wpcf7-list-item-label {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  padding-right: 4px;
  position: relative;
}
.contact__form__radio .wpcf7-list-item-label::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 24px;
  height: 24px;
  border: 1px solid #d2d7de;
  border-radius: 50%;
  background: #fff;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.contact__form__radio input[type="radio"]:checked + .wpcf7-list-item-label::after {
  border-color: #3168ae;
  background: #3168ae;
  -webkit-box-shadow: inset 0 0 0 5px #fff;
          box-shadow: inset 0 0 0 5px #fff;
}
.contact__form__radio label:has(input[type="radio"]:checked) {
  background: #00a2d9;
  color: #fff;
}
.contact__form__acceptance {
  margin-top: 36px;
  text-align: center;
}
.contact__form__acceptance .wpcf7-list-item {
  margin: 0;
}
.contact__form__acceptance label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 2px;
  font-size: 14px;
  color: #1b345d;
  cursor: pointer;
}
@media screen and (min-width: 835px) {
  .contact__form__acceptance label {
    font-size: 15px;
  }
}
.contact__form__acceptance input[type="checkbox"] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  width: 22px;
  height: 22px;
  border: 1px solid #d2d7de;
  border-radius: 3px;
  background: #fff;
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  cursor: pointer;
}
.contact__form__acceptance input[type="checkbox"]:checked {
  background: #3168ae;
  border-color: #3168ae;
}
.contact__form__acceptance input[type="checkbox"]:checked::before {
  content: "";
  position: absolute;
  top: 1px;
  left: 6px;
  width: 6px;
  height: 11px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.contact__form__acceptance a {
  color: #3168ae;
  text-decoration: underline;
}
.contact__form__acceptance a img {
  margin-left: 3px;
}
.contact__form__confirm,
.contact__form__submit {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 60px;
  margin: 40px auto 0 !important;
  border: none;
  border-radius: 6px;
  background: #3168ae;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media screen and (min-width: 835px) {
  .contact__form__confirm,
  .contact__form__submit {
    width: 400px;
    margin-top: 48px;
  }
}
@media (hover: hover) {
  .contact__form__confirm:hover,
  .contact__form__submit:hover {
    opacity: 0.8;
  }
}
.contact__form__back {
  display: block;
  width: 100%;
  margin: 16px auto 0;
  padding: 16px 0;
  border: none;
  background: none;
  color: #78838a;
  font-size: 14px;
  text-decoration: underline !important;
  cursor: pointer;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .contact__form__back {
    width: 400px;
  }
}
.contact__thanks__text {
  font-size: 14px;
  line-height: 2;
  text-align: center;
  color: #1b345d;
  margin-top: 32px;
}
@media screen and (min-width: 835px) {
  .contact__thanks__text {
    font-size: 16px;
    margin-top: 48px;
  }
}
.wpcf7-not-valid-tip {
  display: block;
  margin-top: 8px;
  font-size: 13px;
  color: #ea463c;
}
.wpcf7-response-output {
  margin: 24px 0 0 !important;
  padding: 12px 16px !important;
  font-size: 13px;
  border-radius: 6px;
}
.contact__form__address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
@media screen and (min-width: 835px) {
  .contact__form__address {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 10px 40px;
  }
}
@media screen and (min-width: 835px) {
  .contact__form__address__item {
    width: 100%;
  }
}
.contact__form__address__item--zip input[type="text"] {
  width: 130px;
}
@media screen and (min-width: 835px) {
  .contact__form__address__item--zip {
    width: calc(50% - 20px);
  }
  .contact__form__address__item--zip input[type="text"] {
    width: 100%;
  }
}
.contact__form__address__item--pref .select {
  width: 234px;
}
@media screen and (min-width: 835px) {
  .contact__form__address__item--pref {
    width: calc(50% - 20px);
  }
  .contact__form__address__item--pref .select {
    width: 100%;
  }
}
.contact__thanks {
  text-align: center;
  font-size: 13px;
  line-height: 1.8;
}
@media screen and (min-width: 835px) {
  .contact__thanks {
    font-size: 15px;
  }
}
.contact__form__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 60px;
  margin: 40px auto 0 !important;
  border: none;
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  cursor: pointer;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media screen and (min-width: 835px) {
  .contact__form__top {
    width: 400px;
    height: 70px;
    margin-top: 60px;
  }
}
@media (hover: hover) {
  .contact__form__top:hover {
    opacity: 0.8;
  }
}
.appoint__container {
  padding: 40px 16px 80px;
}
@media screen and (min-width: 835px) {
  .appoint__container {
    max-width: 1000px;
    margin: auto;
    padding: 60px 24px 120px;
  }
}
.appoint__calendar {
  max-width: 100%;
  overflow-x: auto;
}
.present__form__error {
  margin-top: 16px;
  text-align: center;
  font-size: 14px;
  line-height: 1.6;
  color: #ea463c;
}
@media screen and (min-width: 835px) {
  .present__form__error {
    font-size: 16px;
  }
}
.faq__container {
  padding: 40px 16px 80px;
}
@media screen and (min-width: 835px) {
  .faq__container {
    padding: 80px 24px 160px;
  }
}
.faq__title {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .faq__title {
    font-size: 36px;
  }
}
.faq__text {
  font-size: 13px;
  line-height: 2;
  text-align: center;
  margin-top: 30px;
}
@media screen and (min-width: 835px) {
  .faq__text {
    font-size: 15px;
  }
}
.faq__subtext {
  text-align: center;
  color: #3168ae;
  font-size: 15px;
  font-weight: bold;
  line-height: 2;
  margin: 30px 0 20px;
}
@media screen and (min-width: 835px) {
  .faq__subtext {
    font-size: 18px;
    margin: 30px 0 40px;
  }
}
.faq__section {
  text-align: center;
  padding: 30px 0;
}
@media screen and (min-width: 835px) {
  .faq__section {
    max-width: 1200px;
    margin: auto;
    padding: 60px 0;
    border-top: 1px solid #b8c5db;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .faq__section:last-of-type {
    border-bottom: 1px solid #b8c5db;
  }
}
.faq__section__title {
  font-size: 20px;
  font-weight: bold;
  display: inline-block;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .faq__section__title {
    font-size: 24px;
    width: 340px;
    text-align: left;
  }
}
.faq__list {
  margin-top: 15px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  text-align: left;
}
@media screen and (min-width: 835px) {
  .faq__list {
    width: calc(100% - 340px);
    margin-top: 0;
  }
}
.faq__item > div {
  display: none;
}
.faq__item__q {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  cursor: pointer;
  padding: 16px 10px;
  background: #ecf3ff;
  font-family: 'Noto Sans JP';
  border-radius: 8px;
}
@media screen and (min-width: 835px) {
  .faq__item__q {
    padding: 24px 20px;
  }
}
.faq__item__q div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: calc(100% - 35px);
  gap: 10px;
}
@media screen and (min-width: 835px) {
  .faq__item__q div {
    width: calc(100% - 50px);
    gap: 20px;
  }
}
.faq__item__q div p {
  font-size: 13px;
  font-weight: bold;
  text-align: left;
  color: #1b345d;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 835px) {
  .faq__item__q div p {
    font-size: 16px;
  }
}
.faq__item__q div img {
  width: 24px;
}
@media screen and (min-width: 835px) {
  .faq__item__q div img {
    width: 40px;
  }
}
.faq__item__q > span {
  width: 24px;
  height: 24px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .faq__item__q > span {
    width: 40px;
    height: 40px;
  }
}
.faq__item__q > span:before,
.faq__item__q > span:after {
  content: "";
  width: 15px;
  height: 2px;
  background: #3168ae;
  position: absolute;
  inset: 0;
  margin: auto;
}
@media screen and (min-width: 835px) {
  .faq__item__q > span:before,
  .faq__item__q > span:after {
    width: 20px;
  }
}
.faq__item__q > span:after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.faq__item__q.is-active {
  border-radius: 8px 8px 0 0;
}
.faq__item__q.is-active > span:after {
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}
.faq__item__a {
  padding: 16px 10px;
  background: #ecf3ff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 10px;
  border-radius: 0 0 8px 8px;
}
@media screen and (min-width: 835px) {
  .faq__item__a {
    padding: 24px 20px;
    gap: 20px;
  }
}
.faq__item__a img {
  width: 24px;
}
@media screen and (min-width: 835px) {
  .faq__item__a img {
    width: 40px;
  }
}
.faq__item__a p {
  font-size: 13px;
  width: calc(100% - 30px);
  line-height: 1.6;
}
@media screen and (min-width: 835px) {
  .faq__item__a p {
    font-size: 15px;
    width: calc(100% - 70px);
  }
}
.faq__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  margin-bottom: 60px;
}
@media screen and (min-width: 835px) {
  .faq__nav {
    max-width: 1000px;
    margin: 0 auto 40px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: 10px;
  }
}
.faq__nav__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-radius: 8px;
  border: none;
  width: 100%;
  height: 58px;
  position: relative;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.faq__nav__item:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 835px) {
  .faq__nav__item {
    width: calc(33.33333% - 6.66667px);
  }
}
.faq__nav__item p {
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 14px;
  font-weight: bold;
}
.faq__nav__item::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 8px;
  padding: 2px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));
  mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none;
}
.faq__nav__item span {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  right: 12px;
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #f78800;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.faq__nav__item span svg {
  color: #fff;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.guide__intro__container {
  padding: 20px 0 40px;
}
@media screen and (min-width: 835px) {
  .guide__intro__container {
    padding: 20px 0 80px;
    max-width: 1100px;
    margin: auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.guide__intro__img {
  display: block;
}
@media screen and (min-width: 835px) {
  .guide__intro__img {
    width: 500px;
  }
}
.guide__intro__img img {
  display: block;
  width: 100%;
}
.guide__intro__text {
  padding: 30px 24px 0;
  font-size: 13px;
  line-height: 2;
}
@media screen and (min-width: 835px) {
  .guide__intro__text {
    width: calc(100% - 560px);
    padding: 0;
    font-size: 15px;
  }
}
.guide__intro__text span {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(247, 136, 0, .2)));
  background: linear-gradient(transparent 60%, rgba(247, 136, 0, .2) 60%);
}
.guide__intro__text strong {
  font-size: 16px;
  font-weight: bold;
  color: #3168ae;
}
@media screen and (min-width: 835px) {
  .guide__intro__text strong {
    font-size: 20px;
  }
}
.guide__flow__container {
  background: #ecf3ff;
  padding: 40px 24px;
}
@media screen and (min-width: 835px) {
  .guide__flow__container {
    padding: 80px 24px 90px;
  }
}
.guide__flow__title {
  font-size: 22px;
  text-align: center;
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .guide__flow__title {
    font-size: 32px;
  }
}
.guide__flow {
  position: relative;
  margin-top: 28px;
}
@media screen and (min-width: 835px) {
  .guide__flow {
    max-width: 992px;
    margin: 48px auto 0;
  }
}
.guide__flow__line {
  position: absolute;
  left: 22px;
  top: 0;
  width: 4px;
  height: 0;
  margin-left: -2px;
  border-radius: 4px;
  background: #b8c5db;
}
@media screen and (min-width: 835px) {
  .guide__flow__line {
    left: 34px;
  }
}
.guide__flow__line__progress {
  display: block;
  width: 100%;
  height: 0;
  border-radius: inherit;
  background: #00a2d9;
}
.guide__flow__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 835px) {
  .guide__flow__list {
    gap: 30px;
  }
}
.guide__flow__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 14px;
}
@media screen and (min-width: 835px) {
  .guide__flow__item {
    gap: 54px;
  }
}
.guide__flow__icon {
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #b8c5db;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-shadow: 0 0 0 3px #dbe4f3;
          box-shadow: 0 0 0 3px #dbe4f3;
  position: relative;
  z-index: 1;
  -webkit-transition: background-color 0.4s, -webkit-box-shadow 0.4s;
  transition: background-color 0.4s, -webkit-box-shadow 0.4s;
  transition: background-color 0.4s, box-shadow 0.4s;
  transition: background-color 0.4s, box-shadow 0.4s, -webkit-box-shadow 0.4s;
}
@media screen and (min-width: 835px) {
  .guide__flow__icon {
    width: 68px;
    height: 68px;
  }
}
.guide__flow__icon img {
  display: block;
  width: 55%;
  height: auto;
}
.guide__flow__item.is-active .guide__flow__icon {
  background: #00a2d9;
  -webkit-box-shadow: 0 0 0 4px rgba(0, 162, 217, .25);
          box-shadow: 0 0 0 4px rgba(0, 162, 217, .25);
}
.guide__flow__item.is-active .guide__flow__card {
  border-color: #00a2d9;
}
.guide__flow__item.is-active .guide__flow__name,
.guide__flow__item.is-active .guide__flow__sub {
  color: #3168ae;
}
.guide__flow__card {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  background: #fff;
  border-radius: 8px;
  -webkit-box-shadow: 0 4px 16px 0 rgba(44, 82, 145, .24);
          box-shadow: 0 4px 16px 0 rgba(44, 82, 145, .24);
  border: 2px solid transparent;
  padding: 14px;
  -webkit-transition: border-color 0.4s;
  transition: border-color 0.4s;
}
@media screen and (min-width: 835px) {
  .guide__flow__card {
    padding: 20px 22px 20px;
    border: 4px solid transparent;
  }
}
.guide__flow__head {
  position: relative;
  text-align: center;
}
.guide__flow__num {
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  font-size: 18px;
  font-weight: bold;
  line-height: 1;
  color: #3168ae;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 835px) {
  .guide__flow__num {
    left: 8px;
    font-size: 32px;
  }
}
.guide__flow__name {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.5;
  -webkit-transition: color 0.4s;
  transition: color 0.4s;
}
@media screen and (min-width: 835px) {
  .guide__flow__name {
    font-size: 20px;
  }
}
.guide__flow__sub {
  font-size: 10px;
  font-weight: bold;
  line-height: 1.5;
}
@media screen and (min-width: 835px) {
  .guide__flow__sub {
    font-size: 13px;
  }
}
.guide__flow__item--cta {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.guide__flow__item--cta .guide__flow__icon {
  margin-top: 4px;
}
@media screen and (min-width: 835px) {
  .guide__flow__item--cta .guide__flow__icon {
    margin-top: 17px;
  }
}
.guide__flow__btns {
  margin-top: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 9px;
}
@media screen and (min-width: 835px) {
  .guide__flow__btns {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 12px;
    margin-top: 10px;
  }
}
.guide__flow__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  width: 100%;
  max-width: 214px;
  height: 56px;
  border-radius: 8px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-shadow: 2px 2px 2px rgba(44, 82, 145, .3);
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.guide__flow__btn:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 835px) {
  .guide__flow__btn {
    width: 300px;
    max-width: none;
    height: 58px;
    font-size: 16px;
  }
}
.guide__flow__btn img {
  display: block;
  width: 24px;
}
.guide__flow__btn--consult {
  background: -webkit-gradient(linear, left top, right top, from(#ffb133), color-stop(50%, #f78800), to(#e05e00));
  background: linear-gradient(90deg, #ffb133 0%, #f78800 50%, #e05e00 100%);
}
.guide__flow__btn--contact {
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
}
.guide__flow__note {
  margin-top: 30px;
  text-align: center;
  font-size: 13px;
  line-height: 2;
}
@media screen and (min-width: 835px) {
  .guide__flow__note {
    margin-top: 40px;
    font-size: 15px;
  }
}
.head {
  padding: 104px 24px 40px 40px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .head {
    padding: 152px 24px 45px 24px;
  }
}
@media screen and (min-width: 835px) {
  .head > div {
    max-width: 1000px;
    margin: auto;
  }
}
.head img:nth-of-type(1) {
  width: 40px;
  position: absolute;
  left: -10px;
  bottom: 20px;
}
@media screen and (min-width: 835px) {
  .head img:nth-of-type(1) {
    width: 100px;
    bottom: -20px;
    left: 0;
  }
}
.head img:nth-of-type(2) {
  position: absolute;
  width: 175px;
  right: 7px;
  top: 0;
}
@media screen and (min-width: 835px) {
  .head img:nth-of-type(2) {
    width: 320px;
    top: -80px;
  }
}
.head p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 1.12px;
  color: #3168ae;
  font-size: 14px;
}
@media screen and (min-width: 835px) {
  .head p {
    font-size: 20px;
  }
}
.head p span {
  width: 6px;
  height: 6px;
  background: #f78800;
  border-radius: 50%;
}
.head h1,
.head h2 {
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 26px;
  font-weight: bold;
  display: inline-block;
}
@media screen and (min-width: 835px) {
  .head h1,
  .head h2 {
    font-size: 46px;
    margin-top: 10px;
  }
}
@media screen and (min-width: 835px) {
  .news__achieve {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 1100px;
    margin: auto;
    padding-bottom: 120px;
    padding-top: 20px;
  }
}
.news__content {
  padding: 20px 24px 60px;
}
@media screen and (min-width: 835px) {
  .news__content {
    padding: 0;
    width: calc(100% - 380px);
  }
  .news__content .news__list {
    width: 100%;
  }
}
.news__content__title {
  font-size: 20px;
  font-weight: bold;
  padding-left: 10px;
  border-left: 4px solid #3168ae;
}
@media screen and (min-width: 835px) {
  .news__content__title {
    font-size: 26px;
    margin-bottom: 30px;
  }
}
.news__side {
  padding: 20px 24px 80px;
}
@media screen and (min-width: 835px) {
  .news__side {
    width: 300px;
    padding: 0;
  }
}
.news__side__category__item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 16px;
  height: 58px;
  font-size: 13px;
  color: #1b345d;
  background: #fff;
  position: relative;
  z-index: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.news__side__category__item a::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  background: -webkit-gradient(linear, left top, right top, from(rgba(0, 162, 217, .08)), color-stop(50%, rgba(59, 111, 182, .08)), to(rgba(49, 104, 174, .08)));
  background: linear-gradient(90deg, rgba(0, 162, 217, .08) 0%, rgba(59, 111, 182, .08) 50%, rgba(49, 104, 174, .08) 100%);
  opacity: 0;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  border-radius: 8px;
}
.news__side__category__item a span {
  width: 10px;
  height: 10px;
  background: #f78800;
  border-radius: 50%;
  opacity: 0;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.news__side__category__item a:hover::before {
  opacity: 1;
}
.news__side__category__item a:hover span {
  opacity: 1;
}
.news__side__category__item.is-active a::before {
  opacity: 1;
}
.news__side__category__item.is-active a span {
  opacity: 1;
}
.news__side____banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  width: 280px;
  margin: 30px auto 0;
}
.news__side____banner a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.news__side____banner a:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.news__side____banner a img {
  display: block;
  width: 100%;
}
.page__container {
  padding: 20px 24px 80px;
}
@media screen and (min-width: 835px) {
  .page__container {
    padding: 60px 60px 80px;
    border: 2px solid rgba(184, 197, 219, .3);
    border-radius: 10px;
    background: #fff;
    max-width: 860px;
    margin: 20px auto 160px;
  }
}
.section__inner {
  padding: 0 24px;
}
@media screen and (min-width: 835px) {
  .section__inner {
    max-width: 1048px;
    margin: auto;
  }
}
.section__title {
  font-size: 20px;
  font-weight: bold;
  padding-left: 10px;
  border-left: 4px solid #3168ae;
}
@media screen and (min-width: 835px) {
  .section__title {
    font-size: 26px;
  }
}
.pagenation {
  display: block;
  width: 100%;
  margin-top: 30px;
}
ul.page-numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
ul.page-numbers span,
ul.page-numbers a {
  width: 40px;
  height: 40px;
  color: #000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 16px;
  font-weight: bold;
  margin: 0 4px;
  background: #fff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  line-height: 1;
  border-radius: 8px;
}
@media screen and (min-width: 835px) {
  ul.page-numbers span,
  ul.page-numbers a {
    width: 48px;
    height: 48px;
    margin: 0 4px;
  }
}
ul.page-numbers span.current,
ul.page-numbers a.current {
  background: #3168ae;
  color: #fff;
}
ul.page-numbers span.prev,
ul.page-numbers a.prev {
  position: relative;
  margin-right: 14px;
}
@media screen and (min-width: 835px) {
  ul.page-numbers span.prev,
  ul.page-numbers a.prev {
    margin-right: 40px;
  }
}
ul.page-numbers span.prev:before,
ul.page-numbers a.prev:before {
  content: url("../img/common/pagenation_arw.svg");
  vertical-align: middle;
  -webkit-transform: rotate(180deg) scale(1, -1);
          transform: rotate(180deg) scale(1, -1);
}
ul.page-numbers span.next,
ul.page-numbers a.next {
  position: relative;
  margin-left: 14px;
}
@media screen and (min-width: 835px) {
  ul.page-numbers span.next,
  ul.page-numbers a.next {
    margin-left: 40px;
  }
}
ul.page-numbers span.next:before,
ul.page-numbers a.next:before {
  content: url("../img/common/pagenation_arw.svg");
  vertical-align: middle;
  -webkit-transform: scale(1);
          transform: scale(1);
}
ul.page-numbers a {
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
ul.page-numbers a:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.present__intro {
  padding: 20px 24px 40px;
}
@media screen and (min-width: 835px) {
  .present__intro {
    max-width: 1000px;
    margin: auto;
    padding: 20px 24px 80px;
  }
}
.present__intro__title {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .present__intro__title {
    font-size: 28px;
  }
}
.present__intro__img {
  width: 240px;
  display: block;
  margin: 20px auto 30px;
}
@media screen and (min-width: 835px) {
  .present__intro__img {
    width: 320px;
  }
}
.present__intro__head {
  font-size: 15px;
  line-height: 2;
  font-weight: bold;
  padding-bottom: 30px;
  border-bottom: 1px solid #b8c5db;
}
@media screen and (min-width: 835px) {
  .present__intro__head {
    font-size: 18px;
    text-align: center;
  }
}
.present__intro__text {
  font-size: 13px;
  line-height: 2;
  padding-top: 30px;
}
@media screen and (min-width: 835px) {
  .present__intro__text {
    font-size: 15px;
  }
}
.present__intro__text a {
  font-size: 16px;
  font-weight: bold;
  color: #3168ae;
}
@media screen and (min-width: 835px) {
  .present__intro__text a {
    font-size: 20px;
  }
}
.present__number {
  background: #ecf3ff;
  padding: 40px 24px 80px;
}
@media screen and (min-width: 835px) {
  .present__number {
    padding: 80px 24px;
  }
}
.present__number__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.present__number__title img {
  width: 37px;
}
@media screen and (min-width: 835px) {
  .present__number__title img {
    width: 60px;
  }
}
.present__number__title h2 {
  font-size: 22px;
  font-weight: bold;
  color: #1b345d;
}
@media screen and (min-width: 835px) {
  .present__number__title h2 {
    font-size: 32px;
  }
}
.present__number__text {
  font-size: 13px;
  text-align: center;
  line-height: 1.6;
  margin-top: 10px;
}
@media screen and (min-width: 835px) {
  .present__number__text {
    font-size: 15px;
    margin-top: 30px;
  }
}
.present__number__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  margin-top: 30px;
  padding: 0 20px;
}
@media screen and (min-width: 835px) {
  .present__number__list {
    max-width: 1000px;
    margin: 30px auto 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    padding: 0;
    gap: 16px;
  }
}
@media screen and (min-width: 835px) {
  .present__number__item {
    width: calc(33.33333% - 10.66667px);
  }
}
.present__number__item__head {
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  text-align: center;
  color: #fff;
  padding: 0 10px;
  border-radius: 8px 8px 0 0;
  height: 92px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.present__number__item__head h3 {
  font-size: 20px;
  line-height: 1.3;
}
.present__number__item__head p {
  font-size: 16px;
  line-height: 1.3;
}
.present__number__item__content {
  background: #fff;
  padding: 16px 16px 20px;
  border-radius: 0 0 8px 8px;
}
@media screen and (min-width: 835px) {
  .present__number__item__content {
    height: calc(100% - 92px);
  }
}
.present__number__item__img {
  width: 160px;
  display: block;
  margin: auto;
}
.present__number__item__text {
  font-size: 13px;
  line-height: 1.6;
  margin-top: 16px;
}
.present__number__item__winner {
  border-radius: 8px;
  background: rgba(247, 136, 0, .1);
  padding: 0 24px 10px;
  margin-top: 16px;
}
.present__number__item__winner p {
  border-radius: 0 0 8px 8px;
  background: #f78800;
  background: var(--accent-orange, #f78800);
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .16);
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .16);
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  width: 200px;
  margin: auto;
  text-align: center;
  padding: 4px 0;
}
.present__number__item__winner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px 20px;
  margin-top: 10px;
}
.present__number__item__winner ul li {
  color: #f78800;
  font-size: 14px;
  font-weight: bold;
}
.present__number__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 320px;
  height: 58px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, right top, from(#ffb133), color-stop(50%, #f78800), to(#e05e00));
  background: linear-gradient(90deg, #ffb133 0%, #f78800 50%, #e05e00 100%);
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  color: #fff;
  margin: 30px auto 0;
  font-size: 16px;
}
@media screen and (min-width: 835px) {
  .present__number__btn {
    width: 400px;
    height: 70px;
    font-size: 20px;
    margin: 40px auto 0;
  }
}
.present__next {
  padding: 40px 24px 80px;
}
@media screen and (min-width: 835px) {
  .present__next {
    padding: 80px 24px 160px;
  }
}
.present__next__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.present__next__title img {
  width: 37px;
}
@media screen and (min-width: 835px) {
  .present__next__title img {
    width: 60px;
  }
}
.present__next__title h2 {
  font-size: 22px;
  font-weight: bold;
  color: #1b345d;
}
@media screen and (min-width: 835px) {
  .present__next__title h2 {
    font-size: 32px;
  }
}
.present__next__text {
  font-size: 13px;
  text-align: center;
  line-height: 1.6;
  margin-top: 10px;
}
@media screen and (min-width: 835px) {
  .present__next__text {
    font-size: 15px;
    margin-top: 30px;
  }
}
.present__next__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 30px;
  margin-top: 30px;
  padding: 0 20px;
}
@media screen and (min-width: 835px) {
  .present__next__list {
    max-width: 1000px;
    margin: 30px auto 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    padding: 0;
    gap: 16px;
  }
}
.present__next__item {
  border: 1px solid #b8c5db;
  border-radius: 8px;
}
@media screen and (min-width: 835px) {
  .present__next__item {
    width: calc(33.33333% - 10.66667px);
  }
}
.present__next__item__head {
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  text-align: center;
  color: #fff;
  padding: 0 10px;
  border-radius: 8px 8px 0 0;
  height: 92px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.present__next__item__head h3 {
  font-size: 20px;
  line-height: 1.3;
}
.present__next__item__head p {
  font-size: 16px;
  line-height: 1.3;
}
.present__next__item__content {
  background: #fff;
  padding: 16px 16px 20px;
  border-radius: 0 0 8px 8px;
}
@media screen and (min-width: 835px) {
  .present__next__item__content {
    height: calc(100% - 92px);
  }
}
.present__next__item__img {
  width: 160px;
  display: block;
  margin: auto;
}
.present__next__item__text {
  font-size: 13px;
  line-height: 1.6;
  margin-top: 16px;
}
.present__next__item__winner {
  border-radius: 8px;
  background: rgba(247, 136, 0, .1);
  padding: 0 24px 10px;
  margin-top: 16px;
}
.present__next__item__winner p {
  border-radius: 0 0 8px 8px;
  background: #f78800;
  background: var(--accent-orange, #f78800);
  -webkit-box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .16);
          box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .16);
  color: #fff;
  font-size: 13px;
  font-weight: bold;
  width: 200px;
  margin: auto;
  text-align: center;
  padding: 4px 0;
}
.present__next__item__winner ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px 20px;
  margin-top: 10px;
}
.present__next__item__winner ul li {
  color: #f78800;
  font-size: 14px;
  font-weight: bold;
}
.present__next__foot {
  font-size: 13px;
  margin-top: 30px;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .present__next__foot {
    font-size: 15px;
  }
}
.present__form__text {
  text-align: center;
  font-size: 13px;
  line-height: 1.8;
}
@media screen and (min-width: 835px) {
  .present__form__text {
    font-size: 15px;
  }
}
.recruit__lead {
  font-size: 20px !important;
  font-weight: bold;
  line-height: 1.8;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .recruit__lead {
    font-size: 24px !important;
  }
}
.recruit__intro {
  padding: 20px 0 80px;
  text-align: center;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .recruit__intro {
    padding: 20px 0 120px;
  }
}
.recruit__intro__title {
  font-size: 26px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  display: inline-block;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .recruit__intro__title {
    font-size: 32px;
  }
}
.recruit__intro__body {
  padding: 0 20px;
  position: relative;
  margin-top: 30px;
  text-align: left;
}
@media screen and (min-width: 835px) {
  .recruit__intro__body {
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
  }
}
@media screen and (min-width: 835px) {
  .recruit__intro__body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 60px;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin-top: 60px;
    max-width: 1250px;
  }
}
.recruit__intro__img {
  margin-left: -24px;
  margin-right: -24px;
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
@media screen and (min-width: 835px) {
  .recruit__intro__img {
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 835px) {
  .recruit__intro__img {
    width: 500px;
  }
}
.recruit__intro__img__photo {
  display: block;
  width: 100%;
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 835px) {
  .recruit__intro__img__photo {
    height: 348px;
    border-radius: 8px;
  }
}
.recruit__intro__line {
  position: absolute;
  width: 300px;
  height: auto;
  left: -20px;
  top: 120px;
  z-index: 10;
  pointer-events: none;
}
@media screen and (min-width: 835px) {
  .recruit__intro__line {
    width: 500px;
    left: -200px;
    top: auto;
    bottom: -100px;
  }
}
.recruit__intro__line {
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
}
.recruit__intro__line.is-inview {
  -webkit-animation: recruitIntroLineDraw 1.6s cubic-bezier(0.33, 1, 0.68, 1) forwards;
          animation: recruitIntroLineDraw 1.6s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}
@media (prefers-reduced-motion: reduce) {
  .recruit__intro__line {
    -webkit-animation: none;
            animation: none;
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.recruit__intro__text {
  margin-top: 40px;
}
@media screen and (min-width: 835px) {
  .recruit__intro__text {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    margin-top: 0;
  }
}
.recruit__intro__text p {
  font-size: 13px;
  line-height: 2;
}
@media screen and (min-width: 835px) {
  .recruit__intro__text p {
    font-size: 15px;
  }
}
.recruit__intro__text p + p {
  margin-top: 20px;
}
.recruit__intro__gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  margin-top: 40px;
}
@media screen and (min-width: 835px) {
  .recruit__intro__gallery {
    margin-top: 80px;
  }
}
.recruit__intro__gallery__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-animation: recruitGalleryScroll 40s linear infinite;
          animation: recruitGalleryScroll 40s linear infinite;
}
.recruit__intro__gallery__list li {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 160px;
  margin-right: 20px;
}
@media screen and (min-width: 835px) {
  .recruit__intro__gallery__list li {
    width: 240px;
  }
}
.recruit__intro__gallery__list img {
  display: block;
  width: 100%;
  height: 106px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 8px;
}
@media screen and (min-width: 835px) {
  .recruit__intro__gallery__list img {
    height: 158px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .recruit__intro__gallery {
    overflow-x: auto;
  }
  .recruit__intro__gallery__list {
    -webkit-animation: none;
            animation: none;
  }
}
.recruit__work {
  position: relative;
  z-index: 0;
  color: #fff;
  padding: 60px 0;
  -webkit-box-shadow: 0 -8px 15px rgba(44, 82, 145, .2);
          box-shadow: 0 -8px 15px rgba(44, 82, 145, .2);
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .recruit__work {
    padding: 120px 0;
  }
}
.recruit__work__inner {
  padding: 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 835px) {
  .recruit__work__inner {
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
  }
}
.recruit__work__dot {
  display: block;
  width: 10px;
}
@media screen and (min-width: 835px) {
  .recruit__work__dot {
    width: 12px;
  }
}
.recruit__work__eng {
  font-family: "Montserrat", sans-serif;
  font-size: 30px;
  letter-spacing: 2.4px;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .recruit__work__eng {
    font-size: 40px;
    letter-spacing: 3.2px;
  }
}
.recruit__work__title {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  text-shadow: 4px 4px 16px rgba(44, 82, 145, .8);
}
@media screen and (min-width: 835px) {
  .recruit__work__title {
    font-size: 36px;
    line-height: 1.6;
  }
}
.recruit__work__text {
  font-size: 13px;
  line-height: 2;
  text-align: center;
  padding-top: 10px;
}
@media screen and (min-width: 835px) {
  .recruit__work__text {
    font-size: 15px;
    padding-top: 30px;
  }
}
.recruit__work__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
  width: 100%;
  padding-top: 40px;
}
@media screen and (min-width: 835px) {
  .recruit__work__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 0;
  }
}
.recruit__work__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px;
  width: 100%;
  max-width: 340px;
}
@media screen and (min-width: 835px) {
  .recruit__work__item {
    display: block;
    width: 240px;
    max-width: none;
  }
}
.recruit__work__item__circle {
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: #fff;
  -webkit-box-shadow: 2px 2px 6px rgba(44, 82, 145, .8);
          box-shadow: 2px 2px 6px rgba(44, 82, 145, .8);
}
@media screen and (min-width: 835px) {
  .recruit__work__item__circle {
    width: 240px;
    height: 240px;
    -webkit-box-shadow: 4px 4px 16px rgba(44, 82, 145, .8);
            box-shadow: 4px 4px 16px rgba(44, 82, 145, .8);
  }
}
.recruit__work__item__icon {
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 60%;
  height: auto;
}
@media screen and (min-width: 835px) {
  .recruit__work__item__icon {
    width: 50%;
  }
}
.recruit__work__item__num {
  position: absolute;
  left: 0;
  top: -3px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 3px;
}
@media screen and (min-width: 835px) {
  .recruit__work__item__num {
    top: 20px;
    left: 10px;
  }
}
.recruit__work__item__num__fig {
  display: block;
  width: auto;
  height: 27px;
}
@media screen and (min-width: 835px) {
  .recruit__work__item__num__fig {
    height: 38px;
  }
}
.recruit__work__item__num__dot {
  display: block;
  width: 10px;
  margin-top: 14px;
}
@media screen and (min-width: 835px) {
  .recruit__work__item__num__dot {
    width: 12px;
    margin-top: 24px;
  }
}
.recruit__work__item__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
}
.recruit__work__item__eng {
  font-family: "Montserrat", sans-serif;
  font-size: 22px;
  line-height: 1.1;
  letter-spacing: 1.76px;
  text-shadow: 4px 4px 16px rgba(44, 82, 145, .8);
  padding-top: 10px;
}
@media screen and (min-width: 835px) {
  .recruit__work__item__eng {
    font-size: 24px;
    letter-spacing: 1.92px;
    text-align: center;
    min-height: 52px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-top: 20px;
    padding-top: 0;
  }
}
.recruit__work__item__text {
  font-size: 12px;
  line-height: 2;
  word-break: keep-all;
  padding-top: 10px;
}
@media screen and (min-width: 835px) {
  .recruit__work__item__text {
    font-size: 14px;
    text-align: center;
  }
}
.recruit__work__foot {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  width: 100%;
  padding-top: 40px;
}
@media screen and (min-width: 835px) {
  .recruit__work__foot {
    gap: 10px;
    padding-top: 60px;
  }
}
.recruit__work__foot p {
  font-size: 13px;
  line-height: 2;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .recruit__work__foot p {
    font-size: 15px;
  }
}
.recruit__work__foot__lg {
  font-size: 20px !important;
  font-weight: bold;
  line-height: 1.8;
}
@media screen and (min-width: 835px) {
  .recruit__work__foot__lg {
    font-size: 24px !important;
    font-weight: normal;
  }
}
.recruit__value {
  position: relative;
  z-index: 0;
  color: #fff;
  padding: 62px 0 80px;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .recruit__value {
    padding: 84px 0 120px;
  }
}
.recruit__value::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: rgba(255, 255, 255, .2);
}
@media screen and (min-width: 835px) {
  .recruit__value::before {
    height: 4px;
  }
}
.recruit__value__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 20px;
  overflow-x: auto;
  padding: 24px;
  padding-top: 40px;
}
@media screen and (min-width: 835px) {
  .recruit__value__list {
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    gap: 40px 0;
    overflow: visible;
  }
}
.recruit__value__item {
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 300px;
  height: 374px;
  border: 2px solid rgba(255, 255, 255, .2);
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(255, 255, 255, .16)), to(rgba(255, 255, 255, 0)));
  background: linear-gradient(180deg, rgba(255, 255, 255, .16) 0%, rgba(255, 255, 255, 0) 100%);
  padding: 20px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 835px) {
  .recruit__value__item {
    width: calc(50% - 20px);
    height: auto;
    min-height: 250px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 30px;
    padding: 30px 16px;
  }
}
.recruit__value__item__body {
  display: contents;
}
@media screen and (min-width: 835px) {
  .recruit__value__item__body {
    display: block;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
  }
}
.recruit__value__item__num {
  position: absolute;
  left: 50%;
  top: -30px;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 835px) {
  .recruit__value__item__num {
    left: 72px;
    top: -5px;
    -webkit-transform: none;
            transform: none;
  }
}
.recruit__value__item__num img {
  display: block;
  width: 10px;
}
@media screen and (min-width: 835px) {
  .recruit__value__item__num img {
    width: 12px;
  }
}
.recruit__value__item__num span {
  font-family: "Montserrat", sans-serif;
  font-size: 28px;
  letter-spacing: 2.24px;
}
@media screen and (min-width: 835px) {
  .recruit__value__item__num span {
    font-size: 40px;
    letter-spacing: 3.2px;
  }
}
.recruit__value__item__title {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  font-size: 18px;
  font-weight: bold;
  line-height: 2;
  text-align: center;
  width: 100%;
}
@media screen and (min-width: 835px) {
  .recruit__value__item__title {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    font-size: 22px;
    width: auto;
    white-space: nowrap;
  }
}
.recruit__value__item__img {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  width: 220px;
  padding-top: 10px;
}
@media screen and (min-width: 835px) {
  .recruit__value__item__img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    width: 160px;
    padding-top: 0;
  }
}
.recruit__value__item__img img {
  display: block;
  width: 100%;
  height: 142px;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 8px;
}
@media screen and (min-width: 835px) {
  .recruit__value__item__img img {
    height: 104px;
  }
}
.recruit__value__item__text {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  font-size: 13px;
  line-height: 2;
  padding-top: 16px;
  width: 100%;
}
@media screen and (min-width: 835px) {
  .recruit__value__item__text {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    width: auto;
  }
}
.recruit__people {
  background-color: #fff;
  background-image: radial-gradient(rgba(0, 162, 217, .18) 7%, transparent 8%);
  background-size: 20px 20px;
  padding: 60px 0 80px;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .recruit__people {
    background-image: radial-gradient(circle, rgba(0, 162, 217, .29) 1px, transparent 2px);
    background-size: 40px 40px;
    padding: 120px 0 160px;
  }
}
.recruit__people__inner {
  padding: 0 20px;
}
@media screen and (min-width: 835px) {
  .recruit__people__inner {
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
  }
}
@media screen and (min-width: 835px) {
  .recruit__people__inner {
    max-width: 1280px;
  }
}
.recruit__people__eng {
  font-family: "Montserrat", sans-serif;
  font-size: 38px;
  letter-spacing: 3.04px;
  text-align: center;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .recruit__people__eng {
    font-size: 50px;
    letter-spacing: 4px;
  }
}
.recruit__people__title {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  padding-top: 10px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .recruit__people__title {
    font-size: 32px;
  }
}
.recruit__people__title .recruit__people__title__num {
  display: inline-block;
  width: auto;
  height: 25px;
  margin: 0 4px;
  vertical-align: -4px;
}
@media screen and (min-width: 835px) {
  .recruit__people__title .recruit__people__title__num {
    height: 53px;
    vertical-align: -8px;
  }
}
.recruit__people__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 60px;
  padding-top: 40px;
}
@media screen and (min-width: 835px) {
  .recruit__people__list {
    gap: 180px;
    max-width: 1200px;
    margin: auto;
    padding-top: 80px;
  }
}
.recruit__people__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-bottom: 60px;
  border-bottom: 1px solid #b8c5db;
}
.recruit__people__item:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
@media screen and (min-width: 835px) {
  .recruit__people__item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 100px;
    padding-bottom: 0;
    border-bottom: none;
  }
  .recruit__people__item:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.recruit__people__item__body {
  display: contents;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__body {
    display: block;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
  }
}
.recruit__people__item__img {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  width: 279px;
  margin: 16px auto 0;
  display: block;
  position: relative;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
  isolation: isolate;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    width: 500px;
    margin: 0;
  }
}
.recruit__people__item__img img:nth-of-type(1) {
  width: 321px;
  position: absolute;
  left: -41px;
  bottom: 18%;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__img img:nth-of-type(1) {
    width: 443px;
    left: -70px;
    bottom: 66px;
  }
}
.recruit__people__item__img img:nth-of-type(2) {
  width: 34px;
  position: absolute;
  left: 249px;
  top: 49px;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__img img:nth-of-type(2) {
    width: 60px;
    left: 445px;
    top: 87px;
  }
}
.recruit__people__item__img img:nth-of-type(3) {
  position: absolute;
  z-index: -1;
  width: 100%;
  left: 10px;
  top: 25px;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__img img:nth-of-type(3) {
    left: 30px;
    top: 40px;
  }
}
.recruit__people__item__line {
  -webkit-clip-path: circle(0% at 21% 0%);
          clip-path: circle(0% at 21% 0%);
}
.recruit__people__item__line.is-inview {
  -webkit-animation: recruitWaveDraw 1.6s cubic-bezier(0.33, 1, 0.68, 1) forwards;
          animation: recruitWaveDraw 1.6s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}
@media (prefers-reduced-motion: reduce) {
  .recruit__people__item__line {
    -webkit-animation: none;
            animation: none;
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.recruit__people__item__head {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 10px 0;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__head {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}
.recruit__people__item__num {
  position: absolute;
  left: 26px;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-family: "Montserrat", sans-serif;
  font-size: 28px;
  letter-spacing: 2.24px;
  color: #f78800;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__num {
    left: 16px;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    font-size: 48px;
    letter-spacing: 3.84px;
  }
}
.recruit__people__item__title {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
  padding-left: 16px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__title {
    font-size: 28px;
    line-height: 1.4;
  }
}
.recruit__people__item__deco img {
  position: absolute;
  width: 24px;
  height: auto;
}
.recruit__people__item__deco img:nth-of-type(1) {
  left: 0;
  top: 0;
}
.recruit__people__item__deco img:nth-of-type(2) {
  right: 0;
  top: 0;
  -webkit-transform: scaleY(-1) rotate(180deg);
          transform: scaleY(-1) rotate(180deg);
}
.recruit__people__item__deco img:nth-of-type(3) {
  right: 0;
  bottom: 0;
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}
.recruit__people__item__deco img:nth-of-type(4) {
  left: 0;
  bottom: 0;
  -webkit-transform: scaleY(-1);
          transform: scaleY(-1);
}
.recruit__people__item__dot {
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 10px;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__dot {
    width: 12px;
  }
}
.recruit__people__item__text {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  text-align: center;
  padding-top: 40px;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__text {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    text-align: left;
    padding-top: 40px;
  }
}
.recruit__people__item__text p {
  font-size: 13px;
  line-height: 2;
}
.recruit__people__item__text p + p {
  margin-top: 10px;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__text p {
    font-size: 15px;
  }
  .recruit__people__item__text p + p {
    margin-top: 20px;
  }
}
.recruit__people__item__text .recruit__lead {
  font-size: 20px;
  line-height: 1.6;
  color: #f78800;
  -webkit-text-fill-color: #f78800;
  background: none;
}
@media screen and (min-width: 835px) {
  .recruit__people__item__text .recruit__lead {
    font-size: 24px;
    line-height: 1.8;
  }
}
.recruit__skills {
  position: relative;
  z-index: 0;
  color: #fff;
  padding: 60px 0 80px;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .recruit__skills {
    padding: 80px 0 120px;
  }
}
.recruit__skills__inner {
  padding: 0 20px;
}
@media screen and (min-width: 835px) {
  .recruit__skills__inner {
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
  }
}
.recruit__skills__eng {
  font-family: "Montserrat", sans-serif;
  font-size: 28px;
  letter-spacing: 3.2px;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .recruit__skills__eng {
    font-size: 40px;
  }
}
.recruit__skills__title {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  text-shadow: 4px 4px 16px rgba(44, 82, 145, .8);
}
@media screen and (min-width: 835px) {
  .recruit__skills__title {
    font-size: 36px;
  }
}
.recruit__skills__text {
  font-size: 15px;
  line-height: 2;
  text-align: center;
  padding-top: 20px;
}
@media screen and (min-width: 835px) {
  .recruit__skills__text {
    padding-top: 30px;
  }
}
.recruit__skills__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  padding-top: 20px;
}
@media screen and (min-width: 835px) {
  .recruit__skills__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
.recruit__skills__item {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  min-width: 0;
  background: #fff;
  border: 1px solid #b8c5db;
  border-radius: 8px;
  padding: 24px 24px;
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur in="SourceAlpha" stdDeviation="8" /><feOffset dx="5" dy="5" result="offsetblur" /><feFlood flood-color="rgba(44,82,145,0.3)" /><feComposite in2="offsetblur" operator="in" /><feMerge><feMergeNode /><feMergeNode in="SourceGraphic" /></feMerge></filter></svg>#filter');
  -webkit-filter: drop-shadow(4px 4px 8px rgba(44, 82, 145, .3));
          filter: drop-shadow(4px 4px 8px rgba(44, 82, 145, .3));
}
@media screen and (min-width: 835px) {
  .recruit__skills__item {
    padding: 30px 40px;
  }
}
.recruit__skills__item__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: 16px;
  font-weight: bold;
  color: #3168ae;
}
@media screen and (min-width: 835px) {
  .recruit__skills__item__title {
    font-size: 18px;
  }
}
.recruit__skills__item__title img {
  display: block;
  width: 12px;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
.recruit__skills__item__text {
  font-size: 13px;
  line-height: 1.8;
  color: #1b345d;
  margin-top: 10px;
}
.recruit__skills__foot {
  font-size: 15px;
  line-height: 2;
  text-align: center;
  padding-top: 30px;
}
@media screen and (min-width: 835px) {
  .recruit__skills__foot {
    padding-top: 40px;
  }
}
.recruit__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 6px;
}
.recruit__head__eng {
  font-family: "Montserrat", sans-serif;
  font-size: 28px;
  letter-spacing: 2.88px;
  text-align: center;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .recruit__head__eng {
    font-size: 36px;
  }
}
.recruit__head__bar {
  display: block;
  width: 20px;
  height: 6px;
  border-radius: 20px;
  background: #f78800;
}
.recruit__head__title {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  padding-top: 10px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .recruit__head__title {
    font-size: 32px;
  }
}
.recruit__cols {
  margin-top: 30px;
}
@media screen and (min-width: 835px) {
  .recruit__cols {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 60px;
    margin-top: 40px;
  }
}
@media screen and (min-width: 835px) {
  .recruit__cols--reverse {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.recruit__cols__img {
  margin-left: -24px;
  margin-right: -24px;
  -webkit-box-flex: 0;
      -ms-flex: none;
          flex: none;
}
@media screen and (min-width: 835px) {
  .recruit__cols__img {
    margin-left: 0;
    margin-right: 0;
  }
}
@media screen and (min-width: 835px) {
  .recruit__cols__img {
    width: 500px;
  }
}
.recruit__cols__img img {
  display: block;
  width: 100%;
  height: 200px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 835px) {
  .recruit__cols__img img {
    height: 348px;
    border-radius: 8px;
    -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
            box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  }
}
.recruit__cols__body {
  margin-top: 40px;
}
@media screen and (min-width: 835px) {
  .recruit__cols__body {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
    margin-top: 0;
  }
}
.recruit__cols__body > p {
  font-size: 13px;
  line-height: 2;
}
@media screen and (min-width: 835px) {
  .recruit__cols__body > p {
    font-size: 15px;
  }
}
.recruit__cols__body > p + p {
  margin-top: 20px;
}
.recruit__subhead {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  border-left: 4px solid #3168ae;
  padding: 0 10px;
}
@media screen and (min-width: 835px) {
  .recruit__subhead {
    font-size: 26px;
  }
}
.recruit__ul {
  background: #fff;
  border: 1px solid #b8c5db;
  padding: 24px;
  margin: 24px auto 0;
  width: 300px;
}
@media screen and (min-width: 835px) {
  .recruit__ul {
    padding: 40px;
    margin-top: 40px;
    width: auto;
  }
}
.recruit__ul li {
  position: relative;
  font-size: 13px;
  line-height: 1.8;
  padding-left: 24px;
}
.recruit__ul li + li {
  margin-top: 12px;
}
.recruit__ul li:before {
  content: "";
  position: absolute;
  left: 10px;
  top: 8px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #3168ae;
}
.recruit__note {
  font-size: 14px;
  line-height: 2;
  text-align: center;
  padding-top: 20px;
}
@media screen and (min-width: 835px) {
  .recruit__note {
    font-size: 15px;
  }
}
.recruit__management {
  padding: 60px 0 80px;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .recruit__management {
    padding: 80px 0 120px;
  }
}
.recruit__management__inner {
  padding: 0 20px;
}
@media screen and (min-width: 835px) {
  .recruit__management__inner {
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
  }
}
.recruit__environment {
  background: #ecf3ff;
  padding: 60px 0 80px;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .recruit__environment {
    padding: 80px 0 120px;
  }
}
.recruit__environment__inner {
  padding: 0 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 835px) {
  .recruit__environment__inner {
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
  }
}
@media screen and (min-width: 835px) {
  .recruit__environment__inner {
    display: block;
  }
}
.recruit__environment .recruit__cols {
  display: contents;
}
@media screen and (min-width: 835px) {
  .recruit__environment .recruit__cols {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.recruit__environment .recruit__cols__img {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin-top: 30px;
}
@media screen and (min-width: 835px) {
  .recruit__environment .recruit__cols__img {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    margin-top: 0;
  }
}
.recruit__environment .recruit__cols__body {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
}
@media screen and (min-width: 835px) {
  .recruit__environment .recruit__cols__body {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
  }
}
.recruit__environment__lead {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  font-size: 13px;
  line-height: 2;
  text-align: center;
  padding-top: 20px;
}
@media screen and (min-width: 835px) {
  .recruit__environment__lead {
    -webkit-box-ordinal-group: 1;
        -ms-flex-order: 0;
            order: 0;
    font-size: 15px;
    padding-top: 30px;
  }
}
.recruit__workstyle {
  padding: 60px 0 80px;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .recruit__workstyle {
    padding: 80px 0 120px;
  }
}
.recruit__workstyle__inner {
  padding: 0 20px;
}
@media screen and (min-width: 835px) {
  .recruit__workstyle__inner {
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
  }
}
.recruit__message {
  background: #ecf3ff;
  padding: 60px 0 80px;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .recruit__message {
    padding: 80px 0 120px;
  }
}
.recruit__message__inner {
  padding: 0 20px;
}
@media screen and (min-width: 835px) {
  .recruit__message__inner {
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
  }
}
.recruit__message .cta__link {
  width: 100%;
  margin: 30px 0 0;
}
@media screen and (min-width: 835px) {
  .recruit__message .cta__link {
    width: auto;
    margin: 40px 0 0;
  }
}
@-webkit-keyframes recruitIntroLineDraw {
  from {
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
  }
  to {
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
@keyframes recruitIntroLineDraw {
  from {
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
  }
  to {
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
@-webkit-keyframes recruitGalleryScroll {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@keyframes recruitGalleryScroll {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
  }
}
@-webkit-keyframes recruitWaveDraw {
  from {
    -webkit-clip-path: circle(0% at 21% 0%);
            clip-path: circle(0% at 21% 0%);
  }
  to {
    -webkit-clip-path: circle(130% at 21% 0%);
            clip-path: circle(130% at 21% 0%);
  }
}
@keyframes recruitWaveDraw {
  from {
    -webkit-clip-path: circle(0% at 21% 0%);
            clip-path: circle(0% at 21% 0%);
  }
  to {
    -webkit-clip-path: circle(130% at 21% 0%);
            clip-path: circle(130% at 21% 0%);
  }
}
.service__intro {
  padding: 20px 0 40px;
  text-align: center;
  overflow: hidden;
}
.service__intro__title {
  display: inline-block;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 24px;
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .service__intro__title {
    font-size: 32px;
  }
}
.service__intro__title span {
  font-size: 34px;
  font-weight: bold;
  color: #f78800;
  -webkit-text-fill-color: #f78800;
  position: relative;
  top: 4px;
}
@media screen and (min-width: 835px) {
  .service__intro__title span {
    font-size: 72px;
    top: 8px;
  }
}
.service__desc {
  position: relative;
  z-index: 0;
  padding: 100px 16px 80px;
}
@media screen and (min-width: 835px) {
  .service__desc {
    padding: 250px 30px 120px;
  }
}
.service__desc__bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
}
.service__desc__bg::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-size: 60px 60px, 60px 60px, 100% 100%;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 375 571' preserveAspectRatio='none'%3E%3Cpath d='M10.0918 88.7246C92.3326 15.3406 188.3 -19.4378 224.44 11.0449C234.57 19.5886 238.923 32.3528 238.133 47.915C237.812 54.2447 244.436 59.5937 251.676 58.7353C274.777 55.9963 294.543 59.7418 307.779 70.9062C313.565 75.7867 317.752 81.789 320.424 88.6797C322.128 93.0752 326.952 96.1743 332.295 95.9687C354.352 95.1196 374.38 100.516 388.888 112.753C390.152 113.819 391.355 114.924 392.502 116.064H393.001V116.565C393.163 116.731 393.324 116.897 393.484 117.063H393.001V571.001H-17.999V117.063H-19C-10.0647 107.531 -0.348193 98.0403 10.0918 88.7246Z' fill='%23000'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 375 571' preserveAspectRatio='none'%3E%3Cpath d='M10.0918 88.7246C92.3326 15.3406 188.3 -19.4378 224.44 11.0449C234.57 19.5886 238.923 32.3528 238.133 47.915C237.812 54.2447 244.436 59.5937 251.676 58.7353C274.777 55.9963 294.543 59.7418 307.779 70.9062C313.565 75.7867 317.752 81.789 320.424 88.6797C322.128 93.0752 326.952 96.1743 332.295 95.9687C354.352 95.1196 374.38 100.516 388.888 112.753C390.152 113.819 391.355 114.924 392.502 116.064H393.001V116.565C393.163 116.731 393.324 116.897 393.484 117.063H393.001V571.001H-17.999V117.063H-19C-10.0647 107.531 -0.348193 98.0403 10.0918 88.7246Z' fill='%23000'/%3E%3C/svg%3E");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
@media screen and (min-width: 835px) {
  .service__desc__bg::before {
    background-size: 80px 80px, 80px 80px, 100% 100%;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1366 771' preserveAspectRatio='none'%3E%3Cpath d='M81.7393 233.365C360.871 41.1758 686.589 -49.9065 809.253 29.9268C843.632 52.3023 858.408 85.7287 855.727 126.485C854.636 143.063 877.121 157.072 901.692 154.824C980.099 147.651 1047.19 157.458 1092.11 186.697C1111.75 199.479 1125.96 215.201 1135.03 233.248C1140.81 244.76 1157.19 252.874 1175.32 252.336C1250.18 250.112 1318.16 264.247 1367.4 296.294C1371.5 298.967 1375.43 301.733 1379.17 304.583H1381.36V306.28C1381.91 306.713 1382.46 307.147 1383 307.583H1381.36V772H-13.6025V307.583H-17C-15.8713 306.654 -14.7386 305.725 -13.6025 304.796V304.583H-13.3418C15.9738 280.628 47.7248 256.785 81.7393 233.365Z' fill='%23000'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1366 771' preserveAspectRatio='none'%3E%3Cpath d='M81.7393 233.365C360.871 41.1758 686.589 -49.9065 809.253 29.9268C843.632 52.3023 858.408 85.7287 855.727 126.485C854.636 143.063 877.121 157.072 901.692 154.824C980.099 147.651 1047.19 157.458 1092.11 186.697C1111.75 199.479 1125.96 215.201 1135.03 233.248C1140.81 244.76 1157.19 252.874 1175.32 252.336C1250.18 250.112 1318.16 264.247 1367.4 296.294C1371.5 298.967 1375.43 301.733 1379.17 304.583H1381.36V306.28C1381.91 306.713 1382.46 307.147 1383 307.583H1381.36V772H-13.6025V307.583H-17C-15.8713 306.654 -14.7386 305.725 -13.6025 304.796V304.583H-13.3418C15.9738 280.628 47.7248 256.785 81.7393 233.365Z' fill='%23000'/%3E%3C/svg%3E");
  }
}
.service__desc__text {
  text-align: center;
  color: #fff;
  font-size: 16px;
  line-height: 1.8;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 835px) {
  .service__desc__text {
    font-size: 22px;
  }
}
.service__desc__text strong {
  background: #00a2d9;
}
.service__desc__eng {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-family: "Montserrat", sans-serif;
  font-size: 36px;
  line-height: 1;
  letter-spacing: 2.88px;
  margin: 40px 0 30px;
  text-shadow: 4px 4px 16px rgba(44, 82, 145, .8);
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 835px) {
  .service__desc__eng {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    font-size: 56px;
    letter-spacing: 4.48px;
  }
}
.service__desc__foot {
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  text-shadow: 0 2px 8px rgba(255, 255, 255, .4);
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 835px) {
  .service__desc__foot {
    font-size: 36px;
  }
}
.service__desc__line {
  position: absolute;
  width: 300px;
  left: -20px;
  top: 240px;
  opacity: 0.3;
}
@media screen and (min-width: 835px) {
  .service__desc__line {
    inset: 0;
    left: -300px;
    bottom: -200px;
    margin: auto;
    width: 600px;
  }
}
.service__strength {
  text-align: center;
  padding: 60px 24px 80px;
}
@media screen and (min-width: 835px) {
  .service__strength {
    padding: 100px 24px 160px;
  }
}
.service__strength__eng {
  display: inline-block;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 30px;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 1.12px;
}
@media screen and (min-width: 835px) {
  .service__strength__eng {
    font-size: 50px;
    letter-spacing: 4px;
  }
}
.service__strength__title {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.6;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  margin-top: 20px;
  display: inline-block;
}
@media screen and (min-width: 835px) {
  .service__strength__title {
    font-size: 32px;
    margin-top: 0;
  }
}
.service__strength__content {
  margin-top: 20px;
}
@media screen and (min-width: 835px) {
  .service__strength__content {
    max-width: 1140px;
    margin: 40px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 60px;
  }
}
.service__strength__content img {
  display: block;
  width: calc(100% + 48px);
  margin-left: -24px;
}
@media screen and (min-width: 835px) {
  .service__strength__content img {
    width: 500px;
    margin: 0;
  }
}
.service__strength__content p {
  text-align: left;
  font-size: 13px;
  line-height: 2;
  margin-top: 20px;
}
@media screen and (min-width: 835px) {
  .service__strength__content p {
    width: calc(100% - 560px);
    font-size: 15px;
    margin-top: 0;
  }
}
.service__flow {
  padding: 60px 0 80px;
  -webkit-box-shadow: 2px -8px 36px 0 rgba(44, 82, 145, .32);
          box-shadow: 2px -8px 36px 0 rgba(44, 82, 145, .32);
  position: relative;
  z-index: 0;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .service__flow {
    padding: 100px 0 160px;
  }
}
.service__flow__head {
  display: block;
}
@media screen and (min-width: 835px) {
  .service__flow__head {
    max-width: 550px;
    margin: auto;
  }
}
.service__flow__head img {
  width: 100%;
  display: block;
}
.service__flow__title {
  text-align: center;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .service__flow__title {
    font-size: 32px;
    margin-top: 10px;
  }
}
.service__flow__text {
  text-align: center;
  color: #fff;
  text-align: left;
  font-size: 13px;
  line-height: 2;
  margin-top: 20px;
}
@media screen and (min-width: 835px) {
  .service__flow__text {
    text-align: center;
    font-size: 15px;
    margin-top: 30px;
  }
}
.service__flow__inner {
  padding: 0 24px;
}
@media screen and (min-width: 835px) {
  .service__flow__inner {
    max-width: 1100px;
    margin: auto;
  }
}
.service__flow__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 40px;
  margin-top: 40px;
}
@media screen and (min-width: 835px) {
  .service__flow__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
@media screen and (min-width: 835px) {
  .service__flow__item {
    width: calc(33.33333% - 26.66667px);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .service__flow__item p {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
.service__flow__item h3 {
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  white-space: nowrap;
}
.service__flow__item p {
  border: 1px solid #b8c5db;
  border: 1px solid var(--border-gray, #b8c5db);
  background: rgba(255, 255, 255, .08);
  font-size: 13px;
  line-height: 1.8;
  color: #fff;
  padding: 20px;
  margin: 20px auto 0;
  width: 280px;
}
@media screen and (min-width: 835px) {
  .service__flow__item p {
    font-size: 15px;
    width: auto;
    line-height: 2;
    padding: 30px;
  }
}
.service__flow__foot {
  font-size: 16px;
  line-height: 1.6;
  font-weight: bold;
  color: #fff;
  text-align: center;
  margin-top: 30px;
}
@media screen and (min-width: 835px) {
  .service__flow__foot {
    font-size: 24px;
    margin-top: 40px;
  }
}
.service__region,
.service__region--blue {
  background-color: #fff;
  background-image: radial-gradient(rgba(0, 162, 217, .18) 7%, transparent 8%);
  background-size: 20px 20px;
  padding: 40px 0 60px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .service__region,
  .service__region--blue {
    background-image: radial-gradient(circle, rgba(0, 162, 217, .29) 1px, transparent 2px);
    background-size: 40px 40px;
    padding: 100px 0 120px;
  }
}
.service__region--blue {
  background-color: #ecf3ff;
}
.service__region--blue .service__region__overview {
  background: #d2dced;
}
.service__region__bnr {
  display: block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
  max-width: 300px;
  margin: 30px auto 0;
}
.service__region__bnr:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 835px) {
  .service__region__bnr {
    max-width: 460px;
  }
}
.service__region__bnr img {
  display: block;
  width: 100%;
}
.service__region__inner {
  padding: 0 24px;
}
@media screen and (min-width: 835px) {
  .service__region__inner {
    max-width: 1180px;
    margin: auto;
  }
}
.service__region__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 835px) {
  .service__region__title {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px;
  }
}
.service__region__title h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 835px) {
  .service__region__title h2 {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 10px;
  }
}
.service__region__title h2 span:nth-of-type(1) {
  font-family: "Montserrat", sans-serif;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 40px;
  letter-spacing: 3.2px;
  line-height: 1;
}
@media screen and (min-width: 835px) {
  .service__region__title h2 span:nth-of-type(1) {
    font-size: 70px;
    border-right: 2px solid #00a2d9;
    padding-right: 20px;
  }
}
.service__region__title h2 span:nth-of-type(2) {
  font-size: 32px;
  font-weight: bold;
  line-height: 1.4;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .service__region__title h2 span:nth-of-type(2) {
    font-size: 48px;
    padding-left: 10px;
  }
}
.service__region__title h2 span:nth-of-type(3) {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.4;
  color: #3168ae;
}
@media screen and (min-width: 835px) {
  .service__region__title h2 span:nth-of-type(3) {
    font-size: 28px;
  }
}
.service__region__title p {
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 18px;
  letter-spacing: 1.44px;
  font-family: "Montserrat", sans-serif;
}
@media screen and (min-width: 835px) {
  .service__region__title p {
    font-size: 24px;
  }
}
.service__region__line {
  position: absolute;
  width: 300px;
  left: -20px;
  bottom: -30px;
  z-index: 10;
}
@media screen and (min-width: 835px) {
  .service__region__line {
    width: 400px;
    left: -137px;
    bottom: -46px;
  }
}
.service__region__line,
.service__desc__line {
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
}
.service__region__line.is-inview,
.service__desc__line.is-inview {
  -webkit-animation: serviceRegionLineDraw 1.6s cubic-bezier(0.33, 1, 0.68, 1) forwards;
          animation: serviceRegionLineDraw 1.6s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}
@media (prefers-reduced-motion: reduce) {
  .service__region__line,
  .service__desc__line {
    -webkit-animation: none;
            animation: none;
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.service__region__content {
  margin-top: 20px;
}
@media screen and (min-width: 835px) {
  .service__region__content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 60px;
    margin-top: 40px;
  }
}
.service__region__content .service__region__content__img {
  position: relative;
  width: calc(100% + 48px);
  margin-left: -24px;
}
@media screen and (min-width: 835px) {
  .service__region__content .service__region__content__img {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
    width: 500px;
    margin: 0;
  }
}
.service__region__content picture img {
  width: 100%;
  display: block;
  aspect-ratio: 375/200;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 835px) {
  .service__region__content picture img {
    aspect-ratio: 480/334;
    border-radius: 8px;
  }
}
.service__region__content div {
  margin-top: 40px;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .service__region__content div {
    width: calc(100% - 560px);
    text-align: left;
    margin-top: 0;
  }
}
.service__region__content div h3 {
  font-size: 22px;
  font-weight: bold;
  line-height: 1.6;
  display: inline-block;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .service__region__content div h3 {
    font-size: 32px;
  }
}
.service__region__content div p {
  text-align: left;
  font-size: 13px;
  line-height: 2;
  margin-top: 20px;
}
@media screen and (min-width: 835px) {
  .service__region__content div p {
    font-size: 15px;
    line-height: 1.8;
  }
}
.service__region__overview {
  border-radius: 8px;
  background: #ecf3ff;
  padding: 40px 24px 30px 24px;
  position: relative;
  margin-top: 80px;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .service__region__overview {
    padding: 40px 30px 80px;
  }
}
.service__region__overview > img {
  width: 140px;
  position: absolute;
  right: -16px;
  top: -100px;
}
@media screen and (min-width: 835px) {
  .service__region__overview > img {
    width: 280px;
    right: -25px;
    top: -190px;
  }
}
.service__region__overview > h3 {
  display: inline-block;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  font-size: 28px;
  letter-spacing: 2.24px;
  font-family: "Montserrat", sans-serif;
}
.service__region__overview > ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  margin-top: 20px;
}
@media screen and (min-width: 835px) {
  .service__region__overview > ul {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 16px;
  }
}
.service__region__overview > ul.slick-initialized {
  display: block;
  margin: 20px -24px 0;
}
.service__region__overview > ul .slick-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.service__region__overview > ul .slick-slide {
  height: auto;
  margin: 0 5px;
}
.service__region__overview > ul .slick-slide > div,
.service__region__overview > ul .slick-slide > div > li {
  height: 100%;
}
.service__region__overview > ul li:not(.service__region__overview__point) {
  border-radius: 8px;
  border: 1px solid #b8c5db;
  border: 1px solid var(--border-gray, #b8c5db);
  background: #fff;
  padding: 20px;
  text-align: left;
}
@media screen and (min-width: 835px) {
  .service__region__overview > ul li:not(.service__region__overview__point) {
    width: calc(33.33333% - 13.33333px);
  }
}
.service__region__overview > ul li:not(.service__region__overview__point) h4 {
  font-size: 14px;
  font-weight: bold;
  color: #3168ae;
}
@media screen and (min-width: 835px) {
  .service__region__overview > ul li:not(.service__region__overview__point) h4 {
    font-size: 18px;
  }
}
.service__region__overview > ul li:not(.service__region__overview__point) p {
  font-size: 11px;
  line-height: 1.8;
  margin-top: 10px;
}
@media screen and (min-width: 835px) {
  .service__region__overview > ul li:not(.service__region__overview__point) p {
    font-size: 13px;
  }
}
.service__region__overview > ul li:not(.service__region__overview__point) .service__region__overview__points {
  margin-top: 10px;
}
.service__region__overview > ul li:not(.service__region__overview__point) .service__region__overview__point {
  position: relative;
  padding-left: 24px;
  font-size: 11px;
  line-height: 1.8;
}
@media screen and (min-width: 835px) {
  .service__region__overview > ul li:not(.service__region__overview__point) .service__region__overview__point {
    font-size: 13px;
  }
}
.service__region__overview > ul li:not(.service__region__overview__point) .service__region__overview__point:before {
  content: '';
  position: absolute;
  left: 10px;
  top: 7px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #3168ae;
}
@media screen and (min-width: 835px) {
  .service__region__overview > ul li:not(.service__region__overview__point) .service__region__overview__point:before {
    top: 9px;
  }
}
.service__region__overview__nav {
  display: none;
}
.service__region__overview > ul.slick-initialized + .service__region__overview__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  margin-top: 20px;
}
.service__region__overview > ul.slick-initialized + .service__region__overview__nav .achieve__dots {
  width: 104px;
}
.service__region__overview > ul.slick-initialized + .service__region__overview__nav .achieve__dots .slick-dots {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.service__region__overview__note {
  margin-top: 12px;
  padding-top: 12px;
  font-size: 9px !important;
  line-height: 1.8;
}
@media screen and (min-width: 835px) {
  .service__region__overview__note {
    font-size: 11px !important;
  }
}
.service__etc {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-top: 40px;
}
@media screen and (min-width: 835px) {
  .service__etc {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 60px;
  }
}
.service__etc__body {
  display: contents;
}
@media screen and (min-width: 835px) {
  .service__etc__body {
    display: block;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
  }
}
.service__etc__eng {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "Montserrat", sans-serif;
  font-size: 22px;
  letter-spacing: 1.76px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.service__etc__title {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 10px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.6;
  text-align: center;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .service__etc__title {
    margin-top: 20px;
    font-size: 26px;
    text-align: left;
  }
}
.service__etc__text {
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
  width: 100%;
  margin-top: 30px;
  font-size: 13px;
  line-height: 2;
}
.service__etc__text + .service__etc__text {
  margin-top: 20px;
}
@media screen and (min-width: 835px) {
  .service__etc__text {
    font-size: 15px;
    line-height: 1.8;
  }
}
.service__etc__foot {
  -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
          order: 5;
  width: 100%;
  margin-top: 30px;
  font-size: 13px;
  line-height: 2;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .service__etc__foot {
    margin-top: 20px;
    font-size: 15px;
    line-height: 1.8;
    text-align: left;
  }
}
.service__etc__flow {
  -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
          order: 4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 25px;
  margin-top: 30px;
}
@media screen and (min-width: 835px) {
  .service__etc__flow {
    -webkit-box-flex: 0;
        -ms-flex: none;
            flex: none;
  }
}
.service__etc__flow li {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 320px;
  max-width: 100%;
  height: 56px;
  border: 3px solid #00a2d9;
  border-radius: 8px;
  background: #fff;
  -webkit-box-shadow: 4px 4px 8px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 8px 0 rgba(44, 82, 145, .32);
  font-size: 16px;
  font-weight: bold;
  line-height: 1.8;
  color: #3168ae;
}
.service__etc__flow li:not(:last-child):after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -22px;
  width: 28px;
  height: 13px;
  background: url("../img/service/etc_arrow.svg") no-repeat center/contain;
  -webkit-transform: translateX(-50%) scaleY(-1);
          transform: translateX(-50%) scaleY(-1);
}
.service__cross {
  position: relative;
  z-index: 0;
  color: #fff;
  padding: 60px 24px 40px;
  -webkit-box-shadow: 0 -8px 15px rgba(44, 82, 145, .2);
          box-shadow: 0 -8px 15px rgba(44, 82, 145, .2);
}
@media screen and (min-width: 835px) {
  .service__cross {
    padding: 80px 0;
  }
}
.service__cross__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .service__cross__inner {
    max-width: 1200px;
    margin: auto;
    padding: 0 40px;
  }
}
.service__cross__dot {
  display: block;
  width: 10px;
}
@media screen and (min-width: 835px) {
  .service__cross__dot {
    width: 12px;
  }
}
.service__cross__eng {
  font-family: "Montserrat", sans-serif;
  font-size: 30px;
  letter-spacing: 2.4px;
}
@media screen and (min-width: 835px) {
  .service__cross__eng {
    font-size: 40px;
    letter-spacing: 3.2px;
  }
}
.service__cross__title {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  text-shadow: 4px 4px 16px rgba(44, 82, 145, .8);
}
@media screen and (min-width: 835px) {
  .service__cross__title {
    font-size: 36px;
    line-height: 1.6;
  }
}
.service__cross__text {
  margin-top: 30px;
  font-size: 13px;
  line-height: 2;
}
@media screen and (min-width: 835px) {
  .service__cross__text {
    font-size: 15px;
  }
}
.service__cross__lead {
  margin-top: 30px;
  font-size: 18px;
  font-weight: bold;
  line-height: 2;
}
@media screen and (min-width: 835px) {
  .service__cross__lead {
    margin-top: 10px;
    font-size: 24px;
  }
}
@media screen and (min-width: 835px) {
  .service__cross__text--after {
    margin-top: 10px;
  }
}
.service__cross__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 60px;
  width: 100%;
  margin-top: 40px;
  padding: 30px 24px;
  border-radius: 8px;
  background: #ecf3ff;
  color: #1b345d;
}
@media screen and (min-width: 835px) {
  .service__cross__box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    gap: 40px;
    padding: 60px 0;
  }
}
.service__cross__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
}
@media screen and (min-width: 835px) {
  .service__cross__item {
    width: 380px;
  }
}
.service__cross__item__eng {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-family: "Montserrat", sans-serif;
  font-size: 20px;
  letter-spacing: 1.6px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.service__cross__item__title {
  font-size: 18px;
  font-weight: bold;
  color: #3168ae;
}
@media screen and (min-width: 835px) {
  .service__cross__item__title {
    font-size: 24px;
  }
}
.service__cross__item__list {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  width: 100%;
  margin-top: 10px;
  padding: 20px;
  border: 2px solid #00a2d9;
  background: #fff;
  text-align: left;
  font-size: 13px;
  line-height: 1.8;
}
@media screen and (min-width: 835px) {
  .service__cross__item__list {
    border-width: 3px;
    font-size: 15px;
  }
}
#creative-movie .service__region__content img {
  -o-object-position: 57% 60%;
     object-position: 57% 60%;
}
@-webkit-keyframes serviceRegionLineDraw {
  from {
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
  }
  to {
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
@keyframes serviceRegionLineDraw {
  from {
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
  }
  to {
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
.single {
  padding: 20px 16px 60px;
  background: #fff;
}
@media screen and (min-width: 835px) {
  .single {
    width: 100%;
    padding: 40px 60px 80px 60px;
    border-radius: 10px;
    border: 2px solid rgba(184, 197, 219, .3);
    background: #fff;
    max-width: 860px;
    margin: 20px auto 0;
  }
}
.single__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 10px;
}
@media screen and (min-width: 835px) {
  .single__head {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.single__category {
  border-radius: 20px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  color: #fff;
  padding: 4px 20px;
  font-size: 12px;
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .single__category {
    font-size: 14px;
  }
}
.single__date {
  font-size: 11px;
  color: #78838a;
}
.single__title {
  font-size: 26px;
  font-weight: bold;
  line-height: 1.5;
  margin-top: 10px;
}
@media screen and (min-width: 835px) {
  .single__title {
    font-size: 28px;
    margin-top: 20px;
  }
}
.single__img {
  display: block;
  width: 100%;
  aspect-ratio: 1.5;
  margin-top: 10px;
}
@media screen and (min-width: 835px) {
  .single__img {
    max-width: 640px;
    height: 400px;
    margin: 20px auto 0;
  }
}
.single__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.single__content > .first {
  margin-top: 0;
}
.single__content span[style*="underline"] {
  text-decoration: none !important;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, rgba(247, 136, 0, .2)));
  background: linear-gradient(transparent 60%, rgba(247, 136, 0, .2) 60%);
  font-weight: bold;
}
.single__content > h2 {
  font-size: 18px;
  font-weight: bold;
  padding-bottom: 10px;
  margin-top: 50px;
  position: relative;
  line-height: 1.5;
}
@media screen and (min-width: 835px) {
  .single__content > h2 {
    font-size: 28px;
    margin-top: 80px;
  }
}
.single__content > h2:before {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 3px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
}
.single__content > h3 {
  font-size: 16px;
  font-weight: bold;
  padding: 8px 12px;
  margin-top: 40px;
  position: relative;
  border-radius: 8px;
  border-left: 6px solid #00a2d9;
  background: #ecf3ff;
  line-height: 1.5;
}
@media screen and (min-width: 835px) {
  .single__content > h3 {
    font-size: 22px;
    margin-top: 70px;
  }
}
.single__content > h4 {
  font-size: 16px;
  font-weight: bold;
  margin-top: 30px;
  position: relative;
  padding: 12px 20px;
}
@media screen and (min-width: 835px) {
  .single__content > h4 {
    font-size: 18px;
    margin-top: 40px;
  }
}
.single__content > h4:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 6px;
  height: 38px;
  border-radius: 4px;
  background: -webkit-gradient(linear, left top, left bottom, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(-180deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
}
.single__content > p {
  font-size: 13px;
  line-height: 1.8;
  margin-top: 20px;
  padding: 0 8px;
}
@media screen and (min-width: 835px) {
  .single__content > p {
    font-size: 15px;
    margin-top: 30px;
  }
}
.single__content > p > img {
  display: block;
  margin: 30px auto 0;
  width: 100%;
}
@media screen and (min-width: 835px) {
  .single__content > p > img {
    max-width: 600px;
    margin: 40px auto 0;
  }
}
.single__content > ul {
  margin-top: 30px;
}
@media screen and (min-width: 835px) {
  .single__content > ul {
    margin: 30px auto 0;
  }
}
.single__content > ul li {
  position: relative;
  font-size: 16px;
  font-weight: bold;
  padding-left: 24px;
  line-height: 1.8;
}
@media screen and (min-width: 835px) {
  .single__content > ul li {
    font-size: 18px;
  }
}
.single__content > ul li:not(:first-of-type) {
  margin-top: 12px;
}
.single__content > ul li:before {
  content: '';
  position: absolute;
  background: #3168ae;
  border-radius: 50%;
  left: 10px;
  top: 12px;
  width: 6px;
  height: 6px;
}
@media screen and (min-width: 835px) {
  .single__content > ul li:before {
    top: 14px;
  }
}
.single__content > ol {
  margin-top: 30px;
  counter-reset: item;
}
@media screen and (min-width: 835px) {
  .single__content > ol {
    margin: 30px auto 0;
  }
}
.single__content > ol li {
  position: relative;
  font-size: 13px;
  padding-left: 32px;
  line-height: 1.8;
}
@media screen and (min-width: 835px) {
  .single__content > ol li {
    font-size: 15px;
    padding-left: 38px;
  }
}
.single__content > ol li:not(:first-of-type) {
  margin-top: 12px;
}
.single__content > ol li:before {
  content: '';
  position: absolute;
  left: 8px;
  top: 4px;
  width: 16px;
  height: 16px;
  background: #3168ae;
}
@media screen and (min-width: 835px) {
  .single__content > ol li:before {
    width: 20px;
    height: 20px;
  }
}
.single__content > ol li:after {
  content: counter(item);
  counter-increment: item;
  position: absolute;
  left: 12.5px;
  top: 1px;
  font-size: 12px;
  font-weight: 400;
  color: #fff;
  z-index: 10;
}
@media screen and (min-width: 835px) {
  .single__content > ol li:after {
    top: 0px;
    left: 13px;
    font-size: 16px;
  }
}
.single__content strong {
  font-weight: bold;
}
.single__content u,
.single__content .marker {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(65%, transparent), color-stop(65%, #ffec49));
  background: linear-gradient(transparent 65%, #ffec49 65%);
  text-decoration: none;
  display: inline;
  font-weight: bold;
}
.single__content a {
  text-decoration: underline;
  font-size: 13px;
  color: #3168ae;
  display: inline-block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.single__content a:hover {
  opacity: 0.7;
}
@media screen and (min-width: 835px) {
  .single__content a {
    font-size: 15px;
  }
}
.single__content > figure > div {
  width: 100% !important;
}
.single__content > figure .wp-caption-text {
  text-align: center;
  margin-top: 10px;
}
.single__content > img {
  display: block;
  margin: 30px auto 0;
  width: 100%;
}
@media screen and (min-width: 835px) {
  .single__content > img {
    max-width: 600px;
    margin: 40px auto 0;
  }
}
.single__content > .wp-caption {
  width: 100% !important;
  text-align: center;
}
.single__content > .wp-caption p {
  margin-top: 10px;
}
.single__content table {
  width: 100%;
  margin-top: 24px;
  table-layout: fixed;
}
.single__content table th,
.single__content table td {
  border: 1px solid #ddd;
  text-align: center;
  vertical-align: middle;
}
.single__content table th {
  background: #ededf5;
  font-size: 12px;
  font-weight: bold;
  padding: 8px;
}
@media screen and (min-width: 835px) {
  .single__content table th {
    font-size: 14px;
  }
}
.single__content table td {
  font-size: 14px;
  font-weight: 400;
  padding: 12px 8px;
}
@media screen and (min-width: 835px) {
  .single__content table td {
    font-size: 16px;
  }
}
.single__content table.left th,
.single__content table.left td {
  text-align: left;
}
.single__content table.left th {
  width: 60px;
}
@media screen and (min-width: 835px) {
  .single__content table.left th {
    width: 160px;
  }
}
.single__content .wp-block-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.single__content .wp-block-button a {
  width: 300px;
  height: 60px;
  background: #3168ae;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  text-decoration: none;
  font-size: 14px;
  margin: 20px auto 0;
  border-radius: 8px;
}
@media screen and (min-width: 835px) {
  .single__content .wp-block-button a {
    width: 440px;
    height: 70px;
    font-size: 16px;
  }
}
.single__content .wp-block-button.is-style-orange a {
  background: #f78800;
}
.single__content .btn {
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  width: 320px;
  height: 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  font-size: 16px;
  line-height: 1.8;
  text-decoration: none;
}
.single__banner {
  margin-top: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
}
.single__banner a {
  max-width: 600px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.single__banner a:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.single__banner a img {
  width: 100%;
  display: block;
}
.single__tag {
  margin-top: 20px;
}
@media screen and (min-width: 835px) {
  .single__tag {
    margin-top: 40px;
  }
}
.single__tag__title {
  font-size: 14px;
  font-weight: bold;
}
.single__tag__title span {
  color: #00a2aa;
}
@media screen and (min-width: 835px) {
  .single__tag__title {
    font-size: 18px;
  }
}
.single__tag__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 10px;
  margin-top: 10px;
}
@media screen and (min-width: 835px) {
  .single__tag__list {
    margin-top: 16px;
  }
}
.single__tag__list a {
  border-radius: 4px;
  border: 1px solid #ddd;
  background: #fff;
  color: #00a2aa;
  font-size: 14px;
  letter-spacing: 0.01em;
  padding: 8px 10px;
  line-height: 1;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.single__tag__list a:hover {
  background: #00a2aa;
  color: #fff;
}
.single__foot {
  padding: 40px 24px 80px;
}
@media screen and (min-width: 835px) {
  .single__foot {
    padding: 60px 24px 160px;
  }
}
.single__foot a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-line-pack: center;
      align-content: center;
  font-size: 13px;
  color: #3168ae;
  gap: 10px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.single__foot a:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 835px) {
  .single__foot a {
    font-size: 16px;
  }
}
.single__foot a img {
  width: 15px;
}
@media screen and (min-width: 835px) {
  .slick__list {
    width: 70%;
  }
}
.slick__list--left {
  display: none;
}
@media screen and (min-width: 835px) {
  .slick__list--left {
    display: block;
    position: absolute;
    top: 0;
    left: 80px;
    width: 100%;
  }
  .slick__list--left .slick__item img {
    width: 140px;
    height: 250px;
    border-radius: 30px;
  }
}
.slick__list--left .slick__item {
  margin: 0;
}
.slick__item {
  -webkit-box-shadow: 0px 0px 10px 3px #ccc;
          box-shadow: 0px 0px 10px 3px #ccc;
  margin: 30px 20px;
  position: relative;
}
.slick__item img {
  width: 100%;
  height: 400px;
  -o-object-fit: cover;
     object-fit: cover;
}
@media screen and (min-width: 835px) {
  .slick__item img {
    height: 530px;
  }
}
@media screen and (min-width: 835px) and (max-width: 1024px) {
  .slick__item img {
    height: 400px;
  }
}
.slick__item__box {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 90%;
  padding: 25px 20px;
  background: rgba(0, 0, 0, .8);
  text-align: left;
}
.slick__item__ttl {
  color: #fff;
  font-size: 17px;
  font-weight: 500;
}
.slick__item__subttl {
  color: #fff;
  font-size: 11px;
  font-weight: 500;
}
.next-arrow {
  position: absolute;
  top: 45%;
  right: -10px;
  width: 60px;
  height: 60px;
  z-index: 10;
  cursor: pointer;
}
@media screen and (min-width: 835px) {
  .next-arrow {
    right: 30px;
  }
}
.next-arrow img {
  width: 100%;
}
.prev-arrow {
  position: absolute;
  top: 45%;
  left: -10px;
  width: 60px;
  height: 60px;
  z-index: 10;
  cursor: pointer;
}
.prev-arrow img {
  width: 100%;
}
@media screen and (min-width: 835px) {
  .slick-list {
    padding: 0 10% 0 0;
  }
}
.slick__list--left .slick-list {
  padding: 0;
}
.terminology__container,
.terminology__container--single {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
}
@media screen and (min-width: 835px) {
  .terminology__container,
  .terminology__container--single {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 40px;
    max-width: 1200px;
    margin: 20px auto 160px;
  }
}
.terminology__container .terminology__side__category,
.terminology__container--single .terminology__side__category {
  display: none;
}
@media screen and (min-width: 835px) {
  .terminology__container .terminology__side__category,
  .terminology__container--single .terminology__side__category {
    display: block;
  }
}
.terminology__container .news__side____banner,
.terminology__container--single .news__side____banner {
  display: none;
}
@media screen and (min-width: 835px) {
  .terminology__container .news__side____banner,
  .terminology__container--single .news__side____banner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
  }
}
.terminology__container--single {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (min-width: 835px) {
  .terminology__container--single {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .terminology__container--single .single {
    margin-top: 0;
  }
}
@media screen and (min-width: 835px) {
  .terminology__single__main {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    min-width: 0;
  }
}
.terminology__side {
  background: #ecf3ff;
  padding: 30px 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
}
@media screen and (min-width: 835px) {
  .terminology__side {
    padding: 20px 16px;
    width: 300px;
    border-radius: 8px;
  }
}
.terminology__search__form {
  position: relative;
  border: 1px solid #b8c5db;
  background: #fff;
  border-radius: 10px;
}
.terminology__search__form h2 {
  border-radius: 10px 10px 0 0;
  background: #00a2d9;
  color: #fff;
  font-size: 14px;
  text-align: center;
  padding: 6px 0;
}
.terminology__search__form div {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 58px;
  padding: 0 12px;
  gap: 12px;
}
.terminology__search__form div img {
  width: 24px;
}
.terminology__search__form div input {
  width: calc(100% - 24px);
  border: none;
  font-size: 16px;
  background: #fff;
}
.terminology__search__btn {
  border-radius: 8px;
  background: #00a2d9;
  background: var(--blue01, #00a2d9);
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  width: 280px;
  height: 58px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  font-size: 15px;
  color: #fff;
  font-weight: bold;
  margin: 20px auto 0;
}
@media screen and (min-width: 835px) {
  .terminology__search__btn {
    display: none;
  }
}
.terminology__search__btn img {
  width: 24px;
}
.terminology__side__category {
  position: relative;
  border: 1px solid #b8c5db;
  background: #fff;
  border-radius: 10px;
}
.terminology__side__category h2 {
  border-radius: 10px 10px 0 0;
  background: #00a2d9;
  color: #fff;
  font-size: 14px;
  text-align: center;
  padding: 6px 0;
}
.terminology__side__category ul li:last-of-type a {
  border-bottom: none;
  border-radius: 0 0 10px 10px;
}
.terminology__side__category ul li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  border-bottom: 1px solid #b8c5db;
  border-bottom: 1px solid var(--border-gray, #b8c5db);
  background: #fff;
  padding: 0 16px;
  height: 56px;
  color: #1b345d;
  font-size: 14px;
  font-weight: bold;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.terminology__side__category ul li a:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.terminology__side__category ul li a svg {
  color: #3168ae;
}
.terminology__content {
  padding: 60px 24px 80px;
}
@media screen and (min-width: 835px) {
  .terminology__content {
    width: calc(100% - 340px);
    padding: 0;
  }
}
.terminology__content__title {
  border-left: 6px solid #00a2d9;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  height: 58px;
  padding: 16px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  line-height: 1.5;
}
@media screen and (min-width: 835px) {
  .terminology__content__title {
    font-size: 24px;
  }
}
.terminology__content__title span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #f78800;
}
@media screen and (min-width: 835px) {
  .terminology__content__title span {
    width: 12px;
    height: 12px;
  }
}
.terminology__group {
  margin-top: 40px;
}
@media screen and (min-width: 835px) {
  .terminology__group {
    margin-top: 60px;
  }
}
.terminology__group__title {
  border-left: 4px solid #3168ae;
  border-left: 4px solid var(--blue03, #3168ae);
  padding: 0 10px;
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 20px;
}
@media screen and (min-width: 835px) {
  .terminology__group__title {
    font-size: 26px;
  }
}
.terminology__group__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 835px) {
  .terminology__group__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 10px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
@media screen and (min-width: 835px) {
  .terminology__group__item {
    width: calc(50% - 5px);
  }
}
.terminology__group__item a {
  border-radius: 8px;
  background: rgba(184, 197, 219, .3);
  padding: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 15px;
  font-weight: bold;
  color: #3168ae;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.terminology__group__item a:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.terminology__group__item a span {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #3168ae;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.terminology__group__item a span svg {
  color: #fff;
}
.terminology__terms {
  background: #ecf3ff;
  padding: 40px 24px;
}
@media screen and (min-width: 835px) {
  .terminology__terms {
    padding: 60px 24px 80px;
    margin-bottom: 80px;
  }
}
.terminology__terms__title {
  text-align: center;
  font-size: 22px;
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .terminology__terms__title {
    font-size: 32px;
  }
}
.terminology__terms__title small {
  font-size: 15px;
}
@media screen and (min-width: 835px) {
  .terminology__terms__title small {
    font-size: 20px;
  }
}
.terminology__terms__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  margin-top: 20px;
}
@media screen and (min-width: 835px) {
  .terminology__terms__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    gap: 10px;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    max-width: 860px;
    margin: 40px auto 0;
  }
}
@media screen and (min-width: 835px) {
  .terminology__terms__item {
    width: calc(50% - 5px);
  }
}
.terminology__terms__item a {
  padding: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 15px;
  font-weight: bold;
  color: #1b345d;
  background: #fff;
  border: 1px solid #b8c5db;
  border-radius: 8px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.terminology__terms__item a:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.terminology__terms__item a span {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #f78800;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.terminology__terms__item a span svg {
  color: #fff;
}
.terminology__terms__text {
  text-align: center;
  margin-top: 20px;
}
.terminology__modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 24px;
  opacity: 0;
  -webkit-transition: opacity 0.6s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.6s cubic-bezier(0.33, 1, 0.68, 1);
}
.terminology__modal.is-open {
  opacity: 1;
}
.terminology__modal[hidden] {
  display: none;
}
.terminology__modal__overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: rgba(27, 52, 93, .5);
}
.terminology__modal__panel {
  position: relative;
  width: 100%;
  max-width: 560px;
  max-height: 80vh;
  overflow-y: auto;
  padding: 32px 24px;
  border-radius: 12px;
  background: #fff;
}
.terminology__modal__close {
  position: absolute;
  top: 12px;
  right: 16px;
  border: 0;
  background: none;
  font-size: 40px;
  line-height: 1;
  color: #b8c5db;
  cursor: pointer;
}
@media (prefers-reduced-motion: reduce) {
  .terminology__modal {
    -webkit-transition: none;
    transition: none;
  }
}
.terminology__modal__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 18px;
  line-height: 1.5;
  font-weight: bold;
  gap: 10px;
}
.terminology__modal__title img {
  width: 20px;
}
.terminology__modal__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
  margin-top: 20px;
}
.terminology__modal__item a {
  border-left: 6px solid #00a2d9;
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #fff;
  padding: 0 16px;
  height: 56px;
  font-size: 14px;
  font-weight: bold;
}
.terminology__modal__item a span {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.terminology__modal__item a span svg {
  color: #3168ae;
}
.search__result__head {
  text-align: center;
  padding: 30px 0;
}
@media screen and (min-width: 835px) {
  .search__result__head {
    padding: 20px 0 40px;
  }
}
.search__result__head h1 {
  font-size: 24px;
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .search__result__head h1 {
    font-size: 40px;
  }
}
.search__result__head p {
  font-size: 13px;
  margin-top: 10px;
}
@media screen and (min-width: 835px) {
  .search__result__head p {
    font-size: 16px;
    margin-top: 30px;
  }
}
.search__result__content {
  background: #ecf3ff;
  padding: 40px 24px 80px;
}
@media screen and (min-width: 835px) {
  .search__result__content {
    padding: 60px 24px 160px;
  }
}
.search__back {
  text-align: center;
  margin-top: 60px;
}
.search__back a {
  color: #3168ae;
  text-decoration: underline;
  font-size: 16px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.search__back a:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.search__not span {
  font-size: 40px;
  font-weight: bold;
  text-align: center;
  display: block;
  line-height: 1;
}
@media screen and (min-width: 835px) {
  .search__not span {
    font-size: 70px;
  }
}
.search__not span small {
  font-size: 18px;
}
@media screen and (min-width: 835px) {
  .search__not span small {
    font-size: 20px;
  }
}
.search__not p {
  text-align: center;
  font-size: 16px;
  margin-top: 10px;
}
@media screen and (min-width: 835px) {
  .search__not p {
    font-size: 22px;
  }
}
.page__container--single {
  padding: 64px 0 0;
}
@media screen and (min-width: 835px) {
  .page__container--single {
    padding: 112px 0 0;
  }
}
.terminology__related {
  margin: 40px 0 60px;
  padding: 0 16px;
}
@media screen and (min-width: 835px) {
  .terminology__related {
    margin: 40px 24px 0;
    padding: 0;
  }
}
.terminology__related h2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 18px;
  font-weight: bold;
}
.terminology__related h2 span {
  font-size: 12px;
}
@media screen and (min-width: 835px) {
  .terminology__related h2 span {
    display: none;
  }
}
.terminology__related ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: scroll;
  gap: 10px;
  margin-top: 10px;
}
@media screen and (min-width: 835px) {
  .terminology__related ul {
    overflow: visible;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.terminology__related ul li a {
  border-radius: 8px;
  background: rgba(184, 197, 219, .3);
  padding: 16px;
  font-size: 14px;
  line-height: 1.5;
  font-weight: bold;
  color: #1b345d;
  white-space: nowrap;
  display: block;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  cursor: pointer;
}
.terminology__related ul li a:hover {
  opacity: 0.6;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.mv__container {
  padding: 90px 0 25px;
  position: relative;
  overflow: hidden;
  z-index: 0;
}
@media screen and (min-width: 835px) {
  .mv__container {
    padding: 212px 0 120px;
  }
}
.mv__anim {
  position: absolute;
  top: 12%;
  left: 52%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
  pointer-events: none;
}
@media screen and (min-width: 835px) {
  .mv__anim {
    top: 20%;
  }
}
@media screen and (min-width: 835px) {
  .mv__anim .logoAnim {
    width: 600px;
  }
}
.mv__content {
  z-index: 10;
  position: relative;
}
@media screen and (min-width: 835px) {
  .mv__content {
    max-width: 1140px;
    margin: auto;
  }
}
.mv__title {
  font-size: 36px;
  font-weight: bold;
  line-height: 1.4;
  position: relative;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  padding: 0 20px;
  text-shadow: 4px 4px 4px rgba(44, 82, 145, .16);
}
@media screen and (min-width: 835px) {
  .mv__title {
    font-size: 60px;
    padding-left: 0;
  }
}
.mv__foot {
  font-size: 11px;
  font-weight: bold;
  letter-spacing: -0.44px;
  padding-left: 20px;
  margin-top: 8px;
}
@media screen and (min-width: 835px) {
  .mv__foot {
    font-size: 15px;
    letter-spacing: 0;
    margin-top: 18px;
    padding-left: 0;
  }
}
.mv__text {
  font-size: 13px;
  font-weight: bold;
  padding-left: 8px;
  margin-top: 220px;
}
@media screen and (min-width: 835px) {
  .mv__text {
    font-size: 22px;
    margin-top: 18px;
    padding-left: 0;
  }
}
.mv__text span {
  color: #3168ae;
}
.mv__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 315px;
  height: 58px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
  border-radius: 8px;
  background: #f78800;
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  color: #fff;
  margin: 20px auto 0;
  font-size: 16px;
  text-shadow: 2px 2px 2px rgba(44, 82, 145, .3);
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .mv__btn {
    margin-left: 0;
    margin-top: 40px;
    width: 354px;
    font-size: 18px;
  }
}
.mv__img {
  position: absolute;
  width: 400px;
  height: 200px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  top: 215px;
}
@media screen and (min-width: 835px) {
  .mv__img {
    left: auto;
    right: max(5%, calc(50% - 615px));
    -webkit-transform: none;
            transform: none;
    top: 112px;
    height: calc(100% - 112px);
    width: 550px;
  }
}
.mv__img img {
  position: absolute;
}
.mv__img img:nth-of-type(1) {
  width: 54%;
  left: 0;
  bottom: 0;
}
@media screen and (min-width: 835px) {
  .mv__img img:nth-of-type(1) {
    width: 356px;
    bottom: auto;
    top: 0;
  }
}
.mv__img img:nth-of-type(2) {
  width: 44%;
  right: 0;
  bottom: 0;
}
@media screen and (min-width: 835px) {
  .mv__img img:nth-of-type(2) {
    width: 294px;
  }
}
.newslogo__container {
  padding: 20px 30px 20px;
}
@media screen and (min-width: 835px) {
  .newslogo__container {
    padding: 20px 30px 40px;
  }
}
.news__container {
  margin-top: 60px;
}
@media screen and (min-width: 835px) {
  .news__container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    max-width: 1100px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin: auto;
  }
}
.news__title {
  font-size: 14px;
  color: #3168ae;
  text-align: center;
  font-weight: bold;
}
@media screen and (min-width: 835px) {
  .news__title {
    width: 200px;
    font-size: 18px;
    text-align: left;
  }
}
.news__list {
  border-bottom: 1px solid #b8c5db;
  margin-top: 20px;
}
@media screen and (min-width: 835px) {
  .news__list {
    width: calc(100% - 200px);
  }
}
.news__item {
  display: block;
  color: #1b345d;
  border-top: 1px solid #b8c5db;
  padding: 20px 8px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .news__item {
    padding: 32px 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.news__item__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 835px) {
  .news__item__head {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    gap: 10px;
    width: 200px;
  }
}
.news__item__category {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 70px;
  padding: 4px;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  color: #fff;
  font-size: 10px;
}
.news__item__date {
  color: #78838a;
  font-size: 13px;
  font-family: "Montserrat", sans-serif;
  letter-spacing: 1.3px;
}
.news__item__title {
  font-size: 13px;
  margin-top: 10px;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
  overflow: hidden;
  color: #1b345d;
}
@media screen and (min-width: 835px) {
  .news__item__title {
    font-size: 15px;
    margin-top: 0;
    width: calc(100% - 84px);
    -webkit-line-clamp: 1;
  }
}
.logo__container {
  position: relative;
  padding-bottom: 30px;
}
@media screen and (min-width: 835px) {
  .logo__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 20px;
    max-width: 1050px;
    margin: auto;
  }
}
.logo__title {
  font-size: 12px;
  font-weight: bold;
  color: #78838a;
  text-align: center;
}
@media screen and (min-width: 835px) {
  .logo__title {
    font-size: 18px;
  }
}
.logo__note {
  text-align: center;
  font-size: 10px;
  color: #78838a;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (min-width: 835px) {
  .logo__note {
    position: relative;
    font-size: 12px;
    margin: 0;
  }
}
.logo__slider {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  margin-top: 10px;
  width: calc(100% + 60px);
  margin-left: -30px;
}
@media screen and (min-width: 835px) {
  .logo__slider {
    margin-top: 24px;
  }
}
.logo__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-animation: logoScroll 55s linear infinite;
          animation: logoScroll 55s linear infinite;
  will-change: transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.logo__list li {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  margin-right: 24px;
}
.logo__list img {
  display: block;
  width: auto;
  height: 72px;
}
.about__container {
  padding: 40px 16px 60px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .about__container {
    padding: 0;
    padding: 60px 16px 40px;
  }
}
@media screen and (min-width: 835px) {
  .about__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    max-width: 1100px;
    margin: auto;
  }
}
.about__text {
  font-size: 18px;
  line-height: 1.8;
  font-weight: bold;
  text-align: center;
}
.about__text .blue {
  color: #3168ae;
}
.about__text .orange {
  color: #f78800;
}
@media screen and (min-width: 835px) {
  .about__text {
    text-align: left;
    font-size: 26px;
  }
}
.about__img {
  margin: 20px auto 0;
  width: 300px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .about__img {
    width: 50%;
    margin: 0;
  }
}
.about__line {
  position: absolute;
  bottom: -40px;
  left: -50px;
  width: 280px;
  -webkit-clip-path: inset(0 100% 0 0);
          clip-path: inset(0 100% 0 0);
}
.about__line.is-inview {
  -webkit-animation: aboutLineDraw 1.6s cubic-bezier(0.33, 1, 0.68, 1) forwards;
          animation: aboutLineDraw 1.6s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}
@media screen and (min-width: 835px) {
  .about__line {
    width: 360px;
    left: -220px;
    bottom: 20px;
  }
}
@media (prefers-reduced-motion: reduce) {
  .about__line {
    -webkit-animation: none;
            animation: none;
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.assignment__container {
  position: relative;
  z-index: 0;
  isolation: isolate;
  padding: 100px 16px 80px;
}
.assignment__container > *:not(.assignment__bg) {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 835px) {
  .assignment__container {
    padding: 250px 30px 120px;
  }
}
.assignment__bg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
}
.assignment__bg::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background-size: 60px 60px, 60px 60px, 100% 100%;
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 375 571' preserveAspectRatio='none'%3E%3Cpath d='M10.0918 88.7246C92.3326 15.3406 188.3 -19.4378 224.44 11.0449C234.57 19.5886 238.923 32.3528 238.133 47.915C237.812 54.2447 244.436 59.5937 251.676 58.7353C274.777 55.9963 294.543 59.7418 307.779 70.9062C313.565 75.7867 317.752 81.789 320.424 88.6797C322.128 93.0752 326.952 96.1743 332.295 95.9687C354.352 95.1196 374.38 100.516 388.888 112.753C390.152 113.819 391.355 114.924 392.502 116.064H393.001V116.565C393.163 116.731 393.324 116.897 393.484 117.063H393.001V571.001H-17.999V117.063H-19C-10.0647 107.531 -0.348193 98.0403 10.0918 88.7246Z' fill='%23000'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 375 571' preserveAspectRatio='none'%3E%3Cpath d='M10.0918 88.7246C92.3326 15.3406 188.3 -19.4378 224.44 11.0449C234.57 19.5886 238.923 32.3528 238.133 47.915C237.812 54.2447 244.436 59.5937 251.676 58.7353C274.777 55.9963 294.543 59.7418 307.779 70.9062C313.565 75.7867 317.752 81.789 320.424 88.6797C322.128 93.0752 326.952 96.1743 332.295 95.9687C354.352 95.1196 374.38 100.516 388.888 112.753C390.152 113.819 391.355 114.924 392.502 116.064H393.001V116.565C393.163 116.731 393.324 116.897 393.484 117.063H393.001V571.001H-17.999V117.063H-19C-10.0647 107.531 -0.348193 98.0403 10.0918 88.7246Z' fill='%23000'/%3E%3C/svg%3E");
  -webkit-mask-size: 100% 100%;
  mask-size: 100% 100%;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
}
@media screen and (min-width: 835px) {
  .assignment__bg::before {
    background-size: 80px 80px, 80px 80px, 100% 100%;
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1366 771' preserveAspectRatio='none'%3E%3Cpath d='M81.7393 233.365C360.871 41.1758 686.589 -49.9065 809.253 29.9268C843.632 52.3023 858.408 85.7287 855.727 126.485C854.636 143.063 877.121 157.072 901.692 154.824C980.099 147.651 1047.19 157.458 1092.11 186.697C1111.75 199.479 1125.96 215.201 1135.03 233.248C1140.81 244.76 1157.19 252.874 1175.32 252.336C1250.18 250.112 1318.16 264.247 1367.4 296.294C1371.5 298.967 1375.43 301.733 1379.17 304.583H1381.36V306.28C1381.91 306.713 1382.46 307.147 1383 307.583H1381.36V772H-13.6025V307.583H-17C-15.8713 306.654 -14.7386 305.725 -13.6025 304.796V304.583H-13.3418C15.9738 280.628 47.7248 256.785 81.7393 233.365Z' fill='%23000'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1366 771' preserveAspectRatio='none'%3E%3Cpath d='M81.7393 233.365C360.871 41.1758 686.589 -49.9065 809.253 29.9268C843.632 52.3023 858.408 85.7287 855.727 126.485C854.636 143.063 877.121 157.072 901.692 154.824C980.099 147.651 1047.19 157.458 1092.11 186.697C1111.75 199.479 1125.96 215.201 1135.03 233.248C1140.81 244.76 1157.19 252.874 1175.32 252.336C1250.18 250.112 1318.16 264.247 1367.4 296.294C1371.5 298.967 1375.43 301.733 1379.17 304.583H1381.36V306.28C1381.91 306.713 1382.46 307.147 1383 307.583H1381.36V772H-13.6025V307.583H-17C-15.8713 306.654 -14.7386 305.725 -13.6025 304.796V304.583H-13.3418C15.9738 280.628 47.7248 256.785 81.7393 233.365Z' fill='%23000'/%3E%3C/svg%3E");
  }
}
.assignment__title {
  color: #fff;
  font-size: 18px;
}
@media screen and (min-width: 835px) {
  .assignment__title {
    font-size: 22px;
    text-align: center;
  }
}
.assignment__title strong {
  font-size: 22px;
  line-height: 1.8;
}
@media screen and (min-width: 835px) {
  .assignment__title strong {
    font-size: 40px;
  }
}
.assignment__title strong span {
  -webkit-text-emphasis: filled dot #f78800;
  text-emphasis: filled dot #f78800;
  -webkit-text-emphasis-position: over right;
  text-emphasis-position: over right;
}
.assignment__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 20px;
  margin-top: 30px;
}
@media screen and (min-width: 835px) {
  .assignment__list {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    max-width: 1100px;
    margin: 40px auto 0;
  }
}
@media screen and (min-width: 835px) {
  .assignment__item {
    width: calc(33.33333% - 18.66667px);
  }
}
.assignment__item a {
  padding: 12px 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 10px;
  border-radius: 8px;
  background: #fff;
  -webkit-box-shadow: 0 4px 8px 0 rgba(0, 0, 0, .3);
          box-shadow: 0 4px 8px 0 rgba(0, 0, 0, .3);
  position: relative;
}
@media screen and (min-width: 835px) {
  .assignment__item a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 20px 25px 30px;
    overflow: hidden;
  }
}
.assignment__item a > img {
  width: 50px;
  height: 50px;
}
@media screen and (min-width: 835px) {
  .assignment__item a > img {
    width: 120px;
    height: 120px;
  }
}
.assignment__item a > div ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 2px;
}
@media screen and (min-width: 835px) {
  .assignment__item a > div ul {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.assignment__item a > div ul li {
  border-radius: 20px;
  background: rgba(247, 136, 0, .16);
  color: #f78800;
  font-size: 11px;
  padding: 2px 10px;
}
@media screen and (min-width: 835px) {
  .assignment__item a > div ul li {
    font-size: 13px;
    padding: 2px 30px;
  }
}
.assignment__item a > div p {
  font-size: 14px;
  font-weight: bold;
  margin-top: 6px;
  color: #1b345d;
}
@media screen and (min-width: 835px) {
  .assignment__item a > div p {
    text-align: center;
    font-size: 18px;
    margin-top: 10px;
  }
}
.assignment__item a > div p span {
  color: #3168ae;
}
.assignment__item a > span {
  position: absolute;
  right: 0;
  width: 24px;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background: #f78800;
  border-radius: 0 8px 8px 0;
}
@media screen and (min-width: 835px) {
  .assignment__item a > span {
    top: auto;
    bottom: 0;
    width: 50px;
    height: 50px;
    border-radius: 0;
    -webkit-clip-path: polygon(100% 0, 100% 100%, 0 100%);
            clip-path: polygon(100% 0, 100% 100%, 0 100%);
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    padding: 0 12px 10px 0;
  }
}
.assignment__item a > span svg {
  color: #fff;
}
.service__container {
  background-color: #f3f4f5;
  background-image: radial-gradient(rgba(27, 52, 93, .12) 8%, transparent 9%);
  background-size: 20px 20px;
  padding: 60px 0 80px;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .service__container {
    padding: 120px 0 140px;
  }
}
.service__title {
  font-family: "Montserrat", sans-serif;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-align: center;
  font-size: 50px;
  letter-spacing: 4px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .service__title {
    font-size: 100px;
    letter-spacing: 8px;
  }
}
.service__title span:not(.u-chars__item) {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: -10px;
  width: 10px;
  height: 10px;
  background: #f78800;
  border-radius: 50%;
}
@media screen and (min-width: 835px) {
  .service__title span:not(.u-chars__item) {
    width: 12px;
    height: 12px;
  }
}
.service__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 10px;
}
.service__head > img {
  width: 48px;
  margin-right: 2px;
}
@media screen and (min-width: 835px) {
  .service__head > img {
    width: 66px;
  }
}
.service__head > div {
  font-size: 16px;
  color: #1b345d;
  text-align: center;
  font-weight: bold;
  padding-top: 10px;
}
@media screen and (min-width: 835px) {
  .service__head > div {
    font-size: 24px;
  }
}
.service__head > div > span {
  font-size: 22px;
}
@media screen and (min-width: 835px) {
  .service__head > div > span {
    font-size: 36px;
  }
}
.service__content {
  width: 340px;
  height: 385px;
  position: relative;
  margin: 20px auto 0;
}
@media screen and (min-width: 835px) {
  .service__content {
    width: 534px;
    height: 560px;
  }
}
.service__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-align: center;
  background-image: url("../img/top/service_item_bg.png");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  border-radius: 50%;
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  width: 120px;
  height: 120px;
  position: absolute;
  -webkit-transition: opacity 0.6s ease-out, -webkit-transform 0.8s cubic-bezier(0.34, 1.3, 0.64, 1);
  transition: opacity 0.6s ease-out, -webkit-transform 0.8s cubic-bezier(0.34, 1.3, 0.64, 1);
  transition: opacity 0.6s ease-out, transform 0.8s cubic-bezier(0.34, 1.3, 0.64, 1);
  transition: opacity 0.6s ease-out, transform 0.8s cubic-bezier(0.34, 1.3, 0.64, 1), -webkit-transform 0.8s cubic-bezier(0.34, 1.3, 0.64, 1);
}
@media screen and (min-width: 835px) {
  .service__item {
    width: 180px;
    height: 180px;
  }
}
.service__item.is-waiting {
  opacity: 0;
  -webkit-transform: scale(0.6);
          transform: scale(0.6);
}
.service__item > div {
  color: #1b345d;
  font-weight: bold;
  font-size: 12px;
}
@media screen and (min-width: 835px) {
  .service__item > div {
    font-size: 16px;
  }
}
.service__item > div span {
  color: #3168ae;
  font-size: 18px;
  margin-bottom: 4px;
  display: inline-block;
}
@media screen and (min-width: 835px) {
  .service__item > div span {
    margin-bottom: 6px;
    font-size: 32px;
  }
}
@media screen and (min-width: 835px) {
  .service__item.digital span {
    font-size: 24px;
  }
}
.service__item.design span {
  font-size: 15px;
  display: inline-block;
}
@media screen and (min-width: 835px) {
  .service__item.design span {
    font-size: 24px;
  }
}
.service__item.design span small {
  font-size: 10px;
}
@media screen and (min-width: 835px) {
  .service__item.design span small {
    font-size: 16px;
  }
}
.service__item:nth-of-type(1) {
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.service__item:nth-of-type(2) {
  left: auto;
  top: 18%;
  right: 0;
}
@media screen and (min-width: 835px) {
  .service__item:nth-of-type(2) {
    top: 17%;
  }
}
.service__item:nth-of-type(3) {
  left: 0;
  top: 18%;
  right: auto;
}
@media screen and (min-width: 835px) {
  .service__item:nth-of-type(3) {
    top: 17%;
  }
}
.service__item:nth-of-type(4) {
  left: auto;
  bottom: 18%;
  right: 0;
}
@media screen and (min-width: 835px) {
  .service__item:nth-of-type(4) {
    bottom: 17%;
  }
}
.service__item:nth-of-type(5) {
  left: 0;
  bottom: 18%;
  right: auto;
}
@media screen and (min-width: 835px) {
  .service__item:nth-of-type(5) {
    bottom: 17%;
  }
}
.service__item:nth-of-type(6) {
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
.service__logo {
  position: absolute;
  inset: 0;
  top: -10px;
  margin: auto;
  width: 85px;
}
@media screen and (min-width: 835px) {
  .service__logo {
    width: 137px;
  }
}
.service__main {
  position: relative;
}
.service__line {
  position: absolute;
  width: 400px;
  top: -10px;
  display: block;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}
@media screen and (min-width: 835px) {
  .service__line {
    width: 1400px;
    top: -20px;
  }
}
.service__line img {
  display: block;
  width: 100%;
}
.service__line canvas {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
  pointer-events: none;
}
.service__line.is-drawing img {
  visibility: hidden;
}
.service__line.is-preparing img {
  visibility: hidden;
}
.achieve__container {
  padding: 60px 0 80px;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .achieve__container {
    padding: 120px 30px 140px;
  }
}
.achieve__title {
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  color: #3168ae;
  position: relative;
}
@media screen and (min-width: 835px) {
  .achieve__title {
    font-size: 32px;
  }
}
.achieve__title span:not(.u-chars__item) {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: -18px;
  width: 10px;
  height: 10px;
  background: #f78800;
  border-radius: 50%;
}
@media screen and (min-width: 835px) {
  .achieve__title span:not(.u-chars__item) {
    top: -22px;
    width: 12px;
    height: 12px;
  }
}
.achieve__slider {
  margin-top: 30px;
}
@media screen and (min-width: 835px) {
  .achieve__slider {
    max-width: 900px;
    margin: 40px auto 0;
  }
}
.achieve__list .slick-list {
  padding: 10px;
  padding-bottom: 30px !important;
}
.achieve__list .slick-slide {
  height: auto;
}
.achieve__list .slick-slide > div {
  height: 100%;
}
@media screen and (min-width: 835px) {
  .achieve__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: 30px 20px;
  }
}
.achieve__item {
  margin: 0 8px;
  -webkit-transition: opacity 0.9s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.9s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.9s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.9s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.9s cubic-bezier(0.33, 1, 0.68, 1), transform 0.9s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.9s cubic-bezier(0.33, 1, 0.68, 1), transform 0.9s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 0.9s cubic-bezier(0.33, 1, 0.68, 1);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 0 0 18px;
  border: 2px solid #3b6fb6;
  border-radius: 8px;
  background: #fff;
  -webkit-box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
          box-shadow: 4px 4px 16px 0 rgba(44, 82, 145, .32);
  text-align: center;
  letter-spacing: 0;
  position: relative;
  overflow: hidden;
}
.achieve__item.is-waiting {
  opacity: 0;
  -webkit-transform: translateY(16px);
          transform: translateY(16px);
}
@media screen and (min-width: 835px) {
  .achieve__item {
    margin: 0;
    width: calc(25% - 15px);
  }
}
.achieve__item__icon {
  position: absolute;
  left: 50%;
  top: calc(50% + 9px);
  width: 120px;
  height: 120px;
  -o-object-fit: contain;
     object-fit: contain;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.achieve__item__label,
.achieve__item__body {
  position: relative;
}
.achieve__item__label {
  margin: -2px auto 20px;
  width: calc(100% - 26px);
  padding: 2px 10px;
  border-radius: 0 0 8px 8px;
  background: #3b6fb6;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  line-height: 17px;
  letter-spacing: 1.4px;
}
.achieve__item__num {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #3b6fb6;
  font-size: 16px;
  font-weight: bold;
  line-height: 19px;
}
.achieve__item__num strong {
  height: 93px;
  margin: -23px 0 -15px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-size: 64px;
  font-weight: 900;
  line-height: 93px;
  -webkit-font-feature-settings: "tnum";
          font-feature-settings: "tnum";
  font-variant-numeric: tabular-nums;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
.achieve__item__above,
.achieve__item__below {
  display: block;
  min-height: 19px;
}
.achieve__item__above {
  position: relative;
  top: -4px;
}
.achieve__item__note {
  margin-top: 10px;
  font-size: 12px;
  font-weight: 500;
  line-height: 14px;
  color: #78838a;
}
.achieve__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
}
@media screen and (min-width: 835px) {
  .achieve__nav {
    display: none;
  }
}
.achieve__arrow {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  width: 56px;
  height: 56px;
  border: 0;
  border-radius: 50%;
  background: linear-gradient(135deg, #00a2d9 0%, #3168ae 100%);
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
}
.achieve__arrow:disabled {
  opacity: 0.3;
  cursor: default;
}
.achieve__arrow svg {
  width: 16px;
  height: 16px;
}
.achieve__arrow--prev svg {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}
.achieve__dots .slick-dots {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 8px;
}
.achieve__dots .slick-dots li {
  width: 8px;
  height: 8px;
}
.achieve__dots .slick-dots li button {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #c3c9ce;
  text-indent: -9999px;
  overflow: hidden;
  cursor: pointer;
}
.achieve__dots .slick-dots li.slick-active button {
  background: #f78800;
}
.reason__container {
  position: relative;
  z-index: 0;
  padding: 60px 0 80px;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .reason__container {
    padding: 120px 0 160px;
  }
}
.reason__title {
  font-family: "Montserrat", sans-serif;
  color: #fff;
  text-align: center;
  font-size: 50px;
  letter-spacing: 4px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .reason__title {
    font-size: 100px;
    letter-spacing: 8px;
  }
}
.reason__title span:not(.u-chars__item) {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: -10px;
  width: 10px;
  height: 10px;
  background: #f78800;
  border-radius: 50%;
}
.reason__title em {
  font-size: 18px;
  color: #fff;
  font-weight: bold;
  display: block;
  letter-spacing: 0;
}
@media screen and (min-width: 835px) {
  .reason__title em {
    font-size: 24px;
  }
}
.reason__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 80px;
  max-width: 300px;
  margin: 40px auto 0;
}
@media screen and (min-width: 835px) {
  .reason__list {
    max-width: 1100px;
    margin: 40px auto 0;
    gap: 60px;
  }
}
.reason__item {
  position: relative;
}
@media screen and (min-width: 835px) {
  .reason__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    gap: 60px;
  }
  .reason__item:nth-of-type(even) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
.reason__item__img {
  width: 280px;
  margin: auto;
  display: block;
  position: absolute;
  z-index: 10;
  left: 0;
  right: 0;
  top: 45px;
}
@media screen and (min-width: 835px) {
  .reason__item__img {
    position: relative;
    top: 0;
    width: 500px;
    margin: 0;
  }
}
.reason__item__img img:nth-of-type(1) {
  width: 250px;
  position: absolute;
  left: -40px;
  top: 60px;
}
@media screen and (min-width: 835px) {
  .reason__item__img img:nth-of-type(1) {
    width: 442px;
    left: -30px;
  }
}
.reason__item__img img:nth-of-type(2) {
  width: 33px;
  position: absolute;
  top: 50px;
  right: 0;
}
@media screen and (min-width: 835px) {
  .reason__item__img img:nth-of-type(2) {
    width: 60px;
    right: 40px;
    top: 70px;
  }
}
.reason__item__img img:nth-of-type(3) {
  position: absolute;
  z-index: -1;
  width: 100%;
  top: 20px;
  left: 10px;
}
@media screen and (min-width: 835px) {
  .reason__item__img img:nth-of-type(3) {
    top: 40px;
    left: 30px;
  }
}
.reason__item__line {
  -webkit-clip-path: circle(0% at 21% 0%);
          clip-path: circle(0% at 21% 0%);
}
.reason__item__line.is-inview {
  -webkit-animation: reasonLineDraw 1.6s cubic-bezier(0.33, 1, 0.68, 1) forwards;
          animation: reasonLineDraw 1.6s cubic-bezier(0.33, 1, 0.68, 1) forwards;
}
@media (prefers-reduced-motion: reduce) {
  .reason__item__line {
    -webkit-animation: none;
            animation: none;
    -webkit-clip-path: none;
            clip-path: none;
  }
}
.reason__item__content {
  color: #fff;
}
@media screen and (min-width: 835px) {
  .reason__item__content {
    width: calc(100% - 530px);
  }
}
.reason__item__content h3 {
  font-size: 22px;
  font-weight: bold;
  text-align: center;
  text-shadow: 4px 4px 16px rgba(44, 82, 145, .8);
}
@media screen and (min-width: 835px) {
  .reason__item__content h3 {
    font-size: 32px;
    text-align: left;
  }
}
.reason__item__content p {
  font-size: 13px;
  line-height: 1.8;
  margin-top: 250px;
}
@media screen and (min-width: 835px) {
  .reason__item__content p {
    font-size: 16px;
    margin-top: 30px;
  }
}
.nav__container {
  background-color: #f3f4f5;
  background-image: radial-gradient(rgba(27, 52, 93, .12) 8%, transparent 9%);
  background-size: 20px 20px;
  padding: 60px 0 80px;
}
.nav__inner {
  padding: 0 24px;
}
.nav__main {
  display: block;
  max-width: 330px;
  margin: auto;
}
@media screen and (min-width: 835px) {
  .nav__main {
    max-width: 400px;
  }
}
.nav__main img {
  width: 100%;
  display: block;
}
.nav__sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  margin-top: 30px;
}
@media screen and (min-width: 835px) {
  .nav__sub {
    max-width: 1050px;
    margin: 30px auto 0;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
  }
}
.nav__sub a {
  border: 2px solid #3168ae;
  border-radius: 8px;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 58px;
  padding: 0 20px;
}
@media screen and (min-width: 835px) {
  .nav__sub a {
    width: calc(33.33333% - 6.66667px);
  }
}
.nav__sub a img {
  width: 30px;
}
.nav__sub a p {
  font-size: 16px;
  font-weight: bold;
  color: #3168ae;
}
.nav__sub a span {
  width: 24px;
  height: 24px;
  border-radius: 50%;
  background: #f78800;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
.nav__sub a span svg {
  color: #fff;
  width: 8px;
}
.cta__title {
  font-family: "Montserrat", sans-serif;
  color: #fff;
  text-align: center;
  font-size: 50px;
  letter-spacing: 4px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .cta__title {
    padding-left: 22px;
    font-size: 68px;
    letter-spacing: 5.44px;
    text-align: left;
    padding-top: 10px;
  }
}
.cta__title span:not(.u-chars__item) {
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: -10px;
  width: 10px;
  height: 10px;
  background: #f78800;
  border-radius: 50%;
}
@media screen and (min-width: 835px) {
  .cta__title span:not(.u-chars__item) {
    width: 12px;
    height: 12px;
    right: auto;
    left: -10px;
    top: 35px;
  }
}
.cta__title em {
  font-size: 13px;
  color: #fff;
  font-weight: bold;
  display: block;
  letter-spacing: 0;
}
@media screen and (min-width: 835px) {
  .cta__title em {
    font-size: 20px;
  }
}
.cta__container {
  padding: 60px 0;
  position: relative;
  z-index: 0;
  overflow: hidden;
}
@media screen and (min-width: 835px) {
  .cta__container {
    padding: 100px 0;
  }
}
.cta__anim {
  position: absolute;
  top: 50%;
  left: 65%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  z-index: -1;
  pointer-events: none;
  opacity: 0.1;
}
@media screen and (min-width: 835px) {
  .cta__anim {
    left: 30%;
    top: 55%;
  }
  .cta__anim .logoAnim {
    width: 600px;
  }
}
@media screen and (min-width: 835px) {
  .cta__inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    max-width: 1000px;
    margin: auto;
  }
}
@media screen and (min-width: 835px) {
  .cta__content {
    width: 450px;
  }
}
.cta__head {
  text-align: center;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  margin-top: 20px;
  line-height: 1.6;
}
@media screen and (min-width: 835px) {
  .cta__head {
    text-align: left;
    font-size: 26px;
  }
}
.cta__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 10px;
  margin: 20px auto 0;
  width: 335px;
}
@media screen and (min-width: 835px) {
  .cta__link {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    margin: 30px 0 0;
  }
}
.cta__link a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 68px;
  padding: 0 20px;
  border-radius: 8px;
  background: #fff;
  -webkit-box-shadow: 0 0 16px 0 rgba(255, 255, 255, .6);
          box-shadow: 0 0 16px 0 rgba(255, 255, 255, .6);
  gap: 10px;
  position: relative;
}
@media screen and (min-width: 835px) {
  .cta__link a {
    padding: 0 30px;
    width: 400px;
    height: 80px;
  }
}
.cta__link a img {
  width: 24px;
}
.cta__link a p {
  font-size: 16px;
  font-weight: bold;
  background: -webkit-gradient(linear, left top, right top, from(#00a2d9), color-stop(50%, #3b6fb6), to(#3168ae));
  background: linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%);
  background: var(--gradation01, linear-gradient(90deg, #00a2d9 0%, #3b6fb6 50%, #3168ae 100%));
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
@media screen and (min-width: 835px) {
  .cta__link a p {
    font-size: 20px;
  }
}
.cta__link a span {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #f78800;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  position: absolute;
  right: 16px;
  top: 0;
  bottom: 0;
  margin: auto;
}
.cta__link a span svg {
  color: #fff;
  width: 8px;
}
@-webkit-keyframes logoScroll {
  from {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
}
@keyframes logoScroll {
  from {
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
            transform: translate3d(-100%, 0, 0);
  }
}
@-webkit-keyframes aboutLineDraw {
  from {
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
  }
  to {
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
@keyframes aboutLineDraw {
  from {
    -webkit-clip-path: inset(0 100% 0 0);
            clip-path: inset(0 100% 0 0);
  }
  to {
    -webkit-clip-path: inset(0 0 0 0);
            clip-path: inset(0 0 0 0);
  }
}
@-webkit-keyframes reasonLineDraw {
  from {
    -webkit-clip-path: circle(0% at 21% 0%);
            clip-path: circle(0% at 21% 0%);
  }
  to {
    -webkit-clip-path: circle(130% at 21% 0%);
            clip-path: circle(130% at 21% 0%);
  }
}
@keyframes reasonLineDraw {
  from {
    -webkit-clip-path: circle(0% at 21% 0%);
            clip-path: circle(0% at 21% 0%);
  }
  to {
    -webkit-clip-path: circle(130% at 21% 0%);
            clip-path: circle(130% at 21% 0%);
  }
}
.u-fixedGrid {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: -1;
  pointer-events: none;
  -webkit-clip-path: inset(0);
          clip-path: inset(0);
}
.u-fixedGrid::before {
  content: '';
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-image: linear-gradient(rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .08) 1px, transparent 1px), linear-gradient(90deg, #00a2d9 0%, #3b6fb6 25%, #3168ae 50%, #3b6fb6 75%, #00a2d9 100%);
  background-size: 60px 60px, 60px 60px, 200% 100%;
  background-position: 0 0, 0 0, 0% 50%;
  -webkit-animation: fixedGridShift 8s ease-in-out infinite;
          animation: fixedGridShift 8s ease-in-out infinite;
}
@media screen and (min-width: 835px) {
  .u-fixedGrid::before {
    background-size: 80px 80px, 80px 80px, 200% 100%;
  }
}
@media (prefers-reduced-motion: reduce) {
  .u-fixedGrid::before {
    -webkit-animation: none;
            animation: none;
  }
}
@-webkit-keyframes fixedGridShift {
  0% {
    background-position: 0 0, 0 0, 0% 50%;
  }
  50% {
    background-position: 0 0, 0 0, 100% 50%;
  }
  100% {
    background-position: 0 0, 0 0, 0% 50%;
  }
}
@keyframes fixedGridShift {
  0% {
    background-position: 0 0, 0 0, 0% 50%;
  }
  50% {
    background-position: 0 0, 0 0, 100% 50%;
  }
  100% {
    background-position: 0 0, 0 0, 0% 50%;
  }
}
.js-float {
  translate: 0 0px;
  translate: 0 var(--float, 0px);
}
.assignment__item a {
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
.assignment__item a > img {
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.5s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.5s cubic-bezier(0.25, 1, 0.5, 1);
}
.assignment__item a > span svg {
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
@media (hover: hover) {
  .assignment__item a:hover {
    -webkit-transform: translateY(-6px);
            transform: translateY(-6px);
    -webkit-box-shadow: 0 12px 22px 0 rgba(0, 0, 0, .28);
            box-shadow: 0 12px 22px 0 rgba(0, 0, 0, .28);
  }
  .assignment__item a:hover > img {
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
  }
  .assignment__item a:hover > span svg {
    -webkit-transform: translateX(3px);
            transform: translateX(3px);
  }
}
.service__item {
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
@media (hover: hover) {
  .service__item:hover {
    -webkit-transform: scale(1.06);
            transform: scale(1.06);
    -webkit-box-shadow: 6px 6px 24px 0 rgba(44, 82, 145, .42);
            box-shadow: 6px 6px 24px 0 rgba(44, 82, 145, .42);
  }
}
.btn:not(.btn--plain)::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 0;
  height: 2px;
  background: #f78800;
  -webkit-transition: width 0.6s cubic-bezier(0.25, 1, 0.5, 1);
  transition: width 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.btn:not(.btn--plain) span {
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
@media (hover: hover) {
  .btn:not(.btn--plain):hover::after {
    width: 100%;
  }
  .btn:not(.btn--plain):hover span {
    -webkit-transform: translateX(5px);
            transform: translateX(5px);
  }
}
.btn--plain {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media (hover: hover) {
  .btn--plain:hover {
    opacity: 0.6;
  }
}
.mv__btn,
.header__pcmenu__consult,
.header__pcmenu__contact,
.present__number__btn {
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
@media (hover: hover) {
  .mv__btn:hover,
  .header__pcmenu__consult:hover,
  .header__pcmenu__contact:hover,
  .present__number__btn:hover {
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px);
    -webkit-box-shadow: 4px 10px 24px 0 rgba(44, 82, 145, .45);
            box-shadow: 4px 10px 24px 0 rgba(44, 82, 145, .45);
  }
}
.nav__main,
.nav__sub a,
.footer__banner a {
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
}
@media (hover: hover) {
  .nav__main:hover,
  .nav__sub a:hover,
  .footer__banner a:hover {
    opacity: 0.6;
  }
}
.cta__link a {
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
.cta__link a span {
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
@media (hover: hover) {
  .cta__link a:hover {
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px);
    -webkit-box-shadow: 0 10px 20px 0 rgba(44, 82, 145, .25);
            box-shadow: 0 10px 20px 0 rgba(44, 82, 145, .25);
  }
  .cta__link a:hover span {
    -webkit-transform: translateX(4px);
            transform: translateX(4px);
  }
}
.footer__nav__link,
.footer__nav__child li a,
.footer__copy a {
  -webkit-transition: color 0.3s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: color 0.3s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), color 0.3s;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), color 0.3s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
@media (hover: hover) {
  .footer__nav__link:hover,
  .footer__nav__child li a:hover,
  .footer__copy a:hover {
    color: #3168ae;
    -webkit-transform: translateX(6px);
            transform: translateX(6px);
  }
}
.news__item::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 0;
  height: 2px;
  background: #f78800;
  -webkit-transition: width 0.6s cubic-bezier(0.25, 1, 0.5, 1);
  transition: width 0.6s cubic-bezier(0.25, 1, 0.5, 1);
}
.news__item .news__item__head,
.news__item .news__item__title {
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
.news__item .news__item__title {
  -webkit-transition: color 0.3s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: color 0.3s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), color 0.3s;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), color 0.3s, -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
@media (hover: hover) {
  .news__item:hover::after {
    width: 100%;
  }
  .news__item:hover .news__item__head,
  .news__item:hover .news__item__title {
    -webkit-transform: translateX(8px);
            transform: translateX(8px);
  }
  .news__item:hover .news__item__title {
    color: #3168ae;
  }
}
.achieve__arrow {
  -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), -webkit-box-shadow 0.4s cubic-bezier(0.25, 1, 0.5, 1);
}
@media (hover: hover) {
  .achieve__arrow:not(:disabled):hover {
    -webkit-transform: scale(1.08);
            transform: scale(1.08);
    -webkit-box-shadow: 0 6px 16px 0 rgba(44, 82, 145, .35);
            box-shadow: 0 6px 16px 0 rgba(44, 82, 145, .35);
  }
}
.u-mt5 {
  margin-top: 5px;
}
.u-mt25--sp {
  margin-top: 25px;
}
@media screen and (min-width: 835px) {
  .u-mt25--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt25--pc {
    margin-top: 25px;
  }
}
.u-mb5 {
  margin-bottom: 5px;
}
.u-mr5 {
  margin-right: 5px;
}
.u-ml5 {
  margin-left: 5px;
}
.u-mt10 {
  margin-top: 10px;
}
.u-mt50--sp {
  margin-top: 50px;
}
@media screen and (min-width: 835px) {
  .u-mt50--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt50--pc {
    margin-top: 50px;
  }
}
.u-mb10 {
  margin-bottom: 10px;
}
.u-mr10 {
  margin-right: 10px;
}
.u-ml10 {
  margin-left: 10px;
}
.u-mt15 {
  margin-top: 15px;
}
.u-mt75--sp {
  margin-top: 75px;
}
@media screen and (min-width: 835px) {
  .u-mt75--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt75--pc {
    margin-top: 75px;
  }
}
.u-mb15 {
  margin-bottom: 15px;
}
.u-mr15 {
  margin-right: 15px;
}
.u-ml15 {
  margin-left: 15px;
}
.u-mt20 {
  margin-top: 20px;
}
.u-mt100--sp {
  margin-top: 100px;
}
@media screen and (min-width: 835px) {
  .u-mt100--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt100--pc {
    margin-top: 100px;
  }
}
.u-mb20 {
  margin-bottom: 20px;
}
.u-mr20 {
  margin-right: 20px;
}
.u-ml20 {
  margin-left: 20px;
}
.u-mt25 {
  margin-top: 25px;
}
.u-mt125--sp {
  margin-top: 125px;
}
@media screen and (min-width: 835px) {
  .u-mt125--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt125--pc {
    margin-top: 125px;
  }
}
.u-mb25 {
  margin-bottom: 25px;
}
.u-mr25 {
  margin-right: 25px;
}
.u-ml25 {
  margin-left: 25px;
}
.u-mt30 {
  margin-top: 30px;
}
.u-mt150--sp {
  margin-top: 150px;
}
@media screen and (min-width: 835px) {
  .u-mt150--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt150--pc {
    margin-top: 150px;
  }
}
.u-mb30 {
  margin-bottom: 30px;
}
.u-mr30 {
  margin-right: 30px;
}
.u-ml30 {
  margin-left: 30px;
}
.u-mt35 {
  margin-top: 35px;
}
.u-mt175--sp {
  margin-top: 175px;
}
@media screen and (min-width: 835px) {
  .u-mt175--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt175--pc {
    margin-top: 175px;
  }
}
.u-mb35 {
  margin-bottom: 35px;
}
.u-mr35 {
  margin-right: 35px;
}
.u-ml35 {
  margin-left: 35px;
}
.u-mt40 {
  margin-top: 40px;
}
.u-mt200--sp {
  margin-top: 200px;
}
@media screen and (min-width: 835px) {
  .u-mt200--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt200--pc {
    margin-top: 200px;
  }
}
.u-mb40 {
  margin-bottom: 40px;
}
.u-mr40 {
  margin-right: 40px;
}
.u-ml40 {
  margin-left: 40px;
}
.u-mt45 {
  margin-top: 45px;
}
.u-mt225--sp {
  margin-top: 225px;
}
@media screen and (min-width: 835px) {
  .u-mt225--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt225--pc {
    margin-top: 225px;
  }
}
.u-mb45 {
  margin-bottom: 45px;
}
.u-mr45 {
  margin-right: 45px;
}
.u-ml45 {
  margin-left: 45px;
}
.u-mt50 {
  margin-top: 50px;
}
.u-mt250--sp {
  margin-top: 250px;
}
@media screen and (min-width: 835px) {
  .u-mt250--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt250--pc {
    margin-top: 250px;
  }
}
.u-mb50 {
  margin-bottom: 50px;
}
.u-mr50 {
  margin-right: 50px;
}
.u-ml50 {
  margin-left: 50px;
}
.u-mt55 {
  margin-top: 55px;
}
.u-mt275--sp {
  margin-top: 275px;
}
@media screen and (min-width: 835px) {
  .u-mt275--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt275--pc {
    margin-top: 275px;
  }
}
.u-mb55 {
  margin-bottom: 55px;
}
.u-mr55 {
  margin-right: 55px;
}
.u-ml55 {
  margin-left: 55px;
}
.u-mt60 {
  margin-top: 60px;
}
.u-mt300--sp {
  margin-top: 300px;
}
@media screen and (min-width: 835px) {
  .u-mt300--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt300--pc {
    margin-top: 300px;
  }
}
.u-mb60 {
  margin-bottom: 60px;
}
.u-mr60 {
  margin-right: 60px;
}
.u-ml60 {
  margin-left: 60px;
}
.u-mt65 {
  margin-top: 65px;
}
.u-mt325--sp {
  margin-top: 325px;
}
@media screen and (min-width: 835px) {
  .u-mt325--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt325--pc {
    margin-top: 325px;
  }
}
.u-mb65 {
  margin-bottom: 65px;
}
.u-mr65 {
  margin-right: 65px;
}
.u-ml65 {
  margin-left: 65px;
}
.u-mt70 {
  margin-top: 70px;
}
.u-mt350--sp {
  margin-top: 350px;
}
@media screen and (min-width: 835px) {
  .u-mt350--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt350--pc {
    margin-top: 350px;
  }
}
.u-mb70 {
  margin-bottom: 70px;
}
.u-mr70 {
  margin-right: 70px;
}
.u-ml70 {
  margin-left: 70px;
}
.u-mt75 {
  margin-top: 75px;
}
.u-mt375--sp {
  margin-top: 375px;
}
@media screen and (min-width: 835px) {
  .u-mt375--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt375--pc {
    margin-top: 375px;
  }
}
.u-mb75 {
  margin-bottom: 75px;
}
.u-mr75 {
  margin-right: 75px;
}
.u-ml75 {
  margin-left: 75px;
}
.u-mt80 {
  margin-top: 80px;
}
.u-mt400--sp {
  margin-top: 400px;
}
@media screen and (min-width: 835px) {
  .u-mt400--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt400--pc {
    margin-top: 400px;
  }
}
.u-mb80 {
  margin-bottom: 80px;
}
.u-mr80 {
  margin-right: 80px;
}
.u-ml80 {
  margin-left: 80px;
}
.u-mt85 {
  margin-top: 85px;
}
.u-mt425--sp {
  margin-top: 425px;
}
@media screen and (min-width: 835px) {
  .u-mt425--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt425--pc {
    margin-top: 425px;
  }
}
.u-mb85 {
  margin-bottom: 85px;
}
.u-mr85 {
  margin-right: 85px;
}
.u-ml85 {
  margin-left: 85px;
}
.u-mt90 {
  margin-top: 90px;
}
.u-mt450--sp {
  margin-top: 450px;
}
@media screen and (min-width: 835px) {
  .u-mt450--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt450--pc {
    margin-top: 450px;
  }
}
.u-mb90 {
  margin-bottom: 90px;
}
.u-mr90 {
  margin-right: 90px;
}
.u-ml90 {
  margin-left: 90px;
}
.u-mt95 {
  margin-top: 95px;
}
.u-mt475--sp {
  margin-top: 475px;
}
@media screen and (min-width: 835px) {
  .u-mt475--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt475--pc {
    margin-top: 475px;
  }
}
.u-mb95 {
  margin-bottom: 95px;
}
.u-mr95 {
  margin-right: 95px;
}
.u-ml95 {
  margin-left: 95px;
}
.u-mt100 {
  margin-top: 100px;
}
.u-mt500--sp {
  margin-top: 500px;
}
@media screen and (min-width: 835px) {
  .u-mt500--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt500--pc {
    margin-top: 500px;
  }
}
.u-mb100 {
  margin-bottom: 100px;
}
.u-mr100 {
  margin-right: 100px;
}
.u-ml100 {
  margin-left: 100px;
}
.u-mt105 {
  margin-top: 105px;
}
.u-mt525--sp {
  margin-top: 525px;
}
@media screen and (min-width: 835px) {
  .u-mt525--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt525--pc {
    margin-top: 525px;
  }
}
.u-mb105 {
  margin-bottom: 105px;
}
.u-mr105 {
  margin-right: 105px;
}
.u-ml105 {
  margin-left: 105px;
}
.u-mt110 {
  margin-top: 110px;
}
.u-mt550--sp {
  margin-top: 550px;
}
@media screen and (min-width: 835px) {
  .u-mt550--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt550--pc {
    margin-top: 550px;
  }
}
.u-mb110 {
  margin-bottom: 110px;
}
.u-mr110 {
  margin-right: 110px;
}
.u-ml110 {
  margin-left: 110px;
}
.u-mt115 {
  margin-top: 115px;
}
.u-mt575--sp {
  margin-top: 575px;
}
@media screen and (min-width: 835px) {
  .u-mt575--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt575--pc {
    margin-top: 575px;
  }
}
.u-mb115 {
  margin-bottom: 115px;
}
.u-mr115 {
  margin-right: 115px;
}
.u-ml115 {
  margin-left: 115px;
}
.u-mt120 {
  margin-top: 120px;
}
.u-mt600--sp {
  margin-top: 600px;
}
@media screen and (min-width: 835px) {
  .u-mt600--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt600--pc {
    margin-top: 600px;
  }
}
.u-mb120 {
  margin-bottom: 120px;
}
.u-mr120 {
  margin-right: 120px;
}
.u-ml120 {
  margin-left: 120px;
}
.u-mt125 {
  margin-top: 125px;
}
.u-mt625--sp {
  margin-top: 625px;
}
@media screen and (min-width: 835px) {
  .u-mt625--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt625--pc {
    margin-top: 625px;
  }
}
.u-mb125 {
  margin-bottom: 125px;
}
.u-mr125 {
  margin-right: 125px;
}
.u-ml125 {
  margin-left: 125px;
}
.u-mt130 {
  margin-top: 130px;
}
.u-mt650--sp {
  margin-top: 650px;
}
@media screen and (min-width: 835px) {
  .u-mt650--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt650--pc {
    margin-top: 650px;
  }
}
.u-mb130 {
  margin-bottom: 130px;
}
.u-mr130 {
  margin-right: 130px;
}
.u-ml130 {
  margin-left: 130px;
}
.u-mt135 {
  margin-top: 135px;
}
.u-mt675--sp {
  margin-top: 675px;
}
@media screen and (min-width: 835px) {
  .u-mt675--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt675--pc {
    margin-top: 675px;
  }
}
.u-mb135 {
  margin-bottom: 135px;
}
.u-mr135 {
  margin-right: 135px;
}
.u-ml135 {
  margin-left: 135px;
}
.u-mt140 {
  margin-top: 140px;
}
.u-mt700--sp {
  margin-top: 700px;
}
@media screen and (min-width: 835px) {
  .u-mt700--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt700--pc {
    margin-top: 700px;
  }
}
.u-mb140 {
  margin-bottom: 140px;
}
.u-mr140 {
  margin-right: 140px;
}
.u-ml140 {
  margin-left: 140px;
}
.u-mt145 {
  margin-top: 145px;
}
.u-mt725--sp {
  margin-top: 725px;
}
@media screen and (min-width: 835px) {
  .u-mt725--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt725--pc {
    margin-top: 725px;
  }
}
.u-mb145 {
  margin-bottom: 145px;
}
.u-mr145 {
  margin-right: 145px;
}
.u-ml145 {
  margin-left: 145px;
}
.u-mt150 {
  margin-top: 150px;
}
.u-mt750--sp {
  margin-top: 750px;
}
@media screen and (min-width: 835px) {
  .u-mt750--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt750--pc {
    margin-top: 750px;
  }
}
.u-mb150 {
  margin-bottom: 150px;
}
.u-mr150 {
  margin-right: 150px;
}
.u-ml150 {
  margin-left: 150px;
}
.u-mt155 {
  margin-top: 155px;
}
.u-mt775--sp {
  margin-top: 775px;
}
@media screen and (min-width: 835px) {
  .u-mt775--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt775--pc {
    margin-top: 775px;
  }
}
.u-mb155 {
  margin-bottom: 155px;
}
.u-mr155 {
  margin-right: 155px;
}
.u-ml155 {
  margin-left: 155px;
}
.u-mt160 {
  margin-top: 160px;
}
.u-mt800--sp {
  margin-top: 800px;
}
@media screen and (min-width: 835px) {
  .u-mt800--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt800--pc {
    margin-top: 800px;
  }
}
.u-mb160 {
  margin-bottom: 160px;
}
.u-mr160 {
  margin-right: 160px;
}
.u-ml160 {
  margin-left: 160px;
}
.u-mt165 {
  margin-top: 165px;
}
.u-mt825--sp {
  margin-top: 825px;
}
@media screen and (min-width: 835px) {
  .u-mt825--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt825--pc {
    margin-top: 825px;
  }
}
.u-mb165 {
  margin-bottom: 165px;
}
.u-mr165 {
  margin-right: 165px;
}
.u-ml165 {
  margin-left: 165px;
}
.u-mt170 {
  margin-top: 170px;
}
.u-mt850--sp {
  margin-top: 850px;
}
@media screen and (min-width: 835px) {
  .u-mt850--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt850--pc {
    margin-top: 850px;
  }
}
.u-mb170 {
  margin-bottom: 170px;
}
.u-mr170 {
  margin-right: 170px;
}
.u-ml170 {
  margin-left: 170px;
}
.u-mt175 {
  margin-top: 175px;
}
.u-mt875--sp {
  margin-top: 875px;
}
@media screen and (min-width: 835px) {
  .u-mt875--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt875--pc {
    margin-top: 875px;
  }
}
.u-mb175 {
  margin-bottom: 175px;
}
.u-mr175 {
  margin-right: 175px;
}
.u-ml175 {
  margin-left: 175px;
}
.u-mt180 {
  margin-top: 180px;
}
.u-mt900--sp {
  margin-top: 900px;
}
@media screen and (min-width: 835px) {
  .u-mt900--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt900--pc {
    margin-top: 900px;
  }
}
.u-mb180 {
  margin-bottom: 180px;
}
.u-mr180 {
  margin-right: 180px;
}
.u-ml180 {
  margin-left: 180px;
}
.u-mt185 {
  margin-top: 185px;
}
.u-mt925--sp {
  margin-top: 925px;
}
@media screen and (min-width: 835px) {
  .u-mt925--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt925--pc {
    margin-top: 925px;
  }
}
.u-mb185 {
  margin-bottom: 185px;
}
.u-mr185 {
  margin-right: 185px;
}
.u-ml185 {
  margin-left: 185px;
}
.u-mt190 {
  margin-top: 190px;
}
.u-mt950--sp {
  margin-top: 950px;
}
@media screen and (min-width: 835px) {
  .u-mt950--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt950--pc {
    margin-top: 950px;
  }
}
.u-mb190 {
  margin-bottom: 190px;
}
.u-mr190 {
  margin-right: 190px;
}
.u-ml190 {
  margin-left: 190px;
}
.u-mt195 {
  margin-top: 195px;
}
.u-mt975--sp {
  margin-top: 975px;
}
@media screen and (min-width: 835px) {
  .u-mt975--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt975--pc {
    margin-top: 975px;
  }
}
.u-mb195 {
  margin-bottom: 195px;
}
.u-mr195 {
  margin-right: 195px;
}
.u-ml195 {
  margin-left: 195px;
}
.u-mt200 {
  margin-top: 200px;
}
.u-mt1000--sp {
  margin-top: 1000px;
}
@media screen and (min-width: 835px) {
  .u-mt1000--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1000--pc {
    margin-top: 1000px;
  }
}
.u-mb200 {
  margin-bottom: 200px;
}
.u-mr200 {
  margin-right: 200px;
}
.u-ml200 {
  margin-left: 200px;
}
.u-mt205 {
  margin-top: 205px;
}
.u-mt1025--sp {
  margin-top: 1025px;
}
@media screen and (min-width: 835px) {
  .u-mt1025--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1025--pc {
    margin-top: 1025px;
  }
}
.u-mb205 {
  margin-bottom: 205px;
}
.u-mr205 {
  margin-right: 205px;
}
.u-ml205 {
  margin-left: 205px;
}
.u-mt210 {
  margin-top: 210px;
}
.u-mt1050--sp {
  margin-top: 1050px;
}
@media screen and (min-width: 835px) {
  .u-mt1050--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1050--pc {
    margin-top: 1050px;
  }
}
.u-mb210 {
  margin-bottom: 210px;
}
.u-mr210 {
  margin-right: 210px;
}
.u-ml210 {
  margin-left: 210px;
}
.u-mt215 {
  margin-top: 215px;
}
.u-mt1075--sp {
  margin-top: 1075px;
}
@media screen and (min-width: 835px) {
  .u-mt1075--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1075--pc {
    margin-top: 1075px;
  }
}
.u-mb215 {
  margin-bottom: 215px;
}
.u-mr215 {
  margin-right: 215px;
}
.u-ml215 {
  margin-left: 215px;
}
.u-mt220 {
  margin-top: 220px;
}
.u-mt1100--sp {
  margin-top: 1100px;
}
@media screen and (min-width: 835px) {
  .u-mt1100--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1100--pc {
    margin-top: 1100px;
  }
}
.u-mb220 {
  margin-bottom: 220px;
}
.u-mr220 {
  margin-right: 220px;
}
.u-ml220 {
  margin-left: 220px;
}
.u-mt225 {
  margin-top: 225px;
}
.u-mt1125--sp {
  margin-top: 1125px;
}
@media screen and (min-width: 835px) {
  .u-mt1125--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1125--pc {
    margin-top: 1125px;
  }
}
.u-mb225 {
  margin-bottom: 225px;
}
.u-mr225 {
  margin-right: 225px;
}
.u-ml225 {
  margin-left: 225px;
}
.u-mt230 {
  margin-top: 230px;
}
.u-mt1150--sp {
  margin-top: 1150px;
}
@media screen and (min-width: 835px) {
  .u-mt1150--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1150--pc {
    margin-top: 1150px;
  }
}
.u-mb230 {
  margin-bottom: 230px;
}
.u-mr230 {
  margin-right: 230px;
}
.u-ml230 {
  margin-left: 230px;
}
.u-mt235 {
  margin-top: 235px;
}
.u-mt1175--sp {
  margin-top: 1175px;
}
@media screen and (min-width: 835px) {
  .u-mt1175--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1175--pc {
    margin-top: 1175px;
  }
}
.u-mb235 {
  margin-bottom: 235px;
}
.u-mr235 {
  margin-right: 235px;
}
.u-ml235 {
  margin-left: 235px;
}
.u-mt240 {
  margin-top: 240px;
}
.u-mt1200--sp {
  margin-top: 1200px;
}
@media screen and (min-width: 835px) {
  .u-mt1200--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1200--pc {
    margin-top: 1200px;
  }
}
.u-mb240 {
  margin-bottom: 240px;
}
.u-mr240 {
  margin-right: 240px;
}
.u-ml240 {
  margin-left: 240px;
}
.u-mt245 {
  margin-top: 245px;
}
.u-mt1225--sp {
  margin-top: 1225px;
}
@media screen and (min-width: 835px) {
  .u-mt1225--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1225--pc {
    margin-top: 1225px;
  }
}
.u-mb245 {
  margin-bottom: 245px;
}
.u-mr245 {
  margin-right: 245px;
}
.u-ml245 {
  margin-left: 245px;
}
.u-mt250 {
  margin-top: 250px;
}
.u-mt1250--sp {
  margin-top: 1250px;
}
@media screen and (min-width: 835px) {
  .u-mt1250--sp {
    display: none;
  }
}
@media screen and (min-width: 835px) {
  .u-mt1250--pc {
    margin-top: 1250px;
  }
}
.u-mb250 {
  margin-bottom: 250px;
}
.u-mr250 {
  margin-right: 250px;
}
.u-ml250 {
  margin-left: 250px;
}
.u-reveal {
  opacity: 0;
  -webkit-transition: opacity 1.3s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 1.3s cubic-bezier(0.33, 1, 0.68, 1);
}
.u-reveal:not(.u-reveal--fade) {
  -webkit-transform: translateY(32px);
          transform: translateY(32px);
  -webkit-transition: opacity 1.3s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 1.3s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 1.3s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 1.3s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 1.3s cubic-bezier(0.33, 1, 0.68, 1), transform 1.3s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 1.3s cubic-bezier(0.33, 1, 0.68, 1), transform 1.3s cubic-bezier(0.33, 1, 0.68, 1), -webkit-transform 1.3s cubic-bezier(0.33, 1, 0.68, 1);
}
.u-reveal.is-revealed {
  opacity: 1;
}
.u-reveal.is-revealed:not(.u-reveal--fade) {
  -webkit-transform: none;
          transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .u-reveal {
    opacity: 1;
    -webkit-transition: none;
    transition: none;
  }
  .u-reveal:not(.u-reveal--fade) {
    -webkit-transform: none;
            transform: none;
  }
}
.u-reveal.u-chars {
  opacity: 1;
  -webkit-transform: none;
          transform: none;
  -webkit-transition: none;
  transition: none;
}
.u-chars__item {
  display: inline-block;
  opacity: 0;
  -webkit-transform: translateY(100%);
          transform: translateY(100%);
  -webkit-transition: opacity 0.7s, -webkit-transform 0.95s cubic-bezier(0.33, 1, 0.68, 1);
  transition: opacity 0.7s, -webkit-transform 0.95s cubic-bezier(0.33, 1, 0.68, 1);
  transition: transform 0.95s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.7s;
  transition: transform 0.95s cubic-bezier(0.33, 1, 0.68, 1), opacity 0.7s, -webkit-transform 0.95s cubic-bezier(0.33, 1, 0.68, 1);
}
.u-chars.is-revealed .u-chars__item {
  opacity: 1;
  -webkit-transform: none;
          transform: none;
}
@media (prefers-reduced-motion: reduce) {
  .u-chars__item {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
    -webkit-transition: none;
    transition: none;
  }
}
html {
  scroll-behavior: smooth;
}
@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
[id] {
  scroll-margin-top: 80px;
}
@media screen and (min-width: 835px) {
  [id] {
    scroll-margin-top: 130px;
  }
}
.scroll-prevent {
  overflow: hidden;
}
.u-fs5 {
  font-size: 5px;
}
.u-fs10 {
  font-size: 10px;
}
.u-fs15 {
  font-size: 15px;
}
.u-fs20 {
  font-size: 20px;
}
.u-fs25 {
  font-size: 25px;
}
.u-fs30 {
  font-size: 30px;
}
.u-fs35 {
  font-size: 35px;
}
.u-fs40 {
  font-size: 40px;
}
.u-fs45 {
  font-size: 45px;
}
.u-fs50 {
  font-size: 50px;
}
.u-fs55 {
  font-size: 55px;
}
.u-fs60 {
  font-size: 60px;
}
.u-fs65 {
  font-size: 65px;
}
.u-fs70 {
  font-size: 70px;
}
.u-fs75 {
  font-size: 75px;
}
.u-fs80 {
  font-size: 80px;
}
.u-fs85 {
  font-size: 85px;
}
.u-fs90 {
  font-size: 90px;
}
.u-fs95 {
  font-size: 95px;
}
.u-fs100 {
  font-size: 100px;
}
.u-fs105 {
  font-size: 105px;
}
.u-fs110 {
  font-size: 110px;
}
.u-fs115 {
  font-size: 115px;
}
.u-fs120 {
  font-size: 120px;
}
.u-fs125 {
  font-size: 125px;
}
.u-fs130 {
  font-size: 130px;
}
.u-fs135 {
  font-size: 135px;
}
.u-fs140 {
  font-size: 140px;
}
.u-fs145 {
  font-size: 145px;
}
.u-fs150 {
  font-size: 150px;
}
.u-fs155 {
  font-size: 155px;
}
.u-fs160 {
  font-size: 160px;
}
.u-fs165 {
  font-size: 165px;
}
.u-fs170 {
  font-size: 170px;
}
.u-fs175 {
  font-size: 175px;
}
.u-fs180 {
  font-size: 180px;
}
.u-fs185 {
  font-size: 185px;
}
.u-fs190 {
  font-size: 190px;
}
.u-fs195 {
  font-size: 195px;
}
.u-fs200 {
  font-size: 200px;
}
.u-fs205 {
  font-size: 205px;
}
.u-fs210 {
  font-size: 210px;
}
.u-fs215 {
  font-size: 215px;
}
.u-fs220 {
  font-size: 220px;
}
.u-fs225 {
  font-size: 225px;
}
.u-fs230 {
  font-size: 230px;
}
.u-fs235 {
  font-size: 235px;
}
.u-fs240 {
  font-size: 240px;
}
.u-fs245 {
  font-size: 245px;
}
.u-fs250 {
  font-size: 250px;
}
.u-tac {
  text-align: center;
}
