.privacypolicy {
  padding: 5.3333333333vw 0 16vw;
}
@media screen and (min-width: 768px) {
  .privacypolicy {
    padding: 4.1666666667vw 0 9.7222222222vw;
  }
}
@media screen and (min-width: 1440px) {
  .privacypolicy {
    padding: 60px 0 82px;
  }
}
.privacypolicy__text {
  color: #000;
  font-size: 1.6rem;
  margin: 0 0 9.6vw;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .privacypolicy__text {
    font-size: 1.5rem;
    margin: 0 0 3.6111111111vw;
  }
}
@media screen and (min-width: 1440px) {
  .privacypolicy__text {
    margin: 0 0 52px;
  }
}
.privacypolicy__title {
  position: relative;
  font-size: 1.5rem;
  color: #999999;
  padding-bottom: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .privacypolicy__title {
    font-size: 1.6rem;
    padding-bottom: 0.6944444444vw;
  }
}
@media screen and (min-width: 1440px) {
  .privacypolicy__title {
    padding-bottom: 10px;
  }
}
.privacypolicy__title span {
  font-size: 2rem;
  color: #585656;
}
@media screen and (min-width: 768px) {
  .privacypolicy__title span {
    font-size: 3rem;
  }
}
.privacypolicy__title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 58.1333333333vw;
  height: 0.8vw;
  background: linear-gradient(to right, #999 0%, #999 50%, #585656 50%, #585656 100%);
}
@media screen and (min-width: 768px) {
  .privacypolicy__title::before {
    width: 15.1388888889vw;
    height: 0.2083333333vw;
  }
}
@media screen and (min-width: 1440px) {
  .privacypolicy__title::before {
    width: 218px;
    height: 3px;
  }
}
.privacypolicy__title {
  margin-bottom: 8vw;
}
@media screen and (min-width: 768px) {
  .privacypolicy__title {
    margin-bottom: 4.1666666667vw;
  }
}
@media screen and (min-width: 1440px) {
  .privacypolicy__title {
    margin-bottom: 60px;
  }
}
.privacypolicy__lead {
  letter-spacing: 0.05em;
  color: #313131;
  font-size: 1.6rem;
  line-height: 2;
  margin: 0 0 10.6666666667vw;
}
@media screen and (min-width: 768px) {
  .privacypolicy__lead {
    font-size: 1.5rem;
    margin: 0 0 4.1666666667vw;
  }
}
@media screen and (min-width: 1440px) {
  .privacypolicy__lead {
    margin: 0 0 60px;
  }
}
.privacypolicy__lead br {
  display: none;
}
@media screen and (min-width: 768px) {
  .privacypolicy__lead br {
    display: inline;
  }
}
.privacypolicy__subtitle {
  letter-spacing: 0.05em;
  color: #313131;
  font-size: 1.8rem;
  margin: 0 0 3.2vw;
}
@media screen and (min-width: 768px) {
  .privacypolicy__subtitle {
    font-size: 1.6rem;
    margin: 0 0 1.6666666667vw;
  }
}
@media screen and (min-width: 1440px) {
  .privacypolicy__subtitle {
    margin: 0 0 24px;
  }
}

