@charset "utf-8";

/*----- header -----*/
#header {
  background: #fff;
}
#header .box {
  padding-top: 10px;
  padding-bottom: 10px;
}
#c_logo {
  width: 28.8rem!important;
}
#c_btn {
  width: 36rem!important;
}

/*----- conversion -----*/
#conversion {
  display: none;
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 101;
  padding: 1.5rem 0;
  background: #ffffffb3;
}
.btn_box {
  /* width: fit-content;
  margin-left: auto;
  margin-right: auto;
  border-radius: 6rem;
  overflow: hidden;
  position: relative; */
  display: block;
  margin: 0 auto;
  text-align: center;
  font-size: 4.5rem;
  font-weight: 700;
  background: url(../img/common/btn.webp) no-repeat center;
  background-size: 100% 100%;
  width: 71rem;
  padding: 3.5rem 2rem 4rem 0rem;
  color: #fff;
  cursor: pointer;
  position: relative;
}

.btn_box a {
  text-decoration: none;
  color: #fff;
  line-height: 1.1;
  display: block;
}
.btn_box span {
  font-size: 3rem;
}
.btn_box::before {
  content: '';
  /*絶対配置でキラッと光るの位置を決める*/
  position: absolute;
  top: 0;
  left: -75%;
  /*キラッと光る形状*/
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
  transform: skewX(-25deg);
  animation: shine 2s infinite;
}
.btn.h_img::before {
  content: '';
  /*絶対配置でキラッと光るの位置を決める*/
  position: absolute;
  top: -1rem;
  left: -75%;
  /*キラッと光る形状*/
  width: 50%;
  height: 180%;
  background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
  transform: skewX(-25deg);
  animation: shine 2s infinite;
}

@-webkit-keyframes shiny {
  0% {
    transform: translateX(-18rem);
    opacity: 0
  }
  40% {
    opacity: 1
  }

  70% {
    transform: translateX(81rem);
    opacity: 0
  }
  100% {
    transform: translateX(81rem);
    opacity: 0
  }
}
@keyframes shine {
  100% {
    left: 125%;
  }
}

/*----- mi -----*/
#mi {
  background: url(../img/mi/bg.webp) no-repeat center top;
  background-size: contain;
  height: 113rem;
}
#mi .box {
  padding-top: 65rem;
}
#mi .box > p {
  color: #fff;
  top: 40.5rem;
  left: 34.4rem;
  font-weight: 500;
}
#mi .box + p {
  font-weight: 500;
  color: #666666;
}
/* #mi_banner_flare {
  position: absolute;
  top: 1rem;
  right: 5rem;
  mix-blend-mode: screen;
} */
#mi li {
  width: 23rem;
}
#mi h2 {
  text-decoration: underline;
  text-underline-offset: 1.5rem;
  text-decoration-thickness: 1px;
  line-height: 2;
  display: inline;
  color: #ff4191;
  top: 2rem;
  left: 38rem;
  font-weight: 500;
  font-size: 4rem;
  letter-spacing: 0.2rem;
}
#mi h2 span {
  font-size: 3rem;
}
@media (hover:hover) {
}
