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

 file name  : geniee_rmp.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;
  }

  body .view_sp {
    display: block !important;
  }
}

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

  body .view_sp {
    display: none !important;
  }
}

/* -----------------------------------------------------------
	con_solution
----------------------------------------------------------- */

.con_company {
  padding: 2em 0;
}

.con_company h2 {
  text-align: center;
  color: #333;
  margin-bottom: 1em;
}

.con_company h2 .img {
  display: block;
}

@media only screen and (max-width: 480px) {
  .con_company h2 .img {
    display: inline;
    vertical-align: middle;
  }
}

.con_company h2 .jp {
  font-size: 247%;
  display: block;
  font-weight: normal;
}

@media only screen and (max-width: 480px) {
  .con_company h2 .jp {
    display: inline;
    font-size: 160%;
  }
}

.con_company .box_inner {
  overflow: hidden;
  *zoom: 1;
}

.con_company .box_inner ul li {
  width: 50%;
  float: left;
}

@media only screen and (max-width: 767px) {
  .con_company .box_inner ul li {
    width: 100%;
    margin-bottom: 3%;
  }

  .con_company .box_inner ul li .img {
    text-align: center;
  }

  .con_company .box_inner ul li .img img {
    width: 100%;
  }
}

.con_company .box_inner ul li a {
  display: inline-block;
  text-decoration: none;
}

.con_company .box_inner ul li a:hover .btn span .fa-angle-right {
  margin-left: .6em;
}

.con_company .box_inner ul li .box_inner {
  border: 3px solid #efefef;
  border-top: none;
  padding: 25px;
}

@media only screen and (min-width: 768px) and (max-width: 1100px) {
  .con_company .box_inner ul li .box_inner {
    padding: 3%;
  }
}

@media only screen and (max-width: 767px) {
  .con_company .box_inner ul li .box_inner {
    padding: 3%;
  }
}

.con_company .box_inner ul li h3 {
  margin-bottom: 1em;
}

.con_company .box_inner ul li h3 .jp {
  font-size: 154%;
  font-weight: bolder;
  margin-right: .5em;
}

@media only screen and (max-width: 1024px) {
  .con_company .box_inner ul li h3 .jp {
    font-size: 139%;
  }
}

.con_company .box_inner ul li h3 .en {
  font-family: "Conv_Muli-Light", Sans-Serif;
  font-weight: normal;
}

.con_company .box_inner ul li .btn {
  text-align: center;
  margin-top: 1em;
}

.con_company .box_inner ul li .btn span {
  border: 1px solid #1957a0;
  background: #1957a0;
  text-align: center;
  padding: .7em 1em;
  display: inline-block;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  text-decoration: none;
  color: #FFF;
  font-size: 108%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: .2em .3em;
  width: 160px;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media only screen and (max-width: 767px) {
  .con_company .box_inner ul li .btn span {
    width: 100%;
  }
}

.con_company .box_inner ul li .btn span .fa-angle-right {
  margin-left: .3em;
  border: 1px solid #FFF;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  overflow: hidden;
  *zoom: 1;
  line-height: 1;
  padding: 0 .3em;
  vertical-align: middle;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.con_company .box_inner ul li .btn span:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}

.con_company .box_inner ul li .btn span:hover .fa-angle-right {
  margin-left: .6em;
}

@media only screen and (max-width: 767px) {
  .con_company .box_inner ul li .btn span {
    width: 100%;
  }
}

@media only screen and (min-width: 768px) {
  .con_company .box_inner ul li:nth-child(even) .box_inner {
    border-left: none;
  }
}

@media print {
  .con_company .box_inner ul li:nth-child(even) .box_inner {
    border-left: none;
  }
}

.ie8 .con_company .box_inner ul li:nth-child(even) .box_inner {
  border-left: none;
}


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

html {
  /* font-size: calc(100vw / 1440); */
}

@media screen and (min-width: 1440px) {
  /* html{ font-size: 6.25%;} */
}

#contents {

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

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

#contents .con_title {
  margin: 0;
  background: url(../images/home2/bg_fv@2x.png) top center no-repeat;
  height: 652px;
}

#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: 1100px;
  margin: 0px auto 0;
  /* background:#f00; */
  /* height: 100%; */
  position: relative;
  padding: 0 0px;
  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: 41px 0 0;
  position: static;
  left: auto;
  top: auto;
}

html.lower #contents .con_title h2 .jp {
  font-size: 40px;
  font-weight: 700;
  text-align: left;
  letter-spacing: normal;
}

#contents .con_title h2 .jp .type-animate {
  white-space: nowrap;
  overflow: hidden;
  animation: animated-text 2s steps(30, end) 1s 1 normal both;
  display: block;
}

#contents .con_title h2 .jp .type-animate2 {
  animation: animated-text 2s steps(30, end) 3s 1 normal both;
}

#contents .con_title h2 .jp .type-animate3 {
  animation: animated-text 2s steps(30, end) 5s 1 normal both;
}

#contents .con_title h2 .jp .type-animate4 {
  animation: animated-text 2s steps(30, end) 7s 1 normal both;
}

/* text animation */

@keyframes animated-text {
  from {
    width: 0;
  }

  to {
    width: 100%;
  }
}

.txt_lead {
  text-align: left;
  line-height: 30px;
  font-size: 18px;
  margin: 20px 0 0;
}

.con_title .btn_area {
  line-height: 1.5;
  margin: 20px 0 0;
  display: flex;
  column-gap:24px;
}

.con_title .btn {
  font-size: 16px;
  border-radius: 4px;
  padding: 16px 0;
  display: block;
  cursor: pointer;
  transition: all .3s;
  width: 255px;
  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.dark_blue_btn {
  color: #fff;
  background: #003164;
  border: 1px solid #fff;
  margin: 0 0 13px;
}

body a.dark_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_title .master_logo_area {
  position: absolute;
  right: 20px;
  bottom: 0px;
}

.con_title .master_logo {
  display: block;
}

.con_title .master_logo:nth-of-type(1) {
  margin: 0 0 30px;
}





.con_client {
  position: relative;
  z-index: 2;
}



.company_slider {
  padding: 17px 0;
  box-shadow: 0 10px 30px rgba(0, 0, 0, .16);
}

.bx-wrapper {
  box-shadow: none;
  box-sizing: border-box;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
  border: none;
  background: none;
}

.con_client .bx-wrapper {
  overflow: hidden;
}

.bx_companies li {
  visibility: hidden;
}

.bx-viewport .bx_companies li {
  visibility: visible;
}

.bx-wrapper img {
  width: 180px;
}

.con_client .notes {
  text-align: right;
  margin: 10px auto;
  max-width: 1120px;
  padding-right: 20px;
}

.con_history {
  background: url(../images/home2/bg_history.svg) no-repeat center center /cover;
  color: #FFF;
  text-align: center;
  padding: 88px 20px 81px;
}

.con_history .con_main {
  max-width: 988px;
}


.integration {
  margin: 80px auto 87px;
}


.integration_before {
  width: 309px;
}

.integration_arrow {
  flex: 1 1 auto;
}

.integration_after {
  width: 276px;
}

.integration_mc {
  margin-bottom: 78px;
}

.history_desc {
  font-size: 18px;
  line-height: 2;
}

.con_comm {
  padding: 80px 20px;
  text-align: center;
}

.con_comm .con_main {
  max-width: 1008px;
}

/* .con_comm .con_h2 {
  color: #1957A0;
} */

.comm_knowledge_wrap {
  margin: 80px auto 0;
}

.comm_knowledge {
  width: 50%;
}

.comm_knowledge .comm_h3 {
  font-size: 28px;
  margin: 0 auto 29.5px;
}

.comm_img {
  margin: 0 auto 60px;
}

.comm_knowledge:nth-of-type(1) .comm_img {}

.comm_knowledge:nth-of-type(2) .comm_img {}

.comm_desc {
  font-size: 25px;
}

.platform_img {
  margin: 80px auto;
}

.platform_desc {
  font-size: 18px;
  max-width: 772px;
  margin: 0 auto;
  line-height: 2;
}

.con_product {
  padding: 80px 20px 110px;
}

.con_product .con_main {
  max-width: 1100px;
}

/* .con_product .con_h2 {
  text-align: center;
  color: #1957A0;
  font-weight: bold;
} */

.con_product .con_h2_notes {
  text-align: center;
  font-size: 18px;
  color: #AAAAAA;
}

.product_wrap {
  margin: 42px auto 0px;
}

.product_subbrand {
  border-radius: 10px;
  background: rgba(27, 29, 56, .063);
  width: 100%;
  padding: 60px 30px 80px;
}

.product_subbrand:nth-of-type(1) {
  margin: 0 20px 0 0;
}

.product_subbrand:nth-of-type(2) {}

.product {}

.product_ad {}

.product_logo {
  text-align: center;
  margin: 0px 0 20px;
}

.product_desc {
  font-size: 18px;
  line-height: 2;
  font-weight: 600;
  margin: 0 auto 69px;
  min-height: 14em;
}

.subbrand_wrap {}

.subbrand_wrap .subbrand {
  min-height: 228px;
  margin: 0 0 60px 0;
  text-decoration: none;
  display: block;
}

.subbrand_wrap .subbrand:nth-of-type(1) {
  min-height: auto;
}

.subbrand:nth-last-of-type(1) {
  margin: 0;
}

.product_subbrand:nth-of-type(1) .subbrand {
  /* margin: 0 0 80px 0; */
}

.subbrand_img {
  width: 165px;
  max-width: 166px;
  height: 165px;
  background: #fff;
  box-shadow: 0 0 20px rgba(0, 0, 0, .086);
  flex: 1 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.subbrand_body {
  margin: 0 0 0 20px;
}

.subbrand_title {
  color: #1957A0;
  font-size: 21px;
  /* margin: 0 0 13px 0; */
  line-height: 1.2;
  min-height: 42px;
}

.product_subbrand:nth-of-type(1) .subbrand_title {
  /* margin: 0 0 23px; */
}

.subbrand_desc {
  margin: 10px 0 24px 0;
  font-size: 16px;
  line-height: 30px;
}

body .subbrand_btn {
  font-size: 16px;
  color: #1957A0;
  font-weight: 600;
  background: #FFF;
  border: 1px solid #1957A0;
  border-radius: 4px;
  padding: 7px 20px;
  text-decoration: none;
  display: inline-block;
  line-height: 1;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

.mouse body .subbrand:hover .subbrand_btn {
  background: #1957A0;
  color: #FFF;
  text-decoration: none;
}

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

.product_mc {}

.subbrand_servicedby {
  color: #1957A0;
  line-height: 1;
  display: block;
  font-size: 14px;
}

.bx-wrapper {}

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

  #contents .con_title {
    background: url(../images/home2/bg_fv_sp.png) center center no-repeat;
    height: 750rem;
    background-size: cover;
    /* min-height: 700px; */
  }

  .main,
  .con_bredcrums ul,
  #contents .side ul,
  #menuList .inner {
    /* height: 56px; */
    /* position: relative; */
  }

  #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);
  }




  .master_logo_area {
    display: none;
  }

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

  #contents .con_title h2 .jp {
    font-size: 33rem;
    /* line-height: 60rem; */
  }

  .txt_lead {
    margin: 16rem 0 0;
    font-size: 14rem;
    line-height: 2.4;
  }

  .con_title .btn_area {
    /* position: absolute; */
    /* left: 0px; */
    /* top: 385px; */
    line-height: 1.5;
    margin: 18rem 0 0;
  }

  .con_title .btn {
    margin: 0 auto 13px;
  }

  .con_client {}

  .con_main {}

  .con_history {
    padding: 56px 20px 62px;
    background: url(../images/home2/bg_history_sp.svg) no-repeat center center;
    background-size: cover;
  }

  /* .con_history .con_h2 {
    font-size: 32rem;
  } */

  .integration {
    margin: 40px auto 60px;
  }

  .integration * {
    max-width: 100%;
  }

  .integration_ad {}

  .integration_before {}

  .integration_arrow {
    /* transform: rotate(90deg); */
    /* margin-right: -31px; */
    margin: 10px -20px 10px 0;
  }

  .integration_after {
    width: 309px;
  }

  .integration_mc {}

  .history_desc {
    font-size: 16px;
  }

  .con_comm {
    padding: 64px 20px;
  }

  /* .con_comm .con_h2 {
    font-size: 30rem;
  } */

  .comm_knowledge_wrap {
    margin: 40px auto 0;
  }

  .comm_knowledge {
    width: 100%;
  }

  .comm_knowledge:nth-of-type(1) {
    margin-bottom: 80px;
  }

  .comm_knowledge .comm_h3 {
    font-size: 24rem;
    margin: 0 auto 0;
  }

  .comm_img {
    margin: 0 auto;
  }

  .comm_desc {
    font-size: 16px;
  }

  .platform_img {
    margin: 50px auto;
  }

  .platform_desc {
    font-size: 16px;
  }

  .con_product {
    padding: 66px 20px 70px;
  }

  .con_product .con_h2 {
    font-size: 30rem;
  }

  .con_product .con_h2_notes {
    font-size: 16px;
  }

  .product_wrap {}

  .product_subbrand {
    padding: 40px 10px;
  }

  .product_subbrand:nth-of-type(1) {
    margin: 0 0 20px;
  }

  .product {}

  .product_ad {}

  .product_logo {
    margin: 0 0 30px;
  }

  .product_desc {
    font-size: 16px;
    margin: 0 auto 46px;
  }

  .subbrand_wrap {}

  .subbrand_wrap .subbrand {
    min-height: auto;
  }

  .subbrand {
    flex-direction: column;
    align-items: center;
  }

  .product_subbrand:nth-of-type(1) .subbrand {
    margin: 0 auto 60px;
  }

  .subbrand_img {
    margin: 0 auto 25rem;
  }

  .subbrand_body {
    margin: 0;
    text-align: center;
  }

  .subbrand_title {
    text-align: center;
  }

  .subbrand_desc {
    min-height: 0;
    text-align: left;
  }

  body a.subbrand_btn {
    margin: 0 auto;
    width: 160px;
    display: block;
    text-align: center;
  }

  .product_mc {}

  .subbrand_servicedby {
    text-align: center;
    display: block;
  }

  #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;
}


