@charset "UTF-8";
/* ================================================== */
/* z-indexメモ
/* ================================================== */
/*    1 … #g-nav-back, #g-nav #header-menu, #page-top
/*    2 … #g-nav #ham
/*    3 … .modal
/*    4 … .modal-close
/* ================================================== */
/* ================================================== */
/* 基本
/* ================================================== */
:root {
  --vw: 1vw;
  --vh: 1vh;
}

/* メディアクエリ */
/* フォント */
body {
  font-size: calc(var(--vw) * 3.74);
}
@media (min-width: 768px) {
  body {
    font-size: calc(var(--vw) * 2.08);
  }
}
@media (min-width: 1080px) {
  body {
    font-size: calc(var(--vw) * 1.48);
  }
}
@media (min-width: 1400px) {
  body {
    font-size: calc(var(--vw) * 0.94);
  }
}

h2 {
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.18em;
  line-height: 1.2;
  color: #0074FF;
  font-size: calc(var(--vw) * 8);
  margin-bottom: calc(var(--vw) * 10.67);
}
@media (min-width: 768px) {
  h2 {
    font-size: calc(var(--vw) * 4.69);
    margin-bottom: calc(var(--vw) * 6.51);
  }
}
@media (min-width: 1080px) {
  h2 {
    font-size: calc(var(--vw) * 3.7);
    margin-bottom: calc(var(--vw) * 6.02);
  }
}
@media (min-width: 1400px) {
  h2 {
    font-size: calc(var(--vw) * 2.08);
    margin-bottom: calc(var(--vw) * 4.17);
  }
}
h2 span {
  font-size: calc(var(--vw) * 3.2);
}
@media (min-width: 768px) {
  h2 span {
    font-size: calc(var(--vw) * 1.82);
  }
}
@media (min-width: 1080px) {
  h2 span {
    font-size: calc(var(--vw) * 1.3);
  }
}
@media (min-width: 1400px) {
  h2 span {
    font-size: calc(var(--vw) * 0.73);
  }
}

.note {
  font-size: smaller;
}

/* 背景 */
/* 影 */
/* 画像 */
img {
  max-width: 100%;
}

/* テーブル */
table {
  width: 100%;
}

/* 表示・非表示 */
.hidden-md {
  display: block;
}
@media (min-width: 768px) {
  .hidden-md {
    display: none;
  }
}

.visible-md {
  display: none;
}
@media (min-width: 768px) {
  .visible-md {
    display: block;
  }
}

.hidden-lg {
  display: block;
}
@media (min-width: 1080px) {
  .hidden-lg {
    display: none;
  }
}

.visible-lg {
  display: none;
}
@media (min-width: 1080px) {
  .visible-lg {
    display: block;
  }
}

.hidden-xl {
  display: block;
}
@media (min-width: 1400px) {
  .hidden-xl {
    display: none;
  }
}

.visible-xl {
  display: none;
}
@media (min-width: 1400px) {
  .visible-xl {
    display: block;
  }
}

/* body */
body {
  position: relative;
  width: 100%;
  color: #333;
  line-height: 1.8;
  overflow-x: hidden;
  font-family: "ヒラギノ角ゴ Pro", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "Hiragino Kaku Gothic ProN", "Noto Sans JP", sans-serif;
  background-image: url(../img/aozora-light.jpg);
  background-size: cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: bottom center;
}
body.fixed {
  position: fixed;
  overflow-y: scroll;
}

/* section */
section {
  padding: calc(var(--vw) * 13.33) 0;
}
@media (min-width: 768px) {
  section {
    padding: calc(var(--vw) * 7.81) 0;
  }
}
@media (min-width: 1080px) {
  section {
    padding: calc(var(--vw) * 7.41) 0;
  }
}
@media (min-width: 1400px) {
  section {
    padding: calc(var(--vw) * 5.21) 0;
  }
}
section:nth-child(even) {
  background-color: rgba(222, 248, 255, 0.8);
}

/* container */
.container {
  width: calc(var(--vw) * 89.33);
  margin: 0 auto;
}
@media (min-width: 768px) {
  .container {
    width: calc(var(--vw) * 92.19);
  }
}
@media (min-width: 1080px) {
  .container {
    width: calc(var(--vw) * 92.59);
  }
}
@media (min-width: 1400px) {
  .container {
    width: calc(var(--vw) * 70.83);
  }
}

/* 細いスクロールバー */
.scroll-area {
  padding-right: calc(var(--vw) * 4);
  overflow-y: auto;
}
@media (min-width: 768px) {
  .scroll-area {
    padding-right: calc(var(--vw) * 2.6);
  }
}
@media (min-width: 1080px) {
  .scroll-area {
    padding-right: calc(var(--vw) * 1.85);
  }
}
@media (min-width: 1400px) {
  .scroll-area {
    padding-right: calc(var(--vw) * 1.04);
  }
}
.scroll-area::-webkit-scrollbar {
  background: #DEF8FF;
  width: 10px;
  height: 10px;
  border-radius: 5px;
}
.scroll-area::-webkit-scrollbar-thumb {
  border: 2.5px solid #DEF8FF;
  background: #0074FF;
  border-radius: 5px;
}

/* モーダルウィンドウ */
.modal-open {
  cursor: pointer;
}

.modal-close {
  cursor: pointer;
  position: fixed;
  background: #0074FF;
  top: calc(var(--vw) * 5.33);
  right: calc(var(--vw) * 6.67 + 10px);
  width: calc(var(--vw) * 9.33);
  height: calc(var(--vw) * 9.33);
  border-radius: 2.13vw;
  z-index: 4;
  transition: 0.3s;
}
@media (min-width: 768px) {
  .modal-close {
    top: calc(var(--vw) * 3.91);
    right: calc(var(--vw) * 5.21 + 10px);
    width: calc(var(--vw) * 5.21);
    height: calc(var(--vw) * 5.21);
    border-radius: 1.3vw;
  }
}
@media (min-width: 1080px) {
  .modal-close {
    top: calc(var(--vw) * 3.7);
    right: calc(var(--vw) * 3.7 + 10px);
    width: calc(var(--vw) * 3.7);
    height: calc(var(--vw) * 3.7);
    border-radius: 0.93vw;
  }
}
@media (min-width: 1400px) {
  .modal-close {
    top: calc(var(--vw) * 2.6);
    right: calc(var(--vw) * 2.6 + 10px);
    width: calc(var(--vw) * 2.34);
    height: calc(var(--vw) * 2.34);
    border-radius: 0.52vw;
  }
}
.modal-close:hover {
  background: #36A7F6;
}
.modal-close svg {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  fill: #fff;
  width: calc(var(--vw) * 4);
  height: calc(var(--vw) * 4);
}
@media (min-width: 768px) {
  .modal-close svg {
    width: calc(var(--vw) * 2.34);
    height: calc(var(--vw) * 2.34);
  }
}
@media (min-width: 1080px) {
  .modal-close svg {
    width: calc(var(--vw) * 1.67);
    height: calc(var(--vw) * 1.67);
  }
}
@media (min-width: 1400px) {
  .modal-close svg {
    width: calc(var(--vw) * 1.04);
    height: calc(var(--vw) * 1.04);
  }
}

.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 3;
  display: none;
}
.modal-back {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.2);
}
.modal-container {
  position: relative;
  background: #fff;
  border-radius: 5.33vw;
  padding: calc(var(--vw) * 5.33) calc(var(--vw) * 2.67) calc(var(--vw) * 5.33) calc(var(--vw) * 5.33);
  width: calc(var(--vw) * 89.33);
  height: calc(var(--vh) * 90);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (min-width: 768px) {
  .modal-container {
    border-radius: 2.6vw;
    padding: calc(var(--vw) * 3.91) calc(var(--vw) * 2.6) calc(var(--vw) * 3.91) calc(var(--vw) * 3.91);
    width: calc(var(--vw) * 92.19);
  }
}
@media (min-width: 1080px) {
  .modal-container {
    border-radius: 1.85vw;
    padding: calc(var(--vw) * 3.7) calc(var(--vw) * 1.85) calc(var(--vw) * 3.7) calc(var(--vw) * 3.7);
    width: calc(var(--vw) * 92.59);
  }
}
@media (min-width: 1400px) {
  .modal-container {
    border-radius: 1.04vw;
    padding: calc(var(--vw) * 2.6) calc(var(--vw) * 1.56) calc(var(--vw) * 2.6) calc(var(--vw) * 2.6);
    width: calc(var(--vw) * 70.83);
  }
}
.modal-container .scroll-area {
  height: 100%;
}

/* ================================================== */
/* ヘッダー
/* ================================================== */
/* トップに戻るボタン */
#page-top {
  position: fixed;
  bottom: calc(var(--vw) * 4);
  right: calc(var(--vw) * 4);
  visibility: hidden;
  opacity: 0;
  transition: 0.2s;
  z-index: 1;
}
@media (min-width: 768px) {
  #page-top {
    bottom: calc(var(--vw) * 2.6);
    right: calc(var(--vw) * 2.6);
  }
}
@media (min-width: 1080px) {
  #page-top {
    bottom: calc(var(--vw) * 1.85);
    right: calc(var(--vw) * 1.85);
  }
}
@media (min-width: 1400px) {
  #page-top {
    bottom: calc(var(--vw) * 2.08);
    right: calc(var(--vw) * 2.08);
  }
}
#page-top.visible {
  visibility: visible;
  opacity: 1;
  transition: 0.2s;
}
#page-top a {
  transition: 0.3s;
}
#page-top a:hover {
  opacity: 0.6;
}
#page-top img {
  width: calc(var(--vw) * 13.33);
  height: calc(var(--vw) * 13.33);
  filter: drop-shadow(1.33vw 1.33vw 0.8vw rgba(0, 0, 0, 0.05));
}
@media (min-width: 768px) {
  #page-top img {
    filter: drop-shadow(0.65vw 0.65vw 0.39vw rgba(0, 0, 0, 0.05));
  }
}
@media (min-width: 1080px) {
  #page-top img {
    filter: drop-shadow(0.46vw 0.46vw 0.28vw rgba(0, 0, 0, 0.05));
  }
}
@media (min-width: 1400px) {
  #page-top img {
    filter: drop-shadow(0.26vw 0.26vw 0.16vw rgba(0, 0, 0, 0.05));
  }
}
@media (min-width: 768px) {
  #page-top img {
    width: calc(var(--vw) * 9.11);
    height: calc(var(--vw) * 9.11);
  }
}
@media (min-width: 1080px) {
  #page-top img {
    width: calc(var(--vw) * 6.48);
    height: calc(var(--vw) * 6.48);
  }
}
@media (min-width: 1400px) {
  #page-top img {
    width: calc(var(--vw) * 4.17);
    height: calc(var(--vw) * 4.17);
  }
}

