@charset "UTF-8";
/*============================================================================================
      Header
=============================================================================================*/
/*    Navigation
=====================================================*/
.header_logo{
      width: 100%;
      max-width: 260px;
}
.w_Header{
      padding: 15px 80px;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      /* background-color: #fff; */
      z-index: 99999;
      color: #038F73;
      background-color: #fff;
      border-bottom-left-radius: 20px;
      border-bottom-right-radius: 20px;
}
.header_nav_lst_itm + .header_nav_lst_itm{
      margin-left: 50px;
}
.header_nav_lst_itm_inr{
      display: block;
      font-weight: bold;
      -webkit-transition: color .2s;
      -o-transition: color .2s;
      transition: color .2s;
}
.header_nav_lst_itm_inr:hover{
      color: ;
}
.header_nav_lst_itm_inr_btn{
      background-color: #038F73;
      color: #fff;
      padding: 13px 50px;
      border: 2px solid #038F73 !important;
      -o-transition: color .2s, background .2s;
      transition: color .2s, background .2s;
	-webkit-transition: color .2s, background .2s;
      border-radius: 20px;
}
.header_nav_lst_itm_inr_btn:hover{
      color: #038F73;
      background-color: #fff;
}
.header_nav_lst_itm_inr_btn_en{
      z-index: 1;
}
.header_nav_lst_itm_inr_btn_en::before{
      content: "";
      display: block;
      position: absolute;
      top: -10px;
      left: -15px;
      height: 22px;
      width: 22px;
      background: url(../img/common/contact_icon.png) no-repeat;
      background-size: contain;
      z-index: -1;
}
.header_nav_anc_inr{
      display: inline-block;
}
.header_nav_anc_inr:hover{
      color: #FFA200;
}
.header_nav_anc_inr::after {
	width: 6px;
	height: 6px;
	bottom: -10px;
      left: 0;
	right: 0;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	    transform: rotate(135deg);
}
.header_nav_anc_lst{
      position: absolute;
      top: calc(100% + 10px);
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      margin-top: 20px;
      width: 280px;
      padding: 20px;
      background-color: #fff;
      z-index: 99;
      -webkit-box-shadow: 0 3px 6px #00000020;
              box-shadow: 0 3px 6px #00000020;
}
.header_nav_anc_lst::before{
      content: "";
      display: block;
      position: absolute;
      top: -40px;
      left: 0;
      width: 210px;
      height: 50px;
}
.header_nav_anc_lst::after{
      content: "";
      display: block;
      position: absolute;
      top: -19px;
      left: 50%;
      -webkit-transform: translateX(-50%);
          -ms-transform: translateX(-50%);
              transform: translateX(-50%);
      width: 0;
      height: 0;
      border-style: solid;
      border-right: 15px solid transparent;
      border-left: 15px solid transparent;
      border-bottom: 20px solid #fff;
      border-top: 0;
}
.header_nav_anc_lst_itm + .header_nav_anc_lst_itm{
      margin-top: 20px;
}
.header_nav_anc_lst_itm_inr{
      display: block;
      -webkit-transition: color .2s;
      -o-transition: color .2s;
      transition: color .2s;
      font-size: 1.3rem;
      font-weight: bold;
}
.header_nav_anc_lst_itm_inr:hover{
      color: #FFA200;
}
.header_nav_anc_lst_itm_inr{
      color: #222;
}
.w_Header.js_show{
      position: fixed;
      top: 0;
      left: 0;
      -webkit-animation: header_nav .2s;
              animation: header_nav .2s;
      z-index: 99999;
      background-color: #fff;
      -webkit-box-shadow: 0 3px 6px #00000015;
              box-shadow: 0 3px 6px #00000015;
}
@-webkit-keyframes header_nav{
      0% {
            top: -100%;
      }
      100% {
            top: 0;
      }
}
@keyframes header_nav{
      0% {
            top: -100%;
      }
      100% {
            top: 0;
      }
}
.w_Header.js_show .header_nav_lst_itm_inr{
      /* color: #0058A4; */
}
/* .w_Header.g_lower_header .header_nav_lst_itm_inr{
      color: #0058A4;
} */
.w_Header.g_lower_header .header_nav_anc_inr::after{
      border-top: 1px solid #0058A4;
    border-right: 1px solid #0058A4;
}
.w_Header.js_show .header_nav_lst_itm_inr_btn{
      color: #fff;
}
/* .w_Header.g_lower_header{
      position: fixed;
      top: 0;
      left: 0;
      animation: none;
      z-index: 99999;
      background-color: #fff;
      box-shadow: 0 3px 6px #00000015;
}
.w_Header.js_show.g_lower_header{
      position: fixed;
      top: 0;
      left: 0;
      animation: none;
      z-index: 99999;
      background-color: #fff;
      box-shadow: 0 3px 6px #00000015;
} */
.w_Header.g_lower_header .header_nav_lst_itm_inr{
      color: #0058A4;
}
.w_Header.g_lower_header .header_nav_lst_itm_inr_btn{
      color: #fff;
}
.header_nav_lst_itm_inr:hover{
      color: #FFA200 !important;
}
.header_nav_lst_itm_inr_btn:hover{
      color: #038F73 !important;
}
.w_Header.js_show .header_nav_anc_inr::after {
	width: 6px;
	height: 6px;
	bottom: -10px;
      left: 0;
	right: 0;
	border-top: 1px solid #0058A4;
	border-right: 1px solid #0058A4;
	-webkit-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	    transform: rotate(135deg);
}
.w_Header.js_show .header_nav_anc_inr::after {
	width: 6px;
	height: 6px;
	bottom: -10px;
      left: 0;
	right: 0;
	border-top: 1px solid #0058A4;
	border-right: 1px solid #0058A4;
	-webkit-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	    transform: rotate(135deg);
}
.w_Header.js_show{
      position: fixed;
      top: 0;
      left: 0;
      -webkit-animation: header_nav .2s;
              animation: header_nav .2s;
      z-index: 99999;
      background-color: #fff;
      -webkit-box-shadow: 0 3px 6px #00000015;
              box-shadow: 0 3px 6px #00000015;
}
@keyframes header_nav{
      0% {
            top: -100%;
      }
      100% {
            top: 0;
      }
}

