/***********************************************************************
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 img {
  width: 100%;
  height: auto; }
.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 .img img {
        width: 100%;
        height: auto; }
    .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-area {
  background: url("../img/hair/main-vis-hair.jpg") no-repeat center;
  background-size: cover; }
  .ttl-area h1 {
    width: 260px;
    height: 67px;
    position: absolute;
    top: 50%;
    right: 5px;
    margin-top: -33.5px;
    background: url("../img/hair/hairmake-ttl.png") no-repeat center; }

.recommend-block {
  font-size: 13px;
  font-size: 1.3rem;
  width: 1000px;
  margin: 0 auto 70px; }
  .recommend-block .text {
    margin-bottom: 20px; }
  .recommend-block .img-list::after {
    content: "";
    display: block;
    clear: both; }
  .recommend-block .img-list li {
    float: left;
    margin: 0 35px 35px 0; }
  .recommend-block .img-list li:nth-child(3n) {
    margin-right: 0px; }

@media only screen and (max-width: 750px) {
  .ttl-area {
    background: url("../img/hair/main-vis-hair-sp.jpg") no-repeat center;
    background-size: cover; }
    .ttl-area h1 {
      width: 108px;
      height: 37px;
      position: absolute;
      top: 50%;
      right: 50px;
      margin-top: 0px;
      background: url("../img/hair/hair-ttl-sp.png") no-repeat center;
      background-size: contain; }
    .ttl-area .inner {
      width: 220px;
      left: 0px; }

  .recommend-block {
    width: 100%;
    margin: 0 auto 50px;
    padding: 0;
    box-sizing: border-box; }
    .recommend-block .img-list::after {
      content: "";
      display: block;
      clear: both; }
    .recommend-block .img-list li {
      float: left;
      margin: 0 4% 15px 0;
      width: 48%; }
      .recommend-block .img-list li img {
        width: 100%; }
    .recommend-block .img-list li:nth-child(3n) {
      margin-right: 4%; }
    .recommend-block .img-list li:nth-child(2n) {
      margin-right: 0%; } }
