@charset "UTF-8";
@import url(//fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap);
@import url(//fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap);
.ja {
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
}

.container {
  max-width: 1030px;
  padding-left: 15px;
  padding-right: 15px;
  margin-left: auto;
  margin-right: auto;
}

.str-main {
  font-family: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
}

@media (min-width: 768px) {
  .d-md-none {
    display: none;
  }
}

.fw-700 {
  font-weight: 700;
}

/***** 各ページごと *****/
@media (min-width: 768px) {
  #mainVisual {
    background: url(/assets/img/investment_policy/organization/teams/index/mv_bg_md.png) no-repeat center bottom/cover;
  }
}
#mainVisual picture {
  display: block;
}
#mainVisual img {
  width: 100%;
}
@media (min-width: 768px) {
  #mainVisual img {
    width: min(1380px, 0.0763358779vw * 1380);
  }
}
#mainVisual .mv_inner .bnr_block {
  display: none;
}
@media (min-width: 768px) {
  #mainVisual .mv_inner {
    max-width: 1420px;
    padding: 0 15px;
    text-align: center;
    justify-content: center;
    align-content: center;
    margin-left: auto;
    margin-right: auto;
    position: relative;
  }
  #mainVisual .mv_inner .bnr_block {
    display: block;
    position: absolute;
    width: calc(100% - 30px);
    height: min(210px, 0.0763358779vw * 210);
    bottom: min(25px, 0.0763358779vw * 25);
    left: 50%;
    transform: translateX(-50%);
  }
  #mainVisual .mv_inner .bnr_block ul {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: min(10px, 0.0763358779vw * 10);
  }
  #mainVisual .mv_inner .bnr_block ul li {
    width: calc((100% - min(30px, 0.0763358779vw * 30)) / 4);
    position: relative;
  }
  #mainVisual .mv_inner .bnr_block ul li .team_name {
    position: absolute;
    top: min(24px, 0.0763358779vw * 24);
    left: 50%;
    transform: translateX(-50%);
    font-size: min(18px, 0.0763358779vw * 18);
    color: #ffffff;
    line-height: 1;
    white-space: nowrap;
  }
  #mainVisual .mv_inner .bnr_block ul li ul {
    position: absolute;
    bottom: min(10px, 0.0763358779vw * 10);
    right: min(10px, 0.0763358779vw * 10);
    width: 50%;
    display: block;
  }
  #mainVisual .mv_inner .bnr_block ul li ul li {
    width: 100%;
    text-align: right;
    color: #ffffff;
    font-size: min(13px, 0.0763358779vw * 13);
  }
  #mainVisual .mv_inner .bnr_block ul li ul li a {
    text-decoration: underline;
    color: #ffffff;
  }
}

#sec01 {
  padding-top: calc(0.1333333333vw * 60);
  padding-bottom: calc(0.1333333333vw * 90);
}
@media (min-width: 768px) {
  #sec01 {
    padding-top: min(70px, 0.0763358779vw * 70);
    padding-bottom: min(100px, 0.0763358779vw * 100);
  }
}
#sec01 p {
  font-size: calc(0.1333333333vw * 28);
  line-height: 1.8;
}
@media (min-width: 768px) {
  #sec01 p {
    font-size: min(18px, 0.0763358779vw * 18);
    text-align: center;
  }
}

