@media screen and (max-width: 767px) {
  .pc-br {
    display: none;
  }
}

.sp-br {
  display: none;
}
@media screen and (max-width: 767px) {
  .sp-br {
    display: block;
    line-height: 0;
  }
}

@media screen and (max-width: 767px) {
  .is-pc {
    display: none;
  }
}

.is-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .is-sp {
    display: block;
  }
}

.p-link-outer-list {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding-top: 40px;
}
@media screen and (max-width: 767px) {
  .p-link-outer-list {
    width: 80%;
    margin: 0 auto !important;
    display: block;
  }
}

.p-link-outer-item {
  width: 346px;
}
@media screen and (max-width: 767px) {
  .p-link-outer-item {
    width: 100%;
  }
}
.p-link-outer-item + .p-link-outer-item {
  margin-left: 40px;
}
@media screen and (max-width: 767px) {
  .p-link-outer-item + .p-link-outer-item {
    margin-left: 0;
    margin-top: 3vw;
  }
}
.p-link-outer-item a {
  width: 100%;
  display: inline-block;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-link-outer-item a {
    display: block;
    width: 100%;
    text-align: center;
  }
}
.p-link-outer-item a span {
  width: 100%;
  display: inline-block;
  border-radius: 4px;
  padding: 1.8rem 2.5em;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.1em;
  background: -webkit-gradient(linear, left top, right top, from(#d2aae8), color-stop(50%, #bc8bd4), to(#a268bd));
  background: linear-gradient(to right, #d2aae8 0%, #bc8bd4 50%, #a268bd 100%);
  -webkit-transition: opacity ease 0.4s;
  transition: opacity ease 0.4s;
}
@media screen and (max-width: 767px) {
  .p-link-outer-item a span {
    display: block;
    padding: 1em 2.5em;
    width: 100%;
    font-size: 3.6vw;
  }
}
.p-link-outer-item a:hover span {
  opacity: 0.7;
}
@media screen and (max-width: 767px) {
  .p-link-outer-item a:hover span {
    opacity: 1;
  }
}

#guide .slide-text {
  padding: 93px 0 0;
}
@media screen and (max-width: 767px) {
  #guide .slide-text {
    padding: 12vw 0 0;
  }
}

#guide .slide-text-ttl {
  padding-left: 104px;
}
@media screen and (max-width: 767px) {
  #guide .slide-text-ttl {
    padding-left: 0;
  }
}

#guide .panel-area {
  height: 350px;
}
@media screen and (max-width: 767px) {
  #guide .panel-area {
    height: 122vw;
  }
}

#guide .swiper-container {
  padding-bottom: 32px !important;
}
@media screen and (max-width: 767px) {
  #guide .swiper-container {
    padding-bottom: 6vw !important;
  }
}

.guide-add-link-wrap {
  padding: 10px 0;
  width: 75%;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .guide-add-link-wrap {
    width: 100%;
  }
}

.guide-add-link {
  font-size: 14px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .guide-add-link {
    width: 100%;
    margin: 0;
    font-size: 3.2vw;
  }
}
.guide-add-link + .guide-add-link {
  margin-top: 10px;
}
.guide-add-link a {
  display: block;
  width: 100%;
  height: 50px;
  background: #f7f7f7;
  border-radius: 5px;
  line-height: 50px;
  -webkit-transition: background ease-out 0.3s;
  transition: background ease-out 0.3s;
  position: relative;
}
@media screen and (max-width: 767px) {
  .guide-add-link a {
    height: 11vw;
    line-height: 11vw;
  }
}
.guide-add-link a:after {
  content: "";
  display: block;
  position: absolute;
  right: 25px;
  top: calc(50% - 13px);
  width: 26px;
  height: 26px;
  border-radius: 50%;
  border: 1px solid #ccc;
  background: url(/assets/img/guide/g_ic_arrow.svg) no-repeat center center;
  -webkit-transition: right ease-out 0.3s;
  transition: right ease-out 0.3s;
}
@media screen and (max-width: 767px) {
  .guide-add-link a:after {
    right: 6vw;
    top: calc(50% - 2.5vw);
    width: 5vw;
    height: 5vw;
  }
}
.guide-add-link a:hover {
  background: #e5e5e5;
}
.guide-add-link a:hover:after {
  right: 20px;
}
@media screen and (max-width: 767px) {
  .guide-add-link a:hover:after {
    right: 6vw;
  }
}

.slide-text-content .guide-add-link-wrap {
  width: 78%;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .slide-text-content .guide-add-link-wrap {
    width: 100%;
  }
}
.slide-text-content .guide-add-link a {
  padding-left: 20px;
}
@media screen and (max-width: 767px) {
  .slide-text-content .guide-add-link a {
    padding-left: 5vw;
  }
}

@media screen and (max-width: 767px) {
  #guide .guide02-flow-step {
    top: -5px;
    left: 3px;
  }
}
#guide .guide02-flow-step1 {
  top: 7px;
  right: 15px;
  left: initial;
}
#guide .guide02-flow-step2 {
  top: 115px;
  right: 12px;
  left: initial;
}
#guide .guide02-flow-step3 {
  top: 10px;
  left: 25px;
  right: initial;
}