@charset "utf-8";
/* CSS Document */

@media print, screen and (min-width: 768px) {
  .p-top {
    background-image: url("../images/mv.webp");
    position: relative;
    background-position: center;
    background-color: #f0f0f0;
    border-radius: 15px;
    background-size: cover;
    background-attachment: fixed;
  }
}

@media not all and (min-width: 768px) {
  .p-top {
    background-image: url("../images/mv.webp");
    background-color: #000000;
    padding: 130px 0 50px;
    border-radius: 10px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
  }
}
/* SNS CSS 統合部分 */
.sns_box1_inner {
  width: 95%;
  max-width: 1145px;
  margin: 0 auto 5%;
  padding: 2em 3em;
  border: 4px solid #f0f0f0;
  border-radius: 10px;
}
.sns_box1_inner h3 {
  font-size: 1.8em;
  padding-bottom: 3%;
  font-weight: bold;
}
.sns_box1 ul {
  display: flex;
}
.sns_box1 ul li {
  width: 33%;
  padding: 0 2.5%;
}
.sns_box1 ul {
  margin-top: 0.5rem;
}
.sns_box1 ul li {
  padding: 0 1% !important;
}
.sns_box2 ul {
  display: flex;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto 5%;
  flex-wrap: wrap;
  flex-direction: row;
}
.sns_box2 li {
  width: 45%;
  margin: 0 2.5%;
  overflow: hidden;
  border: 4px solid #f0f0f0;
  padding: 2em 3.1em;
  border-radius: 10px;
}
.social-account__inner {
  display: inline-block;
}
.social-account__label {
  font-size: 1.6rem;
}
.int_icon::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 50px;
  background: url("../images/icon_ist.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin-right: 25px;
}
.tw_icon::before {
  content: "";
  display: inline-block;
  width: 50px;
  height: 50px;
  background: url("../images/icon_tw.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin-right: 25px;
}
.fb_icon::before {
  content: "";
  display: inline-block;
  width: 60px;
  height: 60px;
  background: url("../images/icon_fb.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin-right: 10px;
}
.yt_icon::before {
  content: "";
  display: inline-block;
  width: 150px;
  height: 60px;
  background: url("../images/icon_yt.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin-right: 10px;
}
.nt_icon::before {
  content: "";
  display: inline-block;
  width: 150px;
  height: 60px;
  background: url("../images/icon_nt.png") no-repeat;
  background-size: contain;
  vertical-align: middle;
  margin-right: 10px;
}
.social-account__box__title {
  font-size: 1.1rem;
  line-height: 1.5;
  margin-top: 8px;
}
.fa-external-link-alt {
  color: #3399cc;
  padding-left: 15px;
}
.fa-external-link-alt:before,
.fa-up-right-from-square:before {
  content: "\f35d";
}
.social-account__box__title::before {
  font-family: "Font Awesome 5 Free";
  content: "\f0da";
  padding-right: 5px;
  color: #0075be;
  font-weight: 900;
}
.social-account__box__detail dl {
  margin-top: 10px;
}
.social-account__box__detail dl dd {
  font-weight: bold;
  line-height: 1.8;
  padding-left: 1em;
  text-indent: -1em;
}
.social-account__box__detail dl dd::before {
  font-family: "Font Awesome 5 Free";
  content: "\f00c";
  padding-right: 5px;
  font-weight: 900;
}
.social-account__box__detail p {
  margin: 10px 0;
}
@media screen and (max-width: 768px) {
  .seminarListWrap ul {
    display: block;
  }
  .seminarListWrap ul li {
    width: 95%;
    padding: 2em;
  }
  .social-account__label {
    font-size: 1.5rem;
  }
  .tw_icon::before,
  .fb_icon::before,
  .int_icon::before {
    width: 45px;
    height: 4 5px;
  }
  .yt_icon::before,
  .nt_icon::before {
    width: 120px;
    height: 50px;
  }
  .sns_box2 li {
    margin-bottom: 5% !important;
  }
  .sns_box1 ul {
    display: block !important;
  }
  .sns_box1 ul li {
    width: 100% !important;
    margin: 10px auto;
    padding: 0 5% !important;
  }
}
@media screen and (min-width: 481px) {
  .pc_none {
    display: none;
  }
  .p-left {
    padding-left: 1em;
  }
}
@media screen and (max-width: 480px) {
  .sns_box1_inner {
    width: 95%;
    padding: 2em;
  }
}
/* SNS CSS 統合部分 */
/* 追加部分 */
.reason {
  background: #fff;
  padding: 15px 20px;
  border-radius: 6px;
  margin-top: 0.5rem;
  margin-bottom: 1rem;
}
.reason_2 {
  background: #fff;
  padding: 15px 30px;
  border-radius: 6px;
  width: 95%;
  margin: 0.5rem auto 1rem;
}
.reason ul li:before,
.reason_2 ul li:before {
  content: "";
  display: inline-block;
  width: 20px;
  aspect-ratio: 1;
  vertical-align: sub;
  margin-right: 4px;
  mask-position: center center;
  mask-repeat: no-repeat;
  mask-size: contain;
  mask-image: url("/corp/assets/images/common/icon_check-correct.svg");
  background: #000;
}
.reason ul li,
.reason_2 ul li {
  margin-top: 0.75rem;
  font-size: 1rem !important;
}
.voice h3 {
  display: inline-block;
  margin: -1.5rem;
  padding: 0 15px;
  border-radius: 50px;
  background: #000000;
  line-height: 1.7;
  color: white;
  position: absolute;
  font-size: 1rem;
}
.voice h3:before {
  border-left: none;
  border-top: none;
  border-bottom: none;
  left: 0;
}
.voice h3:before,
.voice h3:after {
  border-right: none;
  border-top: none;
  border-bottom: none;
  right: 0;
}
ul.sns-mark {
  width: 95%;
  margin: 1rem auto;
}
@media screen and (max-width: 768px) {
  .sns_box1 ul {
    display: block !important;
  }
  .sns_box1 ul li {
    width: 100% !important;
    margin: 15px auto;
    padding: 0 5% !important;
  }
  ul.sns-mark {
    display: block;
  }
  ul li.sns-mark {
    width: 100%;
  }
  .reason_2 {
    padding: 15px;
  }
  .reason ul li,
  .reason_2 ul li {
    margin-top: 0;
    text-align: left;
    width: 100%;
  }
}
