@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video, button {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  line-height: unset;
  vertical-align: baseline;
  background: none;
}

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
}

button:not(:hover):not(:active):not(.has-background) {
  background: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
  list-style-type: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after {
  content: "";
  content: none;
}

q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

a {
  text-decoration: none;
}

strong {
  font-weight: bold;
}

img {
  margin: 0;
  padding: 0;
  line-height: 0;
  vertical-align: top;
}

input, button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Change the default font family in all browsers (opinionated).
 * 2. Prevent adjustments of font size after orientation changes in IE and iOS.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}

/* HTML5 display definitions
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 * 2. Add the correct display in IE.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  /* 1 */
  display: block;
}

/**
 * Add the correct display in IE 9-.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
}

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Add the correct display in IE 10-.
 * 1. Add the correct display in IE.
 */
template,
[hidden] {
  display: none;
}

/* Links
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent;
  /* 1 */
  -webkit-text-decoration-skip: objects;
  /* 2 */
}

/**
 * Remove the outline on focused links when they are also active or hovered
 * in all browsers (opinionated).
 */
a:active,
a:hover {
  outline-width: 0;
}

/* Text-level semantics
   ========================================================================== */
/**
 * 1. Remove the bottom border in Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * Add the correct font style in Android 4.3-.
 */
dfn {
  font-style: italic;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10-.
 */
img {
  border-style: none;
}

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, sans-serif;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct margin in IE 8.
 */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/* Forms
   ========================================================================== */
/**
 * 1. Change font properties to `inherit` in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
select,
textarea {
  font: inherit;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Restore the font weight unset by the previous rule.
 */
optgroup {
  font-weight: bold;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Change the border, margin, and padding in all browsers (opinionated).
 */
/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Remove the default vertical scrollbar in IE.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10-.
 * 2. Remove the padding in IE 10-.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding and cancel buttons in Chrome and Safari on OS X.
 */
[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

.m_c {
  margin-left: auto;
  margin-right: auto;
}

.m_r {
  margin-left: auto;
}

.m_l {
  margin-right: auto;
}

.txt_r {
  text-align: right;
}

.txt_l {
  text-align: left;
}

.txt_c {
  text-align: center;
}

.flexbox, .pagination {
  display: flex;
}

.flex_wrap {
  flex-wrap: wrap;
}
.flex_wrap._nowrap {
  flex-wrap: nowrap;
}
.flex_wrap._wrap_reverse {
  flex-wrap: wrap_reverse;
}

.flex_ai {
  align-items: stretch;
}
.flex_ai._ai_start {
  align-items: flex-start;
}
.flex_ai._ai_end {
  align-items: flex-end;
}
.flex_ai._ai_center {
  align-items: center;
}
.flex_ai._ai_baseline {
  align-items: baseline;
}

.flex_jc, .pagination {
  justify-content: flex-start;
}
.flex_jc._jc_start, ._jc_start.pagination {
  justify-content: flex-start;
}
.flex_jc._jc_end, ._jc_end.pagination {
  justify-content: flex-end;
}
.flex_jc._jc_center, .pagination {
  justify-content: center;
}
.flex_jc._jc_between, ._jc_between.pagination {
  justify-content: space-between;
}
.flex_jc._jc_around, ._jc_around.pagination {
  justify-content: space-around;
}

.flex_dir {
  flex-direction: row;
}
.flex_dir._column {
  flex-direction: column;
}
.flex_dir._row_reverse {
  flex-direction: row-reverse;
}
.flex_dir._reverse {
  flex-direction: column-reverse;
}

.align_self._start {
  align-self: flex-start;
}
.align_self._end {
  align-self: flex-end;
}

.xs_on {
  display: none;
}

.sm_on {
  display: none;
}

.md_on {
  display: none;
}

.lg_on {
  display: none;
}

@media (min-width: 480px) {
  .xs_on {
    display: block;
  }

  .xs_off {
    display: none;
  }
}
@media (min-width: 768px) {
  .sm_on {
    display: block;
  }

  .sm_off {
    display: none;
  }
}
@media (min-width: 980px) {
  .md_on {
    display: block;
  }

  .md_off {
    display: none;
  }
}
@media (min-width: 1366px) {
  .lg_on {
    display: block;
  }

  .lg_off {
    display: none;
  }
}
.col_wrap {
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  margin-left: -1.999396rem;
}
.col_wrap .col_item {
  padding-left: 1.999396rem;
}
.col_wrap._lg {
  margin-left: -3.9975843648rem;
}
.col_wrap._lg > .col_item {
  padding-left: 3.9975843648rem;
}
.col_wrap._md {
  margin-left: -1.999396rem;
}
.col_wrap._md > .col_item {
  padding-left: 1.999396rem;
}
.col_wrap._sm {
  margin-left: -0.7072135785rem;
}
.col_wrap._sm > .col_item {
  padding-left: 0.7072135785rem;
}

.col_24 {
  width: 100%;
}

.col_23 {
  width: 95.8333333333%;
}

.col_22 {
  width: 91.6666666667%;
}

.col_21 {
  width: 87.5%;
}

.col_20 {
  width: 83.3333333333%;
}

.col_19 {
  width: 79.1666666667%;
}

.col_18 {
  width: 75%;
}

.col_17 {
  width: 70.8333333333%;
}

.col_16 {
  width: 66.6666666667%;
}

.col_15 {
  width: 62.5%;
}

.col_14 {
  width: 58.3333333333%;
}

.col_13 {
  width: 54.1666666667%;
}

.col_12 {
  width: 50%;
}

.col_11 {
  width: 45.8333333333%;
}

.col_10 {
  width: 41.6666666667%;
}

.col_9 {
  width: 37.5%;
}

.col_8 {
  width: 33.3333333333%;
}

.col_7 {
  width: 29.1666666667%;
}

.col_6 {
  width: 25%;
}

.col_5 {
  width: 20.8333333333%;
}

.col_4 {
  width: 16.6666666667%;
}

.col_3 {
  width: 12.5%;
}

.col_2 {
  width: 8.3333333333%;
}

.col_1 {
  width: 4.1666666667%;
}

.col_0 {
  width: 0;
}

.col_20p {
  width: 20%;
}

@media (min-width: 480px) {
  .xs_col_24 {
    width: 100%;
  }

  .xs_col_23 {
    width: 95.8333333333%;
  }

  .xs_col_22 {
    width: 91.6666666667%;
  }

  .xs_col_21 {
    width: 87.5%;
  }

  .xs_col_20 {
    width: 83.3333333333%;
  }

  .xs_col_19 {
    width: 79.1666666667%;
  }

  .xs_col_18 {
    width: 75%;
  }

  .xs_col_17 {
    width: 70.8333333333%;
  }

  .xs_col_16 {
    width: 66.6666666667%;
  }

  .xs_col_15 {
    width: 62.5%;
  }

  .xs_col_14 {
    width: 58.3333333333%;
  }

  .xs_col_13 {
    width: 54.1666666667%;
  }

  .xs_col_12 {
    width: 50%;
  }

  .xs_col_11 {
    width: 45.8333333333%;
  }

  .xs_col_10 {
    width: 41.6666666667%;
  }

  .xs_col_9 {
    width: 37.5%;
  }

  .xs_col_8 {
    width: 33.3333333333%;
  }

  .xs_col_7 {
    width: 29.1666666667%;
  }

  .xs_col_6 {
    width: 25%;
  }

  .xs_col_5 {
    width: 20.8333333333%;
  }

  .xs_col_4 {
    width: 16.6666666667%;
  }

  .xs_col_3 {
    width: 12.5%;
  }

  .xs_col_2 {
    width: 8.3333333333%;
  }

  .xs_col_1 {
    width: 4.1666666667%;
  }

  .xs_col_0 {
    width: 0;
  }

  .xs_col_20p {
    width: 20%;
  }
}
@media (min-width: 768px) {
  .sm_col_24 {
    width: 100%;
  }

  .sm_col_23 {
    width: 95.8333333333%;
  }

  .sm_col_22 {
    width: 91.6666666667%;
  }

  .sm_col_21 {
    width: 87.5%;
  }

  .sm_col_20 {
    width: 83.3333333333%;
  }

  .sm_col_19 {
    width: 79.1666666667%;
  }

  .sm_col_18 {
    width: 75%;
  }

  .sm_col_17 {
    width: 70.8333333333%;
  }

  .sm_col_16 {
    width: 66.6666666667%;
  }

  .sm_col_15 {
    width: 62.5%;
  }

  .sm_col_14 {
    width: 58.3333333333%;
  }

  .sm_col_13 {
    width: 54.1666666667%;
  }

  .sm_col_12 {
    width: 50%;
  }

  .sm_col_11 {
    width: 45.8333333333%;
  }

  .sm_col_10 {
    width: 41.6666666667%;
  }

  .sm_col_9 {
    width: 37.5%;
  }

  .sm_col_8 {
    width: 33.3333333333%;
  }

  .sm_col_7 {
    width: 29.1666666667%;
  }

  .sm_col_6 {
    width: 25%;
  }

  .sm_col_5 {
    width: 20.8333333333%;
  }

  .sm_col_4 {
    width: 16.6666666667%;
  }

  .sm_col_3 {
    width: 12.5%;
  }

  .sm_col_2 {
    width: 8.3333333333%;
  }

  .sm_col_1 {
    width: 4.1666666667%;
  }

  .sm_col_0 {
    width: 0;
  }

  .sm_col_20p {
    width: 20%;
  }
}
@media (min-width: 980px) {
  .md_col_24 {
    width: 100%;
  }

  .md_col_23 {
    width: 95.8333333333%;
  }

  .md_col_22 {
    width: 91.6666666667%;
  }

  .md_col_21 {
    width: 87.5%;
  }

  .md_col_20 {
    width: 83.3333333333%;
  }

  .md_col_19 {
    width: 79.1666666667%;
  }

  .md_col_18 {
    width: 75%;
  }

  .md_col_17 {
    width: 70.8333333333%;
  }

  .md_col_16 {
    width: 66.6666666667%;
  }

  .md_col_15 {
    width: 62.5%;
  }

  .md_col_14 {
    width: 58.3333333333%;
  }

  .md_col_13 {
    width: 54.1666666667%;
  }

  .md_col_12 {
    width: 50%;
  }

  .md_col_11 {
    width: 45.8333333333%;
  }

  .md_col_10 {
    width: 41.6666666667%;
  }

  .md_col_9 {
    width: 37.5%;
  }

  .md_col_8 {
    width: 33.3333333333%;
  }

  .md_col_7 {
    width: 29.1666666667%;
  }

  .md_col_6 {
    width: 25%;
  }

  .md_col_5 {
    width: 20.8333333333%;
  }

  .md_col_4 {
    width: 16.6666666667%;
  }

  .md_col_3 {
    width: 12.5%;
  }

  .md_col_2 {
    width: 8.3333333333%;
  }

  .md_col_1 {
    width: 4.1666666667%;
  }

  .md_col_0 {
    width: 0;
  }

  .md_col_20p {
    width: 20%;
  }
}
@media (min-width: 1366px) {
  .lg-col-24 {
    width: 100%;
  }

  .lg-col-23 {
    width: 95.8333333333%;
  }

  .lg-col-22 {
    width: 91.6666666667%;
  }

  .lg-col-21 {
    width: 87.5%;
  }

  .lg-col-20 {
    width: 83.3333333333%;
  }

  .lg-col-19 {
    width: 79.1666666667%;
  }

  .lg-col-18 {
    width: 75%;
  }

  .lg-col-17 {
    width: 70.8333333333%;
  }

  .lg-col-16 {
    width: 66.6666666667%;
  }

  .lg-col-15 {
    width: 62.5%;
  }

  .lg-col-14 {
    width: 58.3333333333%;
  }

  .lg-col-13 {
    width: 54.1666666667%;
  }

  .lg-col-12 {
    width: 50%;
  }

  .lg-col-11 {
    width: 45.8333333333%;
  }

  .lg-col-10 {
    width: 41.6666666667%;
  }

  .lg-col-9 {
    width: 37.5%;
  }

  .lg-col-8 {
    width: 33.3333333333%;
  }

  .lg-col-7 {
    width: 29.1666666667%;
  }

  .lg-col-6 {
    width: 25%;
  }

  .lg-col-5 {
    width: 20.8333333333%;
  }

  .lg-col-4 {
    width: 16.6666666667%;
  }

  .lg-col-3 {
    width: 12.5%;
  }

  .lg-col-2 {
    width: 8.3333333333%;
  }

  .lg-col-1 {
    width: 4.1666666667%;
  }

  .lg-col-0 {
    width: 0;
  }

  .lg-col-20p {
    width: 20%;
  }
}
.mt_00 {
  margin-top: 0;
}

.mr_00 {
  margin-right: 0;
}

.mb_00 {
  margin-bottom: 0;
}

.ml_00 {
  margin-left: 0;
}

.mt_-3 {
  margin-top: 0.3537136108rem;
}

.mt_-2 {
  margin-top: 0.5001510456rem;
}

.mt_-1 {
  margin-top: 0.7072135785rem;
}

.mt_0 {
  margin-top: 1rem;
}

.mt_1 {
  margin-top: 1.414rem;
}

.mt_2, .book_introduction hr, .sec_plain hr, .sec_plain h3 {
  margin-top: 1.999396rem;
}

.mt_3 {
  margin-top: 2.827145944rem;
}

.mt_4 {
  margin-top: 3.9975843648rem;
}

.mt_5 {
  margin-top: 5.6525842918rem;
}

.mt_6 {
  margin-top: 7.9927541887rem;
}

.mt_7 {
  margin-top: 11.3017544228rem;
}

.mt_8 {
  margin-top: 15.9806807538rem;
}

.mt_9 {
  margin-top: 22.5966825859rem;
}

.mt_10 {
  margin-top: 31.9517091765rem;
}

.mb_-2 {
  margin-bottom: 0.5001510456rem;
}

.mb_-1 {
  margin-bottom: 0.7072135785rem;
}

.mb_0 {
  margin-bottom: 1rem;
}

.mb_1, .book_introduction h2, .sec_plain h2 {
  margin-bottom: 1.414rem;
}

.mb_2 {
  margin-bottom: 1.999396rem;
}

.mb_3 {
  margin-bottom: 2.827145944rem;
}

.mb_4 {
  margin-bottom: 3.9975843648rem;
}

.mb_5 {
  margin-bottom: 5.6525842918rem;
}

.mb_6 {
  margin-bottom: 7.9927541887rem;
}

.mb_7 {
  margin-bottom: 11.3017544228rem;
}

.mb_8 {
  margin-bottom: 15.9806807538rem;
}

.mb_9 {
  margin-bottom: 22.5966825859rem;
}

.mb_10 {
  margin-bottom: 31.9517091765rem;
}

.mr_-2 {
  margin-right: 0.5001510456rem;
}

.mr_-1 {
  margin-right: 0.7072135785rem;
}

.mr_0, .pagination .page-item a[aria-label=Previous] {
  margin-right: 1rem;
}

.mr_1 {
  margin-right: 1.414rem;
}

.mr_2 {
  margin-right: 1.999396rem;
}

.mr_3 {
  margin-right: 2.827145944rem;
}

.mr_4 {
  margin-right: 3.9975843648rem;
}

.mr_5 {
  margin-right: 5.6525842918rem;
}

.mr_6 {
  margin-right: 7.9927541887rem;
}

.mr_7 {
  margin-right: 11.3017544228rem;
}

.mr_8 {
  margin-right: 15.9806807538rem;
}

.mr_9 {
  margin-right: 22.5966825859rem;
}

.mr_10 {
  margin-right: 31.9517091765rem;
}

.ml_-2 {
  margin-left: 0.5001510456rem;
}

.ml_-1 {
  margin-left: 0.7072135785rem;
}

.ml_0, .pagination .page-item a[aria-label=Next] {
  margin-left: 1rem;
}

.ml_1 {
  margin-left: 1.414rem;
}

.ml_2 {
  margin-left: 1.999396rem;
}

.ml_3 {
  margin-left: 2.827145944rem;
}

.ml_4 {
  margin-left: 3.9975843648rem;
}

.ml_5 {
  margin-left: 5.6525842918rem;
}

.ml_6 {
  margin-left: 7.9927541887rem;
}

.ml_7 {
  margin-left: 11.3017544228rem;
}

.ml_8 {
  margin-left: 15.9806807538rem;
}

.ml_9 {
  margin-left: 22.5966825859rem;
}

.ml_10 {
  margin-left: 31.9517091765rem;
}

@media (min-width: 480px) {
  .xs_mt_-2 {
    margin-top: 0.5001510456rem;
  }

  .xs_mt_-1 {
    margin-top: 0.7072135785rem;
  }

  .xs_mt_0 {
    margin-top: 1rem;
  }

  .xs_mt_1 {
    margin-top: 1.414rem;
  }

  .xs_mt_2 {
    margin-top: 1.999396rem;
  }

  .xs_mt_3 {
    margin-top: 2.827145944rem;
  }

  .xs_mt_4 {
    margin-top: 3.9975843648rem;
  }

  .xs_mt_5 {
    margin-top: 5.6525842918rem;
  }

  .xs_mt_6 {
    margin-top: 7.9927541887rem;
  }

  .xs_mt_7 {
    margin-top: 11.3017544228rem;
  }

  .xs_mt_8 {
    margin-top: 15.9806807538rem;
  }

  .xs_mt_9 {
    margin-top: 22.5966825859rem;
  }

  .xs_mt_10 {
    margin-top: 31.9517091765rem;
  }

  .xs_mb_-2 {
    margin-bottom: 0.5001510456rem;
  }

  .xs_mb_-1 {
    margin-bottom: 0.7072135785rem;
  }

  .xs_mb_0 {
    margin-bottom: 1rem;
  }

  .xs_mb_1 {
    margin-bottom: 1.414rem;
  }

  .xs_mb_2 {
    margin-bottom: 1.999396rem;
  }

  .xs_mb_3 {
    margin-bottom: 2.827145944rem;
  }

  .xs_mb_4 {
    margin-bottom: 3.9975843648rem;
  }

  .xs_mb_5 {
    margin-bottom: 5.6525842918rem;
  }

  .xs_mb_6 {
    margin-bottom: 7.9927541887rem;
  }

  .xs_mb_7 {
    margin-bottom: 11.3017544228rem;
  }

  .xs_mb_8 {
    margin-bottom: 15.9806807538rem;
  }

  .xs_mb_9 {
    margin-bottom: 22.5966825859rem;
  }

  .xs_mb_10 {
    margin-bottom: 31.9517091765rem;
  }

  .xs_mr_-2 {
    margin-right: 0.5001510456rem;
  }

  .xs_mr_-1 {
    margin-right: 0.7072135785rem;
  }

  .xs_mr_0 {
    margin-right: 1rem;
  }

  .xs_mr_1 {
    margin-right: 1.414rem;
  }

  .xs_mr_2 {
    margin-right: 1.999396rem;
  }

  .xs_mr_3 {
    margin-right: 2.827145944rem;
  }

  .xs_mr_4 {
    margin-right: 3.9975843648rem;
  }

  .xs_mr_5 {
    margin-right: 5.6525842918rem;
  }

  .xs_mr_6 {
    margin-right: 7.9927541887rem;
  }

  .xs_mr_7 {
    margin-right: 11.3017544228rem;
  }

  .xs_mr_8 {
    margin-right: 15.9806807538rem;
  }

  .xs_mr_9 {
    margin-right: 22.5966825859rem;
  }

  .xs_mr_10 {
    margin-right: 31.9517091765rem;
  }

  .xs_ml_-2 {
    margin-left: 0.5001510456rem;
  }

  .xs_ml_-1 {
    margin-left: 0.7072135785rem;
  }

  .xs_ml_0 {
    margin-left: 1rem;
  }

  .xs_ml_1 {
    margin-left: 1.414rem;
  }

  .xs_ml_2 {
    margin-left: 1.999396rem;
  }

  .xs_ml_3 {
    margin-left: 2.827145944rem;
  }

  .xs_ml_4 {
    margin-left: 3.9975843648rem;
  }

  .xs_ml_5 {
    margin-left: 5.6525842918rem;
  }

  .xs_ml_6 {
    margin-left: 7.9927541887rem;
  }

  .xs_ml_7 {
    margin-left: 11.3017544228rem;
  }

  .xs_ml_8 {
    margin-left: 15.9806807538rem;
  }

  .xs_ml_9 {
    margin-left: 22.5966825859rem;
  }

  .xs_ml_10 {
    margin-left: 31.9517091765rem;
  }
}
@media (min-width: 768px) {
  .sm_mt_-2 {
    margin-top: 0.5001510456rem;
  }

  .sm_mt_-1 {
    margin-top: 0.7072135785rem;
  }

  .sm_mt_0 {
    margin-top: 1rem;
  }

  .sm_mt_1 {
    margin-top: 1.414rem;
  }

  .sm_mt_2 {
    margin-top: 1.999396rem;
  }

  .sm_mt_3 {
    margin-top: 2.827145944rem;
  }

  .sm_mt_4 {
    margin-top: 3.9975843648rem;
  }

  .sm_mt_5 {
    margin-top: 5.6525842918rem;
  }

  .sm_mt_6 {
    margin-top: 7.9927541887rem;
  }

  .sm_mt_7 {
    margin-top: 11.3017544228rem;
  }

  .sm_mt_8 {
    margin-top: 15.9806807538rem;
  }

  .sm_mt_9 {
    margin-top: 22.5966825859rem;
  }

  .sm_mt_10 {
    margin-top: 31.9517091765rem;
  }

  .sm_mb_-2 {
    margin-bottom: 0.5001510456rem;
  }

  .sm_mb_-1 {
    margin-bottom: 0.7072135785rem;
  }

  .sm_mb_0 {
    margin-bottom: 1rem;
  }

  .sm_mb_1 {
    margin-bottom: 1.414rem;
  }

  .sm_mb_2 {
    margin-bottom: 1.999396rem;
  }

  .sm_mb_3 {
    margin-bottom: 2.827145944rem;
  }

  .sm_mb_4 {
    margin-bottom: 3.9975843648rem;
  }

  .sm_mb_5 {
    margin-bottom: 5.6525842918rem;
  }

  .sm_mb_6 {
    margin-bottom: 7.9927541887rem;
  }

  .sm_mb_7 {
    margin-bottom: 11.3017544228rem;
  }

  .sm_mb_8 {
    margin-bottom: 15.9806807538rem;
  }

  .sm_mb_9 {
    margin-bottom: 22.5966825859rem;
  }

  .sm_mb_10 {
    margin-bottom: 31.9517091765rem;
  }

  .sm_mr_-2 {
    margin-right: 0.5001510456rem;
  }

  .sm_mr_-1 {
    margin-right: 0.7072135785rem;
  }

  .sm_mr_0 {
    margin-right: 1rem;
  }

  .sm_mr_1 {
    margin-right: 1.414rem;
  }

  .sm_mr_2 {
    margin-right: 1.999396rem;
  }

  .sm_mr_3 {
    margin-right: 2.827145944rem;
  }

  .sm_mr_4 {
    margin-right: 3.9975843648rem;
  }

  .sm_mr_5 {
    margin-right: 5.6525842918rem;
  }

  .sm_mr_6 {
    margin-right: 7.9927541887rem;
  }

  .sm_mr_7 {
    margin-right: 11.3017544228rem;
  }

  .sm_mr_8 {
    margin-right: 15.9806807538rem;
  }

  .sm_mr_9 {
    margin-right: 22.5966825859rem;
  }

  .sm_mr_10 {
    margin-right: 31.9517091765rem;
  }

  .sm_ml_-2 {
    margin-left: 0.5001510456rem;
  }

  .sm_ml_-1 {
    margin-left: 0.7072135785rem;
  }

  .sm_ml_0 {
    margin-left: 1rem;
  }

  .sm_ml_1 {
    margin-left: 1.414rem;
  }

  .sm_ml_2 {
    margin-left: 1.999396rem;
  }

  .sm_ml_3 {
    margin-left: 2.827145944rem;
  }

  .sm_ml_4 {
    margin-left: 3.9975843648rem;
  }

  .sm_ml_5 {
    margin-left: 5.6525842918rem;
  }

  .sm_ml_6 {
    margin-left: 7.9927541887rem;
  }

  .sm_ml_7 {
    margin-left: 11.3017544228rem;
  }

  .sm_ml_8 {
    margin-left: 15.9806807538rem;
  }

  .sm_ml_9 {
    margin-left: 22.5966825859rem;
  }

  .sm_ml_10 {
    margin-left: 31.9517091765rem;
  }
}
@media (min-width: 980px) {
  .md_mt_-2 {
    margin-top: 0.5001510456rem;
  }

  .md_mt_-1 {
    margin-top: 0.7072135785rem;
  }

  .md_mt_0 {
    margin-top: 1rem;
  }

  .md_mt_1 {
    margin-top: 1.414rem;
  }

  .md_mt_2 {
    margin-top: 1.999396rem;
  }

  .md_mt_3 {
    margin-top: 2.827145944rem;
  }

  .md_mt_4 {
    margin-top: 3.9975843648rem;
  }

  .md_mt_5 {
    margin-top: 5.6525842918rem;
  }

  .md_mt_6 {
    margin-top: 7.9927541887rem;
  }

  .md_mt_7 {
    margin-top: 11.3017544228rem;
  }

  .md_mt_8 {
    margin-top: 15.9806807538rem;
  }

  .md_mt_9 {
    margin-top: 22.5966825859rem;
  }

  .md_mt_10 {
    margin-top: 31.9517091765rem;
  }

  .md_mb_-2 {
    margin-bottom: 0.5001510456rem;
  }

  .md_mb_-1 {
    margin-bottom: 0.7072135785rem;
  }

  .md_mb_0 {
    margin-bottom: 1rem;
  }

  .md_mb_1 {
    margin-bottom: 1.414rem;
  }

  .md_mb_2 {
    margin-bottom: 1.999396rem;
  }

  .md_mb_3 {
    margin-bottom: 2.827145944rem;
  }

  .md_mb_4 {
    margin-bottom: 3.9975843648rem;
  }

  .md_mb_5 {
    margin-bottom: 5.6525842918rem;
  }

  .md_mb_6 {
    margin-bottom: 7.9927541887rem;
  }

  .md_mb_7 {
    margin-bottom: 11.3017544228rem;
  }

  .md_mb_8 {
    margin-bottom: 15.9806807538rem;
  }

  .md_mb_9 {
    margin-bottom: 22.5966825859rem;
  }

  .md_mb_10 {
    margin-bottom: 31.9517091765rem;
  }

  .md_mr_-2 {
    margin-right: 0.5001510456rem;
  }

  .md_mr_-1 {
    margin-right: 0.7072135785rem;
  }

  .md_mr_0 {
    margin-right: 1rem;
  }

  .md_mr_1 {
    margin-right: 1.414rem;
  }

  .md_mr_2 {
    margin-right: 1.999396rem;
  }

  .md_mr_3 {
    margin-right: 2.827145944rem;
  }

  .md_mr_4 {
    margin-right: 3.9975843648rem;
  }

  .md_mr_5 {
    margin-right: 5.6525842918rem;
  }

  .md_mr_6 {
    margin-right: 7.9927541887rem;
  }

  .md_mr_7 {
    margin-right: 11.3017544228rem;
  }

  .md_mr_8 {
    margin-right: 15.9806807538rem;
  }

  .md_mr_9 {
    margin-right: 22.5966825859rem;
  }

  .md_mr_10 {
    margin-right: 31.9517091765rem;
  }

  .md_ml_-2 {
    margin-left: 0.5001510456rem;
  }

  .md_ml_-1 {
    margin-left: 0.7072135785rem;
  }

  .md_ml_0 {
    margin-left: 1rem;
  }

  .md_ml_1 {
    margin-left: 1.414rem;
  }

  .md_ml_2 {
    margin-left: 1.999396rem;
  }

  .md_ml_3 {
    margin-left: 2.827145944rem;
  }

  .md_ml_4 {
    margin-left: 3.9975843648rem;
  }

  .md_ml_5 {
    margin-left: 5.6525842918rem;
  }

  .md_ml_6 {
    margin-left: 7.9927541887rem;
  }

  .md_ml_7 {
    margin-left: 11.3017544228rem;
  }

  .md_ml_8 {
    margin-left: 15.9806807538rem;
  }

  .md_ml_9 {
    margin-left: 22.5966825859rem;
  }

  .md_ml_10 {
    margin-left: 31.9517091765rem;
  }
}
@media (min-width: 1366px) {
  .lg_mt_-2 {
    margin-top: 0.5001510456rem;
  }

  .lg_mt_-1 {
    margin-top: 0.7072135785rem;
  }

  .lg_mt_0 {
    margin-top: 1rem;
  }

  .lg_mt_1 {
    margin-top: 1.414rem;
  }

  .lg_mt_2 {
    margin-top: 1.999396rem;
  }

  .lg_mt_3 {
    margin-top: 2.827145944rem;
  }

  .lg_mt_4 {
    margin-top: 3.9975843648rem;
  }

  .lg_mt_5 {
    margin-top: 5.6525842918rem;
  }

  .lg_mt_6 {
    margin-top: 7.9927541887rem;
  }

  .lg_mt_7 {
    margin-top: 11.3017544228rem;
  }

  .lg_mt_8 {
    margin-top: 15.9806807538rem;
  }

  .lg_mt_9 {
    margin-top: 22.5966825859rem;
  }

  .lg_mt_10 {
    margin-top: 31.9517091765rem;
  }

  .lg_mb_-2 {
    margin-bottom: 0.5001510456rem;
  }

  .lg_mb_-1 {
    margin-bottom: 0.7072135785rem;
  }

  .lg_mb_0 {
    margin-bottom: 1rem;
  }

  .lg_mb_1 {
    margin-bottom: 1.414rem;
  }

  .lg_mb_2 {
    margin-bottom: 1.999396rem;
  }

  .lg_mb_3 {
    margin-bottom: 2.827145944rem;
  }

  .lg_mb_4 {
    margin-bottom: 3.9975843648rem;
  }

  .lg_mb_5 {
    margin-bottom: 5.6525842918rem;
  }

  .lg_mb_6 {
    margin-bottom: 7.9927541887rem;
  }

  .lg_mb_7 {
    margin-bottom: 11.3017544228rem;
  }

  .lg_mb_8 {
    margin-bottom: 15.9806807538rem;
  }

  .lg_mb_9 {
    margin-bottom: 22.5966825859rem;
  }

  .lg_mb_10 {
    margin-bottom: 31.9517091765rem;
  }

  .lg_mr_-2 {
    margin-right: 0.5001510456rem;
  }

  .lg_mr_-1 {
    margin-right: 0.7072135785rem;
  }

  .lg_mr_0 {
    margin-right: 1rem;
  }

  .lg_mr_1 {
    margin-right: 1.414rem;
  }

  .lg_mr_2 {
    margin-right: 1.999396rem;
  }

  .lg_mr_3 {
    margin-right: 2.827145944rem;
  }

  .lg_mr_4 {
    margin-right: 3.9975843648rem;
  }

  .lg_mr_5 {
    margin-right: 5.6525842918rem;
  }

  .lg_mr_6 {
    margin-right: 7.9927541887rem;
  }

  .lg_mr_7 {
    margin-right: 11.3017544228rem;
  }

  .lg_mr_8 {
    margin-right: 15.9806807538rem;
  }

  .lg_mr_9 {
    margin-right: 22.5966825859rem;
  }

  .lg_mr_10 {
    margin-right: 31.9517091765rem;
  }

  .lg_ml_-2 {
    margin-left: 0.5001510456rem;
  }

  .lg_ml_-1 {
    margin-left: 0.7072135785rem;
  }

  .lg_ml_0 {
    margin-left: 1rem;
  }

  .lg_ml_1 {
    margin-left: 1.414rem;
  }

  .lg_ml_2 {
    margin-left: 1.999396rem;
  }

  .lg_ml_3 {
    margin-left: 2.827145944rem;
  }

  .lg_ml_4 {
    margin-left: 3.9975843648rem;
  }

  .lg_ml_5 {
    margin-left: 5.6525842918rem;
  }

  .lg_ml_6 {
    margin-left: 7.9927541887rem;
  }

  .lg_ml_7 {
    margin-left: 11.3017544228rem;
  }

  .lg_ml_8 {
    margin-left: 15.9806807538rem;
  }

  .lg_ml_9 {
    margin-left: 22.5966825859rem;
  }

  .lg_ml_10 {
    margin-left: 31.9517091765rem;
  }
}
@media (min-width: 480px) {
  .xs_mt_00 {
    margin-top: 0;
  }

  .xs_mr_00 {
    margin-right: 0;
  }

  .xs_mb_00 {
    margin-bottom: 0;
  }

  .xs_ml_00 {
    margin-left: 0;
  }
}
@media (min-width: 768px) {
  .sm_mt_00 {
    margin-top: 0;
  }

  .sm_mr_00 {
    margin-right: 0;
  }

  .sm_mb_00 {
    margin-bottom: 0;
  }

  .sm_ml_00 {
    margin-left: 0;
  }
}
@media (min-width: 980px) {
  .md_mt_00 {
    margin-top: 0;
  }

  .md_mr_00 {
    margin-right: 0;
  }

  .md_mb_00 {
    margin-bottom: 0;
  }

  .md_ml_00 {
    margin-left: 0;
  }
}
@media (min-width: 1366px) {
  .lg_mt_00 {
    margin-top: 0;
  }

  .lg_mr_00 {
    margin-right: 0;
  }

  .lg_mb_00 {
    margin-bottom: 0;
  }

  .lg_ml_00 {
    margin-left: 0;
  }
}
.pt_00 {
  padding-top: 0;
}

.pr_00 {
  padding-right: 0;
}

.pb_00 {
  padding-bottom: 0;
}

.pl_00 {
  padding-left: 0;
}

.p_-2 {
  padding: 0.5001510456rem;
}

.p_-1, .pagination .page-item a {
  padding: 0.7072135785rem;
}

.p_0 {
  padding: 1rem;
}

.p_1 {
  padding: 1.414rem;
}

.p_2 {
  padding: 1.999396rem;
}

.p_3 {
  padding: 2.827145944rem;
}

.p_4 {
  padding: 3.9975843648rem;
}

.p_5 {
  padding: 5.6525842918rem;
}

.pt_-2 {
  padding-top: 0.5001510456rem;
}

.pt_-1 {
  padding-top: 0.7072135785rem;
}

.pt_0 {
  padding-top: 1rem;
}

.pt_1 {
  padding-top: 1.414rem;
}

.pt_2, .book_introduction hr, .sec_plain hr {
  padding-top: 1.999396rem;
}

.pt_3 {
  padding-top: 2.827145944rem;
}

.pt_4 {
  padding-top: 3.9975843648rem;
}

.pt_5 {
  padding-top: 5.6525842918rem;
}

.pb_-2 {
  padding-bottom: 0.5001510456rem;
}

.pb_-1 {
  padding-bottom: 0.7072135785rem;
}

.pb_0 {
  padding-bottom: 1rem;
}

.pb_1 {
  padding-bottom: 1.414rem;
}

.pb_2 {
  padding-bottom: 1.999396rem;
}

.pb_3 {
  padding-bottom: 2.827145944rem;
}

.pb_4 {
  padding-bottom: 3.9975843648rem;
}

.pb_5 {
  padding-bottom: 5.6525842918rem;
}

.pr_-2 {
  padding-right: 0.5001510456rem;
}

.pr_-1 {
  padding-right: 0.7072135785rem;
}

.pr_0 {
  padding-right: 1rem;
}

.pr_1 {
  padding-right: 1.414rem;
}

.pr_2 {
  padding-right: 1.999396rem;
}

.pr_3 {
  padding-right: 2.827145944rem;
}

.pr_4 {
  padding-right: 3.9975843648rem;
}

.pr_5 {
  padding-right: 5.6525842918rem;
}

.pl_-2 {
  padding-left: 0.5001510456rem;
}

.pl_-1 {
  padding-left: 0.7072135785rem;
}

.pl_0 {
  padding-left: 1rem;
}

.pl_1 {
  padding-left: 1.414rem;
}

.pl_2 {
  padding-left: 1.999396rem;
}

.pl_3 {
  padding-left: 2.827145944rem;
}

.pl_4 {
  padding-left: 3.9975843648rem;
}

.pl_5 {
  padding-left: 5.6525842918rem;
}

@media (min-width: 480px) {
  .xs_p_-2 {
    padding: 0.5001510456rem;
  }

  .xs_p_-1 {
    padding: 0.7072135785rem;
  }

  .xs_p_0 {
    padding: 1rem;
  }

  .xs_p_1 {
    padding: 1.414rem;
  }

  .xs_p_2 {
    padding: 1.999396rem;
  }

  .xs_p_3 {
    padding: 2.827145944rem;
  }

  .xs_p_4 {
    padding: 3.9975843648rem;
  }

  .xs_p_5 {
    padding: 5.6525842918rem;
  }

  .xs_pt_-2 {
    padding-top: 0.5001510456rem;
  }

  .xs_pt_-1 {
    padding-top: 0.7072135785rem;
  }

  .xs_pt_0 {
    padding-top: 1rem;
  }

  .xs_pt_1 {
    padding-top: 1.414rem;
  }

  .xs_pt_2 {
    padding-top: 1.999396rem;
  }

  .xs_pt_3 {
    padding-top: 2.827145944rem;
  }

  .xs_pt_4 {
    padding-top: 3.9975843648rem;
  }

  .xs_pt_5 {
    padding-top: 5.6525842918rem;
  }

  .xs_pb_-2 {
    padding-bottom: 0.5001510456rem;
  }

  .xs_pb_-1 {
    padding-bottom: 0.7072135785rem;
  }

  .xs_pb_0 {
    padding-bottom: 1rem;
  }

  .xs_pb_1 {
    padding-bottom: 1.414rem;
  }

  .xs_pb_2 {
    padding-bottom: 1.999396rem;
  }

  .xs_pb_3 {
    padding-bottom: 2.827145944rem;
  }

  .xs_pb_4 {
    padding-bottom: 3.9975843648rem;
  }

  .xs_pb_5 {
    padding-bottom: 5.6525842918rem;
  }

  .xs_pr_-2 {
    padding-right: 0.5001510456rem;
  }

  .xs_pr_-1 {
    padding-right: 0.7072135785rem;
  }

  .xs_pr_0 {
    padding-right: 1rem;
  }

  .xs_pr_1 {
    padding-right: 1.414rem;
  }

  .xs_pr_2 {
    padding-right: 1.999396rem;
  }

  .xs_pr_3 {
    padding-right: 2.827145944rem;
  }

  .xs_pr_4 {
    padding-right: 3.9975843648rem;
  }

  .xs_pr_5 {
    padding-right: 5.6525842918rem;
  }

  .xs_pl_-2 {
    padding-left: 0.5001510456rem;
  }

  .xs_pl_-1 {
    padding-left: 0.7072135785rem;
  }

  .xs_pl_0 {
    padding-left: 1rem;
  }

  .xs_pl_1 {
    padding-left: 1.414rem;
  }

  .xs_pl_2 {
    padding-left: 1.999396rem;
  }

  .xs_pl_3 {
    padding-left: 2.827145944rem;
  }

  .xs_pl_4 {
    padding-left: 3.9975843648rem;
  }

  .xs_pl_5 {
    padding-left: 5.6525842918rem;
  }
}
@media (min-width: 768px) {
  .sm_p_-2 {
    padding: 0.5001510456rem;
  }

  .sm_p_-1 {
    padding: 0.7072135785rem;
  }

  .sm_p_0 {
    padding: 1rem;
  }

  .sm_p_1 {
    padding: 1.414rem;
  }

  .sm_p_2 {
    padding: 1.999396rem;
  }

  .sm_p_3 {
    padding: 2.827145944rem;
  }

  .sm_p_4 {
    padding: 3.9975843648rem;
  }

  .sm_p_5 {
    padding: 5.6525842918rem;
  }

  .sm_pt_-2 {
    padding-top: 0.5001510456rem;
  }

  .sm_pt_-1 {
    padding-top: 0.7072135785rem;
  }

  .sm_pt_0 {
    padding-top: 1rem;
  }

  .sm_pt_1 {
    padding-top: 1.414rem;
  }

  .sm_pt_2 {
    padding-top: 1.999396rem;
  }

  .sm_pt_3 {
    padding-top: 2.827145944rem;
  }

  .sm_pt_4 {
    padding-top: 3.9975843648rem;
  }

  .sm_pt_5 {
    padding-top: 5.6525842918rem;
  }

  .sm_pb_-2 {
    padding-bottom: 0.5001510456rem;
  }

  .sm_pb_-1 {
    padding-bottom: 0.7072135785rem;
  }

  .sm_pb_0 {
    padding-bottom: 1rem;
  }

  .sm_pb_1 {
    padding-bottom: 1.414rem;
  }

  .sm_pb_2 {
    padding-bottom: 1.999396rem;
  }

  .sm_pb_3 {
    padding-bottom: 2.827145944rem;
  }

  .sm_pb_4 {
    padding-bottom: 3.9975843648rem;
  }

  .sm_pb_5 {
    padding-bottom: 5.6525842918rem;
  }

  .sm_pr_-2 {
    padding-right: 0.5001510456rem;
  }

  .sm_pr_-1 {
    padding-right: 0.7072135785rem;
  }

  .sm_pr_0 {
    padding-right: 1rem;
  }

  .sm_pr_1 {
    padding-right: 1.414rem;
  }

  .sm_pr_2 {
    padding-right: 1.999396rem;
  }

  .sm_pr_3 {
    padding-right: 2.827145944rem;
  }

  .sm_pr_4 {
    padding-right: 3.9975843648rem;
  }

  .sm_pr_5 {
    padding-right: 5.6525842918rem;
  }

  .sm_pl_-2 {
    padding-left: 0.5001510456rem;
  }

  .sm_pl_-1 {
    padding-left: 0.7072135785rem;
  }

  .sm_pl_0 {
    padding-left: 1rem;
  }

  .sm_pl_1 {
    padding-left: 1.414rem;
  }

  .sm_pl_2 {
    padding-left: 1.999396rem;
  }

  .sm_pl_3 {
    padding-left: 2.827145944rem;
  }

  .sm_pl_4 {
    padding-left: 3.9975843648rem;
  }

  .sm_pl_5 {
    padding-left: 5.6525842918rem;
  }
}
@media (min-width: 980px) {
  .md_p_-2 {
    padding: 0.5001510456rem;
  }

  .md_p_-1 {
    padding: 0.7072135785rem;
  }

  .md_p_0 {
    padding: 1rem;
  }

  .md_p_1 {
    padding: 1.414rem;
  }

  .md_p_2 {
    padding: 1.999396rem;
  }

  .md_p_3 {
    padding: 2.827145944rem;
  }

  .md_p_4 {
    padding: 3.9975843648rem;
  }

  .md_p_5 {
    padding: 5.6525842918rem;
  }

  .md_pt_-2 {
    padding-top: 0.5001510456rem;
  }

  .md_pt_-1 {
    padding-top: 0.7072135785rem;
  }

  .md_pt_0 {
    padding-top: 1rem;
  }

  .md_pt_1 {
    padding-top: 1.414rem;
  }

  .md_pt_2 {
    padding-top: 1.999396rem;
  }

  .md_pt_3 {
    padding-top: 2.827145944rem;
  }

  .md_pt_4 {
    padding-top: 3.9975843648rem;
  }

  .md_pt_5 {
    padding-top: 5.6525842918rem;
  }

  .md_pt_6 {
    padding-top: 7.9927541887rem;
  }

  .md_pb_-2 {
    padding-bottom: 0.5001510456rem;
  }

  .md_pb_-1 {
    padding-bottom: 0.7072135785rem;
  }

  .md_pb_0 {
    padding-bottom: 1rem;
  }

  .md_pb_1 {
    padding-bottom: 1.414rem;
  }

  .md_pb_2 {
    padding-bottom: 1.999396rem;
  }

  .md_pb_3 {
    padding-bottom: 2.827145944rem;
  }

  .md_pb_4 {
    padding-bottom: 3.9975843648rem;
  }

  .md_pb_5 {
    padding-bottom: 5.6525842918rem;
  }

  .md_pb_6 {
    padding-bottom: 7.9927541887rem;
  }

  .md_pr_-2 {
    padding-right: 0.5001510456rem;
  }

  .md_pr_-1 {
    padding-right: 0.7072135785rem;
  }

  .md_pr_0 {
    padding-right: 1rem;
  }

  .md_pr_1 {
    padding-right: 1.414rem;
  }

  .md_pr_2 {
    padding-right: 1.999396rem;
  }

  .md_pr_3 {
    padding-right: 2.827145944rem;
  }

  .md_pr_4 {
    padding-right: 3.9975843648rem;
  }

  .md_pr_5 {
    padding-right: 5.6525842918rem;
  }

  .md_pr_6 {
    padding-right: 7.9927541887rem;
  }

  .md_pl_-2 {
    padding-left: 0.5001510456rem;
  }

  .md_pl_-1 {
    padding-left: 0.7072135785rem;
  }

  .md_pl_0 {
    padding-left: 1rem;
  }

  .md_pl_1 {
    padding-left: 1.414rem;
  }

  .md_pl_2 {
    padding-left: 1.999396rem;
  }

  .md_pl_3 {
    padding-left: 2.827145944rem;
  }

  .md_pl_4 {
    padding-left: 3.9975843648rem;
  }

  .md_pl_5 {
    padding-left: 5.6525842918rem;
  }
}
@media (min-width: 1366px) {
  .lg_p_-2 {
    padding: 0.5001510456rem;
  }

  .lg_p_-1 {
    padding: 0.7072135785rem;
  }

  .lg_p_0 {
    padding: 1rem;
  }

  .lg_p_1 {
    padding: 1.414rem;
  }

  .lg_p_2 {
    padding: 1.999396rem;
  }

  .lg_p_3 {
    padding: 2.827145944rem;
  }

  .lg_p_4 {
    padding: 3.9975843648rem;
  }

  .lg_p_5 {
    padding: 5.6525842918rem;
  }

  .lg_pt_-2 {
    padding-top: 0.5001510456rem;
  }

  .lg_pt_-1 {
    padding-top: 0.7072135785rem;
  }

  .lg_pt_0 {
    padding-top: 1rem;
  }

  .lg_pt_1 {
    padding-top: 1.414rem;
  }

  .lg_pt_2 {
    padding-top: 1.999396rem;
  }

  .lg_pt_3 {
    padding-top: 2.827145944rem;
  }

  .lg_pt_4 {
    padding-top: 3.9975843648rem;
  }

  .lg_pt_5 {
    padding-top: 5.6525842918rem;
  }

  .lg_pt_6 {
    padding-top: 7.9927541887rem;
  }

  .lg_pb_-2 {
    padding-bottom: 0.5001510456rem;
  }

  .lg_pb_-1 {
    padding-bottom: 0.7072135785rem;
  }

  .lg_pb_0 {
    padding-bottom: 1rem;
  }

  .lg_pb_1 {
    padding-bottom: 1.414rem;
  }

  .lg_pb_2 {
    padding-bottom: 1.999396rem;
  }

  .lg_pb_3 {
    padding-bottom: 2.827145944rem;
  }

  .lg_pb_4 {
    padding-bottom: 3.9975843648rem;
  }

  .lg_pb_5 {
    padding-bottom: 5.6525842918rem;
  }

  .lg_pr_-2 {
    padding-right: 0.5001510456rem;
  }

  .lg_pr_-1 {
    padding-right: 0.7072135785rem;
  }

  .lg_pr_0 {
    padding-right: 1rem;
  }

  .lg_pr_1 {
    padding-right: 1.414rem;
  }

  .lg_pr_2 {
    padding-right: 1.999396rem;
  }

  .lg_pr_3 {
    padding-right: 2.827145944rem;
  }

  .lg_pr_4 {
    padding-right: 3.9975843648rem;
  }

  .lg_pr_5 {
    padding-right: 5.6525842918rem;
  }

  .lg_pl_-2 {
    padding-left: 0.5001510456rem;
  }

  .lg_pl_-1 {
    padding-left: 0.7072135785rem;
  }

  .lg_pl_0 {
    padding-left: 1rem;
  }

  .lg_pl_1 {
    padding-left: 1.414rem;
  }

  .lg_pl_2 {
    padding-left: 1.999396rem;
  }

  .lg_pl_3 {
    padding-left: 2.827145944rem;
  }

  .lg_pl_4 {
    padding-left: 3.9975843648rem;
  }

  .lg_pl_5 {
    padding-left: 5.6525842918rem;
  }
}
@media (min-width: 480px) {
  .xs_pt_00 {
    padding-top: 0;
  }

  .xs_pr_00 {
    padding-right: 0;
  }

  .xs_pb_00 {
    padding-bottom: 0;
  }

  .xs_pl_00 {
    padding-left: 0;
  }
}
@media (min-width: 768px) {
  .sm_pt_00 {
    padding-top: 0;
  }

  .sm_pr_00 {
    padding-right: 0;
  }

  .sm_pb_00 {
    padding-bottom: 0;
  }

  .sm_pl_00 {
    padding-left: 0;
  }
}
@media (min-width: 980px) {
  .md_pt_00 {
    padding-top: 0;
  }

  .md_pr_00 {
    padding-right: 0;
  }

  .md_pb_00 {
    padding-bottom: 0;
  }

  .md_pl_00 {
    padding-left: 0;
  }
}
@media (min-width: 1366px) {
  .lg_pt_00 {
    padding-top: 0;
  }

  .lg_pr_00 {
    padding-right: 0;
  }

  .lg_pb_00 {
    padding-bottom: 0;
  }

  .lg_pl_00 {
    padding-left: 0;
  }
}
* {
  box-sizing: border-box;
}

html {
  width: 100%;
  height: -webkit-fill-available;
  font-weight: 500;
  letter-spacing: 0.0848656294em;
  overflow-y: scroll;
  font-size: 13px;
}
@media (min-width: 480px) {
  html {
    font-size: calc( 13px + ((1vw - ( 480px / 100 )) * 0.4514672686));
  }
}
@media (min-width: 980px) {
  html {
    font-size: 17px;
  }
}

body {
  background: #8DC1BF;
  width: 100%;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
  color: #000;
  line-height: 1.6261;
  -webkit-text-size-adjust: 100%;
}

.fam_jp {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
}

.fam_en {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
}

.ttl_-1 {
  display: block;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
  letter-spacing: 0.0707213579em;
  font-weight: bold;
  color: #000;
  font-size: 0.7072135785rem;
}

.ttl_0 {
  display: block;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
  letter-spacing: 0.0707213579em;
  font-weight: bold;
  color: #000;
  font-size: 1rem;
}

.ttl_1 {
  display: block;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
  letter-spacing: 0.0707213579em;
  font-weight: bold;
  color: #000;
  font-size: 1.414rem;
  line-height: 1.414;
}

.ttl_2 {
  display: block;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
  letter-spacing: 0.0707213579em;
  font-weight: bold;
  color: #000;
  font-size: 1.999396rem;
  line-height: 1.2726;
}

.ttl_3 {
  display: block;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
  letter-spacing: 0.0707213579em;
  font-weight: bold;
  color: #000;
  font-size: 2.827145944rem;
  line-height: 1.2019;
}

.ttl_4 {
  display: block;
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
  letter-spacing: 0.0707213579em;
  font-weight: bold;
  color: #000;
  font-size: 3.9975843648rem;
  line-height: 1.1312;
}

@media (min-width: 480px) {
  .xs_ttl_-1 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 0.7072135785rem;
  }

  .xs_ttl_0 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1rem;
  }

  .xs_ttl_1 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1.414rem;
    line-height: 1.414;
  }

  .xs_ttl_2 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1.999396rem;
    line-height: 1.2726;
  }

  .xs_ttl_3 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 2.827145944rem;
    line-height: 1.2019;
  }

  .xs_ttl_4 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 3.9975843648rem;
    line-height: 1.1312;
  }

  .xs_ttl_5 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 5.6525842918rem;
    line-height: 0.9898;
  }
}
@media (min-width: 768px) {
  .sm_ttl_-1 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 0.7072135785rem;
  }

  .sm_ttl_0 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1rem;
  }

  .sm_ttl_1 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1.414rem;
    line-height: 1.414;
  }

  .sm_ttl_2 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1.999396rem;
    line-height: 1.2726;
  }

  .sm_ttl_3 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 2.827145944rem;
    line-height: 1.2019;
  }

  .sm_ttl_4 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 3.9975843648rem;
    line-height: 1.1312;
  }

  .sm_ttl_5 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 5.6525842918rem;
    line-height: 0.9898;
  }
}
@media (min-width: 980px) {
  .md_ttl_-1 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 0.7072135785rem;
  }

  .md_ttl_0 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1rem;
  }

  .md_ttl_1 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1.414rem;
    line-height: 1.414;
  }

  .md_ttl_2 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1.999396rem;
    line-height: 1.2726;
  }

  .md_ttl_3 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 2.827145944rem;
    line-height: 1.2019;
  }

  .md_ttl_4 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 3.9975843648rem;
    line-height: 1.1312;
  }

  .md_ttl_5 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 5.6525842918rem;
    line-height: 0.9898;
  }
}
@media (min-width: 1366px) {
  .lg_ttl_-1 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 0.7072135785rem;
  }

  .lg_ttl_0 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1rem;
  }

  .lg_ttl_1 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1.414rem;
    line-height: 1.414;
  }

  .lg_ttl_2 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 1.999396rem;
    line-height: 1.2726;
  }

  .lg_ttl_3 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 2.827145944rem;
    line-height: 1.2019;
  }

  .lg_ttl_4 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 3.9975843648rem;
    line-height: 1.1312;
  }

  .lg_ttl_5 {
    display: block;
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
    letter-spacing: 0.0707213579em;
    font-weight: bold;
    color: #000;
    font-size: 5.6525842918rem;
    line-height: 0.9898;
  }
}
.fam_jp {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
}

