@charset "UTF-8";
/* ▼▼▼ トップインタビュー
====================================================== */
#main {
  position: relative;
  z-index: 1;
  overflow: hidden;
}

.subject_ttl {
  font-size: 32px;
  font-family: "Jost", sans-serif;
  font-weight: 500;
  line-height: 1.11;
}
.subject_ttl span {
  margin-top: 30px;
  display: block;
  font-size: 50px;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: bold;
}
.subject_ttl span:nth-child(2) {
  margin-left: 2em;
}
@media screen and (max-width: 767px) {
  .subject_ttl {
    font-size: 18px;
  }
  .subject_ttl span {
    margin-top: 10px;
    font-size: 28px;
  }
}

.sub_ttl {
  display: inline-block;
  background: url(../img/interview/brackets_left.svg) no-repeat top left/auto, url(../img/interview/brackets_right.svg) no-repeat bottom right/auto;
  padding: 10px 34px;
  margin-bottom: 25px;
  font-size: 36px;
  line-height: 1.5;
}
.sub_ttl > span {
  border-bottom: 1px dashed currentColor;
}
.sub_ttl > span .brackets {
  padding: 0 0.8em 0 0.5em;
  position: relative;
}
.sub_ttl > span .brackets::before {
  content: "〈";
  position: absolute;
  top: 0;
  left: -0.5em;
}
.sub_ttl > span .brackets::after {
  content: "〉";
  position: absolute;
  right: -0.2em;
}
@media screen and (max-width: 767px) {
  .sub_ttl > span .brackets {
    padding: 0 0.5em;
  }
  .sub_ttl > span .brackets::after {
    right: -0.5em;
  }
}
@media screen and (max-width: 767px) {
  .sub_ttl {
    background-size: 23px, 23px;
    padding: 10px 18px 14px 15px;
    font-size: 25px;
  }
  .sub_ttl.sp_width {
    max-width: 296px;
  }
}

.dots_ttl {
  margin-bottom: 30px;
  padding-left: 25px;
  font-size: 28px;
  line-height: 1.52;
  position: relative;
}
@media screen and (max-width: 767px) {
  .dots_ttl {
    margin-bottom: 20px;
    padding-left: 22px;
    font-size: 25px;
  }
}
.dots_ttl::before {
  content: "";
  background: currentColor;
  border-radius: 50%;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 16px;
  left: 0;
}

.bg_ttl {
  background: #F0F7F9;
  padding: 19px;
  font-size: 24px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .bg_ttl {
    padding: 12px;
    font-size: 22px;
    line-height: 1.41;
  }
}

.txt {
  font-weight: 500;
  line-height: 1.75;
  font-size: 16px;
}

