@charset "UTF-8";
:root {
  --paper:#f7f1da;
  --ink:#706e60;
  --profile:#f7e6b8;
  --content:1000px;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
  }
  
  .p-page_content__inner {
    max-width: 900px!important;
    width: 90%;
    padding: 0!important;
  }

  
.p-page_content__inner a {
  text-decoration: none!important;
}

  html {
      scroll-behavior: smooth;
    }
  
    a {
      transition: all 0.3s ease;
      text-decoration: none; 
    }
  
    .breadcrumb {
      background-color: #ebedeb;
      padding: 5px 0 10px;
    }
    
main {
  width: 100%;
  background:var(--paper);
  color:var(--ink);
  -webkit-text-size-adjust:100%;
  font-size:18px;
  line-height:1.85;
  letter-spacing:.065em;
  font-weight:400;
  margin:0 auto;
  padding:18px 0 24px;
}

h1,h2,h3,p,figure {
  margin:0;
}

h1,h2,h3 {
  font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
  font-weight:400;
  line-height:1.35;
}

h1 {
  font-size:clamp(27px,3.4vw,42px);
  letter-spacing:.025em;
  margin:24px 0 26px;
}

h2 {
  font-size:clamp(25px,2.9vw,36px);
  letter-spacing:.055em;
  margin-bottom:36px;
}

/* PCのみ改行 */
.br-pc {
  display: block;
}

/* スマホのみ改行 */
.br-sp {
  display: none;
}

@media screen and (max-width: 767px) {
  .br-pc {
    display: none;
  }

  .br-sp {
    display: block;
  }
}

.eyebrow {
  font-size:12px;
}

.series {
  font-size:17px;
  letter-spacing:.025em;
}

.date {
  display:block;
  font-size:13px;
  margin-top:6px;
}

.lead {
  margin:36px 0 38px;
}

.intro {
  margin-bottom:52px;
}

p+p {
  margin-top:23px;
}

img {
  display:block;
  width:100%;
  height:auto;
}

figcaption {
  font-size:11px;
  line-height:1.6;
  letter-spacing:.04em;
  margin-top:6px;
}

.main-art {
  margin-bottom:26px;
}

.conversation p {
  margin-bottom:23px;
}

.section {
  margin-top:96px;
}

.split {
  display:grid;
  grid-template-columns:1fr .9fr;
  gap:50px;
  align-items:start;
  margin-bottom:30px;
}

.interview-photo {
  width:46%;
  margin:48px auto 0;
}

.profile {
  background:var(--profile);
  padding:50px;
  display:grid;
  grid-template-columns:225px 1fr;
  gap:48px;
  margin-top:80px;
  align-items:start;
}

.profile h3 {
  font-size:20px;
  margin-bottom:22px;
}

.profile p {
  font-size:13px;
  line-height:1.8;
  letter-spacing:.04em;
}

@media(min-width:1400px) {
  main {
    padding-top:22px;
  }

}

@media(max-width:767px) {
  body {
    font-size:14px;
    line-height:1.95;
    letter-spacing:.045em;
  }

  main {
    width:100%;
    padding:24px 24px 28px;
  }

  h1 {
    font-size:27px;
    margin:20px 0 24px;
  }

  h2 {
    font-size:24px;
    margin-bottom:25px;
  }

  .series {
    font-size:14px;
  }

  .date {
    font-size:11px;
  }

  .lead {
    margin:28px 0 32px;
  }

  .intro {
    margin-bottom:30px;
  }

  .section {
    margin-top:58px;
  }

  .split {
    grid-template-columns:1fr;
    gap:26px;
    margin-bottom:24px;
  }

  .split figure {
    width:100%;
  }

  .conversation p {
    margin-bottom:21px;
  }

  .interview-photo {
    width:min(78%,360px);
    margin-top:32px;
  }

  .profile {
    grid-template-columns:1fr;
    gap:24px;
    padding:28px 24px;
    margin-top:48px;
  }

  .profile img {
    width:150px;
    max-width:100%;
    margin:auto;
  }

  .profile h3 {
    font-size:19px;
    margin-bottom:16px;
  }

  .profile p {
    font-size:12px;
  }

  figcaption {
    font-size:10px;
  }

}

@media(max-width:359px) {
  main {
    padding-inline:18px;
  }

  h1 {
    font-size:24px;
  }

  h2 {
    font-size:22px;
  }

  .profile {
    padding:24px 18px;
  }

}

/* プロフィール下のバナー・バックナンバーボタン */
.article-footer {
  margin-top: 64px;
  text-align: center;
}

.article-banner {
  width: 80%;
  margin-top: 50px;
  margin-inline: auto;
}

.backnumber-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 80%;
  margin-top: 80px;
  margin-bottom: 80px;
  padding: 14px 36px;
  background-color: #FFF;
  border: 1px solid var(--ink);
  color: var(--ink);
  font: inherit;
  line-height: 1.6;
  text-decoration: none;
  transition: background-color .2s, color .2s;
}

.backnumber-button:hover {
  background-color: var(--ink);
  color: var(--paper);
}

.backnumber-button:focus-visible {
  outline: 2px solid var(--ink);
  outline-offset: 4px;
}

@media (max-width: 767px) {
  .article-footer {
    margin-top: 40px;
  }

  .article-banner {
    width: 96%;
  }

  .backnumber-button {
    width: 96%;
    margin-top: 28px;
    padding: 13px 24px;
  }
}


:where(body *):has(> main.culture-page) {
  background-color: #f7f1da;
}

main.culture-page .conversation p,
main.culture-page .lead,
main.culture-page .intro {
  font-size: 18px;
}

@media (max-width: 767px) {
  main.culture-page .conversation p,
  main.culture-page .lead,
  main.culture-page .intro {
    font-size: 16px;
  }
}

main.culture-page h2 {
  font-size: clamp(30px, 3.2vw, 40px);
}

@media (max-width: 767px) {
  main.culture-page h2 {
    font-size: 24px;
  }
}


@media (min-width: 768px) {
  .p-page_content__inner main.culture-page {
    padding-inline: 40px;
  }
}

@media (max-width: 767px) {
  .p-page_content__inner {
    width: 100vw;
    max-width: none !important;
    margin-inline: calc(50% - 50vw);
    background-color: var(--paper);
  }
}