.fam_en {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Arial", "Meiryo", sans-serif;
}

.bold, .book_introduction h2, .sec_plain h2, .sec_plain h3 {
  font-weight: 600;
}

h1, h2, h3, h4, h5, p, th, td, dt, dd, li,
nav ul li a,
a span,
h3 span {
  /* フォントレンダリング設定: 1x解像度ではsubpixel、2x以上の解像度ではgrayscale */
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
  transform: rotate(0.03deg);
}
@media only screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  h1, h2, h3, h4, h5, p, th, td, dt, dd, li,
nav ul li a,
a span,
h3 span {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
  }
}

.sz_10 {
  font-size: 31.9517091765rem;
}

.sz_9 {
  font-size: 22.5966825859rem;
}

.sz_8 {
  font-size: 15.9806807538rem;
}

.sz_7 {
  font-size: 11.3017544228rem;
}

.sz_6 {
  font-size: 7.9927541887rem;
}

.sz_5 {
  font-size: 5.6525842918rem;
}

.sz_4 {
  font-size: 3.9975843648rem;
}

.sz_3 {
  font-size: 2.827145944rem;
}

.sz_2, .book_introduction h2, .sec_plain h2 {
  font-size: 1.999396rem;
}

.sz_1, .pagination, .sec_plain h3 {
  font-size: 1.414rem;
}