/* グローバルナビゲーション */
#g-nav #ham {
  position: fixed;
  top: 0;
  right: 0;
  cursor: pointer;
  background: #fff;
  width: calc(var(--vw) * 13.33);
  height: calc(var(--vw) * 13.33);
  border-radius: 0 0 0 2.67vw;
  transition: 0.3s;
  z-index: 2;
  box-shadow: 1.33vw 1.33vw 0.8vw rgba(0, 0, 0, 0.05);
}
@media (min-width: 768px) {
  #g-nav #ham {
    box-shadow: 0.65vw 0.65vw 0.39vw rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 1080px) {
  #g-nav #ham {
    box-shadow: 0.46vw 0.46vw 0.28vw rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 1400px) {
  #g-nav #ham {
    box-shadow: 0.26vw 0.26vw 0.16vw rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 768px) {
  #g-nav #ham {
    width: calc(var(--vw) * 10.42);
    height: calc(var(--vw) * 10.42);
    border-radius: 0 0 0 1.3vw;
  }
}
@media (min-width: 1080px) {
  #g-nav #ham {
    width: calc(var(--vw) * 7.41);
    height: calc(var(--vw) * 7.41);
    border-radius: 0 0 0 0.93vw;
  }
}
@media (min-width: 1400px) {
  #g-nav #ham {
    width: calc(var(--vw) * 5.21);
    height: calc(var(--vw) * 5.21);
    border-radius: 0 0 0 0.52vw;
  }
}
#g-nav #ham div {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--vw) * 1.2);
  width: calc(var(--vw) * 4.67);
}
@media (min-width: 768px) {
  #g-nav #ham div {
    gap: calc(var(--vw) * 0.91);
    width: calc(var(--vw) * 3.64);
  }
}
@media (min-width: 1080px) {
  #g-nav #ham div {
    gap: calc(var(--vw) * 0.65);
    width: calc(var(--vw) * 2.59);
  }
}
@media (min-width: 1400px) {
  #g-nav #ham div {
    gap: calc(var(--vw) * 0.47);
    width: calc(var(--vw) * 1.82);
  }
}
#g-nav #ham div span {
  position: relative;
  width: 100%;
  background: #43B7F9;
  transition: 0.3s;
  height: calc(var(--vw) * 0.4);
}
@media (min-width: 768px) {
  #g-nav #ham div span {
    height: calc(var(--vw) * 0.26042);
  }
}
@media (min-width: 1080px) {
  #g-nav #ham div span {
    height: calc(var(--vw) * 0.18518);
  }
}
@media (min-width: 1400px) {
  #g-nav #ham div span {
    height: calc(var(--vw) * 0.15625);
  }
}
#g-nav #ham div span:nth-child(2) {
  opacity: 1;
  right: 0;
}
#g-nav #ham.close {
  box-shadow: none;
  transition: 0.3s;
}
#g-nav #ham.close div span:first-child {
  transform: rotate(45deg) translate(calc(var(--vw) * 1.05), calc(var(--vw) * 1.05));
  transform-origin: center bottom;
}
@media (min-width: 768px) {
  #g-nav #ham.close div span:first-child {
    transform: rotate(45deg) translate(calc(var(--vw) * 0.78), calc(var(--vw) * 0.78));
  }
}
@media (min-width: 1080px) {
  #g-nav #ham.close div span:first-child {
    transform: rotate(45deg) translate(calc(var(--vw) * 0.58), calc(var(--vw) * 0.58));
  }
}
@media (min-width: 1400px) {
  #g-nav #ham.close div span:first-child {
    transform: rotate(45deg) translate(calc(var(--vw) * 0.4), calc(var(--vw) * 0.4));
  }
}
#g-nav #ham.close div span:nth-child(2) {
  opacity: 0;
  right: -5.5vw;
  transition: 0.3s;
}
@media (min-width: 768px) {
  #g-nav #ham.close div span:nth-child(2) {
    right: -2.6vw;
  }
}
@media (min-width: 1080px) {
  #g-nav #ham.close div span:nth-child(2) {
    right: -2vw;
  }
}
@media (min-width: 1400px) {
  #g-nav #ham.close div span:nth-child(2) {
    right: -1vw;
  }
}
#g-nav #ham.close div span:last-child {
  transform: rotate(-45deg) translate(calc(var(--vw) * 1.05), calc(var(--vw) * -1.05));
  transform-origin: center top;
}
@media (min-width: 768px) {
  #g-nav #ham.close div span:last-child {
    transform: rotate(-45deg) translate(calc(var(--vw) * 0.78), calc(var(--vw) * -0.78));
  }
}
@media (min-width: 1080px) {
  #g-nav #ham.close div span:last-child {
    transform: rotate(-45deg) translate(calc(var(--vw) * 0.58), calc(var(--vw) * -0.58));
  }
}
@media (min-width: 1400px) {
  #g-nav #ham.close div span:last-child {
    transform: rotate(-45deg) translate(calc(var(--vw) * 0.4), calc(var(--vw) * -0.4));
  }
}
#g-nav-back {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
}
#g-nav #header-menu {
  position: fixed;
  background: #fff;
  top: 0;
  right: calc(var(--vw) * -76);
  width: calc(var(--vw) * 76);
  max-height: calc(var(--vh) * 100);
  padding: calc(var(--vw) * 13.33) calc(var(--vw) * 2.67) calc(var(--vw) * 8) calc(var(--vw) * 5.33);
  border-radius: 0 0 0 5.33vw;
  transition: 0.3s;
  visibility: hidden;
  z-index: 1;
  box-shadow: 1.33vw 1.33vw 0.8vw rgba(0, 0, 0, 0.05);
}
@media (min-width: 768px) {
  #g-nav #header-menu {
    box-shadow: 0.65vw 0.65vw 0.39vw rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 1080px) {
  #g-nav #header-menu {
    box-shadow: 0.46vw 0.46vw 0.28vw rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 1400px) {
  #g-nav #header-menu {
    box-shadow: 0.26vw 0.26vw 0.16vw rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 768px) {
  #g-nav #header-menu {
    right: calc(var(--vw) * -48.18);
    width: calc(var(--vw) * 48.18);
    padding: calc(var(--vw) * 10.42) calc(var(--vw) * 2.6) calc(var(--vw) * 3.91) calc(var(--vw) * 3.91);
    border-radius: 0 0 0 2.6vw;
  }
}
@media (min-width: 1080px) {
  #g-nav #header-menu {
    right: calc(var(--vw) * -34.26);
    width: calc(var(--vw) * 34.26);
    padding: calc(var(--vw) * 7.41) calc(var(--vw) * 1.85) calc(var(--vw) * 3.7) calc(var(--vw) * 3.7);
    border-radius: 0 0 0 1.85vw;
  }
}
@media (min-width: 1400px) {
  #g-nav #header-menu {
    right: calc(var(--vw) * -19.27);
    width: calc(var(--vw) * 19.27);
    padding: calc(var(--vw) * 5.21) calc(var(--vw) * 1.04) calc(var(--vw) * 2.08) calc(var(--vw) * 2.08);
    border-radius: 0 0 0 1.04vw;
  }
}
#g-nav #header-menu.open {
  right: 0;
  transition: 0.3s;
  visibility: visible;
}
#g-nav #header-menu .scroll-area {
  max-height: calc(var(--vh) * 100 - var(--vw) * 21.33);
}
@media (min-width: 768px) {
  #g-nav #header-menu .scroll-area {
    max-height: calc(var(--vh) * 100 - var(--vw) * 14.33);
  }
}
@media (min-width: 1080px) {
  #g-nav #header-menu .scroll-area {
    max-height: calc(var(--vh) * 100 - var(--vw) * 11.11);
  }
}
@media (min-width: 1400px) {
  #g-nav #header-menu .scroll-area {
    max-height: calc(var(--vh) * 100 - var(--vw) * 7.29);
  }
}
#g-nav #header-menu ul li a {
  position: relative;
  font-size: calc(var(--vw) * 4.8);
  font-weight: bold;
  color: #43B7F9;
  line-height: 2;
  padding-left: 0;
  transition: 0.3s;
}
@media (min-width: 768px) {
  #g-nav #header-menu ul li a {
    font-size: calc(var(--vw) * 3.26);
  }
}
@media (min-width: 1080px) {
  #g-nav #header-menu ul li a {
    font-size: calc(var(--vw) * 2.31);
  }
}
@media (min-width: 1400px) {
  #g-nav #header-menu ul li a {
    font-size: calc(var(--vw) * 1.3);
  }
}
#g-nav #header-menu ul li a:before {
  position: absolute;
  content: "";
  width: calc(var(--vw) * 2.13);
  height: calc(var(--vw) * 3.96);
  background-image: url(../img/arrow.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  opacity: 0;
  transition: 0.3s;
}
@media (min-width: 768px) {
  #g-nav #header-menu ul li a:before {
    width: calc(var(--vw) * 1.3);
    height: calc(var(--vw) * 2.42);
  }
}
@media (min-width: 1080px) {
  #g-nav #header-menu ul li a:before {
    width: calc(var(--vw) * 1.02);
    height: calc(var(--vw) * 1.89);
  }
}
@media (min-width: 1400px) {
  #g-nav #header-menu ul li a:before {
    width: calc(var(--vw) * 0.625);
    height: calc(var(--vw) * 1.16);
  }
}
#g-nav #header-menu ul li a:hover {
  color: #0074FF;
  padding-left: calc(var(--vw) * 4.8);
}
@media (min-width: 768px) {
  #g-nav #header-menu ul li a:hover {
    padding-left: calc(var(--vw) * 2.86);
  }
}
@media (min-width: 1080px) {
  #g-nav #header-menu ul li a:hover {
    padding-left: calc(var(--vw) * 2.22);
  }
}
@media (min-width: 1400px) {
  #g-nav #header-menu ul li a:hover {
    padding-left: calc(var(--vw) * 1.25);
  }
}
#g-nav #header-menu ul li a:hover:before {
  opacity: 1;
}
#g-nav #header-menu .sns_link {
  display: flex;
  gap: calc(var(--vw) * 5.33);
  margin: calc(var(--vw) * 4) 0 calc(var(--vw) * 8);
}
@media (min-width: 768px) {
  #g-nav #header-menu .sns_link {
    gap: calc(var(--vw) * 2.6);
    margin: calc(var(--vw) * 3.26) 0 calc(var(--vw) * 5.21);
  }
}
@media (min-width: 1080px) {
  #g-nav #header-menu .sns_link {
    gap: calc(var(--vw) * 1.85);
    margin: calc(var(--vw) * 2.31) 0 calc(var(--vw) * 3.7);
  }
}
@media (min-width: 1400px) {
  #g-nav #header-menu .sns_link {
    gap: calc(var(--vw) * 1.04);
    margin: calc(var(--vw) * 1.3) 0 calc(var(--vw) * 2.08);
  }
}
#g-nav #header-menu .sns_link a {
  transition: 0.3s;
}
#g-nav #header-menu .sns_link a:hover {
  opacity: 0.6;
}

