@charset "UTF-8";
/* ===================================================================
CSS information

 file name  : geniee_recommend.css
 style info : GENIEE RMP, GENIEE DATACONNECT
=================================================================== */

@media only screen and (max-width: 1024px) {
  body .view_pc {
    display: block !important;
  }
}

@media only screen and (max-width: 767px) {
  body .view_pc {
    display: none !important;
  }
}

@media only screen and (min-width: 1350px) {
  body .view_placement_sp {
    display: none !important;
  }
}

@media only screen and (max-width: 1350px) {
  body .view_placement_tablet {
    display: none !important;
  }
}


/* ===================================================================
CSS information
=================================================================== */

#contents {
  font-family: "Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Arial", "Meiryo", "Yu Gothic", sans-serif;
  color: #222;
}

.gothic {
  font-family: "Helvetica Neue", "Helvetica", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Arial", "Meiryo", "Yu Gothic", sans-serif;
}

#header {
  height: 101px;
}

#header .top_header,
#header .navigator {
  background: none;
  border: 0;
  color: #fff;
  font-weight: bold;
}

#header .top_header {
  position: absolute;
  top: 0;
  width: 100%;
  height: 32px;
}

#header .navigator {
  position: absolute;
  top: 32px;
}

#header .navigator:not(.active) .main_menu ul.view_pc-tab li a {
  color: #fff;
}

#header .navigator .main_menu ul.view_pc-tab li a:before {
  content: none;
}

.con_title .inner {
  /* max-width: 1140px; */
  width: calc((1140 / 1440) * 100vw);
  margin: 0px auto 0;
  position: relative;
  padding: 0 20px;
  color: #fff;
}

#header .navigator:not(.active) .logo a {
  background: url("../images/header/logo_white.svg") center center / 100% auto no-repeat;
  display: inline-block;
}

#header .navigator:not(.active) .logo a img {
  opacity: 0;
}

#header .navigator:not(.active) .main_menu ul.view_pc-tab li:last-of-type a {
  background: url("../images/header/search_white@2x.png") calc(1.5em + 10px) .5em / 16px 18px no-repeat;
  display: inline-block;
}

#header .navigator:not(.active) .main_menu ul.view_pc-tab li:last-of-type a img {
  opacity: 0;
}

#header .navigator:not(.active) .main_menu ul.view_pc-tab .mega_menu li:last-of-type a {
  background: none;
}

html.lower #contents .con_title {
  text-align: left;
}

html.lower #contents .con_title h2 {
  /* top: 87px; */
  /* left: 0; */
  transform: none;
  /* margin: 5em 0 0 0; */
  margin-top: calc((100 / 1440) * 100vw);
  position: static;
  left: auto;
  top: auto;
}

html.lower #contents .con_title h2 .jp {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Arial", "Meiryo", "Yu Gothic", sans-serif;
  font-size: calc((50 / 1440) * 100vw);
  font-weight: 600;
  line-height: calc((75 / 1440) * 100vw);
  text-align: left;
  letter-spacing: normal;
}


/* text animation */

.txt_lead {
  text-align: left;
  line-height: calc((27 / 1440) * 100vw);
  font-size: calc((18 / 1440) * 100vw);
  /* margin: 30px 0 0 5px; */
  margin-top: calc((30 / 1440) * 100vw);
  margin-bottom: calc((5 / 1440) * 100vw);
}

.con_title .btn_area {
  line-height: 1.5;
  column-gap: calc((20 / 1440) * 100vw);
  margin-top: calc((36 / 1440) * 100vw);
}

.con_title .btn {
  font-size: calc((16 / 1440) * 100vw);

  border-radius: calc((4 / 1440) * 100vw);


  padding: calc((16 / 1440) * 100vw) 0;
  display: block;
  cursor: pointer;
  transition: all .3s;

  width: calc((255 / 1440) * 100vw);
  border: 1px solid #fff;
  text-decoration: none;
  text-align: center;
}

body a.light_blue_btn {
  color: #fff;
  background: #2476D8;
  border: 1px solid #fff;
  margin: 0 0 13px;
}

body a.light_blue_btn:hover {
  color: #2476D8;
  background: #fff;

}

body a.trans_btn {
  color: #fff;
  background: transparent;
  border: 1px solid #fff;
  margin: 0 0 13px;
}

body a.trans_btn:hover {
  color: #fff;
  background: #2476D8;

}

.con_main {
  margin: 0 auto;
}