.mv {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 18px 50px;
  margin-bottom: 80px;
}
.mv h1 {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  max-width: 550px;
  margin-top: 6vw;
}
.mv .main_img {
  margin-right: min((-100vw + 1060px) / 2, -19px);
  border-radius: 13px 0 0 13px;
  aspect-ratio: 632/392;
  width: 100%;
  min-height: 265px;
  overflow: hidden;
}
.mv .main_img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 900px) {
  .mv {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .mv h1 {
    width: 100%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    margin: 0;
  }
  .mv .main_img {
    margin-left: 48px;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    aspect-ratio: 307/212;
    min-height: 0;
  }
  .mv .main_img img {
    -o-object-position: top 50% left 5%;
       object-position: top 50% left 5%;
  }
}
@media screen and (max-width: 767px) {
  .mv {
    margin-bottom: 45px;
  }
  .mv .main_img {
    border-radius: 7px 0 0 7px;
    width: max(92%, 307px);
    margin-left: auto;
  }
}

.interview_contents {
  width: min(100%, 1098px);
  padding: 0 19px 85px;
  border-radius: 10px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .interview_contents {
    padding-bottom: 40px;
  }
}

.profile {
  display: grid;
  grid-template-columns: 312px auto;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 20px 39px;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(10px);
  border-radius: 20px;
  width: min(100%, 900px);
  margin: 0 auto 40px;
  padding: 32px 60px;
}
@media screen and (max-width: 767px) {
  .profile {
    grid-template-columns: 100%;
    padding: 25px 20px;
  }
  .profile .txt {
    line-height: 1.5;
  }
}
.profile .img {
  width: 100%;
  aspect-ratio: 312/234;
}
@media screen and (max-width: 767px) {
  .profile .img {
    aspect-ratio: 298/173;
  }
}
.profile .img img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.profile .name {
  border-bottom: 1px dashed currentColor;
  margin-bottom: 27px;
  padding-bottom: 27px;
  font-size: 28px;
  font-weight: bold;
}
.profile .name span {
  font-size: 20px;
  padding-right: 1em;
}
@media screen and (max-width: 767px) {
  .profile .name {
    margin-bottom: 20px;
    padding-bottom: 22px;
    font-size: 20px;
  }
  .profile .name span {
    font-size: 14px;
  }
}

.introduction {
  display: grid;
  grid-template-columns: 550px 1fr;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 25px 39px;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .introduction {
    grid-template-columns: 100%;
    margin-bottom: 32px;
  }
}
.introduction h2 {
  margin-bottom: 19px;
  color: rgba(173, 189, 204, 0.33);
  font-family: "Jost", sans-serif;
  font-size: 73px;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .introduction h2 {
    font-size: 44px;
  }
}
.introduction .txt {
  font-size: 19px;
}
@media screen and (max-width: 767px) {
  .introduction .txt {
    font-size: 16px;
  }
}

.item_wrap {
  display: grid;
  gap: 88px 0;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(10px);
  border-radius: 10px;
  padding: 80px;
}
@media screen and (max-width: 767px) {
  .item_wrap {
    padding: 40px 18px;
  }
}
.item_wrap .interview_item.grid {
  display: grid;
  gap: 54px 0;
}
.item_wrap .img_col {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 12px 20px;
  background: #fff;
  padding: 24px 18px;
}
@media screen and (max-width: 767px) {
  .item_wrap .img_col {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 24px 10px;
    margin: 0 -20px;
  }
  .item_wrap .img_col div {
    width: 100%;
  }
}
.item_wrap .flex_warp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 24px;
}
@media screen and (max-width: 767px) {
  .item_wrap .flex_warp {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .item_wrap .flex_warp .txt_wrap {
    width: 100% !important;
  }
}
.item_wrap .flex_warp .txt_wrap {
  -ms-flex-negative: 0;
      flex-shrink: 0;
}
.item_wrap .flex_warp.flex_item01 .txt_wrap {
  width: 46%;
}
@media screen and (max-width: 767px) {
  .item_wrap .flex_warp.flex_item01 {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}
.item_wrap .flex_warp.flex_item02 {
  margin-bottom: 30px;
}
.item_wrap .flex_warp.flex_item02 .txt_wrap {
  width: 56%;
}
.item_wrap .img.full {
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .item_wrap .img.full {
    margin-top: 25px;
  }
}
.item_wrap .img.round {
  border-radius: 20px;
  border: 3px solid #fff;
  overflow: hidden;
}
.item_wrap .img p {
  margin-top: 8px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .item_wrap .img p {
    margin-left: -10px;
    margin-right: -10px;
  }
}
.item_wrap .img p small {
  display: block;
  font-size: 12px;
  font-weight: normal;
  text-align: center;
}

.circle_wrap_top {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: -1;
}
.circle_wrap_top .circle {
  aspect-ratio: 1/1;
  position: absolute;
  overflow: hidden;
}
.circle_wrap_top .circle svg {
  width: 100%;
  height: 100%;
  fill: none;
}
.circle_wrap_top .circle svg circle {
  stroke-width: 90;
  stroke-dasharray: 1433;
  stroke-dashoffset: 1433;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}
.circle_wrap_top .circle.circle1 {
  width: 361px;
  top: -200px;
  left: 70px;
}
@media screen and (max-width: 767px) {
  .circle_wrap_top .circle.circle1 {
    width: 159px;
    top: -88px;
    left: 0;
  }
}
.circle_wrap_top .circle.circle2 {
  width: 430px;
  top: -60px;
  left: -85px;
}
@media screen and (max-width: 767px) {
  .circle_wrap_top .circle.circle2 {
    width: 189px;
    top: -20px;
    left: -50px;
  }
}
.circle_wrap_top .circle.circle3 {
  width: 267px;
  top: 0;
  right: 13px;
}
@media screen and (max-width: 767px) {
  .circle_wrap_top .circle.circle3 {
    width: 142px;
    top: 15px;
    right: -25px;
  }
}
.circle_wrap_top .circle.circle4 {
  width: 316px;
  top: 33%;
  left: 10%;
}
@media screen and (max-width: 767px) {
  .circle_wrap_top .circle.circle4 {
    width: 189px;
    top: 645px;
    left: -110px;
  }
}
.circle_wrap_top .circle.circle5 {
  width: 430px;
  top: 36%;
  left: -110px;
}
@media screen and (max-width: 767px) {
  .circle_wrap_top .circle.circle5 {
    width: 267px;
    top: 700px;
    left: -84px;
  }
}
.circle_wrap_top .circle.circle6 {
  width: 245px;
  top: 48%;
  right: -77px;
  left: auto;
  bottom: auto;
}
@media screen and (max-width: 767px) {
  .circle_wrap_top .circle.circle6 {
    width: 142px;
    top: 755px;
    right: -76px;
  }
}

.circle_area {
  position: absolute;
  top: 18.5%;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .circle_area {
    top: 1260px;
  }
}

.circle_wrap {
  height: 5338px;
  top: 0;
}
@media screen and (max-width: 767px) {
  .circle_wrap {
    top: 0;
    height: 2500px;
  }
}
.circle_wrap .circle {
  aspect-ratio: 1/1;
  position: absolute;
  overflow: hidden;
}
.circle_wrap .circle svg {
  width: 100%;
  height: 100%;
  fill: none;
}
.circle_wrap .circle svg circle {
  stroke-width: 72;
  stroke-dasharray: 1433;
  stroke-dashoffset: 1433;
  -webkit-transform: rotate(-90deg);
          transform: rotate(-90deg);
  -webkit-transform-origin: 50% 50%;
          transform-origin: 50% 50%;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle svg circle {
    stroke-width: 100;
  }
}
.circle_wrap .circle.circle7 {
  width: 410px;
  top: 250px;
  right: -270px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle7 {
    width: 159px;
    top: 78px;
    right: -107px;
    z-index: 3;
  }
}
.circle_wrap .circle.circle8 {
  width: 487px;
  right: -180px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle8 {
    width: 184px;
    top: 0;
    right: -86px;
  }
}
.circle_wrap .circle.circle9 {
  width: 376px;
  top: 8%;
  left: -75px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle9 {
    width: 154px;
    top: 10%;
    left: -30px;
  }
}
.circle_wrap .circle.circle10 {
  width: 446px;
  top: 10%;
  left: -295px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle10 {
    width: 134px;
    top: 12.5%;
    left: -55px;
  }
}
.circle_wrap .circle.circle11 {
  width: 410px;
  top: 22.5%;
  right: -195px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle11 {
    width: 159px;
    top: 23%;
    right: -80px;
  }
}
.circle_wrap .circle.circle12 {
  width: 487px;
  top: 19.5%;
  right: -15px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle12 {
    width: 184px;
    top: 20%;
    right: -37px;
  }
}
.circle_wrap .circle.circle13 {
  width: 433px;
  top: 42%;
  left: -240px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle13 {
    width: 162px;
    top: 41.5%;
    left: -50px;
    z-index: 3;
  }
}
.circle_wrap .circle.circle14 {
  width: 526px;
  top: 38%;
  left: -85px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle14 {
    width: 187px;
    top: 38%;
    left: -40px;
  }
}
.circle_wrap .circle.circle15 {
  width: 433px;
  top: 59%;
  right: -300px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle15 {
    width: 159px;
    top: 64%;
    right: -80px;
  }
}
.circle_wrap .circle.circle16 {
  width: 526px;
  top: 54%;
  right: -200px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle16 {
    width: 183px;
    top: 61%;
    right: -37px;
  }
}
.circle_wrap .circle.circle17 {
  width: 433px;
  top: 74%;
  left: -75px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle17 {
    width: 162px;
    top: 83%;
    left: -50px;
  }
}
.circle_wrap .circle.circle18 {
  width: 526px;
  top: 71%;
  left: -320px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle18 {
    width: 187px;
    top: 79.5%;
    left: -40px;
  }
}
.circle_wrap .circle.circle19 {
  width: 410px;
  right: -300px;
  bottom: 85px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle19 {
    display: none;
  }
}
.circle_wrap .circle.circle20 {
  width: 487px;
  right: -218px;
  bottom: 255px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle20 {
    display: none;
  }
}
.circle_wrap .circle.circle21 {
  width: 405px;
  left: -300px;
  bottom: -130px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle21 {
    display: none;
  }
}
.circle_wrap .circle.circle22 {
  width: 481px;
  left: -144px;
  bottom: 0px;
}
@media screen and (max-width: 767px) {
  .circle_wrap .circle.circle22 {
    display: none;
  }
}

.circle_wrap_top .circle.circle1 svg circle, .circle_wrap .circle.circle1 svg circle {
  stroke: #7DC2FF;
}

.circle_wrap_top .circle.circle9 svg circle, .circle_wrap .circle.circle9 svg circle {
  stroke: #7DC2FF;
}

.circle_wrap_top .circle.circle13 svg circle, .circle_wrap .circle.circle13 svg circle {
  stroke: #7DC2FF;
}

.circle_wrap_top .circle.circle21 svg circle, .circle_wrap .circle.circle21 svg circle {
  stroke: #7DC2FF;
}

.circle_wrap_top .circle.circle2 svg circle, .circle_wrap .circle.circle2 svg circle {
  stroke: #FFE924;
}

.circle_wrap_top .circle.circle8 svg circle, .circle_wrap .circle.circle8 svg circle {
  stroke: #FFE924;
}

.circle_wrap_top .circle.circle14 svg circle, .circle_wrap .circle.circle14 svg circle {
  stroke: #FFE924;
}

.circle_wrap_top .circle.circle20 svg circle, .circle_wrap .circle.circle20 svg circle {
  stroke: #FFE924;
}

.circle_wrap_top .circle.circle3 svg circle, .circle_wrap .circle.circle3 svg circle {
  stroke: #FFC024;
}

.circle_wrap_top .circle.circle10 svg circle, .circle_wrap .circle.circle10 svg circle {
  stroke: #FFC024;
}

.circle_wrap_top .circle.circle15 svg circle, .circle_wrap .circle.circle15 svg circle {
  stroke: #FFC024;
}

.circle_wrap_top .circle.circle22 svg circle, .circle_wrap .circle.circle22 svg circle {
  stroke: #FFC024;
}

.circle_wrap_top .circle.circle4 svg circle, .circle_wrap .circle.circle4 svg circle {
  stroke: #F3756D;
}

.circle_wrap_top .circle.circle11 svg circle, .circle_wrap .circle.circle11 svg circle {
  stroke: #F3756D;
}

.circle_wrap_top .circle.circle17 svg circle, .circle_wrap .circle.circle17 svg circle {
  stroke: #F3756D;
}

.circle_wrap_top .circle.circle5 svg circle, .circle_wrap .circle.circle5 svg circle {
  stroke: #96EE94;
}

.circle_wrap_top .circle.circle7 svg circle, .circle_wrap .circle.circle7 svg circle {
  stroke: #96EE94;
}

.circle_wrap_top .circle.circle18 svg circle, .circle_wrap .circle.circle18 svg circle {
  stroke: #96EE94;
}

.circle_wrap_top .circle.circle19 svg circle, .circle_wrap .circle.circle19 svg circle {
  stroke: #96EE94;
}

.circle_wrap_top .circle.circle6 svg circle, .circle_wrap .circle.circle6 svg circle {
  stroke: #FE92A4;
}

.circle_wrap_top .circle.circle12 svg circle, .circle_wrap .circle.circle12 svg circle {
  stroke: #FE92A4;
}

.circle_wrap_top .circle.circle16 svg circle, .circle_wrap .circle.circle16 svg circle {
  stroke: #FE92A4;
}