@charset "UTF-8";
/*--- import -------------------------------------*/
/*------------------------------------- import ---*/
@media screen and (max-width: 750px) {
  .box_in {
    padding: 0 5.3333333333vw; } }

.mv_b {
  position: relative;
  background: url("../images/digital_document/mv.png") no-repeat;
  background-position: top 32% center;
  background-size: cover; }
  @media screen and (max-width: 750px) {
    .mv_b {
      background-position: center center;
      background-size: cover; } }
  .mv_b .bg h2 .sub_ttl img {
    width: 265px; }

#intro {
  padding-top: 0px;
  padding-bottom: 65px; }
  #intro .intro_inner {
    background: #ededeb;
    padding-bottom: 20px; }
  #intro .txt_b {
    font-size: 28px;
    letter-spacing: 0.25rem;
    margin-top: 40px;
    font-weight: bold; }
    #intro .txt_b .marker_orange {
      display: inline; }
  #intro h4 {
    background: #0856a0;
    color: #fff;
    padding: 15px;
    font-size: 40px;
    letter-spacing: 0.6rem; }
    #intro h4 .sub {
      font-size: 28px; }
  #intro .box_in {
    padding: 40px;
    background: #fff;
    margin: 40px auto; }
    @media screen and (max-width: 750px) {
      #intro .box_in {
        padding: 0 5.3333333333vw; } }
    #intro .box_in h5 {
      color: #fff;
      background: #0856a0;
      padding: 15px;
      font-size: 28px;
      font-weight: bold;
      text-align: center;
      position: relative;
      letter-spacing: 0.3rem; }
      #intro .box_in h5:after {
        content: '';
        display: inline-block;
        position: absolute;
        bottom: -15px;
        left: 50%;
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 20px 20px 0 20px;
        border-color: #0856a0 transparent transparent transparent; }
    #intro .box_in .trouble_area {
      margin-top: 60px;
      position: relative; }
      #intro .box_in .trouble_area .trouble {
        max-width: 718px;
        width: 100%;
        margin: 0 auto; }
        #intro .box_in .trouble_area .trouble li {
          font-size: 28px;
          text-align: left;
          position: relative;
          font-weight: bold;
          letter-spacing: 0.25rem;
          padding: 10px;
          background: #ededeb;
          padding-left: 60px;
          /*
          &:after{
          	content:'';
          	display: inline-block;
          	background: url('../images/digital_document/check.png' ) no-repeat;
          	background-size: contain;
          	width: 38px;
          	height: 27px;
          	position: absolute;
          	left: 14px;
          	top: 42%;
          	transform: translateY(-50%);						
          }
          */ }
          #intro .box_in .trouble_area .trouble li:before {
            content: '';
            display: inline-block;
            width: 25px;
            height: 25px;
            background: #0856a0;
            margin-right: 15px;
            top: 50%;
            left: 17px;
            transform: translateY(-50%);
            position: absolute; }
          #intro .box_in .trouble_area .trouble li:not(:first-child) {
            margin-top: 25px; }
      #intro .box_in .trouble_area .blue_sankaku {
        margin-top: 60px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 71px 116.5px 0 116.5px;
        border-color: #0856a0 transparent transparent transparent;
        position: relative;
        left: 50%;
        transform: translateX(-50%); }
      #intro .box_in .trouble_area .solution {
        margin-top: 40px; }
        #intro .box_in .trouble_area .solution p {
          font-size: 28px;
          font-weight: bold; }
        #intro .box_in .trouble_area .solution ul {
          margin: 0 auto;
          margin-top: 40px;
          display: flex;
          justify-content: space-between;
          max-width: 750px;
          background: #d0121b;
          padding: 20px; }
          #intro .box_in .trouble_area .solution ul li {
            text-align: center;
            width: 29%; }
            #intro .box_in .trouble_area .solution ul li .ttl {
              margin: 0 auto;
              width: 176px;
              margin-top: 20px;
              background: #ffffff;
              color: #d0121b;
              font-size: 21px;
              font-weight: bold;
              padding: 5px;
              border-radius: 25px; }
        #intro .box_in .trouble_area .solution .merit_txt {
          font-weight: bold;
          margin-top: 40px;
          background: #db9e3e;
          color: #fff;
          padding: 15px;
          border-radius: 15px;
          font-size: 28px; }
          #intro .box_in .trouble_area .solution .merit_txt .big {
            font-size: 32px; }

