@charset "UTF-8";
/*　*/
/**************************************************
		index
**************************************************/
.index_ttl01 {
  margin-bottom: 2.5rem;
}
@media print, screen and (min-width: 768px) {
  .index_ttl01 {
    margin-bottom: 5rem;
  }
}
@media only screen and (max-width: 767px) {
  .index_box01 {
    padding: 0 1rem;
  }
}
@media print, screen and (min-width: 768px) {
  .index_box01 {
    display: flex;
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 768px) {
  .index_box01_inner01 {
    flex: 1;
  }
}
@media print, screen and (min-width: 768px) {
  .index_box01_inner02 {
    margin-left: 3rem;
    width: 27rem;
  }
}
@media print, screen and (min-width: 768px) {
  .index_box01_inner03 {
    margin-left: 3rem;
    width: 27rem;
  }
}
.index_list01 {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.6;
}
@media print, screen and (min-width: 768px) {
  .index_list01 {
    font-size: 2rem;
  }
}
.index_list01 a {
  display: inline-block;
  position: relative;
  padding: 0.7rem 0;
}
@media print, screen and (min-width: 768px) {
  .index_list01 a {
    padding: 1rem 0;
  }
}
.index_list01 a::before {
  position: absolute;
  left: 0;
  bottom: 0.3rem;
  width: 100%;
  height: 2px;
  background: #4653A2;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: 100% 50%;
          transform-origin: 100% 50%;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  content: "";
}
@media print, screen and (min-width: 768px) {
  .index_list01 a::before {
    bottom: 0.6rem;
  }
}
@media (hover: hover) {
  .index_list01 a:hover {
    color: #4653A2;
  }
  .index_list01 a:hover::before {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 50%;
            transform-origin: 0 50%;
  }
}
.d-ie .index_list01 a:hover {
  color: #4653A2;
}
.d-ie .index_list01 a:hover::before {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transform-origin: 0 50%;
          transform-origin: 0 50%;
}
.index_list02 {
  position: relative;
  margin-bottom: 1rem;
  padding-left: 2rem;
  font-size: 1.4rem;
  line-height: 1.6;
}
@media print, screen and (min-width: 768px) {
  .index_list02 {
    margin-bottom: 1.5rem;
    font-size: 1.6rem;
  }
}
.index_list02::before {
  position: absolute;
  top: 0;
  left: 0.5rem;
  width: 2px;
  height: 100%;
  background: #4653A2;
  content: "";
}
.index_list02 a {
  display: inline-block;
  position: relative;
  padding: 0.5rem 0;
}
.index_list02 a::before {
  position: absolute;
  left: 0;
  bottom: 0.2rem;
  width: 100%;
  height: 1px;
  background: #4653A2;
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: 100% 50%;
          transform-origin: 100% 50%;
  transition: -webkit-transform 0.3s;
  transition: transform 0.3s;
  transition: transform 0.3s, -webkit-transform 0.3s;
  content: "";
}
@media (hover: hover) {
  .index_list02 a:hover {
    color: #4653A2;
  }
  .index_list02 a:hover::before {
    -webkit-transform: scale(1, 1);
            transform: scale(1, 1);
    -webkit-transform-origin: 0 50%;
            transform-origin: 0 50%;
  }
}
.d-ie .index_list02 a:hover {
  color: #4653A2;
}
.d-ie .index_list02 a:hover::before {
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1);
  -webkit-transform-origin: 0 50%;
          transform-origin: 0 50%;
}