/* index
- advantage
- download
- products
- contact
- flow
- about
/*


/* =============================================================================
	advantage
   ========================================================================== */
.p-advantage {
  background: #f3f3f3; }
  .p-advantage * {
    box-sizing: border-box;
    word-break: break-all;
    overflow-wrap: break-word; }
  .p-advantage img {
    vertical-align: middle; }
  .p-advantage dl {
    margin: 0; }
    .p-advantage dl dt, .p-advantage dl dd {
      margin: 0;
      font-weight: lighter; }
  .p-advantage__sec1 {
    padding-bottom: 150px;
    font-weight: bold; }
    @media screen and (max-width: 1100px) {
      .p-advantage__sec1 {
        padding-bottom: 50px;
        font-weight: bold; } }
    .p-advantage__sec1 a {
      font-weight: lighter; }
    .p-advantage__sec1 h1 {
      padding: 80px 20px 100px;
      text-align: center; }
      @media screen and (max-width: 1100px) {
        .p-advantage__sec1 h1 {
          padding: 0 20px 50px; } }
    .p-advantage__sec1 .-box {
      width: 1080px;
      margin: 0 auto 100px;
      padding: 0 50px 100px 50px;
      background: #fff; }
      .p-advantage__sec1 .-box--head {
        position: relative;
        padding: 50px 0 0 190px;
        margin-bottom: 80px; }
      .p-advantage__sec1 #advantage5 .-box--head {
      	margin-bottom: 0;
      }
        .p-advantage__sec1 .-box--head > span {
          position: absolute;
          left: 0;
          top: -20px; }
        .p-advantage__sec1 .-box--head > h2 {
          text-align: left;
          font-size: 35px;
          margin-bottom: 20px; }
        .p-advantage__sec1 .-box--head > p {
          font-size: 16px; }
          .p-advantage__sec1 .-box--head > p span {
            font-size: 20px;
            color: #1c8c42; }
      @media screen and (max-width: 1100px) {
        .p-advantage__sec1 .-box {
          width: 100%;
          margin: 0 auto 50px;
          padding: 0 20px 20px; }
          .p-advantage__sec1 .-box--head {
            padding: 20px 20px 20px 70px;
            margin-bottom: 20px; }
            .p-advantage__sec1 .-box--head > span img {
              width: 60px; }
            .p-advantage__sec1 .-box--head > h2 {
              font-size: 24px; }
            .p-advantage__sec1 .-box--head > p {
              font-size: 14px; }
              .p-advantage__sec1 .-box--head > p > span {
                font-size: 17px; }
          .p-advantage__sec1 .-box .advantage3-txt {
            display: block;
            width: 100%; } }
      .p-advantage__sec1 .-box--pricetable {
        display: flex;
        align-items: center;
        margin-bottom: 20px;
        width: 100%; }
        .p-advantage__sec1 .-box--pricetable > * {
          padding: 10px 0; }
        .p-advantage__sec1 .-box--pricetable h3 {
          width: 180px;
          font-size: 20px;
          font-weight: bold; }
        .p-advantage__sec1 .-box--pricetable__detail {
          border-left: 2px solid #89c997;
          font-size: 15px;
          padding-left: 20px;
          flex: 1; }
          .p-advantage__sec1 .-box--pricetable__detail table {
            width: 100%; }
            .p-advantage__sec1 .-box--pricetable__detail table td {
              vertical-align: top; }
        .p-advantage__sec1 .-box--pricetable__price {
          text-align: right;
          font-size: 12px;
          width: 170px;
          padding-right: 40px; }
          .p-advantage__sec1 .-box--pricetable__price strong {
            font-size: 20px;
            color: #168639; }
          .p-advantage__sec1 .-box--pricetable__price .-plan {
            background: #168639;
            color: #fff;
            display: inline-block;
            width: 117px;
            text-align: center;
            font-weight: bold; }
        .p-advantage__sec1 .-box--pricetable__img {
          width: 278px; }
        @media screen and (max-width: 1100px) {
          .p-advantage__sec1 .-box--pricetable {
            flex-wrap: wrap; }
            .p-advantage__sec1 .-box--pricetable h3 {
              width: 100%;
              text-align: center;
              font-size: 18px; }
            .p-advantage__sec1 .-box--pricetable__detail {
              width: 100%;
              padding-left: 10px;
              font-size: 14px; }
            .p-advantage__sec1 .-box--pricetable__price {
              padding-right: 0;
              width: 130px; }
            .p-advantage__sec1 .-box--pricetable__img {
              width: 100%;
              text-align: center; } }
      .p-advantage__sec1 .-box--qa {
        max-width: 840px;
        margin: 0 auto; }
        .p-advantage__sec1 .-box--qa > dl + dl {
          margin-top: 90px; }
        .p-advantage__sec1 .-box--qa > dl > * {
          display: flex;
          margin: 0;
          font-size: 16px; }
          .p-advantage__sec1 .-box--qa > dl > * > *:first-child {
            width: 35px; }
          .p-advantage__sec1 .-box--qa > dl > * > * + * {
            flex: 1; }
        .p-advantage__sec1 .-box--qa > dl dt {
          font-size: 20px;
          font-weight: bold;
          align-items: center;
          border-bottom: 2px solid #89c997;
          padding-bottom: 10px;
          margin-bottom: 10px; }
        @media screen and (max-width: 1100px) {
          .p-advantage__sec1 .-box--qa {
            padding: 0; }
            .p-advantage__sec1 .-box--qa > dl + dl {
              margin-top: 30px; }
            .p-advantage__sec1 .-box--qa > dl > * {
              font-size: 14px; }
            .p-advantage__sec1 .-box--qa > dl dt {
              font-size: 16px; } }
      .p-advantage__sec1 .-box--block-1 {
        display: flex;
        font-size: 16px; }
        .p-advantage__sec1 .-box--block-1 > div:first-child {
          width: 280px; }
        .p-advantage__sec1 .-box--block-1 > div + div {
          flex: 1;
          padding-left: 70px; }
        @media screen and (max-width: 1100px) {
          .p-advantage__sec1 .-box--block-1 {
            padding: 0;
            flex-wrap: wrap;
            font-size: 14px; }
            .p-advantage__sec1 .-box--block-1 > div {
              width: 100% !important; }
              .p-advantage__sec1 .-box--block-1 > div:first-child {
                text-align: center;
                margin-bottom: 20px; }
              .p-advantage__sec1 .-box--block-1 > div + div {
                padding: 5px; } }
      .p-advantage__sec1 .-box--block-2 {
        margin-bottom: 50px; }
        .p-advantage__sec1 .-box--block-2 > dl {
          display: flex;
          align-items: center;
          margin-bottom: 60px; }
          .p-advantage__sec1 .-box--block-2 > dl > dt {
            width: 180px;
            font-size: 20px;
            font-weight: bold; }
          .p-advantage__sec1 .-box--block-2 > dl > dd {
            width: calc(-180px + 100%);
            font-size: 16px;
            flex: 1;
            border-left: 2px solid #89c997;
            padding: 10px 30px; }
        @media screen and (max-width: 1100px) {
          .p-advantage__sec1 .-box--block-2 {
            margin-bottom: 20px; }
            .p-advantage__sec1 .-box--block-2 > dl {
              flex-wrap: wrap;
              margin-bottom: 30px; }
              .p-advantage__sec1 .-box--block-2 > dl > dt {
                width: 100%;
                margin-bottom: 10px;
                font-size: 18px; }
              .p-advantage__sec1 .-box--block-2 > dl > dd {
                width: 100%;
                font-size: 14px;
                padding: 5px 10px; } }
        .p-advantage__sec1 .-box--block-2 .-beforeafter {
          max-width: 770px;
          margin: 0 auto;
          display: flex;
          justify-content: space-between; }
          .p-advantage__sec1 .-box--block-2 .-beforeafter > div {
            width: 340px;
            border: 2px solid #89c997;
            padding: 15px 25px 25px;
            position: relative; }
            .p-advantage__sec1 .-box--block-2 .-beforeafter > div + div::before {
              position: absolute;
              content: '';
              background: url(../img/advantage/icon--arrow.png) no-repeat center;
              background-size: contain;
              width: 48px;
              height: 15px;
              left: -70px;
              top: 0;
              bottom: 0;
              margin: auto 0; }
            .p-advantage__sec1 .-box--block-2 .-beforeafter > div dl dt {
              position: relative;
              text-align: center;
              font-size: 25px;
              font-weight: bold;
              color: #1c8c42;
              margin-bottom: 20px;
              padding-bottom: 5px; }
              .p-advantage__sec1 .-box--block-2 .-beforeafter > div dl dt > img {
                position: absolute;
                bottom: 0; }
                .p-advantage__sec1 .-box--block-2 .-beforeafter > div dl dt > img.-l {
                  left: 0; }
                .p-advantage__sec1 .-box--block-2 .-beforeafter > div dl dt > img.-r {
                  right: 0; }
            .p-advantage__sec1 .-box--block-2 .-beforeafter > div dl dd p + p {
              margin-top: 30px;
              padding-top: 20px;
              border-top: 2px solid #89c997; }
          @media screen and (max-width: 1100px) {
            .p-advantage__sec1 .-box--block-2 .-beforeafter {
              padding: 0;
              flex-wrap: wrap; }
              .p-advantage__sec1 .-box--block-2 .-beforeafter > div {
                width: 100%; }
                .p-advantage__sec1 .-box--block-2 .-beforeafter > div + div {
                  margin-top: 40px; }
                  .p-advantage__sec1 .-box--block-2 .-beforeafter > div + div::before {
                    left: 0;
                    right: 0;
                    margin: 0 auto;
                    top: -27px;
                    transform: rotate(90deg);
                    height: 10px; }
                .p-advantage__sec1 .-box--block-2 .-beforeafter > div dl dt {
                  margin-bottom: 10px;
                  padding-bottom: 0; }
                  .p-advantage__sec1 .-box--block-2 .-beforeafter > div dl dt > img {
                    height: 70px; } }
      .p-advantage__sec1 .-box--list > ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: center; }
        .p-advantage__sec1 .-box--list > ul > li {
          width: 264px;
          font-size: 20px;
          text-align: center;
          font-weight: bold;
          margin: 30px; }
          .p-advantage__sec1 .-box--list > ul > li dl dt {
            text-align: center;
            margin: 10px 0; }
          .p-advantage__sec1 .-box--list > ul > li dl dd {
            font-size: 14px; }
        @media screen and (max-width: 1100px) {
          .p-advantage__sec1 .-box--list > ul > li {
            width: 50%;
            padding: 10px 5px;
            margin: 0;
            font-size: 16px; }
            .p-advantage__sec1 .-box--list > ul > li > p {
              margin-top: 5px; } }
  .p-advantage #advantage2 dl dd p {
    font-weight: bold; }

/* =============================================================================
	download
   ========================================================================== */
.p-download * {
  box-sizing: border-box;
  word-break: break-all;
  overflow-wrap: break-word; }
.p-download img {
  vertical-align: middle; }
.p-download dl {
  margin: 0; }
  .p-download dl dt, .p-download dl dd {
    margin: 0; }
.p-download__sec1 {
  padding: 50px 0; }
  .p-download__sec1 .-box--1 > div {
    padding: 140px 0; }
  .p-download__sec1 .-box--1.-bg {
    background: #fafafa; }
  .p-download__sec1 .-box--1__cont {
    width: 1080px;
    margin: 0 auto 40px;
    display: flex;
    justify-content: space-between; }
    .p-download__sec1 .-box--1__cont > div {
      width: 510px; }
      .p-download__sec1 .-box--1__cont > div h3 {
        font-size: 25px;
        font-weight: bold;
        margin-bottom: 20px;
        position: relative;
        padding-bottom: 10px; }
        .p-download__sec1 .-box--1__cont > div h3::after {
          content: '';
          height: 3px;
          width: 100%;
          position: absolute;
          left: 0;
          bottom: 0;
          background: #0fbc9d;
          /* Old browsers */
          background: -moz-linear-gradient(left, #0fbc9d 0%, #40d08b 100%);
          /* FF3.6-15 */
          background: -webkit-linear-gradient(left, #0fbc9d 0%, #40d08b 100%);
          /* Chrome10-25,Safari5.1-6 */
          background: linear-gradient(to right, #0fbc9d 0%, #40d08b 100%);
          /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */ }
      .p-download__sec1 .-box--1__cont > div h4 {
        font-size: 18px;
        font-weight: bold;
        margin-bottom: 20px; }
  @media screen and (max-width: 800px) {
    .p-download__sec1 .-box--1 {
      padding: 0 20px; }
      .p-download__sec1 .-box--1.-bg {
        padding: 0 20px; }
      .p-download__sec1 .-box--1 > div {
        padding: 50px 0; }
      .p-download__sec1 .-box--1__cont {
        width: 100%;
        flex-wrap: wrap; }
        .p-download__sec1 .-box--1__cont > div {
          width: 100%; }
          .p-download__sec1 .-box--1__cont > div + div {
            text-align: center;
            margin-top: 20px; }
          .p-download__sec1 .-box--1__cont > div h3 {
            font-size: 20px; }
          .p-download__sec1 .-box--1__cont > div h4 {
            font-size: 16px; } }

/* =============================================================================
	products
   ========================================================================== */
.p-products * {
  box-sizing: border-box;
  word-break: break-all;
  overflow-wrap: break-word; }
.p-products img {
  vertical-align: middle; }
.p-products dl {
  margin: 0; }
  .p-products dl dt, .p-products dl dd {
    margin: 0; }
@media screen and (min-width: 1181px) {
  .p-products .sp {
    display: none !important; }
  .p-products .-box--1__img.sp {
    display: none !important; }
  .p-products .-box--1__img.pc {
    display: flex !important; }
  .p-products .phase-btn.pc {
    display: block !important; } }
@media screen and (max-width: 1180px) {
  .p-products .phase-btn.sp {
    display: block !important; }
  .p-products .-box--1__img.sp {
    display: flex !important; }
  .p-products .slide--img-2.sp li {
    display: block !important; }
  .p-products .-box--1__img.pc {
    display: none !important; }
  .p-products .pc {
    display: none !important; } }
.p-products__sec1 {
  padding: 50px 20px; }
  .p-products__sec1 > div {
    width: 1120px;
    margin: 0 auto; }
    .p-products__sec1 > div .-box--1 {
      padding: 110px 0; }
      .p-products__sec1 > div .-box--1__cont {
        display: flex;
        justify-content: space-between;
        margin-bottom: 50px; }
        .p-products__sec1 > div .-box--1__cont > div:first-child {
          width: 578px; }
        .p-products__sec1 > div .-box--1__cont > div + div {
          width: 500px; }
          .p-products__sec1 > div .-box--1__cont > div + div h3 {
            font-size: 40px;
            font-weight: bold;
            border-bottom: 2px solid #89c997;
            margin-bottom: 30px;
            padding-bottom: 10px;
            line-height: 1.3; }
          .p-products__sec1 > div .-box--1__cont > div + div p {
            font-size: 16px;
            margin-bottom: 20px; }
          .p-products__sec1 > div .-box--1__cont > div + div .phase-btn {
            margin-left: 0; }
      .p-products__sec1 > div .-box--1__img {
        display: flex;
        flex-wrap: wrap;
        justify-content: center; }
        .p-products__sec1 > div .-box--1__img li {
          padding: 10px 15px; }
    @media screen and (max-width: 1180px) {
      .p-products__sec1 > div {
        width: 100%; }
        .p-products__sec1 > div .phase-btn {
          margin-top: 30px; }
        .p-products__sec1 > div .-box--1 {
          padding: 50px 0; }
          .p-products__sec1 > div .-box--1__cont {
            flex-wrap: wrap;
            margin-bottom: 20px; }
            .p-products__sec1 > div .-box--1__cont > div {
              width: 100% !important; }
              .p-products__sec1 > div .-box--1__cont > div:first-child {
                text-align: center; }
              .p-products__sec1 > div .-box--1__cont > div + div {
                margin-top: 20px; }
                .p-products__sec1 > div .-box--1__cont > div + div h3 {
                  font-size: 20px;
                  margin-bottom: 20px; }
          .p-products__sec1 > div .-box--1__img li {
            padding: 5px; }
          .p-products__sec1 > div .-box--1 .slide--img-2 li img {
            width: 100%;
            padding: 5px; }
          .p-products__sec1 > div .-box--1 .non-left {
            margin: auto !important; } }
    @media screen and (max-width: 767px) {
      .p-products__sec1 > div {
        width: 100%; }
        .p-products__sec1 > div .phase-btn {
          margin-top: 30px; }
        .p-products__sec1 > div .-box--1 {
          padding: 50px 0; }
          .p-products__sec1 > div .-box--1__cont {
            flex-wrap: wrap;
            margin-bottom: 20px; }
            .p-products__sec1 > div .-box--1__cont > div {
              width: 100% !important; }
              .p-products__sec1 > div .-box--1__cont > div:first-child {
                text-align: center; }
              .p-products__sec1 > div .-box--1__cont > div + div {
                margin-top: 20px; }
                .p-products__sec1 > div .-box--1__cont > div + div h3 {
                  font-size: 20px;
                  margin-bottom: 20px; }
          .p-products__sec1 > div .-box--1__img li {
            width: 50%;
            padding: 5px; }
          .p-products__sec1 > div .-box--1 .slide--img-2 li {
            width: 100%;
            padding: 5px; }
          .p-products__sec1 > div .-box--1 .non-left {
            margin: auto !important; } }

/* =============================================================================
	contact
   ========================================================================== */
.p-contact .-c-red {
  color: red; }
.p-contact * {
  box-sizing: border-box;
  word-break: break-all;
  overflow-wrap: break-word; }
.p-contact img {
  vertical-align: middle; }
.p-contact dl {
  margin: 0; }
  .p-contact dl dt, .p-contact dl dd {
    margin: 0; }
.p-contact__sec1 {
  padding: 50px 20px; }
  .p-contact__sec1 .-box--1 {
    padding: 50px 0 100px;
    width: 705px;
    margin: 0 auto; }
    @media screen and (max-width: 800px) {
      .p-contact__sec1 .-box--1 {
        width: 100%;
        padding: 50px 0; } }
    .p-contact__sec1 .-box--1 > p {
      text-align: center;
      border-bottom: 2px solid #89c997;
      padding-bottom: 10px;
      margin-bottom: 40px; }
    .p-contact__sec1 .-box--1 table {
      width: 100%;
      margin-bottom: 20px;
      font-weight: bold; }
      .p-contact__sec1 .-box--1 table td {
        font-size: 16px;
        padding-bottom: 30px;
        vertical-align: top; }
        .p-contact__sec1 .-box--1 table td textarea, .p-contact__sec1 .-box--1 table td input[type="text"] {
          width: 100%;
          font-size: 16px;
          padding: 5px 10px; }
        .p-contact__sec1 .-box--1 table td p {
          font-weight: bold; }
        @media screen and (max-width: 800px) {
          .p-contact__sec1 .-box--1 table td.-w {
            width: 120px; } }
    .p-contact__sec1 .-box--1 .-sendbtn {
      margin-bottom: 120px;
      text-align: center; }
      @media screen and (max-width: 800px) {
        .p-contact__sec1 .-box--1 .-sendbtn {
          margin-bottom: 50px; } }
      .p-contact__sec1 .-box--1 .-sendbtn button {
        background: #0fbc9d;
        /* Old browsers */
        background: -moz-linear-gradient(left, #0fbc9d 0%, #40d08b 100%);
        /* FF3.6-15 */
        background: -webkit-linear-gradient(left, #0fbc9d 0%, #40d08b 100%);
        /* Chrome10-25,Safari5.1-6 */
        background: linear-gradient(to right, #0fbc9d 0%, #40d08b 100%);
        /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
        border-radius: 40px;
        border: none;
        padding: 2px;
        cursor: pointer;
        overflow: hidden; }
        .p-contact__sec1 .-box--1 .-sendbtn button > span {
          display: block;
          padding: 5px 40px;
          background: #fff;
          border-radius: 40px;
          position: relative; }
          .p-contact__sec1 .-box--1 .-sendbtn button > span::before {
            content: '';
            position: absolute;
            left: 0;
            top: 0;
            right: 0;
            bottom: 0;
            background: #0fbc9d;
            /* Old browsers */
            background: -moz-linear-gradient(left, #0fbc9d 0%, #40d08b 100%);
            /* FF3.6-15 */
            background: -webkit-linear-gradient(left, #0fbc9d 0%, #40d08b 100%);
            /* Chrome10-25,Safari5.1-6 */
            background: linear-gradient(to right, #0fbc9d 0%, #40d08b 100%);
            /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
            transform-origin: right top;
            transform: scale(0, 1);
            transition: transform .3s;
            border-radius: 40px; }
          .p-contact__sec1 .-box--1 .-sendbtn button > span::after {
            position: absolute;
            right: 10px;
            content: '';
            background: url(../img/contact/icon--arrow--grad.png) no-repeat center;
            background-size: contain;
            width: 7px;
            height: 14px;
            z-index: 1;
            top: 8px; }
          .p-contact__sec1 .-box--1 .-sendbtn button > span > span {
            position: relative;
            z-index: 10;
            color: #1c8c42;
            transition: all 0.2s; }
          .p-contact__sec1 .-box--1 .-sendbtn button > span:hover::before {
            transform-origin: left top;
            transform: scale(1, 1); }
          .p-contact__sec1 .-box--1 .-sendbtn button > span:hover::after {
            background: url(../img/contact/icon--arrow--white.png) no-repeat center; }
          .p-contact__sec1 .-box--1 .-sendbtn button > span:hover > span {
            color: #fff; }
    .p-contact__sec1 .-box--1 > div > p {
      font-size: 16px; }
      .p-contact__sec1 .-box--1 > div > p a {
        text-decoration: underline;
        color: #1b8e3a;
        font-weight: bold; }
        .p-contact__sec1 .-box--1 > div > p a:hover {
          text-decoration: none; }

/* =============================================================================
	flow
   ========================================================================== */
.p-flow * {
  box-sizing: border-box;
  word-break: break-all;
  overflow-wrap: break-word; }
.p-flow img {
  vertical-align: middle; }
.p-flow dl {
  margin: 0; }
  .p-flow dl dt, .p-flow dl dd {
    margin: 0; }
.p-flow__sec1 {
  padding: 50px 20px; }
  .p-flow__sec1 h2 {
    margin-bottom: 110px; }
    @media screen and (max-width: 800px) {
      .p-flow__sec1 h2 {
        margin-bottom: 30px; } }
  .p-flow__sec1 .-flowlist {
    width: 1080px;
    margin: 0 auto;
    font-size: 15px; }
    @media screen and (max-width: 800px) {
      .p-flow__sec1 .-flowlist {
        width: 100%;
        font-size: 14px; } }
    .p-flow__sec1 .-flowlist > li {
      position: relative;
      background: #cef7dc;
      display: flex;
      justify-content: space-between;
      padding: 20px;
      flex-wrap: wrap; }
      .p-flow__sec1 .-flowlist > li::before, .p-flow__sec1 .-flowlist > li::after {
        position: absolute;
        left: 0;
        right: 0;
        bottom: -50px;
        margin: 0 auto;
        content: '';
        width: 0;
        height: 0;
        border-style: solid; }
      .p-flow__sec1 .-flowlist > li::before {
        border-width: 50px 50px 0 50px;
        border-color: #cef7dc transparent transparent transparent;
        z-index: 3; }
      .p-flow__sec1 .-flowlist > li::after {
        border-width: 54px 54px 0 54px;
        border-color: #fff transparent transparent transparent;
        z-index: 2;
        bottom: -54px; }
      .p-flow__sec1 .-flowlist > li + li {
        margin-top: 40px; }
      .p-flow__sec1 .-flowlist > li > div:first-child {
        width: 500px; }
      .p-flow__sec1 .-flowlist > li > div + div {
        width: 509px; }
      .p-flow__sec1 .-flowlist > li > div h3 {
        margin: 25px 0 25px -40px;
        display: flex;
        align-items: center; }
        .p-flow__sec1 .-flowlist > li > div h3 > span {
          background: #1c8c42;
          padding: 5px 30px;
          font-size: 18px;
          font-weight: bold;
          color: #fff; }
          .p-flow__sec1 .-flowlist > li > div h3 > span > span {
            font-size: 25px; }
        .p-flow__sec1 .-flowlist > li > div h3 > strong {
          font-size: 20px;
          padding-left: 20px; }
          .p-flow__sec1 .-flowlist > li > div h3 > strong > span {
            font-size: 28px; }
      @media screen and (max-width: 800px) {
        .p-flow__sec1 .-flowlist > li + li {
          margin-top: 16px; }
        .p-flow__sec1 .-flowlist > li::before, .p-flow__sec1 .-flowlist > li::after {
          bottom: -25px; }
        .p-flow__sec1 .-flowlist > li::before {
          border-width: 25px 25px 0 25px; }
        .p-flow__sec1 .-flowlist > li::after {
          border-width: 29px 29px 0 29px;
          bottom: -29px; }
        .p-flow__sec1 .-flowlist > li > div {
          width: 100% !important; }
          .p-flow__sec1 .-flowlist > li > div + div {
            margin-top: 20px; }
          .p-flow__sec1 .-flowlist > li > div h3 {
            margin: 0 0 20px -35px; }
            .p-flow__sec1 .-flowlist > li > div h3 > span {
              padding: 2px 0;
              font-size: 15px;
              width: 96px;
              text-align: center; }
              .p-flow__sec1 .-flowlist > li > div h3 > span > span {
                font-size: 20px; }
            .p-flow__sec1 .-flowlist > li > div h3 > strong {
              font-size: 15px; }
              .p-flow__sec1 .-flowlist > li > div h3 > strong > span {
                font-size: 20px; } }
    .p-flow__sec1 .-flowlist.-green > li {
      border: 3px solid #1c8c42; }
      .p-flow__sec1 .-flowlist.-green > li::after {
        border-width: 54px 54px 0 54px;
        border-color: #1c8c42 transparent transparent transparent;
        z-index: 2;
        bottom: -54px; }
        @media screen and (max-width: 800px) {
          .p-flow__sec1 .-flowlist.-green > li::after {
            border-width: 29px 29px 0 29px;
            bottom: -29px; } }
      .p-flow__sec1 .-flowlist.-green > li:last-child::before, .p-flow__sec1 .-flowlist.-green > li:last-child::after {
        display: none; }
  .p-flow__sec1 .-txt {
    margin: 50px 0 10px;
    text-align: center; }



/* =======================================================================
	about
========================================================================== */

.page_about {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
	padding: 60px 0;
}

.mds_about1 {
	margin: 0 0 10px;
	padding: 0;
	font-size: 27px;
	font-weight: 900;
	text-align: center;
}

.en_mds_about1 {
	width: 80px;
	margin: 0 auto 30px;
	padding: 0;
}

.lead_about1 {
	width: 94.4%;
	margin: 0 auto 50px;
	padding: 0;
	font-size: 16px;
	font-weight: 600;
	text-align: center;
}

.col_about1 {
	width: 90.4%;
	margin: 0 auto 5%;
	padding: 0;
	background-color: #fff;
}

.mds_about2 {
	margin: 0;
	padding: 0.4em;
	color: #fff;
	font-size: 25px;
	font-weight: 900;
	line-height: 1.4;
	text-align: center;
	background-color: #1c8942;
}

.mds_about2 span.iblock {
	font-size: 25px;
}

.cont_about1 {
	width: 94%;
	margin: 0 auto;
	padding: 40px 0 60px;
}

.cont_about1 .pink {
	color: #ff4291;
}

.lead_about2 {
	margin: 0 0 40px;
	padding: 0;
	font-size: 20px;
	font-weight: 600;
	text-align: center;
}

.img_flow_about1 {
	width: 100%;
	max-width: 918px;
	margin: 0 auto 30px;
	padding: 0;
}

.txt_about1 {
	margin: 0 0 30px;
	padding: 0;
	font-size: 14px;
	font-weight: 500;
	text-align: center;
}

.box_txt_about1 {
	width: 100%;
	max-width: 695px;
	margin: 0 auto;
	padding: 20px 15px;
	font-size: 22px;
	font-weight: 600;
	text-align: center;
	line-height: 1.5;
	background-color: #dbe9e7;
	box-sizing: border-box;
}

.col_flow_about2 {
	width: 100%;
	margin: 0;
	padding: 0;
	position: relative;
	z-index: 0;
}

.img_flow_about2 {
	width: 100%;
	max-width: 914px;
	margin: 0 auto;
	padding: 0;
}

.btn_flow_about2 {
	display: none;
}

.col_point_about {
	width: 100%;
	max-width: 962px;
	margin: 0 auto 60px;
	padding: 0;
	display: flex;
	justify-content: space-between;
}

.col_point_about:last-child {
	margin-bottom: 0;
}

.col_point_about .img {
	width: calc( 95% - 434px );
	margin: 0;
	padding: 0;
}

.col_point_about dl.txt {
	width: 434px;
	margin: 0;
	padding: 0;
}

.col_point_about dl.txt dt {
	margin: 0;
	padding: 0 3px 20px;
	font-weight: 600;
	border-bottom: solid 1px #1b8842;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.col_point_about dl.txt dt .main {
	margin: 0;
	padding: 0;
	color: #1c8942;
	font-size: 34px;
	line-height: 1.2;
}

.col_point_about dl.txt dt .pink {
	margin: 0;
	padding: 0;
	font-size: 19px;
}

.col_point_about dl.txt dd {
	margin: 0;
	padding: 10px 3px;
	font-weight: 500;
}

.col_point_about dl.txt dd a.btn_example {
	width: 100%;
	max-width: 262px;
	height: 42px;
	margin: 25px 0 0;
	padding: 6px 0 0 20px;
	color: #20bd91;
	font-size: 14px;
	border: solid 2px #20bd91;
	border-radius: 21px;
	-moz-border-radius: 21px;
	-webkit-border-radius: 21px;
	box-sizing: border-box;
	display: block;
	transition: all .3s;
	-moz-transition: all .3s;
	-webkit-transition: all .3s;
	position: relative;
	z-index: 0;
}

.col_point_about dl.txt dd a.btn_example:before {
	content: "";
	width: 40px;
	height: 8px;
	margin: 0;
	padding: 0;
	border-right: solid 1px #20bd91;
	border-bottom: solid 1px #20bd91;
	transform: skewX(45deg);
	position: absolute;
	top: 11px;
	left: calc( 100% - 60px );
}



/* =======================================================================
	pumphlet, company information
========================================================================== */

.video_content p {
	margin: 0 0 1em;
}

.video_content h2 {
	padding: 0 10px;
	font-size: 1.6em;
	text-align: left;
	border-bottom: solid 2px #555;
}
.video_content h3 {
	padding: 4px 10px 5px;
	font-size: 1.3em;
	background-color: #eee;
}
.video_content h4 {
	padding: 0 9px;
	font-size: 1.1em;
	border-left: solid 3px #1c8842;
}
.video_content h5 {
	color: #1c8842;
	font-size: 1.1em;
}
.video_content h6 { font-size: 0.9em; }

.video_content h3,
.video_content h4,
.video_content h5,
.video_content h6 {
	margin-bottom: 1em;
}



@media screen and (max-width: 850px) {
	
	.img_flow_about2 {
		overflow: auto;
	}
	
	.img_flow_about2 img {
		width: 913px;
		max-width: 913px;
	}
	
	.btn_flow_about2 {
		width: 85vw;
		display: flex;
		justify-content: space-between;
		position: absolute;
		top: calc( 50% - 37px );
		left: 0;
	}
	
	.btn_flow_about2 div {
		width: 74px;
		height: 74px;
		margin: 0;
		padding: 0;
	}
	
	.btn_flow_about2 .left,
	.btn_flow_about2 .right {
		background-color: rgba(28,137,66,0.5);
		border-radius: 50%;
		-moz-border-radius: 50%;
		-webkit-border-radius: 50%;
		position: relative;
		z-index: 0;
	}
	
	.btn_flow_about2 .left:hover,
	.btn_flow_about2 .right:hover {
		background-color: rgba(28,137,66,0.7);
	}
	
	.btn_flow_about2 .left:before,
	.btn_flow_about2 .right:before {
		content: "";
		width: 22px;
		height: 22px;
		margin: -11px 0 0;
		padding: 0;
		transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		position: absolute;
		top: 50%;
		left: 50%;
	}
	
	.btn_flow_about2 .left:before {
		margin: -11px 0 0 -7px;
		border-left: solid 3px #fff;
		border-bottom: solid 3px #fff;
	}
	
	.btn_flow_about2 .right:before {
		margin: -11px 0 0 -18px;
		border-top: solid 3px #fff;
		border-right: solid 3px #fff;
	}
	
	.col_point_about .img {
		width: 35%;
	}
	
	.col_point_about dl.txt {
		width: 60%;
	}
	
	.col_point_about dl.txt dt .main {
		font-size: 4vw;
	}
	
	.col_point_about dl.txt dt .pink {
		font-size: 2.1vw;
	}
	
}


@media screen and (min-width: 701px) {
	
	.col_point_about dl.txt dd a.btn_example:hover {
		color: #fff;
		background-color: #20bd91;
	}
	
	.col_point_about dl.txt dd a.btn_example:hover:before {
		border-color: #fff;
	}

}


@media screen and (max-width: 700px) {
	
	.txt_about1 {
		text-align: left;
	}
	
	.col_point_about {
		margin: 0 auto 8%;
		display: block;
	}
	
	.col_point_about .img {
		width: 100%;
		margin: 0 0 15px;
	}
	
	.col_point_about dl.txt {
		width: 100%;
	}
	
	.col_point_about dl.txt dt {
		padding: 0 3px 15px;
	}
	
	.col_point_about dl.txt dt .main {
		font-size: 32px;
	}
	
	.col_point_about dl.txt dt .pink {
		font-size: 19px;
	}
	
	.col_point_about dl.txt dd a.btn_example {
		margin: 25px auto 0;
	}
	
}


@media screen and (max-width: 500px) {
	
	.col_point_about dl.txt dt {
		padding: 0 3px 3vw;
	}
	
	.col_point_about dl.txt dt .main {
		font-size: 6.8vw;
	}
	
	.col_point_about dl.txt dt .pink {
		font-size: 3.8vw;
	}
	
	
}

@media screen and (max-width: 450px) {
	
	.mds_about2,
	.mds_about2 span.iblock {
		font-size: 6vw;
	}
	
	.cont_about1 {
		padding: 8vw 0 13vw;
	}
	
	.box_txt_about1 {
		padding: 4.4vw 3.3vw;
		font-size: 5.2vw;
	}
	
	.btn_flow_about2 div {
		width: 50px;
		height: 50px;
	}
	
	.btn_flow_about2 .left:before,
	.btn_flow_about2 .right:before {
		width: 16px;
		height: 16px;
	}
	
	.btn_flow_about2 .left:before {
		margin: -8px 0 0 -7px;
	}
	
	.btn_flow_about2 .right:before {
		margin: -8px 0 0 -14px;
	}
	
	
	
}
