
.questionLink {
  position: relative;
  display: block;
  width: 500px;
  margin: 115px auto 94px;
  text-align: center;
  border: 1px solid #9f071b;
  border-radius: 6px;
  overflow: hidden;
}

@media screen and (max-width: 767px) {
  .questionLink {
    width: 250px;
    margin: 45px auto 160px;
    border-radius: 3px;
  }
}

.questionLink:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 100%;
  background-color: #9f071b;
  z-index: 1;
  -webkit-transition: width 0.3s ease-in-out;
  transition: width 0.3s ease-in-out;
}

.questionLink__txt {
  position: relative;
  display: inline-block;
  width: 100%;
  padding: 20px;
  font-size: 22px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 2;
  -webkit-transition: color 0.3s ease-in-out;
  transition: color 0.3s ease-in-out;
}

@media screen and (max-width: 767px) {
  .questionLink__txt {
    padding: 8px;
    font-size: 13px;
  }
}

.questionLink__txt:before {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 21px;
  width: 16px;
  height: 2px;
  background-color: #9f071b;
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
  -webkit-transform-origin: bottom right;
          transform-origin: bottom right;
  -webkit-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
}

@media screen and (max-width: 767px) {
  .questionLink__txt:before {
    width: 9px;
  }
}

.questionLink__txt:after {
  content: '';
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  width: 16px;
  height: 2px;
  margin-top: -1px;
  background-color: #9f071b;
  -webkit-transform: rotate(-40deg);
          transform: rotate(-40deg);
  -webkit-transform-origin: bottom right;
          transform-origin: bottom right;
  -webkit-transition: background-color 0.3s ease-in-out;
  transition: background-color 0.3s ease-in-out;
}

@media screen and (max-width: 767px) {
  .questionLink__txt:after {
    width: 9px;
  }
}

/*ホバー*/
@media print, screen and (min-width: 768px) {
  .questionLink:hover:before {
    width: 100%;
  }
  .questionLink:hover .questionLink__txt {
    color: #fff;
  }
  .questionLink:hover .questionLink__txt:before {
    background-color: #fff;
  }
  .questionLink:hover .questionLink__txt:after {
    background-color: #fff;
  }
}
