@charset "UTF-8";
/*スマホをデフォルトとしてCSSを書く*/
/*タブレット・PC用*/
/*PCL用*/
/*--------------------------
今日から始める環境アクション MakeTheSwich
---------------------------*/
/*グリーン*/
/*ライトグリーン*/
/*濃いグレイ*/
/*アイボリー*/
/*ライトグレイ*/
.kankyoaction {
  width: 100vw;
  padding: 0 !important;
  /* sp or pc */
  /* img */
  /* wraper */
  /* sub */
  /* h1 */
  /* keyvisual */
  /* ページネーション*/
  /* Arrows */
  /*section*/
  /*sec01*/
  /*sec02*/
  /*sec03*/
  /*sec04*/
  /*popup*/
  /*concept__ditail*/
  /*case__ditail*/ }
  @media only screen and (min-width: 768px) {
    .kankyoaction {
      width: 100%;
      padding: 10px 0 0 !important; } }
  .kankyoaction .bg__wrap {
    width: 100vw;
    padding: 12vw 0 0;
    background-image: url("/products/environment/kankyoaction/images/bg_sp.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-position: top center; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .bg__wrap {
        width: 100%;
        padding: 100px 0 0;
        background-image: url("/products/environment/kankyoaction/images/bg_pc.jpg");
        background-size: cover; } }
    @media only screen and (min-width: 1601px) {
      .kankyoaction .bg__wrap {
        background-size: cover; } }
  @media only screen and (min-width: 768px) {
    .kankyoaction .forsp {
      display: none !important; } }
  .kankyoaction .forpc {
    display: none; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .forpc {
        display: inline-block !important; } }
  .kankyoaction .bg__wrap img {
    width: 100%;
    height: auto; }
  .kankyoaction__wrap {
    width: 100vw; }
    @media only screen and (min-width: 768px) {
      .kankyoaction__wrap {
        width: 1240px;
        margin: 0 auto; } }
  .kankyoaction sub {
    vertical-align: baseline;
    font-size: 70%; }
  .kankyoaction .kankyoaction__header {
    font-size: 3.5vw;
    margin: 0 15px 3vw; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .kankyoaction__header {
        font-size: 20px;
        max-width: 1240px;
        margin: 0 auto 16px; } }
  .kankyoaction .kv__inner {
    width: 100vw; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .kv__inner {
        width: 1240px;
        margin: 0 auto; } }
    .kankyoaction .kv__inner__title {
      width: 79.25vw;
      margin: 0 auto; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .kv__inner__title {
          width: 903px;
          margin: 0 auto; } }
    .kankyoaction .kv__inner__close_coment {
      text-align: center;
      margin-top: 2.5em;
      font-size: 3vw; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .kv__inner__close_coment {
          font-size: 20px; } }
    .kankyoaction .kv__inner__close_scene {
      width: 80vw;
      text-align: center;
      margin: 5vw auto 0; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .kv__inner__close_scene {
          width: 850px;
          margin-top: 60px; } }
    .kankyoaction .kv__inner__visual {
      width: 86.5vw;
      margin: 7.5vw auto 0;
      border: 1.25vw solid #198496;
      border-bottom: 6vw solid #198496; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .kv__inner__visual {
          width: 1116px;
          margin: 80px auto 0;
          border: 14px solid #198496;
          border-bottom: 50px solid #198496; } }
  .kankyoaction .slick-num {
    bottom: -6vw;
    font-size: 3vw;
    font-weight: bold;
    color: #FFF;
    line-height: 2;
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .slick-num {
        bottom: -42px;
        font-size: 18px; } }
    .kankyoaction .slick-num .start_btn, .kankyoaction .slick-num .stop_btn {
      display: inline-block;
      width: 3vw;
      height: 3vw;
      cursor: pointer;
      margin-left: 2vw;
      text-indent: -9999px;
      opacity: 0.5;
      background-size: 100% auto; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .slick-num .start_btn, .kankyoaction .slick-num .stop_btn {
          width: 22px;
          height: 23px;
          margin-left: 20px;
          background-size: auto auto; } }
      .kankyoaction .slick-num .start_btn:hover, .kankyoaction .slick-num .stop_btn:hover {
        opacity: 0.75; }
      .kankyoaction .slick-num .start_btn.off, .kankyoaction .slick-num .stop_btn.off {
        display: none; }
    .kankyoaction .slick-num .start_btn {
      background-image: url("/products/environment/kankyoaction/images/start_btn.png"); }
    .kankyoaction .slick-num .stop_btn {
      background-image: url("/products/environment/kankyoaction/images/stop_btn.png"); }
  .kankyoaction .slick-prev,
  .kankyoaction .slick-next {
    z-index: 99;
    font-size: 0;
    line-height: 0;
    position: absolute;
    top: inherit !important;
    display: block;
    width: 4vw;
    height: 4vw;
    padding: 0;
    -webkit-transform: translate(0, 0) !important;
    -ms-transform: translate(0, 0) !important;
    transform: translate(0, 0) !important;
    cursor: pointer;
    color: transparent;
    border: none;
    outline: none;
    background: transparent;
    bottom: -5.5vw; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .slick-prev,
      .kankyoaction .slick-next {
        width: 32px;
        height: 32px;
        bottom: -42px; } }
  .kankyoaction .slick-prev:hover,
  .kankyoaction .slick-prev:focus,
  .kankyoaction .slick-next:hover,
  .kankyoaction .slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent; }
  .kankyoaction .slick-prev:hover:before,
  .kankyoaction .slick-prev:focus:before,
  .kankyoaction .slick-next:hover:before,
  .kankyoaction .slick-next:focus:before {
    opacity: .75; }
  .kankyoaction .slick-prev.slick-disabled:before,
  .kankyoaction .slick-next.slick-disabled:before {
    opacity: .25; }
  .kankyoaction .slick-prev:before,
  .kankyoaction .slick-next:before {
    font-family: 'slick';
    font-size: 4vw;
    line-height: 1;
    opacity: .5;
    color: #fff;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .slick-prev:before,
      .kankyoaction .slick-next:before {
        font-size: 32px; } }
  .kankyoaction .slick-prev {
    left: 25vw; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .slick-prev {
        left: 400px; } }
  .kankyoaction [dir='rtl'] .slick-prev {
    right: -400px;
    left: auto; }
  .kankyoaction .slick-prev:before {
    content: '←'; }
  .kankyoaction [dir='rtl'] .slick-prev:before {
    content: '→'; }
  .kankyoaction .slick-next {
    right: 25vw; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .slick-next {
        right: 400px; } }
  .kankyoaction [dir='rtl'] .slick-next {
    right: auto;
    left: -400px; }
  .kankyoaction .slick-next:before {
    content: '→'; }
  .kankyoaction [dir='rtl'] .slick-next:before {
    content: '←'; }
  .kankyoaction .section__inner {
    width: 100vw; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .section__inner {
        width: 1240px;
        margin: 0 auto; } }
  .kankyoaction .sec01 {
    margin: 12vw auto 0; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .sec01 {
        margin: 130px auto 0; } }
    .kankyoaction .sec01__title {
      color: #198496;
      width: 10em;
      margin: 6.5vw auto 0;
      position: relative;
      padding: 0.5rem 0.3em;
      font-size: 5.5vw;
      font-weight: bold;
      text-align: center; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec01__title {
          margin: 47px auto 0;
          font-size: 58px; } }
      .kankyoaction .sec01__title::before, .kankyoaction .sec01__title::after {
        position: absolute;
        width: 5vw;
        height: 5vw;
        content: ''; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .sec01__title::before, .kankyoaction .sec01__title::after {
            width: 50px;
            height: 50px; } }
      .kankyoaction .sec01__title::before {
        border-left: solid 1px;
        border-top: solid 1px;
        top: 0;
        left: 0; }
      .kankyoaction .sec01__title::after {
        border-right: solid 1px;
        border-bottom: solid 1px;
        bottom: 0;
        right: 0; }
    .kankyoaction .sec01__lead {
      margin: 3.75vw auto 0;
      font-size: 3.75vw;
      line-height: 1.86;
      font-weight: bold;
      text-align: center; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec01__lead {
          margin: 40px auto 0;
          font-size: 24px;
          line-height: 1.6; } }
  .kankyoaction .sec02 {
    margin: 14.25vw auto 0; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .sec02 {
        margin: 164px auto 0; } }
    .kankyoaction .sec02__title {
      color: #3e3a39;
      font-size: 3.5vw;
      line-height: 1;
      text-align: center; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec02__title {
          font-size: 33px; } }
    .kankyoaction .sec02__lead {
      margin: 5vw auto 0;
      color: #198496;
      font-size: 4vw;
      line-height: 1.5;
      font-weight: bold;
      text-align: center; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec02__lead {
          margin: 30px auto 0;
          font-size: 42px; } }
    .kankyoaction .sec02 .viewmore__btn {
      display: block;
      width: 34vw;
      margin: 7.5vw auto 0;
      padding: 0.5em 0;
      background-color: #3e3a39;
      background-image: url("/products/environment/kankyoaction/images/bt_arrow.svg"), url("/products/environment/kankyoaction/images/bt_loupe.svg");
      background-position: left 3vw center, right 2.5vw center;
      background-size: 2vw auto, 2vw auto;
      background-repeat: no-repeat, no-repeat;
      border: none;
      border-radius: 5vw;
      color: #fff;
      text-align: center;
      font-size: 3.5vw;
      font-weight: bold; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec02 .viewmore__btn {
          width: 227px;
          margin: 52px auto 0;
          font-size: 22px;
          background-position: left 25px center, right 20px center;
          background-size: 13px auto, 13px auto;
          cursor: pointer; } }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec02 .viewmore__btn:hover, .kankyoaction .sec02 .viewmore__btn:focus {
          opacity: 0.8; } }
  .kankyoaction .sec03 {
    margin: 26.25vw auto 0; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .sec03 {
        margin: 278px auto 0; } }
    .kankyoaction .sec03__title {
      width: 56.5vw;
      margin: 0 auto; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec03__title {
          width: 675px; } }
    .kankyoaction .sec03 .declare__box {
      width: 92vw;
      margin: 10.75vw auto;
      border: #198496 solid 0.5vw;
      border-radius: 6.25vw;
      padding: 5vw 0 7vw;
      background: #FFF; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec03 .declare__box {
          width: 1116px;
          margin: 112px auto;
          border: #198496 solid 4px;
          border-radius: 45px;
          padding: 38px 0 52px; } }
      .kankyoaction .sec03 .declare__box:first-child {
        margin-top: 6.75vw; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .sec03 .declare__box:first-child {
            margin-top: 47px; } }
      .kankyoaction .sec03 .declare__box .declare__title {
        position: relative;
        font-size: 3vw;
        text-align: center;
        color: #198496;
        font-weight: normal;
        padding: 0 0 0.8em;
        border-bottom: #198496 solid 0.5vw;
        width: 80vw;
        height: 2em;
        margin: 0 auto; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .sec03 .declare__box .declare__title {
            font-size: 27px;
            text-align: left;
            padding: 0;
            border-bottom: #198496 solid 4px;
            width: 1034px;
            margin: 0 auto; } }
        .kankyoaction .sec03 .declare__box .declare__title:before {
          content: '';
          width: 2vw;
          height: 2vw;
          background: #198496;
          position: absolute;
          left: -1.25vw;
          bottom: -1.25vw;
          border-radius: 100%; }
          @media only screen and (min-width: 768px) {
            .kankyoaction .sec03 .declare__box .declare__title:before {
              width: 14px;
              height: 14px;
              left: -9px;
              bottom: -9px; } }
        .kankyoaction .sec03 .declare__box .declare__title:after {
          content: '';
          width: 2vw;
          height: 2vw;
          background: #198496;
          position: absolute;
          right: -1.25vw;
          bottom: -1.25vw;
          border-radius: 100%; }
          @media only screen and (min-width: 768px) {
            .kankyoaction .sec03 .declare__box .declare__title:after {
              width: 14px;
              height: 14px;
              right: -9px;
              bottom: -9px; } }
      .kankyoaction .sec03 .declare__box .declare__wrap {
        width: 75.5vw;
        margin: 4vw auto 0; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .sec03 .declare__box .declare__wrap {
            width: 1022px;
            margin: 26px auto 0;
            display: flex;
            justify-content: space-between; } }
        .kankyoaction .sec03 .declare__box .declare__wrap .declare__ph {
          width: 75.5vw; }
          @media only screen and (min-width: 768px) {
            .kankyoaction .sec03 .declare__box .declare__wrap .declare__ph {
              width: 454px;
              margin: 5px 0 0; } }
        .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea {
          width: 75.5vw; }
          @media only screen and (min-width: 768px) {
            .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea {
              width: 535px;
              margin: 0; } }
          .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea .declare__icon {
            width: 28.75vw;
            margin: 2.5vw auto 0; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea .declare__icon {
                width: 148px;
                margin: 0 auto 0; } }
          .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea .declare__lead {
            width: 100%;
            margin: 5vw auto 0; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea .declare__lead {
                margin: 5px auto 0; } }
          .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea .declare__name {
            font-size: 4.5vw;
            text-align: center;
            font-weight: bold;
            margin: 4vw auto 0; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea .declare__name {
                font-size: 32px;
                margin: 20px auto 0; } }
          .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea .declare__name__nr {
            font-size: 4.5vw;
            text-align: center;
            font-weight: bold;
            margin: 4vw auto 0;
            line-height: 1; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea .declare__name__nr {
                font-size: 32px;
                margin: 20px auto 0; } }
            .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea .declare__name__nr span {
              font-size: 2.5vw;
              line-height: 1.2;
              display: block;
              margin: 0.5em 0; }
              @media only screen and (min-width: 768px) {
                .kankyoaction .sec03 .declare__box .declare__wrap .declare__textarea .declare__name__nr span {
                  font-size: 15px; } }
  .kankyoaction .sec04 {
    margin: 9.5vw auto 0;
    padding: 9.5vw 0;
    background-color: #fffae4; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .sec04 {
        margin: 232px auto 0;
        padding: 232px 0 100px; } }
    .kankyoaction .sec04__title {
      font-size: 5vw;
      font-weight: bold;
      text-align: center;
      background-image: url("/products/environment/kankyoaction/images/earth_wave.svg");
      background-repeat: no-repeat;
      background-position: bottom center;
      background-size: 71.75vw auto;
      padding-bottom: 0.25em; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec04__title {
          position: relative;
          z-index: +1;
          font-size: 48px;
          width: 675px;
          margin: 0 auto;
          background-size: 640px auto; } }
    .kankyoaction .sec04__illust {
      width: 100%;
      margin: 8.5vw auto 0; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec04__illust {
          width: 990px;
          position: relative;
          margin: -35px auto 0; } }
    .kankyoaction .sec04__wrap {
      width: 86.25vw;
      margin: 10vw auto 0;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .sec04__wrap {
          width: 1070px;
          margin: 170px auto 0; } }
      .kankyoaction .sec04__wrap li {
        width: 41vw;
        margin-bottom: 6.5vw; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .sec04__wrap li {
            width: 512px;
            margin-bottom: 88px; } }
        .kankyoaction .sec04__wrap li .case__wrap {
          position: relative;
          background-color: #fff;
          border-radius: 4vw;
          padding-bottom: 4vw; }
          @media only screen and (min-width: 768px) {
            .kankyoaction .sec04__wrap li .case__wrap {
              border-radius: 50px;
              padding-bottom: 38px; } }
          .kankyoaction .sec04__wrap li .case__wrap .case__title {
            box-sizing: border-box;
            width: 36vw;
            height: 7.5vw;
            padding: 2vw 0 0;
            margin: 0 auto;
            transform: translateY(-2.5vw);
            font-size: 2.5vw;
            font-weight: bold;
            text-align: center;
            line-height: 1;
            color: #fff;
            background-image: url("/products/environment/kankyoaction/images/baloon_bk01.svg");
            background-size: cover; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec04__wrap li .case__wrap .case__title {
                width: 365px;
                height: 76px;
                padding: 20px 0 0;
                transform: translateY(-24px);
                font-size: 24px; } }
          .kankyoaction .sec04__wrap li .case__wrap.case03 .case__title {
            width: 41vw;
            height: 7.5vw;
            font-size: 2vw;
            padding: 2.1vw 0 0 0;
            background-image: url("/products/environment/kankyoaction/images/baloon_bk02.svg");
            background-size: cover; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec04__wrap li .case__wrap.case03 .case__title {
                width: 420px;
                height: 78px;
                padding: 22px 0 0 8px;
                font-size: 20px; } }
          .kankyoaction .sec04__wrap li .case__wrap .case__yearly {
            position: relative;
            font-size: 2vw;
            font-weight: bold;
            text-align: center;
            margin: 1.25vw auto 0; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec04__wrap li .case__wrap .case__yearly {
                font-size: 22px;
                margin: 10px auto 0; } }
            .kankyoaction .sec04__wrap li .case__wrap .case__yearly span {
              font-size: 3vw;
              color: #198496; }
              @media only screen and (min-width: 768px) {
                .kankyoaction .sec04__wrap li .case__wrap .case__yearly span {
                  font-size: 32px; } }
              .kankyoaction .sec04__wrap li .case__wrap .case__yearly span.ex {
                position: absolute;
                top: -0.75em;
                left: 2.2em;
                font-size: 2vw;
                color: #3e3a39; }
                @media only screen and (min-width: 768px) {
                  .kankyoaction .sec04__wrap li .case__wrap .case__yearly span.ex {
                    left: 3.8em;
                    font-size: 22px; } }
          .kankyoaction .sec04__wrap li .case__wrap .case__value {
            position: relative;
            text-align: center;
            font-size: 4vw;
            font-weight: bold;
            line-height: 1.1; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec04__wrap li .case__wrap .case__value {
                font-size: 42px; } }
            .kankyoaction .sec04__wrap li .case__wrap .case__value span.num {
              font-size: 200%; }
            .kankyoaction .sec04__wrap li .case__wrap .case__value span.note {
              position: absolute;
              font-size: 2vw; }
              @media only screen and (min-width: 768px) {
                .kankyoaction .sec04__wrap li .case__wrap .case__value span.note {
                  font-size: 12px; } }
          .kankyoaction .sec04__wrap li .case__wrap.case01 span.note {
            right: 5vw;
            top: 1vw; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec04__wrap li .case__wrap.case01 span.note {
                right: 150px;
                top: 10px; } }
          .kankyoaction .sec04__wrap li .case__wrap.case02 span.note {
            right: 3vw;
            top: 1vw; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec04__wrap li .case__wrap.case02 span.note {
                right: 125px;
                top: 10px; } }
          .kankyoaction .sec04__wrap li .case__wrap.case03 span.note {
            right: 5vw;
            top: 1vw; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec04__wrap li .case__wrap.case03 span.note {
                right: 150px;
                top: 10px; } }
          .kankyoaction .sec04__wrap li .case__wrap.case04 span.note {
            right: 3vw;
            top: 1vw; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec04__wrap li .case__wrap.case04 span.note {
                right: 155px;
                top: 10px; } }
          .kankyoaction .sec04__wrap li .case__wrap .case__viewmore__btn {
            display: block;
            width: 20.25vw;
            margin: 2.5vw auto 0;
            padding: 0.5em 0;
            background-color: #3e3a39;
            background-image: url("/products/environment/kankyoaction/images/bt_arrow.svg"), url("/products/environment/kankyoaction/images/bt_loupe.svg");
            background-position: left 1.2vw center, right 1.2vw center;
            background-size: 1.3vw auto, 1.3vw auto;
            background-repeat: no-repeat, no-repeat;
            border: none;
            border-radius: 5vw;
            color: #fff;
            text-align: center;
            font-size: 2.4vw;
            font-weight: bold; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec04__wrap li .case__wrap .case__viewmore__btn {
                width: 227px;
                margin: 15px auto 0;
                font-size: 22px;
                background-position: left 25px center, right 20px center;
                background-size: 13px auto, 13px auto;
                cursor: pointer; } }
            @media only screen and (min-width: 768px) {
              .kankyoaction .sec04__wrap li .case__wrap .case__viewmore__btn:hover, .kankyoaction .sec04__wrap li .case__wrap .case__viewmore__btn:focus {
                opacity: 0.8; } }
        .kankyoaction .sec04__wrap li .case__note {
          font-size: 2vw;
          text-align: right;
          line-height: 1.43;
          margin-top: 1em; }
          @media only screen and (min-width: 768px) {
            .kankyoaction .sec04__wrap li .case__note {
              font-size: 11px;
              margin-top: 1em; } }
          .kankyoaction .sec04__wrap li .case__note img {
            max-width: 15px; }
  .kankyoaction .concept__ditail {
    padding: 3vw 0 20vw; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .concept__ditail {
        padding: 30px 0; } }
    .kankyoaction .concept__ditail .close__btn__wrap {
      width: 92vw;
      margin: 0 auto;
      text-align: right; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .concept__ditail .close__btn__wrap {
          width: 1116px; } }
      .kankyoaction .concept__ditail .close__btn__wrap .close__btn {
        width: 10.75vw;
        height: 10.75vw;
        background-color: transparent;
        background-image: url("/products/environment/kankyoaction/images/close_bt.svg");
        background-size: cover;
        border: none; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .concept__ditail .close__btn__wrap .close__btn {
            width: 85px;
            height: 85px; } }
        @media only screen and (min-width: 768px) {
          .kankyoaction .concept__ditail .close__btn__wrap .close__btn:hover {
            opacity: 0.8;
            cursor: pointer; } }
    .kankyoaction .concept__ditail__wrap {
      width: 92vw;
      margin: 3vw auto 0;
      filter: drop-shadow(0.5vw 0.5vw 0.75vw rgba(199, 200, 200, 0.6)); }
      @media only screen and (min-width: 768px) {
        .kankyoaction .concept__ditail__wrap {
          margin: 32px auto 0;
          width: 1116px;
          filter: drop-shadow(2px 2px 3px rgba(199, 200, 200, 0.6)); } }
      .kankyoaction .concept__ditail__wrap__top {
        width: 100%;
        height: 6.666vw;
        background: #FFF;
        clip-path: polygon(6.666vw 0%, 100% 0, 100% 100%, 0% 100%); }
        @media only screen and (min-width: 768px) {
          .kankyoaction .concept__ditail__wrap__top {
            width: 1116px;
            height: 90px;
            clip-path: polygon(90px 0%, 100% 0, 100% 100%, 0% 100%); } }
      .kankyoaction .concept__ditail__wrap__cont {
        background-color: #fff; }
      .kankyoaction .concept__ditail__wrap__btm {
        position: relative;
        margin-top: -1px;
        width: 100%;
        height: 6.666vw;
        background: #FFF;
        clip-path: polygon(0 0, 100% 0, 85.334vw 100%, 0% 100%); }
        @media only screen and (min-width: 768px) {
          .kankyoaction .concept__ditail__wrap__btm {
            width: 1116px;
            height: 90px;
            clip-path: polygon(0 0, 100% 0, 1026px 100%, 0% 100%); } }
    .kankyoaction .concept__ditail__title {
      width: 70vw;
      margin: 0 auto; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .concept__ditail__title {
          width: 580px; } }
    .kankyoaction .concept__ditail__fig {
      width: 79.25vw;
      margin: 6.25vw auto 0; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .concept__ditail__fig {
          width: 400px;
          margin: 64px auto 0; } }
    .kankyoaction .concept__ditail__copy {
      margin: 8.75vw auto 0; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .concept__ditail__copy {
          margin: 62px auto 0; } }
      .kankyoaction .concept__ditail__copy__title {
        font-size: 4vw;
        line-height: 1.75;
        font-weight: bold;
        color: #198496;
        text-align: center; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .concept__ditail__copy__title {
            font-size: 18px; } }
      .kankyoaction .concept__ditail__copy p {
        font-size: 3vw;
        line-height: 2;
        margin-top: 1.5em;
        text-align: center; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .concept__ditail__copy p {
            font-size: 16px;
            line-height: 2; } }
  .kankyoaction .case__ditail {
    width: 92vw;
    margin: 0 auto;
    padding: 7vw 0 20vw; }
    @media only screen and (min-width: 768px) {
      .kankyoaction .case__ditail {
        width: 1000px;
        padding: 60px 0; } }
    .kankyoaction .case__ditail .close__btn__wrap {
      position: relative;
      width: 92vw;
      margin: 0 auto 3.5vw; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .case__ditail .close__btn__wrap {
          width: 1000px;
          margin: 0 auto 13px; } }
      .kankyoaction .case__ditail .close__btn__wrap .close__btn {
        position: absolute;
        top: -3.5vw;
        right: 0;
        width: 10.75vw;
        height: 10.75vw;
        background-color: transparent;
        background-image: url("/products/environment/kankyoaction/images/close_bt.svg");
        background-size: cover;
        border: none; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .case__ditail .close__btn__wrap .close__btn {
            width: 85px;
            height: 85px; } }
        @media only screen and (min-width: 768px) {
          .kankyoaction .case__ditail .close__btn__wrap .close__btn:hover {
            opacity: 0.8;
            cursor: pointer; } }
    .kankyoaction .case__ditail__title {
      display: inline-block;
      font-size: 3.75vw;
      font-weight: bold;
      color: #fff;
      background-color: #00A393;
      padding: 2vw 1em 1.5vw;
      border-top-left-radius: 4.5vw;
      border-top-right-radius: 4.5vw; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .case__ditail__title {
          font-size: 29px;
          padding: 20px 1.5em 15px;
          border-top-left-radius: 40px;
          border-top-right-radius: 40px; } }
    .kankyoaction .case__ditail__wrap {
      position: relative;
      width: 92vw;
      padding: 6vw 0 15vw;
      background-color: #fff;
      border-radius: 4.5vw;
      border-top-left-radius: 0;
      box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.3); }
      @media only screen and (min-width: 768px) {
        .kankyoaction .case__ditail__wrap {
          width: 1000px;
          padding: 70px 0 90px;
          border-radius: 40px;
          border-top-left-radius: 0; } }
    .kankyoaction .case__ditail__question {
      margin: 0 auto;
      color: #198496;
      font-size: 4.5vw;
      font-weight: bold;
      line-height: 1.5;
      text-align: center; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .case__ditail__question {
          font-size: 32px; } }
    .kankyoaction .case__ditail__fig {
      margin: 6.25vw auto 0; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .case__ditail__fig {
          margin: 30px auto 0; } }
    .kankyoaction .case__ditail__fig2 {
      margin: 12vw auto 0; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .case__ditail__fig2 {
          margin: 75px auto 0; } }
    .kankyoaction .case__ditail__answer {
      margin: 8.5vw auto 0;
      font-size: 3.75vw;
      font-weight: bold;
      line-height: 1.53;
      text-align: center;
      color: #3e3a39; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .case__ditail__answer {
          margin: 50px auto 0;
          font-size: 28px; } }
      .kankyoaction .case__ditail__answer span, .kankyoaction .case__ditail__answer ruby {
        position: relative;
        font-size: 5vw;
        color: #198496;
        text-align: end;
        ruby-align: right; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .case__ditail__answer span, .kankyoaction .case__ditail__answer ruby {
            font-size: 44px; } }
        .kankyoaction .case__ditail__answer span rt, .kankyoaction .case__ditail__answer ruby rt {
          position: absolute;
          top: -1vw;
          right: 0;
          font-size: 1.75vw;
          color: #3e3a39;
          text-align: inherit; }
          @media only screen and (min-width: 768px) {
            .kankyoaction .case__ditail__answer span rt, .kankyoaction .case__ditail__answer ruby rt {
              top: 3px;
              font-size: 12px; } }
    .kankyoaction .case__ditail.case02__ditail .case__ditail__answer {
      margin: 5vw auto 0; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .case__ditail.case02__ditail .case__ditail__answer {
          margin: 50px auto 0; } }
    .kankyoaction .case__ditail__column {
      position: relative;
      width: 73.5vw;
      margin: 13.25vw auto 0;
      border: 1px solid #231815;
      border-radius: 5vw;
      padding-bottom: 3vw; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .case__ditail__column {
          width: 750px;
          margin: 60px auto 0;
          border-radius: 40px;
          padding-bottom: 40px; } }
      .kankyoaction .case__ditail__column__title {
        color: #198496;
        background-color: #fff;
        font-size: 3.75vw;
        display: inline-block;
        position: absolute;
        top: -0.7em;
        left: 50%;
        transform: translateX(-50%); }
        @media only screen and (min-width: 768px) {
          .kankyoaction .case__ditail__column__title {
            font-size: 28px;
            top: -0.7em; } }
        .kankyoaction .case__ditail__column__title span {
          padding: 0 1em;
          white-space: nowrap; }
      .kankyoaction .case__ditail__column__statement {
        font-size: 3vw;
        line-height: 1.5;
        text-align: center;
        position: relative;
        z-index: +1;
        margin: 5.25vw auto 0; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .case__ditail__column__statement {
            font-size: 19px;
            width: 698px;
            margin: 50px auto 0;
            border-bottom: 1px solid #231815;
            padding-bottom: 0.3em; } }
      .kankyoaction .case__ditail__column__result {
        text-align: center;
        font-size: 3.75vw;
        line-height: 1.6;
        font-weight: bold;
        margin: 0.8em auto 0; }
        @media only screen and (min-width: 768px) {
          .kankyoaction .case__ditail__column__result {
            font-size: 30px;
            line-height: 1.5; } }
        .kankyoaction .case__ditail__column__result span, .kankyoaction .case__ditail__column__result ruby {
          position: relative;
          font-size: 5vw;
          color: #198496;
          text-align: end;
          ruby-align: right; }
          @media only screen and (min-width: 768px) {
            .kankyoaction .case__ditail__column__result span, .kankyoaction .case__ditail__column__result ruby {
              font-size: 44px; } }
          .kankyoaction .case__ditail__column__result span rt, .kankyoaction .case__ditail__column__result ruby rt {
            position: absolute;
            top: -1vw;
            right: 0;
            font-size: 1.75vw;
            color: #3e3a39;
            text-align: inherit; }
            @media only screen and (min-width: 768px) {
              .kankyoaction .case__ditail__column__result span rt, .kankyoaction .case__ditail__column__result ruby rt {
                top: 3px;
                font-size: 12px; } }
    .kankyoaction .case__ditail .case__ditail__note {
      position: absolute;
      bottom: 2em;
      right: 3em;
      font-size: 2vw;
      text-align: right;
      line-height: 1.43; }
      @media only screen and (min-width: 768px) {
        .kankyoaction .case__ditail .case__ditail__note {
          font-size: 11px; } }
      .kankyoaction .case__ditail .case__ditail__note img {
        max-width: 15px; }
  .kankyoaction .modal__wrap {
    position: fixed;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 100vh;
    overflow-x: hidden;
    overflow-y: scroll;
    z-index: -1; }
    .kankyoaction .modal__wrap.active {
      display: block;
      z-index: 9999; }
    .kankyoaction .modal__wrap .modal__closer {
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      z-index: -1; }
  .kankyoaction .modal__bk {
    position: fixed;
    top: 0;
    left: 0;
    display: none;
    width: 100%;
    height: 100vh;
    background-color: #d3ecd3;
    opacity: 0.9; }
    .kankyoaction .modal__bk.active {
      display: block;
      z-index: 9998; }
  .kankyoaction .modal__contents {
    display: none;
    opacity: 0; }
    .kankyoaction .modal__contents.active {
      display: block;
      animation: fadeIn 0.5s ease both; }

.effect-fade-in {
  opacity: 0; }

.effect-fade-in.active {
  animation: fadeIn 0.75s ease-out forwards; }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
/*SNSシェアボタン*/
@media screen and (max-width: 767px) {
  #contents .snsArea {
    width: 100vw; } }

#contents .share {
  margin: 3.3rem auto 0; }

@media screen and (max-width: 767px) {
  #contents .share {
    margin: 4.9rem auto 0; } }
#contents .share .share_title {
  text-align: center;
  font-size: 1.75rem;
  letter-spacing: 0.05em;
  font-weight: bold;
  font-family: -apple-system, "Open Sans", Sans-Serif; }

@media screen and (max-width: 767px) {
  #contents .share h3 {
    font-size: 1.3rem; } }
/* share
=============================================================== */
#contents .share_title {
  font-size: 30px;
  text-align: center; }

#contents .share_list {
  margin: 25px auto 0; }

#contents .share_list ul {
  text-align: center; }

#contents .share_list ul li {
  vertical-align: top;
  display: inline-block;
  position: relative;
  margin: 0 15px; }
  
  /* 20241024追記
=============================================================== */

  .kankyoaction .kv__inner__close_coment .tab {
    max-width: 15px; }
 
