@charset "UTF-8";
.p-link.is-top {
  padding: 150px 0 47px;
}

.p-link__btn {
  position: relative;
  width: 600px;
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid #666;
}

.p-link__btn::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: -100%;
  width: 200%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 255, 255, 0)), color-stop(50%, rgba(255, 255, 255, .2)));
  background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, .2) 50%);
}

.p-link__item {
  display: block;
  position: relative;
  z-index: 2;
  width: 100%;
}

.p-faq {
  position: relative;
  padding-top: 64px;
}

.p-faq__logo {
  display: block;
  position: relative;
  width: 668px;
  margin: 0 auto;
  margin-bottom: 72px;
}

.p-faq__description {
  display: block;
  width: 880px;
  margin: 0 auto;
  margin-top: 26px;
  margin-bottom: 42px;
  font-size: 18px;
  line-height: 1.9;
}

.is-1 .p-faq__description a {
  color: #2ea295;
}

.is-2 .p-faq__description a {
  color: #af8b4e;
}

.is-3 .p-faq__description a {
  color: #a39b13;
}

.is-41 .p-faq__description a {
  color: #b0481c;
}

.p-faq__content {
  width: 940px;
  margin: 0 auto;
  margin-bottom: 64px;
}

.p-faq__list {
  margin-bottom: 10px;
  background: #212121;
}

.p-faq__list:last-child {
  margin-bottom: 0;
}

.p-faq__inner {
  width: 100%;
}

.p-faq__title {
  position: relative;
  padding: 19px 50px;
  padding-left: 95px;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  font-weight: 600;
  font-size: 21px;
  line-height: 1.7;
  letter-spacing: 1px;
  cursor: pointer;
}

.is-1 .p-faq__title {
  color: #2ea295;
}

.is-2 .p-faq__title {
  color: #af8b4e;
}

.is-3 .p-faq__title {
  color: #a39b13;
}

.is-4 .p-faq__title {
  color: #b0481c;
}

.p-faq__title::before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 30px;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 14px;
  height: 2px;
  background: #b5b5b5;
}

.p-faq__title::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 36px;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  width: 2px;
  height: 14px;
  background: #b5b5b5;
  -webkit-transition: all .35s ease-out;
  transition: all .35s ease-out;
}

.is-empty .p-faq__title {
  cursor: default;
}

.is-empty .p-faq__title::before, .is-empty .p-faq__title::after {
  content: none;
}

.p-faq__num {
  position: absolute;
  left: 30px;
  font-size: 21px;
  line-height: 1.8;
  letter-spacing: 2px;
}

.p-qa {
  display: none;
  position: relative;
  padding: 15px 30px 8px;
}

.p-qa::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 3%;
  width: 94%;
  height: 1px;
  background: #555;
  -webkit-transition: width .35s ease-out;
  transition: width .35s ease-out;
}

.p-qa__line {
  position: relative;
  width: 100%;

  border-bottom: 1px solid #555;
}

.p-qa__line:last-child {
  border-bottom: none;
}

.p-qa__question-block {
  position: relative;
}

.p-qa__question-block:last-of-type::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: url(../img/common/line_dot.png) repeat-x left;
  background-size: contain;
}

.p-qa__answer-block {
  position: relative;
}

.p-qa__contributor {
  position: absolute;
  top: 0;
  left: 0;
  color: #999;
  font-size: 15px;
  letter-spacing: 0px;
}

.p-qa__contributor::before {
  content: "質問者：";
}

.p-qa__question {
  position: relative;
  padding: 24px 0 18px;
  padding-left: 38px;
  font-size: 16px;
  line-height: 1.8;
  text-align: left;
}

.p-qa__question::before {
  content: "Q";
  position: absolute;
  top: 16px;
  left: 0;
  color: #6ec5ed;
  font-size: 22px;
  font-family: "Halant";
}

.p-qa__answer {
  position: relative;
  padding: 20px 0;
  padding-left: 38px;
  font-size: 16px;
  line-height: 1.8;
  text-align: left;
}

