@media screen and (min-width: 769px), print {
  .privacy {
    max-width: 1100px;
    counter-reset: dl;
    position: relative;
    right: 36px;
    padding: 80px 0 15px;
  }
  .privacy .ttls {
    position: relative;
    font-weight: 500;
    font-size: 2.4rem;
    line-height: 30px;
    letter-spacing: 4.5px;
    padding-left: 20px;
    margin-bottom: 38px;
  }
  .privacy .ttls::before {
    content: '';
    width: 4px;
    height: 36px;
    background: #cb2a24;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .privacy .des {
    font-size: 1.6rem;
    line-height: 32px;
    margin-bottom: 40px;
  }
  .privacy dl {
    counter-increment: dl;
    margin-bottom: 24px;
  }
  .privacy dl dt {
    position: relative;
    font-weight: 500;
    font-size: 2.1rem;
    line-height: 30px;
    letter-spacing: 3.7px;
    border: 1px solid #c3c3c3;
    padding: 9px 66px;
  }
  .privacy dl dt::before {
    content: counter(dl) ".";
    position: absolute;
    left: 31px;
    top: 9px;
  }
  .privacy dl dt::after {
    content: '';
    width: 4px;
    height: 28px;
    background: #cb2a24;
    position: absolute;
    left: 12px;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .privacy dl dd {
    font-size: 1.6rem;
    line-height: 36px;
    letter-spacing: .7px;
    padding: 20px 16px;
  }
  .privacy dl dd .txt {
    padding: 15px 20px;
  }
  .privacy dl dd .txt span {
    font-size: 1.8rem;
  }
}

@media screen and (max-width: 768px) {
  .privacy {
    padding-top: 7.55208vw;
    padding-bottom: 2.60417vw;
  }
  .privacy .ttls {
    position: relative;
    font-weight: 500;
    font-size: 4.55729vw;
    line-height: 1;
    letter-spacing: 0.39063vw;
    padding-left: 3.90625vw;
    margin-bottom: 4.55729vw;
  }
  .privacy .ttls::before {
    content: '';
    width: 0.65104vw;
    height: 100%;
    background: #cb2a24;
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
  }
  .privacy .des {
    font-size: 3.38542vw;
    line-height: 4.6875vw;
    margin-bottom: 6.51042vw;
  }
  .privacy dl {
    counter-increment: dl;
    margin-bottom: 3.25521vw;
  }
  .privacy dl dt {
    position: relative;
    font-weight: 500;
    font-size: 3.90625vw;
    line-height: 1.5;
    letter-spacing: 0.48177vw;
    border: 1px solid #c3c3c3;
    padding: 1.30208vw 9.11458vw;
  }
  .privacy dl dt::before {
    content: counter(dl) ".";
    position: absolute;
    left: 3.90625vw;
    top: 1.30208vw;
  }
  .privacy dl dt::after {
    content: '';
    width: 0.65104vw;
    background: #cb2a24;
    position: absolute;
    left: 1.30208vw;
    top: 1.30208vw;
    bottom: 1.30208vw;
    margin: auto;
  }
  .privacy dl dd {
    font-size: 3.38542vw;
    line-height: 1.5;
    letter-spacing: 0.09115vw;
    padding: 3.25521vw 2.60417vw;
  }
  .privacy dl dd .txt {
    padding: 2.60417vw 3.90625vw;
  }
  .privacy dl dd .txt span {
    font-size: 3.64583vw;
  }
}
