main {
  letter-spacing: 0.05em;
  line-height: 1.8;
}

/* .row-topm .text-right img {
  max-height: 440px;
  object-fit: cover;
  width: 67%;
  height: 100%;
  object-position: 50% 20%;

  border-radius: 24px;
} */

h2 {
  font-family: "Noto Sans", sans-serif;
  letter-spacing: 0.05em;
}

.thepage .art h2 {
  font-weight: 500;
  margin-block: 24px;
  text-align: left;
}



section {
  line-height: 1.8;
  margin-block: 88px;
}

.has-bg-color {
  background-color: #f2f2f2;
  padding-block: 48px;
}

.has-bg-color.qa {
  background-color: #fff7d6;
}

section > .inner {
  margin-inline: auto;
  width: min(90%, 1180px);
}

.inner:not(.has-image) {
  width: min(90%, 880px);
}

.has-image {
  display: grid;
  gap: 48px;
  grid-template-columns: 1fr 1fr;
  grid-template-areas: "image text";
}

.has-image .text {
  grid-area: text;
  
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.has-image .image {
  grid-area: image;
}

.has-image.reverse {
  grid-template-areas: "text image";
}

.has-image img {
  border-radius: 24px;
  justify-self: center;
}


@media (width < 768px) {
  section {
    margin-block: 32px;
  }

  .has-image {
    gap: 8px;
    grid-template-areas: none;
    grid-template-columns: 1fr;
  }

  .has-image.reverse {
    grid-template-areas: none;
  }

  .has-image .image {
    grid-area: unset;
  }

  .has-image .text {
    grid-area: unset;
  }

  .thepage .art h2 {
    margin-top: 16px;
  }

  .sp-top-image img {
    border-radius: 24px;
    /* display: block; */
    /* height: calc((100vw - 30px) * 0.75); */
    /* object-fit: cover; */
    /* object-position: 50% 20%; */
    /* width: 100%; */
  }
}

.btm-iv .thumb.p01 {
    background-image: url(../img/newgrads/senior/interview_011_2026.png);
}

.btm-iv .thumb.p02 {
    background-image: url(../img/newgrads/senior/interview_021_2026.png);
}

.btm-iv .thumb.p03 {
    background-image: url(../img/newgrads/senior/interview_031_2026.png);
}

.btm-iv .thumb.p04 {
    background-image: url(../img/newgrads/senior/interview_041_2026.png);
}

.btm-iv .thumb.p05 {
    background-image: url(../img/newgrads/senior/interview_051_2026.png);
}

.thumb {
  display: grid;
  gap: 5%;
  grid-template-columns: 30% 65%;
  grid-template-rows: 55% 40%;
  margin-inline: auto;
  width: min(90%, 1080px);
}

.thumb picture {
  grid-column: 2/3;
  grid-row: 1/3;
}

.thumb img {
  border-bottom-right-radius: min(6vw, 80px);
  border-top-right-radius: min(6vw, 80px); 
}

.thumb .title {
  color: #3fa5f5;
  font-family: "Hiragino Mincho ProN", 游明朝, YuMincho, "Sawarabi Mincho", serif;
  position: relative;
}

.thumb .title p {
  background-color: rgb(255 255 255 / .8);
  bottom: 0;
  font-size: min(3.5vw, 40px);
  margin: 0;
  line-height: 1.5;
  padding: 20px 0 20px 1em;
  position: absolute;
  text-align: left;
  text-indent: -1em;
  word-break: keep-all;
  white-space: nowrap;
  width: auto;
}

.thumb .name p {
  text-align: right;
}


.thumb .name-sub {
  margin-bottom: 2vw;
}

.thumb .name-main {
  font-size: 22px;
}

.thumb .name span {
  display: block;
  font-size: 0.64em;
}

.thepage .sec.first {
  padding-bottom: 0;
}

.d-u360 {
  display: none;
}

@media (width < 768px) {
  .thumb {
    display: block;
    position: relative;
  }

  .thumb .title {
    font-family: inherit;
    left: 0.5em;
    position: absolute;
    top: 27vw;
    transform: translateY(-50%);
  }

  .thumb img {
    border-radius: 24px;
    height: calc(90vw * 0.6);
    object-fit: cover;
    object-position: 50% 25%;
    width: 100%;
  }

  .thumb .title p {
    position: static;
    background-color: transparent;
    bottom: auto;
    font-size: max(3vw, 16px);
    padding: 8px 8px 8px 0.5em;
    text-indent: -0.5em;
  }

  .thumb .name {
    margin-top: 16px;
  }

  #i1 {
    padding-inline: 1em;
  }
}

@media (width <= 480px) {
  .d-u360 {
    display: block;
  }
}