.corporate_link {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: calc(var(--vw) * 2.13);
  font-size: calc(var(--vw) * 4.27);
  font-weight: bold;
  background: #36A7F6;
  color: #fff;
  border: calc(var(--vw) * 0.53) solid #36A7F6;
  padding: calc(var(--vw) * 3.2);
  border-radius: 8vw;
  transition: 0.3s;
}
@media (min-width: 768px) {
  .corporate_link {
    gap: calc(var(--vw) * 1.04);
    font-size: calc(var(--vw) * 2.08);
    border: calc(var(--vw) * 0.26042) solid #36A7F6;
    padding: calc(var(--vw) * 1.37);
  }
}
@media (min-width: 1080px) {
  .corporate_link {
    gap: calc(var(--vw) * 0.74);
    font-size: calc(var(--vw) * 1.48);
    border: calc(var(--vw) * 0.18518) solid #36A7F6;
    padding: calc(var(--vw) * 0.97);
  }
}
@media (min-width: 1400px) {
  .corporate_link {
    gap: calc(var(--vw) * 0.42);
    font-size: calc(var(--vw) * 0.83);
    border: calc(var(--vw) * 0.15625) solid #36A7F6;
    padding: calc(var(--vw) * 0.55);
  }
}
.corporate_link svg {
  fill: #fff;
  width: calc(var(--vw) * 4.27);
  height: calc(var(--vw) * 4.27);
  transition: 0.3s;
}
@media (min-width: 768px) {
  .corporate_link svg {
    width: calc(var(--vw) * 2.08);
    height: calc(var(--vw) * 2.08);
  }
}
@media (min-width: 1080px) {
  .corporate_link svg {
    width: calc(var(--vw) * 1.48);
    height: calc(var(--vw) * 1.48);
  }
}
@media (min-width: 1400px) {
  .corporate_link svg {
    width: calc(var(--vw) * 0.83);
    height: calc(var(--vw) * 0.83);
  }
}
.corporate_link:hover {
  background: #fff;
  color: #36A7F6;
}
.corporate_link:hover svg {
  fill: #36A7F6;
}

/* ================================================== */
/* メインビジュアル
/* ================================================== */
#mv {
  border-top: calc(var(--vw) * 5.33) solid #fff;
  border-right: calc(var(--vw) * 5.33) solid #fff;
  border-left: calc(var(--vw) * 5.33) solid #fff;
  background: #fff;
  padding: 0;
}
@media (min-width: 768px) {
  #mv {
    border-top: calc(var(--vw) * 3.91) solid #fff;
    border-right: calc(var(--vw) * 3.91) solid #fff;
    border-left: calc(var(--vw) * 3.91) solid #fff;
  }
}
@media (min-width: 1080px) {
  #mv {
    border-top: calc(var(--vw) * 3.7) solid #fff;
    border-right: calc(var(--vw) * 3.7) solid #fff;
    border-left: calc(var(--vw) * 3.7) solid #fff;
  }
}
@media (min-width: 1400px) {
  #mv {
    border-top: calc(var(--vw) * 2.6) solid #fff;
    border-right: calc(var(--vw) * 2.6) solid #fff;
    border-left: calc(var(--vw) * 2.6) solid #fff;
  }
}
#mv .kadomaru {
  position: relative;
  text-align: center;
  background-image: url(../img/aozora.jpg);
  background-size: cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: bottom center;
  border-radius: 5.33vw;
}
@media (min-width: 768px) {
  #mv .kadomaru {
    border-radius: 2.6vw;
  }
}
@media (min-width: 1080px) {
  #mv .kadomaru {
    border-radius: 1.85vw;
  }
}
@media (min-width: 1400px) {
  #mv .kadomaru {
    border-radius: 0.52vw;
  }
}
#mv-container {
  padding: calc(var(--vw) * 10.67) 0;
}
@media (min-width: 768px) {
  #mv-container {
    padding: calc(var(--vw) * 7.81) 0;
  }
}
@media (min-width: 1080px) {
  #mv-container {
    padding: calc(var(--vw) * 4.63) 0;
  }
}
@media (min-width: 1400px) {
  #mv-container {
    padding: calc(var(--vw) * 5.21) 0;
  }
}
#mv-man {
  position: absolute;
  width: calc(var(--vw) * 22);
  top: calc(var(--vw) * 19.53);
  left: calc(var(--vw) * -3.26);
}
@media (min-width: 1080px) {
  #mv-man {
    width: calc(var(--vw) * 17.59);
    top: calc(var(--vw) * -1.85);
    left: calc(var(--vw) * -1.85);
  }
}
@media (min-width: 1400px) {
  #mv-man {
    width: calc(var(--vw) * 19.79);
    top: calc(var(--vw) * -1.5);
    left: calc(var(--vw) * 1);
  }
}
#mv-woman {
  position: absolute;
  width: calc(var(--vw) * 32.22);
  bottom: calc(var(--vw) * 1.95);
  right: calc(var(--vw) * -3.26);
}
@media (min-width: 1080px) {
  #mv-woman {
    width: calc(var(--vw) * 25.79);
    bottom: calc(var(--vw) * 5.09);
    right: calc(var(--vw) * -1.85);
  }
}
@media (min-width: 1400px) {
  #mv-woman {
    width: calc(var(--vw) * 29.01);
    bottom: calc(var(--vw) * -4.5);
    right: calc(var(--vw) * 1.5);
  }
}
#mv-sp {
  position: absolute;
  width: calc(var(--vw) * 94.67);
  max-width: none;
  top: calc(var(--vw) * 53.33);
  left: calc(var(--vw) * -2.67);
}
#mv h1 {
  width: calc(var(--vw) * 56);
  margin: 0 auto;
}
@media (min-width: 768px) {
  #mv h1 {
    width: calc(var(--vw) * 36.46);
  }
}
@media (min-width: 1080px) {
  #mv h1 {
    width: calc(var(--vw) * 27.78);
  }
}
@media (min-width: 1400px) {
  #mv h1 {
    width: calc(var(--vw) * 23.07);
  }
}
#mv h2 {
  width: calc(var(--vw) * 22.98);
  margin: calc(var(--vw) * 8) auto calc(var(--vw) * 80);
}
@media (min-width: 768px) {
  #mv h2 {
    width: calc(var(--vw) * 54.69);
    margin: calc(var(--vw) * 5.21) auto;
  }
}
@media (min-width: 1080px) {
  #mv h2 {
    width: calc(var(--vw) * 42.59);
    margin: calc(var(--vw) * 4.63) auto;
  }
}
@media (min-width: 1400px) {
  #mv h2 {
    width: calc(var(--vw) * 47.45);
    margin: calc(var(--vw) * 4.17) auto;
  }
}
#mv h2 img {
  filter: drop-shadow(1.33vw 1.33vw 0.8vw rgba(0, 0, 0, 0.05));
}
@media (min-width: 768px) {
  #mv h2 img {
    filter: drop-shadow(0.65vw 0.65vw 0.39vw rgba(0, 0, 0, 0.05));
  }
}
@media (min-width: 1080px) {
  #mv h2 img {
    filter: drop-shadow(0.46vw 0.46vw 0.28vw rgba(0, 0, 0, 0.05));
  }
}
@media (min-width: 1400px) {
  #mv h2 img {
    filter: drop-shadow(0.26vw 0.26vw 0.16vw rgba(0, 0, 0, 0.05));
  }
}