/* body a:link, body a:visited, body a:active */

@media screen and (max-width: 767px) {
  :root {
    font-size: calc(100vw / 390);
  }



  #header {
    height: 56px;
  }

  #header .navigator .logo {
    padding: 17px 0;
  }

  [id^='js-menu'] {
    width: 30px;
    height: 30px;
  }

  #header .box_lang {
    top: 50%;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
  }

  #header .box_lang li a#js-search {
    background: #FFF;
    padding: 5px;
    margin-right: 10px;
  }

  #header .box_lang li a {
    padding: 4.5px 9px;
    font-size: 14px;
  }

  #header .navigator {
    top: 0;
    background: rgba(255, 255, 255, .30);
  }


  #contents .con_title h2,
  #contents .con_title .catchcopy {
    margin: 40rem 0 0;
  }

  #contents .con_title h2 .jp {
    font-size: 3.47vw;
  }

  .txt_lead {
    margin: calc((37 / 425) * 100vw) 0 0 calc((2 / 425) * 100vw);
    font-size: calc((18 / 425) * 100vw);
    line-height: calc((27 / 425) * 100vw);
  }

  .con_title .btn {
    margin: 0 auto 13px;
    width: calc((255 / 425) *100vw);
    height: calc((50 / 425) *100vw);
    border-radius: calc((5 / 425) * 100vw);
    font-size: calc((16 / 425) * 100vw);
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  @media (max-width:767px) {
    .con_title .btn {
      margin: 0 auto 13px;

    }
  }

  #footer {
    font-size: 12px;
  }
}

@keyframes motion_01 {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes motion_01_01 {
  0% {
    opacity: 0;
    filter: blur(10px);
  }

  100% {
    opacity: 1;
    filter: blur(0);
  }
}

@keyframes motion_01_02 {
  0% {
    left: -100%;
  }

  60% {
    left: 0;
  }

  100% {
    left: 0;
  }
}

@keyframes motion_02_01 {
  0% {
    opacity: 0;
    filter: blur(10px);
  }

  100% {
    opacity: 1;
    filter: blur(0);
  }
}

@keyframes motion_02_02 {
  0% {
    opacity: 0;
    transform: translate(0, -10px);
    pointer-events: none;
  }

  100% {
    opacity: 1;
    transform: translate(0, 0);
    pointer-events: auto;
  }
}

@keyframes motion_02_03 {
  0% {
    opacity: 0;
    top: 8px;
  }

  5% {
    opacity: 1;
    top: 8px;
  }

  70% {
    opacity: 1;
    top: 32px;
  }

  80% {
    opacity: 0;
    top: 32px;
  }

  100% {
    opacity: 0;
    top: 32px;
  }
}

@keyframes header_menu {
  0% {
    opacity: 0;
    pointer-events: none;
  }

  100% {
    opacity: 1;
    pointer-events: auto;
  }
}

@keyframes header_menu2 {
  0% {
    opacity: 0;
    pointer-events: none;
    filter: blur(10px);
  }

  100% {
    opacity: 1;
    pointer-events: auto;
    filter: blur(0);
  }
}

#homepage #header {
  opacity: 1;
  position: relative;
  z-index: 2;
}

@media only screen and (max-width: 767px) {
  img[src*="svg"] {
    max-width: 100%;
    height: auto;
  }
}

.blue_btn {
  background: #003164;
  color: #fff;
  border: 1px solid #003164;
  margin: 0 0 13px;
}

.blue_btn svg {
  fill: #fff;
  transition: all .2s;
}

.blue_btn:hover {
  background: #fff;
  color: #003164;
}

.blue_btn:hover svg {
  /* fill: #003164; */
  fill: #fff;
}



.link {
  margin: 0 30px 0 0;
  font-weight: bold;
}

.link a {
  color: #1356A0;
  align-items: center;
  display: flex;
}

.link img {
  margin-right: 7px;
}

/* contact */
#contact {
  background: rgba(204, 204, 204, 0.25);
  padding: 38px 0 40px;
  text-align: center;
  font-family: "Helvetica Neue", "Helvetica", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Arial", "Meiryo", "Yu Gothic", sans-serif;
}

#contact .request-link,
.globalMenuSp .request-link {
  background: #196FCB;
  color: #fff;
  border: 1px solid #196FCB;
  border-radius: 4px;
  font-size: 20px;
  font-weight: bold;
  width: 383px;
  display: none !important;
}

