.profile .intro {
  padding-top: min(6.944vw, 100px);
  margin-bottom: min(5vw, 72px);
}
@media only screen and (max-width: 779px) {
  .profile .intro {
    padding-top: 7.702vw;
    margin-bottom: 11.553vw;
  }
}
.profile .intro .left {
  height: min(48.611vw, 700px);
  background: url(/assets/img/profile/profile_img01.jpg) no-repeat center right;
  background-size: contain;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -webkit-flex-direction: column;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media only screen and (max-width: 779px) {
  .profile .intro .left {
    height: auto;
    padding-top: 100.128vw;
    background-position: center top;
  }
}
.profile .intro .left h2 {
  font-size: min(1.389vw, 20px);
  font-weight: 700;
  margin-bottom: 1em;
}
@media only screen and (max-width: 779px) {
  .profile .intro .left h2 {
    font-size: 3.081vw;
    width: 70.603vw;
    margin: 0 auto 1em;
  }
}
.profile .intro .left h3 {
  width: min(30.139vw, 434px);
}
@media only screen and (max-width: 779px) {
  .profile .intro .left h3 {
    width: 70.603vw;
    margin: 0 auto;
  }
}
.profile .intro .left h4 {
  color: #095ca8;
  font-size: min(1.875vw, 27px);
  font-weight: 700;
  padding-top: 1em;
}
@media only screen and (max-width: 779px) {
  .profile .intro .left h4 {
    font-size: 4.108vw;
    width: 70.603vw;
    margin: 0 auto;
  }
}
.profile .intro__02 h2 {
  font-size: min(4.167vw, 60px);
  font-weight: 500;
  color: #095ca8;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -webkit-align-items: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  margin-bottom: min(1.389vw, 20px);
}
@media only screen and (max-width: 779px) {
  .profile .intro__02 h2 {
    font-size: 10.27vw;
  }
}
.profile .intro__02 h2 span {
  font-size: min(1.667vw, 24px);
  color: #333;
  padding-left: 1em;
}
@media only screen and (max-width: 779px) {
  .profile .intro__02 h2 span {
    font-size: 4.878vw;
  }
}
.profile .intro__02 dl {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  margin-bottom: min(5.556vw, 80px);
}
@media only screen and (max-width: 779px) {
  .profile .intro__02 dl {
    margin-bottom: 8.986vw;
  }
}
.profile .intro__02 dl dt, .profile .intro__02 dl dd {
  padding: min(1.736vw, 25px) 0;
  border-bottom: 1px solid #eeeeee;
  line-height: 1.8;
}
@media only screen and (max-width: 779px) {
  .profile .intro__02 dl dt, .profile .intro__02 dl dd {
    font-size: 3.594vw;
    padding: 0.8em 0;
  }
}
.profile .intro__02 dl dt:last-of-type, .profile .intro__02 dl dd:last-of-type {
  border: none;
}
.profile .intro__02 dl dt {
  width: min(10.417vw, 150px);
  color: #095ca8;
}
@media only screen and (max-width: 779px) {
  .profile .intro__02 dl dt {
    border-bottom: none;
    width: 100%;
    padding-bottom: 0;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    -webkit-align-items: baseline;
        -ms-flex-align: baseline;
            align-items: baseline;
  }
}
.profile .intro__02 dl dt span {
  font-size: min(1.111vw, 16px);
}
@media only screen and (max-width: 779px) {
  .profile .intro__02 dl dt span {
    font-size: 3.081vw;
  }
}
.profile .intro__02 dl dd {
  width: calc(100% - min(10.417vw, 150px));
}
@media only screen and (max-width: 779px) {
  .profile .intro__02 dl dd {
    width: 100%;
    padding-top: 0.5em;
  }
}
.profile .intro__02 dl dd a {
  color: #095ca8;
  text-decoration: underline;
}
.profile .intro__03 {
  margin-bottom: min(0.694vw, 10px);
}
@media only screen and (max-width: 779px) {
  .profile .intro__03 {
    margin-bottom: 3.851vw;
  }
}
.profile .intro__03 h2 {
  margin-bottom: min(3.333vw, 48px);
}
@media only screen and (max-width: 779px) {
  .profile .intro__03 h2 {
    margin-bottom: 5.135vw;
  }
}
.profile .intro__03 ul {
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}
.profile .intro__03 ul li {
  width: min(22.222vw, 320px);
  margin-right: min(2.083vw, 30px);
  margin-bottom: min(2.083vw, 30px);
}
@media only screen and (max-width: 779px) {
  .profile .intro__03 ul li {
    width: 42.875vw;
    margin-right: 0;
    margin-bottom: 5.135vw;
  }
}
.profile .intro__03 ul li:nth-child(3), .profile .intro__03 ul li:last-child {
  margin-right: 0;
}
@media only screen and (max-width: 779px) {
  .profile .intro__03 ul li:nth-child(3), .profile .intro__03 ul li:last-child {
    margin-right: 3.851vw;
  }
}
@media only screen and (max-width: 779px) {
  .profile .intro__03 ul li:nth-child(odd) {
    margin-right: 3.851vw;
  }
}
@media only screen and (max-width: 779px) {
  .profile .intro__03 ul li:last-child {
    margin-right: 0;
  }
}
.profile .intro__03 ul li figcaption {
  line-height: 1.8;
  padding-top: 0.5em;
}
@media only screen and (max-width: 779px) {
  .profile .intro__03 ul li figcaption {
    font-size: 3.594vw;
  }
}
.profile .intro__04 {
  text-align: center;
}
.profile .intro__04 p {
  padding: 0 min(1.389vw, 20px);
}
@media only screen and (max-width: 779px) {
  .profile .intro__04 p {
    padding: 0;
  }
}
.profile .intro__04__before {
  position: relative;
  top: min(4.861vw, 70px);
}
@media only screen and (max-width: 779px) {
  .profile .intro__04__before {
    position: static;
  }
}
.profile .intro__04__after {
  background-color: #095ca8;
  padding: min(7.917vw, 114px) 0;
}
@media only screen and (max-width: 779px) {
  .profile .intro__04__after {
    padding: 7.702vw 5.135vw;
  }
}