@charset "utf-8";


.lead ruby{
  font-size: 1.3em;
}

rt{
  text-align: center;
}

.concept .tokuten img{
  width: 80%;
}

/* nosi */
.contain{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}

.contain img{
  width: 60%;
}

.txt_wrap{
  text-align: left;
}

.txt_wrap span , .contain .right ul li span{
  color: #cb0000;
}

.txt_wrap h4{
  padding-left: 3%;
  color: #000;
  background-color: #ebebeb;
  font-style: 1.1rem;
}

.tokuten .txt{
  padding-left: 3%;
}

.profiel .contain .left{
  width: 50%;
  margin: 0 5% 0 0;
}

.contain img{
  width: 100%;
  object-fit: cover;
}

.right{
  text-align: left;
  display: flex;
  flex-direction: column;
  align-content: space-between;
}

.price{
  font-size: 4rem;
}

.price span{
  font-size: 1.5rem;
}

.btn_contain{
  margin: 5%;
  display: flex;
  justify-content: space-around;
}

.btn_contain button{
  font-size: 1.2rem;
  background-color: #fff;
  overflow: hidden;
  position: relative;
  z-index: 1;
}

.btn_contain button a{
  display: block;
  text-align: center;
  padding: 10px 30px;
}

/* ボタンのアニメーション */

.btn_contain button::after {
  background-color: #f1f1f1;
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  width: 100%;
  height: 100%;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: 0.7s cubic-bezier(0.45, 0, 0.55, 1);
  z-index: -1;
}
.btn_contain button a:hover {
  color: #000;
}
.btn_contain button:hover::after {
  transform: scale(1, 1);
}
.btn_contain button::after {
  transform: skewY(-10deg) scale(1, 0);
  height: 140px; 
}
.btn_contain button:hover::after {
  transform: skewY(-10deg) scale(1, 1);
}


.contact{
  /* background-color: #f1f1f1; */
  color: #000;
  padding: 5% 0;
  margin: 10% 0;
}





@media screen and (max-width: 768px){
  .lead ruby{
    font-size: 0.8em;
  }
  
  .wrapper .txt , .contain .right ul li{
    font-size: 0.9rem;
  }


  .contain{
    display: block;
  }

  .profiel .contain .left{
    width: 100%;
    margin: 0 5% 0 0;
  }

  .concept .tokuten img{
    width: 100%;
  }

  .price{
    font-size: 2rem;
  }
  

  .btn_contain{
    flex-direction: column;
    width: 100%;
    margin: 0;
  }
  .btn_contain button {
    margin: 5%;
  }
  .btn_contain button a{
    font-size: 0.7rem;
  }

  .contact{
    width: 100%;
  }
  
}