body { background-color: /* #322d29 */ #24211e; }
html, body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
}

/* ======================
   Margin & Padding
====================== */

.mgt10 { margin-top: 10px; }
.mgt20 { margin-top: 20px; }
.mgt30 { margin-top: 30px; }
.mgt50 { margin-top: 50px; }
.mgt80 { margin-top: 80px; }

.mg30 { margin: 30px 0; }
.mg60 { margin: 60px 0; }

.mgb30 { margin-bottom: 30px; }
.mgb60 { margin-bottom: 60px; }
.mgb100 { margin-bottom: 100px; }


/* ======================
   Decoration
====================== */

.bol {font-weight: 700; }
.idt { text-indent: 1em;}
.stx {font-size: 0.86em;}

/* ライン */
.undl { text-decoration: underline;  }

/* マーカー */
span.mkr01 {
	background: linear-gradient(transparent 25%, #8f9d34 70%);
	border-radius:2px; padding: 0 0.2em;
}
span.mkr02 {
	background: linear-gradient(transparent 25%, #FFD98D 70%);
	border-radius:2px; padding: 0 0.2em;
}
span.mkr03 {
	background: linear-gradient(transparent 25%, #55f5ff 70%);
	border-radius:2px; padding: 0 0.2em;
}
span.mkr04 {
	background: linear-gradient(transparent 25%, #990f47 70%);
	border-radius:2px; padding: 0 0.2em;
}


/* ======================
   Modal
====================== */

#imgModal {
  position: fixed;
  top: 0; left: 0;
  width: 100vw; height: 100vh;
  background-color: rgba(0, 0, 0, 0.7);
  display: none;
  align-items: center;
  justify-content: center;
  z-index: 9999;
}
#imgModal img {
  height: 50%;
  max-width: 400px;
  max-height: 400px;
  border: 4px solid #fff;
  border-radius: 8px;
  box-shadow: 0 0 20px #000;
  cursor: pointer;
}

@media screen and (min-width: 769px) {
.pc_only {
  display: block;
}
.sp_only {
  display: none;
}

}

@media screen and (max-width: 768px) {
  .pc_only {
    display: none !important;
  }
  .sp_only {
    display: block !important;
  }
#imgModal img {
  width: 70%;
  max-width: 400px;
  max-height: 400px;
  border: 4px solid #fff;
  border-radius: 8px;
  box-shadow: 0 0 20px #000;
  cursor: pointer;
}


}

