body {
  font-family: "Helvetica Neue",
    Arial,
    "Hiragino Kaku Gothic ProN",
    "Hiragino Sans",
    "Noto Sans JP",
    Meiryo,
    sans-serif;
  line-height: 1.8;
  font-size: 0.95rem;
}

a {
  text-decoration: none;
}

p {
  margin-bottom: 2rem;
}

.lineup p {
  margin-bottom: 0.2rem;
}

article p {
  margin-bottom: 0.8rem;
}

.card-body p {
  margin-bottom: 0;
}

h1 {
  font-family: "Playfair Display", Georgia, "Times New Roman", serif;
  font-size: 2.8rem;
  font-weight: 600;
  margin-bottom: 0;
}

header {
  padding-bottom: 0;
}

h2 {
  font-family: "Lora", "Hiragino Mincho ProN", "Yu Mincho", serif;
  font-size: 1.8rem;
  font-weight: bold;
  border-bottom: 1px solid #ccc;
  padding-bottom: 0.5rem;
  margin-bottom: 0;
}

.published {
  text-align: right;
  font-size: 0.9rem;
  padding-top: 0.2rem;
  margin-bottom: 1.5rem;
  color: #666;
}

h3 {
  font-size: 1.25rem;
  font-weight: bold;
  margin-bottom: 1.0rem;
  margin-top: 2.0rem;
}

h4 {
  font-size: 1.1rem;
  font-weight: bold;
}

h5 {
  font-size: 0.95rem;
  font-weight: medium;
}

h6 {
  font-size: 0.9rem;
  font-weight: medium;
}

.lead {
  font-weight: bold;
}

blockquote {
  font-size: 1.0em;
  line-height: 1.5rem;
  border-left: 4px solid #ccc;
  padding-left: 1rem;
}

blockquote p {
  margin-bottom: 1.3rem;
}

code {
  font-size: 1.0rem;
  background-color: #f8f9fa;
  padding: 0.2rem 0;
  border-radius: 5px;
}

code pre {
  font-size: 1.0rem;
  background-color: #f8f9fa;
  padding: 0.2rem 0.4rem;
  border-radius: 5px;
}

.bd-placeholder-img {
  font-size: 1.125rem;
  text-anchor: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

@media (min-width: 768px) {
  .bd-placeholder-img-lg {
    font-size: 3.5rem;
  }
}

.b-example-divider {
  width: 100%;
  height: 3rem;
  background-color: rgba(0, 0, 0, .1);
  border: solid rgba(0, 0, 0, .15);
  border-width: 1px 0;
  box-shadow: inset 0 .5em 1.5em rgba(0, 0, 0, .1), inset 0 .125em .5em rgba(0, 0, 0, .15);
}

.b-example-vr {
  flex-shrink: 0;
  width: 1.5rem;
  height: 100vh;
}

.bi {
  vertical-align: -.125em;
  fill: currentColor;
}

.nav-scroller {
  position: relative;
  z-index: 2;
  height: 2.75rem;
  overflow-y: hidden;
}

.nav-scroller .nav {
  display: flex;
  flex-wrap: nowrap;
  padding-bottom: 1rem;
  margin-top: -1px;
  overflow-x: auto;
  text-align: center;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
}

.btn-bd-primary {
  --bd-violet-bg: #712cf9;
  --bd-violet-rgb: 112.520718, 44.062154, 249.437846;

  --bs-btn-font-weight: 600;
  --bs-btn-color: var(--bs-white);
  --bs-btn-bg: var(--bd-violet-bg);
  --bs-btn-border-color: var(--bd-violet-bg);
  --bs-btn-hover-color: var(--bs-white);
  --bs-btn-hover-bg: #6528e0;
  --bs-btn-hover-border-color: #6528e0;
  --bs-btn-focus-shadow-rgb: var(--bd-violet-rgb);
  --bs-btn-active-color: var(--bs-btn-hover-color);
  --bs-btn-active-bg: #5a23c8;
  --bs-btn-active-border-color: #5a23c8;
}

.bd-mode-toggle {
  z-index: 1500;
}

footer h3 {
  margin-top: 0;
  margin-bottom: 0.5rem;
}

footer p {
  margin-bottom: 0.3rem;
}


/* stylelint-disable stylistic/selector-list-comma-newline-after */

.blog-header-logo {
  font-family: "Playfair Display", Georgia, "Times New Roman", serif
    /*rtl:Amiri, Georgia, "Times New Roman", serif*/
  ;
  font-size: 2.25rem;
}

.blog-header-logo:hover {
  text-decoration: none;
}

.flex-auto {
  flex: 0 0 auto;
}

.h-250 {
  height: 250px;
}

@media (min-width: 768px) {
  .h-md-250 {
    height: 250px;
  }
}

/* Pagination */
.blog-pagination {
  margin-bottom: 4rem;
}

/*
* Blog posts
*/
.blog-post {
  margin-bottom: 4rem;
}

.blog-post-meta {
  margin-bottom: 1.25rem;
  color: #727272;
}