.sz_0 {
  font-size: 1rem;
}

.sz_-1 {
  font-size: 0.7072135785rem;
}

.sz_-2 {
  font-size: 0.5001510456rem;
}

@media (min-width: 480px) {
  .xs_sz_10 {
    font-size: 31.9517091765rem;
  }

  .xs_sz_9 {
    font-size: 22.5966825859rem;
  }

  .xs_sz_8 {
    font-size: 15.9806807538rem;
  }

  .xs_sz_7 {
    font-size: 11.3017544228rem;
  }

  .xs_sz_6 {
    font-size: 7.9927541887rem;
  }

  .xs_sz_5 {
    font-size: 5.6525842918rem;
  }

  .xs_sz_4 {
    font-size: 3.9975843648rem;
  }

  .xs_sz_3 {
    font-size: 2.827145944rem;
  }

  .xs_sz_2 {
    font-size: 1.999396rem;
  }

  .xs_sz_1 {
    font-size: 1.414rem;
  }

  .xs_sz_0 {
    font-size: 1rem;
  }

  .xs_sz_-1 {
    font-size: 0.7072135785rem;
  }

  .xs_sz_-2 {
    font-size: 0.5001510456rem;
  }
}
@media (min-width: 768px) {
  .sm_sz_10 {
    font-size: 31.9517091765rem;
  }

  .sm_sz_9 {
    font-size: 22.5966825859rem;
  }

  .sm_sz_8 {
    font-size: 15.9806807538rem;
  }

  .sm_sz_7 {
    font-size: 11.3017544228rem;
  }

  .sm_sz_6 {
    font-size: 7.9927541887rem;
  }

  .sm_sz_5 {
    font-size: 5.6525842918rem;
  }

  .sm_sz_4 {
    font-size: 3.9975843648rem;
  }

  .sm_sz_3 {
    font-size: 2.827145944rem;
  }

  .sm_sz_2 {
    font-size: 1.999396rem;
  }

  .sm_sz_1 {
    font-size: 1.414rem;
  }

  .sm_sz_0 {
    font-size: 1rem;
  }

  .sm_sz_-1 {
    font-size: 0.7072135785rem;
  }

  .sm_sz_-2 {
    font-size: 0.5001510456rem;
  }
}
@media (min-width: 980px) {
  .md_sz_10 {
    font-size: 31.9517091765rem;
  }

  .md_sz_9 {
    font-size: 22.5966825859rem;
  }

  .md_sz_8 {
    font-size: 15.9806807538rem;
  }

  .md_sz_7 {
    font-size: 11.3017544228rem;
  }

  .md_sz_6 {
    font-size: 7.9927541887rem;
  }

  .md_sz_5 {
    font-size: 5.6525842918rem;
  }

  .md_sz_4 {
    font-size: 3.9975843648rem;
  }

  .md_sz_3 {
    font-size: 2.827145944rem;
  }

  .md_sz_2 {
    font-size: 1.999396rem;
  }

  .md_sz_1 {
    font-size: 1.414rem;
  }

  .md_sz_0 {
    font-size: 1rem;
  }

  .md_sz_-1 {
    font-size: 0.7072135785rem;
  }

  .md_sz_-2 {
    font-size: 0.5001510456rem;
  }
}
@media (min-width: 1366px) {
  .lg_sz_10 {
    font-size: 31.9517091765rem;
  }

  .lg_sz_9 {
    font-size: 22.5966825859rem;
  }

  .lg_sz_8 {
    font-size: 15.9806807538rem;
  }

  .lg_sz_7 {
    font-size: 11.3017544228rem;
  }

  .lg_sz_6 {
    font-size: 7.9927541887rem;
  }

  .lg_sz_5 {
    font-size: 5.6525842918rem;
  }

  .lg_sz_4 {
    font-size: 3.9975843648rem;
  }

  .lg_sz_3 {
    font-size: 2.827145944rem;
  }

  .lg_sz_2 {
    font-size: 1.999396rem;
  }

  .lg_sz_1 {
    font-size: 1.414rem;
  }

  .lg_sz_0 {
    font-size: 1rem;
  }

  .lg_sz_-1 {
    font-size: 0.7072135785rem;
  }

  .lg_sz_-2 {
    font-size: 0.5001510456rem;
  }
}
.nav_global .logo {
  width: 100%;
  max-width: 130px;
}
@media (min-width: 768px) {
  .nav_global .logo {
    max-width: 150px;
  }
}
@media (min-width: 980px) {
  .nav_global .logo {
    max-width: 230px;
  }
}

