/* ==========================================================
!social
========================================================== */
.p-social-line__block {
  position: relative;
}
.p-social-line__block::before {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #21B91B;
  width: 100px;
  height: 2px;
  content: "";
}
.p-social-line__title {
  position: relative;
  padding: 21px 0 0 70px !important;
}
@media only screen and (min-width: 768px), print {
  .p-social-line__title {
    padding: 42px 0 0 70px !important;
  }
}
.p-social-line__title::before {
  position: absolute;
  top: 17px !important;
  width: 50px !important;
  height: 50px !important;
  background: none !important;
  content: url(/common/img/social/img_social_line-title.svg) !important;
}
@media only screen and (min-width: 768px), print {
  .p-social-line__title::before {
    top: 40px !important;
  }
}
.p-social-line__list {
  display: -ms-grid;
  display: grid;
  row-gap: 20px;
}
@media only screen and (min-width: 768px), print {
  .p-social-line__list {
    /* -ms-grid-columns: (1fr)[3]; */
    grid-template-columns: repeat(3, 1fr);
    -webkit-column-gap: 40px;
       -moz-column-gap: 40px;
            column-gap: 40px;
  }
}
.p-social-line__item {
  position: relative;
  border: 1px solid #C4C4C4;
  padding: 32px 10px 18px !important;
  margin: 0 !important;
}
.p-social-line__item::before {
  content: none !important;
}
.p-social-line__way {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  background-color: #000000;
  color: #ffffff;
  font-size: 12px; /*IE9以下で反映されるよう記述*/
  font-size: 0.75rem;
  font-weight: 700;
  line-height: 2.5;
  padding: 1px 32px;
}
.p-social-line__def-list {
  margin: 14px 0 0 0 !important;
}
.p-social-line__def-term {
  font-size: 18px !important;
  text-align: center;
  font-weight: 700;
  line-height: 1.4;
}
.p-social-line__def-desc {
  font-size: 14px; /*IE9以下で反映されるよう記述*/
  font-size: 0.875rem;
  line-height: 1.7;
  margin-top: 10px;
}
.p-social-line__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.p-social-line__link {
  display: inline-block;
}
.p-social-line__contents {
  width: 100%;
  text-align: center;
  margin: 25px 0 0 0 !important;
}
.p-social-line__contents.--qrcode {
  margin: 13px 0 0 0 !important;
}

.p-social-youtube__block {
  position: relative;
}
.p-social-youtube__block::before {
  position: absolute;
  top: 0;
  left: 0;
  background-color: #FF0000;
  width: 100px;
  height: 2px;
  content: "";
}
.p-social-youtube__title {
  position: relative;
  padding: 17px 0 0 70px !important;
}
@media only screen and (min-width: 768px), print {
  .p-social-youtube__title {
    padding: 34px 0 0 70px !important;
  }
}
.p-social-youtube__title::before {
  position: absolute;
  top: 20px !important;
  width: 50px !important;
  height: 35px !important;
  background: none !important;
  content: url(/common/img/social/img_social_youtube-title.svg) !important;
}
@media only screen and (min-width: 768px), print {
  .p-social-youtube__title::before {
    top: 38px !important;
  }
}
