@charset "utf-8";

/* margin */
.editor-styles-wrapper {
  padding-bottom: 5rem;
}
.editor-styles-wrapper * {
  /* margin: 0 1rem; */
}
.editor-styles-wrapper h2,
.editor-styles-wrapper h3,
.editor-styles-wrapper h4,
.editor-styles-wrapper h5,
.editor-styles-wrapper h6,
.editor-styles-wrapper ul,
.editor-styles-wrapper ol,
.editor-styles-wrapper li,
.editor-styles-wrapper figure,
.editor-styles-wrapper table,
.editor-styles-wrapper thead,
.editor-styles-wrapper tbody,
.editor-styles-wrapper tr,
.editor-styles-wrapper th,
.editor-styles-wrapper td,
.editor-styles-wrapper div,
.editor-styles-wrapper a {
  margin-left: 0;
  margin-right: 0;
}
.editor-styles-wrapper strong,
.editor-styles-wrapper em,
.editor-styles-wrapper mark,
.editor-styles-wrapper s,
.editor-styles-wrapper p > a {
  margin-left: 0.25em;
  margin-right: 0.25em;
}

.editor-styles-wrapper h2,
.editor-styles-wrapper h3,
.editor-styles-wrapper h4,
.editor-styles-wrapper h5,
.editor-styles-wrapper h6,
.editor-styles-wrapper p,
.editor-styles-wrapper figure {
  margin-top: 2.5rem;
}

/* heading */
.wp-block-post-title {
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.66;
  letter-spacing: 0.16em;
  margin: 0.5em 0 2.5rem;
}

.editor-styles-wrapper h2,
.editor-styles-wrapper h2 * {
  font-size: 1.25rem;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: 0.16em;
  margin: 2.5rem 0;
  width: 100%;
}

.editor-styles-wrapper h3,
.editor-styles-wrapper h3 * {
  font-size: 1rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.16em;
  margin: 2.5rem 0;
}

.editor-styles-wrapper h4,
.editor-styles-wrapper h4 * {
  font-size: 1rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.16em;
  margin: 2.5rem 0;
}

.editor-styles-wrapper h5,
.editor-styles-wrapper h5 *,
.editor-styles-wrapper h6,
.editor-styles-wrapper h6 * {
  font-size: 1rem;
  font-weight: 700;
  line-height: 2;
  letter-spacing: 0.16em;
  margin: 2.5rem 0;
}

/* paragraph */
.editor-styles-wrapper p {
  margin-top: 2.5rem;
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.16em;
  clear: both;
  overflow: hidden;
}
.editor-styles-wrapper p > strong {
  font-weight: bold;
}
.editor-styles-wrapper p > em {
  font-style: italic;
}

/* text alignment */
.editor-styles-wrapper .has-text-align-left {
  text-align: left;
}
.editor-styles-wrapper .has-text-align-center {
  text-align: center;
}
.editor-styles-wrapper .has-text-align-right {
  text-align: right;
}

/* list */
.editor-styles-wrapper ol, .editor-styles-wrapper ul {
  list-style-type: none;
  padding-left: 0;
  margin: 2rem 1em 0;
}
.editor-styles-wrapper ol > li > ol, .editor-styles-wrapper ul > li > ul {
  margin: 0;
}
.editor-styles-wrapper li {
  font-size: 1rem;
  line-height: 2;
  letter-spacing: 0.16em;
  margin-top: 0.5em;
}

/* unordered list */
.editor-styles-wrapper ul li,
.editor-styles-wrapper ul > li > ul > li,
.editor-styles-wrapper ul > li > ul > li > ul > li,
.editor-styles-wrapper ul > li > ul > li > ul > li > ul > li {
  padding-left: 1em;
  text-indent: -1em;
}

.editor-styles-wrapper ul li::before {
  content: "";
  display: inline-block;
  background-color: #4f4f4f;
  width: 0.5em;
  height: 0.5em;
  border-radius: 50%;
  margin-right: 0.5em;
  vertical-align: middle;
}

.editor-styles-wrapper ul > li > ul > li::before {
  content: "";
  display: inline-block;
  background-color: transparent;
  width: 0.5em;
  height: 0.5em;
  border: 2px solid #4f4f4f;
  border-radius: 50%;
  margin-right: 0.5em;
  vertical-align: middle;
}
.editor-styles-wrapper ul > li > ul > li > ul > li::before {
  content: "";
  display: inline-block;
  background-color: #4f4f4f;
  width: 0.4em;
  height: 0.4em;
  border-radius: 0;
  margin-right: 0.5em;
  vertical-align: middle;
}
.editor-styles-wrapper ul > li > ul > li > ul > li > ul > li::before {
  content: "";
  display: inline-block;
  background-color: transparent;
  width: 0.4em;
  height: 0.4em;
  border: 2px solid #4f4f4f;
  margin-right: 0.5em;
  vertical-align: middle;
  /* width: 140px; */
}

/* ordered list */
.editor-styles-wrapper ol {
  counter-reset: item 0;
}
.editor-styles-wrapper ol li,
.editor-styles-wrapper ol > li > ol > li,
.editor-styles-wrapper ol > li > ol > li > ol > li,
.editor-styles-wrapper ol > li > ol > li > ol > li > ol > li {
  padding-left: 1em;
  text-indent: -0.5em;
}
.editor-styles-wrapper ol li::before {
  counter-increment: item 1;
  content: counter(item) '.';
  display: inline-block;
  font-size: 1rem;
}

