@charset "UTF-8";
/*! ========================================
※※※※※※※※※※※※※※※※※※※※※※※※※※※
  このCSSファイルはSassから生成されていますので、
  編集しないようご注意ください。
※※※※※※※※※※※※※※※※※※※※※※※※※※※
========================================= */
@import url("https://fonts.googleapis.com/css?family=Lato:400,900");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900");
@media print {
  * {
    -webkit-print-color-adjust: exact; } }
body {
  overflow-x: hidden; }

.pcBox {
  display: inline-block !important; }
  @media screen and (max-width: 600px) {
    .pcBox {
      display: none !important; } }

.spBox {
  display: none !important; }
  @media screen and (max-width: 600px) {
    .spBox {
      display: inline-block !important; } }

.portfolio__container {
  line-height: 3.0rem;
  color: #2E4F8A;
  letter-spacing: 0.1rem;
  font-family: 'M PLUS 1p', sans-serif; }
  .portfolio__container p {
    line-height: 1.6;
    font-weight: 500 !important; }
  .portfolio__container a {
    -moz-transition: all 0.2s;
    -o-transition: all 0.2s;
    -webkit-transition: all 0.2s;
    transition: all 0.2s; }
  .portfolio__container a:hover {
    filter: alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5; }

.portfolio__kv {
  width: 100%;
  background: url("../images/kv_bg_pc.gif") top center no-repeat;
  background-size: cover; }
  @media screen and (max-width: 600px) {
    .portfolio__kv {
      background: url("../images/kv_bg_sp.gif") top center no-repeat;
      background-size: cover;
      box-sizing: 150px auto 0; } }
  .portfolio__kv .portfolio__kv--inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 30px 0 10px; }
    @media screen and (max-width: 600px) {
      .portfolio__kv .portfolio__kv--inner {
        padding: 40px 20px 40px; } }
  .portfolio__kv img {
    width: 100%;
    height: auto; }
  .portfolio__kv .portfolio__kv--btnflex {
    max-width: 1100px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 600px) {
      .portfolio__kv .portfolio__kv--btnflex {
        display: block; } }
    .portfolio__kv .portfolio__kv--btnflex .btnflex--item {
      width: 32.5%; }
      @media screen and (max-width: 600px) {
        .portfolio__kv .portfolio__kv--btnflex .btnflex--item {
          width: 100%; } }
  .portfolio__kv .btn__unker a {
    display: block;
    background: #00387D url("../images/job_arrow_white_down.png") center right 15px no-repeat;
    background-size: 20px 10px;
    color: #fff !important;
    text-align: center;
    max-width: 400px;
    padding: 30px 0;
    font-size: 1.6rem;
    font-weight: bold;
    text-decoration: none;
    margin: 30px auto 35px; }
    @media screen and (max-width: 600px) {
      .portfolio__kv .btn__unker a {
        background: #00387D url("../images/job_arrow_white_down.png") center right 10px no-repeat;
        background-size: 15px auto;
        max-width: 310px;
        padding: 20px 0;
        font-size: 1.4rem;
        margin: 12px auto 0px; } }

.portfolio__inner {
  max-width: 1000px !important;
  margin: 0 auto;
  padding: 75px 0; }
  @media screen and (max-width: 1024px) {
    .portfolio__inner {
      padding: 50px 50px;
      box-sizing: border-box; } }
  @media screen and (max-width: 600px) {
    .portfolio__inner {
      padding: 35px 20px; } }