#contact .request-link svg,
.globalMenuSp .request-link svg {
  width: 23px;
  fill: #fff;
  margin-right: 15px;
}

#contact .request-link:hover,
.globalMenuSp .request-link:hover {
  color: #196FCB;
  background: #fff;
}

#contact .request-link:hover svg,
.globalMenuSp .request-link:hover svg {
  fill: #196FCB;
}

#contact .inquiry-link,
.globalMenuSp .inquiry-link {
  background: #003164;
  color: #fff;
  border: 1px solid #003164;
  border-radius: 4px;
  font-size: 20px;
  font-weight: bold;
  width: 383px;
}

#contact .inquiry-link svg,
.globalMenuSp .inquiry-link svg {
  width: 28px;
  fill: #fff;
  margin-right: 15px;
}

#contact .inquiry-link:hover,
.globalMenuSp .inquiry-link:hover {
  color: #003164;
  background: #fff;
}

#contact .inquiry-link:hover svg,
.globalMenuSp .inquery-link:hover svg {
  fill: #003164;
}

#contact .h2sub {
  font-size: 16px;
  color: #1356A0;
  font-weight: bold;
  margin-bottom: 8px;
  display: inline-block;
}

#contact h2 {
  font-size: 28px;
  margin-bottom: 25px;
  font-weight: bold;
}

.contact-btn-area {
  margin-bottom: 25px;
  gap: 0 20px;
}

.contact-btn-area>a {
  text-align: center;
  height: 70px;
}

body a:link,
body a:visited,
body a:active {
  text-decoration: none;
}

footer a:hover {
  color: #fff;
}

.tel-title {
  color: #000;
  font-size: 18px;
  font-weight: bold;
}

#contact .tel-area {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}

#contact .tel-area>div:nth-of-type(1) {
  width: 80%;
}

#contact .tel-area>a:nth-of-type(1) {
  width: 20%;
}

.tel-area .agency-link {
  font-weight: bold;
  /* padding-left: 22px; */
  color: #1356A0;
  display: inline-block;
  font-size: 16px;
}

#contact .tel-area .tel-wrap {
  border-right: 1px solid #CCCCCC;
  padding-right: 15px;
  line-height: 1;
}

.telnum {
  color: #000000;
  font-size: 34px;
  font-weight: bold;
  line-height: 1.1;
  display: flex;
  align-items: center;
  letter-spacing: 2px;
}

.telnum:hover {
  color: #000000;
}

.telnum img {
  margin: 1px 7px 0 0;
  width: 16px;
}

.tel-area .biz-hours {
  font-size: 14px;
  margin: 3px 0px 0 5px;
  font-weight: bold;
}




/* @media only screen and (min-width: 768px) and (max-width: 1439px) {
  html.lower #contents .con_title {
    height: calc((578 / 1440) *100vw) !important;
  }
} */

@media screen and (max-width: 767px) {
  html.lower #contents .con_title h2 {
    margin: 30rem 0 0;
  }

  html.lower #contents .con_title h2 .jp {
    font-size: calc((40 / 425) * 100vw);
    line-height: calc((64 / 425) * 100vw);
    margin-left: calc((2 / 425) * 100vw);
  }

  .con_h2head {
    color: #1957A0;
    text-align: center;
    font-size: 12rem;
    font-weight: bold;
    margin-bottom: 10px;
  }

  .con_h2explain {
    color: #313131;
    text-align: left;
    font-size: 11rem;
    line-height: 1.8;
    margin-bottom: 44px;
  }

  .form_link {
    flex-direction: column;
  }

  .product_needs {
    font-size: 20rem;
    text-align: center;
    margin-bottom: 20px;
  }

  body a.form_btn {
    width: 90%;
    justify-content: center;
  }

  #contact .tel-area .tel-wrap {
    border-right: none;
    border-bottom: 1px solid #CCCCCC;
    margin: 0 auto 20px;
    padding: 0 0 20px;
  }

  #contact .h2sub {
    font-size: 14px;
  }

  #contact h2 {
    font-size: 24rem;
  }

  #contact .inquiry-link,
  .globalMenuSp .inquiry-link {
    max-width: 90%;
  }

  .contact-btn-area {
    margin-bottom: 40px;
    gap: 20px 0;
  }

  .tel-title {
    margin-bottom: 10px;
    display: inline-block;
  }

  .telnum {
    margin-bottom: 5px;
  }

  #contact .tel-area>a:nth-of-type(1) {
    width: 100%;
  }
}