.p-qa__answer::before {
  content: "A";
  position: absolute;
  top: 14px;
  left: 0;
  color: #f69292;
  font-size: 22px;
  font-family: "Halant";
}

.p-qa__answer a {
  color: #fff;
}

.p-qa__answer img {
  margin: 18px 0 6px;
}

.p-qa__talk {
  position: relative;
  padding: 20px 0 20px;
  font-size: 16px;
  line-height: 1.8;
  text-align: left;
}

.p-qa__talk::before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: url(../img/common/line_dot.png) repeat-x left;
  background-size: contain;
}

.p-qa__talk:last-of-type::before {
  content: none;
}

.p-switch {
  margin: 0 auto;
  font-size: 0;
  letter-spacing: -.4em;
  text-align: center;
}

.p-switch__list {
  display: inline-block;
  position: relative;
  width: 220px;
  margin-right: 20px;
  margin-bottom: 20px;
}

.p-switch__list:last-child {
  margin-right: 0;
}

.p-switch__list::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 0;
  height: 100%;
}

.p-switch__list--4::before {
  background: #b0481c;
}

.is-4 .p-switch__list--4::before {
  width: 100%;
}

.p-switch__list--3::before {
  background: #a39b13;
}

.is-3 .p-switch__list--3::before {
  width: 100%;
}

.p-switch__list--2::before {
  background: #af8b4e;
}

.is-2 .p-switch__list--2::before {
  width: 100%;
}

.p-switch__list--1::before {
  background: #24524f;
}

.is-1 .p-switch__list--1::before {
  width: 100%;
}

.p-switch__item {
  position: relative;
}

.p-switch__img {
  display: block;
}

.p-switch__img--active {
  display: block;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}

.is-1 .p-switch__list--1 .p-switch__img--active {
  opacity: 1;
}

.is-2 .p-switch__list--2 .p-switch__img--active {
  opacity: 1;
}

.is-3 .p-switch__list--3 .p-switch__img--active {
  opacity: 1;
}

.is-4 .p-switch__list--4 .p-switch__img--active {
  opacity: 1;
}

.p-switch__link {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
}

.is-1 .p-switch__list--1 .p-switch__link {
  display: none;
}

.is-2 .p-switch__list--2 .p-switch__link {
  display: none;
}

.is-3 .p-switch__list--3 .p-switch__link {
  display: none;
}

.is-4 .p-switch__list--4 .p-switch__link {
  display: none;
}

.p-pagenation {
  display: block;
  margin: 0 auto;
  margin-bottom: 74px;
  text-align: center;
}

.p-pagenation__container {
  display: inline-block;
  position: relative;
}

.p-pagenation__line {
  font-size: 0;
  text-align: center;
}

.p-pagenation__list {
  display: inline-block;
  position: relative;
  margin-right: 12px;
  vertical-align: middle;
  letter-spacing: normal;
}

.p-pagenation__list:last-child {
  margin-right: 0;
}

.p-pagenation__list a {
  position: relative;
  color: #fff;
  text-decoration: none;
}

.p-pagenation__list p {
  cursor: default;
}

.is-4 .p-pagenation__list p {
  color: #b0481c;
}

.is-3 .p-pagenation__list p {
  color: #a39b13;
}

.is-2 .p-pagenation__list p {
  color: #af8b4e;
}

.is-1 .p-pagenation__list p {
  color: #2ea295;
}

.p-pagenation__item {
  display: block;
  padding: 3px 6px;
  font-size: 20px;
  line-height: 1;
}

.p-pagenation__item--dot {
  color: #666;
}

.p-pagenation__arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
  padding: 10px;
}

.p-pagenation__arrow--prev {
  left: -58px;
}

.p-pagenation__arrow--next {
  right: -58px;
}

.p-pagenation__icon {
  display: block;
  position: relative;
  width: 12px;
  height: 12px;
  border: 2px solid;
  border-color: transparent transparent #777 #777;
}

.p-pagenation__arrow--prev .p-pagenation__icon {
  -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
          transform: rotate(45deg);
}