.vision {
  line-height: 2;
  letter-spacing: 0.18em;
}
@media (min-width: 1400px) {
  .vision {
    font-size: calc(var(--vw) * 1.04);
  }
}

/* ================================================== */
/* アピールポイント
/* ================================================== */
#appeal {
  background: #fff;
}
@media (min-width: 768px) {
  #appeal {
    text-align: center;
  }
}
#appeal-grid {
  display: grid;
  grid-template-columns: repeat(2, calc(var(--vw) * 36));
  justify-content: center;
  gap: calc(var(--vw) * 5.33);
}
@media (min-width: 768px) {
  #appeal-grid {
    grid-template-columns: repeat(4, calc(var(--vw) * 19.53));
    gap: calc(var(--vw) * 2.6);
  }
  #appeal-grid img:nth-child(3) {
    order: 4;
  }
  #appeal-grid img:nth-child(4) {
    order: 3;
  }
}
@media (min-width: 768px) {
  #appeal-grid {
    grid-template-columns: repeat(4, calc(var(--vw) * 16.67));
    gap: calc(var(--vw) * 2.78);
  }
}
@media (min-width: 1400px) {
  #appeal-grid {
    grid-template-columns: repeat(4, calc(var(--vw) * 10.42));
    gap: calc(var(--vw) * 1.56);
  }
}
#appeal-note {
  font-size: smaller;
  letter-spacing: 0.18em;
  margin-top: 6.67vw;
}
@media (min-width: 768px) {
  #appeal-note {
    margin-top: 3.91vw;
  }
}
@media (min-width: 1080px) {
  #appeal-note {
    margin-top: 3.7vw;
  }
}
@media (min-width: 1400px) {
  #appeal-note {
    margin-top: 2.6vw;
  }
}

/* ================================================== */
/* インタビュー
/* ================================================== */
.interview {
  display: flex;
  row-gap: 5.33vw;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .interview {
    row-gap: 5.21vw;
    justify-content: center;
  }
}
@media (min-width: 1080px) {
  .interview {
    justify-content: space-between;
    align-items: stretch;
  }
}
.interview-card {
  background: #fff;
  padding: calc(var(--vw) * 6.4);
  border-radius: 5.33vw;
}
@media (min-width: 768px) {
  .interview-card {
    width: calc(var(--vw) * 70.31);
    padding: calc(var(--vw) * 3.9);
    border-radius: 2.6vw;
  }
}
@media (min-width: 1080px) {
  .interview-card {
    width: calc(var(--vw) * 44.68);
    padding: calc(var(--vw) * 2.78);
    border-radius: 1.85vw;
  }
}
@media (min-width: 1400px) {
  .interview-card {
    width: calc(var(--vw) * 31.25);
    padding: calc(var(--vw) * 2.08);
    border-radius: 1.04vw;
  }
}
.interview .fukidashi {
  position: relative;
  text-align: center;
  color: #fff;
  font-weight: bold;
  padding: calc(var(--vw) * 2);
  border-radius: 6vw;
  margin-bottom: 6.4vw;
}
@media (min-width: 768px) {
  .interview .fukidashi {
    font-size: calc(var(--vw) * 2.6);
    padding: calc(var(--vw) * 1.56);
    margin-bottom: 5.21vw;
  }
}
@media (min-width: 1080px) {
  .interview .fukidashi {
    font-size: calc(var(--vw) * 1.85);
    padding: calc(var(--vw) * 1.11);
    margin-bottom: 3.7vw;
  }
}
@media (min-width: 1400px) {
  .interview .fukidashi {
    font-size: calc(var(--vw) * 1.25);
    padding: calc(var(--vw) * 0.7);
    margin-bottom: 2.08vw;
  }
}
.interview .fukidashi:after {
  position: absolute;
  content: "";
  left: 50%;
  width: 4.27vw;
  height: 3.41vw;
  bottom: -3vw;
  -webkit-clip-path: polygon(0 0, 100% 0, 50% 100%);
          clip-path: polygon(0 0, 100% 0, 50% 100%);
  transform: translateX(-50%);
}
@media (min-width: 768px) {
  .interview .fukidashi:after {
    width: 2.6vw;
    height: 2.08vw;
    bottom: -2vw;
  }
}
@media (min-width: 1080px) {
  .interview .fukidashi:after {
    width: 1.85vw;
    height: 1.48vw;
    bottom: -1.4vw;
  }
}
@media (min-width: 1400px) {
  .interview .fukidashi:after {
    width: 1.04vw;
    height: 0.89vw;
    bottom: -0.8vw;
  }
}
.interview #do .fukidashi {
  background: #E27942;
}
.interview #do .fukidashi:after {
  background: #E27942;
}
.interview #do .initial {
  color: #E27942;
}
.interview #kn .fukidashi {
  background: #6161BB;
}
.interview #kn .fukidashi:after {
  background: #6161BB;
}
.interview #kn .initial {
  color: #6161BB;
}
.interview .img img {
  margin: 0 auto;
  width: calc(var(--vw) * 45.33);
}
@media (min-width: 768px) {
  .interview .img img {
    width: calc(var(--vw) * 36.46);
  }
}
@media (min-width: 1080px) {
  .interview .img img {
    width: calc(var(--vw) * 25.93);
  }
}
@media (min-width: 1400px) {
  .interview .img img {
    width: calc(var(--vw) * 15.63);
  }
}
.interview .initial {
  text-align: center;
  font-weight: bold;
  font-size: calc(var(--vw) * 4.27);
  line-height: 1.2;
  margin: calc(var(--vw) * 5.33) 0;
}
@media (min-width: 768px) {
  .interview .initial {
    font-size: calc(var(--vw) * 3.13);
    margin: calc(var(--vw) * 3.13) 0;
  }
}
@media (min-width: 1080px) {
  .interview .initial {
    font-size: calc(var(--vw) * 2.59);
    margin: calc(var(--vw) * 2.22) 0;
  }
}
@media (min-width: 1400px) {
  .interview .initial {
    font-size: calc(var(--vw) * 1.56);
    margin: calc(var(--vw) * 1.56) 0;
  }
}
.interview .initial span {
  font-size: calc(var(--vw) * 3.2);
}
@media (min-width: 768px) {
  .interview .initial span {
    font-size: calc(var(--vw) * 2.34);
  }
}
@media (min-width: 1080px) {
  .interview .initial span {
    font-size: calc(var(--vw) * 1.67);
  }
}
@media (min-width: 1400px) {
  .interview .initial span {
    font-size: calc(var(--vw) * 1.04);
  }
}
.interview .text {
  text-align: justify;
}

