@charset "utf-8";

/* PC */
@media screen and (min-width:768px) {

  .key_v {
    background: url(../img/about_main_bg.jpg) no-repeat center #f4f1de;
  }

  .contents {
    background: url("../img/common_btm_bg.jpg") no-repeat bottom;
    padding-bottom: 40px;
  }

  .contents h2 {
    margin-bottom: 30px;
  }

  .contents .point {
    background: url(../img/service_contents_bg.jpg) no-repeat top;
    margin-bottom: 40px;
  }

  .contents .point .special {
    padding: 40px 30px 0;
  }

  .contents .point .special p {
    font-size: 12px;
    width: 50%;
    margin-bottom: 30px;
  }

  .contents .point .pointlist {
    padding: 0 17px;
    display: flex;
    flex-wrap: wrap;
  }

  .contents .point dl {
    width: 355px;
    min-height: 224px;
    margin-bottom: 20px;
  }

  .contents .point dl:nth-of-type(odd) {
    float: left;
  }

  .contents .point dl:nth-of-type(even) {
    float: right;
    margin-left: 15px;
  }

  .contents .point dl:last-of-type {
    margin-bottom: 0;
    clear: both;
    width: 100%;
  }

  .contents .point dt {
    color: #833e0c;
    font-size: 22px;
    margin-bottom: 10px;
  }

  .contents .point dd p {
    font-size: 12px;
    width: 70%;
  }

  .contents .point dd img {
    float: right;
  }

  .contents .point dl:last-of-type h3 img {
    float: none;
  }

  .contents .point dd a {
    display: block;
    height: 34px;
    min-height: 34px;
    line-height: 34px;
    width: 67%;
    font-size: 12px;
    margin: 10px 0 0;
    color: #9d3013;
    padding: 0 10px;
    font-family: 'Sawarabi Mincho', "Yu Mincho", serif;
    background: #ffffff;
    border: 1px solid #9d3013;
    clear: both;
    box-sizing: border-box;
    position: relative;
  }

  .contents .point dd a:after {
    content: '';
    border-right: 1px solid #9d3013;
    border-bottom: 1px solid #9d3013;
    width: 5px;
    height: 5px;
    display: block;
    transform: rotate(-45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 10px;
  }

  .contents .point dl:last-of-type h3 {
    margin-bottom: 10px;
  }

  .contents .point dl:last-of-type dd>img {
    float: none;
    width: 60%;
    margin: 10px auto 0;
    display: block;
  }

  .contents .campaign {
    background: #f4f1de;
    border-radius: 5px;
    padding: 20px;
    margin: 0px 80px;
    border: 2px solid #fff;
  }

  .contents .campaign h2 {
    margin-bottom: 10px;
  }

  .contents .campaign p {
    font-size: 12px;
    width: 50%;
    float: left;
  }

  .contents .campaign a {
    float: right;
  }

}

/* SP */
@media screen and (max-width:767px) {
  .key_v {
    background: url(../img/about_main_bg.jpg) no-repeat left 37% #f4f1de;
  }

  .contents {
    padding: 20px 10px;
    background: rgb(255, 250, 231);
    /* Old browsers */
    background: -moz-linear-gradient(top, rgba(255, 250, 231, 1) 0%, rgba(255, 255, 255, 1) 10%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 90%, rgba(255, 250, 231, 1) 100%);
    /* FF3.6-15 */
    background: -webkit-linear-gradient(top, rgba(255, 250, 231, 1) 0%, rgba(255, 255, 255, 1) 10%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 90%, rgba(255, 250, 231, 1) 100%);
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to bottom, rgba(255, 250, 231, 1) 0%, rgba(255, 255, 255, 1) 10%, rgba(255, 255, 255, 1) 50%, rgba(255, 255, 255, 1) 90%, rgba(255, 250, 231, 1) 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffae7', endColorstr='#fffae7', GradientType=0);
    /* IE6-9 */
  }

  .contents h2 {
    margin-bottom: 10px;
  }

  .contents .point .special p {
    font-size: 12px;
    margin-bottom: 20px;
  }

  .contents .point dl {
    margin-bottom: 20px;
  }

  .contents .point dt {
    color: #833e0c;
    font-size: 22px;
    margin-bottom: 10px;
    overflow: hidden;
  }

  .contents .point dl:last-of-type dt img {
    width: 180%;
  }

  .contents .point dd p {
    font-size: 12px;
  }

  .contents .point dd img.icon {
    width: 100px;
    margin: 0 auto 5px;
    display: block;
  }

  .contents .point dd a {
    display: block;
    height: 34px;
    min-height: 34px;
    line-height: 34px;
    font-size: 12px;
    color: #9d3013;
    padding: 0 10px;
    font-family: 'Sawarabi Mincho', "Yu Mincho", serif;
    background: #ffffff;
    border: 1px solid #9d3013;
    clear: both;
    box-sizing: border-box;
    position: relative;
    width: 240px;
    margin: 10px auto 0;
  }

  .contents .point dd a:after {
    content: '';
    border-right: 1px solid #9d3013;
    border-bottom: 1px solid #9d3013;
    width: 5px;
    height: 5px;
    display: block;
    transform: rotate(-45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
    right: 10px;
  }

  .contents .point dl:last-of-type h3 img {
    width: inherit;
    margin-bottom: 5px;
  }

  .contents .point dl:last-of-type dd>img {
    margin-top: 5px;
  }

  .contents .campaign {
    background: #f4f1de;
    border-radius: 5px;
    padding: 10px;
    border: 2px solid #fff;
  }

  .contents .campaign h2 img {
    transform: scale(0.7)
  }

  .contents .campaign p {
    font-size: 12px;
    margin-bottom: 10px;
  }
}