.p-pagenation__arrow--next .p-pagenation__icon {
  -webkit-transform: rotate(-135deg);
      -ms-transform: rotate(-135deg);
          transform: rotate(-135deg);
}

.p-pagenation__link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

@media screen and (min-width: 751px) {
  .p-link__btn::before {
    -webkit-transition: -webkit-transform .4s ease-out;
    transition: -webkit-transform .4s ease-out;
    transition: transform .4s ease-out;
    transition: transform .4s ease-out, -webkit-transform .4s ease-out;
  }
  .p-link__btn:hover::before {
    -webkit-transform: translate(100%, 0);
        -ms-transform: translate(100%, 0);
            transform: translate(100%, 0);
    -webkit-transition: -webkit-transform .35s ease-out;
    transition: -webkit-transform .35s ease-out;
    transition: transform .35s ease-out;
    transition: transform .35s ease-out, -webkit-transform .35s ease-out;
  }
  .p-faq__logo {
    left: -52px;
  }
  .p-faq__description a:hover {
    text-decoration: none;
  }
  .p-faq__title::before {
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
  }
  .p-faq__title::after {
    -webkit-transition: -webkit-transform .2s ease-out;
    transition: -webkit-transform .2s ease-out;
    transition: transform .2s ease-out;
    transition: transform .2s ease-out, -webkit-transform .2s ease-out;
  }
  .p-faq__title:hover::before {
    -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
            transform: rotate(90deg);
    -webkit-transition: -webkit-transform .2s ease-out;
    transition: -webkit-transform .2s ease-out;
    transition: transform .2s ease-out;
    transition: transform .2s ease-out, -webkit-transform .2s ease-out;
  }
  .p-faq__title:hover::after {
    -webkit-transform: translate(0, -43%) rotate(90deg);
        -ms-transform: translate(0, -43%) rotate(90deg);
            transform: translate(0, -43%) rotate(90deg);
    -webkit-transition: -webkit-transform .2s ease-out;
    transition: -webkit-transform .2s ease-out;
    transition: transform .2s ease-out;
    transition: transform .2s ease-out, -webkit-transform .2s ease-out;
  }
  .is-open .p-faq__title::before {
    opacity: 0;
    -webkit-transform: translate(0%, 100%) rotateZ(90deg);
        -ms-transform: translate(0%, 100%) rotate(90deg);
            transform: translate(0%, 100%) rotateZ(90deg);
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
  }
  .is-open .p-faq__title::after {
    -webkit-transform: translate(0, -45%) rotateZ(90deg);
        -ms-transform: translate(0, -45%) rotate(90deg);
            transform: translate(0, -45%) rotateZ(90deg);
    -webkit-transition: -webkit-transform .2s ease-out;
    transition: -webkit-transform .2s ease-out;
    transition: transform .2s ease-out;
    transition: transform .2s ease-out, -webkit-transform .2s ease-out;
  }
  .p-qa__answer a:hover {
    text-decoration: none;
  }
  .p-switch {
    width: 940px;
  }
  .p-switch.is-five-items {
    width: 700px;
  }
  .p-switch__list:nth-child(4n) {
    margin-right: 0;
  }
  .p-switch__list::before {
    -webkit-transition: width .3s ease-out;
    transition: width .3s ease-out;
  }
  .p-switch__list:hover::before {
    width: 100%;
    -webkit-transition: width .25s ease-out;
    transition: width .25s ease-out;
  }
  .is-five-items .p-switch__list:nth-last-child(3) {
    margin-right: 0;
  }
  .is-five-items .p-switch__list:nth-child(4n) {
    margin-right: 20px;
  }
  .p-switch__img--active {
    -webkit-transition: opacity .3s ease-out .05s;
    transition: opacity .3s ease-out .05s;
  }
  .p-switch__list:hover .p-switch__img--active {
    opacity: 1;
    -webkit-transition: opacity .25s ease-out .05s;
    transition: opacity .25s ease-out .05s;
  }
  .p-pagenation__container {
    max-width: 80%;
  }
  .p-pagenation__list a::before {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0;
    height: 1px;
    background: #fff;
    -webkit-transition: width .28s ease-out;
    transition: width .28s ease-out;
  }
  .p-pagenation__list:hover a::before {
    width: 100%;
    -webkit-transition: width .25s ease-out;
    transition: width .25s ease-out;
  }
  .is-link .p-pagenation__icon {
    border-color: transparent transparent #fff #fff;
    -webkit-transition: border-color .25s ease-out;
    transition: border-color .25s ease-out;
  }
  .is-link:hover .p-pagenation__icon {
    border-color: transparent transparent #777 #777;
    -webkit-transition: border-color .25s ease-out;
    transition: border-color .25s ease-out;
  }
}

