/* ==========================================================================
 Foundation
========================================================================== */
.clearfix {
  *zoom: 1;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

/* ==========================================================================
 Page
========================================================================== */
/*====================
/soukin/xx/info/info_agree
====================*/
.p-mv.o-infoAgree {
  padding-top: 120px;
  background: #e3e3de url(/soukin/shared/image/info/mv.jpg) no-repeat;
  background-size: cover;
  background-position: center center;
}

.c-sect .c-sect_inner.o-infoAgreeTel {
  background: url(/soukin/shared/image/info/img_tel.png) right bottom no-repeat;
}

.c-sect .c-sect_inner.o-infoAgreeTel .o-infoAgreeTel_ttl {
  margin-bottom: 15px;
}

.c-sect .c-sect_inner.o-infoAgreeTel .o-infoAgreeTel_small {
  margin-bottom: 65px;
}

@media screen and (max-width: 768px) {
  .p-mv.o-infoAgree {
    padding-top: 280px;
    background-position: right top;
  }

  .c-sect .c-sect_inner.o-infoAgreeTel {
    margin: 0;
    padding-left: 20px;
    padding-right: 20px;
    background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0) 30%, white 50%), url(/soukin/shared/image/info/img_tel.png) 120% 10px no-repeat;
    background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 30%, white 50%), url(/soukin/shared/image/info/img_tel.png) 120% 10px no-repeat;
    background-position: left top, -webkit-calc(100% + 20px) 10px;
    background-position: left top, calc(100% + 20px) 10px;
    background-size: auto, 120px auto;
  }

  .c-sect .c-sect_inner.o-infoAgreeTel .o-infoAgreeTel_ttl {
    padding-right: 110px;
    margin-bottom: 10px;
  }

  .c-sect .c-sect_inner.o-infoAgreeTel .o-infoAgreeTel_small {
    min-height: 3em;
    padding-right: 110px;
    margin-bottom: 30px;
  }

  .o-infoPos .p-unit_ttl {
    min-height: 50px;
  }

  .o-infoPos .o-infoPos_small {
    float: left;
    padding-top: 20px;
    margin-left: -85px;
    font-size: 1.2rem;
  }
}

@media screen and (max-width: 640px) {
  .p-mv.o-infoAgree {
    background-image: url(/soukin/shared/image/info/mv_sp.jpg);
    background-position: center top;
  }
}

.c-grid.-column2.-mgL {
  margin: 0 -15px 15px;
}

@media screen and (max-width: 768px) {

  .p-img.-apple,
  .p-img.-google {
    height: 11vw;
    max-width: none;
    width: auto;
  }

  .c-grid.-column2.-mgL {
    width: 100%;
    margin: auto;
  }
}