@charset "UTF-8";
.dcc__section {
  position: relative;
  margin: 6rem 0; }
  .dcc__section__ttl {
    width: fit-content;
    text-align: left;
    font-size: 2.2rem;
    font-weight: normal;
    color: darkgrey;
    position: relative; }
    .dcc__section__ttl__sub {
      font-weight: normal;
      font-size: 1.6rem;
      position: relative;
      text-align: left; }
      .dcc__section__ttl__sub::after {
        content: "";
        left: 0;
        bottom: 0;
        width: 8rem;
        display: block;
        position: absolute;
        border-bottom: 2px dotted #c10014; }
    .dcc__section__ttl__en {
      position: absolute;
      top: 0;
      font-weight: bold;
      white-space: nowrap;
      color: #c10014;
      font-size: 0.7rem;
      letter-spacing: -1px;
      font-style: italic; }
    .dcc__section__ttl::before {
      content: "";
      display: block;
      position: absolute;
      left: 0px;
      bottom: 0;
      width: 2rem;
      border-bottom: 2px solid #c10014; }
    .dcc__section__ttl::after {
      content: "";
      left: 10px;
      bottom: 0;
      width: 8rem;
      display: block;
      position: absolute;
      border-bottom: 2px dotted #c10014; }
  .dcc__section__txt, .security-policy__txt--right {
    font-size: 0.8rem;
    text-align: left; }

@media only screen and (max-width: 960px) {
  .dcc__section {
    width: 85%;
    margin: 4rem auto; }
    .dcc__section__txt, .security-policy__txt--right {
      font-size: 1rem; } }
@media only screen and (max-width: 640px) {
  .dcc__section {
    margin: 4rem auto; }
    .dcc__section__ttl__en {
      position: relative; } }
.security-policy {
  max-width: 1200px;
  margin: 0 auto; }
  @media only screen and (max-width: 1400px) {
    .security-policy {
      max-width: 960px; } }
  .security-policy__txt--right {
    margin: 5rem 0 3rem;
    text-align: right;
    padding-right: 2rem; }
  .security-policy__isms {
    width: 8rem;
    padding-right: 2rem;
    object-fit: contain;
    font-family: 'object-fit: contain;';
    /*IE対策*/ }
  .security-policy__list {
    list-style: decimal;
    padding-left: 2rem; }
  .security-policy--border {
    border: 1px solid #ccc; }
  .security-policy__article {
    padding: 2rem;
    text-align: left; }
    .security-policy__article p {
      margin: 0; }
    .security-policy__article__h3 {
      margin-bottom: 0;
      margin-top: 2rem; }
      .security-policy__article__h3::before {
        content: "■ "; }
    .security-policy__article__h3:first-child {
      margin-top: 0; }