.page-header {
  padding-top: 68px;
  padding-bottom: 17px;
}
.page-header .page-title {
  font-weight: bold;
  letter-spacing: 0.18em;
  text-align: center;
  font-size: 2.8rem;
  padding-bottom: 35px;
  position: relative;
  margin-bottom: 35px;
}
.page-header .page-title::after {
  content: "";
  position: absolute;
  width: 60px;
  height: 2px;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  background: #252f38;
}
.page-header .page-title_ja {
  text-align: center;
  font-size: 2.2rem;
  font-weight: bold;
  letter-spacing: 0.05em;
  margin-bottom: 40px;
}
.page-header .intro {
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.9444444444;
  letter-spacing: 0.05em;
  text-align: center;
  margin-bottom: 70px;
}
.page-header p {
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.9444444444;
  margin-bottom: 1em;
}
.page-header p a {
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .page-header {
    padding: 26.6666666667vw 5.3333333333vw 0;
  }
  .page-header .page-title {
    font-size: 6.4vw;
    position: relative;
    padding-bottom: 8vw;
    margin-bottom: 8vw;
  }
  .page-header .page-title::after {
    width: 16vw;
  }
  .page-header .page-title_ja {
    font-size: 4.8vw;
    letter-spacing: 0.05em;
    margin-bottom: 10.6666666667vw;
  }
  .page-header .intro {
    font-size: 4.2666666667vw;
    line-height: 2;
    margin-bottom: 8vw;
  }
}

.privacy {
  background-color: #F9F9F9;
  letter-spacing: 0.05em;
  padding-top: 48px;
  padding-bottom: 109px;
}
@media screen and (max-width: 768px) {
  .privacy {
    padding-top: 8.2666666667vw;
    padding-bottom: 4.8vw;
  }
}

.privacy-container {
  margin-left: auto;
  margin-right: auto;
  max-width: 1200px;
}
@media screen and (max-width: 768px) {
  .privacy-container {
    padding-left: 5.3333333333vw;
    padding-right: 5.3333333333vw;
  }
}

.privacy-body {
  background-color: #FFFFFF;
  padding: 66px 60px 60px;
  margin-top: 32px;
}
.privacy-body > section + section {
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .privacy-body {
    padding: 5.3333333333vw 10.6666666667vw;
    margin-top: 4.8vw;
  }
  .privacy-body > section + section {
    margin-top: 10.6666666667vw;
  }
}

.privacy-intro {
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.privacy-intro + * {
  margin-top: 32px;
}
@media screen and (max-width: 768px) {
  .privacy-intro + * {
    margin-top: 8vw;
  }
}

.privacy-date {
  text-align: right;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 2.1428571429;
}
@media screen and (max-width: 768px) {
  .privacy-date {
    font-size: 3.7333333333vw;
  }
}

.privacy-text {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.875;
}
.privacy-text.privacy-text_bold {
  font-weight: 700;
}
.privacy-text + * {
  margin-top: 20px;
}
.privacy-text a {
  text-decoration: underline;
}
.privacy-text-right {
  margin-top: 35px;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.875;
  width: 100%;
  text-align: right;
}
@media screen and (max-width: 768px) {
  .privacy-text {
    font-size: 4.2666666667vw;
  }
  .privacy-text + * {
    margin-top: 5.3333333333vw;
  }
}

.privacy-list {
  margin-top: 35px;
}
.privacy-list > li {
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.875;
}
.privacy-list > li .privacy-text:last-child {
  margin-bottom: 20px;
}
.privacy-list.number {
  counter-reset: listnum;
}
.privacy-list.number > li {
  counter-increment: listnum 1;
  position: relative;
  padding-left: 28px;
}
.privacy-list.number > li::before {
  content: counter(listnum) ".";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 1.6rem;
  font-weight: 500;
  color: #252F38;
}
.privacy-list.number > li > .number,
.privacy-list.number > li > .number > .number {
  margin-top: 20px;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .privacy-list > li {
    font-size: 4.2666666667vw;
  }
  .privacy-list > li .privacy-text:last-child {
    margin-bottom: 5.3333333333vw;
  }
  .privacy-list.number > li::before {
    font-size: 4.2666666667vw;
  }
}

.privacy-pmark {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 768px) {
  .privacy-pmark {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
.privacy-pmark-logo {
  margin-left: 15px;
  margin-right: 20px;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 82px;
}
@media screen and (max-width: 768px) {
  .privacy-pmark-logo {
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 15px;
  }
}
.privacy-pmark-logo img {
  width: 100%;
}
.privacy-pmark-logo a {
  display: block;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}
@media screen and (min-width: 769px) {
  .privacy-pmark-logo a:hover {
    opacity: 0.7;
  }
}
.privacy-pmark .privacy-text {
  letter-spacing: 0.05em;
}

.privacy-title {
  border-bottom: 1px solid #A8A8A8;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 1.6;
  padding-bottom: 17px;
}
.privacy-title + * {
  margin-top: 27px;
}
@media screen and (max-width: 768px) {
  .privacy-title {
    font-size: 4.2666666667vw;
    padding-bottom: 4.5333333333vw;
  }
  .privacy-title + * {
    margin-top: 7.2vw;
  }
}