@charset "UTF-8";
/*======================================================================
 * PORTRAIT レイアウト
======================================================================*/
body {
  background: #d1c7e7;
}

/* --- component module main-head-block hook --- */
@media screen and (max-width: 1199px) {
  .main-head-block {
    margin-bottom: min(20vw, 120px);
  }
}
.main-head-block .__title .__site-title svg {
  fill: #fff;
  opacity: 0.2;
}
.main-head-block .__title .__page-title {
  position: absolute;
  top: 0;
  right: 60px;
  z-index: 1;
}
@media screen and (max-width: 1199px) {
  .main-head-block .__title .__page-title {
    right: 5vw;
  }
}
.main-head-block .__title .__page-title .__svg {
  width: calc(347px / 2);
}
@media screen and (max-width: 1199px) {
  .main-head-block .__title .__page-title .__svg {
    width: 14.41vw;
  }
}
.main-head-block .__title .__page-title .__svg svg {
  fill: #0039dc;
}
.main-head-block .__read-copy h2:after {
  background: #000;
}
.main-head-block .__anker-link {
  position: absolute;
  top: 350px;
  left: calc(37.91% + 45px);
  font-size: 2.4rem;
  line-height: 1.25;
}
@media screen and (max-width: 1199px) {
  .main-head-block .__anker-link {
    position: static;
    margin-top: 2em;
    padding-left: 29.58vw;
    font-size: min(4vw, 2.4rem);
  }
}
.main-head-block .__anker-link a {
  color: #fff;
  text-decoration: none;
}
@media screen and (min-width: 1200px) {
  .main-head-block .__anker-link a {
    -webkit-transition: color 0.2s linear;
    transition: color 0.2s linear;
  }
  .main-head-block .__anker-link a:hover {
    color: #0039dc;
  }
}
.main-head-block .__anker-link ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.main-head-block .__visual {
  min-height: calc(63.66vw - 30px);
  padding-left: 37.91%;
}
@media screen and (max-width: 1199px) {
  .main-head-block .__visual {
    min-height: 63.66vw;
    padding-left: 29.58vw;
  }
}
.main-head-block .logoset-pc-parts svg,
.main-head-block .logoset-sp-parts svg {
  fill: #000;
}

/*------------------------------------------------------------
 * block
------------------------------------------------------------*/
.portrait-block .__images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__images {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.portrait-block .__images .__image:nth-child(1) {
  width: 37.91%;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__images .__image:nth-child(1) {
    width: 100%;
  }
}
.portrait-block .__images .__image:nth-child(2) {
  width: 32.5%;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__images .__image:nth-child(2) {
    width: 37.08vw;
    height: 58.33vw;
  }
}
.portrait-block .__images .__image:nth-child(3) {
  width: 29.59%;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__images .__image:nth-child(3) {
    width: 33.33vw;
    height: 58.33vw;
  }
}
.portrait-block .__images .__image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
  width: 100%;
  height: 100%;
}
.portrait-block .__contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__contents {
    display: block;
  }
}
.portrait-block .__contents:before {
  display: block;
  content: "";
  width: 37.91%;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__contents:before {
    display: none;
  }
}
.portrait-block .__contents .__text {
  width: 62.09%;
  padding: 32px 60px 48px 48px;
  color: #fff;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__contents .__text {
    width: 100%;
    padding: min(10vw, 60px) 0 min(20vw, 120px) 29.59vw;
  }
}
.portrait-block .__contents .__text h2 {
  font-size: 2.4rem;
  font-weight: inherit;
  line-height: 1.25;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__contents .__text h2 {
    font-size: min(4vw, 2.4rem);
    width: auto;
  }
}
.portrait-block .__contents .__text .__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__contents .__text .__body {
    display: block;
  }
}
@media screen and (max-width: 1199px) {
  .portrait-block .__contents .__text .__body .__body-left {
    margin-bottom: min(8.33vw, 50px);
  }
}
.portrait-block .__contents .__text .__body .__body-left p {
  font-size: 1.1rem;
  line-height: 1.6;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__contents .__text .__body .__body-left p {
    font-size: clamp(1.1rem, 2.5vw, 1.5rem);
  }
}
.portrait-block .__contents .__text .__body .__body-left p.__name {
  font-size: 1.5rem;
}
@media screen and (max-width: 1199px) {
  .portrait-block .__contents .__text .__body .__body-left p.__name {
    font-size: min(1.1rem, 2.66vw, 1.6rem);
  }
}
.portrait-block .__contents .__text .__body .__body-left p:not(.__name) {
  width: calc(325px / 2);
}
@media screen and (max-width: 1199px) {
  .portrait-block .__contents .__text .__body .__body-left p:not(.__name) {
    width: 44.08vw;
  }
}
.portrait-block .__contents .__text .__body .__body-left p a {
  color: inherit;
  text-decoration: none;
}
@media screen and (min-width: 1200px) {
  .portrait-block .__contents .__text .__body .__body-left p a:hover {
    text-decoration: underline;
  }
}

#portrait01 .__images,
#portrait01 .__contents {
  background: #c06c77;
}
#portrait01 .__text {
  background: #978675;
}

#portrait02 .__images,
#portrait02 .__contents {
  background: #d3b5aa;
}
#portrait02 .__text {
  background: #304139;
}

#portrait03 .__images,
#portrait03 .__contents {
  background: #a2adcb;
}
#portrait03 .__text {
  background: #1d221d;
}

#portrait04 .__images,
#portrait04 .__contents {
  background: #657f1c;
}
#portrait04 .__text {
  background: #354739;
}

#portrait05 .__images,
#portrait05 .__contents {
  background: #2e6664;
}
#portrait05 .__text {
  background: #7f7d46;
}

#portrait06 .__images,
#portrait06 .__contents {
  background: #364fa7;
}
#portrait06 .__text {
  background: #46b1da;
}

#portrait07 .__images,
#portrait07 .__contents {
  background: #abc994;
}
#portrait07 .__text {
  background: #6d535c;
}

#portrait08 .__images,
#portrait08 .__contents {
  background: #95addb;
}
#portrait08 .__text {
  background: #703230;
}

#portrait09 .__images,
#portrait09 .__contents {
  background: #a0a39f;
}
#portrait09 .__text {
  background: #858889;
}