/*
ここから追加
*/
h4 {
  font-size: 18px;
}

html #geniee_lumora #contents .con_title {
  height: 580px;
  background: radial-gradient(104.59% 301.36% at 0.71% 1.73%, #245881 0%, #18407F 32%, #081F5E 100%);
  position: relative;
  margin-bottom: 0;
}

html #geniee_lumora #contents .con_title .inner {
  display: flex;
  /* column-gap: 40px; */
  column-gap: 7px;
  align-items: center;
  padding: 17px 25px 18px 0;
}

section.blue_back {
  background: linear-gradient(176.39deg, #005793 4.06%, #0F4086 46.85%, #001F5E 137.79%);
}

section.gray_back {
  background: radial-gradient(123.14% 134.36% at 19.48% 1.92%, #E4EBFF 0%, #93A1B8 100%);
}

section.con_lumora {
  position: relative;
}

section.con_lumora:first-of-type {
  padding: 80px 0 170px;
}

section.con_lumora:not(:first-of-type) {
  padding: 120px 0 175px;
  clip-path: polygon(0 0,
      calc(50% - 150px) 0,
      50% +55px,
      calc(50% + 150px) 0,
      100% 0,
      100% 100%,
      0 100%);
  margin-top: -55px;
}

@supports not (clip-path: polygon(0 0, 50% 0, 100% 0, 100% 100%, 0 100%)) {
  section.con_lumora:not(:first-of-type)::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 55px;
    background: inherit;
    clip-path: polygon(0 100%, 50% 0, 100% 100%);
  }
}

section.con_lumora .con_main {
  margin: 0 auto;
  max-width: 1100px;
  height: 100%;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

/* H2系 */
section.con_lumora .con_main .con_header h2.con_h2 {
  font-weight: 700;
  font-size: 40px;
  line-height: 48px;
  position: relative;
  z-index: 2;
  display: inline-block;
}

section.con_lumora .con_main .con_header h2.small {
  font-size: 38px;
}

section.con_lumora .con_main .con_header h2.con_h2 span.large {
  font-size: 60px;
  line-height: 72px;
}

section.con_lumora .con_main .con_header h2.con_h2 span.sub {
  font-size: 80%;
  line-height: 24px;
}

section.con_lumora.gray_back .con_main .con_header h2.con_h2 {
  color: #002060;
}

section.con_lumora.introduction .con_main .con_header h2.con_h2 span.point {
  font-size: 70px;
}

section.con_lumora.introduction .con_main .con_header h2.con_h2::before {
  content: "";
  position: absolute;
  height: 10px;
  width: 900px;
  background: #fff;
  left: 0;
  top: 50px;
  z-index: -1;
}

section.con_lumora.blue_back .con_main .con_header h2.con_h2 {
  color: #fff;
}

.con_h2desc {
  margin-top: 40px;
  font-size: 20px;
  font-weight: 700;
  line-height: 36px;
}

section.con_lumora.gray_back .con_main .con_header .con_h2desc {
  color: #002060;
}

section.con_lumora.blue_back .con_main .con_header .con_h2desc {
  color: #fff;
}

.con_h2desc span.sub {
  font-size: 80%;
  line-height: 36px;
}

section.con_lumora .con_main .con_header img.logo {
  margin-top: 20px;
  width: 440px;
}

/* H2系 */


/*con_desc*/
section.con_lumora .con_main .con_desc {
  position: relative;
  margin-top: 40px;
  display: flex;
  flex-direction: column;
  gap: 40px;
}

section.con_lumora .con_main .con_desc p {
  color: #fff;
  font-size: 20px;
  line-height: 36px;
}

section.con_lumora .con_main .con_desc p.bold {
  font-weight: 700;
  font-size: 25px;
  line-height: 40px;
}

section.con_lumora .con_main .con_desc p span.sub {
  font-size: 80%;
}

section.con_lumora .con_main .con_desc .con_desc_img {
  position: absolute;
  top: -155px;
  right: -128px;
  width: 766.58px;
  height: 526px;
}

section.con_lumora .con_main .con_desc .con_desc_img img {
  width: 100%;
}

.con_strong_points{
  display: flex;
  gap: 47.5px;
  margin-top: 60px;
  justify-content: center;
}
.con_media_format {
  display: flex;
  gap: 47.5px;
  justify-content: center;
}

.con_strong_points .con_radius_flame {
  width: 335px;
  height: 468px;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: center;
  padding-left: 18px;
  padding-right: 17px;
}

.con_strong_points .con_radius_flame:nth-of-type(2) {
  padding-left: 17.5px;
  padding-right: 17.5px;
}

.con_strong_points .con_radius_flame:first-of-type {
  padding-bottom: 32.58px;
}

.con_strong_points .con_radius_flame:not(:first-of-type) {
  padding-bottom: 29.58px;
}

.con_strong_points .con_radius_flame .number_icon {
  position: absolute;
  width: 100px;
  top: -37px;
  left: 50%;
  transform: translateX(-50%);
}

.con_strong_points .con_radius_flame:first-of-type .con_point_img {
  margin-bottom: 33px;
}

.con_strong_points .con_radius_flame:nth-of-type(2) .con_point_img {
  margin-bottom: 12px;
}

.con_strong_points .con_radius_flame:last-of-type .con_point_img {
  margin-bottom: 34px;
}

.con_strong_points .con_radius_flame img.point1 {
  width: 224.26px;
}

.con_strong_points .con_radius_flame img.point2 {
  width: 222.38px;
}

.con_strong_points .con_radius_flame img.point3 {
  width: 166.22px;
}

.con_strong_points .con_radius_flame .con_point_desc {
  display: flex;
  flex-direction: column;
  gap: 23px;
}

.con_strong_points .con_radius_flame:first-of-type .con_point_desc {
  gap: 20px;
}

.con_strong_points .con_radius_flame .con_point_desc h3 {
  font-size: 26px;
  line-height: 36px;
  text-align: center;
  padding: 0;
}

.con_strong_points .con_radius_flame .con_point_desc p {
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
  color: #4b4b4b;
}

.con_media_format .con_radius_flame {
  width: 335px;
  height: 370px;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  padding-left: 18px;
  padding-right: 17px;
}

.con_media_format .con_media_img {
  margin-top: 49px;
}

.con_media_format .con_radius_flame:first-of-type .con_media_img {
  width: 236px;
  margin-bottom: 25px;
}

.con_media_format .con_radius_flame:nth-of-type(2) .con_media_img {
  width: 136px;
  margin-bottom: 23.14px;
}

.con_media_format .con_radius_flame:last-of-type .con_media_img {
  width: 116px;
  margin-bottom: 22.5px;
}

.con_media_format .con_radius_flame .con_media_desc p {
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
  color: #4b4b4b;
}

.brand_safety {
  display: flex;
  gap: 50px;
  padding: 20px 90px 0;
  align-items: flex-end;
}

.brand_safety_header {
  color: #002060;
  margin-bottom: 11px;
}

.brand_safety_header h3 {
  font-size: 24px;
  padding: 0;
  margin: 0;
}

.brand_safety_header h3 span.sub {
  font-size: 20px;
}

.brand_safety_header .h3desc {
  font-size: 16px;
}

.brand_safety_logo {
  display: flex;
  gap: 30px;
}

.brand_safety_logo img {
  height: 80px;
}

.con_radius_flame {
  border-radius: 40px;
}

.con_radius_flame.bg_white {
  background: #fff;
}

.con_radius_flame.bg_dark_blue {
  background: #002060;
}

.con_radius_flame.bg_soft_blue {
  background: #E4EBFF;
}

.con_radius_flame h3 {
  font-size: 36px;
  line-height: 50px;
  text-align: center;
  font-weight: 900;
}

.con_radius_flame.bg_dark_blue {
  color: #fff;
}

.con_radius_flame h3.light_blue {
  border-radius: 40px 40px 0 0;
  background: #00ffff;
  color: #002060;
  padding: 15px 0;
}

.con_radius_flame_header {
  margin-top: 42px;
  margin-bottom: 30px;
}

.con_h3desc {
  text-align: center;
  font-size: 16px;
  line-height: 24px;
  margin-top: 23px;
}

.con_graphs_area {
  display: flex;
  gap: 60px;
  margin: 0 90px 42px;
}

.con_graph {
  width: 430px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
}

.con_graph h4 {
  background: #00ffff;
  color: #002060;
  text-align: center;
  width: 400px;
}

.h4radius {
  border-radius: 15px;
  padding: 2px 0;
}


.con_graph .con_h4desc {
  font-size: 16px;
  text-align: center;
  line-height: 24px;
}

@media screen and (max-width: 767px) {
  .con_graph .con_h4desc {
    font-size: 16px;
    text-align: center;
    line-height: 24px;
    width: 80%;
  }
}

img.graph_img_small {
  width: 250px;
}

.con_graph .graph_desc {
  text-align: center;
  font-size: 16px;
  line-height: 24px;
}

.con_graph .annotation {
  width: 100%;
  text-align: right;
  font-size: 13px;
}

.con_flame_box_wrapper {
  border-radius: 0 0 40px 40px;
  padding: 40px 0;
  justify-content: center;
  display: flex;
  align-items: flex-end;
  gap: 25px;
}

.con_flame_box {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  width: 100%;
}

.con_flame_box:first-of-type {
  margin-left: 48px;
}

.con_flame_box:last-of-type {
  margin-right: 52px;
}

.con_flame_box img.point1 {
  width: 128px;
  margin-bottom: 28px;
}

.con_flame_box img.point2 {
  width: 210.59px;
  margin-bottom: 40px;
}

.con_flame_box img.point3 {
  width: 158px;
  margin-bottom: 30px;
}

.con_flame_box .con_flame_box_desc {
  color: #4b4b4b;
}

.con_flame_box .con_flame_box_desc h4 {
  font-size: 20px;
  line-height: 24px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 23px;

}

.con_flame_box .con_flame_box_desc p {
  font-size: 16px;
  line-height: 24px;
  font-weight: 500;
}

.separator {
  width: 3px;
  height: 313px;
  background: #2a579a;
}

.costs {
  position: relative;
}

.medal {
  position: absolute;
  width: 150px;
  left: 80px;
  top: 31px;
}


.cost_cut_merit {
  display: flex;
}

.cost_cut_merit {
  padding: 0 63px 31px 80px;
  gap: 125px;
}

.man_hours {
  padding: 28px 0 58px;
}

.cost_cut_merit .cost_cut_merit_text {
  margin-top: 144px;
  font-size: 20px;
  line-height: 40px;
  font-weight: 700;
}

.cost_cut_comparison {
  display: flex;
  flex-direction: column;
  gap: 29px;
}

.cost_cut_comparison h4 {
  margin-top: 27px;
  background: #2a579a;
  font-size: 16px;
  width: 300px;
  text-align: center;
  margin-left: 92px;
}

.cost_cut_comparison .cost_img {
  width: 449px;
}

.cost_img .annotation {
  font-size: 10px;
  line-height: 12px;
  text-align: right;
}

.man_hours .con_h2desc {
  margin-top: initial;
  margin-right: 175px;
  margin-left: 237px;
  line-height: 40px;
  text-align: center;
}

.man_hours_comparison {
  display: flex;
  gap: 43.83px;
  margin: 67px 90px 0;
}

.man_hours_comparison h4 {
  width: 360px;
  text-align: center;
  font-size: 18px;
}

.man_hours_comparison p.h4desc {
  text-align: center;
  margin: 15px 0 40px;
  font-size: 16px;
}

.man_hours_comparison .normal,
.man_hours_comparison .lumora {
  display: flex;
  align-items: center;
  flex-direction: column;
  width: 400px;
}

.man_hours_comparison .normal h4 {
  background: #888;
}

.man_hours_comparison .lumora h4 {
  background: #0ff;
  color: #002060;
}

.man_hours_comparison .lumora h4 .sub {
  font-size: 10px;
}

.man_hours_comparison .normal img {
  width: 264px;
  height: auto;
}

.man_hours_comparison .lumora img {
  width: 394px;
  height: auto;
}

.man_hours_comparison .arrow {
  clip-path: polygon(0 0, 0 100%, 100% 50%);
  width: 38px;
  height: 90px;
  background: #0ff;
  margin: auto;
}

.incremental_reach {
  gap: 107px;
  padding: 0 120px;
  display: flex;
}

.reach_text,
.reach_graph {
  display: flex;
  flex-direction: column;
}

.reach_text {
  margin: 77px 0;
  gap: 30px;
}

.reach_graph {
  gap: 15px;
  margin: 40px 0;
  align-items: center;
}

.reach_text h3 {
  color: #002060;
  text-align: left;
  font-size: 32px;
  line-height: 46px;
}

.reach_text p {
  font-size: 16px;
  color: #4b4b4b;
  font-weight: 700;
  line-height: 32px;
}

.reach_graph h4 {
  background: #0ff;
  width: 300px;
  text-align: center;
}

.reach_graph img {
  width: 338px;
}

.reach_graph p {
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 24px;
  text-align: center;
}

.frequency {
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 40px 90px;
  align-items: center;
}

.frequency_header h3,
.distribution_header h3 {
  color: #002060;
  font-size: 32px;
  line-height: 38.4px;
}

.frequency_header p,
.distribution_header p {
  margin-top: 20px;
  text-align: center;
  color: #484848;
  font-weight: 700;
  font-size:16px;
}

.frequency_graphs {
  display: flex;
  gap: 60px;
}

.frequency_graph {
  width: 430px;
}

.frequency_graph h4 {
  background: #0ff;
  text-align: center;
  margin-bottom: 15px;
  font-size: 18px;
}

.frequency_graph h4 .sub {
  font-size: 12px;
}

.distribution {
  padding: 40px 111.05px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.distribution h4 {
  background: #0ff;
  width: 446.29px;
  text-align: center;
  margin-bottom: 20px;
}

.distribution_header {
  margin-bottom: 33.25px;
}

.distribution .con_radius_flame {
  width: 890px;
  display: flex;
  padding: 19px 97.62px 20px 62.86px;
  gap: 30px;
  align-items: center;
  justify-content: center;
  border-radius: 20px;
  margin-bottom: 4px;
}

.distribution_box {
  gap: 10px;
  display: flex;
}

.distribution_box .distribution_label {
  width: 80px;
  font-weight: 700;
  font-size: 18px;
  line-height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.distribution_box .dooh {
  background: #0ff;
  color: #002060;
}

.distribution_box .ctv {
  background: #0ad159;
  color: #002060;
}

.distribution_box .total {
  background: #002060;
  color: #fff;
}

.distribution_box .total_reach {
  font-weight: 700;
}

.distribution_box .total_reach .label {
  font-size: 14px;
  line-height: 16.8px;
  color: #4b4b4b;
}

.distribution_box .total_reach .value {
  font-size: 18px;
  line-height: 24px;
  color: #002060;
}

.distribution .arrow {
  width: 150px;
  height: 30px;
  background: #E4EBFF;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  margin-bottom: 20px;
}

.faq .con_h2desc {
  margin: 60px 0 20px;

}

.faq .faq_lists {
  display: flex;
  gap: 40px;
  flex-direction: column;
}

.faq .con_radius_flame {
  padding: 20px 30px;
}

.faq .faq_lists .con_radius_flame {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.faq .con_radius_flame .question,
.faq .con_radius_flame .answer {
  font-weight: 700;
  font-size: 20px;
  display: flex;
  align-items: center;
  gap: 12px;
}

.faq .con_radius_flame .question {
  color: #4b4b4b;
}

.faq .con_radius_flame .answer {
  color: #002060;
}

.faq .con_radius_flame .question_label,.faq .con_radius_flame .answer_label {
  font-size: 40px;
  line-height: 48px;
}

.faq .con_radius_flame .answer .answer_label {
  margin-left: 50px;
}

.faq .con_radius_flame .answer span.sub {
  font-size: 80%;
}

.faq .separator {
  width: 100%;
  height: 1px;
  background: #cfcfcf;
}

/* form_link */
.form_link {
  margin: 0 auto;
}

.form_btn {
  justify-content: center;
  width: 500px;
  font-size: 20px;
  line-height: 30px;
  font-weight: 600;
  border: 1px solid #fff;
}

.white_btn {
  background: #fff;
  color: #002060;

}

.white_btn svg {
  fill: #002060;
  transition: all .2s;
}

body a.white_btn:hover {
  background: #002060;
  color: #fff;
}

.white_btn:hover svg {
  fill: #fff;
}

.blue_btn {
  background: #2A579A;
  color: #fff;
}

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

body a.blue_btn:hover {
  background: #fff;
  color: #2A579A;
}

.blue_btn:hover svg {
  fill: #2A579A;
}

/*SP*/
@media screen and (max-width:767px) {

  section.con_lumora:first-of-type {
    padding: calc((40 / 390) * 100vw) 0 calc((135 / 390) * 100vw);
  }

  section.con_lumora:not(:first-of-type) {
    padding: 120px 0 175px;
    clip-path: polygon(0 0,
        calc(50% - calc((150 / 390) * 100vw)) 0,
        50% + calc((55 / 390) * 100vw),
        calc(50% + calc((150 / 390) * 100vw)) 0,
        100% 0,
        100% 100%,
        0 100%);
    margin-top: calc((-55 / 390) * 100vw);
  }

  section.con_lumora:not(:first-of-type) {
    padding: calc((120 / 390) * 100vw) 0 calc((135 / 390) * 100vw);
    margin-top: calc((-65 / 390) * 100vw);
  }

  html #geniee_lumora #contents .con_title {
    background: radial-gradient(104.59% 301.36% at 0.71% 1.73%, #245881 0%, #18407F 32%, #081F5E 100%);
    position: relative;
    margin-bottom: 0;
    /* height: calc((800 / 390) * 100vw); */
    height: calc((830 / 390) * 100vw);
  }

  html.lower #contents .con_title h2 .jp {
    font-size: calc((36 / 390) * 100vw);
    line-height: calc((50 / 390) * 100vw);
  }

  html #geniee_lumora #contents .con_title .inner {
    display: block;
    height: calc((800 / 390) * 100vw);
    padding: 0;
    margin-left: calc((10/ 390) * 100vw);
  }

  html #geniee_lumora #contents .con_title .btn_area {
    margin-top: calc((266 / 390) * 100vw);
    gap:calc((20 / 390)* 100vw);
    width: 100%;
    position: relative;
    z-index: 1;
    flex-direction: column;

  }

  .con_title .btn {
    width: calc((260 / 390) * 100vw);
    height: calc((50 / 390) * 100vw);
    border-radius: max(4px, calc(4 / 390) * 100vw);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: max(16px, calc(16 / 390) * 100vw);
    font-weight: 600;
  }

  html #geniee_lumora #contents .con_title .inner .con_title_left h2 {
    font-size: calc((36 / 390) * 100vw);
    line-height: calc((50 / 390) * 100vw);
  }

  html #geniee_lumora #contents .con_title .inner .con_title_left .txt_lead {
    font-size: calc((20 / 390) * 100vw);
    line-height: calc((30 / 390) * 100vw);
  }

  html #geniee_lumora #contents .con_title .inner .con_title_right {
    position: absolute;
    /* bottom: calc((87 / 390) * 100vw); */
    bottom: calc((95 / 390) * 100vw);
    /* width: calc((306 / 390) * 100vw); */
    width: calc((380 / 390) * 100vw);
    height: auto;
    max-height: 100%;
    right: 0;
    z-index: 0;
  }

  html #geniee_lumora #contents .con_title .inner .con_title_right img {
    width: 100%;
    height: 100%;
  }

  section.con_lumora .con_main {
    margin: 0 calc((10 / 390) * 100vw);
    width: calc((370 / 390)* 100vw);
    gap: calc((40 / 390) * 100vw);
    max-width: 100%;
    /* overflow: hidden; */
  }

  section.con_lumora.optimum .con_main {
    overflow: visible;
  }

  section.con_lumora.optimum .con_main .con_header h2.con_h2 {
    font-size: calc((36/390) *100vw);
    line-height: calc((52 / 390) * 100vw);
  }

  section.con_lumora.introduction .con_main .con_header h2.con_h2 {
    line-height: calc((62 / 390) * 100vw);
    font-size: calc((36 / 390) * 100vw);
  }

  section.con_lumora.introduction .con_main .con_header h2.con_h2 span.under_line {
    position: relative;
  }

  section.con_lumora.introduction .con_main .con_header h2.con_h2 span.under_line::after {
    content: "";
    position: absolute;
    height: 10px;
    background-color: #fff;
    bottom: 0;
    width: 100%;
    left: 0;
    z-index: -1;
  }

  section.con_lumora.introduction .con_main .con_header h2.con_h2::before {
    display: none;
  }

  section.con_lumora.gray_back .con_main .con_header .con_h2desc {
    margin-bottom: 0;
  }

  section.con_lumora .con_main .con_header h2.con_h2 {
    font-size: calc((40/390) *100vw);
    line-height: calc((48 / 390) * 100vw);
  }

  section.con_lumora .con_main .con_header h2.con_h2 span.large {
    font-size: calc((60 / 390) * 100vw);
    line-height: calc((72 / 390) * 100vw);
  }

  section.con_lumora .con_main .con_header h2.con_h2 span.sub {
    font-size: calc((20 / 390) * 100vw);
    line-height: calc((24 / 390) * 100vw);
  }

  .con_h2desc {
    /* margin: calc((40 / 390) * 100vw) 0; */
    font-size: calc((20 / 390) * 100vw);
    line-height: calc((36 / 390) * 100vw);
  }

  .con_h2desc span.sub {
    font-size: max(12px, calc((12 / 390) * 100vw));
  }

  .con_radius_flame {
    border-radius: calc((40 / 390) * 100vw);
  }

  .con_radius_flame h3 {
    font-size: calc((30 / 390) * 100vw);
    line-height: calc((38 / 390) * 100vw);
  }

  .con_radius_flame h3.light_blue {
    border-radius: calc((40 / 390) * 100vw) calc((40 / 390) * 100vw) 0 0;
  }

  .con_flame_box_wrapper {
    flex-direction: column;
    align-items: center;
    gap: calc((25 / 390) * 100vw);
    padding: calc((40 / 390) * 100vw) calc((17 / 390) * 100vw) calc((82 / 390) * 100vw);

  }

  .con_flame_box_desc {
    margin: 0 calc((18.18 / 390) * 100vw);
  }

  .con_flame_box:first-of-type,
  .con_flame_box:last-of-type {
    margin: 0;
  }

  .con_flame_box img.point1 {
    width: calc((128 / 390) * 100vw);
    margin-bottom: calc((28 / 390) * 100vw);
  }

  .con_flame_box img.point2 {
    width: calc((211 / 390) * 100vw);
    margin-bottom: calc((40 / 390) * 100vw);
  }

  .con_flame_box img.point3 {
    width: calc((158 / 390) * 100vw);
    margin-bottom: calc((30 / 390) * 100vw);
  }

  .con_flame_box .con_flame_box_desc h4 {
    font-size: calc((20 / 390) * 100vw);
    line-height: calc((24 / 390) * 100vw);
    margin-bottom: calc((23 / 390) * 100vw);

  }

  .con_flame_box .con_flame_box_desc p {
    font-size: max(16px ,calc((16 / 390) * 100vw));
    line-height: calc((24 / 390) * 100vw);
  }

  .separator {
    width: calc((313 / 390) * 100vw);
    height: calc((1 / 390) * 100vw);
  }

  section.con_lumora .con_main .con_header img.logo {
    margin-top: calc((25.85 / 390) * 100vw);
    width: calc((300 / 390) * 100vw);
  }


  section.con_lumora .con_main .con_desc {
    margin-top: calc((20 / 390) * 100vw);
    gap: calc((40 / 390) * 100vw);
  }

  section.con_lumora .con_main .con_desc p {
    font-size: calc((20 / 390) * 100vw);
    line-height: calc((36 / 390) * 100vw);
  }

  section.con_lumora .con_main .con_desc p.bold {
    font-size: calc((25 / 390) * 100vw);
    line-height: calc((40 / 390) * 100vw);
  }

  section.con_lumora .con_main .con_desc p span.sub {
    font-size: max(12px, calc((14 / 390) * 100vw));
  }

  section.con_lumora .con_main .con_desc .con_desc_img {
    position: initial;
    width: 100vw;
    height: auto;
    margin-left: calc((-10 / 390) * 100vw);
  }

  section.con_lumora .con_main .con_desc .con_desc_img img {
    width: 100vw;
  }

  .con_strong_points {
    flex-direction: column;
    gap: calc((70 / 390) * 100vw);
    margin-top: 30px;
  }

  .con_strong_points .con_radius_flame {
    width: 100%;
    /* height: calc((468 / 390) * 100vw); */
    height: calc((510 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame .number_icon {
    width: calc((106 / 390) * 100vw);
    top: calc((-37 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame:first-of-type {
    padding-bottom: calc((52.17 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame:not(:first-of-type) {
    padding-bottom: calc((49.41 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame:last-of-type {
    padding-bottom: calc((59.41 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame:first-of-type .con_point_img {
    margin-bottom: calc((31.87 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame:nth-of-type(2) .con_point_img {
    margin-bottom: calc((18.77 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame:last-of-type .con_point_img {
    margin-bottom: calc((30.59 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame img.point1 {
    width: calc((249.91 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame img.point2 {
    width: calc((222.38 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame img.point3 {
    width: calc((173 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame .con_point_desc {
    gap: calc((23 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame .con_point_desc h3 {
    font-size: calc((26 / 390) * 100vw);
    line-height: calc((36 / 390) * 100vw);
  }

  .con_strong_points .con_radius_flame .con_point_desc p {
    font-size: max(16px, calc((16 / 390) * 100vw));
    line-height: calc((24 / 390) * 100vw);
    /* width: 88%; */
    width: 93%;
    margin-left: auto;
    margin-right: auto;
  }

  section.analysis .con_radius_flame.bg_dark_blue {
    padding: 0 calc((10 /390) * 100vw);
  }

  .con_radius_flame_header {
    margin-top: calc((40 / 390) * 100vw);
    margin-bottom: calc((23/ 390) * 100vw);
  }

  .con_h3desc {
    text-align: left;
    font-size: max(16px, calc((16 / 390) * 100vw));
    line-height: calc((24 / 390) * 100vw);
  }

  .con_graphs_area {
    margin: 0;
    flex-direction: column;
    gap: calc((40 / 390) * 100vw);
    padding-bottom: calc((30 / 390) * 100vw);
  }

  .con_graph {
    width: calc((350 / 390) * 100vw);
    gap: calc((15 / 390) * 100vw);
  }

  .con_graph h4 {
    width: calc((300 / 390) * 100vw);
  }

  .con_graph img.graph_img_small {
    width: calc((250 / 390) * 100vw);
  }

  .con_graph .graph_desc {
    font-size: max(16px, calc((16 / 390) * 100vw));
  }

  .con_graph .annotation {
    font-size: max(13px, calc((13 / 390) * 100vw));
  }

  .con_media_format {
    gap: calc((48 / 390) * 100vw);
    flex-direction: column;
  }

  .con_media_format .con_radius_flame {
    width: 100%;
    height: calc((404 / 390) * 100vw);
    padding: 0 calc((34 / 390) * 100vw) 0 calc((36 / 390) * 100vw);
  }

  .con_media_format .con_radius_flame:first-of-type .con_media_img {
    width: calc((239.5 / 390) * 100vw);
    margin-bottom: calc((40 / 390) * 100vw);
  }

  .con_media_format .con_radius_flame:nth-last-of-type(2) .con_media_img {
    width: calc((136 / 390) * 100vw);
    margin-bottom: calc((40 / 390) * 100vw);
  }

  .con_media_format .con_radius_flame:last-of-type .con_media_img {
    width: calc((116.5 / 390) * 100vw);
    margin-bottom: calc((40 / 390) * 100vw);
  }

  .con_media_format .con_radius_flame {
    padding: calc((50 / 390) * 100vw);
  }

  .con_media_format .con_media_img {
    margin-top: 0;
  }

  .con_media_format .con_radius_flame .con_media_desc p {
    font-size: max(16px, calc((16 / 390) * 100vw));
    line-height: calc((24 / 390) * 100vw);
    width: 300px;
    margin-left: auto;
    margin-right: auto;
  }

  @media screen and (max-width: 350px) {
    .con_media_format .con_radius_flame .con_media_desc p {
      font-size: max(16px, calc((16 / 390) * 100vw));
      line-height: calc((24 / 390) * 100vw);
      width: 260px;
      margin-left: auto;
      margin-right: auto;
    }
  }

  .brand_safety {
    flex-direction: column;
    gap: calc((30 / 390) * 100vw);
    padding: initial;
    justify-content: center;
    align-items: center;
  }

  .brand_safety_header h3 {
    text-align: center;
    font-size: calc((24 / 390) * 100vw);
    line-height: calc((30 / 390) * 100vw);
  }

  .brand_safety_header h3 span.sub {
    font-size: max(18px,calc((18 / 390) * 100vw));
  }

  .brand_safety_header .h3desc {
    text-align: left;
    font-size: max(16px , calc((16 / 390) * 100vw));
  }

  .brand_safety_logo {
    gap: calc((30 / 390) * 100vw);
  }

  .brand_safety_logo img {
    height: calc((80 / 390) * 100vw);
  }

  .medal {
    position: absolute;
    width: calc((90 / 390) * 100vw);
    left: calc((10 / 390) * 100vw);
    top: calc((30 / 390) * 100vw);
  }

  section.merit .con_radius_flame h3 {
    font-size: calc((24 / 390) * 100vw);
    line-height: calc((36 / 390) * 100vw);
  }

  .cost_cut_merit,
  .man_hours {
    display: flex;
    flex-direction: column;

    padding: calc((62 / 390) * 100vw) calc((10 /390) * 100vw);
  }

  .cost_cut_merit {
    gap: calc((63 / 390) * 100vw);
  }

  .man_hours {
    gap: calc((38 / 390) * 100vw);
  }

  .cost_cut_merit .cost_cut_merit_text {
    margin-top: 0;
  }

  .cost_cut_comparison {
    align-items: center;
    gap: calc((27 / 390) * 100vw);
  }

  .cost_cut_comparison h4 {
    margin: 0;
    width: calc((300 / 390) * 100vw);
  }

  .cost_cut_comparison .cost_img {
    width: 100%;
  }

  .cost_img .annotation {
    font-size: max(10px, calc((10 / 390) * 100vw));
  }

  .man_hours .con_h2desc {
    margin: 0;
    text-align: left;
    line-height: initial;
  }

  .man_hours .con_h2desc p,
  .cost_cut_merit .cost_cut_merit_text {
    font-size: max(18px,calc((18 / 390) * 100vw));
    line-height: calc((36 / 390) * 100vw);
  }

  .man_hours_comparison {
    flex-direction: column;
    margin: 0;
    gap: calc((40 / 390) * 100vw);
    align-items: center;
  }

  .man_hours_comparison .normal,
  .man_hours_comparison .lumora {
    width: 100%;
  }

  .man_hours_comparison .arrow {
    clip-path: polygon(0 0, 100% 0, 50% 100%);
    width: calc((89.87 / 390) * 100vw);
    height: calc((38.13 / 390) * 100vw);
    background: #0ff;
    margin: auto;
  }

  .man_hours_comparison h4 {
    width: calc((360 / 390) * 100vw);
    text-align: center;
    font-size: max(18px,calc((18 / 390) * 100vw));
  }

  .man_hours_comparison .lumora h4 .sub {
    font-size: max(10px, calc((10 / 390) * 100vw));
  }

  .man_hours_comparison p.h4desc {
    text-align: center;
    margin: calc((15 / 390) * 100vw) 0 calc((40 /390) * 100vw);
    font-size: max(16px, calc(16 / 390) * 100vw);
  }

  .man_hours_comparison .normal img {
    width: calc((265 / 390) * 100vw);
    height: auto;
  }

  .man_hours_comparison .lumora img {
    width: calc((394.11 / 390) * 100vw);
    height: auto;
  }

  .incremental_reach {
    flex-direction: column;
    padding: calc((40 / 390) * 100vw) calc((10/ 390) * 100vw) calc((52 / 390) * 100vw);
    gap: calc((40 / 390) * 100vw);
  }

  .reach_text {
    margin: 0;
    gap: calc((30 / 390) * 100vw);
  }

  .reach_text h3 {
    text-align: center;
  }

  .reach_text h3,
  .frequency_header h3,
  .distribution h3 {
    font-size: calc((28 /390) * 100vw);
  }

  .reach_graph {
    margin: 0;
    gap: calc((17 / 390) * 100vw);
  }

  .reach_graph h4 {
    width: calc((300 / 390) * 100vw);
    font-size: max(18px, calc(18 / 390) * 100vw);
  }

  .h4radius {
    border-radius: calc((20 / 390) *100vw);
  }

  .reach_graph img {
    width: calc((338.5 / 390)* 100vw);
  }
  
  .reach_text p,
  .reach_graph p {
    font-size: max(15px, calc((15 / 390)* 100vw));
    line-height: calc((34 / 390) * 100vw);
  }

  .frequency {
    gap: calc((20 / 390) * 100vw);
    padding: calc((40 / 390) * 100vw) calc((10 / 390) * 100vw) calc((44.95 / 390) * 100vw);
    align-items: center;
  }

  .frequency_header p,
  .distribution_header p {
    font-size: max(16px, calc(16 / 390) * 100vw);
    line-height: calc((24/ 390) * 100vw);
    font-weight: 700;
  }

  .frequency_graphs {
    flex-direction: column;
    gap: calc((60 / 390) * 100vw);
  }

  .frequency_graph {
    width: 100%;
  }

  .frequency_graph h4 {
    font-size: max(18px,calc((18 / 390) * 100vw));
    line-height: calc((14 / 390) * 100vw);
    padding: calc((8 / 390) * 100vw);
    margin-bottom: calc((15 / 390) * 100vw);
  }

  .frequency_graph h4 .sub {
    font-size: max(12px, calc((12 / 390) * 100vw));
  }

  .distribution {
    padding: calc((40 / 390) * 100vw) calc((10 / 390) * 100vw) calc((74 / 390) * 100vw);
  }

  .distribution h4 {
    width: calc((350 / 390) * 100vw);
    margin-bottom: calc((20 / 390) * 100vw);
  }

  .distribution .con_radius_flame {
    flex-direction: column;
    width: 100%;
    padding: calc((19.75 / 390) * 100vw) 0 calc((20 / 390) * 100vw) calc((18.25 /390) * 100vw);
    gap: calc((30 / 390) * 100vw);
    align-items: flex-start;
    border-radius: calc((20 / 390) * 100vw);
    margin-bottom: max(4px, calc((4 / 390) * 100vw));
  }

  .distribution_box {
    gap: calc((10 / 390) * 100vw);
  }

  .distribution_box .distribution_label {
    width: calc((80 / 390) * 100vw);
    font-size: max(18px,calc((18 / 390) * 100vw));
    line-height: calc((24 / 390) *100vw);
    padding: calc((8 / 390) * 100vw) 0;
  }

  .distribution_box .total_reach {
    display: flex;
    flex-direction: column;
    justify-content: center;
  }

  .distribution_box .total_reach .label {
    font-size: max(14px, calc((14 / 390) * 100vw));
    line-height: max(16.8, calc((16/ 390) * 100vw));
  }

  .distribution_box .total_reach .value {
    font-size: max(18px, calc((18 / 390) * 100vw));
  }

  section.con_lumora .con_main .con_header h2.con_h2.small {
    font-size: calc((38 / 390) * 100vw);
  }

  .faq .con_h2desc {
    margin: calc((60 / 390) * 100vw) 0 calc((20 / 390) * 100vw);
  }

  .faq .faq_lists {
    gap: calc((40 / 390) * 100vw);
  }

  .faq .faq_lists .con_radius_flame {
    padding: calc((20 / 390) * 100vw) calc((10 / 390) * 100vw);
    gap: calc((10 / 390) * 100vw);
  }

  .faq .con_radius_flame .question,
  .faq .con_radius_flame .answer {
    font-size: max(18px,calc((18 / 390) * 100vw));
    line-height: calc((26 / 390) * 100vw);
    gap: calc((10 / 390) * 100vw);
    align-items: center;
  }
  .faq .con_radius_flame .question .question_label,
  .faq .con_radius_flame .answer .answer_label{
    font-size: calc((30 / 390) * 100vw);
    line-height: calc((36 / 390) * 100vw);
  }
  .faq .con_radius_flame .answer .answer_label{
    margin-left:calc((50 / 390) * 100vw);
  }

  .faq .con_radius_flame .answer.top_filling {
    align-items: flex-start;
  }
  .faq .con_radius_flame .answer span.sub{
    font-size:calc((12 / 390) * 100vw);
    line-height: calc((26/ 390) * 100vw);
  }

  body a.form_btn {
    width: calc((370 / 390) * 100vw);
    font-size: max(20px, calc((20 / 390) * 100vw));
    line-height: calc((30 / 390) * 100vw);
    padding:calc((20 / 390) * 100vw) 0;
    border: calc((1 / 390) * 100vw ) solid #fff;
  }
  .form_btn svg{
    width:calc((20 / 390) * 100vw);
    height: calc((14.623 / 390) * 100vw);
  }
}

@media screen and (max-width: 350px) {
  section.con_lumora:not(:first-of-type) {
    margin-top: calc((-70 / 390) * 100vw);
  }
}

@media screen and (max-width: 375px) {
  .reach_text p,
  .reach_graph p {
    font-size: max(15px, calc((15 / 390)* 100vw));
    line-height: calc((34 / 390) * 100vw);
  }
  .con_graph .graph_desc {
    font-size: max(15px, calc((15 / 390) * 100vw));
  }
}



/*ここから中間*/
@media only screen and (min-width: 768px) and (max-width: 1292px) {

  html #geniee_lumora #contents .con_title {
    min-height: 524px;
    height:calc((580 / 1100) * 100vw);
    position: relative;
    overflow: hidden;

  }
  html #geniee_lumora #contents .con_title .inner{
    display: flex;
    flex-direction: column;
    gap: 0px;
    align-items: center;
  }
  html #geniee_lumora #contents .con_title .inner .con_title_left{
    position: relative;
    z-index: 2;
    align-self: flex-start;


  }
  html #geniee_lumora #contents .con_title .inner .con_title_right{
    position: absolute;
    top: 4%;
    left: 50%;
    width: 100%;
    z-index: 1;
  }

  html.lower #contents .con_title h2 .jp {
    font-size: calc((36 / 1100) * 100vw);
  }

  .txt_lead {
    text-align: left;
    line-height: calc((30 / 1100) * 100vw);
    font-size: max(15px, calc((16 / 1100) * 100vw));
  }

  .con_title_left {
    margin-left: calc((30 / 1100) * 100vw);
  }

  html #geniee_lumora #contents .con_title_right img {
    max-width: calc((526 / 1100) * 100vw);
    max-height: calc((432 / 1100) * 100vw);
  }
  section.con_lumora {
    overflow: hidden;
  }
  section.con_lumora .con_main {
    margin: 0 calc((30 / 1100) * 100vw);
    max-width: initial;
  }

  section.con_lumora .con_main .con_header h2.con_h2 {
    font-size: calc((40 / 1100) * 100vw);
    line-height: calc((48 / 1100) * 100vw);
  }

  section.con_lumora .con_main .con_header h2.small {
    font-size: calc((38 / 1100) * 100vw);
  }

  section.con_lumora .con_main .con_header h2.con_h2 span.large {
    font-size: calc((60 / 1100) * 100vw);
    line-height: calc((72 / 1100) * 100vw);
  }

  section.con_lumora .con_main .con_header h2.con_h2 span.sub {
    font-size: calc((20 / 1100) * 100vw);
    line-height: calc((24 / 1100) * 100vw);
  }


  section.con_lumora.gray_back .con_main .con_header h2.con_h2 span.point {
    font-size: calc((70 / 1100) * 100vw);
  }

  section.con_lumora.introduction .con_main .con_header h2.con_h2::before {
    width: calc((900 / 1100) * 100vw);
    top: calc((50 / 1100) * 100vw);
  }

  .con_h2desc {
    margin-top: calc((40 / 1100) * 100vw);
    font-size: calc((18 / 1100) * 100vw);
    line-height: calc((36 / 1100) * 100vw);
  }

  .con_h2desc span.sub {
    font-size: max(12px, calc((12 / 1100) * 100vw));
    ;
    line-height: calc((36 / 1100) * 100vw);
  }

  section.con_lumora .con_main .con_header img.logo {
    margin-top: calc((20 / 1100) * 100vw);
    width: calc((440 / 1100) * 100vw);
  }


  section.con_lumora .con_main .con_desc {
    margin-top: calc((40 / 1100) * 100vw);
    gap: calc((40 / 1100) * 100vw);
    /* overflow: hidden; */
  }

  section.con_lumora .con_main .con_desc p {
    font-size: max(16px, calc((20 / 1100) * 100vw));
    line-height: calc((36 / 1100) * 100vw);
  }

  section.con_lumora .con_main .con_desc p.bold {
    font-size: max(16px, calc((25 / 1100) * 100vw));
    line-height: calc((40 / 1100) * 100vw);
  }

  section.con_lumora .con_main .con_desc p span.sub {
    font-size: max(12px, calc((14 / 1100) * 100vw));
  }

  section.con_lumora .con_main .con_desc .con_desc_img {
    position: absolute;
    top: calc((-155 / 1100) * 100vw);
    right: calc((-158 / 1100) * 100vw);
    max-width: calc((766 / 1100) * 100vw);
    max-height: calc((526 / 1100) * 100vw);
  }

  .con_strong_points,
  .con_media_format {
    gap: calc((47.5 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame {
    width: calc((335 / 1100) * 100vw);
    height: calc((500 / 1100) * 100vw);
    padding-left: calc((18 / 1100) * 100vw);
    padding-right: calc((17 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame:nth-of-type(2) {
    padding-left: calc((17.5 / 1100) * 100vw);
    padding-right: calc((17.5 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame:first-of-type {
    padding-bottom: calc((33 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame:not(:first-of-type) {
    padding-bottom: calc((30 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame .number_icon {
    width: calc((100 / 1100) * 100vw);
    top: calc((-37 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame:first-of-type .con_point_img {
    margin-bottom: calc((33 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame:nth-of-type(2) .con_point_img {
    margin-bottom: calc((12 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame:last-of-type .con_point_img {
    margin-bottom: calc((34 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame img.point1 {
    width: calc((225 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame img.point2 {
    width: calc((222 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame img.point3 {
    width: calc((166 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame .con_point_desc {
    gap: calc((23 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame:first-of-type .con_point_desc {
    gap: calc((20 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame .con_point_desc h3 {
    font-size: calc((24 / 1100) * 100vw);
    line-height: calc((36 / 1100) * 100vw);
  }

  .con_strong_points .con_radius_flame .con_point_desc p {
    font-size: calc((15 / 1100) * 100vw);
    line-height: calc((24 / 1100) * 100vw);
  }

  .con_media_format .con_radius_flame {
    width: calc((335 / 1100) * 100vw);
    height: calc((370 / 1100) * 100vw);
    padding-left: calc((18 / 1100) * 100vw);
    padding-right: calc((17 / 1100) * 100vw);
  }

  .con_media_format .con_media_img {
    margin-top: calc((49 / 1100) * 100vw);
  }

  .con_media_format .con_radius_flame:first-of-type .con_media_img {
    width: calc((236 / 1100) * 100vw);
    margin-bottom: calc((25 / 1100) * 100vw);
  }

  .con_media_format .con_radius_flame:nth-of-type(2) .con_media_img {
    width: calc((136 / 1100) * 100vw);
    margin-bottom: calc((23.14 / 1100) * 100vw);
  }

  .con_media_format .con_radius_flame:last-of-type .con_media_img {
    width: calc((116 / 1100) * 100vw);
    margin-bottom: calc((22.5 / 1100) * 100vw);
  }

  .con_media_format .con_radius_flame .con_media_desc p {
    font-size: calc((15 / 1100) * 100vw);
    line-height: calc((24 / 1100) * 100vw);
  }

  .brand_safety {
    gap: calc((50 / 1100) * 100vw);
    padding-top: calc((20 / 1100) * 100vw);
    padding-left: calc((40 / 1100) * 100vw);
    padding-right: calc((40 / 1100) * 100vw);
  }

  .brand_safety_header {
    margin-bottom: calc((11 / 1100) * 100vw);
  }

  .brand_safety_header h3 {
    font-size: calc((24 / 1100) * 100vw);
  }

  .brand_safety_header h3 span.sub {
    font-size: calc((20 / 1100) * 100vw);
  }

  .brand_safety_header .h3desc {
    font-size: max(16px,calc((16 / 1100) * 100vw));
  }

  .brand_safety_logo {
    gap: calc((30 / 1100) * 100vw);
  }

  .brand_safety_logo img {
    height: calc((80 / 1100) * 100vw);
  }

  .con_radius_flame {
    border-radius: calc((40 / 1100) * 100vw);
  }


  .con_radius_flame h3 {
    font-size: calc((36 / 1100) * 100vw);
    line-height: calc((50 / 1100) * 100vw);
  }

  .con_radius_flame h3.light_blue {
    border-radius: calc((40 / 1100) * 100vw) calc((40 / 1100) * 100vw) 0 0;
    padding: calc((15 / 1100) * 100vw) 0;
  }

  .con_radius_flame_header {
    margin-top: calc((42 / 1100) * 100vw);
    margin-bottom: calc((30 / 1100) * 100vw);
  }

  .con_h3desc {
    font-size: max(16px,calc((16 / 1100) * 100vw));
    line-height: calc((24 / 1100) * 100vw);
    margin-top: calc((23 / 1100) * 100vw);
  }

  .con_graphs_area {
    gap: calc((60 / 1100) * 100vw);
    margin: 0 calc((90 / 1100) * 100vw) calc((42 / 1100) * 100vw);
  }

  .con_graph {
    width: calc((430 / 1100) * 100vw);
    gap: calc((15 / 1100) * 100vw);
  }

  .con_graph h4 {
    width: calc((400 / 1100) * 100vw);
  }

  .h4radius {
    border-radius: calc((15 / 1100) * 100vw);
    padding: calc((2 / 1100) * 100vw) 0;
  }


  .con_graph .con_h4desc {
    font-size: max(16px,calc((16 / 1100) * 100vw));
    line-height: calc((24 / 1100) * 100vw);
  }

  img.graph_img_small {
    width: calc((250 / 1100) * 100vw);
  }

  .con_graph .graph_desc {
    font-size: calc((15 / 1100) * 100vw);
    line-height: calc((24 / 1100) * 100vw);
  }

  .con_graph .annotation {
    /* font-size: max(16px,calc((16 / 1100) * 100vw)); */
    font-size: max(10px,calc((11 / 1100) * 100vw));

  }

  .con_flame_box_wrapper {
    border-radius: 0 0 calc((40 / 1100) * 100vw) calc((40 / 1100) * 100vw);
    padding: calc((40 / 1100) * 100vw) 0;
    gap: calc((25 / 1100) * 100vw);
  }


  .con_flame_box:first-of-type {
    margin-left: calc((48 / 1100) * 100vw);
  }

  .con_flame_box:last-of-type {
    margin-right: calc((52 / 1100) * 100vw);
  }

  .con_flame_box img.point1 {
    width: calc((128 / 1100) * 100vw);
    margin-bottom: calc((28 / 1100) * 100vw);
  }

  .con_flame_box img.point2 {
    width: calc((210.59 / 1100) * 100vw);
    margin-bottom: calc((40 / 1100) * 100vw);
  }

  .con_flame_box img.point3 {
    width: calc((158 / 1100) * 100vw);
    margin-bottom: calc((30 / 1100) * 100vw);
  }


  .con_flame_box .con_flame_box_desc h4 {
    font-size: calc((20 / 1100) * 100vw);
    line-height: calc((24 / 1100) * 100vw);
    margin-bottom: calc((23 / 1100) * 100vw);

  }

  .con_flame_box .con_flame_box_desc p {
    font-size: calc((15 / 1100) * 100vw);
    line-height: calc((24 / 1100) * 100vw);
  }

  .separator {
    height: calc((313 / 1100) * 100vw);
  }

  .medal {
    width: calc((150 / 1100) * 100vw);
    left: calc((80 / 1100) * 100vw);
    top: calc((31 / 1100) * 100vw);
  }


  .cost_cut_merit {
    padding: 0 calc((63 / 1100) * 100vw) calc((31 / 1100) * 100vw) calc((80 / 1100) * 100vw);
    gap: calc((125 / 1100) * 100vw);
  }

  .man_hours {
    padding: calc((28 / 1100) * 100vw) 0 calc((58 / 1100) * 100vw);
  }

  .cost_cut_merit .cost_cut_merit_text {
    margin-top: calc((144 / 1100) * 100vw);
    font-size: calc((19 / 1100) * 100vw);
    line-height: calc((40 / 1100) * 100vw);
  }

  .cost_cut_comparison {
    gap: calc((29 / 1100) * 100vw);
  }

  .cost_cut_comparison h4 {
    margin-top: calc((27 / 1100) * 100vw);
    font-size: max(16px,calc((16 / 1100) * 100vw));
    width: calc((300 / 1100) * 100vw);
    margin-left: calc((92 / 1100) * 100vw);
  }

  .cost_cut_comparison .cost_img {
    width: calc((449 / 1100) * 100vw);
  }

  .cost_img .annotation {
    font-size: 10px;
    line-height: calc((12 / 1100) * 100vw);
  }

  .man_hours .con_h2desc {
    margin-right: calc((155 / 1100) * 100vw);
    margin-left: calc((237 / 1100) * 100vw);
    line-height: calc((40 / 1100) * 100vw);
  }

  .man_hours_comparison {
    gap: calc((43.83 / 1100) * 100vw);
    margin: calc((67 / 1100) * 100vw) calc((90 / 1100) * 100vw) 0;
  }

  .man_hours_comparison h4 {
    width: calc((360 / 1100) * 100vw);
    font-size: max(18px,calc((18 / 1100) * 100vw));
  }

  .man_hours_comparison p.h4desc {
    margin: calc((15 / 1100) * 100vw) 0 calc((40 / 1100) * 100vw);
    font-size: calc((16 / 1100) * 100vw);
  }

  .man_hours_comparison .normal,
  .man_hours_comparison .lumora {
    width: calc((400 / 1100) * 100vw);
  }


  .man_hours_comparison .lumora h4 .sub {
    font-size: 10px;
  }

  .man_hours_comparison .normal img {
    width: calc((264 / 1100) * 100vw);
    height: calc((311 / 1100) * 100vw);
  }

  .man_hours_comparison .lumora img {
    width: calc((394.11 / 1100) * 100vw);
    height: calc((343 / 1100) * 100vw);
  }

  .man_hours_comparison .arrow {
    width: calc((38 / 1100) * 100vw);
    height: calc((90 / 1100) * 100vw);
  }

  .incremental_reach {
    gap: calc((107 / 1100) * 100vw);
    padding: 0 calc((120 / 1100) * 100vw);
  }

  .reach_text {
    margin: calc((77 / 1100) * 100vw) 0;
    gap: calc((30 / 1100) * 100vw);
  }

  .reach_graph {
    gap: calc((15 / 1100) * 100vw);
    margin: calc((40 / 1100) * 100vw) 0;
  }

  .reach_text h3 {
    font-size: calc((32 / 1100) * 100vw);
    line-height: calc((46 / 1100) * 100vw);
  }

  .reach_text p {
    font-size: calc((16 / 1100) * 100vw);
    line-height: calc((32 / 1100) * 100vw);
  }

  .reach_graph h4 {
    width: calc((300 / 1100) * 100vw);
  }

  .reach_graph img {
    width: calc((338 / 1100) * 100vw);
  }

  .reach_graph p {
    font-size: max(16px,calc((16 / 1100) * 100vw));
    line-height: calc((24 / 1100) * 100vw);
  }

  .frequency {
    gap: calc((40 / 1100) * 100vw);
    padding: calc((40 / 1100) * 100vw) calc((90 / 1100) * 100vw);
  }

  .frequency_header h3,
  .distribution_header h3 {
    font-size: calc((32 / 1100) * 100vw);
    line-height: calc((38.4 / 1100) * 100vw);
  }

  .frequency_header p,
  .distribution_header p {
    margin-top: calc((20 / 1100) * 100vw);
  }

  .frequency_graphs {
    gap: calc((60 / 1100) * 100vw);
  }

  .frequency_graph {
    width: calc((430 / 1100) * 100vw);
  }

  .frequency_graph h4 {
    margin-bottom: calc((15 / 1100) * 100vw);
    font-size: max(18px,calc((18 / 1100) * 100vw));
  }

  .frequency_graph h4 .sub {
    font-size: max(12px,calc((12 / 1100) * 100vw));
  }

  .distribution {
    padding: calc((40 / 1100) * 100vw) calc((111.05 / 1100) * 100vw);

  }

  .distribution h4 {
    width: calc((446.29 / 1100) * 100vw);
    margin-bottom: calc((20 / 1100) * 100vw);
  }

  .distribution_header {
    margin-bottom: calc((33.25 / 1100) * 100vw);
  }

  .distribution .con_radius_flame {
    width: calc((890 / 1100) * 100vw);
    padding: calc((19 / 1100) * 100vw) calc((97.62 / 1100) * 100vw) calc((20 / 1100) * 100vw) calc((62.86 / 1100) * 100vw);
    gap: calc((30 / 1100) * 100vw);
    border-radius: calc((20 / 1100) * 100vw);
    margin-bottom: calc((4 / 1100) * 100vw);
  }

  .distribution_box {
    gap: calc((10 / 1100) * 100vw);
  }

  .distribution_box .distribution_label {
    width: calc((80 / 1100) * 100vw);
    font-size: max(18px,calc((18 / 1100) * 100vw));
    line-height: calc((24 / 1100) * 100vw);
  }

  .distribution_box .total_reach {
    font-weight: 700;
  }

  .distribution_box .total_reach .label {
    font-size: max(14px,calc((14 / 1100) * 100vw));
    line-height: calc((16.8 / 1100) * 100vw);
  }

  .distribution_box .total_reach .value {
    font-size: calc((18 / 1100) * 100vw);
    line-height: calc((24 / 1100) * 100vw);
  }

  .distribution .arrow {
    width: calc((150 / 1100) * 100vw);
    height: calc((30 / 1100) * 100vw);
    margin-bottom: calc((20 / 1100) * 100vw);
  }

  .faq .con_h2desc {
    margin: calc((60 / 1100) * 100vw) 0 calc((20 / 1100) * 100vw);

  }

  .faq .faq_lists {
    gap: calc((40 / 1100) * 100vw);
  }

  .faq .con_radius_flame {
    padding: calc((20 / 1100) * 100vw) calc((30 / 1100) * 100vw);
  }

  .faq .faq_lists .con_radius_flame {
    gap: calc((10 / 1100) * 100vw);
  }

  .faq .con_radius_flame .question,
  .faq .con_radius_flame .answer {
    font-size: calc((20 / 1100) * 100vw);
    gap: calc((12 / 1100) * 100vw);
  }

  .faq .con_radius_flame .question_label,.faq .con_radius_flame .answer_label {
    font-size: calc((40 / 1100) * 100vw);
    line-height: calc((48 / 1100) * 100vw);
  }
  .faq .con_radius_flame .answer span.sub{
    font-size:calc((12 / 1100) * 100vw);
  }

  .faq .con_radius_flame .answer .answer_label {
    margin-left: calc((50 / 1100) * 100vw);
  }

}

/*ここまで*/


@media screen and (max-width: 767px) {
  #homepage .con_title {
    height: 70vh;
    min-height: 500rem;
  }
}

#homepage .con_title .inner {
  width: 100%;
  height: 100vh;
  min-height: 650px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@media screen and (max-width: 767px) {
  #homepage .con_title .inner {
    height: 70vh;
    min-height: 500rem;
  }
}

#homepage .con_title .inner .motion_01 {
  height: 100vh;
  min-height: 650px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 1;
  animation: motion_01 forwards 0.5s ease-out 3s;
}

@media screen and (max-width: 767px) {
  #homepage .con_title .inner .motion_01 {
    height: 70vh;
    min-height: 500rem;
  }
}

#homepage .con_title .inner .motion_01 h2 {
  margin: 0;
  padding: 0;
  font-size: 385%;
  font-weight: 700;
  position: relative;
  overflow: hidden;
  animation: motion_01_01 forwards 1.5s ease-out 0s;
}

@media screen and (max-width: 767px) {
  #homepage .con_title .inner .motion_01 h2 {
    font-size: 32rem;
  }
}

#homepage .con_title .inner .motion_01 h2:after {
  width: 100%;
  height: 2px;
  background: #fff;
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 100%;
  animation: motion_01_02 forwards 0.5s ease-out 1.5s;
}

#homepage .con_title .inner .motion_02 {
  height: 100vh;
  min-height: 650px;
  padding-top: 130px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  opacity: 1;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@media screen and (max-width: 767px) {
  #homepage .con_title .inner .motion_02 {
    height: 70vh;
    min-height: 500rem;
    padding-top: calc(61.84 / 375 * 100vw);
  }
}

#homepage .con_title .inner .motion_02 h2 {
  margin: 0;
  padding: 0;
  font-size: 654%;
  font-weight: 700;
  line-height: 1.3em;
  text-align: center;
  opacity: 0;
  animation: motion_02_01 forwards 1.5s ease-out 5s;
}

#homepage .con_title .inner .motion_02 h2 {
  margin: 0;
  padding: 0;
  font-size: 654%;
  font-weight: 700;
  line-height: 1.3em;
  text-align: center;
  opacity: 0;
  animation: motion_02_01 forwards 1.5s ease-out 4s;
}

#homepage .con_title .inner .motion_02 h2 span {
  font-size: 58%;
}

@media screen and (max-width: 767px) {
  #homepage .con_title .inner .motion_02 h2 {
    font-size: 50rem;
  }

  #homepage .con_title .inner .motion_02 h2 span {
    font-size: 32rem;
  }
}

#homepage .con_title .inner .motion_02 .fv_links {
  margin-top: 25px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transform: translate(0, -10px);
  pointer-events: none;
  animation: motion_02_02 forwards 0.5s ease-out 5.5s;
}

@media all and (-ms-high-contrast:none) {

  *::-ms-backdrop,
  #homepage .con_title .inner .motion_02 .fv_links {
    pointer-events: auto;
  }
}

@media screen and (max-width: 767px) {
  #homepage .con_title .inner .motion_02 .fv_links {
    justify-content: space-around;
  }
}

#homepage .con_title .inner .motion_02 .fv_links a {
  margin: 0 25px;
  padding: 19px 31px;
  background: rgba(241, 241, 243, .9);
  border-radius: 6px;
  position: relative;
  display: block;
}

#homepage .con_title .inner .motion_02 .fv_links a:before {
  width: 100%;
  height: 100%;
  border: 0 solid rgba(0, 0, 0, 0);
  border-radius: 5px;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transition: all 0.2s ease-out 0s;
}

#homepage .con_title .inner .motion_02 .fv_links a:hover:before {
  border: 10px solid rgba(0, 0, 0, .2);
}

@media screen and (max-width: 767px) {
  #homepage .con_title .inner .motion_02 .fv_links a {
    width: 45%;
    margin: 0;
    padding: 13rem 23rem;
  }
}

#homepage .con_title .inner .motion_02 .fv_scroll {
  margin-top: 48px;
  text-align: center;
  opacity: 0;
  transform: translate(0, -10px);
  animation: motion_02_02 forwards 0.5s ease-out 6s;
}

#homepage .con_title .inner .motion_02 .fv_scroll .mouse {
  width: 33px;
  height: 53px;
  margin: 0 auto 8px;
  background: #A8A8A8;
  border: 2px solid #fff;
  border-radius: 100px;
  position: relative;
}

#homepage .con_title .inner .motion_02 .fv_scroll .mouse:after {
  width: 10px;
  height: 10px;
  background: #19569F;
  border-radius: 100%;
  content: "";
  display: block;
  position: absolute;
  top: 8px;
  left: 50%;
  transform: translate(-50%, 0);
  animation: motion_02_03 forwards 2s ease-out 6s infinite;
}

#homepage .con_title .inner .motion_02 .fv_scroll .txt {
  font-size: 77%;
}

@media only screen and (max-width: 767px) {
  #homepage .con_title .inner .motion_02 .fv_scroll .txt {
    font-size: 10rem;
  }
}

#homepage .con_brandrename {
  padding: 60px 20px 77px 20px;
  background: url("../images/home2/bg_rename@2x.webp") center center / cover no-repeat;
}

@media only screen and (max-width: 767px) {
  #homepage .con_brandrename {
    padding: 33px 0 10px;
  }
}

#homepage .con_brandrename .con_main {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}

@media only screen and (max-width: 767px) {
  #homepage .con_brandrename .con_main {
    width: 95%;
  }
}

/* #homepage .con_brandrename .con_main .con_h2 {
  margin: 0 0 27px;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
} */

@media only screen and (max-width: 767px) {
  #homepage .con_brandrename .con_main .con_h2 {
    margin: 0 0 16px;
    font-size: 30rem;
  }
}

#homepage .con_brandrename .con_main p {
  font-size: 18px;
  line-height: 1.66666em;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  #homepage .con_brandrename .con_main p {
    font-size: 16rem;
    line-height: 2.1875em;
    text-align: left;
  }
}

#homepage .con_brandrename .con_main .brandrename_img {
  display: flex;
}

@media only screen and (max-width: 767px) {
  #homepage .con_brandrename .con_main .brandrename_img {
    display: block;
    margin-top: 40px;
  }
}

#homepage .con_brandrename .con_main .brandrename_img picture {
  width: 100%;
  margin: 40px 0 0;
  display: block;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  #homepage .con_brandrename .con_main .brandrename_img picture {
    margin: 0 0 73px;
  }
}

#homepage .con_brandrename .con_main .btn {
  margin-top: 1em;
}

#homepage .con_brandrename .con_main .btn a {
  color: #FFF;
  border: 1px solid #d6d6d6;
  background: #ffffff;
  text-align: center;
  padding: .7em 1em;
  display: inline-block;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  text-decoration: none;
  color: #333;
  font-size: 108%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: .3em 1em;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

@media only screen and (max-width: 767px) {
  #homepage .con_brandrename .con_main .btn a {
    width: 100%;
  }
}

#homepage .con_brandrename .con_main .btn a .fa-angle-right {
  margin-left: .3em;
  border: 1px solid #333;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  overflow: hidden;
  *zoom: 1;
  line-height: 1;
  padding: 0 .3em;
  vertical-align: middle;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

#homepage .con_brandrename .con_main .btn a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}

#homepage .con_brandrename .con_main .btn a:hover .fa-angle-right {
  margin-left: .6em;
}

@media only screen and (max-width: 767px) {
  #homepage .con_brandrename .con_main .btn a {
    width: 100%;
  }
}

#homepage .con_platform {
  padding: 70px 20px;
}

@media only screen and (max-width: 767px) {
  #homepage .con_platform {
    padding: 60px 0;
  }
}

#homepage .con_platform .con_main {
  width: 100%;
  max-width: 1100px;
  margin: 0 auto;
}

@media only screen and (max-width: 767px) {
  #homepage .con_platform .con_main {
    width: 95%;
  }
}

/* #homepage .con_platform .con_main .con_h2 {
  margin-bottom: 68px;
  color: #1957A0;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
} */

@media only screen and (max-width: 767px) {
  #homepage .con_platform .con_main .con_h2 {
    margin: 0 0 16px;
    font-size: 30rem;
  }
}

#homepage .con_platform .con_main picture {
  width: 100%;
  margin: 0 0 56px;
  display: block;
  text-align: center;
}

@media only screen and (max-width: 1103px) {
  #homepage .con_platform .con_main picture img {
    width: auto;
    max-width: none;
  }
}

#homepage .con_platform .con_main p {
  font-size: 16px;
  line-height: 2.1875em;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  #homepage .con_platform .con_main p {
    font-size: 16rem;
    text-align: left;
  }
}

.js-scrollable {
  padding: 3px 0;
}

.scroll-hint-icon-wrap {
  z-index: 3;
}

#homepage .con_strong {
  padding: 70px 20px;
}

@media only screen and (max-width: 767px) {
  #homepage .con_strong {
    padding: 60px 0;
    position: relative;
    overflow: hidden;
  }
}

#homepage .con_strong .con_main {
  width: 100%;
  max-width: 1252px;
  margin: 0 auto;
}

@media only screen and (max-width: 767px) {
  #homepage .con_strong .con_main {
    width: 95%;
  }
}

/* #homepage .con_strong .con_main .con_h2 {
  margin-bottom: 30px;
  color: #1957A0;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
} */

@media only screen and (max-width: 767px) {
  #homepage .con_strong .con_main .con_h2 {
    margin: 0 0 16px;
    font-size: 30rem;
  }
}

#homepage .con_strong .con_main .strong_img {
  position: relative;
}

@media only screen and (max-width: 767px) {
  #homepage .con_strong .con_main .strong_img {
    width: calc(663 / 390 * 100vw);
    position: relative;
    left: 50%;
    transform: translate(-50%, 0);
  }
}

#homepage .con_strong .con_main .strong_img .btn {
  margin: 0;
  position: absolute;
  top: 66%;
  left: 50%;
  z-index: 3;
  transform: translate(-50%, -50%);
}

@media only screen and (max-width: 767px) {
  #homepage .con_strong .con_main .strong_img .btn {
    top: 63%;
  }
}

#homepage .con_strong .con_main .strong_img .btn a {
  padding: 9px 40px;
  background: #1957A0;
  border: 1px solid #1957A0;
  border-radius: 8px;
  color: #fff;
  font-size: 18px;
  text-decoration: none;
}

@media only screen and (min-width: 768px) and (max-width: 1292px) {
  #homepage .con_strong .con_main .strong_img .btn a {
    padding: calc(9 / 1292 * 100vw) calc(40 / 1292 * 100vw);
    font-size: calc(18 / 1292 * 100vw);
  }
}

@media only screen and (max-width: 767px) {
  #homepage .con_strong .con_main .strong_img .btn a {
    padding: 7rem 10rem 6rem;
    border-radius: 4rem;
    font-size: 14rem;
  }
}

#homepage .con_strong .con_main .strong_img .btn a .fa-angle-right {
  margin-left: .3em;
  border: 1px solid #fff;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  overflow: hidden;
  *zoom: 1;
  line-height: 1;
  padding: 0 .3em;
  vertical-align: middle;
  -moz-transition: all 0.2s ease-out;
  -o-transition: all 0.2s ease-out;
  -webkit-transition: all 0.2s ease-out;
  transition: all 0.2s ease-out;
}

#homepage .con_strong .con_main .strong_img .btn a:hover {
  background: #fff;
  color: #1957A0;
}

#homepage .con_strong .con_main .strong_img .btn a:hover .fa-angle-right {
  margin-left: .6em;
  border: 1px solid #1957A0;
}

#homepage .con_strong .con_main .strong_img .bg {
  position: relative;
  z-index: 1;
}

#homepage .con_strong .con_main picture {
  margin: 0;
  display: block;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  #homepage .con_strong .con_main picture img {
    width: calc(663 / 390 * 100vw);
    max-width: none;
  }
}

#homepage .con_strong .con_main p {
  font-size: 16px;
  margin-bottom: 62px;
  line-height: 2.1875em;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  #homepage .con_strong .con_main p {
    font-size: 16rem;
    text-align: left;
  }
}

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



.con_seminar {
  padding: 60px 20px 60px;
}

section.faq {
  padding: 60px 20px 60px;
}

/* h2.con_h2 {
  color: #1957A0;
  font-weight: bold;
  text-align: center;
  font-size: 36px;
  margin-bottom: 26px;
} */

.con_wrapper {
  width: 800px;
  margin-left: auto;
  margin-right: auto;
}



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

.con_h2explain {
  width: 99%;
  color: #313131;
  /* background-color: #003164; */
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  font-size: 12px;
  line-height: 1.8;
  margin-bottom: 44px;
}

.rmp_point_wrap {
  max-width: 946px;
  margin: auto;
}

.rmp_point {
  display: flex;
  /* align-items: center; */
  gap: 0 20px;
  margin-bottom: 50px;
}

.rmp_point.point2 {
  flex-direction: row-reverse;
}

.rmp_point>* {
  flex-basis: 50%;
}

.rmp_point_img {
  margin: auto;
  text-align: center;
}

.rmp_point_img img {
  width: 80%;
}

.rmp_point_num {
  font-weight: bold;
  color: #1356A0;
  margin-bottom: 20px;
}

.rmp_point_num .num {
  font-size: 24px;
  margin-left: 10px;
}

.rmp_point_title {
  font-size: 22px;
  margin-bottom: 27px;
  line-height: 1.6;
}

.rmp_point_body {
  margin: 10px 0 20px;
  font-weight: normal;
}

.rmp_point_text {
  font-size: 18px;
  font-weight: bold;
  line-height: 1.8;
}



.product_needs {
  color: #004690;
  font-size: 26px;
  font-weight: bold;
}

body a.form_btn {
  border-radius: 5px;
  /* font-size: 16px; */
  font-weight: 600;
  display: flex;
  gap: 0 12px;
  align-items: center;
  padding: 20px 0;
  text-decoration: none;
  transition: all .2s;
  white-space: nowrap;
}

/*
.blue_btn {
  background: #003164;
  color: #fff;
  border: 1px solid #003164;
}

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

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

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


/* seminar */
.con_seminar {
  padding: 40px 20px 80px;
}

.con_seminar .con_h2_notes {
  text-align: center;
  display: block;
  font-size: 18px;
  color: #AAAAAA;
  margin: 0 auto 27px;
}

/* .con_seminar .con_h2 {
  color: #1957A0;
  margin: 0 0 62px;
} */

.seminar_area {}

.seminar {
  /* margin: 0 10px; */
}

.seminar>* {
  width: 240px;
}

.seminar_img_wrap {
  height: 156px;
  overflow: hidden;
}

.seminar_img {
  position: relative;
}

.seminar_img img {}

.notend,
.end {
  position: absolute;
  right: 0;
  bottom: -10px;
  color: #fff;
  padding: 5px 5px;
  width: 100px;
  font-size: 10px;
  text-align: center;
}

.notend {
  background: #FF8A04;
}

.end {
  background: #999999;
}

.seminar_date {
  font-size: 11px;
}

.seminar_text {
  font-size: 18px;
  font-weight: bold;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  word-break: break-all;
  -webkit-line-clamp: 3;
  line-height: 1.5;
  max-height: 4.5em;
}

body .seminar_text a {
  text-decoration: none;
}

.con_seminar .seminar_btn {
  padding: 14px 10px;
  font-size: 16px;
  font-weight: bold;
  margin-top: 42px;
  border-radius: 5px;
  max-width: 290px;
  text-align: center;
  text-decoration: none;
  display: block;
  transition: .2s;
}

.bx-wrapper .bx-controls-direction a {
  width: 28px;
  height: 36px;
  margin-top: -18px;
}

.bx-wrapper .bx-next {
  right: -70px;
  background: url(../rmp/images/seminar_next.svg) 0 0px /cover no-repeat;
}

.bx-wrapper .bx-prev {
  left: -70px;
  background: url(../rmp/images/seminar_next.svg) 0 0px /cover no-repeat;
  transform: rotateZ(180deg);
}

.bx-wrapper .bx-next:focus,
.bx-wrapper .bx-next:hover {
  background-position: inherit;
}


/* faq */
.faq .con_h2_notes {
  text-align: center;
  color: #1356A0;
  display: block;
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 10px;
}

/* .faq h2.con_h2 {
  font-size: 28px;
  color: #222;
} */

.faq-wrap {
  text-align: left;
  margin: 40px auto 96px;
  max-width: 946px;
}

.faq-body {
  margin: 0 0 40px;
}



.q-num {
  color: #1356A0;
  margin-right: 1em;
}

.q-text {}

.q-icon {
  display: none;
}

/* .answer {
  font-size: 18px;
  line-height: 32px;
} */

.answer a:link,
.answer a:visited {
  text-decoration: underline;
}

.link-wrap {}

.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; */
  padding: 38px 20px 40px;
  text-align: center;
  font-family: "Helvetica Neue", "Helvetica", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Arial", "Yu Gothic", "Meiryo", 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;
}

#colophon {
  border: none;
  margin: 0;
  background: #222;
  color: #fff;
  padding: 60px 0 80px;
}

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

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

@media screen and (max-width: 375px) {
  #contact h2 {
    font-size: 23px;
  }
}



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