/* .top_mv_lst_itm{
      position: relative;
      -webkit-animation: top_mv_lst_itm_move 4s ease-in infinite;
              animation: top_mv_lst_itm_move 4s ease-in infinite;
}
.top_mv_lst_itm:nth-child(2){
      animation-delay: .5s;
}
.top_mv_lst_itm:nth-child(3){
      animation-delay: 1s;
}
@keyframes top_mv_lst_itm_move{
      0% {
            top: 5px;
      }
      50% {
            top: -5px;
      }
      100% {
            top: 5px;
      }
} */

.w_Header.js_show .header_nav_lst_itm_inr{
      /* color: #0058A4; */
}
/* .w_Header.g_lower_header .header_nav_lst_itm_inr{
      color: #0058A4;
} */
.w_Header.g_lower_header .header_nav_anc_inr::after{
      border-top: 1px solid #0058A4;
      border-right: 1px solid #0058A4;
}
.w_Header.js_show .header_nav_lst_itm_inr_btn{
      color: #fff;
}
.header_btn{
      display: none !important;
      width: 100% !important;
}
.header_nav_lst_itm_btn__menu{
            display: none;
      }
@media (max-width: 1280px){
      .w_Header{
            background-color: #fff;
            padding: 20px 20px;
      }
      .header_nav_lst_cont{
            position: absolute;
            top: 80%;
            left: 0;
            width: 100%;
            height: 100vh;
            padding-bottom: 20vh;
            background-color: #fff;
            overflow: scroll;
      }
      .header_nav_lst{
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
                -ms-flex-direction: column;
                    flex-direction: column;
            padding: 0 30px;
            padding-top: 30px;
      }
      .header_nav_lst_itm{
            width: 100%;
      }
      .header_nav_lst_itm + .header_nav_lst_itm{
            margin-left: 0px;
      }
      .header_nav_lst_itm_inr{
            padding: 20px 0;
      }
      .header_nav_lst_itm:first-child .header_nav_lst_itm_inr{
      }
      .header_nav_lst_itm + .header_nav_lst_itm .header_nav_lst_itm_inr{
            border-top: 1px solid #ccc;
      }
      .header_nav_anc_inr {
            display: block;
      }
      .header_nav_anc_inr::after {
            width: 15px;
            height: 1px;
            top: 0;
            bottom: 0;
            right: 10px;
            border-top: none;
            border-right: none;
            -webkit-transform: none;
            -ms-transform: none;
                transform: none;
            background-color: #000;
            margin-right: 0;
      }
      .header_nav_anc_inr::before {
            width: 15px;
            height: 1px;
            top: 0;
            bottom: 0;
            right: 10px;
            border-top: none;
            border-right: none;
            -webkit-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
                transform: rotate(90deg);
            background-color: #0058A4;
            -webkit-transition: -webkit-transform .2s;
            transition: -webkit-transform .2s;
            -o-transition: transform .2s;
            transition: transform .2s;
            transition: transform .2s, -webkit-transform .2s;
      }
      .js_open .header_nav_anc_inr::before {
            -webkit-transform: rotate(0deg);
            -ms-transform: rotate(0deg);
                transform: rotate(0deg);
      }
      .w_Header.js_show .header_nav_anc_inr::after {
            width: 1px;
            height: 15px;
            top: 0;
            bottom: 0;
            right: 17px;
            border-top: none;
            border-right: none;
            -webkit-transform: rotate(90deg);
            -ms-transform: rotate(90deg);
                transform: rotate(90deg);
            background-color: #0058A4;
            -webkit-transition: -webkit-transform .2s;
            transition: -webkit-transform .2s;
            -o-transition: transform .2s;
            transition: transform .2s;
            transition: transform .2s, -webkit-transform .2s;
      }
      .header_nav_anc_lst{
            position: static;
            top: 0;
            left: 0;
            width: 100%;
            padding: 15px;
            padding-top: 0;
            margin-top: 0;
            -webkit-box-shadow: none;
                    box-shadow: none;
            -webkit-transform: none;
                -ms-transform: none;
                    transform: none;
      }
      .header_nav_lst_itm_btn{
            margin-top: 40px;
            max-width: 255px;
      }
      .header_nav_lst_itm_inr_btn{
            text-align: center;
      }
      .header_nav_lst_itm_inr{
            color: #222;
      }
      .header_nav_lst_itm_inr_btn{
            padding: 17px 0;
            color: #fff;
      }
      .w_Header.g_lower_header .header_nav_anc_inr::after{
            border-top: none;
            border-right: none;
      }
      .header_btn{
            display: flex !important;
      }
      .header_nav_lst_itm_btn{
            display: none;
      }
      .header_nav_lst_itm_btn__menu{
            display: block;
      }
}
@media (max-width: 896px){}
@media (max-width: 576px){
      .w_Header{
            padding: 10px;
      }

      /* .header_logo{
            width: 100%;
            max-width: 280px;
      } */

      .w_Header{
            border-bottom-left-radius: 0px;
            border-bottom-right-radius: 0px;
      }
}