/* ================================================== */
/* 募集要項
/* ================================================== */
.job {
  background: #36A7F6;
  color: #fff;
  border-radius: 9vw;
  transition: 0.3s;
  margin: 0 auto 5.33vw;
}
@media (min-width: 768px) {
  .job {
    margin: 0 auto 3.91vw;
  }
}
@media (min-width: 1080px) {
  .job {
    margin: 0 auto 3.7vw;
  }
}
@media (min-width: 1400px) {
  .job {
    margin: 0 auto 2.08vw;
    max-width: calc(var(--vw) * 55.21);
  }
}
.job:last-child {
  margin: 0 auto;
}
.job.open {
  border-radius: 5vw;
  transition: 0.3s;
}
@media (min-width: 768px) {
  .job.open {
    border-radius: 2.6vw;
  }
}
@media (min-width: 1080px) {
  .job.open {
    border-radius: 1.85vw;
  }
}
@media (min-width: 1400px) {
  .job.open {
    border-radius: 1.04vw;
  }
}
.job-title {
  position: relative;
  cursor: pointer;
  font-weight: bold;
  font-size: calc(var(--vw) * 4.27);
  padding: calc(var(--vw) * 4.8) calc(var(--vw) * 6.4);
}
@media (min-width: 768px) {
  .job-title {
    font-size: calc(var(--vw) * 2.6);
    padding: calc(var(--vw) * 4.17) calc(var(--vw) * 6.51);
  }
}
@media (min-width: 1080px) {
  .job-title {
    font-size: calc(var(--vw) * 1.85);
    padding: calc(var(--vw) * 2.96) calc(var(--vw) * 4.63);
  }
}
@media (min-width: 1400px) {
  .job-title {
    font-size: calc(var(--vw) * 1.04);
    padding: calc(var(--vw) * 1.67) calc(var(--vw) * 2.6);
  }
}
.job-title span {
  position: absolute;
  display: block;
  width: calc(var(--vw) * 3.2);
  height: calc(var(--vw) * 0.53);
  background: #fff;
  top: 50%;
  right: calc(var(--vw) * 6.4);
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  .job-title span {
    width: calc(var(--vw) * 2.21);
    height: calc(var(--vw) * 0.39);
    right: calc(var(--vw) * 6.51);
  }
}
@media (min-width: 1080px) {
  .job-title span {
    width: calc(var(--vw) * 1.57);
    height: calc(var(--vw) * 0.28);
    right: calc(var(--vw) * 4.63);
  }
}
@media (min-width: 1400px) {
  .job-title span {
    width: calc(var(--vw) * 0.89);
    height: calc(var(--vw) * 0.16);
    right: calc(var(--vw) * 2.6);
  }
}
.job-title span.rotate {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.3s;
}
.job.open .job-title span.rotate {
  transform: translateY(-50%) rotate(0deg);
  transition: 0.3s;
}
.job-text {
  display: none;
  padding: 0 calc(var(--vw) * 6.4) calc(var(--vw) * 6.4) calc(var(--vw) * 6.4);
}
@media (min-width: 768px) {
  .job-text {
    padding: 0 calc(var(--vw) * 6.51) calc(var(--vw) * 6.51) calc(var(--vw) * 6.51);
  }
}
@media (min-width: 1080px) {
  .job-text {
    padding: 0 calc(var(--vw) * 4.63) calc(var(--vw) * 4.63) calc(var(--vw) * 4.63);
  }
}
@media (min-width: 1400px) {
  .job-text {
    padding: 0 calc(var(--vw) * 2.6) calc(var(--vw) * 2.6) calc(var(--vw) * 2.6);
  }
}
.job-text table td {
  padding: calc(var(--vw) * 5.33) 0;
}
@media (min-width: 768px) {
  .job-text table td {
    padding: calc(var(--vw) * 2.6) 0;
  }
}
@media (min-width: 1080px) {
  .job-text table td {
    padding: calc(var(--vw) * 1.85) 0;
  }
}
@media (min-width: 1400px) {
  .job-text table td {
    padding: calc(var(--vw) * 1.04) 0;
  }
}
.job-text table tr {
  border-bottom: 1px solid #fff;
}
.job-text table tr:first-child td {
  padding: 0 0 calc(var(--vw) * 5.33) 0;
}
@media (min-width: 768px) {
  .job-text table tr:first-child td {
    padding: 0 0 calc(var(--vw) * 2.6) 0;
  }
}
@media (min-width: 1080px) {
  .job-text table tr:first-child td {
    padding: 0 0 calc(var(--vw) * 1.85) 0;
  }
}
@media (min-width: 1400px) {
  .job-text table tr:first-child td {
    padding: 0 0 calc(var(--vw) * 1.04) 0;
  }
}
.job-text table tr td:first-child {
  white-space: nowrap;
  padding-right: 1em;
}

/* ================================================== */
/* 社風・制度・採用の流れ
/* ================================================== */
@media (max-width: 767px) {
  #three_contents .container {
    width: 100%;
  }
}

.three_contents-flex {
  display: flex;
  justify-content: flex-end;
  align-items: stretch;
  background-image: url(../img/3contents-man.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: calc(var(--vw) * 2.67) top;
}
@media (min-width: 768px) {
  .three_contents-flex {
    background-image: none;
    justify-content: space-between;
  }
}
.three_contents-img {
  position: relative;
  width: 100%;
}
.three_contents-img img {
  position: absolute;
  height: 100%;
  top: 0;
}
@media (min-width: 1080px) {
  .three_contents-img img {
    height: calc(var(--vw) * 18.52 + 100%);
    top: calc(var(--vw) * -9.26);
  }
}
@media (min-width: 1400px) {
  .three_contents-img img {
    height: calc(var(--vw) * 15.62 + 100%);
    top: calc(var(--vw) * -7.81);
  }
}

#culture, #welfare, #flow {
  position: relative;
  width: calc(var(--vw) * 56);
  background: #fff;
  padding: calc(var(--vw) * 10.67);
  border-radius: 5.33vw 0 0 5.33vw;
  transition: 0.3s;
  box-shadow: 1.33vw 1.33vw 0.8vw rgba(0, 0, 0, 0.05);
  /* 影 */
}
@media (min-width: 768px) {
  #culture, #welfare, #flow {
    box-shadow: 0.65vw 0.65vw 0.39vw rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 1080px) {
  #culture, #welfare, #flow {
    box-shadow: 0.46vw 0.46vw 0.28vw rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 1400px) {
  #culture, #welfare, #flow {
    box-shadow: 0.26vw 0.26vw 0.16vw rgba(0, 0, 0, 0.05);
  }
}
@media (min-width: 768px) {
  #culture, #welfare, #flow {
    width: calc(var(--vw) * 49.48);
    padding: calc(var(--vw) * 6.51);
    border-radius: 2.6vw;
  }
}
@media (min-width: 1080px) {
  #culture, #welfare, #flow {
    width: calc(var(--vw) * 44.45);
    padding: calc(var(--vw) * 6.48);
    border-radius: 1.85vw;
  }
}
@media (min-width: 1400px) {
  #culture, #welfare, #flow {
    width: calc(var(--vw) * 31.25);
    padding: calc(var(--vw) * 4.8);
    border-radius: 1.04vw;
  }
}
#culture:hover, #welfare:hover, #flow:hover {
  box-shadow: 1.33vw 1.33vw 1.6vw rgba(0, 116, 255, 0.5);
}
@media (min-width: 768px) {
  #culture:hover, #welfare:hover, #flow:hover {
    box-shadow: 0.65vw 0.65vw 0.78vw rgba(0, 116, 255, 0.5);
  }
}
@media (min-width: 1080px) {
  #culture:hover, #welfare:hover, #flow:hover {
    box-shadow: 0.46vw 0.46vw 0.56vw rgba(0, 116, 255, 0.5);
  }
}
@media (min-width: 1400px) {
  #culture:hover, #welfare:hover, #flow:hover {
    box-shadow: 0.26vw 0.26vw 0.64vw rgba(0, 116, 255, 0.5);
  }
}
#culture img, #welfare img, #flow img {
  position: absolute;
  width: calc(var(--vw) * 1.87);
  top: 50%;
  right: calc(var(--vw) * 6.4);
  transform: translateY(-50%);
  transition: 0.3s;
}
@media (min-width: 768px) {
  #culture img, #welfare img, #flow img {
    width: calc(var(--vw) * 1.56);
    right: calc(var(--vw) * 4.95);
  }
}
@media (min-width: 1080px) {
  #culture img, #welfare img, #flow img {
    width: calc(var(--vw) * 1.3);
    right: calc(var(--vw) * 5.09);
  }
}
@media (min-width: 1400px) {
  #culture img, #welfare img, #flow img {
    width: calc(var(--vw) * 0.84);
    right: calc(var(--vw) * 4.8);
  }
}
#culture:hover img, #welfare:hover img, #flow:hover img {
  right: calc(var(--vw) * 4.8);
}
@media (min-width: 768px) {
  #culture:hover img, #welfare:hover img, #flow:hover img {
    right: calc(var(--vw) * 3.26);
  }
}
@media (min-width: 1080px) {
  #culture:hover img, #welfare:hover img, #flow:hover img {
    right: calc(var(--vw) * 3.7);
  }
}
@media (min-width: 1400px) {
  #culture:hover img, #welfare:hover img, #flow:hover img {
    right: calc(var(--vw) * 3.6);
  }
}
@media (max-width: 767px) {
  #culture h2, #welfare h2, #flow h2 {
    font-size: calc(var(--vw) * 5.33);
  }
}

#culture {
  margin: 0 0 5.33vw auto;
}
@media (min-width: 768px) {
  #culture {
    margin: 0 0 3.91vw auto;
  }
}
@media (min-width: 1080px) {
  #culture {
    margin: 0 0 3.7vw auto;
  }
}
@media (min-width: 1400px) {
  #culture {
    margin: 0 0 2.6vw auto;
  }
}

#welfare {
  margin: 0 0 5.33vw auto;
}
@media (min-width: 768px) {
  #welfare {
    margin: 0 0 3.91vw auto;
  }
}
@media (min-width: 1080px) {
  #welfare {
    margin: 0 3.7vw 3.7vw auto;
  }
}
@media (min-width: 1400px) {
  #welfare {
    margin: 0 2.6vw 2.6vw auto;
  }
}

#flow {
  margin: 0 0 0 auto;
}

.modal-open h2 {
  margin: 0;
}

.modal h2 {
  margin: 5.33vw 0 8vw;
}
@media (min-width: 768px) {
  .modal h2 {
    margin: 2.6vw 0 5.73vw;
  }
}
@media (min-width: 1080px) {
  .modal h2 {
    margin: 0.93vw 0 3.7vw;
  }
}
@media (min-width: 1400px) {
  .modal h2 {
    margin: 1.04vw 0 2.6vw;
  }
}