@media screen and (max-width: 750px) {
  .p-link.is-top {
    padding: 110px 0 35px;
  }
  .p-link__btn {
    width: 90%;
  }
  .p-faq {
    padding-top: 36px;
  }
  .p-faq__logo {
    width: 100%;
    margin-bottom: 45px;
  }
  .p-faq__description {
    width: 90%;
    margin-top: 20px;
    margin-bottom: 20px;
    font-size: 14px;
  }
  .p-faq__content {
    width: 90%;
    margin-bottom: 42px;
  }
  .p-faq__title {
    padding: 15px 40px;
    padding-left: 58px;
    font-size: 15px;
    line-height: 1.7;
  }
  .p-faq__title::before {
    right: 16px;
  }
  .p-faq__title::after {
    right: 22px;
  }
  .is-open .p-faq__title::after {
    opacity: 0;
    -webkit-transform: translate(0, -20%);
        -ms-transform: translate(0, -20%);
            transform: translate(0, -20%);
    -webkit-transition: all .2s ease-out;
    transition: all .2s ease-out;
  }
  .p-faq__num {
    left: 15px;
    margin-right: 15px;
    font-size: 16px;
    line-height: 1.5;
  }
  .p-qa {
    padding: 12px 16px 10px;
  }
  .p-qa::before {
    left: 5%;
    width: 90%;
  }
  .p-qa__contributor {
    font-size: 12px;
  }
  .p-qa__question-block:last-of-type:before {
    height: 2px;
  }
  .p-qa__question {
    padding: 22px 0 13px;
    padding-left: 20px;
    font-size: 13px;
    line-height: 1.8;
  }
  .p-qa__question::before {
    top: 18px;
    font-size: 18px;
  }
  .p-qa__answer {
    padding: 13px 0 7px;
    padding-left: 20px;
    font-size: 13px;
    line-height: 1.8;
  }
  .p-qa__answer::before {
    top: 9px;
    left: 0;
    font-size: 18px;
  }
  .p-qa__answer img {
    margin: 18px 0 6px;
  }
  .p-qa__talk {
    padding: 13px 0;
    font-size: 13px;
    line-height: 1.8;
  }
  .p-qa__talk::before {
    height: 2px;
  }
  .p-switch__list {
    width: 42.5%;
    margin-right: 2%;
    margin-bottom: 12px;
  }
  .p-switch__list:nth-child(even) {
    margin-right: 0;
  }
  .p-pagenation {
    margin-bottom: 46px;
  }
  .p-pagenation__container {
    min-width: 240px;
  }
  .p-pagenation__list {
    margin-right: 14px;
  }
  .p-pagenation__arrow--prev {
    left: -16%;
  }
  .p-pagenation__arrow--next {
    right: -16%;
  }
  .p-pagenation__item {
    font-size: 18px;
  }
  .p-pagenation__icon {
    width: 16px;
    height: 16px;
    border: 2px solid;
    border-color: transparent transparent #777 #777;
  }
  .is-link .p-pagenation__icon {
    border-color: transparent transparent #fff #fff;
    -webkit-transition: border-color .25s ease-out;
    transition: border-color .25s ease-out;
  }
}

@media all and (-ms-high-contrast: none) {
  .p-faq__title {
    padding-bottom: 10px;
  }
  .p-pagenation__item {
    padding-top: .6em;
  }
}
