/* ---------------------------------
   上余白：見出し（h2・h3）
--------------------------------- */
.h2-mt-5_5rem {
  margin-top: 5.5rem;
}

.h3-mt-1rem {
  margin-top: 1rem;
}

.h3-mt-1_5rem {
  margin-top: 1.5rem;
}

.h3-mt-2rem {
  margin-top: 2rem;
}

.h3-mt-3rem {
  margin-top: 3rem;
}

/* ---------------------------------
   上余白：本文（p）
--------------------------------- */
.p-mt-0_5rem {
  margin-top: 0.5rem;
}

.p-mt-1rem {
  margin-top: 1rem;
}

.p-mt-1_5rem {
  margin-top: 1.5rem;
}

.p-mt-2rem {
  margin-top: 2rem;
}

.p-mt-3rem {
  margin-top: 3rem;
}

.p-mt-4rem {
  margin-top: 4rem;
}

/* ---------------------------------
   上余白：目次
--------------------------------- */
.toc-mt-4rem {
  margin-top: 4rem;
}

/* ---------------------------------
   上余白：画像
--------------------------------- */
.image-mt-1rem {
  margin-top: 1rem;
}

.image-mt-1_5rem {
  margin-top: 1.5rem;
}

.image-mt-2rem {
  margin-top: 2rem;
}
.image-mt-3rem {
  margin-top: 3rem;
}

/* ---------------------------------
   上余白：表
--------------------------------- */
.table-mt-0_3rem {
  margin-top: 0.3rem;
}

.table-mt-0_5rem {
  margin-top: 0.5rem;
}

.table-mt-1rem {
  margin-top: 1rem;
}

.table-mt-2rem {
  margin-top: 2rem;
}
 .table-mt-3rem {
    margin-top: 3rem;
  }

/* ---------------------------------
   上余白：注釈・箇条書き
--------------------------------- */
.note-mt-0_3rem {
  margin-top: 0.3rem;
}

.note-mt-0_5rem {
  margin-top: 0.5rem;
}

.note-mt-1rem {
  margin-top: 1rem;
}

.note-mt-1_5rem {
  margin-top: 1.5rem;
}

.note-mt-2rem {
  margin-top: 2rem;
}

/* ---------------------------------
   上余白：引用元
--------------------------------- */
.source-mt-0_3rem {
  margin-top: 0.3rem;
}

.source-mt-0_5rem {
  margin-top: 0.5rem;
}

/* ---------------------------------
   上余白：グレー背景
--------------------------------- */
.gray-box-mt-1rem {
  margin-top: 1rem;
}

.gray-box-mt-1_5rem {
  margin-top: 1.5rem;
}

.gray-box-mt-2rem {
  margin-top: 2rem;
}

.gray-box-mt-3rem {
  margin-top: 3rem;
}

/* ---------------------------------
   記事内の基本要素
--------------------------------- */

.h2-mt-5_5rem {
  box-sizing: border-box;
  width: 100%;
  padding: 1.4rem 2.1rem;
  font-size: 2rem;
  font-weight: 500;
  background: #333;
  color: #fff;
}

.h3-mt-1rem,
.h3-mt-1_5rem,
.h3-mt-2rem,
.h3-mt-3rem {
  box-sizing: border-box;
  width: 100%;
  padding: 0.45rem 0;
  border-bottom: 1.35px solid;
  background: #fff;
  color: #000;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: inherit;
}

.article-meta {
  color: #808080;
}

.article-meta a {
  color: #00b0f0;
}

.column-image {
  display: block;
  width: 100%;
  height: auto;
}

.column-figure {
  width: 100%;
}

.toc {
  border: 1px solid #bfbfbf;
  background: #fff;
}

.toc-title {
  padding: 0.55rem 1rem;
  background: #404040;
  color: #fff;
  font-weight: 700;
  text-align: center;
}

.toc-body {
  padding: 1.25rem 1.5rem;
}

.toc ul {
  padding-left: 1.5em;
}

.text-red {
  color: #ee0000;
}

.text-blue {
  color: #0070c0;
}

