.home_page .key {
  --height: 56.25vw;
  --min-height: 550px;
  --max-height: 1080px;
  height: var(--height);
  min-height: var(--min-height);
  max-height: var(--max-height);
  font-size: min(0.525vw, 0.625em);
  background: url(../images/idx_key_bg.jpg) no-repeat top center/cover;
  overflow: hidden;
}
@media only screen and (min-width: 1921px) {
  .home_page .key {
    --max-height: unset;
    --height: 100vh;
    font-size: 0.95vmin;
  }
  .home_page .key .inner {
    max-width: 100%;
  }
}
.home_page .key .inner {
  position: relative;
  padding: 0;
  width: 100%;
}
.home_page .key .mv_slider:not(.slick-slider) {
  display: flex;
  overflow: hidden;
  flex-direction: column;
  max-height: 200px;
  opacity: 0;
}
.home_page .key .key_text {
  position: relative;
  overflow: hidden;
}
.home_page .key .key_text .item {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-end;
  height: var(--height);
  min-height: var(--min-height);
  max-height: var(--max-height);
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
@keyframes idx_key_img {
  0% {
    transform: scale(1.1);
  }
  100% {
    transform: scale(1);
  }
}
.home_page .key .key_list_img picture {
  overflow: hidden;
  position: absolute;
  border-radius: 12px;
}
.home_page .key .key_list_img picture img {
  pointer-events: none;
  border-radius: 12px;
  width: 100%;
  transition: transform 3s ease;
  animation: forwards 3s idx_key_img ease;
}
.home_page .key .key_list_img .img1 {
  left: -0.5em;
  top: 21.1em;
  width: 48em;
  border-radius: 0 12px 12px 0;
}
.home_page .key .key_list_img .img1 img {
  border-radius: 0 12px 12px 0;
}
.home_page .key .key_list_img .img2 {
  width: 40em;
  top: 12.1em;
  right: 12em;
}
@media only screen and (min-width: 769px) and (max-width: 1600px) {
  .home_page .key .key_list_img .img2 {
    top: 20em;
    right: 15em;
  }
}
.home_page .key .key_list_img .img3 {
  left: 4.5em;
  bottom: 7.5em;
  width: 32em;
}
.home_page .key .key_list_img .img4 {
  right: 20em;
  bottom: 26.3em;
  width: 32em;
}
.home_page .key .catch {
  padding-bottom: 47.3em;
}
.home_page .key h2,
.home_page .key .jp {
  text-align: center;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.home_page .key h2 {
  font-size: 4.8em;
  color: #1e3d66;
  line-height: 1.6667;
  margin-bottom: 0.5625em;
}
.home_page .key .jp {
  font-size: 2.6em;
  line-height: 1.846;
}
.home_page .key .key_list_box {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10.6em;
}
.home_page .key .key_list_box .key_list {
  margin-left: auto;
  margin-right: auto;
  max-width: 82.8em;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.home_page .key .key_list_box .key_list .key_list_item {
  width: 26em;
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: 50%;
  height: auto;
  aspect-ratio: 1/1;
  box-shadow: 3.277px 2.294px 20px 0px rgba(0, 0, 0, 0.12);
  position: relative;
  z-index: 1;
}
.home_page .key .key_list_box .key_list .key_list_item::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  inset: 10px;
  border-radius: 50%;
  background-color: #fff;
}
.home_page .key .key_list_box .key_list .key_list_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.home_page .key .key_list_box .key_list .key_list_item p {
  font-size: 2.4em;
  letter-spacing: 0.05em;
  font-weight: 500;
  line-height: 1.75;
}
.home_page .key .key_list_box .key_list .key_list_item p .clr {
  color: #2f5891;
  font-weight: 700;
}
.home_page .key .key_list_box .key_list .key_list_item1 p {
  line-height: 1;
  padding-bottom: 0.75em;
}
.home_page .key .key_list_box .key_list .key_list_item1 p .clr {
  line-height: 1;
  display: block;
  font-size: 1.5em;
  margin: -0.0556em 0 0.5556em;
  font-weight: 500;
}
.home_page .key .key_list_box .key_list .key_list_item1 p .clr .num {
  font-size: 2em;
  position: relative;
  top: 0.0556em;
  left: -0.0278em;
}
.home_page .key .key_list_box .key_list .key_list_item2::before {
  content: "";
  display: block;
  background: url(../images/idx_key_icon.svg) no-repeat center/contain;
  width: 7.6em;
  height: 7.3em;
  margin-bottom: 0.8em;
}
.home_page .topic_path {
  display: none;
}
.home_page .wrap_h3.t_center {
  display: table;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.home_page .wrap_h3.white * {
  color: #fff;
}
.home_page .wrap_h3.white::after {
  background-image: url(../images/idx_h3_icon_white.png);
  margin-top: 9px;
}
.home_page .wrap_h3::after {
  content: "";
  display: block;
  margin: 9px auto 0;
  background: url(../images/idx_h3_icon.png) no-repeat center/contain;
  width: 51px;
  height: 26px;
}
.home_page .h_en {
  font-weight: 500;
  line-height: 1;
  text-transform: uppercase;
  margin-top: 2px;
  letter-spacing: 0.1em;
  font-size: 18px;
}
.home_page .h_en.big {
  color: rgba(222, 235, 244, 0.06);
  font-size: 120px;
  line-height: 1;
  letter-spacing: 0.05em;
  margin: 0;
  font-weight: 400;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .home_page .h_en {
    letter-spacing: 0;
  }
  .home_page .h_en.big {
    font-size: min(13vw, 110px);
  }
}
.home_page h3 {
  position: relative;
  color: var(--main-color);
  font-size: 2.25em;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.7222222222;
  font-feature-settings: "palt";
}
.home_page h3 .jp {
  font-size: 1.1667em;
  letter-spacing: 0.1em;
  color: #fff;
  background-color: var(--main-color);
  display: inline;
  padding: 0.0238em 0.5714em 0.0952em 0.4762em;
  margin: 0 0.1429em 0 0.0952em;
}
.home_page h3.large {
  font-size: 42px;
}
.home_page h3.white {
  color: #fff;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .home_page h3 {
    font-size: 32px;
    letter-spacing: 0;
  }
  .home_page h3.large {
    font-size: 36px;
    letter-spacing: 0;
  }
}

@media only screen and (max-width: 1600px) and (min-width: 769px) and (max-height: 800px) and (orientation: landscape) {
  .home_page .key {
    font-size: min(0.625em, 0.9vmin);
    --max-height: 100vh;
  }
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .home_page .key {
    font-size: 1.05vmin;
  }
  .home_page .key .key_list_img {
    font-size: 0.9em;
  }
}
@media only screen and (max-width: 1280px) and (min-width: 769px) {
  .home_page .key {
    font-size: 0.8vmin;
  }
}
@media only screen and (max-width: 1280px) and (min-width: 769px) and (max-height: 769px) {
  .home_page .key {
    font-size: 1vmin;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .home_page .key {
    font-size: 0.52vw;
  }
  .home_page .key .key_list_img .img2 {
    top: 22em;
  }
  .home_page .key .key_list_img .img4 {
    right: 6em;
  }
}
@media only screen and (max-width: 850px) and (min-width: 769px) {
  .home_page .key {
    font-size: 0.6vw;
  }
}
section {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

@keyframes idx_scroll {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}
.idx_scroll {
  position: absolute;
  z-index: 1;
  bottom: 3.9em;
  right: 2.1em;
}
.idx_scroll a {
  display: block;
  width: 18.8em;
  height: 18.8em;
  position: relative;
  z-index: 1;
}
.idx_scroll a::before, .idx_scroll a::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  inset: 0;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-position: center;
  background-color: var(--main-color);
}
.idx_scroll a::before {
  mask-image: url(../images/idx_scroll_arr.png);
}
.idx_scroll a::after {
  mask-image: url(../images/idx_scroll_txt.png);
  animation: idx_scroll 8s linear infinite;
}
.idx_scroll a:hover {
  opacity: 1;
}
@media only screen and (min-width: 769px) {
  .idx_scroll a:hover::before, .idx_scroll a:hover::after {
    background-color: var(--clr2);
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx_scroll {
    font-size: 0.8em;
  }
}

.idx1 {
  padding: 82px 0;
  background-color: #fff;
}
.idx1 .inner {
  max-width: 1640px;
}
.idx1 .idx1_bg {
  background-color: #ecf2fa;
  border-radius: 60px;
  padding: 97px 20px 108px;
}
.idx1 .idx1_list {
  margin: -14px auto 0;
  max-width: 1470px;
  justify-content: flex-start;
  position: relative;
  left: 12px;
  font-size: min(0.63vw, 10px);
}
.idx1 .idx1_list .item {
  position: relative;
  z-index: 1;
  filter: drop-shadow(6.553px 4.589px 10px rgba(0, 0, 0, 0.06));
  display: flex;
  align-items: center;
  justify-content: center;
}
.idx1 .idx1_list .item p {
  line-height: 1.6363636364;
  font-weight: 500;
  font-size: 2.2em;
  text-align: center;
  letter-spacing: 0.05em;
  font-feature-settings: "palt";
}
.idx1 .idx1_list .item p span {
  color: var(--main-color);
}
.idx1 .idx1_list .item::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  inset: 0;
  mask-size: contain;
  mask-position: top center;
  mask-repeat: no-repeat;
  mask-image: var(--mask);
  background-color: #fff;
}
.idx1 .idx1_list .item .link a::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../images/idx_share_arr.png);
  background-color: var(--main-color);
  width: 3em;
  height: 1.1em;
  left: calc(50% - 1.5em);
  bottom: 2.4em;
}
.idx1 .idx1_list .item1 {
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='481px' height='203px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M244.511,9.434 C194.550,6.957 143.127,4.624 95.672,17.589 C48.216,30.554 5.081,62.670 0.387,103.262 C-4.379,144.473 34.766,184.667 84.113,194.545 C128.800,203.488 175.391,190.772 221.407,190.600 C262.448,190.445 302.579,200.301 343.524,202.596 C384.469,204.890 430.105,197.603 455.179,171.135 C460.944,165.050 465.376,158.183 468.994,151.084 C482.084,125.396 484.341,95.505 471.312,69.796 C435.948,0.019 319.015,13.132 244.511,9.434 Z'/%3E%3C/svg%3E");
}
.idx1 .idx1_list .item1::before {
  pointer-events: none;
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='41px' height='48px'%3E%3Cpath fill-rule='evenodd' fill='rgb(175, 202, 220)' d='M35.111,48.008 C35.416,48.008 36.028,47.984 36.546,47.932 C36.903,47.896 36.944,47.574 37.128,47.214 C37.092,46.853 36.772,46.588 36.418,46.625 C34.501,46.818 32.092,46.820 31.511,45.093 C31.165,44.583 31.396,44.051 31.635,43.545 C32.696,43.505 33.756,43.403 34.809,43.235 C36.108,43.029 36.898,42.366 36.922,41.688 C36.936,40.964 36.720,40.531 36.315,40.244 C35.619,39.750 34.490,39.830 33.735,40.100 C32.609,40.549 31.576,41.320 30.903,42.250 C29.681,42.260 28.448,42.184 27.227,42.017 C25.834,41.826 24.094,41.629 22.984,40.290 C21.575,38.906 21.633,36.454 22.491,34.638 C23.337,36.455 25.053,37.783 26.721,38.401 C29.276,39.349 32.042,39.075 34.165,38.730 C37.700,38.136 40.125,36.644 40.822,34.414 C41.730,31.511 39.411,28.529 36.762,27.670 C35.832,27.368 34.618,27.260 33.956,27.277 C34.291,26.841 34.422,26.623 34.310,25.847 C34.214,25.424 33.946,25.043 33.515,24.714 C33.140,24.428 32.739,24.233 32.327,24.109 C32.376,22.932 32.169,21.799 31.725,20.818 C32.654,19.799 33.461,18.662 34.110,17.420 C35.141,15.446 35.605,13.565 35.490,11.829 C35.401,10.487 34.952,9.073 34.156,7.628 C32.245,4.158 28.977,1.567 25.190,0.519 C22.152,-0.260 18.627,-0.201 14.995,0.869 C11.934,1.770 7.714,3.669 4.996,7.788 C2.804,10.764 2.181,14.804 3.275,18.253 C1.535,19.787 0.848,21.905 0.977,24.168 C1.529,26.693 3.500,28.834 5.963,29.376 C6.060,29.396 6.157,29.415 6.255,29.431 C6.562,30.069 6.915,30.693 7.628,31.398 C9.196,32.706 11.275,33.319 13.101,33.728 C16.116,34.403 18.792,34.601 21.199,34.317 C20.064,36.914 20.520,39.707 22.049,41.201 C23.437,42.660 25.452,43.247 27.053,43.318 C28.113,43.463 29.179,43.544 30.245,43.561 C30.058,44.201 30.053,44.872 30.291,45.540 C30.711,46.820 31.901,48.008 35.111,48.008 ZM34.958,41.184 C35.040,41.184 35.450,41.233 35.570,41.319 C35.620,41.355 35.626,41.373 35.625,41.427 C35.620,41.624 35.173,41.848 34.607,41.938 C33.1000,42.035 33.390,42.227 32.778,42.161 C33.206,41.815 33.700,41.525 34.211,41.321 C34.450,41.225 34.718,41.184 34.958,41.184 ZM34.154,28.589 C34.731,28.589 35.643,28.685 36.365,28.920 C38.428,29.590 40.244,31.989 39.584,34.018 C38.903,36.368 36.149,37.078 33.959,37.434 C31.951,37.753 29.441,38.012 27.168,37.213 C25.709,36.627 23.917,35.450 23.567,33.860 C23.826,33.789 24.082,33.711 24.334,33.627 C26.861,32.787 29.022,31.197 30.457,29.228 C31.608,28.872 32.879,28.589 34.154,28.589 ZM21.988,32.873 C19.496,33.323 16.659,33.181 13.381,32.446 C11.722,32.075 9.845,31.528 8.503,30.565 C8.248,30.056 8.012,29.783 7.805,29.481 C9.667,29.540 11.435,28.266 12.460,26.719 C12.637,26.372 12.794,26.074 12.904,25.541 C12.913,25.468 12.918,25.396 12.919,25.324 C13.106,25.894 13.361,26.196 13.694,26.284 C14.280,26.772 14.997,27.153 15.487,27.112 C16.557,27.378 17.645,27.422 18.443,27.265 C19.773,27.770 21.037,28.193 22.485,28.547 C22.692,28.598 22.768,28.915 23.100,28.691 C22.293,29.907 21.891,31.215 21.958,32.522 C21.965,32.641 21.974,32.757 21.988,32.873 ZM27.551,30.217 C26.819,31.035 25.693,31.713 24.454,32.191 C25.467,31.339 26.640,30.709 27.551,30.217 ZM26.820,29.213 C25.638,29.762 24.391,30.485 23.316,31.457 C23.481,30.517 23.935,29.681 24.254,29.126 C25.309,29.095 26.080,29.177 26.820,29.213 ZM11.487,25.111 C11.605,25.129 11.632,25.252 11.616,25.376 C11.592,25.569 11.471,25.779 11.368,25.941 C10.484,27.334 8.832,28.195 7.197,28.195 C7.190,28.195 7.183,28.195 7.177,28.195 C6.937,27.415 6.922,26.581 7.268,25.829 C7.627,25.049 8.394,24.472 9.233,24.264 C9.981,24.580 10.759,24.828 11.487,25.111 ZM7.709,23.497 C7.014,23.917 6.435,24.530 6.092,25.275 C5.754,26.199 5.617,26.962 5.786,28.041 C3.959,27.393 2.711,25.786 2.314,23.981 C2.221,22.344 2.823,20.778 3.840,19.461 C3.859,19.498 3.879,19.536 3.899,19.574 C4.807,21.277 6.149,22.568 7.709,23.497 ZM29.898,27.719 C28.614,27.957 27.196,28.195 25.626,27.796 C26.523,27.007 27.324,26.464 27.914,26.207 C28.650,25.810 29.781,25.306 30.878,25.251 C30.877,25.255 30.876,25.258 30.876,25.261 C30.646,26.115 30.225,26.942 29.898,27.719 ZM31.035,23.936 C29.615,23.950 28.208,24.559 27.302,25.050 C25.978,25.766 24.869,26.612 24.010,27.541 C23.612,27.463 22.934,27.373 22.790,27.272 C22.033,27.086 21.331,26.882 20.681,26.782 C20.870,26.567 21.053,26.470 21.230,26.365 C24.744,25.847 28.110,24.250 30.728,21.823 C30.949,22.472 31.054,23.190 31.035,23.936 ZM32.165,25.441 C32.363,25.520 32.555,25.626 32.734,25.762 C32.910,25.896 33.020,26.030 33.044,26.139 C33.109,26.426 32.528,26.810 32.153,27.025 C31.727,27.107 31.782,27.184 31.591,27.255 C31.832,26.698 32.019,26.124 32.144,25.539 C32.151,25.507 32.158,25.473 32.165,25.441 ZM20.862,25.055 C19.833,25.202 18.795,25.248 17.766,25.188 C20.061,24.773 21.640,23.844 22.461,22.423 C22.644,22.107 22.783,21.769 22.600,21.418 C22.728,22.541 22.364,23.459 21.784,24.188 C21.514,24.528 21.202,24.816 20.862,25.055 ZM30.100,20.588 C28.153,22.452 25.713,23.827 23.112,24.574 C24.073,22.924 24.267,20.672 24.065,17.711 C24.061,17.685 24.057,17.659 24.053,17.632 C24.470,17.697 24.895,17.898 25.328,17.881 C27.591,18.408 29.196,19.319 30.100,20.588 ZM13.631,23.198 C13.999,23.508 14.208,23.806 14.435,24.091 C14.240,24.082 14.044,24.069 13.848,24.053 C13.531,23.780 13.785,23.491 13.631,23.198 ZM20.821,17.514 C21.807,18.801 22.042,20.548 21.341,21.760 C20.683,22.899 19.286,23.635 17.190,23.953 C16.860,24.003 16.521,24.290 16.175,24.066 C16.034,23.930 15.897,23.790 15.711,23.645 C15.174,22.992 14.695,22.236 14.340,21.424 C15.222,19.776 16.928,18.746 18.959,17.865 C19.551,17.692 20.173,17.575 20.821,17.514 ZM12.926,21.375 C12.612,22.138 12.443,23.060 12.392,23.877 C12.441,23.865 12.368,23.851 12.295,23.836 C11.889,23.406 11.331,23.094 10.760,22.962 C10.304,22.857 9.835,22.841 9.374,22.904 C7.579,22.359 5.834,20.783 4.819,18.950 C4.948,18.977 4.861,18.597 4.782,18.416 C5.495,17.731 6.310,17.148 7.142,16.703 C8.862,15.779 10.779,15.213 12.725,15.035 C12.094,17.085 12.084,19.353 12.926,21.375 ZM19.572,16.368 C19.241,16.432 18.917,16.510 18.599,16.603 C16.614,17.181 14.935,18.324 13.745,19.823 C13.193,18.277 13.534,16.635 14.057,15.222 C14.077,15.088 14.098,15.032 13.846,14.975 C14.619,14.978 15.049,15.006 15.611,15.060 C16.780,15.189 18.307,15.525 19.572,16.368 ZM20.779,1.280 C22.317,1.280 23.627,1.448 24.754,1.786 C28.250,2.727 31.305,5.150 33.022,8.267 C33.725,9.542 34.119,10.770 34.195,11.916 C34.294,13.406 33.879,15.052 32.898,17.040 C32.429,17.827 31.771,18.947 30.938,19.634 C29.906,18.197 28.015,17.178 25.619,16.601 C24.1000,16.501 24.393,16.346 23.801,16.272 C23.450,15.389 23.145,13.963 22.428,12.903 C21.315,11.262 19.570,10.282 17.883,10.340 C15.824,10.413 14.192,11.945 13.281,13.681 C10.934,13.796 8.329,14.432 6.534,15.542 C5.767,15.953 5.013,16.639 4.323,17.073 C3.619,14.278 4.236,10.985 6.060,8.348 C8.561,4.735 12.213,3.038 15.358,2.130 C17.280,1.564 19.164,1.280 20.779,1.280 ZM22.715,17.487 C22.739,17.630 22.761,17.810 22.782,17.907 C22.834,18.262 22.876,18.604 22.853,18.934 C22.789,18.500 22.600,17.937 22.344,17.756 C22.467,17.473 22.591,17.479 22.715,17.487 ZM21.785,16.385 C21.736,16.385 21.552,16.425 21.368,16.161 C20.073,14.849 18.133,14.018 15.565,13.755 C15.296,13.720 15.007,13.695 14.715,13.679 C15.531,12.574 16.625,11.699 17.929,11.652 C19.172,11.610 20.494,12.372 21.357,13.646 C21.880,14.417 22.212,15.301 22.436,16.159 C22.264,16.422 22.092,16.385 21.785,16.385 Z'/%3E%3C/svg%3E") no-repeat center/contain;
  width: 4.1em;
  height: 4.8em;
  top: -2.8em;
  left: 6.2em;
}
.idx1 .idx1_list .item2 {
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='520px' height='184px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M75.815,37.131 C55.397,45.127 35.146,55.131 20.175,71.116 C5.205,87.103 -3.698,110.137 1.945,131.273 C6.943,149.995 22.570,164.550 40.299,172.472 C58.030,180.395 77.775,182.532 97.183,183.423 C154.771,186.069 212.376,178.633 270.021,179.250 C331.226,179.906 394.510,189.355 452.196,168.948 C486.557,156.794 520.077,128.573 519.774,92.217 C519.553,65.696 500.985,42.273 478.759,27.701 C440.717,2.764 392.744,-1.466 347.254,0.350 C256.527,3.972 161.613,3.537 75.815,37.131 Z'/%3E%3C/svg%3E");
}
.idx1 .idx1_list .item2::before {
  pointer-events: none;
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url(../images/idx1_icon2.png) no-repeat center/contain;
  width: 3.8em;
  height: 4.9em;
  top: -3.5em;
  right: 4.9em;
}
.idx1 .idx1_list .item3 {
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='481px' height='185px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M245.010,10.318 C169.010,15.317 123.652,-8.499 76.208,4.482 C28.765,17.464 5.640,43.620 0.947,84.265 C-3.817,125.526 35.318,165.772 84.653,175.663 C129.328,184.617 175.908,171.885 221.911,171.713 C262.942,171.558 303.064,181.426 343.998,183.724 C384.933,186.021 430.557,178.725 455.625,152.223 C461.388,146.130 465.819,139.255 469.436,132.147 C482.522,106.426 484.780,76.498 471.754,50.757 C436.399,-19.110 321.010,5.318 245.010,10.318 Z'/%3E%3C/svg%3E");
}
.idx1 .idx1_list .item4 {
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='481px' height='204px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M244.594,194.096 C194.637,196.574 143.218,198.908 95.765,185.939 C48.313,172.969 5.181,140.844 0.487,100.239 C-4.278,59.017 34.864,18.809 84.208,8.928 C128.892,-0.017 175.479,12.703 221.492,12.875 C262.530,13.029 302.659,3.171 343.601,0.876 C384.543,-1.420 430.176,5.869 455.248,32.346 C461.012,38.433 465.444,45.302 469.062,52.403 C482.151,78.099 484.408,107.999 471.380,133.715 C436.018,203.514 319.093,190.397 244.594,194.096 Z'/%3E%3C/svg%3E");
}
.idx1 .idx1_list .item5 {
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='481px' height='204px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M244.600,9.611 C194.648,7.130 143.234,4.792 95.787,17.781 C48.340,30.770 5.213,62.943 0.520,103.610 C-4.245,144.895 34.892,185.162 84.231,195.058 C128.910,204.017 175.492,191.279 221.500,191.106 C262.534,190.951 302.658,200.825 343.595,203.123 C384.533,205.422 430.161,198.122 455.230,171.605 C460.994,165.509 465.425,158.630 469.042,151.518 C482.130,125.784 484.387,95.839 471.360,70.083 C436.003,0.179 319.091,13.316 244.600,9.611 Z'/%3E%3C/svg%3E");
}
.idx1 .idx1_list .item6 {
  --mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='480px' height='170px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M410.192,135.669 C429.057,128.283 447.768,119.043 461.600,104.276 C475.432,89.509 483.658,68.232 478.445,48.708 C473.827,31.414 459.388,17.970 443.007,10.652 C426.625,3.333 408.381,1.359 390.449,0.537 C337.241,-1.908 284.016,4.961 230.755,4.392 C174.205,3.785 115.734,-4.943 62.435,13.907 C30.687,25.134 -0.284,51.203 -0.004,84.786 C0.201,109.283 17.356,130.920 37.892,144.379 C73.041,167.414 117.365,171.322 159.396,169.644 C243.223,166.298 330.919,166.701 410.192,135.669 Z'/%3E%3C/svg%3E");
}
.idx1 .idx1_list .item6::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='51px' height='56px'%3E%3Cpath fill-rule='evenodd' fill='rgb(175, 202, 220)' d='M50.043,54.268 C47.259,54.356 44.474,54.444 41.689,54.532 C37.272,54.672 32.854,54.812 28.436,54.951 C27.417,54.984 26.398,55.016 25.379,55.048 C24.372,55.081 23.974,53.418 25.105,53.382 C27.889,53.294 30.674,53.206 33.458,53.118 C37.876,52.978 42.294,52.838 46.711,52.698 C47.731,52.666 48.750,52.634 49.769,52.601 C50.776,52.569 51.174,54.232 50.043,54.268 ZM41.340,27.635 C39.240,28.593 37.139,29.553 35.039,30.511 C31.689,32.041 28.338,33.570 24.988,35.100 C24.215,35.452 23.443,35.805 22.671,36.158 C21.795,36.557 20.752,35.115 21.688,34.688 C23.789,33.728 25.889,32.770 27.989,31.810 C31.340,30.281 34.690,28.752 38.040,27.223 C38.813,26.870 39.585,26.517 40.358,26.164 C41.233,25.765 42.277,27.207 41.340,27.635 ZM26.101,11.267 C22.990,14.658 19.879,18.050 16.768,21.441 C16.057,22.216 15.346,22.992 14.635,23.767 C13.971,24.491 12.743,23.201 13.411,22.473 C15.354,20.355 17.297,18.237 19.239,16.118 C22.350,12.727 25.461,9.336 28.572,5.944 C29.283,5.168 29.994,4.393 30.706,3.618 C31.370,2.893 32.597,4.184 31.929,4.912 C29.987,7.031 28.044,9.149 26.101,11.267 ZM1.905,12.936 C1.688,13.974 0.156,13.187 0.339,12.314 C1.056,8.889 1.774,5.465 2.491,2.041 C2.593,1.554 2.695,1.067 2.797,0.580 C3.015,-0.457 4.547,0.330 4.364,1.202 C3.647,4.627 2.929,8.052 2.211,11.477 C2.109,11.963 2.007,12.450 1.905,12.936 Z'/%3E%3C/svg%3E") no-repeat center/contain;
  width: 5.1em;
  height: 5.6em;
  top: 0.1em;
  right: -3.2em;
  pointer-events: none;
}
@media only screen and (min-width: 769px) {
  .idx1 .idx1_list .item {
    transition: 0.3s all;
  }
  .idx1 .idx1_list .item p {
    transition: 0.3s all;
  }
  .idx1 .idx1_list .item p span {
    transition: 0.3s all;
  }
  .idx1 .idx1_list .item:hover {
    color: #fff;
  }
  .idx1 .idx1_list .item:hover p span {
    color: #fff;
  }
  .idx1 .idx1_list .item:hover::after {
    background-color: var(--clr3);
  }
  .idx1 .idx1_list .item:hover .link a::after {
    background-color: #fff;
  }
  .idx1 .idx1_list .item1 {
    width: 48.1em;
    height: 20.3em;
    padding-top: 0.4em;
  }
  .idx1 .idx1_list .item1 .link a::after {
    left: calc(50% - 1.6em);
    bottom: 3em;
  }
  .idx1 .idx1_list .item2 {
    width: 52em;
    height: 18.4em;
    margin-top: 7.6em;
    margin-left: -1.8em;
    padding-bottom: 0.4em;
  }
  .idx1 .idx1_list .item3 {
    width: 48.1em;
    height: 18.5em;
    margin-top: 1.9em;
    margin-left: -0.2em;
    padding-bottom: 0.4em;
  }
  .idx1 .idx1_list .item4 {
    width: 48.1em;
    height: 20.4em;
    margin-top: -4em;
    margin-left: 3em;
    padding-bottom: 1.2em;
  }
  .idx1 .idx1_list .item4 .link a::after {
    left: calc(50% - 1.6em);
    bottom: 3.8em;
  }
  .idx1 .idx1_list .item5 {
    width: 48.1em;
    height: 20.4em;
    margin-left: -2.6em;
    margin-top: 4em;
    padding-top: 0.4em;
  }
  .idx1 .idx1_list .item5 .link a::after {
    left: calc(50% - 1.6em);
    bottom: 3em;
  }
  .idx1 .idx1_list .item6 {
    width: 48em;
    height: 17em;
    margin-left: -4.6em;
    margin-top: -5.1em;
    padding-bottom: 0.4em;
  }
  .idx1 .idx1_list .item6 .link a::after {
    bottom: 1.7em;
  }
}
.idx1 h3 {
  color: var(--clr1);
}
.idx1 .h_en {
  margin-top: 15px;
  color: var(--main-color);
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx1 {
    padding: 60px 0;
  }
  .idx1 .idx1_list {
    margin-top: 0;
    font-size: 0.6vw;
  }
  .idx1 .idx1_bg {
    padding: 60px 20px;
  }
}