.purpose {
  padding: 0 0 16vw;
}
@media screen and (min-width: 768px) {
  .purpose {
    padding: 0 0 9.7222222222vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose {
    padding: 0 0 82px;
  }
}
.purpose__text {
  color: #000;
  font-size: 1.6rem;
  margin: 0 0 9.6vw;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .purpose__text {
    margin: 0 0 3.6111111111vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__text {
    margin: 0 0 52px;
  }
}
.purpose__title {
  position: relative;
  font-size: 1.5rem;
  color: #999999;
  padding-bottom: 2.6666666667vw;
}
@media screen and (min-width: 768px) {
  .purpose__title {
    font-size: 1.6rem;
    padding-bottom: 0.6944444444vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__title {
    padding-bottom: 10px;
  }
}
.purpose__title span {
  font-size: 2rem;
  color: #585656;
}
@media screen and (min-width: 768px) {
  .purpose__title span {
    font-size: 3rem;
  }
}
.purpose__title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 58.1333333333vw;
  height: 0.8vw;
  background: linear-gradient(to right, #999 0%, #999 50%, #585656 50%, #585656 100%);
}
@media screen and (min-width: 768px) {
  .purpose__title::before {
    width: 15.1388888889vw;
    height: 0.2083333333vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__title::before {
    width: 218px;
    height: 3px;
  }
}
.purpose__title {
  margin-bottom: 8vw;
}
@media screen and (min-width: 768px) {
  .purpose__title {
    margin-bottom: 4.1666666667vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__title {
    margin-bottom: 60px;
  }
}
.purpose__lead {
  letter-spacing: 0.05em;
  color: #313131;
  font-size: 1.6rem;
  line-height: 2;
  margin: 0 0 7.4666666667vw;
}
@media screen and (min-width: 768px) {
  .purpose__lead {
    font-size: 1.5rem;
    margin: 0 0 2.2222222222vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__lead {
    margin: 0 0 32px;
  }
}
.purpose__lead br {
  display: none;
}
@media screen and (min-width: 768px) {
  .purpose__lead br {
    display: inline;
  }
}
.purpose__subtitle {
  letter-spacing: 0.05em;
  color: #313131;
  font-size: 1.8rem;
  margin: 0 0 4vw;
}
@media screen and (min-width: 768px) {
  .purpose__subtitle {
    font-size: 1.6rem;
    margin: 0 0 1.6666666667vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__subtitle {
    margin: 0 0 24px;
  }
}
.purpose__head {
  font-size: 1.6rem;
  color: #313131;
  margin: 0 0 6.6666666667vw;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .purpose__head {
    font-size: 1.5rem;
    margin: 0 0 1.5277777778vw;
    text-indent: -3em;
    padding-left: 3em;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__head {
    margin: 0 0 22px;
  }
}
.purpose__head--br br {
  display: none;
}
@media screen and (min-width: 768px) {
  .purpose__head--br br {
    display: inline;
  }
}
.purpose__head:last-child {
  margin: 0 0 8vw;
}
@media screen and (min-width: 768px) {
  .purpose__head:last-child {
    font-size: 1.5rem;
    margin: 0 0 3.4722222222vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__head:last-child {
    margin: 0 0 50px;
  }
}
.purpose__business {
  letter-spacing: 0.05em;
  font-size: 1.6rem;
  color: #313131;
  margin: 0 0 4.2666666667vw;
}
@media screen and (min-width: 768px) {
  .purpose__business {
    font-size: 1.5rem;
    margin: 0 0 2.0833333333vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__business {
    margin: 0 0 30px;
  }
}
.purpose__group {
  margin: 0 0 0 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .purpose__group {
    margin: 0 0 0 3.75vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__group {
    margin: 0 0 0 54px;
  }
}
.purpose__contact {
  background-color: #F8F8F8;
  padding: 6.4vw 5.8666666667vw;
}
@media screen and (min-width: 768px) {
  .purpose__contact {
    padding: 2.2222222222vw 1.6666666667vw 2.6388888889vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__contact {
    padding: 32px 24px 38px;
  }
}
.purpose__window {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  color: #313131;
  font-weight: 700;
  margin: 0 0 6.4vw;
}
@media screen and (min-width: 768px) {
  .purpose__window {
    font-size: 1.5rem;
    margin: 0 0 1.6666666667vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__window {
    margin: 0 0 24px;
  }
}
.purpose__address {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  color: #313131;
  margin: 0 0 5.3333333333vw;
}
@media screen and (min-width: 768px) {
  .purpose__address {
    font-size: 1.5rem;
    margin: 0 0 1.7361111111vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__address {
    margin: 0 0 25px;
  }
}
.purpose__tel {
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  color: #313131;
}
@media screen and (min-width: 768px) {
  .purpose__tel {
    font-size: 1.5rem;
  }
}
.purpose__tel br:first-of-type {
  display: inline;
}
@media screen and (min-width: 768px) {
  .purpose__tel br:first-of-type {
    display: none;
  }
}
.purpose__note {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  color: #313131;
  margin: 0 0 13.3333333333vw 4vw;
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .purpose__note {
    margin: 0 0 3.4722222222vw 1.0416666667vw;
  }
}
@media screen and (min-width: 1440px) {
  .purpose__note {
    margin: 0 0 50px 15px;
  }
}
.purpose__note a {
  color: #0277C0;
  text-decoration: underline;
  word-break: break-all;
  display: block;
}
@media screen and (min-width: 768px) {
  .purpose__note a {
    display: inline;
  }
}
.purpose__br {
  display: inline;
}
@media screen and (min-width: 768px) {
  .purpose__br {
    display: none;
  }
}