.journal-single{
  padding-top: o;
  background:#fff;
}
.journal-single .journal-section .section-head {
  text-align: center;
}

.journal-single .journal-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(280px, 360px));
  justify-content: center;
  gap: 32px;
}

.journal-single .journal-card,
.journal-single .journal-card-body {
  text-align: left;
}
.journal-kv{
  position:relative;
  max-width:1240px;
  margin:0 auto;
  padding:0 28px;
}

.journal-kv img{
  width:100%;
  height:420px;
  object-fit:cover;
}

.journal-kv-copy{
  position:absolute;
  left:64px;
  bottom:48px;
  color:#fff;
}

.journal-kv-copy h1{
  font-family:"Noto Serif JP",serif;
  font-size:42px;
  line-height:1.45;
  font-weight:500;
  white-space:pre-line;
}

.journal-wrap{
  max-width:800px;
  margin:0 auto;
  padding:40px 28px 96px;
  display:block;
}

.journal-article{
  min-width:0;
}

.breadcrumbs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  font-size:12px;
  color:#777;
  margin-bottom:28px;
}

.breadcrumbs span::after{
  content:"/";
  margin-left:8px;
  color:#bbb;
}

.breadcrumbs a{
  text-decoration:none;
  color:inherit;
}

.article-header{
  margin-bottom:32px;
　position: relative;
}

.article-badge{
  display: inline-block;
  margin-bottom: 14px;
  padding: 6px 12px;
  background: #b99247;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1;
  letter-spacing: .08em;
  border-radius: 999px;
}

.article-meta{
  font-size:12px;
  letter-spacing:.08em;
  color:#9a9a9a;
  margin-bottom:12px;
}

.article-title{
  font-family:"Noto Serif JP",serif;
  font-size:38px;
  line-height:1.5;
  font-weight:500;
  margin-bottom:18px;
  color:#111;
}

.article-lead{
  font-size:15px;
  line-height:2;
  color:#444;
}

.toc-box{
  border:1px solid #e6e1d7;
  padding:28px;
  margin:0 0 40px;
  background:#faf9f5;
}

  .article-subhead{
  margin: 28px 0 12px;
  font-family: "Noto Serif JP", serif;
  font-size: 22px;
  line-height: 1.7;
  font-weight: 500;
  color: #111;
  }

.toc-title{
  font-family:"Noto Serif JP",serif;
  font-size:18px;
  margin-bottom:16px;
}

.toc-box ol{
  margin:0;
  padding-left:18px;
}

.toc-box li{
  margin-bottom:12px;
  line-height:1.7;
}

.toc-box a{
  color:#333;
  text-decoration:none;
}

.article-body img{
  width:100%;
  height:auto;
  margin:0 0 36px;
}

.article-body h3{
  font-family:"Noto Serif JP",serif;
  font-size:28px;
  font-weight:500;
  line-height:1.55;
  margin:52px 0 18px;
  color:#111;
}

.article-body h3[id]{
  scroll-margin-top: 120px;
}

.article-body p{
  font-size:15px;
  line-height:2.1;
  color:#333;
  margin:0 0 16px;
}

.article-body p.article-subhead{
  margin: 28px 0 12px;
  font-family: "Noto Serif JP", serif;
  font-size: 22px;
  line-height: 1.7;
  font-weight: 500;
  color: #111;
}

.journal-side{
  display:flex;
  flex-direction:column;
  gap:24px;
}

.profile-card,
.related-card{
  border:1px solid #e6e1d7;
  background:#fff;
  padding:24px;
}

.profile-card img{
  width:100%;
  margin-bottom:18px;
}

.profile-label{
  font-size:11px;
  letter-spacing:.12em;
  color:#b6903b;
  margin-bottom:8px;
}

.profile-card h3,
.related-card h3{
  font-family:"Noto Serif JP",serif;
  font-size:22px;
  font-weight:500;
  margin-bottom:12px;
}

.profile-card p,
.related-card a{
  font-size:14px;
  line-height:1.9;
  color:#444;
}

.related-card a{
  display:block;
  padding:12px 0;
  border-top:1px solid #ece7dc;
  text-decoration:none;
}

.related-card a:first-of-type{
  border-top:0;
  padding-top:0;
}

.visual-journal-grid{
  display: grid;
  grid-template-columns: repeat(2, minmax(280px, 380px));
  justify-content: center;
  gap: 32px;
}

.visual-journal-grid > a{
  display: block;
  width: 100%;
}

@media (max-width: 767px){
  .visual-journal-grid{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 980px){
  .journal-wrap{
    grid-template-columns:1fr;
  }

  .journal-side{
    order:2;
  }
}
@media (max-width: 768px) {
  .journal-single .journal-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .journal-single .journal-card {
    width: 100%;
    min-width: 0;
  }
}
@media (max-width: 640px){
  .journal-single{
    padding-top:o;
  }

  .journal-kv,
  .journal-wrap{
    padding-left:16px;
    padding-right:16px;
  }

  .journal-kv img{
    height:260px;
  }

  .journal-kv-copy{
    left:32px;
    right:32px;
    bottom:24px;
  }

  .journal-kv-copy h1{
    font-size:28px;
  }

  .article-title{
    font-size:28px;
  }

  .article-body h3{
    font-size:22px;
    margin-top:40px;
  }

  .article-body h3[id]{
    scroll-margin-top: 96px;
  }

  .article-subhead{
    font-size: 18px;
    line-height: 1.65;
  }

  .article-body p.article-subhead{
    font-size: 18px;
    line-height: 1.65;
  }

  .toc-box,
  .profile-card,
  .related-card{
    padding:18px;
  }
  .journal-single .journal-grid {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .journal-single .journal-card {
    width: 100%;
    min-width: 0;
  }
}