.editor-styles-wrapper ol > li > ol > li {
  margin-left: 1em;
}

/* link */
.editor-styles-wrapper a {
  color: #4f4f4f;
}
.editor-styles-wrapper a:hover {
  text-decoration: underline;
}
/* link icon */


/* table */
.editor-styles-wrapper table {
  width: 100%;
  border-width: 1px 0 0 1px;
  border-style: solid;
  border-color: #ddd;
  border-spacing: 0;
}

.editor-styles-wrapper table th {
  padding: 1em 0.6em;
  font-weight: 700;
  border-width: 0 1px 1px 0;
  border-style: solid;
  border-color: #ddd;
  background-color: #fff;
  width: 140px;;
  font-size: 0.875rem;
}

.editor-styles-wrapper table td {
  padding: 0.5em;
  border-width: 0 1px 1px 0;
  border-style: solid;
  border-color: #ddd;
  font-size: 0.875rem;
}
@media screen and (min-width: 834px) {
  .editor-styles-wrapper table th {
    font-size: 1rem;
  }
  .editor-styles-wrapper table td {
    font-size: 1rem;
  }
}

.wp-block-table {
  margin: 20px 0;
  overflow-x: scroll;
  -ms-overflow-style: none;
  /* IE, Edge 対応 */
  scrollbar-width: none;
  /* Firefox 対応 */
}

.wp-block-table::-webkit-scrollbar {
  /* Chrome, Safari 対応 */
  display: none;
}

/* table responsive */

.wp-block-table table td, .wp-block-table table th {
  white-space: nowrap;
}

/* table stripe */

.wp-block-table.is-style-stripes td, .wp-block-table.is-style-stripes th {
  border-color: #ddd;
}

.editor-styles-wrapper .is-style-stripes table tr:nth-child(2n-1) {
  background-color: #f9f9f9;
}

.editor-styles-wrapper .is-style-stripes-with-th table tr:nth-child(2n-1) {
  background-color: #f9f9f9;
}

.editor-styles-wrapper .is-style-stripes-with-th table tr th {
  background-color: transparent;
}

/* image */
.editor-styles-wrapper img {
  width: auto;
  max-width: 100%;
  height: auto;
  margin: 5px 0;
  display: block;
}
@media screen and (min-width: 834px) {
  .editor-styles-wrapper img {
    width: auto;
    margin: 10px 0;
  }
  .editor-styles-wrapper figure.alignleft img {
    float: left;
  }
  .editor-styles-wrapper figure.aligncenter img {
    text-align: center;
    margin: 0 auto;
  }
  .edtor-styles-wrapper figure.alignright img {
    float: right;
  }
}



/* column */
/* .wp-block-columns {
    border: 1px solid #ddd;
}

@media (min-width: 782px) {
  .wp-block-column:not(:last-child) {
    border-right: 1px solid #ddd;
  }
} */
.wp-block-column {
  flex-grow: 1;
  min-width: 0;
  word-break: break-word;
  overflow-wrap: break-word;
}

.wp-block-columns {
  display: flex;
  margin-bottom: 1.75em;
  flex-wrap: wrap;
}

.wp-block-columns p {
  height: 100%;
  padding-left: 1em;
  padding-right: 1em;
  display: flex;
  align-items: center;
  margin: 0;
}

@media screen and (min-width: 834px) {
  .wp-block-columns {
    flex-wrap: nowrap;
  }
  .wp-block-column {
    flex-basis: 0;
    flex-grow: 1;
  }
}

/* blockquote */
.wp-block-quote {
  border-left: 2px solid #999;
  overflow-wrap: break-word;
  background-color: #f9f9f9;
  padding: 1em;
  margin-top: 2.5rem;
  position: relative;
}
/*
.wp-block-quote::after {
  content: '\0201c';
  position: absolute;
  top: 4px;
  left: 12px;
  font-size: 1.25rem;
  color: #999;
}
*/
.wp-block-quote p {
  margin-top: 0;
}
.wp-block-quote cite {
  display: block;
  margin-top: 0.8em;
  text-align: right;
}

/* gallery */
/*
.wp-block-group.gallery > * {
  float: left;
  max-width: 100%;
  margin-bottom: 20px;
  margin-right: 20px;
}
@media (min-width:600px) {
  .wp-block-group.gallery > * {

  }
}
*/

/* button */
.wp-block-button {
}

.wp-block-button .wp-block-button__link {
  color: #fff;
}

/* archive詳細ページのプログラム概要 */
/** クラス overview をつけた場合 **/
.editor-styles-wrapper h2.overview {
  background-color: #eee;
  padding: 2.5rem 2.5rem 0;
  margin-bottom: 0;
}
.editor-styles-wrapper p.overview {
  background-color: #eee;
  padding: 1.5rem 2.5rem;
  margin-top: 0;
}
.editor-styles-wrapper ul.overview,
.editor-styles-wrapper ol.overview {
  background-color: #eee;
  padding: 1.5rem 2.5rem;
  margin: 0;
}

/** groupにクラスoverviewをつけた場合 **/
.wp-block-group.overview {
  background-color: #eee;
  padding: 2.5rem;
}
.wp-block-group.overview h2:first-of-type {
  margin-top: unset;
}