.portfolio__main--ttl {
  font-size: 3.4rem;
  color: #2E4F8A;
  margin: 0 0 60px;
  line-height: 1.6;
  position: relative;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.4rem !important; }
  @media screen and (max-width: 600px) {
    .portfolio__main--ttl {
      font-size: 2.2rem !important;
      line-height: 1.4;
      letter-spacing: 0.2rem !important;
      margin: 0 0 40px; } }
  .portfolio__main--ttl span {
    display: block;
    font-size: 1.3rem;
    font-weight: bold;
    letter-spacing: 0.1rem !important; }
    @media screen and (max-width: 600px) {
      .portfolio__main--ttl span {
        font-size: 0.9rem !important;
        padding: 5px 0 0; } }
  .portfolio__main--ttl:before {
    content: "";
    width: 40px;
    height: 4px;
    background: #FFDC64;
    position: absolute;
    left: 50%;
    margin: 0 0 0 -20px;
    bottom: -20px; }

.portfolio__sub--ttl {
  color: #2E4F8A;
  font-size: 3.3rem;
  padding: 0 0 10px;
  border-bottom: 4px solid #2E4F8A;
  margin: 0 0 30px;
  font-weight: bold;
  line-height: 1.4; }
  @media screen and (max-width: 768px) {
    .portfolio__sub--ttl {
      font-size: 3rem; } }
  @media screen and (max-width: 600px) {
    .portfolio__sub--ttl {
      font-size: 2rem;
      border-bottom: 2px solid #2E4F8A;
      line-height: 1.3;
      margin: 0 0 15px; } }

.portfolio__sub--txt {
  font-size: 1.8rem;
  padding: 0 0 30px;
  font-weight: bold !important; }
  @media screen and (max-width: 600px) {
    .portfolio__sub--txt {
      font-size: 1.4rem !important; } }

.portfolio__banner {
  margin: 50px 0 0; }
  @media screen and (max-width: 600px) {
    .portfolio__banner {
      margin: 15px 0 0; } }
  .portfolio__banner img {
    width: 100%;
    height: auto; }