/*============================================================================================
      Footer
=============================================================================================*/
.w_Footer{
      /* margin-top: 80px; */
      background-color: #038F73;
      padding: 50px 0;
}
.footer_logo{
      width: 200px;
}
.footer_txt{
      font-size: 1.8rem;
}
.footer_menu_lst_itm{
      color: #fff;
      text-align: right;
}
.footer_menu_lst_itm + .footer_menu_lst_itm{
      margin-top: 5px;
}
@media (max-width: 896px){
      
}
@media (max-width: 576px){
      .footer_menu_lst{
            padding-top: 40px;
      }
      .footer_menu_lst_itm{
            color: #fff;
            text-align: left;

      }
      .footer_menu_lst_itm a{
            display: block;
            border-top: 1px solid #ccc;
            padding-top: 5px;
            padding-bottom: 5px;
      }
      .footer_menu_lst_itm:last-child a{
            border-bottom: 1px solid #ccc;
      }
      .footer_menu_lst_itm + .footer_menu_lst_itm {
            margin-top: 0px;
      }
      .g_pagetop_fixed.js_stc
      {
            position: absolute;
            top: -30px;
            right: 15px;
      }
      .g_pagetop_fixed {
            right: 15px;
      }
}

/*============================================================================================
      Contents
=============================================================================================*/
/*    MV
=====================================================*/
.top_mv_sec{
      background-image: linear-gradient(90deg, #009072, #009072 25%, #2cad71 55%, #59c784);
      height: 100vh;
      min-height: 920px;
      overflow: hidden;
}
.top_mv_cont_inr{
      position: relative;
      z-index: 1;
}
.top_mv_sec::before{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      right: 0;
      height: 724px;
      width: 724px;
      border-radius: 50%;
      background-color: #27A069;
      transform: translate(150px, -100px);
}
.top_mv_img{
      position: absolute;
      bottom: 0;
      right: 0;
      transform: translateX(180px);
      width: 900px;
}
.top_mv_ttl{
      position: relative;
      font-size: 4.6rem;
      color: #fff;
      padding-top: 150px;
      font-weight: bold;
      letter-spacing: 2px;
      z-index: 10;
}
.top_mv_ttl_line{
      display: inline-block;
      padding-right: 10px;
      padding-left: 5px;
      margin-right: 10px;
      position: relative;
      z-index: 1;
      font-size: 8rem;
      font-style: italic;
      letter-spacing: 10px;
      line-height: 1;
}
.top_mv_ttl_line::before{
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      width: 100%;
      height: 20px;
      width: 100%;
      background-color: #FFA200;
      z-index: -1;
}
.top_mv_txt{
      font-size: 1.6rem;
      line-height: 2;
      font-weight: 500;
      color: #fff;
}
.top_mv_txtarea{
      padding-top: 20px;
}
.top_mv_lst{
      width: 600px;
      margin-top: 30px;
      transform: translateX(-5%);
}
.top_mv_lst_itm{
      width: 32%;
      margin-right: 2%;
}
.top_mv_lst_itm:nth-child(3n){
      margin-right: 0;
}
.top_mv_btn_cont{
      width: 100%;
      max-width: 600px;
}
.top_mv_btn_lead_txt{
      display: inline-block;
      font-size: 2rem;
      color: #fff;
      padding: 0 50px;
      position: relative;
      letter-spacing: 2px;
      font-weight: bold;
}
.top_mv_btn_lead_txt_num{
      font-size: 3rem;
}
.top_mv_btn_lead_txt::before{
      content: "";
      display: block;
      position: absolute;
      bottom: 10px;
      left: 0;
      height: 40px;
      width: 30px;
      background: url(../img/top/mv_line_left.png) no-repeat;
      background-size: contain;
}
.top_mv_btn_lead_txt::after{
      content: "";
      display: block;
      position: absolute;
      bottom: 10px;
      right: 0;
      height: 40px;
      width: 30px;
      background: url(../img/top/mv_line_right.png) no-repeat;
      background-size: contain;
}
@media (max-width: 896px){
      .top_mv_sec {
            height: calc(100vh + 220px);
      }
      .top_mv_img {
            position: absolute;
            bottom: 0;
            right: 0;
            left: 0;
            margin: auto;
            transform: translateX(0px);
            width: 100%;
            max-width: 525px;
      }
      .top_mv_ttl{
            position: relative;
            font-size: 3.6rem;
            text-align: center;
      }
      .top_mv_ttl_line{
            display: inline-block;
            z-index: 1;
            font-size: 6rem;
            font-style: italic;
      }
      .top_mv_txt {
            font-size: 1.8rem;
            font-weight: 500;
            color: #fff;
            text-align: center;
      }
      .top_mv_lst {
            width: 100%;
            max-width: 600px;
            margin: auto;
            margin-top: 30px;
            transform: translateX(0%);
      }
      .top_mv_img{
            position: absolute;
            bottom: 0;
            right: 0;
            left: 0;
            margin: auto;
            transform: translateX(0px);
            width: 100%;
            max-width: 525px;
      }
      .top_mv_btn_cont {
            width: 100%;
            max-width: 600px;
            margin: auto;
      }
}
@media (max-width: 576px){
      .w_Header {
            background-color: #fff;
            padding: 15px 30px;
      }
      .top_mv_sec {
            height: calc(100vh + 130px);
            min-height: 990px;
      }
      .top_mv_ttl{
            position: relative;
            font-size: 2.4rem;
            padding-top: 110px;
            /* line-height: 1.5; */
      }
      .top_mv_ttl_line{
            display: inline-block;
            z-index: 1;
            font-size: 3.6rem;
            font-style: italic;
            /* line-height: 1.5; */
      }
      .top_mv_txt {
            font-size: 1.6rem;
            font-weight: 500;
            color: #fff;
            line-height: 1.5;
      }
      .top_mv_ttl_line::before{
            height: 15px;
      }
      .header_logo {
            width: 100%;
            max-width: 200px;
      }
}

/*    課題
=====================================================*/
.top_pro_ttl{
      font-size: 4rem;
      display: inline-block;
      /* padding-left: 10px; */
      color: #143B5C;
      font-weight: bold;
      z-index: 1;
}
.top_pro_ttl::before{
      content: "";
      display: block;
      position: absolute;
      bottom: 10px;
      left: 0;
      width: 100%;
      height: 20px;
      /* background-color: #FFA200; */
      z-index: -1;
}
.top_pro_ttl_line{
      background: linear-gradient(transparent 60%, #FFA200 0%);
      /* border-bottom: 10px solid #FFA200; */
}
.top_pro_ttl_line_s{
      font-size: 3rem;
}

.top_pro_cloud_01{
      display: inline-block;
      padding: 80px;
      background: url(../img/top/cloud_01.png) no-repeat;
      background-size: contain;
      color: #fff;
      font-size: 3rem;
      font-weight: 500;
      line-height: 1.5;
      position: absolute;
      left: 0;
      top: 10px;
}
.top_pro_cloud_02{
      display: inline-block;
      padding: 100px;
      background: url(../img/top/cloud_02.png) no-repeat;
      background-position: center;
      background-size: contain;
      color: #fff;
      font-size: 3rem;
      font-weight: 500;
      line-height: 1.5;
      position: absolute;
      left: 31%;
      top: 15%;
}
.top_pro_cloud_03{
      display: inline-block;
      padding: 70px;
      background: url(../img/top/cloud_03.png) no-repeat;
      background-position: center;
      background-size: contain;
      color: #fff;
      font-size: 3rem;
      font-weight: 500;
      line-height: 1.5;
      position: absolute;
      right: 0%;
      top: -35%;
}
.top_pro_cloud_04{
      display: inline-block;
      padding: 70px;
      background: url(../img/top/cloud_04.png) no-repeat;
      background-position: center;
      background-size: contain;
      color: #fff;
      font-size: 3rem;
      font-weight: 500;
      line-height: 1.5;
      position: absolute;
      left: 280px;
      top: 120%;
}
.top_pro_cloud_05{
      display: inline-block;
      padding: 90px;
      background: url(../img/top/cloud_04.png) no-repeat;
      background-position: center;
      background-size: contain;
      color: #fff;
      font-size: 3rem;
      font-weight: 500;
      line-height: 1.5;
      position: absolute;
      right: 0px;
      top: 100%;
}
.top_pro_cloud_area{
      height: 300px;
}
.top_pro_woman_img{
      width: 260px;
      margin-top: -0px;
}
@media (max-width: 1220px){
      .top_pro_cloud_01{
            display: inline-block;
            padding: 80px;
            font-size: 2.6rem;
            left: 0;
            top: 10px;
      }
      .top_pro_cloud_02{
            display: inline-block;
            padding: 80px;
            font-size: 2.6rem;
            left: 31%;
            top: 15%;
      }
      .top_pro_cloud_03{
            display: inline-block;
            padding: 70px;
            font-size: 2.6rem;
            right: 0%;
            top: -35%;
      }
      .top_pro_cloud_04{
            display: inline-block;
            padding: 50px;
            font-size: 2.6rem;
            left: 280px;
            top: 120%;
      }
      .top_pro_cloud_05{
            padding: 90px;
            font-size: 2.6rem;
            right: 0px;
            top: 100%;
      }
}
@media (max-width: 1080px){
      .top_pro_cloud_01{
            padding: 60px;
            font-size: 2.2rem;
            left: 0;
            top: 10px;
      }
      .top_pro_cloud_02{
            display: inline-block;
            padding: 60px;
            font-size: 2.2rem;
            left: 31%;
            top: 15%;
      }
      .top_pro_cloud_03{
            display: inline-block;
            padding: 50px;
            font-size: 2.2rem;
            right: 0%;
            top: -15%;
      }
      .top_pro_cloud_04{
            display: inline-block;
            padding: 40px;
            font-size: 2.2rem;
            left: 280px;
            top: 120%;
      }
      .top_pro_cloud_05{
            padding: 70px;
            font-size: 2.2rem;
            right: 0px;
            top: 100%;
      }
}
@media (max-width: 896px){
      .top_pro_sec{
            height: 120vw;
      }
      .top_pro_woman_img {
            width: 25.126vw;
            margin-top: -7.538vw;
            margin-left: 10.05vw;
      }
      .top_pro_woman_tbl_img{
            position: absolute;
            top: 32.638vw;
            width: 21.126vw;
            left: 7.538vw;
            z-index: -1;
      }

      .top_pro_cloud_01{
            padding: 7.538vw;
            font-size: 3.518vw;
            left: 0;
            top: 7.256vw;
      }
      .top_pro_cloud_02{
            display: inline-block;
            padding: 8.794vw;
            font-size: 3.518vw;
            left: 31%;
            top:35.894vw;
      }
      .top_pro_cloud_03{
            display: inline-block;
            padding: 8.794vw;
            font-size: 3.518vw;
            right: 0%;
            top: 2%;
      }
      .top_pro_cloud_04 {
            display: inline-block;
            padding: 7.538vw;
            font-size: 3.518vw;
            left: 0px;
            top: 62.814vw;
      }
      .top_pro_cloud_05{
            padding: 8.794vw;
            font-size: 3.518vw;
            right: 0px;
            top: 75.377vw;
      }
      .top_pro_ttl {
            font-size: 3rem;
            display: inline-block;
            /* padding-left: 10px; */
            color: #143B5C;
            font-weight: bold;
            z-index: 1;
            line-height: 1.5;
      }
}
@media (max-width: 576px){
      .top_pro_ttl {
            font-size: 3rem;
            display: inline-block;
            /* padding-left: 10px; */
            color: #143B5C;
            font-weight: bold;
            z-index: 1;
      }
      .top_pro_sec{
            height: 135vw;
      }
}
@media (max-width: 472px){
      .top_pro_sec{
            height: 150vw;
      }
}


/*    課題
=====================================================*/
.top_about_sec{
      background-color: #F6F8F8;
}
.top_about_ttl{
      font-size: 3rem;
      font-weight: bold;
}
.top_about_ttl_name{
      display: inline-block;
      padding-right: 5px;
      font-size: 5rem;
      font-weight: bold;
      font-style: italic;
      color: #007C64;
      letter-spacing: 5px;
}
.top_about_ttl_l{
      font-size: 4.4rem;
      letter-spacing: 5px;
      padding-left: 5px;
}
.top_about_lst_itm{
      width: 30%;
      margin-right: 5%;
}
.top_about_lst_itm:nth-child(3n){
      margin-right: 0;
}
.top_about_lst_ttl{
      font-size: 2rem;
      color: #fff;
      background-color: #038F73;
      border-top-right-radius: 20px;
      border-top-left-radius: 20px;
      box-shadow: #038F7370 0 0px 12px;
      line-height: 1.5;
      padding: 10px;
      font-weight: bold;
      letter-spacing: 2px;
}
.top_about_lst_ttl_line{
      z-index: 1;
}
.top_about_lst_ttl_line::before{
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      left: 0;
      height: 7px;
      width: 100%;
      background-color: #FFD147;
      z-index: -1;
}
.top_about_lst_txtarea{
      padding: 15px 10px;
      background-color: #fff;
      box-shadow: 0 0px 12px #00000040;
      margin-top: 15px;
      border-bottom-right-radius: 20px;
      border-bottom-left-radius: 20px;
      height: calc(100% - 95px);
}
.top_about_lst_txt{
      text-align: center;
      line-height: 2;
}
.top_about_ttl_l_space_min{
      letter-spacing: 1px;
}
.top_about_txtarea_txt{
      line-height: 2;
      font-size: 1.6rem;
}
@media (max-width: 896px){
      .top_about_ttl_name {
            display: inline-block;
            padding-right: 5px;
            font-size: 4rem;
            font-weight: bold;
            font-style: italic;
            color: #007C64;
            letter-spacing: 5px;
      }
      .top_about_ttl {
            font-size: 2.6rem;
            font-weight: bold;
      }
      .top_about_ttl_l {
            font-size: 3.4rem;
            letter-spacing: 5px;
            padding-left: 5px;
      }
      .top_about_lst_itm{
            width: 100%;
            margin-right: 0;
      }
      .top_about_lst_itm + .top_about_lst_itm{
            margin-top: 50px;
      }
}
@media (max-width: 576px){
      
}

/*    できること
=====================================================*/
.top_can_lst_itm{
      background-image: linear-gradient(90deg, #dfefea40, #bfe3ee40);
      padding: 50px;
      border-radius: 20px;
}
.top_can_lst_txtarea_num{
      font-size: 6rem;
      line-height: 1;
}
.top_can_lst_txtarea_ttl{
      font-size: 2.6rem;
      color: #007C64;
      font-weight: bold;
}
.top_can_lst_txtarea_txt{
      font-weight: bold;
}
.top_can_lst_txtarea_txt_red{
      font-size: 1.8rem;
      color: #C1272D;
}
.top_can_lst_img{
      padding: 0 50px;
}
.top_can_lst_img img{
      max-height: 330px;
      object-fit: contain;
}
.top_can_lst_itm_bg_wh{
      background-image: initial;
}
.top_mv_btn_lead_txt_gr{
      color: #007C64;
}
@media (max-width: 896px){
      .top_can_lst_txtarea_num {
            font-size: 5rem;
            line-height: 1;
      }
      .top_can_lst_txtarea_ttl {
            font-size: 2.2rem;
            color: #007C64;
            font-weight: bold;
      }
}
@media (max-width: 576px){
      .top_can_lst_itm {
            padding: 30px 15px;
            border-radius: 15px;
      }
      .top_can_lst_txtarea_txt_red{
            font-size: 1.7rem;
      }
}


/*    メリット
=====================================================*/
.top_merit_sec{
      
}
.top_merit_sec::before{
      background: url(../img/top/top_merit_bg.png) no-repeat;
      background-size: 100% 100%;
      margin-top: -110px;
      width: 100%;
      height: calc(100% + 40px);
      z-index: -1;
}
.top_merit_ttl{
      display: block;
      padding-top: 140px;
}
/* .top_merit_bg_img{
      position: absolute;
      height: 100%;
      width: 100%;
      top: 0;
      left: 0;
      z-index: -1;
} */
.top_merit_txtarea{
      padding-left: 40px;
}
.top_merit_lst_itm{
      background-color: #fff;
      /* padding: 30px; */
      border-radius: 30px;
      box-shadow: 0 0 12px #27A069;
}
.top_merit_lst_itm_inr{
      max-width:740px;
      min-height: 420px;
      margin: auto;
}
.top_merit_txtarea_ttl{
      font-size: 2.6rem;
      font-weight: bold;
}
.top_merit_lst_itm + .top_merit_lst_itm{
      margin-top: 50px;
}

@media (max-width: 896px){
      .top_merit_lst_itm_inr {
            padding: 20px;
      }
      .top_merit_txtarea_ttl {
            font-size: 2rem;
            font-weight: bold;
      }
      .top_merit_lst_itm_inr{
            min-height: 320px;
      }
      .top_merit_txtarea{
            padding-left: 0;
      }
      .top_merit_lst_itm + .top_merit_lst_itm{
            margin-top: 40px;
      }
}
@media (max-width: 576px){
      .top_merit_img img{
            height: 50vw;
            object-fit: contain;
            object-position: center;
      }
      .top_merit_lst_itm_inr {
            padding: 40px 20px;
      }
      .top_merit_sec::before{
            background: url(../img/top/top_merit_bg_sp.png) no-repeat;
            background-size: 100% 100%;
            margin-top: -110px;
            width: 100%;
            height: calc(100% + 40px);
            z-index: -1;
      }
      .top_merit_txtarea_ttl {
            text-align: center;
      }
}

/*    成果
=====================================================*/
.top_results_lst_itm {
      width: 23.5%;
      margin-right: 2%;
}
.top_results_lst_itm:nth-child(4n){
      margin-right: 0;
}
.top_results_lst_itm:nth-child(n+5){
      margin-top: 10px;
}
.top_results_lst_itm_txt{
      font-size: 2rem;
      font-weight: bold;
}
.top_his_lst_sub_ttl{
      font-size: 2rem;
      font-weight: 500;
}
.top_his_lst_ttl{
      font-size: 2.6rem;
      font-weight: bold;
      line-height: 1.5;
      letter-spacing: 2px;
}
.top_his_lst_ttl_l{
      font-size: 3.6rem;
      font-weight: bold;
      line-height: 1.5;
}
.top_his_lst_itm{
      background-color: #fff;
      padding: 20px;
      border-radius: 20px;
      width: 49.5%;
      margin-right: 1%;
}
.top_his_lst_itm:nth-child(2n){
      margin-right: 0;
}
.top_his_lst_itm:nth-child(n+3){
      margin-top: 1%;
}
.top_his_lst_detail_lst_itm_ttl{
      white-space: nowrap;
}
.top_his_lst_detail_lst{
      font-weight: 500;
}
.top_plan_lst{
      max-width: 900px;
      margin: auto;
}
.top_plan_lst_itm{
      width: 47.5%;
      margin-right: 5%;
}
.top_plan_lst_itm:nth-child(2n){
      margin-right: 0;
}
.top_plan_txtimg{
      font-size: 2.6rem;
      font-weight: bold;
      padding-right: 200px;
      padding-bottom: 150px;
      margin-top: 50px;
}
.top_plan_txtimg::before{
      content: "";
      display: block;
      position: absolute;
      bottom: 0;
      right: 0;
      height: 200px;
      width: 200px;
      background: url(../img/top/plan.png) no-repeat;
      background-size: contain;
}
/* .top_results_lst_itm_img img{
      width: 120%;
      height: 120%;
      max-width: 120%;
      object-fit: cover;
      object-position: center;
} */
@media (max-width: 896px){
      .top_his_lst_itm{
            padding: 20px;
            width: 100%;
            margin-right: 0%;
      }
      .top_his_lst_itm:nth-child(2n){
            margin-right: 0;
      }
      .top_his_lst_itm:nth-child(n+2){
            margin-top: 30px;
      }
      .top_his_lst_sub_ttl {
            font-size: 1.8rem;
      }
      .top_his_lst_ttl {
            font-size: 2.2rem;
      }
      .top_his_lst_ttl_l {
            font-size: 3rem;
      }
      .top_results_lst_itm_txt {
            font-size: 1.8rem;
            font-weight: bold;
      }
      .top_plan_txtimg {
            font-size: 2.2rem;
            padding-right: 160px;
            padding-bottom: 110px;
            margin-top: 30px;
      }
      .top_plan_txtimg::before {
            content: "";
            display: block;
            position: absolute;
            bottom: 0;
            right: 0;
            height: 160px;
            width: 160px;
            background: url(../img/top/plan.png) no-repeat;
            background-size: contain;
      }
}
@media (max-width: 576px){
      .top_merit_ttl {
            display: block;
            padding-top: 80px;
      }
      .top_results_lst_itm {
            width: 33.333%;
            /* width: 25%; */
            margin-right: 0%;
      }
      .top_results_lst_itm:nth-child(4n){
            margin-right: 0%;
      }
      .top_results_lst_itm:nth-child(3n){
            margin-right: 0;
      }
      .top_results_lst_itm:nth-child(n+5){
            margin-top: 0px;
      }
      .top_results_lst_itm:nth-child(n+4){
            margin-top: 10px;
      }
      /* .top_results_lst_itm:nth-child(n+5){
            margin-top: 10px;
      } */
      .top_results_lst_itm_txt {
            font-size: 1.2rem;
            font-weight: bold;
      }
      .top_plan_lst_itm{
            width: 100%;
            margin-right: 0;
            max-width: 400px;
            margin: auto !important;
      }
      .top_plan_lst_itm:nth-child(2n){
            margin-top: 40px !important;
      }
      .top_plan_txtimg {
            font-size: 1.8rem;
            padding-right: 100px;
            padding-bottom: 60px;
            margin-top: 30px;
      }
      .top_plan_txtimg::before {
            content: "";
            display: block;
            position: absolute;
            bottom: 0;
            right: 0;
            height: 100px;
            width: 100px;
            background: url(../img/top/plan.png) no-repeat;
            background-size: contain;
      }
      .top_results_lst_itm_txt{
            line-height: 1.5;
      }
}

/*    今月残り5社
=====================================================*/
.top_rest_ttl{
      font-size: 3rem;
      font-weight: bold;
      letter-spacing: 2px;
}
.top_rest_num{
      font-size: 8rem;
      color: #C60000;
}

.top_service_cont{
      background-color: #30BCBB;
      margin-right: 100px;
      padding: 30px;
      padding-top: 20px;
      border-radius: 20px;
      width: 40%;
}
.top_service_cont:nth-child(2n){
      margin-right: 0;
}
.top_service_ttl{
      color: #fff;
      font-size: 2.4rem;
      padding-bottom: 15px;
      text-align: center;
      font-weight: bold;
}
.top_service_pay_bg{
      background-color: #fff;
      /* padding: 50px 0; */
      padding-top: 15px;
      padding-bottom: 30px;
}
.top_service_pay_num{
      font-size: 5rem;
      font-weight: 500;
}
.top_service_pay_txt_zey{
      font-weight: bold;
}
.top_service_pay_txt_yen{
      font-weight: bold;
}
.top_service_pay{
      color: #30BCBB;
      padding-left: 50px;
      height: 125px;
}
.top_service_pay_txtarea{
      padding-left: 10px;
}
.top_service_pay_lst_itm{
      text-align: center;
      font-size: 1.8rem;
}
.top_service_free{
      padding: 0;
}
.top_service_cont_free{
      background-color: #EA5482;
}
.top_service_free_num{
      font-size: 3rem;
      color: #C60000;
      font-weight: bold;

}
.top_service_free_num_txt{
      font-size: 6rem;
      color: #EA5482;
      line-height: 1.2;
      font-weight: bold;
}
.top_service_cont_arrow::before{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      right: -80px;
      height: 30px;
      width: 40px;
      background: url(../img/top/tri.png) no-repeat;
      background-size: contain;
}
@media (max-width: 1024px){
      .top_service_pay {
            color: #63C0C4;
            padding-left: 0px;
            height: 125px;
      }
}
@media (max-width: 896px){
      /* .top_service_cont {
            margin-right: 0px;
            padding: 30px;
            padding-top: 20px;
            margin-bottom: 80px;
            width: 100%;
      }
      .top_service_cont:nth-child(2n){
            margin-bottom: 0;
      }
      .top_service_cont_arrow::before{
            content: "";
            display: block;
            position: absolute;
            top: initial;
            bottom: -70px;
            right: 0;
            left: 0;
            margin: auto;
            transform: rotate(90deg);
            height: 40px;
            width: 50px;
            background: url(../img/top/tri.png) no-repeat;
            background-size: contain;
      } */
      .top_service_pay_num {
            font-size: 3.6rem;
      }
      .top_service_free_num {
            font-size: 2.6rem;
            color: #C60000;
      }
      .top_service_free_num_txt {
            font-size: 5rem;
            color: #EA5482;
            line-height: 1.2;
      }
      .top_service_pay {
            /* height: auto; */
      }



      .top_service_ttl {
            font-size: 2rem;
      }
      .top_service_cont {
            margin-right: 10px;
            width: calc(50% - 5px);
      }
      .top_service_cont:nth-child(1){
            z-index: 5;
            position: relative;
      }
      .top_service_cont:nth-child(2n){
            margin-right: 0;
      }
      .top_service_cont_arrow::before {
            right: -35px;
            height: 30px;
            width: 40px;
            background: url(../img/top/tri.png) no-repeat;
            background-size: contain;
            z-index: 99;
      }

      .top_service_free_num {
            font-size: 2rem;
            color: #C60000;
      }
      .top_service_free_num_txt {
            font-size: 4rem;
      }
      .top_service_pay{
            height: 85px;
      }


}
@media (max-width: 576px){
      /* .top_service_cont {
            margin-right: 0px;
            padding: 15px;
            padding-top: 20px;
      } */

      .top_service_free_num {
            font-size: 1.8rem;
            color: #C60000;
      }
      .top_service_free_num_txt {
            font-size: 3rem;
      }

      .top_service_pay_lst_itm {
            text-align: center;
            font-size: 1.2rem;
      }
      .top_service_cont {
            padding: 8px;
            border-radius: 5px;
            margin-right: 4px;
            width: calc(50% - 2px);
      }
      .top_service_ttl {
            font-size: 1.8rem;
            padding-bottom: 5px;
      }
      .top_service_pay_num {
            font-size: 2.6rem;
            font-weight: bold
      }
      .top_service_pay_txt_zey{
            font-size: 1rem;
      }
      .top_service_pay_txt_yen{
            font-size: 1rem;
      }
      .top_service_pay_lst_itm{
            font-weight: bold;
      }
      .top_service_pay {
            height: 70px;
      }
      .top_service_cont_arrow::before {
            right: -35px;
            height: 35px;
            width: 45px;
      }
}

/*    導入までの流れ
=====================================================*/
.top_step_sec{
      background-color: #F6F8F8;
      padding-bottom: 200px;
}
.top_step_lst_itm{
      position: relative;
      width: 25%;
      margin-right: 12.5%;
}
.top_step_lst_itm:nth-child(3n){
      margin-right: 0;
}
.top_step_lst_itm::before{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      right: -30%;
      margin: auto;
      height: 20px;
      width: 50px;
      background: url(../img/top/step_arrow.png) no-repeat;
      background-size: contain;
}
.top_step_lst_itm:nth-child(3n)::before{
      display: none;
}
.top_step_lst_num{
      font-size: 3rem;
      font-weight: bold;
      letter-spacing: 2px;
      line-height: 1.5;
}
.top_step_lst_ttl{
      font-size: 2.4rem;
      font-weight: 500;
      line-height: 1.5;
}
.top_step_lst_txt{
      font-weight: 500;
      line-height: 1.5;
      font-size: 1.6rem;
}
.top_step_lst_img img{
      height: 100%;
      object-fit: contain;
}
.top_bg_balloon{
      padding: 60px 0;
}
.top_faq_lst_div{
      border-radius: 20px;
      overflow: hidden;
      border: 3px solid #23B488;
}
.top_faq_lst_dt{
      position: relative;
      background-color: #23B488;
      color: #fff;
      padding: 30px;
      padding-left: 110px;
      padding-right: 60px;
      font-size: 2.4rem;
      font-weight: bold;
      cursor: pointer;
}
.top_faq_lst_dt::before{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      right: 30px;
      bottom: 0;
      margin: auto;
      height: 25px;
      width: 2px;
      background-color: #fff;
      transition: transform .2s;
}
.top_faq_lst_dt.open::before{
      transform: rotate(90deg);
}
.top_faq_lst_dt::after{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      right: 18px;
      bottom: 0;
      margin: auto;
      height: 2px;
      width: 25px;
      background-color: #fff;
}
.top_faq_lst_dt span{
      display: block;
      position: absolute;
      left: 45px;
      top: 50%;
      transform: translateY(-50%);
      color: #23B488;
      font-weight: bold;
      font-size: 2.6rem;
      z-index: 1;
}
.top_faq_lst_dt span::after{
      content: "";
      display: block;
      position: absolute;
      top: 55%;
      left: 50%;
      transform: translate(-50%,-50%);
      height: 50px;
      width: 50px;
      border-radius: 50%;
      background-color: #fff;
      z-index: -1;
}
.top_faq_lst_dd{
      position: relative;
      padding-left: 110px;
      display: none;
}
.top_faq_lst_dd_inr{
      min-height: 90px;
      padding: 10px;
      padding-left: 0;
      font-weight: 500;
      font-size: 1.8rem;
}
.top_faq_lst_dd::before{
      content: "A";
      display: block;
      position: absolute;
      left: 47px;
      top: 49%;
      transform: translateY(-50%);
      color: #fff;
      font-weight: bold;
      font-size: 2.6rem;
      z-index: 1;
}
.top_faq_lst_dd::after{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      bottom: 0;
      left: 30px;
      margin: auto;
      height: 50px;
      width: 50px;
      border-radius: 50%;
      background-color: #23B488;
}
.top_faq_lst_dd_inr_lst{
      max-width: 400px;
}
.top_faq_lst_dd_inr_lst_itm{
      width: 45%;
      margin-right: 10%;
      max-width: 160px;
}
.top_faq_lst_dd_inr_lst_itm:nth-child(2n){
      margin-right: 0;
}

.top_faq_lst_div + .top_faq_lst_div{
      margin-top: 30px;
}
@media (max-width: 896px){
      .top_step_lst_itm {
            position: relative;
            width: 100%;
            margin-right: 0%;
            margin-bottom: 80px;
      }
      .top_step_lst_itm:nth-child(3n){
            margin-bottom: 0;
      }
      .top_step_lst_txt{
            font-size: 1.8rem;
            margin-top: 20px;
      }
      .top_step_lst_img img{
            height: 100%;
            max-height: 200px;
            object-fit: contain;
      }
      .top_step_lst_itm::before {
            content: "";
            display: block;
            position: absolute;
            top: initial;
            bottom: -50px;
            right: 0%;
            left: 0;
            transform: rotate(90deg);
            margin: auto;
            height: 20px;
            width: 40px;
            background: url(../img/top/step_arrow.png) no-repeat;
            background-size: contain;
      }
      .top_faq_lst_dt {
            padding: 20px;
            padding-left: 80px;
            padding-right: 50px;
            font-size: 2rem;
      }
      .top_faq_lst_dt span {
            display: block;
            position: absolute;
            left: 35px;
            top: 50%;
            transform: translateY(-50%);
            color: #23B488;
            font-weight: bold;
            font-size: 2.6rem;
            z-index: 1;
      }
      .top_faq_lst_dd {
            position: relative;
            padding: 10px;
            padding-left: 80px;
            display: none;
      }
      .top_faq_lst_dd::after {
            content: "";
            display: block;
            position: absolute;
            top: 0;
            bottom: 0;
            left: 20px;
            margin: auto;
            height: 50px;
            width: 50px;
            border-radius: 50%;
            background-color: #23B488;
      }
      .top_faq_lst_dd::before {
            content: "A";
            display: block;
            position: absolute;
            left: 36px;
            top: 50%;
            transform: translateY(-50%);
            color: #fff;
            font-weight: bold;
            font-size: 2.6rem;
            z-index: 1;
      }
}
@media (max-width: 576px){
      .top_step_sec{
            padding-bottom: 140px;
      }
      .top_bg_balloon {
            padding: 60px 0;
      }
      .top_bg_balloon img{
            height: 50px;
            object-fit: cover;
      }
      .top_faq_lst_div + .top_faq_lst_div {
            margin-top: 20px;
      }
      .top_faq_lst_dd_inr_lst_itm{
            width: 100%;
            margin-right: 0%;
            max-width: 100%;
      }
            .top_faq_lst_dd_inr_lst_itm:nth-child(2n){
            margin-right: 0;
      }
}


.top_cct_sec{
      position: relative;
      background-image: linear-gradient(#a4dac6, #7cd2b6 60%, #00b884 80% 100%);
}
.top_cct_sec::before{
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      height: calc(100% + 200px);
      z-index: -1;
      width: 100%;
      background-image: linear-gradient(#a4dac6, #7cd2b6 60%, #00b884 80% 100%);
}
.top_cct_lead_txt{
      font-size: 2rem;
      font-weight: 500;
}
.top_cct_btn{
      max-width: 300px;
}
.top_form_cont{
      margin-top: 60px;
}


@media (max-width: 896px){}
@media (max-width: 576px){
      .top_form_cont{
            margin-top: 40px;
      }
      .top_cct_lead_txt{
            font-size: 1.8rem;
      }
}

.grecaptcha-badge {
      visibility: hidden !important;
}