/* title */
html #geniee_recommend #contents .con_title {
  background: 
    url(../products/images/recommend/fv_pc.png) center / cover no-repeat,
    radial-gradient(104.48% 300.79% at 0.71% 1.71%, #005793 0%, #0F4086 32%, #001F5E 100%);
  position: relative;
  margin-bottom: 0;
  height: auto;
  padding-bottom:calc((78 / 1440) *100vw);
  .graphic {
    position: absolute;
    left: calc((873/ 1440) * 100vw);
    top: -50%;
    height: 110%;
    overflow: hidden;

    .js-loop {
      display: flex;
      flex-direction: column;
    }

    img {
      width: calc((258.59 / 1440) * 100vw);
      animation: slideIn 10s forwards linear;
    }
  }
}



h2 .jp .dots {
  background: top left / 1em 1em repeat-x radial-gradient(circle, #2E9DD6 .125em, rgba(0, 0, 0, 0) .15em);
  padding-top: 1em;
}

/* recommend about*/
section.con_recommend .con_main.recommend_about {
  background: linear-gradient(135deg,  rgb(244,251,255) 0%,rgb(187,201,224) 100%);
  padding-bottom: calc((108 / 1440) * 100vw);
  /* height:calc((1850 / 1440) * 100vw); */
}

section.con_recommend .con_main.recommend_about .con_inner,
section.con_recommend .con_main.recommend_client .con_inner {
  padding-top: calc((120 /1440) * 100vw);
}

section.con_recommend .con_main.recommend_about .con_inner .about_header,
section.con_recommend .con_main.recommend_client .con_inner .reasons_header {
  gap: calc((26 / 1440) * 100vw);

  img {
    width: calc((793 / 1440) * 100vw);
  }

  .text {
    font-size: calc((70 / 1440) * 100vw);
    font-weight: 800;
    color: #002060;
    line-height: normal;
    padding-top: calc((14 / 1440) * 100vw);
  }
}

section.con_recommend .con_main.recommend_about .con_inner .about_text {

  margin-top: calc((54 / 1440) * 100vw);
  width: calc((1100 / 1440) * 100vw);
  height: calc((275 / 1440) * 100vw);
  border-radius: calc((60 / 1440) * 100vw);
  background: #fff;
  box-shadow: 10px 10px 12.5px 1px #0020604D;

  p {
    text-align: center;
    font-size: calc((38 / 1440) * 100vw);
    font-weight: 800;
    line-height: calc((66 / 1440) * 100vw);
    letter-spacing: 7%;
    color: #002060;
  }
}

section.con_recommend .con_main.recommend_about .con_inner .about_img {
  img {
    width: calc((1130 / 1440) * 100vw);
  }

  margin-top:calc((94/1440) * 100vw);
  margin-bottom:calc((61/ 1440) * 100vw);
}

section.con_recommend .con_main.recommend_about .con_inner .about_under_text {
  p {
    font-weight: 800;
    font-size: calc((26 / 1440) * 100vw);
    line-height: calc((47.5/1440)*100vw);
    text-align: center;
    color: #002060;
    letter-spacing: 5%;
  }
}

@media (max-width:767px) {

  section.con_recommend .con_main.recommend_about {
    background: linear-gradient(135deg,  rgb(244,251,255) 0%,rgb(187,201,224) 100%);
    padding-bottom: calc((60 / 425) * 100vw);
    /* height:calc((1550 / 425) * 100vw); */
  }


  section.con_recommend .con_main.recommend_about .con_inner .about_header,
  section.con_recommend .con_main.recommend_client .con_inner .reasons_header {

    margin-top: calc((55 / 425) * 100vw);

    img {
      width: calc((340 / 425) * 100vw);
    }

  }

  section.con_recommend .con_main.recommend_about .con_inner .about_text {
    margin-top: calc((46 / 425) * 100vw);
    width: calc((378 / 425) * 100vw);
    height: calc((256 / 425) * 100vw);
    border-radius: calc((60 / 425) * 100vw);
    background: #fff;
    box-shadow: 10px 10px 12.5px 1px #0020604D;

    p {
      text-align: center;
      font-size: calc((20 / 425) * 100vw);
      font-weight: 800;
      line-height: calc((40 / 425) * 100vw);
      letter-spacing: 7%;
      color: #002060;
    }
  }

  section.con_recommend .con_main.recommend_about .con_inner .about_img {
    img {
      width: calc((358 / 425) * 100vw);
    }

    margin-top:calc((64/425) * 100vw);
    /* margin-bottom:calc((61/ 1440) * 100vw); */
  }

  section.con_recommend .con_main.recommend_about .con_inner .about_under_text {
    margin-top: calc((42 / 425) * 100vw);

    p {
      font-weight: 800;
      font-size: calc((26 / 425) * 100vw);
      line-height: calc((41.5/425)*100vw);
      text-align: center;
      color: #002060;
      letter-spacing: 5%;
    }
  }

}

section.con_recommend .con_main.recommend_strengths {
  background: linear-gradient(135deg,  rgb(0,87,147) 0%,rgb(15,64,134) 32%,rgb(0,31,94) 100%);
  min-height: calc((2750 / 1440) * 100vw);

  .con_inner {
    .strengths_header {
      margin-top: calc((120 / 1440)* 100vw);

      img {
        width: calc((795/1440)*100vw);
      }
    }

    .strengths_text {
      margin-top: calc((52 / 1440) * 100vw);

      p {
        font-weight: 800;
        font-size: calc((26 / 1440) * 100vw);
        line-height: calc((47.5/1440)*100vw);
        color: #fff;
        letter-spacing: 5%;
      }
    }

    .strengths_lists {
      margin-top: calc((83 / 1440) * 100vw);
      gap: calc((45/1440) * 100vw);

      .strengths_list {
        box-shadow: 10px 10px 12.5px 1px #0020604D;
        border-radius: 60px;
        gap: calc((50 / 1440) * 100vw);
        width: calc((1100 / 1440) * 100vw);
        height: calc((320 / 1440) * 100vw);
        background: #002060;

        .strength_img {
          margin-left: calc((88/ 1440) * 100vw);
        }

        .strength_img.img1 {
          width: calc((220 / 1440) * 100vw);
        }
          @media (max-width:480px) {
           .strength_img.img1 {
             margin-left: calc((10/ 1440) * 100vw);
           }
          }

        .strength_img.img2 {
          margin-left: calc((88/ 1440) * 100vw);
          /* margin-top: -3rem; */
          margin-top: -2.5rem;
          width: calc((226 / 1440) * 100vw);
        }
          @media (max-width:480px) {
           .strength_img.img2 {
             margin-left: calc((-111/ 1440) * 100vw);
           }
          }

        .strength_img.img3 {
          margin-left: calc((57/ 1440) * 100vw);
          margin-top: -3rem;
          width: calc((258 / 1440) * 100vw);
        }
          @media (max-width:480px) {
           .strength_img.img3 {
             margin-left: calc((-111/ 1440) * 100vw);
           }
          }

        .strength_img.img4 {
          margin-left: calc((88/ 1440) * 100vw);
          margin-top: -3rem;
          width: calc((184 / 1440) * 100vw);
        }

        .strength_img.img5 {
          margin-left: calc((60/ 1440) * 100vw);
          width: calc((221 / 1440) * 100vw);
        }
          @media (max-width:480px) {
           .strength_img.img5 {
             margin-left: calc((5/ 1440) * 100vw);
           }
          }

        .strength_text {
          gap: calc((21 / 1440) * 100vw);

          .strength_text_header {
            color: #ffff00;
            font-weight: 800;
            font-size: calc((26 / 1440) * 100vw);
            line-height: calc((41.6 / 1440) *100vw);
          }

          .strength_text_body {
            font-size: calc((22 / 1440) * 100vw);
            line-height: calc((35 / 1440)* 100vw);
            color: #fff;

            .small {
              font-size: calc((18 / 1440) * 100vw);
            }
          }
        }
      }
    }

    .btn-area {
      margin-top: calc((142 / 1440) * 100vw);
      gap: calc((41 / 1440) * 100vw);
    }
  }


}

section.con_recommend .con_main.recommend_strengths .con_inner .issues {
  margin-top: calc((150 / 1440) * 100vw);
  gap: calc((35 / 1440) * 100vw);

  img {
    width: calc((346 / 1440) * 100vw);
  }
}

section.con_recommend .con_main.recommend_strengths .con_inner .issue_notes {
  align-self: flex-start;
  margin-top: calc((29 / 1440) * 100vw);
  margin-left: calc((169 / 1440) * 100vw);

  p {
    font-size: calc((13 / 1440) * 100vw);
    color: #fff;
    letter-spacing: 5%;
  }

  p:nth-of-type(2) {
    padding-left: 1em;
  }
}

@media (max-width:767px) {
  section.con_recommend .con_main.recommend_strengths {
    background: linear-gradient(135deg,  rgb(0,87,147) 0%,rgb(15,64,134) 32%,rgb(0,31,94) 100%);
    min-height: calc((4200 / 425) * 100vw);

    .con_inner {
      .strengths_header {
        margin-top: calc((55 / 425)* 100vw);

        img {
          width: calc((337.94/425)*100vw);
        }
      }

      .strengths_text {
        margin-top: calc((44 / 425) * 100vw);

        p {
          font-weight: 800;
          font-size: calc((20 / 425) * 100vw);
          line-height: calc((40.5/425)*100vw);
          color: #fff;
          letter-spacing: 5%;
          text-align: center;
        }
      }

      .strengths_lists {
        margin-top: calc((46 / 425) * 100vw);
        gap: calc((70/425) * 100vw);

        .strengths_list {
          padding-top: calc((20 / 425) * 100vw);
          padding-bottom: calc((75 / 425) * 100vw);
          flex-direction: column;
          box-shadow: 10px 10px 12.5px 1px #0020604D;
          border-radius: 60px;
          gap: calc((62 / 425) * 100vw);
          width: calc((380 / 425) * 100vw);
          height: auto;
          background: #002060;

          .strength_img.img1 {
            width: calc((257 / 425) * 100vw);
          }

          .strength_img.img2 {
            width: calc((257 / 425) * 100vw);
          }

          .strength_img.img3 {

            width: calc((257 / 425) * 100vw);
          }

          .strength_img.img4 {
            width: calc((256 / 425) * 100vw);
          }

          .strength_img.img5 {
            width: calc((256 / 425) * 100vw);
          }

          .strength_text {
            gap: calc((31 / 425) * 100vw);
            align-items: center;
            text-align: center;

            .strength_text_header {
              color: #ffff00;
              font-weight: 800;
              font-size: calc((22 / 425) * 100vw);
              line-height: calc((31.6 / 425) *100vw);
            }

            .strength_text_body {
              font-size: calc((20 / 425) * 100vw);
              line-height: calc((30 / 425)* 100vw);
              color: #fff;

              .small {
                font-size: calc((16 / 425) * 100vw);
              }
            }
          }
        }
      }

      .btn-area {
        flex-direction: column;
        margin-top: calc((60 / 425) * 100vw);
        gap: calc((47 / 425) * 100vw);
      }
    }
  }
}

/* recommend_client*/
section.con_recommend .con_main.recommend_client {
  background: linear-gradient(135deg,  rgb(244,251,255) 0%,rgb(187,201,224) 100%);
  padding-bottom: calc((182 / 1440) * 100vw);
  min-height: (calc(1400 / 1440) * 100vw);
}

section.con_recommend .con_main.recommend_client .con_inner {
  .client_header {
    margin-bottom: calc((92 / 1440) * 100vw);
    font-size: calc((70 / 1440) * 100vw);
    font-weight: 800;
    line-height: calc((105 / 1440) * 100vw);
    color: #002060;
  }

  .client_industry {
    img {
      width: calc((1100 / 1440) * 100vw);
    }
  }
}


.con_inner .inquiry-white-btn {
  margin-top: calc((20 / 425) * 100vw);
}


@media (max-width:767px) {
  section.con_recommend .con_main.recommend_client {
    background: linear-gradient(135deg,  rgb(244,251,255) 0%,rgb(187,201,224) 100%);
    padding-bottom: calc((90 / 425) * 100vw);
  }

  section.con_recommend .con_main.recommend_client .con_inner {
    .client_header {
      margin-top: calc((20 / 425) * 100vw);
      margin-bottom: calc((44 / 425) * 100vw);
      font-size: calc((31 / 425) * 100vw);
      font-weight: 800;
      line-height: calc((105 / 1440) * 100vw);
      color: #002060;
    }

    .client_industry {
      img {
        width: calc((342 / 425) * 100vw);
      }
    }
  }
}


/* recommend_process*/
section.con_recommend .recommend_process {
  background: linear-gradient(135deg,  rgb(0,87,147) 0%,rgb(15,64,134) 32%,rgb(0,31,94) 100%);
  min-height: calc((720 / 1440) * 100vw);
}

section.con_recommend .con_main.recommend_process .con_inner {

  .process_header {
    margin-top: calc((137 / 1440)* 100vw);
    color: #fff;
    font-size: calc((70 / 1440) * 100vw);
    line-height: calc((105 / 1440) * 100vw);
    font-weight: 800;
  }

  .process {
    margin-top: calc((42 / 1440) * 100vw);

    img {
      width: calc((1100 / 1440) * 100vw);
    }

    .subheading {
      width: calc((1090 / 1440) * 100vw);
      margin-top: -2em;
      gap: calc((40 / 1440) * 100vw);

      .subheading_text {
        color: #fff;
        width: calc((145 / 1440) * 100vw);
        text-align: center;
        font-size: calc((16 / 1440) * 100vw);
      }
    }
  }
}

@media (max-width:767px) {
  section.con_recommend .recommend_process {
    background: linear-gradient(135deg,  rgb(0,87,147) 0%,rgb(15,64,134) 32%,rgb(0,31,94) 100%);
    /* min-height: calc((1440 / 425) * 100vw); */
    padding-bottom: calc((40 / 425) * 100vw);
  }

  section.con_recommend .con_main.recommend_process .con_inner {

    .process_header {
      margin-top: calc((55 / 425)* 100vw);
      color: #fff;
      font-size: calc((31 / 425) * 100vw);
      line-height: calc((46.5 / 425) * 100vw);
      font-weight: 800;
    }

    .process {
      margin-top: calc((27 / 425) * 100vw);

      img {
        width: calc((1100 / 1440) * 100vw);
      }

      .subheading {
        width: calc((1090 / 1440) * 100vw);
        margin-top: -2em;
        gap: calc((40 / 1440) * 100vw);

        .subheading_text {
          color: #fff;
          width: calc((145 / 1440) * 100vw);
          text-align: center;
          font-size: calc((16 / 1440) * 100vw);
        }
      }
    }
  }
}


/* recommend_contact_form_area*/
section.con_recommend .recommend_contact_form_area {
  background: linear-gradient(135deg,  rgb(244,251,255) 0%,rgb(187,201,224) 100%);
}
  .recommend_contact_form_header {
    margin-top: calc((137 / 1440)* 100vw);
    color: #002060;
    font-size: calc((70 / 1440) * 100vw);
    line-height: calc((105 / 1440) * 100vw);
    font-weight: 800;
    text-align: center;
  }
  .recommend_contact_form_header .sub_header {
    margin-top: calc((18 / 1440) * 100vw);
    font-size: calc((26 / 1440) * 100vw);
    line-height: calc((47.5 / 1440) * 100vw);
  }
  .recommend_contact_form {
    margin-top: calc((61 / 1440) * 100vw);
    width:90%;
    max-width: 1100px;
    margin-bottom: calc((134/ 1440)* 100vw);
    height:980px;
  }

@media (max-width:767px) {
  section.con_recommend .recommend_contact_form {
    background: linear-gradient(135deg,  rgb(244,251,255) 0%,rgb(187,201,224) 100%);
  }
    .recommend_contact_form_header {
      margin-top: calc((55 / 425)* 100vw);
      color: #002060;
      font-size: calc((31 / 425) * 100vw);
      line-height: calc((46.5 / 425) * 100vw);
      font-weight: 800;
      text-align: center;
    }
    .recommend_contact_form_header .sub_header {
      margin-top: calc((12 / 425) * 100vw);
      font-size: calc((20 / 425) * 100vw);
      line-height: calc((47.5 / 425) * 100vw);
    }

    .recommend_contact_form {
      margin-top: calc((61 / 1440) * 100vw);
      width: calc((1100 / 1440) * 100vw);
      margin-bottom: calc((220/ 1440)* 100vw);
    }
  
}

.content-box {
  border-radius: 60px;
  height: auto;
}

.white-bg {
  background: #fff;
}

.deep-blue-bg {
  background: #002060;
}

.box-shadow {
  box-shadow: 10px 10px 12.5px 1px #0020604D;
}

/* inquiry　中間リンク*/
.inquiry-lightblue-btn {
  background: #2476D8;
  /* width:500px; */
  width: calc((500/ 1440) * 100vw);
  /* height:70px; */
  height: calc((70 / 1440) * 100vw);
  border: calc((1 / 1440) * 100vw) solid #fff;
  /* border-radius:5px; */
  border-radius: calc((5 / 1440) * 100vw);
  /* font-size:20px; */
  font-size: calc((20 / 1440) * 100vw);
  font-weight: 600;
  color: #fff;
  transition: 0.4s;

  #email-icon path {
    fill: #ffffff;
    /* 白色 */
  }
}