.text-marker {
  background: linear-gradient(transparent 55%, #fff29a 55%);
}

.note-list {
  padding-left: 0;
  list-style: none;
}

.note-list > li,
.symbol-indent {
  box-sizing: border-box;
  padding-left: 1em;
  text-indent: -1em;
}

.note-list > li + li {
  margin-top: 0.1rem;
}

.source {
  color: #808080;
  font-size: 1.2rem;
}

.note-list-font-small {
  font-size: 1.2rem;
}

.url-break {
  overflow-wrap: anywhere;
  word-break: break-word;
}

.gray-box {
  padding: 2rem 2.5rem;
  background: #f2f2f2;
}

/* .gray-box p {
  margin: 0;
} */

.table-title {
  font-weight: 700;
  font-size: 1.05em;
}

.table-scroll {
  overflow-x: auto;
}

.column-table {
  width: 100%;
  border-collapse: collapse;
}

/* 2列表は左右を均等幅にする */
.column-table-2,
.column-table-2_none {
  table-layout: fixed;
}

.column-table-2 th,
.column-table-2 td,
.column-table-2_none th,
.column-table-2_none td {
  width: 50%;
}

/* 3列表は3列を均等幅にする */
.column-table-3 {
  table-layout: fixed;
}

.column-table-3 th,
.column-table-3 td,
.column-table-3_none th,
.column-table-3_none td {
  width: 33.333%;
}


.column-table th,
.column-table td {
  padding: 1rem 2rem;
  border: 1px solid #bfbfbf;
  text-align: left;
  vertical-align: top;
}

.column-table th {
  text-align: center;
}

/* 基本はすべて白 */
.column-table th,
.column-table td {
  background: #fff;
  color: #000;
}

/* グレー */
.column-table .table-gray {
  background: #f6f6f6;
  color: #000;
}

/* 黒 */
.column-table .table-black {
  background: #282828;
  color: #fff;
}

.column-table td p {
  margin: 0;
}

.column-table td p.note-mt-0_3rem {
  margin-top: 0.3rem;
}

.cell-note {
  font-size: 1.2rem;
}

.pc_none {
  display: none;
}

/* ---------------------------------

   スマホの表示

--------------------------------- */

@media (max-width: 767px) {
  /* ---------------------------------
     表示切り替え
  --------------------------------- */

  .pc_none {
    display: initial;
  }

  .sp_none {
    display: none;
  }

  /* ---------------------------------
     上余白：見出し（h2・h3）
  --------------------------------- */

  .h2-mt-5_5rem {
    margin-top: 6.5rem;
  }

  .h3-mt-1rem {
    margin-top: 1.5rem;
  }

  .h3-mt-1_5rem {
    margin-top: 2rem;
  }

 .h3-mt-2rem {
    margin-top: 2rem;
  }

  .h3-mt-3rem {
    margin-top: 3.5rem;
  }

  /* ---------------------------------
     上余白：本文（p）
  --------------------------------- */

  .p-mt-0_5rem {
    margin-top: 0.8rem;
  }

  .p-mt-1rem {
    margin-top: 1.5rem;
  }

  .p-mt-1_5rem {
    margin-top: 2rem;
  }

  .p-mt-2rem {
    margin-top: 2.75rem;
  }

  .p-mt-3rem {
    margin-top: 3.5rem;
  }

  .p-mt-4rem {
    margin-top: 5rem;
  }

  /* ---------------------------------
     上余白：目次
  --------------------------------- */

  .toc-mt-4rem {
    margin-top: 4rem;
  }

  /* ---------------------------------
     上余白：画像
  --------------------------------- */

  .image-mt-1rem {
    margin-top: 1.8rem;
  }

  .image-mt-1_5rem {
    margin-top: 2.25rem;
  }

  .image-mt-2rem {
    margin-top: 3.5rem;
  }
  .image-mt-3rem {
  margin-top: 4rem;
  }

  /* ---------------------------------
     上余白：表
  --------------------------------- */

  .table-mt-0_3rem {
    margin-top: 0.5rem;
  }

  .table-mt-0_5rem {
    margin-top: 0.8rem;
  }

  .table-mt-1rem {
    margin-top: 1.5rem;
  }

  .table-mt-2rem {
    margin-top: 2.75rem;
  }

   .table-mt-3rem {
    margin-top: 4rem;
  }

  /* ---------------------------------
     上余白：注釈・箇条書き
  --------------------------------- */

  .note-mt-0_3rem {
    margin-top: 0.5rem;
  }

  .note-mt-0_5rem {
    margin-top: 0.8rem;
  }

  .note-mt-1rem {
    margin-top: 1.5rem;
  }

  .note-mt-1_5rem {
    margin-top: 2rem;
  }

  .note-mt-2rem {
    margin-top: 2.75rem;
  }

  /* ---------------------------------
     上余白：引用元
  --------------------------------- */

  .source-mt-0_3rem {
    margin-top: 0.5rem;
  }

  .source-mt-0_5rem {
    margin-top: 0.8rem;
  }

  /* ---------------------------------
     上余白：グレー背景
  --------------------------------- */

  .gray-box-mt-1rem {
    margin-top: 1.5rem;
  }

  .gray-box-mt-1_5rem {
    margin-top: 2rem;
  }

  .gray-box-mt-2rem {
    margin-top: 2.75rem;
  }
  .gray-box-mt-3rem {
    margin-top: 4rem;
  }

  /* ---------------------------------
     h2
  --------------------------------- */

  .h2-mt-5_5rem {
    padding: 1.8rem 2.1rem;
    font-size: 3.1rem;
    font-weight: 500;
    line-height: inherit;
  }

  /* ---------------------------------
     h3
  --------------------------------- */

  .h3-mt-1rem,
  .h3-mt-1_5rem,
  .h3-mt-2rem,
  .h3-mt-3rem {
    padding: 0.45rem 0;
    font-size: 3rem;
    font-weight: 600;
    line-height: inherit;
  }

  /* ---------------------------------
     本文
  --------------------------------- */

  .column-main p {
    font-size: 2.75rem;
    line-height: inherit;
  }

  /* ---------------------------------
     目次
  --------------------------------- */

  .toc-title {
    padding: 0.55rem 1rem;
    font-size: inherit;
  }

  .toc-body {
    padding: 1.25rem 1.5rem;
    font-size: inherit;
    line-height: inherit;
  }

  .toc ul {
    padding-left: 1.5em;
  }

  /* ---------------------------------
     注釈・箇条書き
  --------------------------------- */

  .note-list {
    font-size: inherit;
    line-height: inherit;
  }

  .note-list > li + li {
    margin-top: 0.1rem;
  }

  .source,
  .note-list-font-small,
  .cell-note {
    font-size: 85%;
    line-height: inherit;
  }

  .table-scroll + .source,
  .table-scroll + .note-list-font-small {
    font-size: 85%;
  }

  /* ---------------------------------
     グレー背景
  --------------------------------- */

  .gray-box {
    padding: 3rem;
    font-size: 2.75rem;
    line-height: inherit;
  }

  /* ---------------------------------
     表タイトル
  --------------------------------- */

  .table-title {
    font-size: 1.05em;
    line-height: inherit;
  }

  /* ---------------------------------
     表
  --------------------------------- */

  .column-table th,
  .column-table td {
    padding: 2rem 2rem;
    font-size: inherit;
    line-height: inherit;
  }

  .column-table td p.note-mt-0_3rem {
    margin-top: 0.3rem;
  }

  /* ---------------------------------
     画像
  --------------------------------- */

  .column-figure {
    width: 100%;
  }

  /* ---------------------------------
   表
--------------------------------- */

.column-table th,
.column-table td {
  padding: 2rem 2rem;
  font-size: inherit;
  line-height: inherit;
}

.column-table td p.note-mt-0_3rem {
  margin-top: 0.3rem;
}


/* ================================
   2列表
================================ */

/* スクロールなし */
.column-table-2_none {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}


/* スクロールあり */
.column-table-2 {
  width: 600px;
  min-width: 600px;
  table-layout: fixed;
}


/* ================================
   3列表
================================ */
/* スクロールなし */
.column-table-3_none {
  width: 100%;
  min-width: 0;
  table-layout: fixed;
}

/* スクロールあり */
.column-table-3 {
  width: 750px;
  min-width: 750px;
  table-layout: fixed;
}

}
