.home_page .key {
  --height: 43vw;
  --min-height: 550px;
  --max-height: 820px;
  height: var(--height);
  min-height: var(--min-height);
  max-height: var(--max-height);
  font-size: 0.625em;
  position: relative;
  z-index: 2;
}
.home_page .key::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url(../images/idx_dot.png) no-repeat center/contain;
  width: 33.5em;
  height: 33.5em;
  bottom: -20.2em;
  right: 0.2em;
  font-size: min(0.5vw, 10px);
}
.home_page .key::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -2;
  bottom: 0;
  left: 0;
  width: 100%;
  background-color: #f8f2ef;
  height: 165px;
}
.home_page .key .inner {
  position: relative;
  width: 100%;
  max-width: 1320px;
}
.home_page .key .mv_slider:not(.slick-slider) {
  opacity: 0;
  display: flex;
  overflow: hidden;
}
.home_page .key .key_text {
  position: relative;
  overflow: hidden;
  z-index: 1;
}
.home_page .key .key_text::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  inset: 0;
  right: calc(var(--wrapper) - 10px);
}
.home_page .key .key_text .item {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  height: var(--height);
  min-height: var(--min-height);
  max-height: var(--max-height);
  position: relative;
  z-index: 1;
}
.home_page .key .key_text .item::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  inset: 0;
  right: calc(var(--wrapper) - 10px);
}
.home_page .key .catch {
	margin-bottom: 8.7em;
	padding: 40px;
	position: relative;
	z-index: 1;
	display: table;
}
.home_page .key .catch::before {
	position: absolute;
	content: '';
	inset: 0;
	background: #fff;
	filter: blur(40px);
	z-index: -1;
}
.home_page .key h2 {
  margin-bottom: 19px;
  font-size: 4.6em;
  line-height: 1.4347826087;
  letter-spacing: 0.3em;
  font-weight: 700;
}
.home_page .key .jp {
  font-size: 2.2em;
  line-height: 2.0909090909;
  letter-spacing: 0.34em;
  font-family: var(--f-kosugi);
  margin-left: 0.22em;
}
.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 .h_en {
  text-transform: uppercase;
  color: var(--main-color);
  font-weight: 500;
  line-height: 1;
  font-size: 20px;
  margin-bottom: 5px;
}


