@charset "UTF-8";

@page {
  size: A4;
  /* margin-bottom: -57.73mm; */
}

@media print {

  /* 全体設定 */
  body {
    -webkit-print-color-adjust: exact;
    /* 印刷時でも背景色や背景画像を表示 */
    width: 1280px;
    margin: 0 auto;
    /* 印刷時の全ページ幅を統一（px数値はお好みで） */
    zoom: 0.8;
    /* なるべく多くのブラウザで切れないようにするため */
  }

  header,
  footer,
  .sidebar {
    display: none !important;
    position: relative !important;
  }

  .inview,
  .fadeIn,
  .fadeInup {
    opacity: 1;
  }

  :where(.top) .mainvisual .mv-img {
    height: 100%;
    bottom: -8rem;
  }

  :where(.top) .about {
    padding-bottom: 1.5em;
  }

  :where(.top) .about .inner {
    display: grid;
    -webkit-column-gap: 2.5em;
    -moz-column-gap: 2.5em;
    column-gap: 2.5em;
    row-gap: 3.5em;
    grid-template-columns: repeat(2, calc(50% - 1.25em));
  }

  :where(.top) .about .sec-ttl {
    margin-bottom: 0;
    grid-column: 1 / 2;
    grid-row: 1 / 2;
  }

  :where(.top) .about .lead {
    grid-column: 2 / 3;
    grid-row: 1 / 2;
  }

  :where(.top) .about .btns {
    margin-top: 0;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    grid-column: 1 / 3;
    grid-row: 2 / 3;
  }

  .sub .content .selfpublishing {
    display: none;
  }

  .content .selfpublishing {
    padding-bottom: clamp(4rem, 2.184rem + 5.674vw, 8rem);
  }

  .content .selfpublishing .inner {
    display: grid;
    -webkit-column-gap: 2.5em;
    -moz-column-gap: 2.5em;
    column-gap: 2.5em;
    row-gap: 3.5em;
    grid-template-columns: repeat(2, calc(50% - 1.25em));
  }

  .content .selfpublishing .sec-ttl {
    margin-bottom: 0;
    grid-column: 2 / 3;
    grid-row: 1 / 2;
  }

  .content .selfpublishing .lead {
    grid-column: 2 / 3;
    grid-row: 2 / 3;
  }

  .content .selfpublishing .btns {
    margin-top: 0;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    grid-column: 2 / 3;
    grid-row: 3 / 4;
  }

  .content .selfpublishing .img {
    width: 50%;
    height: 100%;
    max-height: inherit;
    margin: 0;
    position: absolute;
    bottom: 0;
    left: -3.2rem;
  }

  .top .content .selfpublishing .img {
    max-height: 52rem;
    border-radius: 1rem;
    bottom: -12rem;
    left: -4rem;
  }

  :where(.top) .achivement {
    padding-top: clamp(12rem, 0rem + 15.625vw, 20rem);
  }

  .media-list {
    gap: 4rem;
  }

  .media-list-item {
    width: calc((100% - 8rem) / 3);
  }

  .sub .content .eco {
    display: none;
  }

  .content .eco .inner {
    display: grid;
    -webkit-column-gap: 2.5em;
    -moz-column-gap: 2.5em;
    column-gap: 2.5em;
    row-gap: 3.5em;
    grid-template-columns: repeat(2, calc(50% - 1.25em));
  }

  .content .eco .sec-ttl {
    margin-bottom: 0;
    grid-column: 1 / 2;
    grid-row: 1 / 2;
  }

  .content .eco .lead {
    grid-column: 1 / 2;
    grid-row: 2 / 3;
  }

  .content .eco .btns {
    margin-top: 0;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    grid-column: 1 / 2;
    grid-row: 3 / 4;
  }

  .content .eco .img {
    margin-top: 0;
    grid-column: 2 / 3;
    grid-row: 1 / 4;
  }

  :where(.top) .news .inner {
    display: grid;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: start;
    -webkit-column-gap: 2.5em;
    -moz-column-gap: 2.5em;
    column-gap: 2.5em;
    grid-template-columns: calc(35% - 2.5em) 65%;
  }

  :where(.top) .news .sec-ttl {
    grid-column: 1 / 2;
    grid-row: 1 / 2;
    margin-bottom: 2.4rem;
    text-align: left;
    margin-left: 0;
  }

  :where(.top) .news .post-list {
    grid-column: 2 / 3;
    grid-row: 1 / 4;
    margin-block: 0;
  }

  :where(.top) .news .btns {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    grid-column: 1 / 2;
    grid-row: 2 / 3;
  }

  .editor-area .faq-list-item .faq-ttl {
    border-radius: 1rem 1rem 0 0;
  }

  .editor-area .faq-list-item .faq-ttl::after {
    display: none;
  }

  .editor-area .faq-ttl+.js-acContent {
    height: auto !important;
    padding: 1em 1em 1em 3.5em;
    border: 1px solid #025bab;
    border-radius: 0 0 1rem 1rem;
    opacity: 1;
    visibility: visible;
  }

 }
