@charset "utf-8";

.portfolio_area {}

.portfolio_area .mmm {
  margin-bottom: 0 !important;
}

/*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
Header
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
.portfolio_area .area_title {
  margin-bottom:0;
  background: url(../img/portfolio/portfolio_mv_sp.jpg) center center no-repeat;
  background-size: cover;
}

/*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
記事一覧
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
.portfolio_area .post_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin:10vw 0 5vw;
}

.portfolio_area .post_list_cont {
  position: relative;
  width: 41.25vw;
  margin: 0 0 12.5vw 0;
}

.portfolio_area .post_list_cont a {
  display: block;
}

.post_list_cont .img_box {
  width: 100%;
  height: 26.25vw;
}

.post_list_cont h3 {
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.4;
  margin: 3.75vw 0 1.875vw;
}

.post_list_cont h3 span {
  display: inline-block;
 /* width: 7.96875vw;*/
  height: 4.375vw;
  padding: 0.46875vw 1.25vw 0;
  color: #ffffff;
  font-size: 0.9rem;
  font-weight: bold;
  text-align: center;
  border-radius: 3px;
  vertical-align: middle;
}
.post_list_cont h3 span.bg_movie{
  background: #f38e22;
}
.post_list_cont h3 span.bg_voice{
  background: #2bb5c1;
}

.post_list_cont .txt_box {
  width: 100%;
  height: 17.5vw;
  margin-bottom: 2.5vw;
  color: #7c7c7c;
  font-size: 1rem;
  line-height: 1.4;
}

.post_list_cont .more {
  position: absolute;
  bottom: 0;
  right: 0;
  color: #222222;
  font-size: 1rem;
  font-weight: bold;
  text-align: right;
}

.post_list_cont .more::after {
  content: '';
  display: inline-block;
  position: relative;
  width: 2.03125vw;
  height: 2.34375vw;
  margin-left: 1.875vw;
  background: url(../img/ya2.png);
  background-size: 100% auto;
}