.blue_grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: calc(var(--vw) * 5.33);
}
@media (min-width: 768px) {
  .blue_grid {
    grid-template-columns: repeat(2, 1fr);
    gap: calc(var(--vw) * 3.91);
  }
}
@media (min-width: 1080px) {
  .blue_grid {
    grid-template-columns: repeat(3, 1fr);
    gap: calc(var(--vw) * 2.78);
  }
}
@media (min-width: 1400px) {
  .blue_grid {
    grid-template-columns: repeat(3, 1fr);
    gap: calc(var(--vw) * 2.08);
  }
}
.blue_grid-child {
  position: relative;
  background: #DEF8FF;
  border-radius: 5.33vw;
  padding: calc(var(--vw) * 5.33);
}
@media (min-width: 768px) {
  .blue_grid-child {
    border-radius: 2.6vw;
    padding: calc(var(--vw) * 3.25);
  }
}
@media (min-width: 1080px) {
  .blue_grid-child {
    border-radius: 1.85vw;
    padding: calc(var(--vw) * 2.31);
  }
}
@media (min-width: 1400px) {
  .blue_grid-child {
    border-radius: 1.04vw;
    padding: calc(var(--vw) * 1.3);
  }
}
.blue_grid-child h3 {
  text-align: center;
  font-weight: bold;
  font-size: calc(var(--vw) * 4.27);
  margin-bottom: 2.67vw;
}
@media (min-width: 768px) {
  .blue_grid-child h3 {
    font-size: calc(var(--vw) * 2.34);
    margin-bottom: 1.3vw;
  }
}
@media (min-width: 1080px) {
  .blue_grid-child h3 {
    font-size: calc(var(--vw) * 1.67);
    margin-bottom: 0.93vw;
  }
}
@media (min-width: 1400px) {
  .blue_grid-child h3 {
    font-size: calc(var(--vw) * 1.04);
    margin-bottom: 0.52vw;
  }
}
.blue_grid-child p {
  text-align: justify;
}
.blue_grid-child .img-right-bottom img:first-child {
  opacity: 0;
}
.blue_grid-child .img-right-bottom img:last-child {
  position: absolute;
  bottom: calc(var(--vw) * 5.33);
  right: calc(var(--vw) * 5.33);
}
@media (min-width: 768px) {
  .blue_grid-child .img-right-bottom img:last-child {
    bottom: calc(var(--vw) * 3.25);
    right: calc(var(--vw) * 3.25);
  }
}
@media (min-width: 1080px) {
  .blue_grid-child .img-right-bottom img:last-child {
    bottom: calc(var(--vw) * 2.31);
    right: calc(var(--vw) * 2.31);
  }
}
@media (min-width: 1400px) {
  .blue_grid-child .img-right-bottom img:last-child {
    bottom: calc(var(--vw) * 1.3);
    right: calc(var(--vw) * 1.3);
  }
}

.flow_grid {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: calc(var(--vw) * 5.33);
}
@media (min-width: 768px) {
  .flow_grid {
    grid-template-columns: auto calc(var(--vw) * 4.56) auto calc(var(--vw) * 4.56);
    row-gap: calc(var(--vw) * 3.9);
    -moz-column-gap: calc(var(--vw) * 2.6);
         column-gap: calc(var(--vw) * 2.6);
  }
}
@media (min-width: 1080px) {
  .flow_grid {
    grid-template-columns: auto calc(var(--vw) * 3.24) auto calc(var(--vw) * 3.24);
    row-gap: calc(var(--vw) * 3.7);
    -moz-column-gap: calc(var(--vw) * 1.85);
         column-gap: calc(var(--vw) * 1.85);
  }
}
@media (min-width: 1400px) {
  .flow_grid {
    grid-template-columns: auto calc(var(--vw) * 1.82) auto calc(var(--vw) * 1.82) auto calc(var(--vw) * 1.82) auto;
    -moz-column-gap: calc(var(--vw) * 1.04);
         column-gap: calc(var(--vw) * 1.04);
  }
}
.flow_grid-arrow {
  width: calc(var(--vw) * 8.53);
  height: calc(var(--vw) * 8.53);
  margin: 0 auto;
  transform: rotate(90deg);
}
@media (min-width: 768px) {
  .flow_grid-arrow {
    position: relative;
    top: 50%;
    transform: rotate(0deg) translateY(-50%);
  }
}

.flow-img {
  margin: 4vw auto;
}
@media (min-width: 1400px) {
  .flow-img {
    margin: 0.78vw auto;
  }
}

/* ================================================== */
/* よくある質問
/* ================================================== */
.qa {
  background: #36A7F6;
  color: #fff;
  border-radius: 9vw;
  transition: 0.3s;
  margin: 0 auto 5.33vw;
}
@media (min-width: 768px) {
  .qa {
    margin: 0 auto 3.91vw;
  }
}
@media (min-width: 1080px) {
  .qa {
    margin: 0 auto 3.7vw;
  }
}
@media (min-width: 1400px) {
  .qa {
    margin: 0 auto 2.08vw;
    max-width: calc(var(--vw) * 55.21);
  }
}
.qa:last-child {
  margin: 0 auto;
}
.qa.open {
  border-radius: 5vw;
  transition: 0.3s;
}
@media (min-width: 768px) {
  .qa.open {
    border-radius: 2.6vw;
  }
}
@media (min-width: 1080px) {
  .qa.open {
    border-radius: 1.85vw;
  }
}
@media (min-width: 1400px) {
  .qa.open {
    border-radius: 1.04vw;
  }
}
.qa .question {
  position: relative;
  cursor: pointer;
  display: grid;
  grid-template-columns: calc(var(--vw) * 6.67) auto;
  gap: calc(var(--vw) * 3.2);
  align-items: center;
  padding: calc(var(--vw) * 5.3) calc(var(--vw) * 6.4);
}
@media (min-width: 768px) {
  .qa .question {
    grid-template-columns: calc(var(--vw) * 5.21) auto;
    gap: calc(var(--vw) * 2.6);
    padding: calc(var(--vw) * 3.9) calc(var(--vw) * 6.51);
  }
}
@media (min-width: 1080px) {
  .qa .question {
    grid-template-columns: calc(var(--vw) * 3.7) auto;
    gap: calc(var(--vw) * 1.85);
    padding: calc(var(--vw) * 2.8) calc(var(--vw) * 4.63);
  }
}
@media (min-width: 1400px) {
  .qa .question {
    grid-template-columns: calc(var(--vw) * 2.6) auto;
    gap: calc(var(--vw) * 1.04);
    padding: calc(var(--vw) * 1.3) calc(var(--vw) * 2.6);
  }
}
.qa .question h3 {
  font-size: calc(var(--vw) * 3.73);
}
@media (min-width: 768px) {
  .qa .question h3 {
    font-size: calc(var(--vw) * 2.08);
  }
}
@media (min-width: 1080px) {
  .qa .question h3 {
    font-size: calc(var(--vw) * 1.48);
  }
}
@media (min-width: 1400px) {
  .qa .question h3 {
    font-size: calc(var(--vw) * 0.94);
  }
}
.qa .question .qa-q {
  position: relative;
  width: calc(var(--vw) * 6.67);
  height: calc(var(--vw) * 6.67);
  border-radius: 4vw;
  font-size: calc(var(--vw) * 3.2);
  color: #0074FF;
  background: #fff;
  font-weight: bold;
}
@media (min-width: 768px) {
  .qa .question .qa-q {
    width: calc(var(--vw) * 5.21);
    height: calc(var(--vw) * 5.21);
    font-size: calc(var(--vw) * 2.6);
  }
}
@media (min-width: 1080px) {
  .qa .question .qa-q {
    width: calc(var(--vw) * 3.7);
    height: calc(var(--vw) * 3.7);
    font-size: calc(var(--vw) * 1.85);
  }
}
@media (min-width: 1400px) {
  .qa .question .qa-q {
    width: calc(var(--vw) * 2.6);
    height: calc(var(--vw) * 2.6);
    font-size: calc(var(--vw) * 1.3);
  }
}
.qa .question .qa-q p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.qa .question span {
  position: absolute;
  display: block;
  width: calc(var(--vw) * 3.2);
  height: calc(var(--vw) * 0.53);
  background: #fff;
  top: 50%;
  right: calc(var(--vw) * 6.4);
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  .qa .question span {
    width: calc(var(--vw) * 2.21);
    height: calc(var(--vw) * 0.39);
    right: calc(var(--vw) * 6.51);
  }
}
@media (min-width: 1080px) {
  .qa .question span {
    width: calc(var(--vw) * 1.57);
    height: calc(var(--vw) * 0.28);
    right: calc(var(--vw) * 4.63);
  }
}
@media (min-width: 1400px) {
  .qa .question span {
    width: calc(var(--vw) * 0.89);
    height: calc(var(--vw) * 0.16);
    right: calc(var(--vw) * 2.6);
  }
}
.qa .question span.rotate {
  transform: translateY(-50%) rotate(90deg);
  transition: 0.3s;
}
.qa.open .question span.rotate {
  transform: translateY(-50%) rotate(0deg);
  transition: 0.3s;
}
.qa .answer {
  display: none;
  padding: 0 calc(var(--vw) * 6.4) calc(var(--vw) * 5.3) calc(var(--vw) * 6.4);
}
@media (min-width: 768px) {
  .qa .answer {
    padding: 0 calc(var(--vw) * 6.51) calc(var(--vw) * 3.9) calc(var(--vw) * 6.51);
  }
}
@media (min-width: 1080px) {
  .qa .answer {
    padding: 0 calc(var(--vw) * 9.26) calc(var(--vw) * 2.96) calc(var(--vw) * 4.63);
  }
}
@media (min-width: 1400px) {
  .qa .answer {
    padding: 0 calc(var(--vw) * 5.2) calc(var(--vw) * 1.75) calc(var(--vw) * 2.6);
  }
}
.qa .answer-child {
  display: grid;
  grid-template-columns: calc(var(--vw) * 6.67) auto;
  gap: calc(var(--vw) * 3.2);
}
@media (min-width: 768px) {
  .qa .answer-child {
    grid-template-columns: calc(var(--vw) * 5.21) auto;
    gap: calc(var(--vw) * 2.6);
  }
}
@media (min-width: 1080px) {
  .qa .answer-child {
    grid-template-columns: calc(var(--vw) * 3.7) auto;
    gap: calc(var(--vw) * 1.85);
    align-items: center;
  }
}
@media (min-width: 1400px) {
  .qa .answer-child {
    grid-template-columns: calc(var(--vw) * 2.6) auto;
    gap: calc(var(--vw) * 1.04);
  }
}
.qa .answer .qa-a {
  position: relative;
  width: calc(var(--vw) * 6.67);
  height: calc(var(--vw) * 6.67);
  border-radius: 4vw;
  font-size: calc(var(--vw) * 3.2);
  color: #0074FF;
  background: #FFEB62;
  font-weight: bold;
}
@media (min-width: 768px) {
  .qa .answer .qa-a {
    width: calc(var(--vw) * 5.21);
    height: calc(var(--vw) * 5.21);
    font-size: calc(var(--vw) * 2.6);
  }
}
@media (min-width: 1080px) {
  .qa .answer .qa-a {
    width: calc(var(--vw) * 3.7);
    height: calc(var(--vw) * 3.7);
    font-size: calc(var(--vw) * 1.85);
  }
}
@media (min-width: 1400px) {
  .qa .answer .qa-a {
    width: calc(var(--vw) * 2.6);
    height: calc(var(--vw) * 2.6);
    font-size: calc(var(--vw) * 1.3);
  }
}
.qa .answer .qa-a p {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

/* ================================================== */
/* エントリー
/* ================================================== */
.grecaptcha-badge {
  display: none !important;
}

#entry form {
  background: #fff;
  margin: 0 auto;
  width: 100%;
  padding: calc(var(--vw) * 6.4);
  border-radius: 5.33vw;
}
@media (min-width: 768px) {
  #entry form {
    padding: calc(var(--vw) * 3.91);
    border-radius: 2.6vw;
  }
}
@media (min-width: 1080px) {
  #entry form {
    padding: calc(var(--vw) * 3.7);
    border-radius: 1.85vw;
  }
}
@media (min-width: 1400px) {
  #entry form {
    max-width: calc(var(--vw) * 55.21);
    padding: calc(var(--vw) * 4.17);
    border-radius: 1.04vw;
  }
}