.nav_global {
  position: fixed;
  top: 0;
  left: 0;
  background-color: #8DC1BF;
  z-index: 888;
  width: 100%;
  border-bottom: 4px solid #000;
}
.link_fund {
  background-color: #6F9695;
  align-items: center;
  display: flex;
  font-size: 0.7779349364rem;
  line-height: 1.4;
  height: 100%;
}
@media (min-width: 980px) {
  .link_fund {
    font-size: 0.8486562942rem;
  }
}

.menu_toggle .inner {
  position: fixed;
  right: -90vw;
  /* これで隠れる */
  top: 0;
  width: 90vw;
  /* スマホに収まるくらい */
  height: 100vh;
  background: #8DC1BF;
  transition: all 0.8s;
  z-index: 9998;
  overflow-y: auto;
  /* メニューが多くなったらスクロールできるように */
  padding-top: 2.827145944rem;
}
@media (min-width: 768px) {
  .menu_toggle .inner {
    width: 50vw;
    min-width: 300px;
    max-width: 600px;
  }
}
.menu_toggle .inner nav {
  list-style: none;
}
.menu_toggle .inner nav li {
  display: block;
  border-left: 0;
}
.menu_toggle .inner nav li:not(.ttl_1) a {
  display: block;
  border-top: 1px solid #666;
}