.home_page .key .mv_slider.slick-initialized .s1::before {
	background: url(../images/idx_key_bg.jpg) no-repeat top center/cover;
}
.home_page .key .mv_slider.slick-initialized .s2::before {
	background: url(../images/idx_key_bg02.jpg) no-repeat top center/cover;
}
.home_page .key .mv_slider.slick-initialized .s3::before {
	background: url(../images/idx_key_bg03.jpg) no-repeat top center/cover;
}
@media only screen and (max-width: 1366px) {
  .home_page .h_en {
    font-size: 18px;
  }
}
.home_page h3 {
  position: relative;
  color: var(--clr1);
  font-family: var(--f-jp);
  font-size: 36px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
.home_page h3.border::after {
  content: "";
  display: block;
  margin: 0.3611em auto 0;
  background: url(../images/idx_h3_icon.png) no-repeat center/contain;
  width: 3.1945em;
  height: 0.3889em;
}
.home_page h3.border2::after {
  background-image: url(../images/idx_h3_icon2.png);
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .home_page h3 {
    letter-spacing: 0;
    font-size: 30px;
  }
}

@media screen and (min-width: 1921px) {
  .home_page .key {
    --max-height: 100vh;
    --height: 50vw;
  }
}
@media only screen and (max-width: 1560px) and (min-width: 769px) and (orientation: landscape) {
  .home_page .key {
    font-size: min(0.625em, 0.75vw);
    --max-height: calc(100vh - var(--wrapper));
  }
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .home_page .key::after {
    font-size: min(0.4vw, 10px);
  }
}
@media only screen and (max-width: 1170px) and (min-width: 769px) {
  .home_page .key {
    font-size: min(0.8vw, 1vh);
  }
  .home_page .key .key_text .item::before {
    right: 20px;
  }
  .home_page .key .jp {
    font-size: 2.5em;
    letter-spacing: 0.1em;
  }
}
section {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center;
}

.idx1 {
  background-color: #f8f2ef;
}
.idx1 .inner_big {
  padding-top: 120px;
  padding-bottom: 120px;
  position: relative;
}
.idx1 .inner_big::after {
  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='155px' height='97px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 146, 76)' d='M72.568,19.659 C71.828,23.109 71.968,26.693 72.974,30.073 C74.365,34.223 72.858,66.823 72.974,74.936 C73.071,82.296 75.196,95.315 83.467,96.872 L142.697,96.872 L142.735,96.837 L143.257,96.994 C147.660,93.276 150.958,88.402 152.784,82.908 C151.562,83.429 150.374,84.030 149.228,84.708 C152.758,80.362 154.684,74.914 154.678,69.293 C152.996,71.148 151.257,73.066 149.595,74.896 C151.161,66.377 145.943,58.702 138.986,54.655 C141.267,63.774 139.025,72.349 136.010,81.158 C134.851,84.503 133.402,87.381 130.812,88.463 C127.353,87.417 128.087,82.254 128.609,78.690 C129.730,71.041 130.349,68.260 127.430,60.951 C125.343,55.716 120.918,52.934 115.894,51.169 C112.609,50.011 111.623,50.123 111.217,46.440 C110.869,43.470 111.720,40.716 110.328,38.023 C108.782,35.013 107.720,35.065 108.647,31.350 C109.992,26.746 109.951,21.842 108.531,17.261 C109.927,18.383 111.638,19.033 113.420,19.119 L112.473,17.201 C110.116,12.139 109.633,6.115 107.681,0.680 C103.918,1.482 100.326,2.951 97.072,5.021 L97.188,5.351 C96.668,5.791 96.229,6.319 95.893,6.913 L84.878,6.913 C84.878,6.913 84.241,6.913 83.332,6.994 C83.506,6.563 83.699,6.130 83.893,5.697 C82.076,4.889 80.182,4.028 78.289,3.009 C75.293,1.391 75.603,1.723 74.192,4.747 C71.978,9.577 70.030,14.529 68.356,19.575 C69.736,19.928 71.176,19.956 72.568,19.659 ZM4.237,88.145 C3.412,87.654 2.553,87.221 1.667,86.850 C2.980,90.808 5.355,94.320 8.527,96.995 L8.914,96.887 L8.933,96.908 L51.563,96.908 C57.534,95.786 59.061,86.415 59.138,81.117 C59.215,75.264 58.133,51.804 59.138,48.813 C59.864,46.379 59.964,43.800 59.428,41.317 C60.432,41.527 61.470,41.501 62.462,41.240 C61.259,37.603 59.853,34.041 58.249,30.567 C57.244,28.394 57.457,28.156 55.312,29.316 C53.940,30.050 52.587,30.669 51.273,31.252 C51.408,31.562 51.544,31.872 51.679,32.187 C51.022,32.125 50.558,32.125 50.558,32.125 L42.635,32.125 C42.390,31.702 42.076,31.322 41.708,31.004 L41.785,30.764 C39.441,29.280 36.857,28.225 34.152,27.643 C32.741,31.544 32.393,35.893 30.693,39.544 L29.997,40.925 C31.286,40.870 32.525,40.402 33.533,39.588 C32.516,42.888 32.482,46.416 33.437,49.736 C34.113,52.406 33.359,52.371 32.238,54.537 C31.234,56.477 31.852,58.461 31.601,60.597 C31.311,63.249 30.596,63.169 28.219,64.002 C24.550,64.976 21.507,67.563 19.929,71.045 C17.823,76.313 18.267,78.309 19.079,83.815 C19.446,86.384 19.987,90.101 17.475,90.856 C15.560,89.700 14.208,87.791 13.745,85.588 C11.581,79.243 9.958,73.071 11.600,66.501 C6.595,69.417 2.846,74.942 3.967,81.078 C2.769,79.756 1.513,78.378 0.315,77.044 C0.304,81.093 1.691,85.021 4.237,88.149 L4.237,88.145 Z'/%3E%3C/svg%3E") no-repeat center/contain;
  width: 15.5em;
  height: 9.7em;
  bottom: 0;
  right: 1.1em;
  font-size: 10px;
}
@media only screen and (min-width: 2000px) {
  .idx1 .inner_big::after {
    bottom: -1px;
  }
}
.idx1::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background-color: #f8f2ef;
  inset: 0;
  top: unset;
  bottom: 100%;
  height: 16.5em;
  font-size: 10px;
}
.idx1 .idx1_box {
  background-color: #fff;
  width: 48.4%;
  padding: 78px 78px 80px;
}
.idx1 .idx1_box:last-child h3 {
  position: relative;
  left: -0.18em;
}
.idx1 .btn-group {
  width: 156px;
  margin-top: 7px;
}
@media only screen and (min-width: 769px) {
  .idx1 .btn-group {
    position: relative;
    left: -2px;
  }
}
.idx1 .flex {
  margin-bottom: 20px;
}
.idx1 ul li {
  margin: 0;
}
.idx1 ul li a {
  font-size: 18px;
  display: block;
  text-decoration: none;
  border-bottom: 1px solid #e0e0e0;
  padding-bottom: 1.5556em;
  padding-top: 1.2778em;
  padding-right: 2.2222em;
  position: relative;
  transition: 0.3s all;
}
.idx1 ul li a::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../images/idx1_arr.png);
  background-color: var(--main-color);
  width: 2.1112em;
  height: 1.4445em;
  right: 2px;
  top: calc(50% - 0.77em);
}
.idx1 ul li a span {
  display: block;
  line-height: 1;
  letter-spacing: 0.1em;
  transition: 0.3s all;
}
.idx1 ul li a .date {
  color: var(--main-color);
  margin-bottom: 0.6667em;
}
.idx1 ul li a .title {
  color: var(--clr1);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.idx1 ul li a:hover {
  opacity: 1;
}
@media only screen and (min-width: 769px) {
  .idx1 ul li a:hover {
    background-color: var(--main-color);
    padding-left: 3px;
  }
  .idx1 ul li a:hover::after {
    background-color: #fff;
  }
  .idx1 ul li a:hover .date,
  .idx1 ul li a:hover .title {
    color: #fff;
  }
}
.idx1 .h_en {
  font-size: 16px;
  margin-bottom: 6px;
}
.idx1 h3 {
  font-size: 32px;
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .idx1 h3 {
    letter-spacing: 0;
    font-size: 28px;
  }
  .idx1 .idx1_box {
    padding: 40px;
  }
  .idx1 .inner_big {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .idx1 .inner_big::after {
    font-size: 7px;
    bottom: -1px;
  }
  .idx1 ul li a {
    font-size: 16px;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .idx1 .idx1_box {
    padding: 20px;
  }
}

.idx2 {
  padding: 130px 0 120px;
  position: relative;
  z-index: 1;
  background-image: url(../images/idx2_bg.jpg);
}
.idx2 .inner_big {
  position: relative;
}
.idx2 .inner_big::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url(../images/idx_dot.png) no-repeat center/contain;
  width: 33.5em;
  height: 33.5em;
  top: 44.75em;
  left: -32.5em;
  font-size: min(0.7vw, 10px);
}
.idx2::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  background: url(../images/idx2_bg_top.jpg) no-repeat center/cover;
  width: 100%;
  height: min(41.1979166667vw, 791px);
  top: 0;
  left: 0;
  mask-repeat: no-repeat;
  mask-size: cover;
  mask-position: bottom center;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='1920px' height='791px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 146, 76)' d='M0.000,0.000 L1919.1000,0.000 L1919.1000,615.1000 L0.000,615.1000 L0.000,0.000 Z'/%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 146, 76)' d='M1919.1000,674.558 C1681.410,746.152 1339.633,791.000 960.000,791.000 C580.367,791.000 238.590,746.152 0.000,674.558 L0.000,389.1000 L1919.1000,389.1000 L1919.1000,674.558 Z'/%3E%3C/svg%3E");
}
.idx2 .idx2_bg {
  margin-top: 74px;
  background-color: #fff;
  padding: 81px 0 80px;
}
.idx2 .idx2_bg .inner {
  max-width: 1160px;
}
.idx2 .left {
  width: 45%;
  max-width: 490px;
}
.idx2 .right {
  width: 51%;
  max-width: 570px;
}
.idx2 .idx2_logo {
  display: table;
  margin: 0 auto;
}
.idx2 .idx2_logo a:hover {
  opacity: 1;
}
.idx2 .wrap_h4 {
  display: flex;
  margin-top: 6px;
}
.idx2 .wrap_h4 h4 {
  font-weight: 500;
  color: #61462a;
  line-height: 1;
  font-size: 24px;
  position: relative;
  letter-spacing: 0.1em;
  padding-left: 24px;
}
.idx2 .wrap_h4 h4::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 2px;
  height: 40px;
  background-color: #ff924c;
  left: 0;
  top: calc(50% - 19px);
}
.idx2 .wrap_h4 .h_en {
  align-self: flex-end;
  margin-left: 18px;
  font-size: 12px;
}
.idx2 .shared_tbl {
  margin-top: 37px;
}
.idx2 .idx2_txt {
  border: 3px solid #f1f1f1;
  border-left: 0;
  border-right: 0;
  max-width: 800px;
  margin: 60px auto 0;
  padding: 29px 0 15px;
  justify-content: flex-start;
  align-items: center;
}
.idx2 .idx2_txt .content {
  padding-left: 30px;
  width: 53.3%;
}
.idx2 .idx2_txt .content .ttl1 {
  color: #fff;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1;
  font-size: 20px;
  background: var(--main-color);
  display: table;
  padding: 9px 14px 9px 16px;
  margin-bottom: 6px;
}
.idx2 .idx2_txt .content .ttl2 {
  font-size: 15px;
  letter-spacing: 0.05em;
}
.idx2 .idx2_txt .idx2_img {
  width: 41%;
  max-width: 325px;
  padding-bottom: 14px;
}
.idx2 .idx2_map {
  margin-top: 60px;
  height: 300px;
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .idx2 {
    padding: 80px 0;
  }
  .idx2 .idx2_bg {
    padding: 60px 0;
  }
  .idx2 .idx2_txt {
    margin-top: 40px;
  }
  .idx2 .idx2_txt .content .ttl1 {
    font-size: 18px;
    letter-spacing: 0;
  }
  .idx2 .idx2_map {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .idx2 {
    padding: 60px 0;
  }
  .idx2 .btn-group.col2 .btn:first-child {
    width: 57%;
  }
  .idx2 .btn-group.col2 .btn:last-child {
    width: 40%;
  }
  .idx2 .idx2_txt {
    justify-content: space-between;
    padding-left: 20px;
    padding-right: 20px;
  }
  .idx2 .idx2_txt .content {
    padding-left: 0;
    width: 55%;
  }
  .idx2 .idx2_txt .content .ttl2 {
    font-size: 14px;
    letter-spacing: 0;
  }
}

.idx3 {
  padding: 118px 0 20px;
  background-image: url(../images/idx3_bg.jpg);
  position: relative;
}
@media only screen and (min-width: 1919px) and (max-width: 1921px) {
  .idx3 {
    background-size: auto;
  }
}
@media only screen and (min-width: 2000px) {
  .idx3 {
    padding-bottom: 1.0416666667vw;
  }
}
@media only screen and (min-width: 769px) {
  .idx3 h3.border {
    margin-left: -0.2em;
  }
  .idx3 h3.border::after {
    margin-left: 9px;
  }
}
.idx3::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='197px' height='99px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 146, 76)' d='M178.394,67.504 C168.348,67.778 159.980,59.799 159.703,49.683 C159.427,39.566 167.346,31.141 177.392,30.866 C187.438,30.591 195.807,38.570 196.083,48.687 C196.360,58.804 188.441,67.229 178.394,67.504 ZM124.051,48.395 C128.898,50.542 130.034,52.871 133.254,52.909 C137.091,52.955 139.783,55.929 136.789,57.951 C135.918,58.452 134.983,58.829 134.010,59.078 C132.628,59.480 130.643,61.221 129.707,60.978 C126.937,60.196 124.321,61.210 122.096,59.185 C116.964,54.518 104.031,61.328 99.056,59.993 C98.622,61.399 105.455,79.997 106.388,82.267 C109.377,85.692 112.293,85.683 113.120,89.658 C113.666,92.290 112.606,92.245 109.896,92.700 C107.523,92.961 105.121,92.725 102.842,92.011 C99.060,90.987 99.234,90.122 97.816,86.580 C95.243,80.153 90.211,72.795 86.580,65.387 C83.193,58.480 79.240,59.032 71.152,58.543 C63.254,58.066 58.142,55.475 50.653,58.425 C46.623,60.014 47.455,64.457 44.028,68.033 C37.976,74.350 31.342,80.540 37.438,86.427 C39.327,88.254 38.542,88.089 41.394,88.918 C46.809,90.496 46.584,94.614 44.976,96.477 C43.862,97.772 38.369,96.990 36.622,97.000 C32.630,97.020 33.453,94.746 31.200,93.081 C29.020,91.474 26.182,86.971 23.344,84.709 C22.299,78.545 21.812,71.497 23.270,66.316 C20.052,67.163 15.759,72.312 13.709,74.201 C10.993,76.700 9.997,82.662 10.542,87.917 C12.698,91.312 15.433,93.717 11.694,98.371 C8.043,98.343 4.490,97.043 2.784,95.055 C-0.098,91.698 -0.324,90.181 0.636,85.682 C3.300,73.192 -0.487,68.161 3.431,65.471 C12.280,59.400 17.357,54.959 16.833,43.501 C16.429,34.659 20.381,34.115 16.129,32.259 C4.380,27.118 5.038,13.472 8.558,6.227 L8.567,6.222 C12.994,-2.885 24.524,-1.078 16.670,7.569 C6.810,16.576 17.499,31.506 30.152,27.416 C40.208,25.355 65.881,23.643 79.675,20.331 C82.573,19.635 88.670,18.291 90.693,16.292 C94.881,12.158 94.988,8.637 100.231,3.235 C105.149,-0.301 116.432,-0.357 120.612,4.149 C123.416,7.172 124.615,9.467 126.231,10.711 C128.511,12.446 139.205,15.069 137.217,18.791 C135.218,26.411 127.698,27.670 118.150,26.933 C119.028,30.772 118.614,32.475 116.841,34.048 C114.520,36.107 109.709,34.435 106.970,29.808 C109.954,42.898 108.029,41.375 107.665,47.786 C107.908,50.203 123.421,48.118 124.051,48.395 Z'/%3E%3C/svg%3E") no-repeat center/contain;
  width: 19.7em;
  height: 9.9em;
  top: 90.3%;
  left: 19.55%;
  font-size: min(1vw, 10px);
}
.idx3::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url(../images/idx3_icon.png) no-repeat center/contain;
  width: 61.8em;
  height: 45.6em;
  right: 0;
  bottom: 0;
  font-size: min(1vw, 10px);
}
.idx3 .inner_big {
  display: grid;
  justify-content: space-between;
  align-items: flex-start;
  grid-template-columns: 58% 52.65625%;
  position: relative;
}
.idx3 .idx3_img {
  grid-row: 1/span 3;
  grid-column-start: 2;
  margin-left: -90px;
  margin-top: 4px;
  position: relative;
  z-index: 1;
  max-width: max-content;
  align-self: flex-end;
}
.idx3 .idx3_img img {
  filter: drop-shadow(31.876px 8.541px 98px rgba(180, 101, 18, 0.2));
}
.idx3 .txt {
  position: relative;
  z-index: 2;
  margin-top: 45px;
}
.idx3 .txt p {
  font-size: 18px;
}
.idx3 .btn-group {
  margin-left: 0;
  margin-top: 51px;
}
.idx3 .idx3_name {
  position: absolute;
  writing-mode: vertical-rl;
  top: 162px;
  right: 78px;
  font-size: 28px;
  font-weight: 500;
  letter-spacing: 0.16em;
  color: #fff;
  background: var(--main-color);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 35px;
  padding: 28px 8px 27px 6px;
}
.idx3 .idx3_name .jp {
  font-size: 18px;
  letter-spacing: 0.2em;
  font-weight: 400;
  margin-bottom: 16px;
}
@-moz-document url-prefix() {
  .idx3 .idx3_name .name {
    position: relative;
    left: 0.15em;
  }
}
@media only screen and (min-width: 769px) {
  .idx3 .btn-group .btn:first-child a {
    padding-left: 1.6em;
  }
}
@media only screen and (min-width: 769px) and (max-width: 1600px) {
  .idx3 {
    padding-bottom: 40px;
  }
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .idx3 {
    padding: 80px 0 40px;
  }
  .idx3::after {
    font-size: 0.6vw;
  }
  .idx3::before {
    font-size: 0.6vw;
    top: 90%;
  }
  .idx3 .inner_big {
    grid-template-columns: 55% 45%;
  }
  .idx3 .idx3_img {
    margin-left: 0;
  }
  .idx3 .txt p {
    letter-spacing: 0;
    font-size: 16px;
  }
}
@media only screen and (max-width: 1280px) and (min-width: 769px) {
  .idx3::before {
    top: 90.5%;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .idx3 {
    padding-bottom: 80px;
  }
  .idx3::before {
    top: 94%;
  }
  .idx3 .idx3_img {
    align-self: flex-start;
  }
  .idx3 .idx3_name {
    top: 20px;
    right: 20px;
    font-size: 22px;
  }
  .idx3 .idx3_name .jp {
    font-size: 16px;
  }
  .idx3 .btn-group {
    width: 500px;
  }
}
@media only screen and (max-width: 850px) and (min-width: 769px) {
  .idx3::before {
    top: 97.8%;
  }
}

.idx4 {
  position: relative;
  z-index: 1;
  margin-top: 93px;
  padding-bottom: 220px;
}
@media only screen and (min-width: 2000px) {
  .idx4 {
    margin-top: 4.84375vw;
  }
}
.idx4::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  mask-repeat: no-repeat;
  mask-size: 100%;
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='2503px' height='200px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 146, 76)' d='M18.962,54.231 C18.962,54.231 328.563,157.902 806.944,54.231 C1285.325,-49.438 1720.273,17.376 1888.838,74.266 C2057.402,131.156 2361.458,136.762 2503.000,74.266 C2503.000,113.140 2503.000,200.001 2503.000,200.001 L0.000,200.001 L18.962,54.231 Z'/%3E%3C/svg%3E");
  width: 130.364583333vw;
  height: auto;
  aspect-ratio: 2503/200;
  background-color: #ff924c;
  mask-position: -39px top;
  bottom: 100%;
  z-index: -1;
}
.idx4::after {
  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='2213px' height='327px'%3E%3Cpath fill-rule='evenodd' stroke='rgb(255, 202, 133)' stroke-width='4px' stroke-dasharray='16, 16' stroke-linecap='butt' stroke-linejoin='miter' fill-opacity='0' fill='rgb(255, 255, 255)' d='M2207.719,49.995 C2207.719,49.995 2026.738,203.220 1756.700,199.579 C1486.662,195.940 1259.013,186.204 966.666,281.171 C674.319,376.138 219.122,308.064 3.625,3.156 '/%3E%3C/svg%3E") no-repeat center/100%;
  aspect-ratio: 2213/327;
  width: 115.260416667vw;
  bottom: calc(100% + 2.95em);
  background-position: -7.65vw 0;
  z-index: -1;
}
.idx4 .inner_big {
  position: relative;
}
.idx4 .inner_big::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background: url(../images/idx_dot.png) no-repeat center/contain;
  width: 33.5em;
  height: 33.5em;
  top: -19.1em;
  right: -6.6em;
  font-size: min(1vw, 10px);
  opacity: 0.5;
}
.idx4 .h_en {
  margin-top: -18px;
}
.idx4 .TabContainer {
  margin-top: 74px;
}
.idx4 .TabContainer .TabPager {
  max-width: 1120px;
}
.idx4 .TabContainer .TabPager > div {
  padding: 0;
  border-radius: 0;
  padding: 0;
  background: rgba(255, 255, 255, 0.8);
}
.idx4 .TabContainer .TabPager > div p {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  color: #61462a;
  font-size: 24px;
  font-weight: 500;
  letter-spacing: 0.1em;
  padding: 0.5833em 0 0.6667em;
  padding-right: 0;
}
.idx4 .TabContainer .TabPager > div p::before {
  display: block;
  content: "";
  transition: 0.3s all;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-image: url(../images/idx4_icon1.png);
  background-color: var(--main-color);
  width: 2.0834em;
  height: 2.0834em;
  margin-right: 0.6667em;
  position: relative;
  top: 0.0833em;
}
.idx4 .TabContainer .TabPager > div:last-child p::before {
  mask-image: url(../images/idx4_icon2.png);
}
@media only screen and (min-width: 1919px) {
  .idx4 .TabContainer .TabPager > div:last-child p::before {
    margin-right: 19px;
  }
}
.idx4 .TabContainer .TabPager > div.active {
  background: #fff;
}
@media only screen and (min-width: 769px) {
  .idx4 .TabContainer .TabPager > div:not(.active):hover {
    background: rgba(255, 255, 255, 0.6);
  }
}
.idx4 .TabContainer .TabContent .content {
  background: #fff;
}
.idx4 .inner {
  max-width: 1160px;
  display: grid;
  justify-content: space-between;
  align-items: flex-start;
  grid-template-columns: 47% 45.7142857143%;
}
.idx4 .img {
  grid-column-start: 2;
  grid-row: 1/span 3;
  max-width: 512px;
  margin-top: 11px;
  margin-bottom: -60px;
}
.idx4 .img img {
  box-shadow: 31.876px 8.541px 98px 0px rgba(97, 70, 42, 0.2);
}
.idx4 .idx4_tab {
  padding: 69px 0 0;
}
.idx4 h4 {
  font-size: 30px;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin-left: -6px;
  margin-bottom: 30px;
}
.idx4 h4::after {
  content: "";
  display: block;
  width: 140px;
  height: 2px;
  background-color: #ff924c;
  margin-top: 11px;
  margin-left: 6px;
}
.idx4 .txt p {
  font-size: 18px;
}
.idx4 .btn-group {
  justify-content: flex-start;
  margin-top: 31px;
  max-width: 280px;
  position: relative;
  z-index: 2;
}
.idx4 .en {
  position: absolute;
  left: 0;
  line-height: 1;
  color: rgba(246, 238, 229, 0.43);
  font-weight: 500;
  font-size: 120px;
  bottom: -0.3833em;
}
@media only screen and (min-width: 769px) and (max-width: 1600px) {
  .idx4 {
    margin-top: 60px;
  }
}
@media only screen and (max-width: 1440px) and (min-width: 769px) {
  .idx4 .inner_big::before {
    font-size: 0.6vw;
    right: 0;
  }
  .idx4 .idx4_tab {
    padding-top: 60px;
  }
  .idx4 .TabContainer {
    margin-top: 60px;
  }
  .idx4 .TabContainer .TabPager > div p {
    letter-spacing: 0;
    font-size: 20px;
  }
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .idx4 {
    padding-bottom: 140px;
  }
  .idx4 h4 {
    font-size: 28px;
  }
  .idx4 .txt p {
    font-size: 16px;
    letter-spacing: 0;
  }
  .idx4 .en {
    font-size: 8.7848vw;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .idx4 {
    padding-bottom: 120px;
  }
  .idx4::after {
    bottom: calc(100% + 1em);
  }
  .idx4 .idx4_tab {
    padding-bottom: 60px;
  }
  .idx4 .img {
    margin-bottom: -120px;
  }
}
@media only screen and (max-width: 850px) and (min-width: 769px) {
  .idx4 {
    padding-bottom: 80px;
  }
}

.idx_bg {
  position: relative;
  z-index: 1;
}
.idx_bg::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  inset: 0;
  background: url(../images/idx_bg.png) no-repeat top center/cover;
  bottom: -232px;
}

