@charset "UTF-8";
/* CSS Document */

    .content--inner {
      max-width: 1090px;
      width: 100%;
      margin: 0 auto; }
    #mv-content {
      width: 100%;
      margin-top: 65px;
      padding-top: 20px;
      background: linear-gradient(to right, #e5f5f2, #b0e4ed); }
      #mv-content .content--inner {
        line-height: 1.4;
        letter-spacing: .14em;
        display: flex;
        justify-content: space-between;
        padding: 60px 0 80px; }
      #mv-content h2 {
        font-size: 18px;
        position: relative;
        margin-bottom: 2em;
        padding-bottom: .735em;
        text-align:left; }
        #mv-content h2::after {
          content: "";
          position: absolute;
          left: 0;
          bottom: 0;
          width: 100%;
          height: 2px;
          background: #00B29E; }
      #mv-content h3 {
        font-size: 35px;
        font-feature-settings: "palt"; }
      #mv-content p {
        font-size: 20px;
        margin-top: 1em; }
      #mv-content .mv-img {
        width: 450px; }
    .topic-path {
      font-size: 12px;
      max-width: 1090px;
      width: 100%;
      margin: 0 auto;
      padding: 0.767em 0; }
      .topic-path li {
        line-height: 1.8;
        display: inline-block;
        margin-right: .35em; }
        .topic-path li::after {
          content: ">";
          padding-left: .6em; }
        .topic-path li:last-child {
          margin: 0; }
          .topic-path li:last-child::after {
            content: none;
            padding: 0; }
        .topic-path li a {
          display: inline; }
    .case-img {
      border-radius: 10px; }
    #case-content {
      padding-bottom: 20px; }

    /*introduction*/
    section#introduction {
      margin-top: 100px; }
      section#introduction .content--inner {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 0 0 50px;
        border-bottom: solid 2px #00B29E; }
        section#introduction .content--inner div.logo {
          flex-basis: 18%;
          margin-right: 50px; }
        section#introduction .content--inner div.text li {
          font-size: 18px;
          padding-bottom: 10px;
          line-height: 1; }
          section#introduction .content--inner div.text li:last-child {
            padding-bottom: 0 }
          section#introduction .content--inner div.text li span.head {
            background: #00B29E;
            color: #fff;
            padding: 5px 0;
            margin-right: 10px;
            border-radius: 5px;
            text-align: center;
            display: inline-block;
            width: 100px; }

	/*-- カスタマイズ --*/
	section#introduction .content--inner div.logo.ichinenhd {
	flex-basis: 25%;
	}

    /*summarys*/
    #summarys .content--inner {
      padding: 40px 0;
      border-bottom: solid 2px #00B29E; }
    @media screen and (min-width: 981px) {
      div.summary {
        display: flex;
        align-items: center;
        justify-content: center; }
    }
    div.summary + div.summary {
      margin-top: 40px; }
      div.summary .img {
        font-weight: bold;
        font-size: 18px;
        letter-spacing: .1em;
        display: flex;
        align-items: center;
        margin-right: 20px;
        position:relative;
        flex-basis: 12%; }
        div.summary .img:before {
          display: block;
          content: "";
          width: 10px;
          height: 10px;
          margin-right: 8px;
          border-radius: 50px;
          border: 10px solid #B9E9E5; }
        div.summary.no2 .img:before {
          border: 10px solid #5DCEC1; }
        div.summary.no3 .img:before {
          border: 10px solid #00B29E; }
        @media screen and (min-width: 981px) {
          div.summary .img:after {
            content: "";
            position: absolute;
            display: block;
            height: 30px;
            width: 6px;
            background-size: 2px 6px;
            background-repeat: repeat-y;
            bottom: -45px;
            left: 12px;
            background-image: linear-gradient(to top, #c5cbd3, #c5cbd3 4px, transparent 4px, transparent 10px);
            background-position: center;}
          }
            div.summary.no3 .img:after {
              content: none; }
      div.summary .text {
        flex-basis: 42%; }

        /*-- カスタマイズ --*/
        @media screen and (min-width: 981px) {
          #summarys.sora-pickup div.summary .text {
            flex-basis: 55%;
          }
          #summarys.sora-lycorp div.summary .text {
            flex-basis: 60%;
          }
        }
		@media screen and (min-width: 981px) {
			#summarys.ichinenhd .text li {
				line-height: 1.7;
			}
			#summarys.ichinenhd div.summary .text {
				flex-basis: 60%;
			}
			#summarys.ichinenhd div.summary .img:after {
				height: 54px;
				bottom: -76px;
			}
		}
		@media screen and (min-width: 981px) {
			#summarys.field-serve div.summary .text {
				flex-basis: 62%;
			}
			#summarys.field-serve div.summary .img:after {
				height: 55px;
				bottom: -70px;
				}
			}
		@media screen and (min-width: 981px) {
			#summarys.thinktwice div.summary .text {
				flex-basis: 45%;
			}
			#summarys.thinktwice div.summary .img:after {
				height: 65px;
				bottom: -84px;
			}
		}





        div.summary .text dt {
          color: #00B29E;
          font-weight: bold;
          font-size: 22px;
          margin-bottom: 10px; }
        div.summary .text dd {
          padding-left: 20px; }
          div.summary .text li {
            font-weight: 500;
            text-align: left;
            line-height: 1.4;
            position: relative;
            padding-left: 1.214em; }
          div.summary .text li + li {
            margin-top: 0.4em; }
            div.summary .text li::before {
              content: "";
              position: absolute;
              top: 0;
              left: 0;
              display: block;
              width: 0.393em;
              height: 0.393em;
              background: #B9E9E5;
              border-radius: 0.196em;
              transform: translate(0, 150%); }
              div.summary.no2 .text li::before {
                background: #5DCEC1; }
              div.summary.no3 .text li::before {
                background: #00B29E; }

      /*interview*/
      .interview .content--inner {
        max-width: 784px; }
        .interview .content--inner h4 {
          border-left: solid 8px #00B29E;
          font-size: 20px;
          padding-left: 0.909em;
          margin-top: 2.5em}
        .interview .content--inner p {
          font-size: 16px;
          line-height: 1.875;
          margin-top: 1.875em;}
          .interview .content--inner p.question {
            position: relative;
            font-weight:bold;}
            .interview .content--inner p.question:before {
              content: "\2015\2015";
              letter-spacing: -.2em;
              margin-right: 0.6em; }
          .interview .content--inner p.answer span {
              background: linear-gradient(transparent 60%, #DCF1EF 60%);
              font-weight: 600; }
              @media screen and (min-width: 981px) {
                .interview .content--inner figure {
                  margin: 1.875em auto 0;
                  width: 700px; }
              }
            .interview .content--inner figure img { }
            .interview .content--inner figure figcaption {
              font-size: 14px;
              margin-top: .2em;
              text-align: right;
              line-height: 1.4}
              .interview .content--inner figure figcaption a {
                color: #00B29E;
                text-decoration: underline;
                display: inline;
                font-weight: 500; }
                .interview .content--inner figure figcaption a:hover {
                  text-decoration: none; }

        /*company*/
        .company .content--inner {
          transition: .4s;
          border-radius: 10px;
          -moz-box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.1);
          -webkit-box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.1);
          -ms-box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.1);
          box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.1);
          max-width: 784px;
          margin: 60px auto;
          padding: 30px 40px;
          background: #F4F4F4;
          line-height: 1.875; }
          .company .content--inner h3 {
            border-left: solid 8px #00B29E;
            font-size: 20px;
            padding-left: 0.909em; }
            .company .content--inner h4 {
              font-size: 20px;
              margin:20px 0;
              padding-left: 20px; }
            @media screen and (min-width: 981px) {
              .company .content--inner dl {
                display: flex;
                padding-left: 20px; }
              }
            .company .content--inner dt {
              position: relative;
              width: 90px;
              margin-right: 10px  }
              @media screen and (min-width: 981px) {
                .company .content--inner dt::after {
                  content: "：";
                  position: absolute;
                  top: 0;
                  right: 0;}
                }
			  @media screen and (min-width: 981px) {
				.company .content--inner dd {
					width: calc(100% - 90px);
				}
			 }
            .company .content--inner dd ul {
              list-style: disc;
              padding-left: 20px;}
          .company .content--inner .case-info-list {
            padding-left: 20px;
            margin-top: 20px; }
            .company .content--inner .case-info-list li {
              position: relative;
              padding-left: 1em;
              line-height: 1.6; }
              .company .content--inner .case-info-list li::before {
                color: #00B29E;
                font-weight: 700;
                content: "-";
                position: absolute;
                top: 0;
                left: 0; }


    .inline-block {
      display: inline-block; }
    .text-link {
      color: #00B29E;
      text-decoration: underline;
      display: inline; }
      .text-link:hover {
        text-decoration: none; }


