.dialogue_article { color: #333; line-height: 1.85; }
.dialogue_article > .inner { width: min(calc(100% - 8rem), 120rem); margin: 0 auto; padding-bottom: 8rem; }
/* common.css applies fixed positioning to every header element; this article header is content, not the site header. */
.dialogue_article__intro { position: relative !important; z-index: auto !important; height: auto !important; min-height: 0; padding: 5rem 0 4rem; border-bottom: 1px solid rgba(27,34,76,.16); }
.dialogue_article__english { margin: 0 0 1rem; color: #b18b45; font-size: 1.4rem; font-weight: 700; letter-spacing: .12em; }
.dialogue_article__intro h2 { margin: 0 0 2.5rem; color: #1b224c; font-size: 3.4rem; line-height: 1.5; }
.dialogue_article__lead { max-width: 94rem; margin: 0; font-size: 1.6rem; line-height: 2; }
.dialogue_profiles { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); grid-template-rows: auto 1fr; gap: 3rem; padding: 4rem 0 6rem; }
.dialogue_article__body > section { padding-left: 0; padding-right: 0; }
.dialogue_profile { display: grid; grid-template-rows: subgrid; grid-row: span 2; min-width: 0; margin: 0; }
.dialogue_profile__image { width: 100%; aspect-ratio: 16 / 10; overflow: hidden; background: #f7f6f2; }
.dialogue_profile__image img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center 22%; }
.dialogue_profile--takegawa .dialogue_profile__image img { object-position: center 30%; transform: scale(1.3) translateX(-16%); }
.dialogue_profile--asai .dialogue_profile__image img { object-position: center 18%; }
.dialogue_profile--okubo .dialogue_profile__image img { object-position: center 25%; transform: scale(1.4) translateX(16%); }
.dialogue_profile figcaption { display: grid; grid-template-rows: auto auto auto 1fr; padding-top: 1.5rem; }
.dialogue_profile figcaption span { display: block; color: #555; font-size: 1.3rem; line-height: 1.5; }
.dialogue_profile figcaption strong { display: block; margin-top: .35rem; font-size: 2.2rem; line-height: 1.4; }
.dialogue_profile figcaption em { display: block; color: #777; font-size: 1.2rem; font-style: normal; }
.dialogue_profile figcaption p { margin: 1.5rem 0 0; font-size: 1.3rem; line-height: 1.85; }
.dialogue_article__body { width: min(100%, 94rem); margin: 0 auto; }
.dialogue_section { margin-top: 7rem; }
.dialogue_section h3 { margin: 0 0 3rem; padding-left: 1.8rem; border-left: .4rem solid #b18b45; color: #1b224c; font-size: 2.8rem; line-height: 1.55; }
.dialogue_columns { display: grid; grid-template-columns: 1fr; gap: 3.5rem; }
.dialogue_column { min-width: 0; }
.dialogue_column--with-image { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); column-gap: 3.5rem; align-items: start; }
.dialogue_column--with-image > .speaker, .dialogue_column--with-image > p:not(.speaker) { grid-column: 1; }
.dialogue_column--with-image > img { grid-column: 2; grid-row: 1 / span 2; margin-top: 0; }
.dialogue_column--asai.dialogue_column--with-image > .speaker, .dialogue_column--asai.dialogue_column--with-image > p:not(.speaker) { grid-column: 2; }
.dialogue_column--asai.dialogue_column--with-image > img { grid-column: 1; }
.dialogue_column p { margin: 0 0 1.8rem; font-size: 1.5rem; line-height: 2; }
.dialogue_column .speaker, .dialogue_final .speaker { margin-bottom: .5rem; font-size: 1.6rem; font-weight: 700; }
.dialogue_column--takegawa .speaker, .speaker--takegawa { color: #3f93cc; }
.dialogue_column--asai .speaker { color: #ad3851; }
.dialogue_column--okubo .speaker { color: #167947; }
.dialogue_column img { display: block; width: 100%; margin-top: 2.5rem; aspect-ratio: 16 / 10; object-fit: cover; object-position: center center; }
.dialogue_group_photo { margin: 0 0 4rem; }
.dialogue_group_photo img { display: block; width: 100%; height: auto; }
.dialogue_final { margin: 3.5rem 0 0; }
.dialogue_final p { margin: 0 0 1.8rem; font-size: 1.5rem; line-height: 2; }
@media screen and (max-width: 768px) {
    .dialogue_article > .inner { width: calc(100% - 5rem); padding: 3rem 0 5rem; }
    .dialogue_article__intro { padding: 2rem 0 3.5rem; }
    .dialogue_article__english { font-size: 2.3rem; }
    .dialogue_article__intro h2 { font-size: 4rem; }
    .dialogue_article__lead, .dialogue_column p, .dialogue_final p { font-size: 2.6rem; line-height: 1.9; }
    .dialogue_profiles, .dialogue_columns { grid-template-columns: 1fr; gap: 3.5rem; }
    .dialogue_profiles { grid-template-rows: none; }
    .dialogue_profile { display: block; }
    .dialogue_column--with-image { grid-template-columns: 1fr; }
    .dialogue_column--asai.dialogue_column--with-image > .speaker, .dialogue_column--asai.dialogue_column--with-image > p:not(.speaker) { grid-column: 1; }
    .dialogue_column--with-image > img { grid-column: 1; grid-row: auto; margin-top: 1rem; }
    .dialogue_profiles { padding: 3.5rem 0 1rem; }
    .dialogue_profile figcaption span { font-size: 2.3rem; }
    .dialogue_profile figcaption strong { font-size: 3rem; }
    .dialogue_profile figcaption em { font-size: 2rem; }
    .dialogue_profile figcaption p { font-size: 2.4rem; line-height: 1.9; }
    .dialogue_section { margin-top: 5rem; }
    .dialogue_section h3 { margin-bottom: 2.5rem; font-size: 3.4rem; }
    .dialogue_column .speaker, .dialogue_final .speaker { font-size: 2.8rem; }
    .dialogue_column img { aspect-ratio: 16 / 10; margin-top: 1rem; }
}
