@media screen and (min-width: 1081px), print {
  .book {
    font-size: 1.6rem;
    letter-spacing: 1.2px;
    line-height: 30px;
    margin: 70px 0 140px;
    overflow: hidden;
  }
  .book .row {
    max-width: 940px;
  }
  .book .ttl_art {
    font-size: 2.4rem;
  }
  .book .book_img {
    display: block;
    line-height: 0;
    margin-bottom: 23px;
  }
  .book .book_img img {
    max-width: 100%;
  }
  .book .note {
    font-size: 1.4rem;
    letter-spacing: 1px;
    text-indent: -14px;
    padding-left: 14px;
  }
  .book .g_table.style02 {
    margin-top: 24px;
  }
  .book .g_table.style02 dl dt {
    width: 206px;
  }
  .book .g_table.style02 dl dd {
    width: -webkit-calc(100% - 206px);
    width: -moz-calc(100% - 206px);
    width: calc(100% - 206px);
  }
  .book .g_table.style02 dl dd .g_box {
    padding: 12px 0 16px 12px;
  }
  .book .g_table.style02 dl dd .g_box p.g_ct {
    line-height: 30px;
  }
  .book .g_table.style02 dl dd .g_box p.mt {
    margin-top: 8px;
    margin-bottom: -4px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1080px) {
  .book {
    font-size: 1.48148vw;
    letter-spacing: 0.11111vw;
    line-height: 2.77778vw;
    margin: 6.48148vw 0 12.96296vw;
    overflow: hidden;
  }
  .book .book_img {
    display: block;
    line-height: 0;
    margin-bottom: 2.12963vw;
    text-align: center;
  }
  .book .book_img img {
    max-width: 100%;
  }
  .book .note {
    font-size: 1.2963vw;
    letter-spacing: 0.09259vw;
    text-indent: -1.2963vw;
    padding-left: 1.2963vw;
  }
  .book .g_table.style02 {
    margin-top: 2.22222vw;
  }
  .book .g_table.style02 dl dt {
    width: 19.07407vw;
  }
  .book .g_table.style02 dl dd {
    width: -webkit-calc(100% - 19.07407vw);
    width: -moz-calc(100% - 19.07407vw);
    width: calc(100% - 19.07407vw);
  }
  .book .g_table.style02 dl dd .g_box {
    padding: 1.11111vw 0 1.48148vw 1.11111vw;
  }
  .book .g_table.style02 dl dd .g_box p.g_ct {
    line-height: 2.77778vw;
  }
  .book .g_table.style02 dl dd .g_box p.mt {
    margin-top: 0.74074vw;
    margin-bottom: -0.37037vw;
  }
}

@media screen and (max-width: 767px) {
  .book {
    font-size: 3.38542vw;
    letter-spacing: 0.26042vw;
    margin: 9.11458vw 0 18.22917vw;
    overflow: hidden;
  }
  .book .book_img {
    display: block;
    line-height: 0;
    margin-bottom: 2.99479vw;
  }
  .book .book_img img {
    max-width: 100%;
  }
  .book .note {
    font-size: 3.125vw;
    letter-spacing: 0.13021vw;
    text-indent: -3.125vw;
    padding-left: 3.125vw;
  }
  .book .g_table.style02 {
    margin-top: 4.6875vw;
  }
  .book .g_table.style02 dl {
    display: block;
  }
  .book .g_table.style02 dl:nth-of-type(1) dd {
    border-top: 0;
  }
  .book .g_table.style02 dl dt {
    width: auto;
    border: 1px solid #bebebe;
  }
  .book .g_table.style02 dl dd {
    width: auto;
    border-left: 1px solid #bebebe;
  }
  .book .g_table.style02 dl dd .g_box p.mt {
    margin-top: 2.08333vw;
  }
}