/*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
Single
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
.portfolio_area .area_title {}

.portfolio_single {
  margin-bottom: 16.25vw;
}

.portfolio_single .post_title {
  font-size: 1.6rem;
  font-weight: 500;
  text-align: center;
  margin: 8.75vw 0 10vw;
}

.portfolio_single .img_box {
  width: 100%;
  overflow: hidden;
  margin-bottom: 3.75vw;
}

.portfolio_single .shop_url {
  font-size: 1.2rem;
  font-style: italic;
  font-weight: 500;
}

.portfolio_single .shop_url a {
  color: #7c7c7c;
  margin-left: 1.25vw;
}

.portfolio_single .single_line1 {
  width: 43.75vw;
  height: 0.3125vw;
  margin: 10.9375vw auto 12.1875vw;
  background: #e4e4e4;
}

.portfolio_txt .wtf_title {
  color: #2bb5c1;
  font-size: 1.4rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 5vw;
}

.portfolio_txt .wtf_txt {
  font-size: 1rem;
  line-height: 1.6;
  margin-bottom: 16.25vw;
}

.portfolio_area .cont_title {
  position: relative;
  font-size: 1.4rem;
  font-weight: 500;
  text-align: center;
}

.portfolio_area .cont_title span {
  position: absolute;
  top: -5vw;
  left: 0;
  right: 0;
  width: 100%;
  color: #dbdbdb;
  font-size: 2.4rem;
  font-style: italic;
  text-align: center;
  z-index: -1;
}

/*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
お客様の声
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
.voice_relate_area {
  margin-bottom: 18.9063vw;
}

.voice_relate_area .voice_inner {
  position: relative;
}

.voice_relate_area li {
  position: relative;
  margin-bottom: 18.75vw;
}

.voice_relate_area .cont_title {
  margin-bottom: 24.6875vw;
}

.voice_relate_area .voice_cont {
  position: relative;
  width: 90vw;
  padding: 8.4375vw 4.6875vw 5.3125vw;
  background: #ffffff;
  z-index: 1000;
}

.voice_cont h3 {
  position: absolute;
  top: -5vw;
  color: #d8d8d8;
  font-size: 2.8rem;
  font-style: italic;
}

.voice_cont .catch {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
  overflow: hidden;
}

.voice_cont .catch p {
  display: inline-block;
  color: #ffffff;
  font-size: 1.4rem;
  padding: 1.25vw;
  margin-bottom: 1.25vw;
  background: #2bb5c1;
  opacity: 0;
  -webkit-transition: opacity .5s ease .1s;
  transition: opacity .5s ease .1s;
  overflow: hidden;
  position: relative;
}

.voice_cont .catch.loaded p {
  opacity: 1;
}

.voice_cont .catch.loaded p::after {
  content: '';
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: #fff;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 3;
}

.voice_cont .catch.loaded p:first-child::after {
  -webkit-animation: .6s ease-in-out .1s forwards bandAnimeLast;
  animation: .6s ease-in-out .1s forwards bandAnimeLast;
}

.voice_cont .catch.loaded p:nth-child(2)::after {
  -webkit-animation: .6s ease-in-out .5s forwards bandAnimeLast;
  animation: .6s ease-in-out .5s forwards bandAnimeLast;
}

.voice_cont .catch.loaded p:nth-child(3)::after {
  -webkit-animation: .6s ease-in-out .8s forwards bandAnimeLast;
  animation: .6s ease-in-out .8s forwards bandAnimeLast;
}

.voice_cont .catch p strong {
  font-size: 1.8rem;
}

.voice_cont .catch p a {
  color: #ffffff;
}

.voice_cont .single_line1 {
  width: 43.75vw;
  height: 0.3125vw;
  margin: 8.59375vw auto 6.5625vw;
  background: #e4e4e4;
}

.voice_cont h4 {
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.4;
}

.voice_cont .txt {
  font-size: 1rem;
  line-height: 1.4;
  margin: 3.75vw 0 5vw;
}

.voice_cont .more {
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 36.25vw;
  height: 7.5vw;
  margin: 0 auto;
  border-radius: 3.75vw;
  background: #222222;
}

.voice_cont .more span {
  font-size: 0.9rem;
  font-weight: bold;
}

.voice_relate_area .voice_img {
  width: 87.1875vw;
  padding: 28.59375vw 5.15625vw 8.125vw 7.03125vw;
  margin: -22.1875vw 0 0 auto;
  background: rgba(239, 239, 239, 0.7);
}

.voice_img a {
  display: block;
  overflow: hidden;
}

.voice_img a:hover .band-change {
  background: #2bb5c1;
}

.voice_img .site_link {
  margin-bottom: 6.875vw;
}

.voice_img.p2 .site_link {
  margin-bottom: 0;
}

.voice_img .more_link {
  margin-bottom: 6.875vw;
}

.voice_img .more {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  height: 8.75vw;
  color: #d8d8d8;
  font-size: 1.3rem;
  font-style: italic;
  font-weight: 100;
  background: rgba(34, 34, 34, 1);
}

.voice_img .more::after {
  content: '';
  display: block;
  width: 2.96875vw;
  height: 1.09375vw;
  margin: 0 3.125vw 0 3.4375vw;
  background: url(../img/ya3.png) no-repeat;
  background-size: 100% auto;
}

.voice_img .site_design {
  position: relative;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 43.75vw;
  height: 7.8125vw;
  margin: 0 auto;
  border-radius: 4.375vw;
  background: #222222;
}

.voice_img .site_design span {
  font-size: 1.3rem;
  font-style: italic;
}

.voice_img .site_design::after {
  position: absolute;
  top: 3.125vw;
  right: 3.75vw;
  content: '';
  display: block;
  width: 2.96875vw;
  height: 1.09375vw;
  background: url(../img/ya3.png) no-repeat;
  background-size: 100% auto;
}

.voice_relate_area .deza1 {
  position: absolute;
  top: 22.8125vw;
  right: -4.6875vw;
  width: 53.90625vw;
  height: 79.84375vw;
  z-index: -1;
}

/*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
関連記事
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
.post_relate_area {}

.post_relate_area .cont_title {
  margin: 0 auto 8.75vw;
}

.post_relate_area ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.post_relate_area li {
  position: relative;
  width: 41.25vw;
  margin: 0 0 12.5vw 0;
}

.post_relate_area li .img_box {
  width: 100%;
  height: 26.25vw;
  overflow: hidden;
}

.post_relate_area li .cat_box {
  color: #3da853;
  font-size: 0.9rem;
  font-weight: bold;
  margin: 1.5625vw 0 0.3125vw;
}

.post_relate_area li h4 {
  font-size: 1rem;
  font-weight: bold;
  line-height: 1.4;
}

@media only screen and (min-width:1000px) {

  /*ここから====================*/
  .portfolio_area {}

  .portfolio_area .mmm {
    margin-bottom: 0 !important;
  }

  /*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
Header
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
  .portfolio_area .area_title {
    background: url(../img/portfolio/portfolio_mv_pc.jpg) center center no-repeat;
    background-size: cover;
  }

  /*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
記事一覧
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
  .portfolio_area .post_list {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 163px 32px 32px;
  }

  .portfolio_area .post_list_cont {
    width: 280px;
    margin: 0 0 72px 0;
  }

  .post_list_cont .img_box {
    height: 192px;
  }

  .post_list_cont h3 {
    font-size: 1.4rem;
    font-weight: bold;
    margin: 18px 0 14px;
  }

  .post_list_cont h3 span {
    height: 18px;
    padding: 2px 8px 0;
    font-size: 1.2rem;
  }

  .post_list_cont .txt_box {
    width: 100%;
    height: 56px;
    margin-bottom: 0;
    font-size: 1.4rem;
    line-height: 1.4;
  }

  .post_list_cont .more {
    font-size: 1.4rem;
  }

  .post_list_cont .more::after {
    content: '';
    display: inline-block;
    position: relative;
    width: 10px;
    height: 10px;
    margin-left: 8px;
    background: url(../img/ya2_pc.png) no-repeat;
    background-size: 100% auto;
  }

  /*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
Single
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
  .portfolio_single {
    margin-bottom: 80px;
  }

  .portfolio_single .post_title {
    font-size: 2.8rem;
    margin: 64px 0;
  }

  .portfolio_single .img_box {
    width: 100%;
    overflow: hidden;
    margin-bottom: 20px;
  }

  .portfolio_single .shop_url {
    font-size: 1.8rem;
  }

  .portfolio_single .shop_url a {
    margin-left: 8px;
  }

  .portfolio_single .single_line1 {
    width: 280px;
    height: 2px;
    margin: 48px auto 64px;
  }

  .portfolio_txt {
    width: 717px;
    margin: 0 auto 26px;
  }

  .portfolio_txt .wtf_title {
    font-size: 2.2rem;
    margin-bottom: 32px;
  }

  .portfolio_txt .wtf_txt {
    font-size: 1.4rem;
    line-height: 1.6;
    margin-bottom: 54px;
  }

  .portfolio_area .cont_title {
    position: relative;
    font-size: 2.2rem;
    text-align: left;
  }

  .portfolio_area .cont_title span {
    position: absolute;
    top: -26px;
    left: 0;
    right: auto;
    font-size: 4.2rem;
    text-align: left;
  }

  /*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
お客様の声
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
  .voice_relate_area {
    padding: 76px 0 67px;
    margin-bottom: 0;
    background: #f7f7f7;
  }

  .voice_relate_area .voice_inner {
    width: 960px;
    margin: 0 auto;
    z-index: 10;
  }

  .voice_relate_area li {
    position: relative;
    margin-bottom: 92px;
  }

  .voice_relate_area .cont_title {
    margin-bottom: 34px;
  }

  .voice_relate_area .voice_cont {
    position: absolute;
    top: 122px;
    width: 496px;
    padding: 32px 30px 26px 40px;
  }

  .voice_cont h3 {
    top: -24px;
    font-size: 4rem;
  }

  .voice_cont .catch p {
    font-size: 2.2rem;
    padding: 6px 7px;
    margin-bottom: 8px;
  }

  .voice_cont .catch p strong {
    font-size: 3rem;
  }

  .voice_cont .single_line1 {
    width: 152px;
    height: 1px;
    margin: 28px auto 20px;
  }

  .voice_cont h4 {
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1.6;
  }

  .voice_cont .txt {
    font-size: 1.4rem;
    line-height: 1.4;
    margin: 16px 0 32px;
  }

  .voice_cont .more {
    width: 207px;
    height: 40px;
    margin: 0 auto;
    border-radius: 20px;
  }

  .voice_cont .more span {
    font-size: 1.6rem;
    font-weight: normal;
  }

  .voice_relate_area .voice_img {
    width: 480px;
    padding: 0;
    margin: 0 0 0 auto;
    background: rgba(239, 239, 239, 0.7);
  }

  .voice_img a {
    position: relative;
  }

  .voice_img .img_box {
    width: 100%;
    height: 280px;
  }

  .voice_img .site_link {
    margin-bottom: 20px;
  }

  .voice_img.p2 .site_link {
    margin-bottom: 0;
  }

  .voice_img .more_link {
    margin-bottom: 20px;
  }

  .voice_img .more {
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 48px;
    font-size: 2.2rem;
    font-style: italic;
    font-weight: 100;
    background: rgba(34, 34, 34, 0.9);
  }

  .voice_img .more::after {
    content: '';
    display: block;
    width: 19px;
    height: 7px;
    margin: 0 20px 0 22px;
    background: url(../img/ya3.png) no-repeat;
    background-size: 100% auto;
  }

  .voice_relate_area .deza1 {
    position: absolute;
    top: 280px;
    left: -19px;
    right: auto;
    width: 499px;
    height: 287px;
    z-index: -1;
  }

  /*◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆
関連記事
◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆◆*/
  .post_relate_area {
    background: #f7f7f7;
  }

  .post_relate_area .cont_title {
    margin: 0 auto 23px;
  }

  .post_relate_area ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }

  .post_relate_area li {
    position: relative;
    width: 208px;
    margin: 0 0 32px 0;
  }

  .post_relate_area li .img_box {
    width: 100%;
    height: 128px;
    overflow: hidden;
  }

  .post_relate_area li .cat_box {
    color: #3da853;
    font-size: 1.2rem;
    font-weight: bold;
    margin: 8px 0 0;
  }

  .post_relate_area li h4 {
    font-size: 1.4rem;
    font-weight: normal;
    line-height: 1.4;
  }

  /*ここまで====================*/
