.p-intro {
  position: relative; }

.p-intro-bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden; }
  .p-intro-bg:after {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: url(/Fc_soc/_assets/_common/img/bg-mv-dot.png) 0 0/10px repeat;
    mix-blend-mode: multiply;
    position: absolute;
    top: 0;
    left: 0; }
  .p-intro-bg img {
    width: 100%;
    height: 100%; }

.p-intro-inr {
  position: relative; }

.p-intro-box {
  background: rgba(255, 255, 255, 0.95);
  position: relative; }
  @media only screen and (max-width: 899px) {
    .p-intro-box {
      padding: 30px; } }
  @media print, screen and (min-width: 900px) {
    .p-intro-box {
      padding: 45px 100px; } }

.p-intro-fb {
  position: absolute; }
  @media only screen and (max-width: 899px) {
    .p-intro-fb {
      top: 10px;
      right: 10px;
      width: 125px;
      height: 40px; } }
  @media print, screen and (min-width: 900px) {
    .p-intro-fb {
      top: 15px;
      right: 15px;
      width: 190px;
      height: 60px; } }
  @media print, screen and (min-width: 900px) {
    .p-intro-fb a:hover {
      opacity: .8; } }

@media only screen and (max-width: 899px) {
  .p-intro-link {
    text-align: center;
    max-width: 320px;
    margin: auto;
    margin-top: 30px; } }
@media print, screen and (min-width: 900px) {
  .p-intro-link {
    text-align: center;
    margin-top: 40px; } }
@media print, screen and (min-width: 900px) {
  .p-intro-link a:hover {
    opacity: .8; } }

.p-detail-inr:not(:last-child) {
  border-bottom: 1px solid #ebebeb; }
  @media only screen and (max-width: 899px) {
    .p-detail-inr:not(:last-child) {
      padding-bottom: 40px;
      margin-bottom: 30px; } }
  @media print, screen and (min-width: 900px) {
    .p-detail-inr:not(:last-child) {
      padding-bottom: 60px;
      margin-bottom: 50px; } }

@media print, screen and (min-width: 900px) {
  .p-detail-col2 {
    display: flex;
    justify-content: space-between; } }
@media print, screen and (min-width: 900px) {
  .p-detail-col2 .p-detail-txt {
    width: 50%; } }
@media only screen and (max-width: 899px) {
  .p-detail-col2 .p-detail-img {
    margin-top: 20px; } }
@media print, screen and (min-width: 900px) {
  .p-detail-col2 .p-detail-img {
    width: 45%;
    text-align: center; } }

.p-faq {
  background: #f7f5f0;
  position: relative; }
  @media only screen and (max-width: 899px) {
    .p-faq {
      border-top: 6px solid #5a5757; } }
  @media print, screen and (min-width: 900px) {
    .p-faq {
      border-top: 8px solid #5a5757; } }
  .p-faq:before {
    content: "";
    display: block;
    width: 25%;
    height: 0;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%); }
    @media only screen and (max-width: 899px) {
      .p-faq:before {
        border-top: 6px solid #ff7e00; } }
    @media print, screen and (min-width: 900px) {
      .p-faq:before {
        border-top: 8px solid #ff7e00; } }

.p-faq-body {
  background: #fff;
  border-radius: 10px;
  position: relative; }
  @media only screen and (max-width: 899px) {
    .p-faq-body {
      padding: 25px 15px; } }
  @media print, screen and (min-width: 900px) {
    .p-faq-body {
      padding: 45px; } }
  .p-faq-body:after {
    content: "";
    position: absolute; }
    @media only screen and (max-width: 899px) {
      .p-faq-body:after {
        width: 30px;
        height: 30px;
        border: 15px solid transparent;
        border-top: 15px solid #fff;
        border-left: 15px solid #fff;
        bottom: -25px;
        right: 30px; } }
    @media print, screen and (min-width: 900px) {
      .p-faq-body:after {
        width: 40px;
        height: 40px;
        border: 20px solid transparent;
        border-top: 20px solid #fff;
        border-left: 20px solid #fff;
        bottom: -35px;
        right: 100px; } }
  .p-faq-body dt {
    margin-bottom: 1.2em;
    position: relative;
    line-height: 1.6; }
    @media only screen and (max-width: 899px) {
      .p-faq-body dt {
        padding-left: 37px;
        font-size: 18px;
        font-size: 1.8rem; } }
    @media print, screen and (min-width: 900px) {
      .p-faq-body dt {
        padding-left: 52px;
        font-size: 26px;
        font-size: 2.6rem; } }
    .p-faq-body dt:before {
      content: "";
      display: block;
      background: url(/Fc_soc/_assets/major/img/_common/txt-faq-q.svg) 50% 50%/contain no-repeat;
      position: absolute;
      top: .9em;
      left: 0;
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%); }
      @media only screen and (max-width: 899px) {
        .p-faq-body dt:before {
          width: 22px;
          height: 26px; } }
      @media print, screen and (min-width: 900px) {
        .p-faq-body dt:before {
          width: 32px;
          height: 40px; } }
  .p-faq-body dd {
    position: relative; }
    @media only screen and (max-width: 899px) {
      .p-faq-body dd {
        padding-left: 37px; } }
    @media print, screen and (min-width: 900px) {
      .p-faq-body dd {
        padding-left: 52px; } }
    .p-faq-body dd:before {
      content: "";
      display: block;
      background: url(/Fc_soc/_assets/major/img/_common/txt-faq-a.svg) 50% 50%/contain no-repeat;
      position: absolute;
      top: 1em;
      left: 0;
      -webkit-transform: translate(0, -50%);
      transform: translate(0, -50%); }
      @media only screen and (max-width: 899px) {
        .p-faq-body dd:before {
          width: 22px;
          height: 26px; } }
      @media print, screen and (min-width: 900px) {
        .p-faq-body dd:before {
          width: 32px;
          height: 40px; } }

/*# sourceMappingURL=index.css.map */