.inquiry-lightblue-btn:hover {
  background: #fff;
  border: calc((1 / 1440) * 100vw) solid #2476D8;

  color: #2476D8 !important;

  #email-icon path {
    fill: #2476D8;
    /* 白色 */
  }
}


.inquiry-blue-btn {

  background: #003164;
  width: calc((500/ 1440) * 100vw);
  height: calc((70 / 1440) * 100vw);
  border: calc((1 / 1440) * 100vw) solid #fff;
  border-radius: calc((5 / 1440) * 100vw);
  font-size: calc((20 / 1440) * 100vw);
  font-weight: 600;
  color: #fff;
  transition: 0.4s;
}

.inquiry-blue-btn:hover {
  background: #fff;
  border: calc((1 / 1440) * 100vw) solid #003164;
  color: #003164 !important;
}

@media (max-width:767px) {
  .inquiry-lightblue-btn {
    width: calc((342/ 425) * 100vw);
    height: calc((48 / 425) * 100vw);
    border: calc((1 / 425) * 100vw) solid #fff;
    border-radius: calc((5 / 425) * 100vw);
    font-size: calc((20 / 425) * 100vw);
  }

  .inquiry-lightblue-btn:hover {
    border: calc((1 / 425) * 100vw) solid #2476D8;
  }


  .inquiry-blue-btn {
    width: calc((342/ 425) * 100vw);
    height: calc((48 / 425) * 100vw);
    border: calc((1 / 425) * 100vw) solid #fff;
    border-radius: calc((5 / 425) * 100vw);
    font-size: calc((20 / 425) * 100vw);
  }

  .inquiry-blue-btn:hover {
    border: calc((1 / 425) * 100vw) solid #003164;
  }
}