.idx2 {
  background-color: #deebf4;
  padding: 69px 0;
}
.idx2 .idx2_list {
  margin: 30px 0 40px;
}
.idx2 .idx2_list:not(.slick-slider) {
  opacity: 0;
  height: 320px;
}
.idx2 .idx2_list .item {
  background-color: #fff;
  width: 46.875vw;
  max-width: 900px;
  border-radius: 20px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 30% 65%;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0;
  padding: 50px 76px;
  position: relative;
  transition: 0.3s all;
}
.idx2 .idx2_list .item::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../images/idx_share_arr.png);
  background-color: var(--main-color);
  width: 1.875em;
  height: 0.6875em;
  right: 1.875em;
  bottom: 1.125em;
}
.idx2 .idx2_list .item .img {
  grid-row: 1/span 3;
  position: relative;
  font-size: min(0.7vw, 10px);
}
.idx2 .idx2_list .item .img p {
  line-height: 1;
  position: absolute;
  font-size: 1.4em;
  letter-spacing: 0;
  font-weight: 500;
  top: 1.7143em;
  left: 0;
  right: 0;
  text-align: center;
}
.idx2 .idx2_list .item .title {
  padding-top: 5px;
}
.idx2 .idx2_list .item p {
  font-feature-settings: "palt";
}
.idx2 .idx2_list .item .ttl01 {
  font-size: 24px;
  font-weight: 500;
  color: var(--main-color);
  letter-spacing: 0.1em;
  margin-bottom: 0.3333em;
  position: relative;
  padding-left: 0.875em;
}
.idx2 .idx2_list .item .ttl01::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-image: url(../images/idx2_icon.png);
  background-color: var(--main-color);
  width: 0.5833em;
  height: 0.5833em;
  left: -0.0417em;
  top: 0.75em;
}
.idx2 .idx2_list .item .ttl02 {
  color: var(--main-color);
  display: table;
  font-weight: 500;
  border-radius: 20px;
  border: 1px solid var(--main-color);
  line-height: 1;
  padding: 0.1875em 0.8125em 0.3125em 0.875em;
}
.idx2 .idx2_list .item .txt {
  padding-top: 1.4375em;
}
.idx2 .idx2_list .item .txt p {
  font-weight: 500;
}
.idx2 .idx2_list .item {
  margin: 0 30px;
}
@media only screen and (min-width: 769px) {
  .idx2 .idx2_list .item p {
    transition: 0.3s all;
  }
  .idx2 .idx2_list .item:hover {
    background-color: var(--clr2);
  }
  .idx2 .idx2_list .item:hover .ttl01,
  .idx2 .idx2_list .item:hover .ttl02 {
    color: #fff;
  }
  .idx2 .idx2_list .item:hover .ttl01::before {
    background-color: #fff;
  }
  .idx2 .idx2_list .item:hover .ttl02 {
    border-color: #fff;
  }
  .idx2 .idx2_list .item:hover::after {
    background-color: #fff;
  }
  .idx2 .idx2_list .item:hover .txt p {
    color: #fff;
  }
}
.idx2 .slider .slick-list,
.idx2 .slider .slick-track {
  height: 100%;
}
.idx2 .slider .slick-slide {
  height: 100%;
}
.idx2 .slick-track {
  display: flex !important;
}
.idx2 .slick-slide {
  height: auto !important;
}
.idx2 .slick-arrow {
  position: absolute;
  z-index: 1;
  top: 50%;
  width: 3.75em;
  height: 3.75em;
  background-color: #1e3d66;
  border-radius: 50%;
  opacity: 1;
  transition: 0.3s all;
}
@media only screen and (min-width: 769px) {
  .idx2 .slick-arrow:hover {
    background-color: var(--clr2);
  }
}
.idx2 .slick-prev {
  left: 24.8vw;
  background-image: url(../images/idx2_prev.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.idx2 .slick-next {
  right: 24.65vw;
  background-image: url(../images/idx2_next.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.idx2 .idx2_dot {
  margin: 0 auto 0;
}
.idx2 .idx2_dot ul {
  display: flex;
  align-items: center;
  justify-content: center;
}
.idx2 .idx2_dot li button {
  cursor: pointer;
  color: transparent;
  border: 0;
  background-color: #fff;
  width: 30px;
  height: 4px;
  transition: 0.3s all;
}
@media only screen and (min-width: 769px) {
  .idx2 .idx2_dot li button:hover {
    background-color: var(--main-color);
  }
}
.idx2 .idx2_dot li.slick-active button {
  background-color: var(--main-color);
}
.idx2 .idx2_dot li:not(:last-child) {
  margin-right: 4px;
}
@media only screen and (min-width: 2000px) {
  .idx2 .slick-next {
    right: 37.3vw;
  }
  .idx2 .slick-prev {
    left: 37.3vw;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1600px) {
  .idx2 .idx2_list .item .ttl01 {
    letter-spacing: 0;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx2 {
    padding: 60px 0 50px;
  }
  .idx2 .idx2_list .item {
    padding: 40px;
  }
  .idx2 .idx2_list .item .ttl01 {
    font-size: 20px;
  }
  .idx2 .idx2_list .item .ttl02 {
    font-size: 14px;
    letter-spacing: 0;
  }
  .idx2 .idx2_list .item .txt p {
    font-size: 14px;
    letter-spacing: 0;
  }
  .idx2 .idx2_list .slick-next {
    right: 24.5vw;
    width: 40px;
    height: 40px;
  }
  .idx2 .idx2_list .slick-prev {
    left: 24.5vw;
    width: 40px;
    height: 40px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx2 .idx2_list .item {
    padding: 25px;
    margin: 0 15px;
    width: 60vw;
  }
  .idx2 .idx2_list .item .ttl01 {
    font-size: 18px;
  }
  .idx2 .idx2_list .slick-next {
    right: 17vw;
    width: 40px;
    height: 40px;
  }
  .idx2 .idx2_list .slick-prev {
    left: 17vw;
    width: 40px;
    height: 40px;
  }
}

.idx3 {
  background-color: #ecf2fa;
  padding: 80px 0 90px;
}
.idx3 .inner {
  max-width: 1640px;
}
.idx3 .idx3_bg {
  background-color: #fff;
  padding: 86px 0 80px;
  border-radius: 60px;
}
.idx3 h3 {
  color: var(--clr1);
}
.idx3 h3 .clr {
  color: var(--main-color);
  position: relative;
  font-weight: 700;
}
.idx3 h3 .clr::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  height: 1px;
  left: 1px;
  right: 1px;
  background-color: var(--main-color);
  bottom: -0.0833em;
}
.idx3 .idx3_inner {
  display: grid;
  grid-template-columns: 37.1875% 59%;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0;
}
.idx3 .idx3_inner .img {
  grid-row: 1/span 3;
  margin-top: 27px;
  position: relative;
  left: 3px;
}
.idx3 .idx3_inner .txt {
  padding-top: 27px;
}
.idx3 .idx3_inner .txt p {
  font-size: 18px;
  font-feature-settings: "palt";
  line-height: 2.3333333333;
  font-weight: 500;
}
.idx3 .idx3_box_bg {
  margin-top: 110px;
  border-radius: 40px;
  border: 2px solid #deebf4;
  padding: 0 0 57px;
}
.idx3 .idx3_box_bg .idx3_ttl {
  background-color: #deebf4;
  border-radius: 40px;
  padding: 1.1em 4em 1.5em;
  display: table;
  margin: -4.2em auto 0;
  font-size: 10px;
}
.idx3 .idx3_box_bg .ttl {
  text-align: center;
  line-height: 1.5;
  font-size: 2.6em;
  font-weight: 500;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
  padding: 0 2.0769em;
  position: relative;
}
.idx3 .idx3_box_bg .ttl span {
  font-size: 1.3846em;
  letter-spacing: 0.1em;
  color: var(--main-color);
}
.idx3 .idx3_box_bg .ttl::before, .idx3 .idx3_box_bg .ttl::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 1.2308em;
  height: 1.2308em;
}
.idx3 .idx3_box_bg .ttl::before {
  background: url(../images/idx3_ttl_l.png) no-repeat center/contain;
  left: 0;
  top: calc(50% - 0.5385em);
}
.idx3 .idx3_box_bg .ttl::after {
  background: url(../images/idx3_ttl_r.png) no-repeat center/contain;
  right: 0;
  top: calc(50% - 0.5385em);
}
.idx3 .idx3_list {
  margin-top: 40px;
}
.idx3 .idx3_list .item {
  width: calc(33.3333333333% - 26.66px);
  background-color: #f4f4f4;
  border-radius: 10px;
  padding: 41px 0 48px;
}
.idx3 .idx3_list .item .ttl01 {
  font-size: 24px;
  letter-spacing: 0.1em;
  font-weight: 500;
  color: var(--main-color);
  line-height: 1.5;
  text-align: center;
  font-feature-settings: "palt";
  margin-bottom: 17px;
}
.idx3 .idx3_list .item .ttl01::after {
  content: "";
  display: block;
  width: 80px;
  height: 1px;
  background-color: var(--main-color);
  margin: 7px auto 0;
}
.idx3 .idx3_list .item .ttl02 {
  text-align: center;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
  margin: 0 auto;
  width: 78%;
  font-weight: 500;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx3 {
    padding: 60px 0;
  }
  .idx3 .idx3_inner .txt p {
    letter-spacing: 0;
    font-size: 16px;
  }
  .idx3 .idx3_box_bg .idx3_ttl {
    font-size: 8px;
  }
  .idx3 .idx3_inner .txt {
    padding-right: 35px;
  }
  .idx3 .idx3_list .item {
    width: calc(33.3333333333% - 10px);
  }
  .idx3 .idx3_list .item .ttl01 {
    font-size: 20px;
  }
  .idx3 .idx3_list .item .ttl02 {
    width: 100%;
    padding: 0 10px;
    letter-spacing: 0;
    font-size: 14px;
  }
  .idx3 .idx3_bg {
    padding: 60px 0;
  }
  .idx3 .idx3_box_bg {
    margin-left: auto;
    margin-right: auto;
    max-width: 1200px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx3 .idx3_inner .txt p {
    letter-spacing: 0;
    font-size: 16px;
  }
  .idx3 .idx3_box_bg .idx3_ttl {
    font-size: 7px;
  }
  .idx3 .idx3_list .item .ttl01 {
    font-size: 20px;
  }
  .idx3 .idx3_list .item .ttl01 br {
    display: block !important;
  }
  .idx3 .idx3_list .item .ttl02 {
    width: 100%;
    padding: 0 10px;
    letter-spacing: 0;
    font-size: 14px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 850px) {
  .idx3 h3 span {
    display: table;
  }
}

.idx4 {
  background-color: #ecf2fa;
  padding: 0 0 90px;
}
.idx4 .idx4_bg {
  background: url(../images/idx4_bg.jpg) no-repeat top center/cover;
  padding: 66px 20px 83px;
  border-radius: 60px;
}
.idx4 .inner {
  max-width: 1640px;
}
.idx4 h3 {
  margin-top: -2.1667em;
}
.idx4 .idx4_ttl {
  line-height: 1.5;
  font-size: 24px;
  color: #fff;
  text-align: center;
  letter-spacing: 0.1em;
  font-feature-settings: "palt";
  margin-top: 1.5417em;
}
.idx4 .idx4_ttl span {
  padding-right: 1em;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx4 .idx4_ttl {
    font-size: 20px;
    letter-spacing: 0;
  }
  .idx4 .idx4_bg {
    padding: 60px 20px;
  }
}

.idx_btn {
  max-width: 1240px;
  margin: 57px auto 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  font-size: 10px;
}
.idx_btn > div {
  height: 12em;
  width: calc(50% - 2em);
  border-radius: 12px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s all;
}
.idx_btn > div a {
  z-index: 2;
  border-radius: 12px;
}
.idx_btn > div p {
  font-feature-settings: "palt";
}
.idx_btn .idx_tel {
  background-color: #fff;
}
.idx_btn .idx_tel p {
  letter-spacing: 0.05em;
}
.idx_btn .idx_tel .ttl01 {
  line-height: 1;
  font-size: 3.6em;
  font-weight: 500;
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.idx_btn .idx_tel .ttl01::before {
  content: "";
  display: block;
  background: url(../images/idx4_icon_tel.png) no-repeat center/contain;
  width: 0.8333em;
  height: 0.8333em;
  margin-top: 0.1667em;
  margin-right: 0.1667em;
}
.idx_btn .idx_tel .ttl01::after {
  content: "";
  display: block;
  background-color: #d7d7d7;
  width: 0.0278em;
  height: 1.1667em;
  margin-left: 0.4722em;
  margin-right: 0.5278em;
  position: relative;
  top: 0.06em;
}
.idx_btn .idx_tel .ttl02 {
  font-size: 1.4em;
  line-height: 1.7143em;
  display: flex;
  flex-direction: column;
  letter-spacing: 0.05em;
  font-weight: 500;
}
.idx_btn .idx_tel .ttl02 .char1 {
  margin: 0 0.2143em 0 0.5em;
}
.idx_btn .idx_tel .ttl02 .char2 {
  margin: 0 0.1429em 0 0.2857em;
}
.idx_btn .idx_tel .ttl02 .dot {
  margin: 0 0.2143em 0 0.3571em;
}
.idx_btn .idx_contact {
  background-color: var(--clr3);
  color: #fff;
  padding-left: 0.4em;
}
.idx_btn .idx_contact::before {
  content: "";
  display: block;
  background: url(../images/idx4_icon_contact.png) no-repeat center/contain;
  width: 3em;
  height: 3em;
  margin-right: 1.4em;
  margin-bottom: 1.6em;
}
.idx_btn .idx_contact p {
  line-height: 1;
  text-align: center;
  letter-spacing: 0.1em;
}
.idx_btn .idx_contact .ttl01 {
  font-weight: 500;
  font-size: 2.6em;
  margin-bottom: 0.3462em;
}
.idx_btn .idx_contact .ttl02 {
  font-size: 1.6em;
}
@media only screen and (min-width: 769px) {
  .idx_btn .idx_contact:hover {
    background-color: var(--clr2);
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx_btn {
    font-size: min(1vw, 10px);
  }
  .idx_btn > div {
    width: calc(50% - 5px);
  }
  .idx_btn > div p,
  .idx_btn > div span {
    letter-spacing: 0 !important;
  }
  .idx_btn .idx_tel .ttl01 {
    font-size: 2.6em;
  }
  .idx_btn .idx_tel .ttl01::after {
    height: 2em;
  }
}

.idx5 {
  padding: 87px 0 108px;
  background-image: url(../images/idx5_bg.jpg);
}
.idx5 h3 .txt {
  display: table;
  margin: 0 auto;
  position: relative;
  padding: 0 1.4762em;
}
.idx5 h3 .txt::before, .idx5 h3 .txt::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 0.8571em;
  height: 1.0238em;
  background-repeat: no-repeat;
  background-size: contain;
  top: calc(50% - 0.5em);
}
.idx5 h3 .txt::before {
  left: 10px;
  background-image: url(../images/idx5_icon_left.png);
}
.idx5 h3 .txt::after {
  right: 0;
  background-image: url(../images/idx5_icon_right.png);
}
.idx5 h3 .txt .num {
  font-size: 1.7143em;
  line-height: 0.87;
  font-weight: 400;
  letter-spacing: 0;
}
.idx5 .inner {
  max-width: 1104px;
}
.idx5 .idx5_slider {
  margin: 56px auto 0;
  width: 900px;
  max-width: calc(100% - 60px);
  counter-reset: count;
  position: relative;
}
.idx5 .idx5_slider:not(.slick-slider) {
  opacity: 0;
  height: 320px;
}
.idx5 .idx5_slider {
	border-radius: 20px;
  box-shadow: 3.277px 2.294px 50px 0px rgba(0, 0, 0, 0.3);
}
.idx5 .idx5_slider .item {
  background-color: #fff;
  border-radius: 20px;
  padding: 50px 40px 50px 28px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 36.2% 58.8%;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0;
  position: relative;
  z-index: 1;
}
.idx5 .idx5_slider .item {
	margin-right: 2px;
	margin-left: 2px;
}
.idx5 .idx5_slider .item .p_num {
  content: counter(count, decimal-leading-zero);
  counter-increment: count;
  position: absolute;
  bottom: 0;
  right: 0.15em;
  line-height: 0.9;
  font-size: min(10vw, 120px);
  color: #deebf4;
  letter-spacing: 0.05em;
}
.idx5 .idx5_slider .item .img {
  grid-row: 1/span 3;
}
.idx5 .idx5_slider .item .ttl01 {
  line-height: 1.5;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: var(--main-color);
  margin-bottom: 21px;
}
.idx5 .idx5_slider .item .ttl02 {
  font-weight: 500;
}
.idx5 .idx5_slider .item p {
  font-feature-settings: "palt";
}
.idx5 .idx5_slider .item .txt {
  padding-top: 11px;
}
.idx5 .idx5_slider .item .num {
  display: flex;
  flex-direction: column;
  line-height: 1;
  margin-bottom: 11px;
  white-space: nowrap;
}
.idx5 .idx5_slider .item .num .num1 {
  color: #4c9de3;
  font-size: 1.5em;
  letter-spacing: 0;
  width: 1.1667em;
}
.idx5 .idx5_slider .item .num .num2 {
  color: #adadad;
  letter-spacing: 0;
  width: 1.75em;
  margin-left: 2.4375em;
  margin-top: -0.625em;
  position: relative;
}
.idx5 .idx5_slider .item .num .num2::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 1.75em;
  height: 0.0625em;
  background-color: #adadad;
  transform: rotate(135deg);
  left: -1.25em;
  top: 0.375em;
}
.idx5 .idx5_slider .slick-arrow {
  position: absolute;
  z-index: 1;
  top: 50%;
  width: 3.75em;
  height: 3.75em;
  border: 1px solid #fff;
  border-radius: 50%;
  opacity: 1;
  transition: 0.3s all;
}
@media only screen and (min-width: 769px) {
  .idx5 .idx5_slider .slick-arrow:hover {
    background-color: var(--clr2);
  }
}
.idx5 .idx5_slider .slick-prev {
  left: -84px;
  background-image: url(../images/idx2_prev.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.idx5 .idx5_slider .slick-next {
  right: -80px;
  background-image: url(../images/idx2_next.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.idx5 .idx5_number {
  width: 22em;
  height: 2em;
  display: flex;
  justify-content: space-between;
  margin: 4.1em auto 0;
  position: relative;
  z-index: 1;
  font-size: 10px;
}
.idx5 .idx5_number::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  height: 1px;
  width: 12em;
  background: rgba(255, 255, 255, 0.5);
  top: calc(50% + 0.4em);
  left: calc(50% - 6em);
}
.idx5 .idx5_number p {
  font-feature-settings: "palt";
  color: #fff;
  letter-spacing: 0;
  line-height: 1;
}
.idx5 .idx5_number .number1 {
  font-size: 2.4em;
}
.idx5 .idx5_number .number2 {
  font-size: 1.6em;
  padding-top: 0.4375em;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx5 {
    padding: 60px 0;
  }
  .idx5 .idx5_slider {
    margin-top: 40px;
    max-width: calc(100% - 100px);
  }
  .idx5 .idx5_slider .slick-next {
    right: -50px;
    width: 40px;
    height: 40px;
  }
  .idx5 .idx5_slider .slick-prev {
    left: -50px;
    width: 40px;
    height: 40px;
  }
  .idx5 .idx5_slider .item .ttl01 {
    font-size: 20px;
    letter-spacing: 0;
  }
}

.idx6 {
  background-color: #ecf2fa;
  padding: 72px 0 90px;
}
.idx6 .inner {
  max-width: 1640px;
}
.idx6 .idx6_inner {
  padding: 78px 26px 90px;
  justify-content: flex-start;
  align-items: center;
}
.idx6 .idx6_img {
  width: 42%;
  max-width: 640px;
  margin-right: 0.9%;
}
@media only screen and (min-width: 1919px) {
  .idx6 .idx6_img {
    margin-top: -40px;
  }
}
.idx6 .idx6_list {
  width: 55%;
  max-width: 830px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  gap: 10px;
  justify-content: center;
}
.idx6 .idx6_list .item {
  width: calc(25% - 0.75em);
  background-color: #deebf4;
  border-radius: 20px;
  padding: 3.1em 0 2.8em;
  aspect-ratio: 200/220;
  position: relative;
  z-index: 1;
  max-height: 22em;
  font-size: 10px;
}
.idx6 .idx6_list .item::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../images/idx_share_arr.png);
  width: 3em;
  height: 1.1em;
  background-color: var(--main-color);
  bottom: 1.4em;
  left: calc(50% - 1.5em);
}
.idx6 .idx6_list .item picture {
  max-width: 80px;
  margin: 0 auto;
}
.idx6 .idx6_list .item .jp {
  font-size: 2em;
  font-weight: 500;
  color: var(--main-color);
  letter-spacing: 0.1em;
  line-height: 22px;
  text-align: center;
  font-feature-settings: "palt";
  margin: 0.85em 0 0.45em;
}
.idx6 .idx6_list .item .jp.small {
  font-size: 1.8em;
  margin: 0.1111em 0 0.3889em;
}
.idx6 .idx6_list .item .en {
  font-size: 1em;
  text-align: center;
  color: var(--main-color);
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1.4;
  font-weight: 500;
}
.idx6 .idx6_list .item .txt {
  position: absolute;
  opacity: 0;
  inset: 0;
  border-radius: 20px;
  background: var(--main-color);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.3s all;
}
.idx6 .idx6_list .item .txt p {
  font-size: 1.6em;
  font-weight: 500;
  text-align: center;
  width: 76%;
  margin: 0 auto 0.4em;
  font-feature-settings: "palt";
}
@media only screen and (min-width: 769px) {
  .idx6 .idx6_list .item:hover .txt {
    opacity: 1;
  }
  .idx6 .idx6_list .item:hover::after {
    background-color: #fff;
  }
}
.idx6 .idx6_list .item12 .jp {
  letter-spacing: 0.025em;
}
@media only screen and (min-width: 1919px) {
  .idx6 .idx6_list .item2 picture,
  .idx6 .idx6_list .item6 picture {
    position: relative;
    left: 13px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1600px) {
  .idx6 .idx6_list .item .jp,
  .idx6 .idx6_list .item .en {
    letter-spacing: 0;
  }
  .idx6 .idx6_list .item .jp {
    font-size: 18px;
  }
  .idx6 .idx6_list .item .jp.small {
    font-size: 16px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx6 {
    padding: 60px 0;
  }
  .idx6 .idx6_inner {
    padding: 60px 20px;
  }
  .idx6 .idx6_list .item.item12 .jp br {
    display: block !important;
  }
  .idx6 .idx6_list .item picture {
    max-width: 60px;
  }
  .idx6 .idx6_list .item .txt p {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
    letter-spacing: 0;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx6 {
    padding: 60px 0;
  }
  .idx6 .idx6_inner {
    display: block;
  }
  .idx6 .idx6_img {
    margin: 0 auto 25px;
    width: 100%;
  }
  .idx6 .tab2 .idx6_img {
    margin-top: -90px;
  }
  .idx6 .tab3 .idx6_img {
    margin-top: -20px;
  }
  .idx6 .idx6_list {
    max-width: 100%;
    width: 100%;
  }
  .idx6 .idx6_list .item {
    width: calc(25% - 0.75em);
  }
}

.TabContainer {
  margin-top: 45px;
}
.TabContainer .TabPager {
  max-width: 1280px;
  width: 100%;
  align-items: flex-end;
  justify-content: space-between;
  position: relative;
  z-index: 3;
}
.TabContainer .TabPager > div {
  width: calc(33.3333333333% - 1px);
  padding: 0;
  background-color: #777f8a;
  border-radius: 6px 6px 0 0;
  position: relative;
  z-index: 2;
  transition: 0.3s all;
}
.TabContainer .TabPager > div::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  inset: 0;
  background: url(../images/idx6_tab_bg.jpg) repeat top left/100%;
  border-radius: 6px 6px 0 0;
  opacity: 0;
}
.TabContainer .TabPager > div::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url(../images/idx6_arr.png) no-repeat center/contain;
  width: 1.625em;
  height: 1.375em;
  left: calc(50% - 0.8125em);
  top: calc(100% - 0em);
  opacity: 0;
}
.TabContainer .TabPager > div p {
  color: #fff;
  border: 0 !important;
  line-height: 1.5;
  text-align: center;
  padding: 1.0833em 0 1.1667em;
  font-feature-settings: "palt";
}
.TabContainer .TabPager > div.active::after, .TabContainer .TabPager > div.active::before {
  opacity: 1;
}
.TabContainer .TabPager > div.active p {
  padding: 1.2917em 0 1.375em;
}
@media only screen and (min-width: 769px) {
  .TabContainer .TabPager > div:hover {
    background-color: var(--clr2);
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .TabContainer .TabPager > div p {
    letter-spacing: 0;
  }
}
.TabContainer .TabContent > .content {
  background-color: #ffffff;
  border-radius: 60px;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .TabContainer .TabPager {
    max-width: 90%;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .TabContainer .TabPager {
    max-width: 93%;
  }
  .TabContainer .TabContent .content {
    border-radius: 35px;
  }
}

.idx7 {
  padding: 71px 0 90px;
  background-image: url(../images/idx7_bg.jpg);
}
@media only screen and (min-width: 1919px) {
  .idx7 .TabContainer {
    margin-top: 46px;
  }
  .idx7 .TabContainer .TabPager > div {
    background-color: #97b2c5;
  }
  .idx7 .TabContainer .TabPager > div::before {
    background: url(../images/idx7_tab_bg.jpg) repeat top left/100%;
  }
  .idx7 .TabContainer .TabPager > div::after {
    background: url(../images/idx7_arr.png) no-repeat center/contain;
  }
}
@media only screen and (min-width: 1919px) and (min-width: 769px) {
  .idx7 .TabContainer .TabPager > div:hover {
    background-color: var(--clr2);
  }
}
.idx7 .ttl {
  font-size: 16px;
  letter-spacing: 0;
  text-align: center;
  font-feature-settings: "palt";
}
@media only screen and (min-width: 769px) {
  .idx7 .ttl {
    font-size: 18px;
    letter-spacing: 0.1em;
    line-height: 2.3333333333;
  }
}
.idx7 .inner {
  max-width: 1640px;
}
.idx7 .idx7_tab {
  padding: 68px 0 90px;
}
.idx7 .idx7_list_btn {
  margin-top: 37px;
}
.idx7 .idx7_list_btn .idx7_btn {
  width: calc(33.3333333333% - 27px);
}
.idx7 .idx7_list_btn .idx7_btn a {
  display: flex;
  align-items: center;
  line-height: 1.5;
  font-size: 20px;
  text-decoration: none;
  font-weight: 500;
  background-color: #fff;
  border: 1px solid var(--main-color);
  color: var(--main-color);
  border-radius: 6px;
  height: 6em;
  padding-left: 0.9em;
  font-feature-settings: "palt";
  letter-spacing: 0.1em;
  transition: 0.3s all;
  position: relative;
}
.idx7 .idx7_list_btn .idx7_btn a::before {
  display: block;
  content: "";
  mask-image: url(../images/idx7_icon1.png);
  mask-repeat: no-repeat;
  mask-size: contain;
  width: 4em;
  height: 4em;
  margin-right: 1em;
  background-color: var(--main-color);
  margin-top: 0.05em;
  transition: 0.3s all;
}
.idx7 .idx7_list_btn .idx7_btn a::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  mask-image: url(../images/idx7_btn_arr.png);
  mask-repeat: no-repeat;
  mask-size: contain;
  width: 0.4em;
  height: 0.7em;
  right: 0.8em;
  background-color: var(--main-color);
}
.idx7 .idx7_list_btn .idx7_btn a:hover {
  opacity: 1;
}
@media only screen and (min-width: 769px) {
  .idx7 .idx7_list_btn .idx7_btn a:hover {
    background-color: var(--clr2);
    color: #fff;
    border-color: #fff;
  }
  .idx7 .idx7_list_btn .idx7_btn a:hover::before, .idx7 .idx7_list_btn .idx7_btn a:hover::after {
    background-color: #fff;
  }
}
.idx7 .idx7_list_btn .idx7_btn:first-child a::before {
  mask-image: url(../images/idx7_icon3.png);
}
.idx7 .idx7_list_btn .idx7_btn:nth-child(2) a::before {
  mask-image: url(../images/idx7_icon2.png);
}
.idx7 .idx7_inner {
  display: grid;
  grid-template-columns: 46.875% 50%;
  justify-content: space-between;
}
.idx7 .idx7_inner .img {
  grid-row: 1/span 2;
  align-self: center;
}
.idx7 .idx7_inner .idx7_ttl {
  margin-bottom: 0;
  margin-top: auto;
}
.idx7 .idx7_inner .btn {
  max-width: 300px;
  width: 100%;
  align-self: flex-start;
  margin-bottom: auto;
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx7 {
    padding: 60px 0;
  }
  .idx7 .ttl {
    font-size: 16px;
    letter-spacing: 0;
  }
  .idx7 .idx7_tab {
    padding: 40px 0;
  }
  .idx7 .idx7_list_btn {
    margin-left: auto;
    margin-right: auto;
    max-width: 1080px;
  }
  .idx7 .idx7_list_btn .idx7_btn {
    width: calc(33.3333333333% - 10px);
  }
  .idx7 .idx7_list_btn .idx7_btn a {
    font-size: 18px;
    height: 5.5em;
    letter-spacing: 0;
  }
  .idx7 .idx7_inner .idx7_ttl {
    padding-right: 35px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx7 .idx7_list_btn {
    display: flex;
  }
  .idx7 .idx7_list_btn .idx7_btn {
    width: calc(50% - 5px);
  }
  .idx7 .idx7_list_btn .idx7_btn a {
    font-size: 18px;
    letter-spacing: 0;
  }
  .idx7 .idx7_list_btn .idx7_btn a::after {
    right: 5px;
  }
  .idx7 .idx7_list_btn .idx7_btn:last-child {
    margin: 10px auto 0;
  }
  .idx7 .ttl br {
    display: none;
  }
}

.idx8 {
  background-image: url(../images/idx8_bg.jpg);
  background-repeat: repeat;
  background-size: auto;
  padding: 74px 0 92px;
}
.idx8 .inner {
  max-width: 1384px;
}
.idx8 .idx8_list {
  margin-top: 17px;
  display: flex;
  counter-reset: count;
}
.idx8 .idx8_list:not(.slick-slider) {
  height: 300px;
  opacity: 0;
}
.idx8 .idx8_list .slick-list {
  padding-top: 20px;
  padding-bottom: 20px;
}
@media only screen and (min-width: 1919px) {
  .idx8 .idx8_list {
    padding-right: 0;
    margin: 0 -65% 0 0;
  }
}
.idx8 .idx8_list .item {
  background-color: #dbe5f1;
  border-radius: 6px;
  box-shadow: 6.553px 4.589px 20px 0px rgba(0, 0, 0, 0.06);
  max-width: 327px;
  position: relative;
  z-index: 1;
}
.idx8 .idx8_list .item::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  background-color: #ecf2fa;
  inset: 6px;
  border: 1px solid #fff;
}
.idx8 .idx8_list .item .bg {
  position: relative;
  z-index: 1;
  padding: 58px 0 45px;
}
.idx8 .idx8_list .item .bg .num {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url(../images/idx8_item_bg.png) no-repeat top left/contain;
  top: 0;
  left: 0;
  width: 3.4444em;
  height: 3.8333em;
  z-index: -1;
  border-radius: 6px 0 0 0;
  content: counter(count, decimal-leading-zero);
  counter-increment: count;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0.05em;
  line-height: 1;
  font-size: 18px;
  padding-top: 1.15em;
  padding-left: 0.9em;
}
.idx8 .idx8_list .item:not(:last-child) {
  margin-right: 44px;
}
.idx8 .idx8_list .item:not(:last-child)::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../images/idx_share_arr.png);
  width: 30px;
  height: 11px;
  top: calc(50% - 6px);
  left: calc(100% + 7px);
  background-color: var(--main-color);
}
.idx8 .idx8_list .item picture {
  display: table;
  margin: 0 auto 33px;
  max-width: 92px;
  position: relative;
  z-index: 1;
}
.idx8 .idx8_list .item picture::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url(../images/idx8_icon_bg.png) no-repeat center/contain;
  width: 20.5em;
  height: 14em;
  left: calc(50% - 10.3em);
  top: calc(50% - 7em);
  z-index: -1;
  font-size: 10px;
}
.idx8 .idx8_list .item .ttl {
  font-size: 18px;
  line-height: 2;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-align: center;
  font-feature-settings: "palt";
}
.idx8 .idx8_list .slick-dots {
  display: flex;
  clear: both;
}
.idx8 .idx8_arrows {
  left: 0;
  width: 100%;
  position: absolute;
  z-index: 2;
  top: 50%;
}
.idx8 .idx8_arrows .slick-arrow {
  position: absolute;
  z-index: 1;
  top: 50%;
  width: 3.75em;
  height: 3.75em;
  background-color: #1e3d66;
  border-radius: 50%;
  opacity: 1;
  transition: 0.3s all;
}
@media only screen and (min-width: 769px) {
  .idx8 .idx8_arrows .slick-arrow:hover {
    background-color: var(--clr2);
  }
}
.idx8 .idx8_arrows .slick-prev {
  left: -30px;
  background-image: url(../images/idx2_prev.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.idx8 .idx8_arrows .slick-next {
  right: -6.40625vw;
  background-image: url(../images/idx2_next.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
}
.idx8 .idx8_relative {
  position: relative;
}
.idx8 .slick-dots {
  margin-top: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.idx8 .slick-dots li {
  margin: 0 2px;
}
.idx8 .slick-dots li.slick-active button {
  background: var(--main-color);
}
.idx8 .slick-dots button {
  cursor: pointer;
  border: 0;
  background: #c7e5fa;
  width: 30px;
  height: 4px;
  color: transparent;
  text-indent: -9999px;
  transition: 0.3s all;
}
@media only screen and (min-width: 769px) {
  .idx8 .slick-dots button:hover {
    background: var(--main-color);
  }
}
.idx8 .btn {
  margin-top: 14px;
}
@media only screen and (min-width: 769px) and (max-width: 1600px) {
  .idx8 .idx8_list {
    margin-right: -9%;
  }
  .idx8 .idx8_arrows .slick-next {
    right: 13.5vw;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .idx8 .inner {
    width: 100%;
    max-width: calc(100% - 60px);
  }
  .idx8 .idx8_list {
    margin-right: -4%;
  }
  .idx8 .idx8_list .item {
    width: 280px;
  }
  .idx8 .idx8_arrows .slick-next {
    right: 18vw;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1366px) {
  .idx8 {
    padding: 60px 0;
  }
  .idx8 .idx8_list {
    margin-right: -4%;
  }
  .idx8 .idx8_arrows .slick-next {
    right: 17.5vw;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx8 .idx8_list {
    margin-right: -8%;
  }
  .idx8 .idx8_list .item .bg {
    padding: 40px 0;
  }
  .idx8 .idx8_list .item .bg .num {
    font-size: 12px;
  }
  .idx8 .idx8_list .item picture {
    max-width: 60px;
    margin: 0 auto 25px;
  }
  .idx8 .idx8_list .item picture::after {
    font-size: 6px;
  }
  .idx8 .idx8_list .item .ttl {
    letter-spacing: 0;
    font-size: 14px;
  }
  .idx8 .idx8_arrows .slick-next {
    right: 14vw;
  }
}
@media only screen and (min-width: 769px) and (max-width: 850px) {
  .idx8 .idx8_list .item {
    width: 310.5px;
  }
  .idx8 .idx8_list .item .bg {
    padding: 40px 0;
  }
  .idx8 .idx8_list .item .bg .num {
    font-size: 12px;
  }
  .idx8 .idx8_list .item picture {
    max-width: 60px;
    margin: 0 auto 25px;
  }
  .idx8 .idx8_list .item picture::after {
    font-size: 6px;
  }
  .idx8 .idx8_list .item .ttl {
    letter-spacing: 0;
    font-size: 16px;
  }
  .idx8 .idx8_arrows .slick-next {
    right: -30px;
  }
}

.idx9 {
  background-image: url(../images/idx9_bg.jpg);
  padding: 71px 0 75px;
}
.idx9 .inner_big {
  display: grid;
  grid-template-columns: 45.703125% 47.1875%;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0;
}
.idx9 .img {
  grid-column-start: 2;
  grid-row: 1/span 3;
  margin-top: 3.1em;
  padding-top: 3.5em;
  padding-left: 3.5em;
  padding-right: 6.9em;
  padding-bottom: 6.1em;
  position: relative;
  z-index: 1;
  font-size: 10px;
}
.idx9 .img img {
  border-radius: 20px;
}
.idx9 .img::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  background: rgba(47, 88, 145, 0.5);
  width: 14em;
  height: 14em;
  border-radius: 20px;
  left: 0;
  top: 0;
}
.idx9 .img::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  background: rgba(76, 157, 227, 0.5);
  width: 20em;
  height: 20em;
  border-radius: 20px;
  right: 0;
  bottom: 0;
}
.idx9 .idx9_name {
  margin-top: 50px;
}
.idx9 .idx9_name p {
  line-height: 1;
}
.idx9 .idx9_name .ttl01 {
  font-size: 32px;
  font-weight: 500;
  letter-spacing: 0.1em;
  padding-left: 0.2188em;
  display: flex;
  margin-bottom: 0.7813em;
}
.idx9 .idx9_name .ttl01 span {
  text-transform: uppercase;
  font-size: 0.5em;
  font-weight: 500;
  color: var(--main-color);
  letter-spacing: 0.1em;
  margin-left: 2.3125em;
  margin-top: 1.3125em;
  align-self: flex-end;
}
.idx9 .idx9_name .ttl02 {
  display: table;
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #fff;
  background: var(--clr2);
  border-radius: 21px;
  padding: 0.6111em 1.6667em 0.7222em 1.7222em;
}
.idx9 .idx9_txt {
  margin-top: 51px;
}
.idx9 .idx9_txt p {
  font-weight: 500;
  font-feature-settings: "palt";
}
.idx9 .idx9_txt p:not(:last-child) {
  margin-bottom: 18px;
}
.idx9 .btn-group {
  margin-top: 40px;
}
.idx9 .btn-group .btn:last-child {
  margin-top: 16px;
}
@media only screen and (min-width: 769px) {
  .idx9 .wrap_h3 {
    display: flex;
    align-items: center;
  }
  .idx9 .wrap_h3::after {
    display: none;
  }
  .idx9 .wrap_h3 .h_en {
    margin-left: 15px;
    margin-top: 12px;
  }
  .idx9 .wrap_h3 {
    border-bottom: 1px solid #cad7e8;
    padding-bottom: 12px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx9 .idx9_name .ttl01 {
    font-size: 26px;
    letter-spacing: 0;
  }
  .idx9 .idx9_name .ttl01 span {
    align-self: center;
    margin-top: 0;
  }
  .idx9 .idx9_name .ttl02 {
    font-size: 16px;
  }
}

.idx10 {
  background-image: url(../images/idx10_bg.jpg);
}
.idx10 .inner_big {
  z-index: 1;
  position: relative;
  padding-top: 103px;
  padding-bottom: 90px;
}
.idx10 .inner_big::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url(../images/idx10_icon.png) no-repeat top center/contain;
  width: 140.1em;
  height: 14.1em;
  top: -11.8em;
  right: -92.4em;
  font-size: 10px;
}
@media only screen and (min-width: 1919px) {
  .idx10 .h_en {
    margin-top: 4px;
    margin-bottom: 9px;
  }
}
.idx10 .fblock {
  margin-top: 47px;
}
.idx10 .idx10_dl {
  margin-top: 9px;
}
.idx10 .idx10_dl dl {
  display: flex;
  flex-wrap: wrap;
  --w: 126px;
  border-bottom: 1px solid rgba(255, 255, 255, 0.5);
  padding: 16px 0 18px;
}
.idx10 .idx10_dl dl dt,
.idx10 .idx10_dl dl dd {
  color: #fff;
  line-height: 1.875;
  font-weight: 500;
}
.idx10 .idx10_dl dl dt {
  width: var(--w);
  padding-left: 13px;
}
.idx10 .idx10_dl dl dd {
  width: calc(100% - var(--w));
}
@media only screen and (min-width: 1919px) {
  .idx10 .idx10_dl dl:nth-child(3), .idx10 .idx10_dl dl:nth-child(4) {
    padding-bottom: 17px;
    padding-top: 15px;
  }
}
.idx10 .idx10_dl ul li {
  display: flex;
}
.idx10 .l {
  width: 43.1%;
}
.idx10 .r {
  width: 50%;
}
.idx10 .idx10_map {
  height: 420px;
}
.idx10 .idx10_map iframe {
  border-radius: 12px;
}
.idx10 .btn-group {
  margin-top: 40px;
}
@media only screen and (min-width: 769px) and (max-width: 1440px) {
  .idx10 .inner_big {
    padding-top: 60px;
    padding-bottom: 60px;
  }
  .idx10 .inner_big::before {
    font-size: 8px;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx10 .inner_big::before {
    font-size: 6px;
  }
  .idx10 .idx10_dl {
    margin-top: 20px;
  }
  .idx10 .idx10_dl dl {
    --w: 105px;
  }
  .idx10 .idx10_dl dl dt,
  .idx10 .idx10_dl dl dd {
    font-feature-settings: "palt";
    letter-spacing: 0;
  }
}
@media only screen and (min-width: 769px) and (max-width: 850px) {
  .idx10 .idx10_dl {
    margin-top: 20px;
  }
  .idx10 .idx10_dl dl {
    --w: 105px;
  }
  .idx10 .idx10_dl dl dt,
  .idx10 .idx10_dl dl dd {
    font-feature-settings: "palt";
    letter-spacing: 0;
  }
  .idx10 .idx10_dl dl:nth-child(2) dd br:last-child {
    display: none !important;
  }
}

.idx11 {
  background-image: url(../images/idx11_bg.jpg);
  padding: 77px 0 95px;
  background-size: auto;
  background-repeat: repeat;
}
.idx11 .wrap_h3::after {
  display: none;
}
.idx11 h3 {
  display: flex;
  align-items: center;
}
.idx11 h3::before {
  content: "";
  display: block;
  background: url(../images/idx11_icon.png) no-repeat center/contain;
  width: 0.6429em;
  height: 1em;
  margin-right: 0.5238em;
  margin-left: 0.0714em;
  margin-top: 0.0238em;
}
.idx11 .h_en {
  padding-left: 2.8333em;
  padding-top: 0.0556em;
}
.idx11 .btn-group {
  max-width: 300px;
  margin: 49px 0 0 0;
}
.idx11 .btn-group .btn:last-child {
  margin-top: 16px;
}
.idx11 .inner_big {
  display: grid;
  grid-template-columns: 23.4375% 67.1875%;
  justify-content: space-between;
  align-items: flex-start;
  gap: 0;
}
.idx11 .txt {
  grid-row: 1/span 3;
  grid-column-start: 2;
  margin-top: -6px;
}
.idx11 ul li {
  border-bottom: 1px solid #d5d5d5;
}
.idx11 ul li a {
  text-decoration: none;
  line-height: 1;
  color: #888888;
  letter-spacing: 0.1em;
  padding-left: 0.875em;
  display: block;
  padding-top: 1.4375em;
  padding-bottom: 1.8125em;
}
.idx11 ul li a:hover {
  opacity: 1;
  color: #888888;
}
@media only screen and (min-width: 769px) {
  .idx11 ul li a:hover {
    background: var(--main-color);
    color: #fff;
  }
}
.idx11 ul li a .flex {
  justify-content: flex-start;
  align-items: center;
}
.idx11 ul li a .cat {
  width: 6.25em;
  height: 1.75em;
  border-radius: 6px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--main-color);
  color: #fff;
  margin-left: 1em;
  position: relative;
  top: 0.125em;
}
.idx11 ul li a .title {
  display: block;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  font-weight: 500;
  margin-top: 1.3125em;
}
.idx11 ul li.column .cat {
  background-color: var(--clr3);
}
.idx11 ul li.column a:hover {
  opacity: 1;
  color: #888888;
}
@media only screen and (min-width: 769px) {
  .idx11 ul li.column a:hover {
    background: var(--clr3);
    color: #fff;
  }
}
.idx11 .txt .tab {
  display: none;
}
.idx11 .txt .tab.active {
  display: block;
}
.idx11 .tab_btn .btn.clr1.active a {
  color: #fff;
  background-color: var(--main-color);
}
.idx11 .tab_btn .btn.clr1.active a::after {
  background-color: #fff;
}
.idx11 .tab_btn .btn.clr2.active a {
  color: #fff;
  background-color: var(--clr3);
  border-color: var(--clr3);
}
.idx11 .tab_btn .btn.clr2.active a::after {
  background-color: #fff;
}
@media only screen and (min-width: 769px) and (max-width: 1024px) {
  .idx11 {
    padding: 60px 0;
  }
  .idx11 .inner_big {
    grid-template-columns: 30% 61%;
  }
}