.asterisk {
  color: #0074FF;
}

p.asterisk {
  font-weight: bold;
  margin-bottom: 3.73vw;
}
@media (min-width: 768px) {
  p.asterisk {
    margin-bottom: 1.82vw;
  }
}
@media (min-width: 1080px) {
  p.asterisk {
    margin-bottom: 1.3vw;
  }
}
@media (min-width: 1400px) {
  p.asterisk {
    margin-bottom: 0.78vw;
  }
}

.entry-table {
  width: 100%;
}
.entry-table th {
  padding: 0 0 2.13vw;
}
@media (min-width: 768px) {
  .entry-table th {
    padding: 1.95vw 0;
  }
}
@media (min-width: 1080px) {
  .entry-table th {
    padding: 1.39vw 0;
  }
}
@media (min-width: 1400px) {
  .entry-table th {
    padding: 0.78vw 0;
  }
}
.entry-table td {
  padding: 0 0 4.8vw;
}
@media (min-width: 768px) {
  .entry-table td {
    padding: 1.95vw 0;
  }
}
@media (min-width: 1080px) {
  .entry-table td {
    padding: 1.39vw 0;
  }
}
@media (min-width: 1400px) {
  .entry-table td {
    padding: 0.78vw 0;
  }
}
.entry-table th, .entry-table td {
  display: block;
}
@media (min-width: 768px) {
  .entry-table th, .entry-table td {
    display: table-cell;
  }
}

.wpcf7-list-item {
  margin: 0;
}

.input, .textarea {
  width: 100%;
  border: none;
  padding: 2.13vw;
  background: #DEF8FF;
}
@media (min-width: 768px) {
  .input, .textarea {
    padding: 1.3vw;
  }
}
@media (min-width: 1080px) {
  .input, .textarea {
    padding: 0.93vw;
  }
}
@media (min-width: 1400px) {
  .input, .textarea {
    padding: 0.52vw;
  }
}
.input:focus, .textarea:focus {
  outline: 1px solid #0074FF;
}

.radio span label {
  position: relative;
  margin-right: 30vw;
}
@media (min-width: 768px) {
  .radio span label {
    margin-right: 2em;
  }
}
.radio span label span {
  padding-left: 1.5em;
}
.radio span:last-child label {
  margin-right: 0;
}

input[type=radio] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  width: calc(var(--vw) * 4);
  height: calc(var(--vw) * 4);
  border-radius: 50%;
  background: #F0F0F0;
  top: 50%;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  input[type=radio] {
    width: calc(var(--vw) * 2.08);
    height: calc(var(--vw) * 2.08);
  }
}
@media (min-width: 1080px) {
  input[type=radio] {
    width: calc(var(--vw) * 1.48);
    height: calc(var(--vw) * 1.48);
  }
}
@media (min-width: 1400px) {
  input[type=radio] {
    width: calc(var(--vw) * 0.94);
    height: calc(var(--vw) * 0.94);
  }
}
input[type=radio]:checked:before {
  position: absolute;
  content: "";
  width: calc(var(--vw) * 2.67);
  height: calc(var(--vw) * 2.67);
  border-radius: 50%;
  background: #0074FF;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (min-width: 768px) {
  input[type=radio]:checked:before {
    width: calc(var(--vw) * 1.3);
    height: calc(var(--vw) * 1.3);
  }
}
@media (min-width: 1080px) {
  input[type=radio]:checked:before {
    width: calc(var(--vw) * 0.93);
    height: calc(var(--vw) * 0.93);
  }
}
@media (min-width: 1400px) {
  input[type=radio]:checked:before {
    width: calc(var(--vw) * 0.63);
    height: calc(var(--vw) * 0.63);
  }
}

.acceptance {
  text-align: center;
  margin: 0 0 5.33vw 0;
}
@media (min-width: 768px) {
  .acceptance {
    margin: 1.95vw 0 3.9vw 0;
  }
}
@media (min-width: 1080px) {
  .acceptance {
    margin: 1.39vw 0 2.78vw 0;
  }
}
@media (min-width: 1400px) {
  .acceptance {
    margin: 0.78vw 0 1.56vw 0;
  }
}
.acceptance label {
  position: relative;
}
.acceptance label span.wpcf7-list-item-label {
  padding-left: 1.5em;
}

#privacy-open {
  color: #0074FF;
  cursor: pointer;
  transition: 0.3s;
}
#privacy-open:hover {
  color: #36A7F6;
}

