/***********************************************************************
preset
**********************************************************************/
/***************************************************************************************************************************
module
**************************************************************************************************************************/
.mod-btn {
  border: 2px solid #c394c0;
  display: inline-block;
  position: relative;
  -moz-border-radius: 50px;
  -webkit-border-radius: 50px;
  border-radius: 50px;
  transition: all 0.3s ease 0s; }

.mod-btn a {
  display: block;
  padding: 8px 60px 8px 60px;
  font-size: 16px;
  font-size: 1.6rem;
  color: #c394c0; }

.mod-btn:hover {
  background: #c394c0; }
  .mod-btn:hover a {
    color: #FFF; }

.black-btn {
  background: #000000;
  display: inline-block;
  padding: 10px 20px;
  transition: all 0.3s ease 0s; }
  .black-btn a {
    color: #FFF; }

.black-btn:hover {
  background: #c394c0; }

a img {
  transition: all 0.3s ease 0s; }

a:hover img {
  opacity: 0.7; }

.mod-link {
  background: url("../img/common/right-arrow.png") no-repeat 0 50%;
  transition: all 0.3s ease 0s; }
  .mod-link a {
    color: #000000;
    font-weight: bold;
    padding-left: 25px; }

.mod-link:hover {
  opacity: 0.7; }

.contents-ttl {
  text-align: center;
  margin-bottom: 30px; }

/***************************************************************************************************************************
product list
**************************************************************************************************************************/
.product-list::after {
  content: "";
  display: block;
  clear: both; }
.product-list li {
  width: 230px;
  float: left;
  margin: 0 26px 40px 0px; }
  .product-list li a {
    color: #000000; }
    .product-list li a .img {
      margin-bottom: 15px; }
    .product-list li a dt {
      font-weight: bold;
      font-size: 14px;
      font-size: 1.4rem;
      margin-bottom: 5px;
      text-align: left; }
    .product-list li a dd {
      font-size: 13px;
      font-size: 1.3rem;
      line-height: 1.5em;
      text-align: left; }
      .product-list li a dd .price {
        text-align: right;
        display: block;
        padding-top: 5px; }
.product-list li:nth-child(4n) {
  margin-right: 0px; }

.card-list li {
  background: #FFF;
  display: table;
  margin-bottom: 30px;
  padding-right: 20px; }
  .card-list li .img {
    display: table-cell;
    padding-right: 30px; }
  .card-list li dl {
    display: table-cell;
    vertical-align: middle; }
    .card-list li dl dt {
      font-size: 18px;
      font-size: 1.8rem;
      margin-bottom: 10px;
      font-weight: bold; }
.card-list li:last-child {
  margin-bottom: 0px; }

/***********************************************************************
media query
**********************************************************************/
@media only screen and (max-width: 750px) {
  /***************************************************************************************************************************
  module
  **************************************************************************************************************************/
  .mod-btn a {
    padding: 5px 25px 5px 25px;
    font-size: 13px;
    font-size: 1.3rem;
    width: 100%; }

  .mod-btn {
    text-align: center;
    width: 100%; }
    .mod-btn a {
      padding: 10px 0px; }

  .black-btn {
    width: 100%;
    padding: 10px 0px;
    box-sizing: border-box;
    text-align: center; }

  /***************************************************************************************************************************
  product list
  **************************************************************************************************************************/
  .product-list li {
    width: 48%;
    margin: 0 4% 25px 0px; }
    .product-list li a .img {
      margin-bottom: 15px; }
      .product-list li a .img img {
        width: 100%;
        height: auto; }
    .product-list li a dt {
      font-size: 13px;
      font-size: 1.3rem; }
    .product-list li a dd {
      font-size: 12px;
      font-size: 1.2rem; }
  .product-list li:nth-child(2n) {
    margin-right: 0px; }
  .product-list li:nth-child(4n) {
    margin-right: 0px; }

  .card-list {
    box-sizing: border-box; }
    .card-list li {
      display: block;
      margin-bottom: 30px; }
      .card-list li .img {
        display: block;
        padding-right: 0px; }
        .card-list li .img img {
          width: 100%; }
      .card-list li dl {
        display: block;
        vertical-align: middle; }
        .card-list li dl dt {
          font-size: 15px;
          font-size: 1.5rem;
          padding: 10px;
          margin-bottom: 0px; }
        .card-list li dl dd {
          padding: 0px 10px 20px 10px;
          font-size: 12px;
          font-size: 1.2rem; }
          .card-list li dl dd .mod-link {
            margin-top: 10px; }
    .card-list li:last-child {
      margin-bottom: 0px; } }
.ttl-text h1 {
  width: 213px;
  height: 63px;
  background: url("../img/campaign/campaign-ttl.png") no-repeat center; }

.contents {
  margin-bottom: 70px;
  padding: 0px;
  width: initial; }

.card-list {
  width: 1000px;
  margin: 0 auto; }
  .card-list li {
    border: 5px solid #f8f8f8;
    padding: 25px;
    width: 100%;
    box-sizing: border-box; }
    .card-list li dl dt {
      color: #FFF;
      background: #c394c0;
      padding: 10px;
      margin-bottom: 20px;
      text-align: center; }
    .card-list li dl dd {
      text-align: center; }
      .card-list li dl dd .text {
        text-align: left; }
      .card-list li dl dd .small {
        text-align: left;
        margin: 10px 0 10px;
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1.7em; }
      .card-list li dl dd .attention {
        background: #000;
        color: #FFF;
        margin-bottom: 5px;
        display: inline-block;
        padding: 0 15px;
        -moz-border-radius: 4px;
        -webkit-border-radius: 4px;
        border-radius: 4px; }

@media only screen and (max-width: 750px) {
  .ttl-text h1 {
    width: 181px;
    height: 42px;
    background: url("../img/campaign/campaign-ttl-sp.png") no-repeat center;
    background-size: cover; }

  .card-list {
    width: 100%;
    padding: 0 4%; }
    .card-list li {
      border: 5px solid #f8f8f8;
      padding: 10px;
      width: 100%;
      box-sizing: border-box; }
      .card-list li dl dt {
        color: #FFF;
        background: #c394c0;
        padding: 10px;
        margin-bottom: 20px;
        text-align: center; }
      .card-list li dl dd {
        text-align: center; }
        .card-list li dl dd .text {
          text-align: left; }
        .card-list li dl dd .small {
          text-align: left;
          margin: 10px 0 10px;
          font-size: 12px;
          font-size: 1.2rem;
          line-height: 1.7em; }
        .card-list li dl dd .attention {
          background: #c394c0;
          color: #FFF;
          margin-bottom: 5px;
          display: inline-block;
          padding: 0 10px;
          -moz-border-radius: 4px;
          -webkit-border-radius: 4px;
          border-radius: 4px; } }