.nav_open .menu_toggle .inner {
  right: 0;
}

.hamburger {
  position: fixed;
  right: 0;
  top: 0;
  width: 5.5em;
  height: 4.5em;
  cursor: pointer;
  z-index: 9999;
  border-radius: 0 0 0 4px;
}
.hamburger .foot {
  color: #000;
  position: absolute;
  bottom: -0.7072135785rem;
}

.hamburger_line {
  position: absolute;
  width: 3em;
  height: 3px;
  border-radius: 2px;
  background-color: #000;
  transition: all 0.6s;
  left: 4.3vw;
}
.hamburger_line.hamburger_line_1 {
  top: 20%;
}
.hamburger_line.hamburger_line_2 {
  top: 36%;
}
.hamburger_line.hamburger_line_3 {
  top: 53%;
}

.foot.hamburger_menu {
  left: 4.6vw;
  top: 65%;
}
.nav_open .foot.hamburger_menu {
  visibility: hidden;
}

.foot.hamburger_close {
  top: 65%;
  left: 4.6vw;
  visibility: hidden;
}
.nav_open .foot.hamburger_close {
  visibility: visible;
}

.black_bg {
  position: fixed;
  left: 0;
  top: 0;
  width: 100vw;
  height: 100vh;
  z-index: 998;
  background-color: #000;
  opacity: 0;
  visibility: hidden;
  transition: all 0.6s;
  cursor: pointer;
}