.contact-btn-area>a {
  /* width: 48%; */
  text-align: center;
  /* padding: 19px 0px; */
  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;
}

html #geniee_lumora #contents .con_title_right img {
  width: 526.29px;
  height: 432.83px;
}



/*RMP新規追加*/

.rmp_dounyuu_wrap {
  width: 100%;
}

.rmp_dounyuu {
  display: flex;

}

.rmp_dounyuu_body {
  font-size: 16rem;
}

.rmp_dounyuu_img {
  margin-bottom: 20px;
  flex-basis: 40%;
  background-image: url(../rmp/images/dounyuu_rmp_img1.png);
  background-position: top right;
  background-size: auto 401px;
  background-repeat: no-repeat;
  width: 100%;
  height: 401px;
}

.rmp_dounyuu_text {
  flex-basis: 60%;
  margin-left: 70px;
}

.rmp_dounyuu_explain {
  display: flex;
  flex-wrap: wrap;
  width: 685px;
}

.rmp_dounyuu_explain_img {
  width: 150px;
  padding-bottom: 20px;
  margin-bottom: 10px;
}

.rmp_dounyuu_explain_text {
  width: 535px;
  padding-bottom: 20px;
  padding-left: 35px;
  margin-bottom: 10px;
}

.rmp_dounyuu_includetitle {
  font-size: 21px;
  font-weight: bold;
  margin-bottom: 27px;
  line-height: 1.6;
}

.rmp_dounyuu_includetext {
  font-size: 18px;
  line-height: 1.8;
}

/* .blue_back .form_link {
  background: #FFF;
} */

@media screen and (max-width: 767px) {
  .rmp_dounyuu_wrap {
    width: 100%;
  }

  .rmp_dounyuu {
    display: block;

  }

  .rmp_dounyuu_body {
    font-size: 16rem;
  }

  .rmp_dounyuu_img {
    text-align: center;
    width: 80%;
    margin: 0 auto 40px;
    background-image: none;
    height: auto;
  }

  .rmp_dounyuu_text {
    width: 100%;
    padding: 0 10px;
    margin-left: 0;
  }

  .rmp_dounyuu_explain {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
  }

  .rmp_dounyuu_explain_img {
    width: 25%;
    padding-bottom: 20px;
    margin-bottom: 10px;
  }

  .rmp_dounyuu_explain_text {
    width: 75%;
    padding-bottom: 20px;
    padding-left: 10px;
    margin-bottom: 10px;
  }

  .rmp_dounyuu_includetitle {
    font-size: 16rem;
    font-weight: bold;
    margin-bottom: 27px;
  }

  .rmp_dounyuu_includetext {
    font-size: 14rem;
  }

}