/* about */
.portfolio__shikumi {
  background: #eaf9ea url("../images/shikumi_bg.png") center bottom 140px no-repeat;
  background-size: 1337px auto; }
  @media screen and (max-width: 768px) {
    .portfolio__shikumi {
      background: #eaf9ea; } }
  .portfolio__shikumi .shikumi__chara {
    display: none; }
    @media screen and (max-width: 768px) {
      .portfolio__shikumi .shikumi__chara {
        display: block;
        width: 100%;
        text-align: center;
        margin: -10px 0 10px; }
        .portfolio__shikumi .shikumi__chara img {
          width: 70%;
          height: auto; } }
  .portfolio__shikumi .portfolio__nenkin-flex .txt {
    margin: 0 0 30px; }
    @media screen and (max-width: 600px) {
      .portfolio__shikumi .portfolio__nenkin-flex .txt {
        margin: 0; } }
  .portfolio__shikumi .portfolio__nenkin-flex .img {
    background: #fff;
    overflow: hidden;
    margin: 0 auto 20px;
    width: 80%; }
    @media screen and (max-width: 600px) {
      .portfolio__shikumi .portfolio__nenkin-flex .img {
        width: 100%;
        box-sizing: border-box; } }
    .portfolio__shikumi .portfolio__nenkin-flex .img img {
      width: 100%;
      height: auto; }

/* about */
.portfolio__about {
  margin: -85px 0 0; }
  @media screen and (max-width: 1024px) {
    .portfolio__about {
      margin: -50px 0 0; } }
  @media screen and (max-width: 600px) {
    .portfolio__about {
      margin: -35px 0 0; } }
  .portfolio__about--flex {
    display: flex;
    width: 102%;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 auto;
    padding: 0 0 20px; }
    @media screen and (max-width: 600px) {
      .portfolio__about--flex {
        display: block;
        width: 100%;
        padding: 0 0 0px; } }
  .portfolio__about--item {
    width: 31.3%;
    margin: 0 2% 50px 0;
    /*width: 46%;
    margin: 0 2% 50px 2%;
    */ }
    @media screen and (max-width: 600px) {
      .portfolio__about--item {
        width: 100%;
        margin: 0 0 30px 0; } }
    .portfolio__about--item a {
      text-decoration: none;
      display: block;
      color: #2E4F8A; }
  .portfolio__about--img img {
    width: 100%;
    height: auto;
    border: 1px solid #ddd;
    box-sizing: border-box; }
  .portfolio__about .movie {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 600px) {
      .portfolio__about .movie {
        display: block; } }
  .portfolio__about .movie__box {
    width: 48%; }
    @media screen and (max-width: 600px) {
      .portfolio__about .movie__box {
        width: 100%;
        margin: 0 0 30px 0; } }
  .portfolio__about .movie__ttl {
    text-align: center;
    margin: 20px 0 0; }
    @media screen and (max-width: 600px) {
      .portfolio__about .movie__ttl {
        margin: 10px 0 0; } }
    .portfolio__about .movie__ttl p {
      font-weight: bold;
      font-size: 1.6rem !important; }
      @media screen and (max-width: 600px) {
        .portfolio__about .movie__ttl p {
          font-size: 1.2rem !important; } }

.portfolio__youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  border: 3px solid #2E4F8A; }
  @media screen and (max-width: 600px) {
    .portfolio__youtube {
      padding-top: 55.25%;
      border: 2px solid #2E4F8A; } }

.portfolio__youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important; }

/* nenkin */
.portfolio__nenkin--flex {
  display: flex;
  width: 100%;
  justify-content: space-between;
  padding: 0; }
  @media screen and (max-width: 600px) {
    .portfolio__nenkin--flex {
      display: block;
      width: 100%;
      padding: 0 0 0px; } }
.portfolio__nenkin--item {
  width: 48%;
  /*width: 46%;
  margin: 0 2% 50px 2%;
  */ }
  @media screen and (max-width: 600px) {
    .portfolio__nenkin--item {
      width: 100%;
      margin: 0 0 30px 0; } }
  .portfolio__nenkin--item p {
    font-weight: bold;
    font-size: 1.8rem !important;
    line-height: 1.8; }
    @media screen and (max-width: 600px) {
      .portfolio__nenkin--item p {
        font-size: 1.2rem !important; } }
  .portfolio__nenkin--item a {
    text-decoration: none;
    display: block;
    color: #2E4F8A; }
  .portfolio__nenkin--item .movie__ttl {
    text-align: center;
    margin: 10px 0 0; }
    @media screen and (max-width: 600px) {
      .portfolio__nenkin--item .movie__ttl {
        margin: 10px 0 0; } }
    .portfolio__nenkin--item .movie__ttl p {
      font-weight: bold;
      font-size: 1.6rem !important; }
      @media screen and (max-width: 600px) {
        .portfolio__nenkin--item .movie__ttl p {
          font-size: 1.2rem !important; } }
.portfolio__nenkin--img img {
  width: 100%;
  height: auto;
  border: 1px solid #ddd;
  box-sizing: border-box; }

/* aruaru */
.portfolio__aruaru {
  margin: -85px 0 0; }
  @media screen and (max-width: 1024px) {
    .portfolio__aruaru {
      margin: -50px 0 0; } }
  @media screen and (max-width: 600px) {
    .portfolio__aruaru {
      margin: -35px 0 0; } }
  .portfolio__aruaru--movie {
    width: 80%;
    margin: 0 auto 30px; }
    @media screen and (max-width: 768px) {
      .portfolio__aruaru--movie {
        width: 100%; } }
  .portfolio__aruaru--flex {
    display: flex;
    width: 102%;
    justify-content: space-between;
    padding: 0;
    flex-wrap: wrap; }
    @media screen and (max-width: 600px) {
      .portfolio__aruaru--flex {
        display: block;
        width: 100%;
        padding: 0 0 0px; } }
  .portfolio__aruaru--item {
    width: 48%;
    margin: 0 0 30px 0; }
    @media screen and (max-width: 600px) {
      .portfolio__aruaru--item {
        width: 100%;
        margin: 0 0 30px 0; } }
    .portfolio__aruaru--item p {
      font-weight: bold;
      font-size: 1.8rem !important;
      line-height: 1.8; }
      @media screen and (max-width: 600px) {
        .portfolio__aruaru--item p {
          font-size: 1.2rem !important; } }
    .portfolio__aruaru--item a {
      text-decoration: none;
      display: block;
      color: #2E4F8A; }
  .portfolio__aruaru--img img {
    width: 100%;
    height: auto;
    border: 1px solid #ddd;
    box-sizing: border-box; }
  .portfolio__aruaru .movie__ttl {
    text-align: center;
    margin: 10px 0 0; }
    @media screen and (max-width: 600px) {
      .portfolio__aruaru .movie__ttl {
        margin: 10px 0 0; } }
    .portfolio__aruaru .movie__ttl p {
      font-weight: bold;
      font-size: 1.6rem !important; }
      @media screen and (max-width: 600px) {
        .portfolio__aruaru .movie__ttl p {
          font-size: 1.2rem !important; } }

/* chara */
.portfolio__chara {
  background: #fff5ee;
  /*border-bottom: 5px solid #f8c499;*/ }
  .portfolio__chara .portfolio__sub--txt {
    text-align: center; }
    @media screen and (max-width: 600px) {
      .portfolio__chara .portfolio__sub--txt {
        padding: 0 0 20px; } }
  .portfolio__chara .portfolio__chara-flex {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 600px) {
      .portfolio__chara .portfolio__chara-flex {
        display: block; } }
  .portfolio__chara .portfolio__chara-flex--item {
    width: 37%;
    border-radius: 15px;
    padding: 30px;
    box-sizing: border-box;
    background: #fff; }
    @media screen and (max-width: 600px) {
      .portfolio__chara .portfolio__chara-flex--item {
        width: 100%;
        margin: 0 0 20px;
        padding: 20px;
        border-radius: 10px; } }
    .portfolio__chara .portfolio__chara-flex--item .img {
      text-align: center;
      margin: 0 0 20px; }
      @media screen and (max-width: 600px) {
        .portfolio__chara .portfolio__chara-flex--item .img {
          margin: 20px 0 20px; } }
      .portfolio__chara .portfolio__chara-flex--item .img img {
        width: 200px;
        height: auto; }
        @media screen and (max-width: 768px) {
          .portfolio__chara .portfolio__chara-flex--item .img img {
            width: 150px; } }
        @media screen and (max-width: 600px) {
          .portfolio__chara .portfolio__chara-flex--item .img img {
            width: 40%; } }
    .portfolio__chara .portfolio__chara-flex--item .name {
      font-size: 1.6rem;
      font-weight: bold;
      text-align: center;
      margin: 0 0 10px; }
    .portfolio__chara .portfolio__chara-flex--item p {
      font-size: 1.4rem; }
  .portfolio__chara .portfolio__chara-flex--item02 {
    width: 60%;
    border-radius: 15px;
    padding: 30px;
    box-sizing: border-box;
    background: #fff; }
    @media screen and (max-width: 600px) {
      .portfolio__chara .portfolio__chara-flex--item02 {
        width: 100%;
        margin: 0 0 20px;
        padding: 20px;
        border-radius: 10px; } }
    .portfolio__chara .portfolio__chara-flex--item02 .img {
      text-align: center;
      margin: 50px 0 20px; }
      @media screen and (max-width: 600px) {
        .portfolio__chara .portfolio__chara-flex--item02 .img {
          margin: 20px 0 20px; } }
      .portfolio__chara .portfolio__chara-flex--item02 .img img {
        width: 150px;
        height: auto;
        margin: 0 10px; }
        @media screen and (max-width: 768px) {
          .portfolio__chara .portfolio__chara-flex--item02 .img img {
            width: 100px; } }
        @media screen and (max-width: 600px) {
          .portfolio__chara .portfolio__chara-flex--item02 .img img {
            width: 30%; } }
    .portfolio__chara .portfolio__chara-flex--item02 .name {
      font-size: 1.6rem;
      font-weight: bold;
      text-align: center;
      margin: 0 0 10px; }
    .portfolio__chara .portfolio__chara-flex--item02 .txt__flex {
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 600px) {
        .portfolio__chara .portfolio__chara-flex--item02 .txt__flex {
          display: block; } }
    .portfolio__chara .portfolio__chara-flex--item02 p {
      width: 47.5%;
      font-size: 1.4rem;
      letter-spacing: -0.02rem;
      padding-left: 1.4em;
      text-indent: -1.4em; }
      @media screen and (max-width: 600px) {
        .portfolio__chara .portfolio__chara-flex--item02 p {
          width: 100%;
          font-size: 1.4rem;
          letter-spacing: 0rem;
          margin: 0 0 10px; } }

/* btn footer */
.portfolio__btn {
  margin: 0 0 0; }
  @media screen and (max-width: 600px) {
    .portfolio__btn {
      margin: 0 0 0; } }
  .portfolio__btn--saiyou a {
    display: block;
    text-align: center;
    padding: 40px 0;
    margin: 0 0 50px;
    font-size: 3rem;
    text-decoration: none;
    color: #fff;
    background: #003c80 url("../images/job_saiyou_bg.svg") left bottom no-repeat;
    background-size: cover;
    font-weight: bold;
    position: relative; }
    .portfolio__btn--saiyou a::after {
      content: "";
      display: inline-block;
      width: 10px;
      height: 20px;
      background: url("../images/job_arrow_white.png") no-repeat;
      background-size: 10px 20px;
      position: absolute;
      top: 50%;
      right: 20px;
      z-index: 10;
      margin: -10px 0 0; }
    @media screen and (max-width: 600px) {
      .portfolio__btn--saiyou a {
        font-size: 1.8rem;
        padding: 30px 0;
        margin: 0 0 15px; } }
  .portfolio__btn--flex {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 600px) {
      .portfolio__btn--flex {
        display: block; } }
  .portfolio__btn--yougosyu {
    width: 48%;
    display: block;
    background: #FFDC64 url("../images/job_arrow_blue.png") center right 20px no-repeat;
    background-size: 10px 20px;
    color: #2E4F8A;
    text-decoration: none;
    padding: 35px;
    box-sizing: border-box;
    font-size: 2rem; }
    @media screen and (max-width: 600px) {
      .portfolio__btn--yougosyu {
        width: 100%;
        font-size: 1.8rem;
        padding: 25px;
        margin: 0 0 15px; } }
    .portfolio__btn--yougosyu span {
      background: url("../images/job_icon_yougo.svg") center left no-repeat;
      padding: 10px 0 10px 50px;
      font-weight: bold; }
      @media screen and (max-width: 600px) {
        .portfolio__btn--yougosyu span {
          background-size: 25px auto;
          padding: 10px 0 10px 40px; } }
  .portfolio__btn--qa {
    width: 48%;
    display: block;
    background: #FFDC64 url("../images/job_arrow_blue.png") center right 20px no-repeat;
    background-size: 10px 20px;
    color: #2E4F8A;
    text-decoration: none;
    padding: 35px;
    box-sizing: border-box;
    font-size: 2rem; }
    @media screen and (max-width: 600px) {
      .portfolio__btn--qa {
        width: 100%;
        font-size: 1.8rem;
        padding: 25px; } }
    .portfolio__btn--qa span {
      background: url("../images/job_icon_qa.svg") center left no-repeat;
      padding: 10px 0 10px 50px;
      font-weight: bold; }
      @media screen and (max-width: 600px) {
        .portfolio__btn--qa span {
          background-size: 25px auto;
          padding: 10px 0 10px 40px; } }

.btn__more a {
  display: block;
  background: #00387D url("../images/job_arrow_white.png") center right 20px no-repeat;
  background-size: 10px 20px;
  color: #fff !important;
  text-align: center;
  width: 400px;
  padding: 30px 0;
  font-size: 1.8rem;
  font-weight: bold;
  text-decoration: none;
  margin: 50px auto 50px; }
  @media screen and (max-width: 600px) {
    .btn__more a {
      background: #00387D url("../images/job_arrow_white.png") center right 10px no-repeat;
      background-size: 8px auto;
      width: 300px;
      padding: 20px 0;
      font-size: 1.4rem;
      margin: 20px auto 0px; } }

.btn__more2 {
  text-align: left;
  padding: 15px 0 15px; }
  .btn__more2 a {
    text-decoration: none;
    font-weight: 500;
    color: #002C69;
    font-size: 1.5rem;
    background: url("../images/job_icon_arrow.svg") center left no-repeat;
    background-size: 10px auto;
    padding: 0 0 0 15px;
    font-family: 'M PLUS 1p', sans-serif; }
  .btn__more2 span {
    border-bottom: 1px solid #002C69;
    padding: 0 0 5px;
    margin: 0 0 8px;
    font-weight: bold;
    display: inline-block; }

.sns__area {
  max-width: 850px;
  margin: 80px auto 0; }
  @media screen and (max-width: 600px) {
    .sns__area {
      margin: 40px 20px 0; } }
  .sns__area .sns__area--ttl {
    text-align: center;
    font-size: 2.6rem;
    font-weight: bold;
    margin: 0 0 40px;
    color: #2e4f8a; }
    @media screen and (max-width: 600px) {
      .sns__area .sns__area--ttl {
        font-size: 1.6rem;
        margin: 0 0 20px; } }
  .sns__area a {
    text-decoration: none;
    color: #2e4f8a !important;
    border: 1px solid #ddd; }
  .sns__area .bnr__youtube a {
    background: #fff;
    padding: 40px;
    display: block;
    text-align: center;
    margin: 0 0 4%; }
    @media screen and (max-width: 600px) {
      .sns__area .bnr__youtube a {
        padding: 20px;
        margin: 0 0 15px; } }
    .sns__area .bnr__youtube a span {
      background: url("../images/icon_youtube.svg") center left no-repeat;
      background-size: 50px auto;
      padding: 30px 0 30px 70px;
      font-size: 2.4rem;
      font-weight: bold; }
      @media screen and (max-width: 600px) {
        .sns__area .bnr__youtube a span {
          background: url("../images/icon_youtube.svg") center left no-repeat;
          background-size: 25px auto;
          padding: 30px 0 30px 35px;
          font-size: 1.7rem; } }
  .sns__area .bnr__flex {
    display: flex;
    justify-content: center; }
    @media screen and (max-width: 600px) {
      .sns__area .bnr__flex {
        display: block; } }
  .sns__area .bnr__x {
    width: 48%;
    text-align: center; }
    @media screen and (max-width: 600px) {
      .sns__area .bnr__x {
        width: 100%;
        margin: 0 0 15px; } }
    .sns__area .bnr__x a {
      background: #fff;
      box-sizing: border-box;
      display: block;
      padding: 30px 10px; }
      @media screen and (max-width: 600px) {
        .sns__area .bnr__x a {
          padding: 20px 10px; } }
      .sns__area .bnr__x a span {
        background: url("../images/icon_x.svg") center left 20px no-repeat;
        background-size: 35px auto;
        padding: 30px 30px 30px 70px;
        font-size: 1.6rem;
        font-weight: bold; }
        @media screen and (max-width: 600px) {
          .sns__area .bnr__x a span {
            background: url("../images/icon_x.svg") center left no-repeat;
            background-size: 20px auto;
            padding: 30px 0 30px 30px;
            font-size: 1.4rem; } }
  .sns__area .bnr__instagram {
    width: 48%;
    text-align: center; }
    @media screen and (max-width: 600px) {
      .sns__area .bnr__instagram {
        width: 100%; } }
    .sns__area .bnr__instagram a {
      background: #fff;
      box-sizing: border-box;
      display: block;
      padding: 30px 10px; }
      @media screen and (max-width: 600px) {
        .sns__area .bnr__instagram a {
          padding: 20px 10px; } }
      .sns__area .bnr__instagram a span {
        background: url("../images/icon_instagram.svg") center left 20px no-repeat;
        background-size: 35px auto;
        padding: 30px 30px 30px 70px;
        font-size: 1.6rem;
        font-weight: bold; }
        @media screen and (max-width: 600px) {
          .sns__area .bnr__instagram a span {
            background: url("../images/icon_instagram.svg") center left no-repeat;
            background-size: 20px auto;
            padding: 30px 0 30px 30px;
            font-size: 1.4rem; } }

.-large p {
  font-size: 2rem; }
.-large .movie__ttl {
  font-size: 2rem; }
.-large .portfolio__kv--txt p {
  width: 1100px;
  text-align: left;
  font-size: 2.0rem; }
.-large .portfolio__main--ttl {
  font-size: 4.4rem; }
  .-large .portfolio__main--ttl span {
    font-size: 1.6rem; }
.-large .portfolio__sub--ttl {
  font-size: 4rem !important; }
.-large .portfolio__btn--yougosyu {
  font-size: 2.8rem !important; }
.-large .portfolio__btn--qa {
  font-size: 2.8rem !important; }
.-large .portfolio__sub--txt {
  font-size: 2.4rem; }
.-large .portfolio__chara-flex--item .name,
.-large .portfolio__chara-flex--item02 .name {
  font-size: 1.8rem; }
.-large .portfolio__chara-flex--item p,
.-large .portfolio__chara-flex--item02 p {
  font-size: 1.6rem; }

.-small p {
  font-size: 1.4rem; }
.-small .movie__ttl {
  font-size: 1.4rem; }
.-small .portfolio__main--ttl {
  font-size: 2.8rem; }
  .-small .portfolio__main--ttl span {
    font-size: 1.2rem; }
.-small .portfolio__sub--ttl {
  font-size: 2.8rem !important; }
.-small .portfolio__btn--yougosyu {
  font-size: 1.6rem !important; }
.-small .portfolio__btn--qa {
  font-size: 1.6rem !important; }
.-small .portfolio__sub--txt {
  font-size: 1.6rem; }
.-small .portfolio__chara-flex--item .name,
.-small .portfolio__chara-flex--item02 .name {
  font-size: 1.4rem; }
.-small .portfolio__chara-flex--item p,
.-small .portfolio__chara-flex--item02 p {
  font-size: 1.2rem; }

/* 青背景 */
.-blue .portfolio__container {
  background: #00387d; }
  .-blue .portfolio__container p {
    color: #fff !important; }
.-blue .portfolio__chara-flex--item .name,
.-blue .portfolio__chara-flex--item02 .name {
  color: #00387d !important; }
.-blue .portfolio__chara-flex--item p,
.-blue .portfolio__chara-flex--item02 p {
  color: #00387d !important; }
.-blue .portfolio__shikumi,
.-blue .portfolio__chara {
  background: #00387d; }
.-blue .portfolio__about {
  background: #00387d url("../images/movie_bg.png") center bottom 200px no-repeat;
  background-size: 1337px auto; }
.-blue a {
  color: #fff !important; }
.-blue .portfolio__main--ttl {
  color: #fff; }
  .-blue .portfolio__main--ttl span {
    color: #fff; }
.-blue .portfolio__sub--ttl {
  color: #fff;
  border-color: #fff; }
.-blue .portfolio__btn--soshikizu a,
.-blue .btn__more a {
  background: #fff url("../images/job_arrow_blue.png") center right 20px no-repeat;
  background-size: 10px 20px;
  color: #00387d !important; }
.-blue .portfolio__btn--saiyou a {
  border: 1px solid #ddd; }
.-blue .portfolio__btn--yougosyu {
  color: #00387d !important; }
.-blue .portfolio__btn--qa {
  color: #00387d !important; }
.-blue .sns__area--ttl {
  color: #fff !important; }
.-blue .sns__area a {
  color: #2e4f8a !important; }

/* 黄背景 */
.-yellow .portfolio__container {
  background: #ffcb3e; }
  .-yellow .portfolio__container p {
    color: #000 !important; }
.-yellow .portfolio__chara-flex--item .name,
.-yellow .portfolio__chara-flex--item02 .name {
  color: #000 !important; }
.-yellow .portfolio__chara-flex--item p,
.-yellow .portfolio__chara-flex--item02 p {
  color: #000 !important; }
.-yellow .portfolio__shikumi,
.-yellow .portfolio__chara {
  background: #ffcb3e; }
.-yellow .portfolio__about {
  background: #ffcb3e url("../images/movie_bg.png") center bottom 200px no-repeat;
  background-size: 1337px auto; }
.-yellow a {
  color: #000 !important; }
.-yellow .portfolio__main--ttl {
  color: #000; }
  .-yellow .portfolio__main--ttl span {
    color: #000; }
.-yellow .portfolio__sub--ttl {
  color: #000;
  border-color: #000; }
.-yellow .portfolio__btn--soshikizu a,
.-yellow .btn__more a {
  background: #fff url("../images/job_arrow_blue.png") center right 20px no-repeat;
  background-size: 10px 20px;
  color: #00387d !important; }
.-yellow .btn__more2 a {
  background: url("../images/job_icon_arrow_black.svg") center left no-repeat;
  background-size: 10px auto; }
.-yellow .portfolio__btn--yougosyu {
  color: #00387d !important;
  background: #fff url("../images/job_arrow_blue.png") center right 20px no-repeat;
  background-size: 10px 20px; }
.-yellow .portfolio__btn--qa {
  color: #00387d !important;
  background: #fff url("../images/job_arrow_blue.png") center right 20px no-repeat;
  background-size: 10px 20px; }
.-yellow .sns__area--ttl {
  color: #00387d !important; }
.-yellow .sns__area a {
  color: #2e4f8a !important; }

/* 黒背景 */
.-black .portfolio__container {
  background: #000; }
  .-black .portfolio__container p {
    color: #fff !important; }
.-black .portfolio__chara-flex--item .name,
.-black .portfolio__chara-flex--item02 .name {
  color: #000 !important; }
.-black .portfolio__chara-flex--item p,
.-black .portfolio__chara-flex--item02 p {
  color: #000 !important; }
.-black .portfolio__shikumi,
.-black .portfolio__about,
.-black .portfolio__chara {
  background: #000; }
.-black .portfolio__about {
  background: #000 url("../images/movie_bg.png") center bottom 200px no-repeat;
  background-size: 1337px auto; }
.-black .portfolio__kv--txt {
  background: #000; }
.-black a {
  color: #fff !important; }
.-black .portfolio__main--ttl {
  color: #fff; }
  .-black .portfolio__main--ttl span {
    color: #fff; }
.-black .portfolio__sub--ttl {
  color: #fff;
  border-color: #fff; }
.-black .portfolio__btn--soshikizu a,
.-black .btn__more a {
  background: #fff url("../images/job_arrow_blue.png") center right 20px no-repeat;
  background-size: 10px 20px;
  color: #00387d !important; }
.-black .btn__more2 a {
  background: url("../images/job_icon_arrow_white.svg") center left no-repeat;
  background-size: 10px auto; }
.-black .portfolio__btn--yougosyu {
  color: #00387d !important; }
.-black .portfolio__btn--qa {
  color: #00387d !important; }
.-black .sns__area--ttl {
  color: #fff !important; }
.-black .sns__area a {
  color: #2e4f8a !important; }