.idx5 {
  padding-bottom: 131px;
}
.idx5 .inner_big {
  position: relative;
  z-index: 1;
}
.idx5 .inner_big::before, .idx5 .inner_big::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 25em;
  height: 16em;
  font-size: 10px;
  opacity: 0.7;
}
.idx5 .inner_big::before {
  background: url(../images/idx5_cloud1.png) no-repeat center/contain;
  top: -6.9em;
  left: -4.4em;
}
.idx5 .inner_big::after {
  background: url(../images/idx5_cloud2.png) no-repeat center/contain;
  top: -0.3em;
  right: -5.2em;
}
.idx5 .TabContainer {
  margin-top: 74px;
}
.idx5 .TabContainer .TabPager {
  max-width: 100%;
  width: 100%;
  justify-content: space-between;
}
.idx5 .TabContainer .TabPager > div {
  width: calc(25% - 15px);
  background-color: #fff;
  padding: 0;
  border-radius: 0;
  position: relative;
}
.idx5 .TabContainer .TabPager > div::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  left: calc(50% - 1px);
  height: 32px;
  width: 1px;
  background-color: #e1dbd7;
  bottom: -16px;
}
.idx5 .TabContainer .TabPager > div p {
  text-align: center;
  color: #61462a;
  padding: 15px 0 17px;
  font-weight: 500;
  transition: 0.3s all;
}
.idx5 .TabContainer .TabPager > div.active {
  background-color: #62462a;
}
.idx5 .TabContainer .TabPager > div.active p {
  color: #fff;
}
.idx5 .TabContainer .TabPager > div.active::after {
  background: linear-gradient(to bottom, #ffffff 50%, #61462a 50%);
}
@media only screen and (min-width: 769px) {
  .idx5 .TabContainer .TabPager > div:not(.active):hover {
    background-color: var(--main-color);
  }
  .idx5 .TabContainer .TabPager > div:not(.active):hover p {
    color: #fff;
  }
}
.idx5 .TabContainer .TabContent > .content {
  background: transparent;
}
.idx5 .idx5_tab {
  padding: 54px 0;
}
.idx5 .idx5_list {
  gap: 25px 22px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.idx5 .idx5_item {
  width: calc(33.3333333333% - 14.66px);
  padding-right: 76px;
  padding-top: 59px;
  padding-left: 47px;
  padding-bottom: 69px;
  z-index: 1;
  position: relative;
}
.idx5 .idx5_item::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  inset: 0;
  background: #ffffff;
  right: 76px;
}
.idx5 .idx5_item .img {
  max-width: 200px;
  background: url(../images/idx5_circle.png) no-repeat center/contain;
}
.idx5 .idx5_item .txt {
  padding: 34px 20px 0 12px;
}
.idx5 .idx5_item .txt_en {
  position: absolute;
  top: 0;
  top: 0;
  right: 0;
  height: 100%;
  display: flex;
  justify-content: center;
  background: rgba(255, 255, 255, 0.6);
  transition: 0.3s all;
}
.idx5 .idx5_item .txt_en p {
  writing-mode: vertical-rl;
  text-transform: uppercase;
  line-height: 1;
  margin: 0;
  color: #ff924c;
  letter-spacing: 0.205em;
  font-size: 18px;
  padding: 48px 26px 0 32px;
  height: 100%;
  position: relative;
  transition: 0.3s all;
}
.idx5 .idx5_item .txt_en p::before, .idx5 .idx5_item .txt_en p::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 2.6em;
  height: 2.6em;
  bottom: 3.8em;
  left: calc(50% - 1.3em);
  font-size: 10px;
}
.idx5 .idx5_item .txt_en p::before {
  border-radius: 50%;
  border: 1px solid var(--main-color);
}
.idx5 .idx5_item .txt_en p::after {
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../images/idx5_arr.png);
  background-color: var(--main-color);
}
.idx5 .idx5_item .ttl1 {
  font-size: 26px;
  font-weight: 500;
  line-height: 1.5;
  color: #61462a;
  letter-spacing: 0.2em;
  margin-bottom: 13px;
}
.idx5 .idx5_item .ttl1.ltp {
  letter-spacing: 0.1em;
}
.idx5 .idx5_item .ttl2 {
  color: #61462a;
  font-size: 18px;
  line-height: 1.8333333333;
}
@media only screen and (min-width: 769px) {
  .idx5 .idx5_item:hover .txt_en {
    background: var(--main-color);
  }
  .idx5 .idx5_item:hover .txt_en p {
    color: #fff;
  }
  .idx5 .idx5_item:hover .txt_en p::before {
    border-color: #ffffff;
  }
  .idx5 .idx5_item:hover .txt_en p::after {
    background-color: #fff;
  }
}
.idx5 .idx5_list2 .idx5_content {
  width: 61.7%;
  padding-top: 35px;
  padding-right: 5%;
}
@media only screen and (min-width: 1025px) {
  .idx5 .idx5_list2 .idx5_content p {
    font-size: 18px;
  }
}
@media only screen and (min-width: 769px) {
  .idx5 .idx5_list2 .item:not(:last-child) {
    margin-bottom: 25px;
  }
  .idx5 .idx5_list2 .item:nth-child(even) .idx5_content {
    order: -1;
    padding-left: 6.3%;
    padding-top: 42px;
    padding-right: 0;
    width: 62%;
  }
  .idx5 .idx5_list2 .idx5_item {
    padding-right: 75px;
  }
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .idx5 .inner_big::before, .idx5 .inner_big::after {
    font-size: 0.7vw;
  }
  .idx5 .inner_big::before {
    left: 0;
  }
  .idx5 .inner_big::after {
    right: 0;
  }
  .idx5 .TabContainer .TabPager > div {
    width: calc(25% - 10px);
  }
  .idx5 .TabContainer .TabPager > div p {
    font-size: 20px;
    letter-spacing: 0;
  }
}
@media only screen and (max-width: 1280px) and (min-width: 769px) {
  .idx5 .idx5_item .ttl1 {
    letter-spacing: 0;
    font-size: 20px;
  }
  .idx5 .idx5_item .ttl2 {
    letter-spacing: 0;
  }
  .idx5 .idx5_item .ttl2 br {
    display: none;
  }
  .idx5 .idx5_list {
    gap: 20px;
  }
  .idx5 .idx5_tab {
    padding-left: 50px;
    padding-right: 50px;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .idx5 .TabContainer .TabPager {
    margin-top: 60px;
  }
  .idx5 .TabContainer .TabPager > div {
    width: calc(25% - 10px);
  }
  .idx5 .TabContainer .TabPager > div p {
    font-size: 20px;
    letter-spacing: 0;
  }
  .idx5 .idx5_item {
    padding-right: 50px !important;
    padding-top: 20px;
    padding-left: 18px;
    padding-bottom: 20px;
  }
  .idx5 .idx5_item::before {
    right: 42px;
  }
  .idx5 .idx5_item .img {
    max-width: 120px;
  }
  .idx5 .idx5_item .txt {
    padding: 20px 0 0;
  }
  .idx5 .idx5_item .txt_en p {
    font-size: 14px;
    padding: 20px 1em 0 1em;
    letter-spacing: 0;
  }
  .idx5 .idx5_item .ttl1 {
    font-size: min(2.4vw, 20px);
  }
  .idx5 .idx5_item .ttl1 .br375,
  .idx5 .idx5_item .ttl1 .br425 {
    display: block !important;
  }
  .idx5 .idx5_item .ttl2 {
    font-size: 16px;
  }
  .idx5 .idx5_item .ttl2 br {
    display: none;
  }
  .idx5 .idx5_list2 .idx5_content {
    padding-right: 0;
    padding-top: 0;
    width: 61.7%;
  }
  .idx5 .idx5_list2 .item:nth-child(even) .idx5_content {
    padding-left: 0;
    padding-top: 0;
    padding-right: 0;
    width: 61.7%;
  }
}

.idx6 {
  padding-left: 10px;
  padding-right: 10px;
}
.idx6 .idx6_bg {
  position: relative;
  padding: 66px 0 130px;
  z-index: 1;
  max-width: 1880px;
  margin-left: auto;
  margin-right: auto;
}
.idx6 .idx6_bg::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  top: -129px;
  background: url(../images/idx6_bg_top.png) no-repeat top center/100%;
  height: 318px;
  left: 0;
  width: 100%;
  z-index: -1;
}
.idx6 .idx6_bg::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -2;
  background: linear-gradient(to top, rgb(248, 242, 239) 0%, rgb(255, 255, 255) 100%);
  inset: 0;
}
.idx6 .inner {
  position: relative;
  max-width: 1720px;
}
.idx6 .inner::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='115px' height='81px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M57.500,29.247 C72.145,29.247 84.017,37.743 84.017,48.224 C84.017,58.703 72.145,67.200 57.500,67.200 C42.855,67.200 30.983,58.703 30.983,48.224 C30.983,37.743 42.855,29.247 57.500,29.247 Z'/%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 146, 76)' d='M110.270,65.057 C106.927,63.102 103.063,61.437 99.023,60.293 C99.251,58.731 99.402,56.859 99.315,54.829 C104.589,54.996 109.847,55.670 115.010,56.762 C110.467,55.426 105.741,54.688 101.021,54.350 C100.443,54.314 99.864,54.284 99.284,54.262 C99.158,52.306 98.803,50.220 98.081,48.136 C101.758,47.525 105.492,47.249 109.214,47.271 C105.449,46.910 101.643,47.099 97.901,47.636 C97.862,47.535 97.823,47.431 97.782,47.329 C97.489,46.583 97.410,45.771 97.561,44.984 C98.053,42.424 99.235,36.686 100.368,34.285 C101.849,31.147 104.728,22.149 101.849,12.738 C101.849,12.738 101.191,9.023 95.432,11.253 C90.238,13.262 83.170,19.370 80.868,22.305 C80.503,22.770 79.868,22.922 79.334,22.672 C75.518,20.885 61.094,14.827 49.795,19.437 C49.179,19.689 48.473,19.424 48.177,18.825 C46.500,15.434 41.078,5.134 35.542,1.842 C35.542,1.842 31.511,-0.966 29.454,3.411 C27.438,7.700 25.342,11.830 25.959,25.683 C25.985,26.273 25.971,26.865 25.917,27.453 C25.736,29.419 25.275,33.901 24.765,34.861 C24.394,35.560 21.721,38.174 19.888,42.884 C19.723,42.822 19.558,42.764 19.393,42.704 C15.486,41.364 11.427,40.400 7.304,40.089 C11.522,40.792 15.690,41.882 19.693,43.401 C19.097,45.039 18.610,46.916 18.351,49.036 C16.966,48.798 15.575,48.609 14.184,48.459 C9.475,47.989 4.693,47.913 -0.010,48.459 C6.106,48.227 12.254,48.572 18.287,49.610 C18.137,51.100 18.100,52.705 18.216,54.430 C12.998,54.638 7.772,55.749 3.262,57.439 C8.140,56.071 13.191,55.183 18.260,55.006 C18.333,55.857 18.443,56.738 18.595,57.645 C18.730,58.453 18.862,59.201 18.990,59.891 C13.597,61.121 9.600,64.888 9.369,69.538 C9.167,73.608 11.619,78.176 15.770,76.437 C17.662,75.644 18.175,78.234 22.782,78.456 C28.606,78.738 28.691,75.966 30.080,76.597 C32.609,77.742 36.783,75.540 37.012,70.919 C37.037,70.422 37.017,69.933 36.957,69.450 L74.246,69.450 C73.886,70.423 73.693,71.451 73.693,72.514 C73.693,76.712 76.449,81.286 80.630,79.283 C82.536,78.371 83.195,81.007 87.947,80.1000 C93.952,80.990 93.898,78.135 95.358,78.711 C98.019,79.761 102.200,77.281 102.200,72.514 C102.200,69.459 100.606,66.691 98.030,64.687 C98.173,64.255 98.609,62.845 98.939,60.833 C102.837,61.877 106.633,63.327 110.270,65.057 ZM39.015,38.201 C39.704,38.201 40.262,38.761 40.262,39.453 C40.262,40.144 39.704,40.705 39.015,40.705 C38.326,40.705 37.768,40.144 37.768,39.453 C37.768,38.761 38.326,38.201 39.015,38.201 ZM41.300,51.537 C37.211,51.537 33.896,48.211 33.896,44.107 C33.896,41.579 35.155,39.347 37.077,38.005 C36.138,38.985 35.560,40.314 35.560,41.781 C35.560,44.789 37.991,47.228 40.990,47.228 C43.989,47.228 46.420,44.789 46.420,41.781 C46.420,39.793 45.359,38.056 43.776,37.104 C46.648,38.126 48.705,40.876 48.705,44.107 C48.705,48.211 45.390,51.537 41.300,51.537 ZM59.078,59.109 C58.954,59.587 58.537,60.275 57.619,59.954 C55.915,59.358 55.416,59.378 55.039,60.190 C54.785,60.739 55.212,61.209 55.716,61.401 C55.921,61.480 55.956,61.754 55.777,61.880 C54.916,62.487 53.399,62.808 52.456,64.806 C52.443,64.833 52.413,64.850 52.382,64.848 C52.349,64.845 52.322,64.819 52.316,64.787 C51.894,62.619 50.698,61.943 49.990,61.135 C49.846,60.971 49.942,60.705 50.159,60.679 C50.690,60.615 51.214,60.267 51.103,59.675 C50.939,58.795 50.241,58.532 48.662,58.805 C47.704,58.971 47.460,58.116 47.457,57.623 C47.454,56.964 47.867,56.386 48.460,56.106 C49.028,55.840 49.905,55.681 51.080,56.206 C51.836,56.546 52.687,56.733 53.481,56.833 C53.481,56.833 55.116,56.973 55.919,56.836 C57.186,56.618 57.998,56.990 58.481,57.390 C58.987,57.809 59.244,58.472 59.078,59.109 ZM70.097,42.855 C70.786,42.855 71.344,43.416 71.344,44.107 C71.344,44.798 70.786,45.358 70.097,45.358 C69.408,45.358 68.850,44.798 68.850,44.107 C68.850,43.416 69.408,42.855 70.097,42.855 ZM72.383,56.191 C68.294,56.191 64.979,52.865 64.979,48.762 C64.979,46.234 66.237,44.001 68.159,42.659 C67.221,43.639 66.642,44.969 66.642,46.435 C66.642,49.444 69.073,51.883 72.072,51.883 C75.071,51.883 77.502,49.444 77.502,46.435 C77.502,44.447 76.442,42.710 74.859,41.758 C77.730,42.780 79.787,45.530 79.787,48.762 C79.787,52.865 76.472,56.191 72.383,56.191 Z'/%3E%3C/svg%3E") no-repeat center/contain;
  width: 11.5em;
  height: 8.1em;
  left: calc(50% - 5.9em);
  top: -14.7em;
  z-index: 2;
  font-size: 10px;
}
.idx6 .idx6_list {
  margin-top: 74px;
}
.idx6 .idx6_list .item {
  width: calc(33.3333333333% - 20px);
  aspect-ratio: 540/540;
  position: relative;
  z-index: 1;
}
.idx6 .idx6_list .item .link > a {
  right: -10px;
  bottom: -10px;
}
.idx6 .idx6_list .item::before {
  z-index: -1;
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  inset: 0;
  background-position: top center;
  background-size: cover;
  background-repeat: no-repeat;
}
.idx6 .idx6_list .item::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  border: 1px solid #61462a;
  inset: 10px -10px -10px 10px;
}
.idx6 .idx6_list .item .txt {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 47px 57px;
}
.idx6 .idx6_list .item .txt::before, .idx6 .idx6_list .item .txt::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 2.6em;
  height: 2.6em;
  bottom: 20px;
  right: 20px;
  font-size: 10px;
}
.idx6 .idx6_list .item .txt::before {
  border-radius: 50%;
  border: 1px solid var(--main-color);
}
.idx6 .idx6_list .item .txt::after {
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../images/idx5_arr.png);
  background-color: var(--main-color);
}
.idx6 .idx6_list .item .ttl1 {
  letter-spacing: 0.2em;
  background: var(--main-color);
  color: #fff;
  font-size: 26px;
  font-weight: 500;
  display: table;
  line-height: 30px;
  margin-bottom: 21px;
  padding: 9px 15px 11px 18px;
  transition: 0.3s all;
}
.idx6 .idx6_list .item .ttl1 small {
  display: block;
  font-size: 0.6923em;
  margin-left: -0.6667em;
  letter-spacing: 0.2em;
}
.idx6 .idx6_list .item .ttl2 {
  font-size: 18px;
}
@media only screen and (min-width: 769px) {
  .idx6 .idx6_list .item:hover::after {
    border-color: var(--clr2);
  }
  .idx6 .idx6_list .item:hover .txt::before {
    background-color: var(--clr2);
    border-color: var(--clr2);
  }
  .idx6 .idx6_list .item:hover .txt::after {
    background-color: #fff;
  }
  .idx6 .idx6_list .item:hover .ttl1 {
    background-color: var(--clr2);
  }
}
.idx6 .idx6_list .item1::before {
  background-image: url(../images/idx6_img1.jpg);
}
.idx6 .idx6_list .item2::before {
  background-image: url(../images/idx6_img2.jpg);
}
.idx6 .idx6_list .item2 .ttl1 {
  padding-right: 1.1154em;
}
.idx6 .idx6_list .item3::before {
  background-image: url(../images/idx6_img3.jpg);
}
.idx6 .idx6_list .item3 .ttl1 {
  padding-bottom: 0.2692em;
  padding-top: 0.3462em;
  padding-right: 0.3846em;
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .idx6 .inner::before {
    top: -14em;
    z-index: 2;
    font-size: 0.7vw;
  }
  .idx6 .idx6_bg {
    padding: 20px 0 60px;
  }
  .idx6 .idx6_list .item .ttl1 {
    letter-spacing: 0;
    font-size: 24px;
  }
  .idx6 .idx6_list .item .ttl2 {
    letter-spacing: 0;
  }
  .idx6 .idx6_list .item .txt {
    padding: 30px;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .idx6 .inner::before {
    top: -19em;
    z-index: 2;
    font-size: 0.7vw;
  }
  .idx6 .idx6_bg {
    padding: 20px 0 60px;
  }
  .idx6 .idx6_bg::before {
    top: -125px;
  }
  .idx6 .idx6_bg::after {
    background: linear-gradient(to top, rgb(248, 242, 239) 0%, rgb(254, 252, 252) 100%);
  }
  .idx6 .idx6_list .item {
    width: calc(33.3333333333% - 15px);
  }
  .idx6 .idx6_list .item::after {
    inset: 8px -8px -8px 8px;
  }
  .idx6 .idx6_list .item .ttl1 {
    margin-bottom: 10px;
    font-size: 20px;
  }
  .idx6 .idx6_list .item .ttl2 {
    letter-spacing: 0;
  }
  .idx6 .idx6_list .item .txt {
    padding: 20px 10px 30px 20px;
  }
  .idx6 .idx6_list .item .txt::before, .idx6 .idx6_list .item .txt::after {
    bottom: 5px;
    right: 5px;
    font-size: 9px;
  }
}
@media only screen and (max-width: 850px) and (min-width: 769px) {
  .idx6 .inner::before {
    top: -24em;
  }
  .idx6 .idx6_list .item {
    width: calc(50% - 15px);
  }
  .idx6 .idx6_list .item:last-child {
    margin: 30px auto 0;
  }
}

.idx7 {
  background-image: url(../images/idx7_bg.jpg);
  position: relative;
  overflow: hidden;
}
.idx7 .inner_big {
  position: relative;
  z-index: 1;
  padding-top: 171px;
  padding-bottom: 139px;
}
.idx7 .inner_big::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='176px' height='156px'%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M173.861,154.787 C173.028,155.224 172.073,155.350 171.139,155.454 C165.523,156.080 159.847,156.169 154.214,155.720 C153.928,155.698 153.619,155.658 153.358,155.546 C151.930,155.866 150.464,156.002 148.999,156.002 L106.038,156.002 C104.472,156.002 102.906,155.849 101.386,155.482 C101.102,155.643 100.734,155.694 100.397,155.720 C94.764,156.169 89.089,156.080 83.473,155.454 C82.539,155.350 81.583,155.224 80.751,154.787 C79.918,154.351 79.221,153.536 79.187,152.595 C79.162,151.907 79.490,151.247 79.930,150.718 C80.962,149.479 82.556,148.866 84.113,148.455 C85.559,148.072 87.594,147.725 89.774,147.609 C82.234,137.739 82.687,122.880 94.050,123.871 C95.006,123.955 95.960,123.711 96.726,123.132 C96.762,123.106 96.799,123.078 96.836,123.049 C98.777,121.559 95.003,89.354 100.954,80.197 C102.964,77.106 104.612,73.784 105.920,70.338 C106.622,68.491 107.309,66.297 107.817,64.388 C108.311,62.533 110.215,56.895 108.454,57.077 C108.034,57.121 107.708,57.462 107.622,57.876 C106.330,64.131 96.195,83.378 94.426,79.302 C93.325,62.665 86.081,58.577 84.057,50.211 C83.228,46.785 83.888,43.180 85.718,40.167 C88.513,35.564 88.425,32.989 89.911,27.065 C91.542,20.567 95.072,14.556 102.232,13.573 C105.570,13.113 108.551,12.835 110.635,13.249 C110.635,13.249 126.325,-0.741 144.254,13.249 L144.401,13.249 C146.485,12.835 149.467,13.113 152.805,13.573 C159.964,14.556 163.494,20.567 165.125,27.065 C166.611,32.989 166.523,35.564 169.318,40.167 C171.148,43.180 171.809,46.785 170.980,50.211 C168.956,58.577 161.711,62.665 160.610,79.302 C158.841,83.378 148.706,64.131 147.414,57.876 C147.328,57.462 147.003,57.121 146.583,57.077 C144.822,56.895 146.725,62.533 147.219,64.388 C147.727,66.297 148.415,68.491 149.116,70.338 C150.424,73.784 152.073,77.106 154.082,80.197 C160.034,89.354 156.259,121.559 158.200,123.049 C158.238,123.078 158.274,123.106 158.310,123.132 C159.077,123.711 160.030,123.955 160.986,123.871 C172.359,122.879 172.803,137.765 165.243,147.634 C167.268,147.769 169.143,148.095 170.499,148.455 C172.056,148.866 173.649,149.479 174.681,150.718 C175.122,151.247 175.450,151.907 175.424,152.595 C175.390,153.536 174.694,154.351 173.861,154.787 ZM58.253,88.014 C61.551,92.081 62.437,98.737 62.939,103.136 C63.043,104.051 63.274,104.944 63.638,105.790 C67.767,115.383 80.833,137.264 65.616,152.153 C63.086,154.628 59.679,156.002 56.144,156.002 L33.414,156.002 C29.203,156.002 25.057,154.728 21.687,152.199 C20.084,150.996 18.536,149.436 17.335,147.428 C6.192,139.013 -0.271,124.684 1.407,110.508 C2.621,100.250 12.158,84.975 4.920,74.909 C3.445,72.858 1.064,71.265 0.644,68.773 C0.198,66.116 2.486,63.504 5.139,63.065 C7.792,62.628 10.508,64.005 12.254,66.053 C13.999,68.101 14.913,70.730 15.517,73.356 C19.330,89.913 8.335,103.433 9.665,119.762 C10.112,125.249 11.947,130.469 14.782,135.104 C15.148,128.134 17.953,120.761 22.704,115.623 C23.695,114.551 24.327,113.197 24.477,111.744 C25.102,105.690 27.446,89.173 35.090,78.331 C35.758,77.386 36.099,76.243 36.079,75.084 C36.014,71.361 36.778,62.675 44.668,57.755 C45.439,57.274 46.067,56.599 46.448,55.774 C47.671,53.119 49.996,46.819 52.140,42.550 C54.802,48.233 55.879,55.126 55.932,57.333 C55.941,57.725 56.252,58.029 56.642,58.052 C57.906,58.091 64.012,60.072 66.249,64.105 C66.504,64.433 66.941,64.554 67.337,64.429 C73.063,62.627 77.858,62.772 79.475,63.177 C78.088,65.245 71.353,71.195 70.019,73.490 C69.082,81.516 65.710,86.624 58.253,88.014 Z'/%3E%3Cpath fill-rule='evenodd' fill='rgb(255, 255, 255)' d='M59.612,29.998 C59.612,29.998 76.795,20.097 77.953,9.644 C78.320,6.332 76.528,3.166 73.452,1.825 C65.573,-1.614 59.500,6.799 59.500,6.873 C59.500,6.799 53.426,-1.614 45.548,1.825 C42.472,3.166 40.680,6.332 41.047,9.644 C42.205,20.097 59.612,29.998 59.612,29.998 Z'/%3E%3C/svg%3E") no-repeat center/contain;
  width: 17.6em;
  height: 15.6em;
  bottom: -1em;
  right: -4.6em;
  font-size: 10px;
}
.idx7 .idx7_bg {
  background-color: #fff;
  border-radius: 295px;
  max-width: 1000px;
  margin: 0 auto;
  padding: 75px 0 80px;
  position: relative;
  z-index: 1;
}
.idx7 .idx7_bg::after, .idx7 .idx7_bg::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 18em;
  height: 13em;
  font-size: 10px;
}
.idx7 .idx7_bg::before {
  background: url(../images/idx7_icon1.png) no-repeat center/contain;
  right: 0.9em;
  top: 4.4em;
}
.idx7 .idx7_bg::after {
  background: url(../images/idx7_icon2.png) no-repeat center/contain;
  bottom: 2.4em;
  left: 2.4em;
}
.idx7 .txt {
  max-width: 74%;
  margin: 37px auto 42px;
  font-size: 18px;
  text-align: center;
}
.idx7 .btn-group .btn {
  max-width: 340px;
}
.idx7 .btn-group .btn a {
  padding-left: 1.5em;
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .idx7 .inner_big {
    padding-top: 80px;
    padding-bottom: 80px;
  }
  .idx7 .inner_big::after {
    right: 0;
    font-size: 0.6vw;
    bottom: -1px;
  }
  .idx7 .txt p {
    font-size: 16px;
    letter-spacing: 0;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .idx7 .idx7_bg::before, .idx7 .idx7_bg::after {
    font-size: 0.9vw;
  }
}

.idx8 {
  padding: 130px 0 120px;
  position: relative;
  z-index: 1;
}
.idx8::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  background-image: url(../images/idx8_bg_top.png), url(../images/idx8_bg_bottom.png), url(../images/idx8_bg.jpg);
  background-repeat: no-repeat;
  background-size: 100%, 100%, cover;
  background-position: top center, bottom center, top center;
  inset: 0;
  z-index: -1;
  max-width: calc(100% - 40px);
  top: 17.45%;
  max-width: 95vw;
}
@media only screen and (min-width: 1919px) {
  .idx8::after {
    max-width: 93.5vw;
  }
}
.idx8 .inner {
  max-width: 1257px;
}
.idx8 .idx8_list {
  margin-top: 134px;
  counter-reset: count;
}
.idx8 .idx8_list .item {
  width: calc(50% - 30px);
  max-width: 530px;
  margin-bottom: 117px;
}
.idx8 .idx8_list .item .img {
  position: relative;
  z-index: 1;
}
.idx8 .idx8_list .item .img::before {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  z-index: -1;
  background: linear-gradient(-40deg, rgba(255, 222, 206, 0.99608) 0%, rgb(255, 169, 113) 100%);
  aspect-ratio: 429/400;
  opacity: 0.4;
  width: 80.9433962264%;
}
.idx8 .idx8_list .item .img::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  content: counter(count, decimal-leading-zero);
  counter-increment: count;
  font-weight: 300;
  line-height: 1;
  letter-spacing: 0.05em;
  color: #ff924c;
  text-transform: uppercase;
  font-size: 130px;
  top: -0.4846em;
  right: -0.4385em;
}
.idx8 .idx8_list .item .txt {
  padding: 32px 40px;
  position: relative;
  z-index: 2;
}
.idx8 .idx8_list .item .ttl1 {
  line-height: 1.6428571429;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: #61462a;
  margin-bottom: 21px;
}
@media only screen and (min-width: 1919px) {
  .idx8 .idx8_list .item .ttl1 {
    width: 110%;
  }
}
.idx8 .idx8_list .item .ttl1::after {
  content: "";
  display: block;
  width: 140px;
  background-color: #ff924c;
  margin: 18px 0 0;
  height: 1px;
}
.idx8 .idx8_list .item .ttl2 {
  font-size: 18px;
}
@media only screen and (min-width: 1919px) {
  .idx8 .idx8_list .item .ttl2 {
    width: 113%;
  }
}
.idx8 .idx8_list .item1 .img::before,
.idx8 .idx8_list .item3 .img::before {
  top: -15%;
  left: -11.2%;
}
.idx8 .idx8_list .item2 .img::before,
.idx8 .idx8_list .item4 .img::before {
  bottom: -15%;
  right: -12%;
  background: linear-gradient(38deg, rgba(255, 222, 206, 0.99608) 0%, rgb(255, 169, 113) 100%);
}
.idx8 .idx8_list .item2 .img::before {
  background: linear-gradient(-40deg, rgba(255, 222, 206, 0.99608) 0%, rgb(255, 169, 113) 100%);
}
.idx8 .idx8_list .item3,
.idx8 .idx8_list .item4 {
  margin-bottom: 0;
}
.idx8 .btn-group {
  margin-top: 21px;
}
.idx8 .btn-group .btn {
  max-width: 280px;
}
@media only screen and (min-width: 1919px) {
  .idx8 .idx8_list {
    position: relative;
    left: -32px;
  }
}
@media only screen and (max-width: 1600px) and (min-width: 769px) {
  .idx8 .idx8_list .item .ttl1 {
    letter-spacing: 0;
  }
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .idx8 {
    padding: 80px 0;
  }
  .idx8 .idx8_list {
    margin-top: 110px;
  }
  .idx8 .idx8_list .item .ttl1 {
    font-size: 24px;
  }
  .idx8 .idx8_list .item .img::after {
    font-size: 100px;
  }
  .idx8 .idx8_list .item .ttl2 {
    letter-spacing: 0;
    font-size: 16px;
  }
}
@media only screen and (max-width: 1280px) and (min-width: 769px) {
  .idx8 .inner {
    padding-left: 74px;
    padding-right: 77px;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .idx8 .idx8_list .item .txt {
    padding: 20px;
  }
}
@media only screen and (max-width: 850px) and (min-width: 769px) {
  .idx8 .inner {
    padding-left: 54px;
    padding-right: 57px;
  }
}

.idx9 {
  padding: 120px 0;
}
.idx9 .idx9_bg {
  background-image: url(../images/idx9_bg_right.png), url(../images/idx9_bg_left.png), url(../images/idx9_bg.jpg);
  background-repeat: no-repeat;
  background-size: 20.3%, 20.3%, cover;
  background-position: top right, bottom left, top center;
  padding: 48px 0 99px;
  position: relative;
  z-index: 1;
}
.idx9 .idx9_bg::before, .idx9 .idx9_bg::after {
  content: "";
  display: block;
  position: absolute;
  transition: all 0.3s;
  width: 8em;
  height: 8em;
  right: 3em;
  bottom: 3em;
  font-size: 10px;
}
.idx9 .idx9_bg::before {
  background-color: #fff;
  border-radius: 50%;
}
.idx9 .idx9_bg::after {
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url(../images/idx9_arr.png);
  background-color: var(--main-color);
}
@media only screen and (min-width: 769px) {
  .idx9 .idx9_bg:hover::before {
    background-color: var(--clr2);
  }
  .idx9 .idx9_bg:hover::after {
    background-color: #fff;
  }
}
.idx9 .en {
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-size: 100px;
  color: rgba(255, 255, 255, 0.17);
  text-align: center;
  line-height: 1;
  margin-bottom: -46px;
}
.idx9 .txt {
  padding: 28px 0 0;
  color: #fff;
  width: 65%;
  margin: 0 auto;
  text-align: center;
}
.idx9 .txt p {
  font-weight: 500;
  font-size: 18px;
}
@media only screen and (max-width: 1366px) and (min-width: 769px) {
  .idx9 {
    padding: 80px 0;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 769px) {
  .idx9 .en {
    font-size: 10vw;
  }
  .idx9 .txt p {
    font-size: 16px;
    letter-spacing: 0;
  }
  .idx9 .idx9_bg {
    padding: 60px 0;
  }
  .idx9 .idx9_bg::before, .idx9 .idx9_bg::after {
    font-size: 8px;
  }
}