@media screen and (max-width: 750px) {
  #intro {
    padding-bottom: 8.6666666667vw; }
    #intro .intro_inner {
      padding-bottom: 2.6666666667vw;
      background: #fff; }
    #intro .txt_b {
      font-size: 5.6vw;
      letter-spacing: 0.25rem;
      margin-top: 0; }
    #intro h4 {
      padding: 2vw;
      font-size: 7.2vw;
      letter-spacing: 0.3rem; }
      #intro h4 .sub {
        font-size: 5.6vw; }
    #intro .box_in {
      margin: 5.3333333333vw auto; }
      #intro .box_in h5 {
        padding: 2vw;
        font-size: 5.6vw;
        letter-spacing: 0.1rem; }
      #intro .box_in .trouble_area {
        margin-top: 8vw; }
        #intro .box_in .trouble_area .trouble {
          max-width: 718px;
          width: 100%;
          margin: 0 auto; }
          #intro .box_in .trouble_area .trouble li {
            font-size: 4.5333333333vw;
            letter-spacing: 0.25rem;
            padding: 1.3333333333vw;
            padding-left: 12vw;
            /*
            &:after{
            	content:'';
            	display: inline-block;
            	background: url('../images/digital_document/check.png' ) no-repeat;
            	background-size: contain;
            	width: vw(38);
            	height:vw(27);
            	position: absolute;
            	left: 14px;
            	top: 42%;
            	transform: translateY(-50%);						
            }
            */ }
            #intro .box_in .trouble_area .trouble li:before {
              content: '';
              display: inline-block;
              width: 3.3333333333vw;
              height: 3.3333333333vw;
              background: #0856a0;
              margin-right: 15px;
              top: 50%;
              left: 17px;
              transform: translateY(-50%);
              position: absolute; }
            #intro .box_in .trouble_area .trouble li:not(:first-child) {
              margin-top: 3.3333333333vw; }
        #intro .box_in .trouble_area .blue_sankaku {
          margin-top: 8vw;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 9.4666666667vw 15.5333333333vw 0 15.5333333333vw;
          border-color: #0856a0 transparent transparent transparent;
          position: relative;
          left: 50%;
          transform: translateX(-50%); }
        #intro .box_in .trouble_area .solution {
          margin-top: 5.3333333333vw; }
          #intro .box_in .trouble_area .solution p {
            font-size: 5.0666666667vw; }
          #intro .box_in .trouble_area .solution ul {
            margin: 0 auto;
            margin-top: 5.3333333333vw;
            display: flex;
            justify-content: space-between;
            max-width: 750px; }
            #intro .box_in .trouble_area .solution ul li {
              text-align: center;
              width: 32%; }
              #intro .box_in .trouble_area .solution ul li .ttl {
                margin: 0 auto;
                width: 100%;
                margin-top: 20px;
                padding: 5px;
                border-radius: 25px; } }
          @media screen and (max-width: 750px) and (max-width: 480px) {
            #intro .box_in .trouble_area .solution ul {
              width: 80%;
              display: block; }
              #intro .box_in .trouble_area .solution ul li {
                width: 75%;
                margin: 0 auto; }
                #intro .box_in .trouble_area .solution ul li:not(:first-child) {
                  margin-top: 35px; }
                #intro .box_in .trouble_area .solution ul li .ttl {
                  font-size: 18px; } }
@media screen and (max-width: 750px) {
          #intro .box_in .trouble_area .solution .merit_txt {
            font-weight: bold;
            margin-top: 5.3333333333vw;
            background: #db9e3e;
            color: #fff;
            padding: 2vw;
            border-radius: 15px;
            font-size: 5.6vw; }
            #intro .box_in .trouble_area .solution .merit_txt .big {
              font-size: 6.1333333333vw; } }
