/* ============== */
/* affiliate link */
/* ============== */
.af_wrap{
  border: 1px solid #d1d1d1;
  background-color: #f9f9f9;
  padding: 10px;
  margin-top: 1em;
  margin-bottom: 1em;
  display: flex;
  justify-content: space-between;
  border-radius: 5px;
}
.af_img{
  flex-basis: 30%;
  min-width: 10%;
  padding: 1% 2%;
  box-sizing: border-box;
  text-align: center;
  position: relative;
}
  .af_img img{
    display: inline-block;
    margin: auto;
  }
  /* remove space of 1px image amazon included by Amazon's image link */
  .af_img > img{
    position: absolute;
  }

.af_content{
  flex-basis: 70%;
  padding: 1% 2%;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}
  .af_title,
  .af_opt,
  .af_desc{
    margin-bottom: 0.6em;
  }

  .af_title{
    font-size: 120%;
    font-weight: bold;
  }
  .af_opt{
    color: #9ea0a0;
    font-size: 90%;
  }
  .af_desc{
  }
  .af_btn_wrap{
    margin-top: auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: column;
  }
  .af_btn_wrap .af_btn{
    width: auto;
    margin: 0 0.5rem;
    text-align: center;
  }
  .af_btn_wrap .af_btn a{
    display: block;
    padding: 0.25rem 1rem;
    border-radius: 0.5rem;
    margin: 0.5rem 0.25rem 0.5rem 0rem;
    text-decoration: none;
    color: #fff;
    line-height: 2rem;
    box-shadow: 0 8px 15px -5px rgba(0, 0, 0, 0.25);
    font-size: 1.25rem;
    font-weight: 700;
  }
    .af_btn_wrap .af_btn a:hover{
      color: #fff;
      opacity: 0.75;
    }
    .af_btn_wrap .af_btn a::before{
      margin-right: 0.4em;
    }
    .af_btn.amazon a{
      background: #ffb36b;
    }
    .af_btn.rakuten a{
      background: #ea7373;
    }
    .af_btn.yahoo a{
      background: #73c1ea;
    }

/* ========== */
/* for Mobile */
/* ========== */
@media only screen and (max-width: 569px) {

.af_wrap{
  flex-direction: column;
}
.af_img{
  flex-basis: auto;
  padding: 3% 2%;
}
  .af_img img{
    max-width: 30%;
  }
.af_content{
  flex-basis: auto;
}

}/* end of media query */