@media print {
  h2.ttl-relate,
  h2.ttl-relate.defo {
    text-align: center !important;
    padding-left: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    page-break-after: avoid !important;
    break-after: avoid !important;
  }

  h2.ttl-relate i {
    display: block !important;
    text-align: center !important;
    margin: 0 auto !important;
  }

  .l-head {
    margin-bottom: 1rem !important;
  }

  .l-head-ttl {
    font-size: 2.6rem;
    padding: 0.2em 0 0.2em 0.5em;
  }

  .u-inner,
  .l-body {
    page-break-before: avoid !important;
    break-before: avoid !important;
  }

  .l-body h2:not(.defo) {
    page-break-after: avoid !important;
    break-after: avoid !important;
    font-size: 3.0rem;
    padding-left: 2.25em;
    margin-top: 3rem;
    margin-bottom: 1rem !important;
  }

  .l-body h2:not(.defo):before {
    width: 4rem;
    height: 4rem;
  }

  .post-cards {
    page-break-before: avoid !important;
    break-before: avoid !important;
  }

  .post-cards,
  .post-cards > ul {
    display: flex !important;
    flex-wrap: wrap !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box !important;
  }

  .post-cards > ul > li {
    display: flex !important;
    width: 47% !important;
    margin-right: 1% !important;
    box-sizing: border-box !important;
    page-break-inside: avoid !important;
    break-inside: avoid !important;
  }

  .post-cards > ul > li:nth-child(even) {
    margin-right: 0 !important;
  }

  .post-cards > ul > li > a,
  .post-cards .c-card__link {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    height: 100% !important;
    padding: 1.5rem !important; 
  }

  table {
    width: 99%;
    border-collapse: collapse;
    table-layout: fixed;
  }

  th,
  td {
    word-break: break-all;
    overflow-wrap: break-word;
  }

.post-box {
    margin-top: 3rem;
}

  .post-box dl dt {
    font-size: 2rem;
  }

.tag {
    margin-top: 2rem;
}
.mt {
    margin-top: 6rem !important;
}
  .f-contact {
    padding: 2rem 0;
    margin-top: 2rem;
  }

  .f-logo {
    margin-bottom: 1rem;
  }

  header,
  .l-path,
  .c-nav,
  .c-nav-anchor,
  #gototop,
  .f-link,
  .f-nav .row,
  .h-nav,
  .h-nav_sp,
  .c-menu,
  a.c-btn,
  a.c-link,
  ul.c-link li > a {
    display: none;
  }
}