#service {
  padding-top: 65px;
  padding-bottom: 65px;
  position: relative; }
  #service:before {
    content: '';
    display: inline-block;
    background: #1557a0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 80%; }
    @media screen and (max-width: 750px) {
      #service:before {
        height: 100%; } }
  #service .box_in {
    position: relative; }
    #service .box_in:before {
      content: '';
      display: inline-block;
      background: url(../images/digital_document/service.png) no-repeat;
      background-size: contain;
      width: 427px;
      height: 112px;
      position: absolute;
      left: 0px;
      top: -60px; }
    #service .box_in h4 {
      font-size: 34px;
      color: #fff; }
    #service .box_in .flow {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      margin-top: 40px; }
      #service .box_in .flow .flow_list {
        width: 28%;
        background: #fff;
        position: relative;
        padding: 0 20px 40px;
        box-shadow: 0px 0px 30px #a0a0a0; }
        #service .box_in .flow .flow_list:nth-child(1) {
          margin-right: 45px; }
        #service .box_in .flow .flow_list:nth-child(2) {
          margin-right: 45px; }
        #service .box_in .flow .flow_list:nth-child(4) {
          margin-right: 45px;
          margin-top: 40px; }
        #service .box_in .flow .flow_list:nth-child(5) {
          margin-top: 40px; }
          #service .box_in .flow .flow_list:nth-child(5):before {
            content: none; }
        #service .box_in .flow .flow_list:before {
          content: '';
          display: inline-block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 30px 0 30px 20px;
          border-color: transparent transparent transparent #ffffff;
          position: absolute;
          right: -20px;
          top: 50%;
          transform: translateY(-50%); }
        #service .box_in .flow .flow_list .num {
          background: #db9e3e;
          color: #fff;
          line-height: 1;
          width: 50px;
          height: 50px;
          position: absolute;
          top: 0;
          left: -15px;
          display: flex;
          align-items: center;
          justify-content: center;
          font-weight: bold;
          font-size: 28px; }
          #service .box_in .flow .flow_list .num img {
            width: 34px; }
        #service .box_in .flow .flow_list .inner .ttl {
          background: #996200;
          color: #fff;
          line-height: 1;
          padding: 10px;
          font-size: 21px;
          font-weight: bold; }
        #service .box_in .flow .flow_list .inner .txt_area {
          text-align: left;
          margin-top: 20px; }
          #service .box_in .flow .flow_list .inner .txt_area li:before {
            content: '■ '; }

@media screen and (max-width: 750px) {
  #service {
    padding-top: 8.6666666667vw;
    padding-bottom: 8.6666666667vw; }
    #service .box_in:before {
      content: '';
      display: inline-block;
      background: url(../images/digital_document/service.png) no-repeat;
      background-size: contain;
      width: 56.9333333333vw;
      height: 14.9333333333vw;
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      top: -5vw; }
    #service .box_in h4 {
      font-size: 8.4vw;
      position: relative;
      top: 2.1333333333vw; }
    #service .box_in .flow {
      display: block;
      margin-top: 8vw; }
      #service .box_in .flow .flow_list {
        max-width: 83%;
        margin: 0 auto;
        width: 390px;
        background: #fff;
        position: relative;
        padding: 0 2.6666666667vw 5.3333333333vw;
        box-shadow: 0px 0px 4vw #a0a0a0; }
        #service .box_in .flow .flow_list:nth-child(1) {
          margin-right: auto; }
        #service .box_in .flow .flow_list:nth-child(2) {
          margin-right: auto; }
        #service .box_in .flow .flow_list:nth-child(4) {
          margin-right: auto;
          margin-top: auto; }
        #service .box_in .flow .flow_list:nth-child(5) {
          margin-top: auto; }
        #service .box_in .flow .flow_list:not(:first-child) {
          margin-top: 40px; }
        #service .box_in .flow .flow_list:before {
          content: '';
          display: inline-block;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 30px 0 30px 20px;
          border-color: transparent transparent transparent #ffffff;
          position: absolute;
          right: inherit;
          top: inherit;
          left: 50%;
          bottom: -39px;
          transform: translateX(-50%) rotate(90deg); }
        #service .box_in .flow .flow_list .num {
          background: #db9e3e;
          color: #fff;
          line-height: 1;
          width: 12vw;
          height: 12vw;
          position: absolute;
          top: 0;
          left: -15px;
          display: flex;
          align-items: center;
          justify-content: center; }
          #service .box_in .flow .flow_list .num img {
            width: 8.5333333333vw; }
        #service .box_in .flow .flow_list .inner .ttl {
          line-height: 1;
          padding: 10px;
          font-size: 5.0666666667vw; }
        #service .box_in .flow .flow_list .inner .txt_area {
          text-align: left;
          margin-top: 2.6666666667vw; }
          #service .box_in .flow .flow_list .inner .txt_area li:before {
            content: '■ '; } }