/* メニューが表示された時用のCSS */
html.nav_open {
  overflow-y: hidden;
}

.nav_open .black_bg {
  opacity: 0.8;
  visibility: visible;
}

.nav_open .hamburger_line_1 {
  transform: rotate(45deg);
  top: 1.5em;
}

.nav_open .hamburger_line_2 {
  width: 0;
  left: 1.414rem;
}

.nav_open .hamburger_line_3 {
  transform: rotate(-45deg);
  top: 1.5em;
}

.footer_nav .right {
  border-left: none;
}
@media (min-width: 768px) {
  .footer_nav .right {
    border-left: 1px solid #000;
  }
}

footer {
  background: #8DC1BF;
}
footer .right {
  border-left: none;
}
@media (min-width: 768px) {
  footer .right {
    border-left: 1px solid #000;
  }
}
footer .logo img {
  max-width: 200px;
}
@media (min-width: 768px) {
  footer .logo img {
    max-width: 400px;
  }
}

.copyright {
  border-top: 1px solid #000;
}

a {
  color: #000;
  font-weight: bold;
  transition: all 0.5s ease-out;
}
a._underline {
  text-decoration: underline;
  transition: all 0.5s ease-out;
}
a:hover {
  color: #000;
}

.nav_global nav li a {
  padding: 0.15em 0.5em;
  display: block;
  height: 100%;
  color: #000;
  font-weight: bold;
}
.nav_global nav li a span {
  text-transform: uppercase;
}
.nav_global nav li a:hover {
  background: #fff;
}