@media screen and (max-width: 980px) {

    .content--inner {
      width: calc(650 *(100vw/750));
      margin: 0 auto; }

    /*--mv--*/
    #mv-content {
      margin-top: calc(74 *(100vw/750));
      padding: calc(20 *(100vw/750)) 0 calc(80 *(100vw/750)); }
      #mv-content .content--inner {
        text-align: center;
        display: block;
        padding: 0; }
      #mv-content h2 {
        font-size: calc(34 *(100vw/750));
        line-height: 1.4;
        letter-spacing: .05em;
        margin: calc(40 *(100vw/750)) 0 0.882em;
        padding-bottom: .735em; }
        #mv-content h2::after {
          left: 50%;
          transform: translate(-50%, 0);
          width: 2.412em;
          height: 2px; }
      #mv-content h3 {
        font-size: max(2vw, 16px); }
      #mv-content p {
        font-size: max(2.4vw, 13px);
        margin: 2em 0; }
        #mv-content p br {
          display: none; }
      #mv-content .mv-img {
        width: auto; }

    /*--topic-path--*/
    .topic-path {
      font-size: max(1.6vw, 11px);
      padding: 0.767em calc(20 *(100vw/750)); }

    /*introduction*/
    section#introduction {
      margin-top: calc(100 *(100vw/750)); }
      section#introduction .content--inner {
        padding: 0 0 calc(40 * (100vw / 750)) 0;
        display: block; }
        section#introduction .content--inner div.logo {
          text-align: center;
          margin-bottom:10px;
          flex-basis: auto;
          margin-right: 0; }
          section#introduction .content--inner div.logo img {
            width: 50%;}
          section#introduction .content--inner div.text li {
            font-size: calc(28 *(100vw/750));
            padding-bottom: 5px; }
            section#introduction .content--inner div.text li span {
              display: table-cell;
              vertical-align: middle;
              padding: 0 5px;}
              section#introduction .content--inner div.text li span.head {
                width:80px;
                display:table-cell; }
    #summarys .content--inner {
      padding: 30px 0; }
    div.summary + div.summary {
      margin-top: .8em; }
    div.summary .img {
      font-size: max(2.93vw, 14px);
      padding: 10px 0; }
      div.summary .img:before {
        width: 8px;
        height: 8px;
        margin-right: 8px;
        border: 8px solid #B9E9E5;}
    div.summary .text li {
        font-size: max(1.87vw, 12px); }

   .interview .content--inner h4 {
      font-size: max(2.93vw, 14px);}
  .interview .content--inner p {
      font-size: max(1.87vw, 12px); }

  .company .content--inner {
    padding: 20px;}
  .company .content--inner h3 {
    font-size: max(3.33vw, 18px); }
  .company .content--inner h4 {
    font-size: max(3.33vw, 18px);
    padding:0; }
  .company .content--inner dt {
    font-weight: bold;
    margin: 10px 0 0;
  }
  .company .content--inner .case-info-list {
    padding: 0;
  }


}


  section.cta-btn {
    background: linear-gradient(326.26deg, #53BA9B 0%, #4FBBDE 100%);
    color: #fff;
  }
  section.cta-btn .cont-inner {
    justify-content: center;
    gap: 40px;
  }
  section.cta-btn img {
    width: 500px;
  }
  section.cta-btn dt {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    font-size: 27px;
    font-weight: bold;
    margin-bottom: 30px;
  }
  @media screen and (max-width: 980px) {
    section.cta-btn dt {
      font-size: 5.5vw;
      margin-bottom: 15px;
    }
  }
  section.cta-btn dt::before,
  section.cta-btn dt::after {
    content: "";
    width: 40px;
    height: 2px;
    background-color: #FFF;
    margin: 0px 4px 4px;
  }   
  section.cta-btn dt::before {
    transform: rotate(45deg);
  }   
  section.cta-btn dt::after {
    transform: rotate(-45deg);
  }
  section.cta-btn a {
    background-color:#fff;
    box-shadow: 0px 5px 8px 0px #00000026;
    color: rgba(39, 197, 189, 1);
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    padding: 20px 0;
    font-weight: bold;
    width: 480px;
    font-size: 24px;
  }
  @media screen and (max-width: 980px) {
    section.cta-btn a {
      width: 100%;
      font-size: 20px;
    }
  }   
  section.cta-btn a::before {
    content: "";
    background: no-repeat url(/common/img/icon_download_GR.png) 0 0 / contain;
    width: 24px;
    height: 24px;
    display: block;
    margin: 0 12px 0 0;
  }


  /*-- pickup --*/

  #mv-content.pickup .content--inner {
    max-width: 1204px;
    align-items: center;
    padding: 60px 0;
  }
  @media screen and (max-width: 980px) {
    #mv-content.pickup .content--inner {
      padding: 30px 0 0;
    }
  }
  @media screen and (max-width: 980px) {
    #mv-content.pickup h2 {
      font-size: calc(28 * (100vw / 750));
      text-align: center;
    }
  }
  #mv-content.pickup h2::after {
    height: 1px;
  }
  #mv-content.pickup h3 {
    font-size: 30px;
    line-height: 1.8;
  }
  @media screen and (max-width: 980px) {
    #mv-content.pickup h3 {
      font-size: max(4.53vw, 14px);
      margin-bottom: 20px;
    }
  }
  #mv-content.pickup .mv-img {
    width: 580px;
  }
  @media screen and (max-width: 980px) {
    #mv-content.pickup .mv-img {
      width: 100%;
    }
  }
  .pickup #summarys .content--inner {
    border: none;
  }
  @media screen and (min-width: 981px) {
    .pickup section#introduction .content--inner div.text li {
      font-size: 16px;
    }
  }
  .pickup section#introduction .content--inner div.text li span.head{
    background: linear-gradient(326.26deg, #53BA9B 0%, #4FBBDE 100%);
  }
  .pickup .intro {
    background: rgba(247, 247, 247, 1);
  }
  .pickup .intro .content--inner {
    max-width: 784px;
    padding: 40px 0;
  }
  .pickup .intro p {
    font-size: 16px;
    line-height: 1.875;
    margin-top: 1.875em;
  }
  @media screen and (max-width: 980px) {
    .pickup .intro .content--inner p {
        font-size: max(1.87vw, 12px);
    }
  }
  .pickup .intro figure {
    width: 600px;
    margin: 0 auto;
  }
  @media screen and (max-width: 980px) {
    .pickup .intro figure {
      width: 100%;
    }
  }
  .pickup .intro figure img {
    border-radius: 10px;
  }
  .pickup .interview figure {
    width: 600px;
    margin: 1.875em auto 0;
  }
  @media screen and (max-width: 980px) {
    .pickup .interview figure {
      width: 100%;
    }
  }
  .pickup .interview figure img {
    border-radius: 10px;
  }
  .pickup .interview .content--inner p.question {
    color: #00B29E;
  }
  .pickup .interview .content--inner p.answer span.name {
    background: none;
  }
  @media screen and (max-width: 980px) {
    .pickup .company .content--inner h3 {
        font-size: max(3.33vw, 14px);
    }
  }
  @media screen and (max-width: 980px) {
    .pickup .company .content--inner h4 {
      font-size: max(3.33vw, 14px);
    }
  }
  @media screen and (max-width: 980px) {
    .pickup .company dl {
      font-size: max(1.87vw, 12px);
    }
  }
  @media screen and (max-width: 980px) {
    .pickup .company .case-info-list {
      font-size: max(1.87vw, 12px);
    }
  }
  
  