input[type=checkbox] {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: absolute;
  width: calc(var(--vw) * 4.27);
  height: calc(var(--vw) * 4.27);
  background: #F0F0F0;
  top: 50%;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  input[type=checkbox] {
    width: calc(var(--vw) * 2.34);
    height: calc(var(--vw) * 2.34);
  }
}
@media (min-width: 1080px) {
  input[type=checkbox] {
    width: calc(var(--vw) * 1.67);
    height: calc(var(--vw) * 1.67);
  }
}
@media (min-width: 1400px) {
  input[type=checkbox] {
    width: calc(var(--vw) * 1.04);
    height: calc(var(--vw) * 1.04);
  }
}
input[type=checkbox]:checked {
  background: #0074FF;
}
input[type=checkbox]:checked:before {
  position: absolute;
  content: url(../img/check.svg);
  width: calc(var(--vw) * 3.09);
  height: calc(var(--vw) * 2.13);
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (min-width: 768px) {
  input[type=checkbox]:checked:before {
    width: calc(var(--vw) * 1.63);
    height: calc(var(--vw) * 1.12);
  }
}
@media (min-width: 1080px) {
  input[type=checkbox]:checked:before {
    width: calc(var(--vw) * 1.16);
    height: calc(var(--vw) * 0.8);
  }
}
@media (min-width: 1400px) {
  input[type=checkbox]:checked:before {
    width: calc(var(--vw) * 0.76);
    height: calc(var(--vw) * 0.52);
  }
}

.submit {
  text-align: center;
}

input[type=submit] {
  position: relative;
  padding: 4vw;
  width: 100%;
  border: none;
  border-radius: 8vw;
  border: calc(var(--vw) * 0.53) solid #36A7F6;
  color: #fff;
  background-color: #36A7F6;
  background-image: url(../img/submit.svg);
  background-size: 5.33vw 5.33vw;
  background-position: 91% center;
  background-repeat: no-repeat;
  cursor: pointer;
  transition: 0.3s;
}
@media (min-width: 768px) {
  input[type=submit] {
    padding: 2.34vw;
    width: 36.46vw;
    border: calc(var(--vw) * 0.26042) solid #36A7F6;
    background-size: 3.13vw 3.13vw;
  }
}
@media (min-width: 1080px) {
  input[type=submit] {
    padding: 1.67vw;
    width: 25.93vw;
    border: calc(var(--vw) * 0.18518) solid #36A7F6;
    background-size: 2.22vw 2.22vw;
  }
}
@media (min-width: 1400px) {
  input[type=submit] {
    padding: 0.94vw;
    width: 15.63vw;
    border: calc(var(--vw) * 0.15625) solid #36A7F6;
    background-size: 1.25vw 1.25vw;
  }
}
input[type=submit]:not(:disabled):hover {
  color: #36A7F6;
  background-color: #fff;
  background-image: url(../img/submit-hover.svg);
}
input[type=submit]:disabled {
  position: relative;
  border-color: #f0f0f0;
  color: #999;
  background-color: #f0f0f0;
  background-image: url(../img/submit-disabled.svg);
}

.wpcf7-spinner {
  display: block;
  margin: 0 auto;
}

/* プライバシーポリシー */
.privacy_grid {
  display: grid;
  gap: 10.67vw;
}
@media (min-width: 768px) {
  .privacy_grid {
    gap: 5.21vw;
  }
}
@media (min-width: 1080px) {
  .privacy_grid {
    gap: 3.7vw;
  }
}
@media (min-width: 1400px) {
  .privacy_grid {
    gap: 2.08vw;
  }
}
.privacy_grid-child {
  display: grid;
  gap: 2.67vw;
}
@media (min-width: 768px) {
  .privacy_grid-child {
    gap: 1.3vw;
  }
}
@media (min-width: 1080px) {
  .privacy_grid-child {
    gap: 0.93vw;
  }
}
@media (min-width: 1400px) {
  .privacy_grid-child {
    gap: 0.52vw;
  }
}
.privacy_grid-child h3 {
  font-weight: bold;
  font-size: calc(var(--vw) * 4.8);
}
@media (min-width: 768px) {
  .privacy_grid-child h3 {
    font-size: calc(var(--vw) * 2.6);
  }
}
@media (min-width: 1080px) {
  .privacy_grid-child h3 {
    font-size: calc(var(--vw) * 2.04);
  }
}
@media (min-width: 1400px) {
  .privacy_grid-child h3 {
    font-size: calc(var(--vw) * 1.25);
  }
}
.privacy_grid-child ol li {
  margin-left: 2.5em;
  text-indent: -2.5em;
}

/* ================================================== */
/* フッター
/* ================================================== */
footer {
  background-image: url(../img/aozora.jpg);
  background-size: cover;
  background-attachment: fixed;
  background-repeat: no-repeat;
  background-position: bottom center;
}

.footer {
  background: rgba(54, 167, 246, 0.8);
}
.footer-container {
  display: grid;
  grid-template-columns: 1fr;
  row-gap: 8vw;
  width: calc(var(--vw) * 66.67);
  margin: 0 auto;
  padding-top: 13.33vw;
}
@media (min-width: 768px) {
  .footer-container {
    grid-template-columns: repeat(2, auto);
    gap: 9vw;
    justify-content: center;
    align-items: center;
    width: calc(var(--vw) * 92.19);
    padding-top: 6.51vw;
  }
}
@media (min-width: 1080px) {
  .footer-container {
    grid-template-columns: repeat(3, 1fr);
    gap: 0;
    justify-content: space-between;
    width: calc(var(--vw) * 81.48);
    padding-top: 4.63vw;
  }
}
@media (min-width: 1400px) {
  .footer-container {
    width: calc(var(--vw) * 55.21);
    padding-top: 2.6vw;
  }
}
@media (min-width: 768px) {
  .footer-left {
    width: calc(var(--vw) * 31.25);
    margin-bottom: 6.51vw;
  }
}
@media (min-width: 1080px) {
  .footer-left {
    width: calc(var(--vw) * 22.22);
    margin-bottom: 4.63vw;
  }
}
@media (min-width: 1400px) {
  .footer-left {
    width: calc(var(--vw) * 12.5);
    margin-bottom: 2.6vw;
  }
}
.footer-left img {
  margin: 0 auto;
}
@media (min-width: 768px) {
  .footer-left img {
    margin: 0 auto 3.91vw;
  }
}
@media (min-width: 1080px) {
  .footer-left img {
    margin: 0 auto 3.7vw;
  }
}
@media (min-width: 1400px) {
  .footer-left img {
    margin: 0 auto 2.08vw;
  }
}
.footer .corporate_link {
  background: #fff;
  color: #36A7F6;
  border-color: #fff;
}
.footer .corporate_link svg {
  fill: #36A7F6;
}
.footer .corporate_link:hover {
  background: transparent;
  color: #fff;
}
.footer .corporate_link:hover svg {
  fill: #fff;
}
.footer .corporate_link.visible-md {
  display: none;
}
@media (min-width: 768px) {
  .footer .corporate_link.visible-md {
    display: flex;
  }
}
@media (min-width: 768px) {
  .footer-img {
    order: 2;
  }
}
@media (min-width: 768px) {
  .footer-img-sp-pc {
    display: none;
  }
}
@media (min-width: 1080px) {
  .footer-img-sp-pc {
    display: block;
  }
}
.footer-img-tb {
  display: none;
}
@media (min-width: 768px) {
  .footer-img-tb {
    display: block;
  }
}
@media (min-width: 1080px) {
  .footer-img-tb {
    display: none;
  }
}
.footer-img img {
  margin: 0 auto;
}
@media (min-width: 768px) {
  .footer-img img {
    width: calc(var(--vw) * 33.85);
  }
}
@media (min-width: 1080px) {
  .footer-img img {
    width: auto;
  }
}
.footer-nav {
  display: flex;
  margin: 0 auto;
  gap: 10.67vw;
}
@media (min-width: 768px) {
  .footer-nav {
    order: 3;
    margin: 0 0 6.51vw auto;
    gap: 6.51vw;
  }
}
@media (min-width: 1080px) {
  .footer-nav {
    margin: 0 0 4.63vw auto;
    gap: 3.7vw;
  }
}
@media (min-width: 1400px) {
  .footer-nav {
    margin: 0 0 2.6vw auto;
    gap: 2.6vw;
  }
}
.footer-nav a {
  color: #fff;
  line-height: 2;
  transition: 0.3s;
}
.footer-nav a:hover {
  opacity: 0.6;
}

.copyright {
  background: #C3F4FE;
  text-align: center;
  padding: 2.67vw;
  font-size: calc(var(--vw) * 3.2);
}
@media (min-width: 768px) {
  .copyright {
    padding: 1.04vw;
    font-size: calc(var(--vw) * 1.3);
  }
}
@media (min-width: 1080px) {
  .copyright {
    padding: 0.74vw;
    font-size: calc(var(--vw) * 0.93);
  }
}
@media (min-width: 1400px) {
  .copyright {
    padding: 0.57vw;
    font-size: calc(var(--vw) * 0.71);
  }
}

/* ================================================== */
/* アニメーション
/* ================================================== */
.fadeIn, .fadeUp, .fadeLeft {
  opacity: 0;
}

/* フェードイン */
.fadeInAni {
  -webkit-animation-name: fadeInAni;
          animation-name: fadeInAni;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}

@-webkit-keyframes fadeInAni {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes fadeInAni {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/* 下からフェードイン */
.fadeUpAni {
  -webkit-animation-name: fadeUpAni;
          animation-name: fadeUpAni;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}

@-webkit-keyframes fadeUpAni {
  from {
    opacity: 0;
    transform: translateY(10vw);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeUpAni {
  from {
    opacity: 0;
    transform: translateY(10vw);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@media (min-width: 768px) {
  @-webkit-keyframes fadeUpAni {
    from {
      opacity: 0;
      transform: translateY(6vw);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  @keyframes fadeUpAni {
    from {
      opacity: 0;
      transform: translateY(6vw);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}
@media (min-width: 1080px) {
  @-webkit-keyframes fadeUpAni {
    from {
      opacity: 0;
      transform: translateY(4vw);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  @keyframes fadeUpAni {
    from {
      opacity: 0;
      transform: translateY(4vw);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}
@media (min-width: 1400px) {
  @-webkit-keyframes fadeUpAni {
    from {
      opacity: 0;
      transform: translateY(2.5vw);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
  @keyframes fadeUpAni {
    from {
      opacity: 0;
      transform: translateY(2.5vw);
    }
    to {
      opacity: 1;
      transform: translateY(0);
    }
  }
}
/* 左からフェードイン */
.fadeLeftAni {
  -webkit-animation-name: fadeLeftAni;
          animation-name: fadeLeftAni;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  opacity: 0;
}

@-webkit-keyframes fadeLeftAni {
  from {
    opacity: 0;
    transform: translateX(28vw);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeLeftAni {
  from {
    opacity: 0;
    transform: translateX(28vw);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@media (min-width: 768px) {
  @-webkit-keyframes fadeLeftAni {
    from {
      opacity: 0;
      transform: translateX(15vw);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  @keyframes fadeLeftAni {
    from {
      opacity: 0;
      transform: translateX(15vw);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
}
@media (min-width: 1080px) {
  @-webkit-keyframes fadeLeftAni {
    from {
      opacity: 0;
      transform: translateX(12vw);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  @keyframes fadeLeftAni {
    from {
      opacity: 0;
      transform: translateX(12vw);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
}
@media (min-width: 1400px) {
  @-webkit-keyframes fadeLeftAni {
    from {
      opacity: 0;
      transform: translateX(7.5vw);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
  @keyframes fadeLeftAni {
    from {
      opacity: 0;
      transform: translateX(7.5vw);
    }
    to {
      opacity: 1;
      transform: translateX(0);
    }
  }
}
/* 遅れてアニメーションさせる */
#mv-container h1 {
  -webkit-animation-delay: 0.5s;
          animation-delay: 0.5s;
}

#mv-container h2 {
  -webkit-animation-delay: 1.5s;
          animation-delay: 1.5s;
}

@media (min-width: 768px) {
  #mv-container .vision {
    -webkit-animation-delay: 2.5s;
            animation-delay: 2.5s;
  }
}
@media (min-width: 1080px) {
  #kn {
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
  }
}
/*# sourceMappingURL=style.css.map */