.list_link a {
  position: relative;
  padding: 0.15em 0.15em 0.15em 1.4em;
  transition: all 0.5s ease-out;
  display: block;
}
.list_link a::before {
  display: block;
  left: 0;
  top: 0.5em;
  content: "";
  width: 0.85em;
  height: 0.85em;
  position: absolute;
  background-image: url("/shindai-books/img/common/i_list_link.svg");
  background-repeat: no-repeat;
  background-size: 100%;
  transition: all 0.5s ease-out;
}
.list_link a:hover {
  transform: translateX(2px);
  background: #fff;
}
.list_link a:hover::before {
  left: 0.25em;
}
.list_link a._blank::before {
  background-image: url("/shindai-books/img/common/i_list_link_blank.svg");
}
.list_link.list_link_tags a {
  transition: all 0.5s ease-out;
  padding-left: 1em;
}
.list_link.list_link_tags a::before {
  background: none;
  top: 3px;
  content: "#";
}
.list_link.list_link_tags a:hover::before {
  left: 0em;
}

.sec_book_cat_select_link li a {
  display: inline-block;
  border: 1px solid #000;
  padding: 4px 0.7072135785rem;
  border-radius: 4px;
}
.sec_book_cat_select_link li a:hover {
  background: #fff;
}

.book_info a {
  margin-right: 0.7072135785rem;
  text-decoration: underline;
}
.book_info a:hover {
  background: #fff;
}
.book_tags a {
  margin-right: 0.7072135785rem;
  text-decoration: underline;
}
.book_tags a::before {
  content: "#";
  display: inline;
}
.book_tags a:hover {
  background: #fff;
}
.book_cat a {
  border: 1px solid #000;
  padding: 4px 0.7072135785rem;
  border-radius: 4px;
}
.book_cat a:hover {
  background: #fff;
}
.book_introduction a, .sec_plain a {
  text-decoration: underline;
}
.book_introduction a:hover, .sec_plain a:hover {
  background: #fff;
}

.author-avail, .publisher-avail {
  color: #000;
  font-weight: bold;
  transition: all 0.5s ease-out;
  text-decoration: underline;
  cursor: pointer;
}
.author-avail:hover, .publisher-avail:hover {
  background: #fff;
}

a._default {
  display: block;
  position: relative;
  padding-right: 1.414rem;
}
a._default::after {
  background-position: center center;
  background-size: 1em;
  background-repeat: no-repeat;
  content: "";
  position: absolute;
  width: 1em;
  height: 1em;
  top: calc(50% - 0.5em);
  display: block;
  right: 0;
  transition: all 0.5s ease-out;
  background-image: url("/shindai-books/img/common/i_link_default.svg");
}
a._default:hover::after {
  transform: translateX(2px);
  background-image: url("/shindai-books/img/common/i_link_default_hover.svg");
}
a._dl {
  display: block;
  position: relative;
  padding-right: 1.414rem;
}
a._dl::after {
  background-position: center center;
  background-size: 1em;
  background-repeat: no-repeat;
  content: "";
  position: absolute;
  width: 1em;
  height: 1em;
  top: calc(50% - 0.5em);
  display: block;
  right: 0;
  transition: all 0.5s ease-out;
  background-image: url("/shindai-books/img/common/i_link_dl.svg");
}
a._dl:hover::after {
  transform: translateX(2px);
  background-image: url("/shindai-books/img/common/i_link_dl_hover.svg");
}
a._blank {
  display: block;
  position: relative;
  padding-right: 1.414rem;
}
a._blank::after {
  background-position: center center;
  background-size: 1em;
  background-repeat: no-repeat;
  content: "";
  position: absolute;
  width: 1em;
  height: 1em;
  top: calc(50% - 0.5em);
  display: block;
  right: 0;
  transition: all 0.5s ease-out;
  background-image: url("/shindai-books/img/common/i_btn_link_blank.svg");
}
a._blank:hover::after {
  transform: translateX(2px);
  background-image: url("/shindai-books/img/common/i_link_blank_hover.svg");
}
a._anchor_up {
  display: block;
  position: relative;
  padding-right: 1.414rem;
}
a._anchor_up::after {
  background-position: center center;
  background-size: 1em;
  background-repeat: no-repeat;
  content: "";
  position: absolute;
  width: 1em;
  height: 1em;
  top: calc(50% - 0.5em);
  display: block;
  right: 0;
  transition: all 0.5s ease-out;
  background-image: url("/shindai-books/img/common/i_link_anchor_up.svg");
}
a._anchor_up:hover::after {
  transform: translateX(2px);
  background-image: url("/shindai-books/img/common/i_link_anchor_up_hover.svg");
  transform: translateY(-1px);
}
a._opasity {
  opacity: 1;
}
a._opasity img {
  transition: all 0.5s ease-out;
}
a._opasity:hover {
  opacity: 0.85;
}
.btn_area {
  display: block;
  justify-content: center;
}
@media (min-width: 768px) {
  .btn_area {
    display: flex;
    justify-content: center;
  }
}
.btn_area button {
  padding-left: 0.5em;
  padding-right: 0.5em;
  display: block;
  letter-spacing: 0.0848656294em;
}
.btn_area button:not(:first-child) {
  margin-top: 1rem;
}
@media (min-width: 768px) {
  .btn_area button:not(:first-child) {
    margin: 0;
  }
}
@media (min-width: 768px) {
  .btn_area button {
    width: auto;
    margin: 0;
    padding-left: 0.7072135785rem;
    padding-right: 0.7072135785rem;
  }
}
.btn_area button .btn {
  font-size: 0.7072135785rem;
  color: #000;
  background: #e4e4e4;
  border: 2px solid #000;
  text-decoration: none;
  border-radius: 4px;
  display: block;
  position: relative;
  transition: all 0.5s ease-out;
  font-weight: bold;
  background-repeat: no-repeat;
  font-size: 1rem;
  padding: 0.7072135785rem 1rem 0.7072135785rem 1.999396rem;
}
@media (min-width: 768px) {
  .btn_area button .btn {
    font-size: 1rem;
    padding: 0.3537136108rem 1rem 0.3537136108rem 1.999396rem;
  }
}
.btn_area button .btn::after {
  content: "";
  position: absolute;
  background-repeat: no-repeat;
  background-position: 0 center;
  background-size: contain;
  right: 1.414rem;
  width: 1em;
  height: 1em;
  top: calc(50% - 0.5em);
  transition: all 0.5s ease-out;
  left: 0.7072135785rem;
}
@media (min-width: 768px) {
  .btn_area button .btn::after {
    left: 0.5001510456rem;
  }
}
.btn_area button .btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 2px 2px #6F9695;
  border: 2px solid #000;
  background: #fff;
  opacity: 1;
  color: #000;
}
.btn_area button .btn:hover::before {
  transform: translateX(2px);
}
.btn_area button .btn:hover::after {
  transform: translateX(2px);
}
.btn_area button .btn.desactive {
  background-color: #eee;
  border: 2px solid #eee;
}
.btn_area button .btn.desactive:hover {
  border: 2px solid #eee;
  background: #fff;
  opacity: 1;
  color: #eee;
}
.btn_area button._default a.btn::after {
  background-image: url("/shindai-books/img/common/i_btn_link.svg");
}
.btn_area button._default a.btn:hover::after {
  transform: translateX(2px);
}
.btn_area button._blank a.btn::after {
  background-image: url("/shindai-books/img/common/i_btn_link_blank.svg");
}
.btn_area button._blank a.btn:hover::after {
  transform: translateX(2px);
}
.btn_area._start {
  justify-content: flex-start;
}
.btn_area._start button {
  padding-left: 0;
}
.btn_area._end {
  justify-content: flex-end;
}
.btn_area._end button {
  padding-right: 0;
}