.con_main .inquiry-white-btn {
  background: #fff;
  /* width:500px; */
  width: calc((500/ 1440) * 100vw);
  /* height:70px; */
  height: calc((70 / 1440) * 100vw);
  border: calc((1 / 1440) * 100vw) solid #fff;
  /* border-radius:5px; */
  border-radius: calc((5 / 1440) * 100vw);
  /* font-size:20px; */
  font-size: calc((20 / 1440) * 100vw);
  font-weight: 600;
  color: #002060;
}

.con_main .inquiry-white-btn:hover {
  background: #002060;
  border: 1px solid #fff;
  color: #fff;
}

.con_main .inquiry-white-btn:hover svg {
  fill: #fff;
}

/* レイアウト等 */
.gap-2 {
  gap: 1.5rem;
}

@media screen and (max-width:767px) {
  .gap-2 {
    gap: calc((12 / 425) * 100vw);
  }
}

.gap-4 {
  gap: 3.5rem;
}

.gap-4-logo {
  gap: 5.5rem;
}

.column-gap-4 {
  gap: 3.5rem;
}

.column-gap-1 {
  gap: 1.5rem;
}

.column-gap-2 {
  gap: 2rem;
}

.position-absolute {
  position: absolute;
}

@media (max-width:767px) {

  html #geniee_recommend #contents .con_title{
    height: auto;
  }

  html #geniee_recommend #contents .con_title {
    height: calc((1003 / 425) * 100vw);
    /* padding-bottom:calc((2560  / 425 )* 10vw); */
  }

  .con_title .btn_area{
    flex-direction: column;
  }

  .content-box{
    min-width: initial;
    max-width: initial;
  }

  .position-absolute {
    position: initial;
  }

  .con_title .btn_area {
    margin-top: calc((460 / 425) * 100vw);
    gap: calc((20 / 425) * 100vw);
  }

  html #geniee_recommend #contents .con_title {
    background: 
    url(../products/images/recommend/fv_sp.png) center / cover no-repeat,
    radial-gradient(circle at 4% 7.58%, #005793 0%, #0F4086 32%, #001F5E 100%);
  }

  html #geniee_recommend #contents .con_title .inner {
    margin-top: calc((50 / 425) * 100vw);
    width: 100%;
  }

  html #geniee_recommend #contents .con_title h2 {
    line-height: calc((120.5 / 425) * 100vw);
  }

  .recommend_about .con_inner .inquiry-white-btn {
    margin-top: calc((20 / 425) * 100vw);
  }

  .con_main .inquiry-white-btn {
    font-size: calc((20 / 425) * 100vw);
    background: #fff;
    width: calc((342 / 425) * 100vw);
    height: calc((48 / 425) * 100vw);
    margin-bottom: 3em;
  }
}