/* 講師の紹介：左に丸い写真と名前、右に紹介文 */
.teacher {
  width: calc(var(--u) * 1152);
  margin: 0 auto;
  padding-top: calc(var(--u) * 340);
}
.teacher .ttl__en { font-size: calc(var(--u) * 40); }
.teacher__row { display: flex; align-items: flex-start; margin-top: calc(var(--u) * 28); }
.teacher__who {
  display: flex;
  align-items: flex-end;
  gap: calc(var(--u) * 20);
  width: calc(var(--u) * 576);
}
.teacher__ph {
  flex: none;
  width: calc(var(--u) * 84);
  height: calc(var(--u) * 84);
  object-fit: cover;
  border-radius: 50%;
}
.teacher__name {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  padding-bottom: calc(var(--u) * 2);
  font-size: calc(var(--u) * 36);
  line-height: 1.3;
  letter-spacing: 0.06em;
}
.teacher__kana {
  flex-basis: 100%;
  font-size: max(12px, calc(var(--u) * 14));
  line-height: 1.4;
  letter-spacing: 0.1em;
}
.teacher__part { margin-left: calc(var(--u) * 6); font-size: max(12px, calc(var(--u) * 14)); }
.teacher__txt {
  width: calc(var(--u) * 576);
  margin-top: calc(var(--u) * 48);
  font-size: max(14px, calc(var(--u) * 16));
  line-height: 1.85;
}

@media (max-width: 1023px) {
  .teacher { width: auto; max-width: 600px; padding: 140px 39px 0; }
  .teacher .ttl { align-items: center; }
  .teacher .ttl__en { font-size: 26px; }
  .teacher__row { flex-direction: column; align-items: center; margin-top: 30px; }
  .teacher__who { flex-direction: column; align-items: center; gap: 12px; width: auto; }
  .teacher__ph { width: 72px; height: 72px; }
  .teacher__name { justify-content: center; font-size: 22px; }
  .teacher__kana { text-align: center; font-size: 12px; }
  .teacher__part { font-size: 12px; }
  .teacher__txt { width: auto; margin-top: 20px; font-size: 13px; line-height: 1.9; }
}
@media (min-width: 600px) and (max-width: 1023px) {
  .teacher__txt { font-size: 15px; }
}