.container {
  width: 86%;
  max-width: 1100px;
  margin-left: auto;
  margin-right: auto;
}
.container._lg {
  width: 94%;
  max-width: 1300px;
}
.container._sm {
  width: 86%;
  max-width: 800px;
}

hr {
  border-top: 1px solid #000;
  border-width: 4px 0 0;
  margin: 0;
}

.h_1, .h_2, .h_3, .h_4, .h_5 {
  font-weight: bold;
}

.h_1 .head {
  color: #000;
}
.h_1 .fam_jp {
  color: #8DC1BF;
  background: #000;
  display: inline-block;
  box-shadow: 2px 2px #000;
}
.h_1 hr {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  border-width: 1px 0;
}

.h_2 {
  color: #000;
}
.h_3 {
  color: #000;
}
hr.hr_h_3 {
  border-top: 1px solid #ccc;
  border-width: 1px 0 0;
}

.h_4 {
  color: #000;
  border-left: 2px solid #000;
  padding-left: 0.7072135785rem;
}

.h_5 {
  color: #000;
}

.pnkz ul li {
  font-size: 0.7072135785rem;
  color: #222;
  display: inline-block;
}
.pnkz ul li::after {
  margin-left: 0.3537136108rem;
  content: "〉";
}
.pnkz ul li:last-child::after {
  content: none;
}

.book_cat ul li {
  display: inline-block;
}
.book_cat ul li:not(:last-child)::after {
  content: " 〉";
  margin-left: 4px;
}

.book_tags li {
  display: inline-block;
}

.book_count {
  display: inline-block;
  padding: 0 2px 0 3px;
  border-radius: 4px;
  font-size: 0.7072135785rem;
  transform: translateY(-1px);
}
.book_count::before {
  content: "(";
}
.book_count::after {
  content: ")";
}

.bloc_side_nav .body {
  border-top: 2px solid #000;
}
.bloc_side_nav .list_link ul {
  margin-left: 1rem;
}

.blc_search form {
  border: 2px solid #000;
  border-radius: 4px;
  position: relative;
}
.blc_search form input[type=image] {
  position: absolute;
  top: calc(50% - 0.5em);
  width: 1.1em;
  height: 1em;
}
.blc_search form input[type=text] {
  width: calc(100% - 1.5em);
  min-width: 120px;
  padding: 1px 0.5em;
  font-size: 1.414rem;
}
@media (min-width: 768px) {
  .blc_search form input[type=text] {
    font-size: 1rem;
  }
}

.sec_book_relation_link .inner {
  border-bottom: 2px solid #000;
}

.sec_book_cat_select_link .inner {
  border-top: 2px solid #000;
}
.sec_book_cat_select_link .inner ul > li > ul {
  margin-top: 0.5001510456rem;
  padding-left: 0.7072135785rem;
}
.sec_book_cat_select_link .inner ul > li > ul > li {
  display: inline-block;
  margin-top: 0.5001510456rem;
}

.pagination .page-item a[aria-label=Last] span, .pagination .page-item a[aria-label=Next] span, .pagination .page-item a[aria-label=Previous] span, .pagination .page-item a[aria-label=First] span {
  background-position: center center no-repeat;
  background-repeat: no-repeat;
  background-size: contain;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
}

.pagination .page-item a {
  border-radius: 4px;
  line-height: 1em;
  display: block;
}
.pagination .page-item a:hover {
  background-color: #fff;
  border-radius: 4px;
}
.pagination .page-item a[aria-label=First] span {
  background-image: url(/shindai-books/img/common/i_arrow_w_l.svg);
}
.pagination .page-item a[aria-label=Previous] span {
  background-image: url(/shindai-books/img/common/i_arrow_l.svg);
}
.pagination .page-item a[aria-label=Next] span {
  background-image: url(/shindai-books/img/common/i_arrow_r.svg);
}
.pagination .page-item a[aria-label=Last] span {
  background-image: url(/shindai-books/img/common/i_arrow_w_r.svg);
}
.pagination .page-item.active a {
  background-color: #000;
  color: #8DC1BF;
  border-radius: 4px;
}
.pagination .page-item span {
  display: block;
}

.sec_mv {
  background: url("/shindai-books/img/top/bg_mv_sp.svg") no-repeat center 0;
  background-size: contain;
}
@media (min-width: 768px) {
  .sec_mv {
    background: url("/shindai-books/img/top/bg_mv_pc.svg") no-repeat center 0;
    background-size: contain;
  }
}
.sec_mv .inner {
  height: 40vh;
  max-height: 500px;
  min-height: 300px;
}

.sec_book_list .col_item {
  transition: all 0.5s ease-out;
}
.sec_book_list .col_item .img {
  border: 2px solid #000;
  border-radius: 4px;
  overflow: hidden;
  transition: all 0.5s ease-out;
  background: #fff;
  height: 60vw;
  max-height: 380px;
}
@media (min-width: 768px) {
  .sec_book_list .col_item .img {
    height: 28vw;
  }
}
@media (min-width: 980px) {
  .sec_book_list .col_item .img {
    height: 26vw;
  }
}
.sec_book_list .col_item .img img {
  -o-object-fit: contain;
     object-fit: contain;
  width: 100%;
  transition: all 0.5s ease-out;
}
.sec_book_list .col_item:hover {
  transform: translateY(-2px);
}
.sec_book_list .col_item:hover .img {
  transform: scale(1.005, 1.005);
  box-shadow: 0 2px 2px #6F9695;
}
.sec_book_list .col_item:hover .img img {
  transform: scale(1.02, 1.02);
}
.sec_book_list .book_cat {
  display: inline-block;
  font-size: 0.7072135785rem;
  border: 1px solid #000;
  padding: 1px 0.7072135785rem;
  border-radius: 4px;
}
.sec_book_list .book_ttl span {
  display: inline;
  background: #fff;
}
.sec_book_list .book_ttl span::before {
  content: "";
  display: block;
  z-index: -1;
}
.sec_book_list dl.book_authors,
.sec_book_list dl.book_publisher {
  display: flex;
}
.sec_book_list dl.book_authors dt,
.sec_book_list dl.book_publisher dt {
  width: 4em;
}
.sec_book_list dl.book_authors dd,
.sec_book_list dl.book_publisher dd {
  width: calc(100% - 4em);
}

.book_cat_list_top .col_item {
  transition: all 0.5s ease-out;
}
.book_cat_list_top .col_item .img {
  box-shadow: 0;
  border: 2px solid #000;
  border-radius: 50%;
  overflow: hidden;
  transition: all 0.5s ease-out;
}
.book_cat_list_top .col_item .img img {
  width: 100%;
  transition: all 0.5s ease-out;
}
.book_cat_list_top .col_item:hover {
  transform: translateY(-2px);
}
.book_cat_list_top .col_item:hover .img {
  transform: scale(1.02, 1.02);
  box-shadow: 0 2px 2px #6F9695;
}
.book_cat_list_top .col_item:hover .img img {
  transform: scale(1.02, 1.02);
}

.book_header .book_img img {
  border-radius: 4px;
}
.book_header .book_ttl span {
  display: inline;
  background: #fff;
}
.book_header .book_ttl span::before {
  content: "";
  display: block;
  z-index: -1;
}

.book_info {
  border-top: 2px solid #000;
  border-bottom: 1px solid #000;
}
.book_info > ul {
  border-bottom: 1px solid #000;
}
.book_info > ul > li {
  display: inline;
  margin-top: 0.5001510456rem;
  margin-bottom: 0.5001510456rem;
}
.book_info > ul > li.book_info_head {
  padding-left: 0.5001510456rem;
}
.book_info > ul > li.book_info_body {
  border-left: 1px solid #000;
  padding-left: 1rem;
}

.book_introduction p, .sec_plain p {
  margin-top: 1.414rem;
}
.book_introduction > ul > li, .sec_plain > ul > li {
  margin-top: 1rem;
}
.book_introduction > ul > li ul, .sec_plain > ul > li ul {
  margin-left: 1rem;
}
.book_introduction hr, .sec_plain hr {
  border-top: 1px solid #000;
}

.book_sns_share .col_wrap {
  justify-content: flex-start;
}
@media (min-width: 768px) {
  .book_sns_share .col_wrap {
    justify-content: flex-end;
  }
}

.sec_plain p img {
  max-width: 100%;
}

.categories_list_head {
  border-bottom: 2px solid #000;
}

.book_list_search {
  border-bottom: 1px solid #6F9695;
}
.book_list_search .body p span {
  background-color: #f5f8dd;
}

.delighter.delighter-bt > * {
  opacity: 0;
  transform: translateY(8px);
}
.delighter.delighter-bt.started > * {
  opacity: 1;
  transform: translateY(0);
  transition-duration: 0.8s;
  transition-timing-function: ease-out;
}
.delighter.delighter-bt.started.ended > * {
  transform: translateY(0);
}

.delighter.delighter-fade {
  opacity: 0;
}
.delighter.delighter-fade.started {
  opacity: 1;
  transition-duration: 1.2s;
  transition-timing-function: ease;
}
.delighter.delighter-fade.started.ended {
  opacity: 1;
}

.delighter.delighter-ls * {
  opacity: 0;
  letter-spacing: -0.2em;
}
.delighter.delighter-ls.started * {
  opacity: 1;
  letter-spacing: 0em;
  transition-duration: 0.8s;
  transition-timing-function: ease-out;
}
.delighter.delighter-ls.started.ended * {
  opacity: 1;
  letter-spacing: 0em;
}

/* Added for Drupal 2024/09/10 */
.text-align-center {
  text-align: center; 
}
.text-align-right {
  text-align: right; 
}
.text-align-justify {
  text-align: justify; 
}