.sec_h3 {
  font-size: calc(0.1333333333vw * 40);
  font-weight: 500;
  position: relative;
  font-family: "Noto Serif JP", "Hiragino Mincho ProN", "Yu Mincho", YuMincho, serif;
  line-height: 2;
  padding-left: calc(0.1333333333vw * 30);
  margin-bottom: calc(0.1333333333vw * 30);
}
@media (min-width: 768px) {
  .sec_h3 {
    padding-left: min(20px, 0.0763358779vw * 20);
    margin-bottom: min(30px, 0.0763358779vw * 30);
    font-size: min(32px, 0.0763358779vw * 32);
  }
}
.sec_h3:before {
  content: "";
  display: block;
  width: calc(0.1333333333vw * 6);
  height: calc(0.1333333333vw * 50);
  background-color: #811faa;
  position: absolute;
  left: 0;
  top: calc(0.1333333333vw * 15);
}
@media (min-width: 768px) {
  .sec_h3:before {
    width: min(6px, 0.0763358779vw * 6);
    top: min(15px, 0.0763358779vw * 15);
    height: min(38px, 0.0763358779vw * 38);
  }
}
.sec_h3:after {
  content: "";
  display: block;
  width: 100%;
  height: calc(0.1333333333vw * 10);
  background: url(/assets/img/investment_policy/organization/teams/index/dot_sm.png) repeat-x center/auto 100%;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media (min-width: 768px) {
  .sec_h3:after {
    background-image: url(/assets/img/investment_policy/organization/teams/index/dot_md.png);
    height: min(7px, 0.0763358779vw * 7);
  }
}
.sec_h3.ttl01 {
  letter-spacing: -0.05em;
}
.sec_h3.ttl02:before {
  background-color: #23772b;
}
.sec_h3.ttl03:before {
  background-color: #a83526;
}
.sec_h3.ttl04:before {
  background-color: #ea9510;
}
.sec_h3.ttl05:before {
  background-color: #0072bb;
}
.sec_h3.ttl06:before {
  background-color: #05aad3;
}
.sec_h3.ttl07:before {
  background-color: #f88379;
}

#sec02 .txt01 {
  font-size: calc(0.1333333333vw * 28);
}
@media (min-width: 768px) {
  #sec02 .txt01 {
    font-size: min(16px, 0.0763358779vw * 16);
  }
}
#sec02 .txt02 {
  font-size: calc(0.1333333333vw * 24);
  margin-top: calc(0.1333333333vw * 25);
}
@media (min-width: 768px) {
  #sec02 .txt02 {
    font-size: min(16px, 0.0763358779vw * 16);
    margin-top: min(35px, 0.0763358779vw * 35);
  }
}
#sec02 .txt02 .text_link {
  text-decoration: underline;
  color: #811faa;
}
#sec02 .team_block {
  padding-bottom: calc(0.1333333333vw * 100);
}
@media (min-width: 768px) {
  #sec02 .team_block {
    padding-bottom: min(90px, 0.0763358779vw * 90);
  }
}
#sec02 .team_block.block02 .txt02 .text_link {
  color: #23772b;
}
#sec02 .team_block.block03 .txt02 .text_link {
  color: #a83526;
}
#sec02 .team_block.block04 .txt02 .text_link {
  color: #ea9510;
}
#sec02 .team_block.block05 .txt02 .text_link {
  color: #0072bb;
}
#sec02 .team_block.block06 .txt02 .text_link {
  color: #05aad3;
}
#sec02 .team_block.block07 .txt02 .text_link {
  color: #f88379;
}
#sec02 ul {
  display: flex;
  flex-direction: column;
  gap: calc(0.1333333333vw * 30);
  margin-top: calc(0.1333333333vw * 60);
}
@media (min-width: 768px) {
  #sec02 ul {
    flex-direction: row;
    gap: min(60px, 0.0763358779vw * 60);
    margin-top: min(30px, 0.0763358779vw * 30);
  }
}
#sec02 ul li {
  width: 100%;
}
@media (min-width: 768px) {
  #sec02 ul li {
    width: calc((100% - min(60px, 0.0763358779vw * 60)) / 2);
  }
}
#sec02 ul li a {
  display: block;
  border-radius: 10px;
  overflow: clip;
}
#sec02 ul li a img {
  transition: transform 0.5s ease;
  width: 100%;
}
@media (min-width: 768px) {
  #sec02 ul li a:hover img {
    transform: scale(1.1);
  }
}/*# sourceMappingURL=index.css.map */