@charset "utf-8";
#main {
  padding: 11.2vw 16.84vw 6.81vw 9.67vw;
}
@media (max-width: 600px) {
  #main {
    padding: 12.81vw 7.25vw 29.71vw 7.25vw;
  }
}
h1 {
  font-size: 1.85vw;
  font-weight: normal;
  line-height: 1em;
  letter-spacing: 0.15em;
  margin-bottom: 6.08vw;
}
h1 span {
  display: block;
  font-size: 0.59vw;
  line-height: 1em;
  letter-spacing: 0;
  margin-top: 1.1vw;
}
@media (max-width: 600px) {
  h1 {
    font-size: 3.39vw;
    margin-bottom: 12.08vw;
  }
  h1 span {
    display: inline-block;
    font-size: 2.66vw;
    margin-top: 0;
    margin-left: 8.94vw;
  }
}
.anchor_links {
  padding-left: 15.52vw;
  margin-bottom: 7.69vw;
}
.anchor_links ul {
  display: flex;
  column-gap: 0.74vw;
  height: 2.49vw;
  justify-content: space-between;
}
.anchor_links ul li {
  width: 10.95vw;
  height: 100%;
}
.anchor_links ul li a {
  display: inline-flex;
  width: 100%;
  height: 100%;
  text-align: center;
  font-size: calc(1.217vw * 0.77);
  line-height: 1em;
  justify-content: center;
  align-items: center;
  border: 0.06vw solid #000;
  transition: all 0.3s linear;
}
.anchor_links ul li a:hover {
  background: #000;
  color: #fff;
  text-decoration: none;
}
@media (max-width: 600px) {
  .anchor_links {
    padding-left: 0;
    margin-bottom: 24.16vw;
  }
  .anchor_links ul {
    column-gap: unset;
    height: auto;
    justify-content: space-between;
    flex-wrap: wrap;
    row-gap: 2.42vw;
  }
  .anchor_links ul li {
    width: 40.34vw;
    height: 7.25vw;
  }
  .anchor_links ul li a {
    display: inline-flex;
    width: 100%;
    height: 100%;
    font-size: 3.26vw;
    border: 0.02vw solid #000;
  }
}
.posts_wrap {
  width: 100%;
  display: flex;
  margin-bottom: 4vw;
}
.posts_wrap h2 {
  font-size: calc(1.217vw * 0.77);
  font-weight: normal;
  width: 16vw;
  line-height: 1.62em;
  padding-top: calc(0.88vw + 0.07vw);
}
.posts_wrap .qa_lists {
  width: calc(100% - 16vw);
}
.posts_wrap .qa_lists li section .question {
  font-size: calc(1.217vw * 0.77);
  font-weight: normal;
  line-height: 1.62em;
  position: relative;
  padding: 0 0 0 1.91vw;
}
.posts_wrap .qa_lists li section .question span {
  display: block;
  padding: 0.88vw 0 1.1vw 0.22vw;
  cursor: pointer;
  position: relative;
  border-top: 0.07vw solid #bebfba;
}
.posts_wrap .qa_lists li section .question span:after {
  position: absolute;
  right: 0.59vw;
  content: "+";
  color: #777a90;
  top: 0.88vw;
}
.posts_wrap .qa_lists li section .question span.sp {
  display: none;
}
.posts_wrap .qa_lists li section .question:before {
  position: absolute;
  left: 0;
  top: 0.88vw;
  content: "Q";
}
.posts_wrap .qa_lists li section .question.active span:after {
  content: "−";
}
.posts_wrap .qa_lists li section .answer {
  font-size: calc(1.217vw * 0.77);
  line-height: 1.62em;
  position: relative;
  padding: 0 0 0 1.91vw;
  overflow: hidden;
  transition: all 0.3s ease-out;
  display: grid;
  grid-template-rows: 0fr;
}
.posts_wrap .qa_lists li section .answer.active {
  grid-template-rows: 1fr;
}
.posts_wrap .qa_lists li section .answer.active span {
  padding: 0.88vw 0.22vw 1.1vw 0.22vw;
}
.posts_wrap .qa_lists li section .answer.active:before {
  top: 0.88vw;
}
.posts_wrap .qa_lists li section .answer span {
  display: block;
  background: #f2f2f2;
  padding: 0 0.22vw 0 0.22vw;
  overflow: hidden;
  transition: all 0.3s ease-out;
}
.posts_wrap .qa_lists li section .answer span.sp {
  display: none;
}
.posts_wrap .qa_lists li section .answer span > p {
  margin-bottom: 1.62em;
}
.posts_wrap .qa_lists li section .answer span > p:last-child {
  margin-bottom: 0;
}
.posts_wrap .qa_lists li section .answer span > p:has(+ ul) {
  margin-bottom: 0;
}
.posts_wrap .qa_lists li section .answer span ul {
  padding-left: 1em;
  margin-bottom: 1.62em;
}
.posts_wrap .qa_lists li section .answer span ul li {
  margin-bottom: 1.62em;
}
.posts_wrap .qa_lists li section .answer span ul li:last-child {
  margin-bottom: 0;
}
.posts_wrap .qa_lists li section .answer span ul:last-child {
  margin-bottom: 0;
}
.posts_wrap .qa_lists li section .answer a {
  color: #317199;
  text-decoration: underline;
}
.posts_wrap .qa_lists li section .answer:before {
  position: absolute;
  left: 0;
  top: 0;
  content: "A";
  transition: all 0.3s ease-out;
}
.posts_wrap .qa_lists li:last-child section {
  position: relative;
}
.posts_wrap .qa_lists li:last-child section:after {
  content: "";
  display: block;
  width: calc(100% - 1.91vw);
  height: 0.07vw;
  background: #bebfba;
  position: absolute;
  right: 0;
  bottom: 0;
}
@media (max-width: 600px) {
  .posts_wrap {
    margin-bottom: 22.23vw;
    flex-direction: column;
    row-gap: 8.22vw;
    padding: 0;
  }
  .posts_wrap h2 {
    font-size: 3.26vw;
    width: 40.34vw;
    height: 7.25vw;
    line-height: 1.4815em;
    padding-top: 0;
    background: #000;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .posts_wrap .qa_lists {
    width: 100%;
  }
  .posts_wrap .qa_lists li section .question {
    font-size: 3.26vw;
    line-height: 1.4815em;
    padding: 0 0 0 5.68vw;
  }
  .posts_wrap .qa_lists li section .question span {
    padding: 2.66vw 3.18vw 2.3vw 2.18vw;
    border-top: 0.2vw solid #bebfba;
  }
  .posts_wrap .qa_lists li section .question span:after {
    right: 0.59vw;
    top: 2.66vw;
  }
  .posts_wrap .qa_lists li section .question span.sp {
    display: block;
  }
  .posts_wrap .qa_lists li section .question span.pc {
    display: none;
  }
  .posts_wrap .qa_lists li section .question:before {
    top: 2.66vw;
  }
  .posts_wrap .qa_lists li section .answer {
    font-size: 3.26vw;
    line-height: 1.4815em;
    padding: 0 0 0 5.68vw;
  }
  .posts_wrap .qa_lists li section .answer.active span {
    padding: 3.14vw 2.18vw 6.53vw 2.18vw;
  }
  .posts_wrap .qa_lists li section .answer.active:before {
    top: 3.14vw;
  }
  .posts_wrap .qa_lists li section .answer span {
    padding: 0 2.18vw 0 2.18vw;
  }
  .posts_wrap .qa_lists li section .answer span.sp {
    display: block;
  }
  .posts_wrap .qa_lists li section .answer span.pc {
    display: none;
  }
  .posts_wrap .qa_lists li section .answer span > p {
    margin-bottom: 1.4815em;
  }
  .posts_wrap .qa_lists li section .answer span > p:has(+ ul) {
    margin-bottom: 0;
  }
  .posts_wrap .qa_lists li section .answer span ul {
    margin-bottom: 1.4815em;
  }
  .posts_wrap .qa_lists li section .answer span ul li {
    margin-bottom: 1.4815em;
  }
  .posts_wrap .qa_lists li section .answer span ul li:last-child {
    margin-bottom: 0;
  }
  .posts_wrap .qa_lists li section .answer span ul:last-child {
    margin-bottom: 0;
  }
  .posts_wrap .qa_lists li:last-child section:after {
    width: calc(100% - 5.68vw);
    height: 0.2vw;
  }
}