#work_contact .contents .contact_area {
  margin-top: 20px;
  background: #005bac;
  color: #fff;
  padding: 20px 20px; }
  #work_contact .contents .contact_area h6 {
    font-size: 37px; }
  #work_contact .contents .contact_area .txt_area {
    margin-top: 20px; }
  #work_contact .contents .contact_area .btn_area {
    margin-top: 20px;
    padding: 15px;
    display: flex;
    background: #fff;
    justify-content: center; }
    #work_contact .contents .contact_area .btn_area li {
      width: 37%; }
      @media screen and (max-width: 960px) {
        #work_contact .contents .contact_area .btn_area li {
          width: 50%; } }
    #work_contact .contents .contact_area .btn_area .left {
      display: flex;
      align-items: center;
      justify-content: center;
      margin-right: 20px; }
      #work_contact .contents .contact_area .btn_area .left a {
        display: block; }
        #work_contact .contents .contact_area .btn_area .left a img {
          max-width: 309px;
          width: 100%; }
    #work_contact .contents .contact_area .btn_area .right a {
      font-size: 24px;
      display: block; }
      #work_contact .contents .contact_area .btn_area .right a .btn {
        background: #005bac;
        display: flex;
        justify-content: center;
        padding: 15px; }
        #work_contact .contents .contact_area .btn_area .right a .btn .icon {
          margin-right: 10px;
          display: flex;
          align-items: center; }

@media screen and (max-width: 750px) {
  #work_contact {
    margin-top: 10.6666666667vw; }
    #work_contact .contents .contact_area {
      margin-top: 2.6666666667vw;
      padding: 2.6666666667vw 2.6666666667vw; }
      #work_contact .contents .contact_area h6 {
        font-size: 6.8vw; }
      #work_contact .contents .contact_area .txt_area {
        margin-top: 2.6666666667vw; }
      #work_contact .contents .contact_area .btn_area {
        margin-top: 2.6666666667vw;
        padding: 2vw;
        display: block; }
        #work_contact .contents .contact_area .btn_area li {
          width: 100%; }
        #work_contact .contents .contact_area .btn_area .left {
          display: flex;
          align-items: center;
          justify-content: center;
          margin-right: 20px; }
          #work_contact .contents .contact_area .btn_area .left a {
            display: block; }
            #work_contact .contents .contact_area .btn_area .left a img {
              max-width: 309px;
              width: 100%; }
        #work_contact .contents .contact_area .btn_area .right a {
          font-size: 5.0666666667vw;
          display: block; }
          #work_contact .contents .contact_area .btn_area .right a .btn {
            margin-top: 2.6666666667vw;
            background: #005bac;
            display: flex;
            justify-content: center;
            padding: 2vw; }
            #work_contact .contents .contact_area .btn_area .right a .btn .icon {
              margin-right: 1.3333333333vw;
              display: flex;
              align-items: center; } }
