@charset "UTF-8";


:root {
      --color-white: #FFF;
      --color-border: #EBE3E3;
      --color-right-gray: #C2C2C2;
      --color-light-pink: #F7E6EB;
      --color-pink-1: #DD688B;
      --color-pink-2: #D8527A;
      --color-pink-3: #CF3966;
      --color-main: #CE2759;
      --color-blue: #0049DA;
      --color-text: #333;
      --bdrs-infinite: calc(1px / 0);
      --transition: 0.3s;
}



/*============================================================================================
      Contents
=============================================================================================*/

/* ---共通パーツ--- */
.l_wrappper {
      display: block;
      box-sizing: border-box;
      font-size: 1.6rem;
      line-height: 1.5;
      margin: 0 auto;
      font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
@media (any-hover: hover) {
      .l_wrappper:hover {
            width: 100%;
      }
}
.sec_ttl {
      font-size: 2.2rem;
      font-weight: 700;
}
.sec_sb_ttl {
      font-size: 1.8rem;
      font-weight: 700;
}
.ttl_decoHd {
      position: relative;
      padding-left: 0.5em;
}
.ttl_decoHd::before {
      content: "";
      position: absolute;
      display: inline-block;
      top: calc((1lh - 1em) / 2.5);
      left: 0;
      width: 0.15em;
      height: 1em;
      background-color: var(--color-main);
}
.lead_note {
      font-size: 1.6rem;
      font-weight: 500;
      line-height: 1.5;
}
.sec_inr_note {
      font-size: 1.6rem;
      font-weight: 500;
      line-height: 1.5;
}
.anno_note {
      font-size: 1.2rem;
      font-weight: 500;
      line-height: 1.5;
}

.mt_4 {
      margin-top: 0.4rem;
}
.mt_8 {
      margin-top: 0.8rem;
}
.mt_11 {
      margin-top: 1.1rem;
}
.mt_12 {
      margin-top: 1.2rem;
}
.mt_15 {
      margin-top: 1.5rem;
}
.mt_16 {
      margin-top: 1.6rem;
}
.mt_18 {
      margin-top: 1.8rem;
}
.mt_28 {
      margin-top: 2.8rem;
}
.mt_40 {
      margin-top: 4rem;
}
.ml_35 {
      margin-left: 3.5rem;
}
@media (max-width: 768px) {
      .mt_24_md {
            margin-top: 2.4rem;
      }
}
.u_alignC {
      text-align: center;
}
.u_alignL {
      text-align: left;
}

.u_img * {
      display: block;
      max-width: 100%;
      margin: 0 auto;
}
.u_indent {
      text-indent: -1.3em;
      padding-left: 1.3em;
}
@media (max-width: 768px) {
      .u_pc {
            display: none;
      }
}
@media (min-width: 769px) {
      .u_md {
            display: none;
      }
}

.icon_dind li:before {
      content: "";
      position: absolute;
      top: 0.9rem;
      left: 0.2rem;
      width: 0.6rem;
      height: 0.6rem;
      background-color: var(--color-text);
      -webkit-transform: rotate(45deg);
      -ms-transform: rotate(45deg);
      transform: rotate(45deg);
}
.icon_tri li:before {
      content: "";
      position: absolute;
      width: 0;
      height: 0;
      top: 3px;
      left: -6.5px;
      bottom: 0;
      border-top: 4px solid transparent;
      border-bottom: 4px solid transparent;
      border-left: 6px solid var(--color-text);
}



/* ナビゲーション */
.nav_lst {
      display: flex;
      justify-content: space-around;
      align-items: center;
      text-align: center;
}
.nav_itm {
      font-size: 1.4rem;
      font-weight: 700;
      width: 20%;
}
.nav_itm a {
      color: var(--color-text);
}
@media (any-hover: hover) {
      .nav_itm a:hover {
            color: var(--color-main);
            text-decoration: underline;
      }
}
@media (max-width:768px) {
      .nav_lst {
            display: flow-root;
      }
      .nav_itm {
            float: left;
            font-size: 13px;
            border-right: 1px solid var(--color-text);
            border-bottom: 1px solid var(--color-text);
            width: calc(50% - 2px);
            padding: 4px 0;
            margin: 3px 1px 3px;
      }
      .nav_itm a:hover {
            color: var(--color-text);
            text-decoration: none;
      }
}



/* ---サービス概要--- */
.eva_sheet_img {
      display: flex;
      justify-content: space-between;
}
.sec_service_lst li{
      position: relative;
      padding-left: 1.4rem;
}
.sec_service_lst_linktxt {
      color: var(--color-text);
      text-decoration: underline;
}
@media (any-hover:hover) {
      .sec_service_lst_linktxt:hover {
            text-decoration: none;
      }
}
@media (max-width: 768px) {
      .eva_sheet_img {
            flex-direction: column;
      }
}



/* ---論文のテーマ例--- */
.topic_tbl {
      table-layout: fixed;
      border: 1px solid var(--color-border);
      width: 100%;
}
.topic_tbl_ttl {
      font-weight: 700;
      font-size: 1.6rem;
      color: var(--color-white);
      background-color: var(--color-main);
      padding: 0.5rem 0;
}
.topic_tbl_cont {
      display: flex;
}
.topic_tbl_itm {
      flex: 1;
      align-items:stretch
}
.topic_tbl th {
      background-color: var(--color-light-pink);
      height: 3rem;
      padding: 0.5rem;
}
.topic_tbl_inr{
      vertical-align: baseline;
      padding: 1.6rem;
}
.topic_tbl_inr_ttl {
      font-size: 1.4rem;
      font-weight: 700;
      line-height: 1.2;
      letter-spacing: 0.7px;
}
.topic_tbl_inr_note {
      font-size: 1.4rem;
      font-weight: 500;
      line-height: 1.25;
      letter-spacing: 0.42px;
}
.topic_tbl_lst li {
      position: relative;
      padding-left: 0.6rem;
}
.topic_tbl__sec {
      border-left: none;
}
@media (min-width:769px) {
      .topic_tbl_itm {
            display: flex;
            align-items: stretch;
      }
}
@media (max-width:768px) {
      .topic_tbl_cont {
            display: block;
      }
      .topic_tbl__sec {
            border-left: 1px solid var(--color-border);
      }
}



/* ---成果物のイメージ-- */
.sec_price_lst {
      position: relative;
      padding-left: 1.4rem;
}



/* ---ご活用事例--- */
.sec_case_lst li{
      position: relative;
      padding-left: 1.4rem;
}
.mgmt_tbl {
      table-layout: fixed;
      border: 1px solid var(--color-border);
      width: 100%;
}
.mgmt_tbl_ttl {
      font-weight: 700;
      font-size: 1.8rem;
      color: var(--color-white);
      background-color: var(--color-main);
      padding: 0.8rem 3.3rem 0.8rem 1.5rem;
}
.mgmt_tbl_cont {
      display: flex;
}
.mgmt_tbl_itm {
      flex: 1;
      align-items:stretch
}
.mgmt_tbl th {
      background-color: var(--color-light-pink);
      font-size: 1.8rem;
      height: 4.3rem;
      padding: 0.8rem 1.5rem;
}
.mgmt_tbl_inr{
      vertical-align: baseline;
      padding: 1.4rem 1.3rem;
}
.mgmt_tbl_inr_ttl {
      font-size: 1.4rem;
      font-weight: 700;
      line-height: 1.2;
      letter-spacing: 0.7px;
}
.mgmt_tbl_inr_note {
      font-size: 1.4rem;
      font-weight: 500;
      line-height: 1.25;
      letter-spacing: 0.42px;
}
.mgmt_tbl_lst li {
      font-size: 1.6rem;
      font-weight: 500;
}
.mgmt_tbl__sec {
      border-left: none;
}
@media (min-width:769px) {
      .mgmt_tbl_itm {
            display: flex;
            align-items: stretch;
      }
}
@media (max-width:768px) {
      .mgmt_tbl_cont {
            display: block;
      }
      .mgmt_tbl__sec {
            border-left: 1px solid var(--color-border);
      }
}
.theme_tbl {
      table-layout: fixed;
      width: 51.2rem;
      border: 1px solid var(--color-border);
      padding-left: 0;
}
.theme_tbl th {
      font-size: 1.8rem;
      font-weight: 700;
      color: var(--color-white);
      background-color: var(--color-main);
      padding: 0.8rem 1.5rem;
}
.theme_tbl tr td:nth-of-type(1),
.theme_tbl tr td:nth-of-type(2) {
      border-right: 1px solid var(--color-border);
      padding: 1.7rem 1.9rem 1.4rem 1.1rem;
}
.theme_tbl_inr{
      vertical-align: baseline;
      padding: 1.6rem;
}
.theme_tbl_inr_ttl {
      font-size: 1.4rem;
      font-weight: 700;
      line-height: 1.2;
      letter-spacing: 0.7px;
}
.theme_tbl_lst li{
      font-size: 1.6rem;
      font-weight: 500;
}



/* 価格 */
.sec_price_inr {
      display: flex;
      justify-content: center;
      flex-direction: column;
}
.sec_price_box_cont {
      display: flex;
      justify-content: center;
      gap: 1.5rem;
}
.sec_price_box {
      border-radius: calc(16 / 16* 1.6rem);
      border: 1px solid var(--color-right-gray);
      padding: 3rem 3.5rem;
      width: 48.5%;
      white-space: nowrap;
      display: flex;
      justify-content: flex-start;
}
.sec_price_box_inr {
      display: flex;
      justify-content: center;
      flex-direction: column;
      align-items: center;
}
.connection_box_ttl {
      font-size: 2.5rem;
      letter-spacing: 0.1rem;
      font-weight: 800;
}
.connection_box_note {
      font-size: 1.8rem;
      font-weight: 600;
      letter-spacing: 0.05px;
}
.connection_box_note_sm {
      font-size: 1.6rem;
      font-weight: 600;
      letter-spacing: 0.05px;
}
.price_num {
      color: var(--color-main);
      font-size: 4.2rem;
      font-weight: 700;
}
.price_unit {
      font-size: 1.8rem;
      font-weight: 700;
      margin-left: 0.8rem;
}
.price_tax {
      font-size: 1.4rem;
      font-weight: 700;
}
.price_note {
      font-size: 1.2rem;
      font-weight: 500;
      letter-spacing: 0.6;
}
.u_ic {
      position: relative;
}
.u_ic::before,
.u_ic::after {
      content: "";
      position: absolute;
      margin: auto;
}
.contact_btn.u_ic::after {
      width: 1.9rem;
      height: 1rem;
      left: 28rem;
      -webkit-mask-image: url(/resource/img/consulting/promotion_research_evaluation/arrow.svg);
              mask-image: url(/resource/img/consulting/promotion_research_evaluation/arrow.svg);
      -webkit-mask-size: cover;
              mask-size: cover;
      -webkit-mask-repeat: no-repeat;
              mask-repeat: no-repeat;
      -webkit-mask-position: center;
              mask-position: center;
      background-color: var(--color-white);
      top: 46%;
      -webkit-transform: translateY(-50%);
              transform: translateY(-50%);
      transition: var(--transition);
      rotate: -0.7rad;
      z-index: 1;
} 
.contact_btn_cont {
      display: flex;
      justify-content: center;
      width: 100%;
}
.contact_btn > * {
      white-space: nowrap;
      position: relative;
      display: block;
      width: 100%;
      width: 32.2rem;
      border-radius: var(--bdrs-infinite);
      transition: color var(--transition), background var(--transition);
      border: 0.2rem solid var(--color-main);
      background-color: var(--color-main);
      width: 100%;
      transition: var(--transition);
      height: 100%;
      padding: 1rem 5rem 1rem 3.3rem;
}
.contact_btn a {
      color: var(--color-white);
      font-size: 1.8rem;
      font-weight: bold;
      display: flex;
      align-items: center;
      justify-content: flex-start;
      transition: var(--transition);
}
@media (any-hover:hover) {
      .contact_btn.u_ic > *:hover {
            color: var(--color-main);
            background-color: var(--color-white);
      }
      .contact_btn.u_ic a:hover {
            color: var(--color-main);
            text-decoration: none;
      }
      .contact_btn.u_ic:hover::after {
            background-color: var(--color-main);
      }
}
@media (max-width: 768px) {
      .sec_price_box_cont {
            flex-direction: column;
      }
      .sec_price_box {
            width: 100%;
            max-width: 36rem;
      }
      .contact_btn.u_ic::before {
            right: 5.5rem;
      }
      .contact_btn_cont {
            justify-content: flex-start;
            margin-left: 2rem;
      }
}
@media (max-width: 448px) {
      .sec_price_box_cont {
            width: fit-content;
      }
      .sec_price_box {
            padding: 6.6vw 7.8vw;
      }
      .connection_box_ttl {
            font-size: 5.5vw;
      }
      .connection_box_note {
            font-size: 4vw;
      }
      .connection_box_note_sm {
            font-size: 3.5vw;
      }
      .price_num {
            font-size: 9.3vw;
      }
      .price_unit {
            font-size: 4vw;
      }
      .price_tax {
            font-size: 3.1vw;
      }
      .contact_btn_cont {
            margin-top: 4.2vw;
            margin-left: 2vw;
      }
      .contact_btn > * {
            width: 71vw;
            padding: 2.2vw 11vw 2.2vw 7.3vw;
      }
      .contact_btn a {
            font-size: 4vw;
      }
      .contact_btn.u_ic::after {
            width: 4.2vw;
            height: 2.2vw;
            left: 62.5vw;
      } 
}



/* サービス提供の流れ */
.sec_image_tbl {
      width: 100%;
      overflow-x: auto;
}
.sec_image_tbl.u_ic::before {
      height: 31rem;
      top: 1.9rem;
      left: 0.7rem;
      border: 2px solid var(--color-main);
}
.sec_image_tbl.u_ic::after{
      width: 0;
      height: 0;
      left: 0.05px;
      bottom: 0;
      border-left: 8.5px solid transparent;
      border-right: 8.5px solid transparent;
      border-top: 15px solid var(--color-main);
}
.image_tbl {
      border: none;
      margin-left: 2.45rem;
}
.image_tbl td:nth-of-type(1) {
      vertical-align: middle;
      color: var(--color-white);
      font-size: 2rem;
      font-weight: 700;
      line-height: 2.51rem;
      letter-spacing: 1px;
      width: 17.7rem;
      white-space: nowrap;
      height: 6.8rem;
      padding-right: 0.8rem;
}
.image_tbl td span {
      font-size: 1.4rem;
      font-weight: 400;
      margin-left: 1.2rem;
}
.image_tbl td:nth-of-type(2) {
      vertical-align: middle;
      white-space: nowrap;
      font-size: 1.6rem;
      font-weight: 700;
      line-height: 1.92rem;
      letter-spacing: 0.8px;
      width: 19.5rem;
      height: 8.2rem;
      padding: 0.8rem 0 0.8rem 0.8rem;
      border-bottom: 1px solid var(--color-border);
}
.image_tbl td:nth-of-type(3) {
      vertical-align: middle;
      font-size: 1.6rem;
      font-weight: 500;
      line-height: 2.24rem;
      height: 8.2rem;
      padding: 0.8rem 0 0.8rem 0.8rem;
      margin-left: 0.8rem;
      border-bottom: 1px solid var(--color-border);
}
.image_tbl tr:last-child td {
      border-bottom: none;
}
.image_tbl_lst li{
      position: relative;
      padding-left: 0.6rem;
}
.img_cell_1 p {
      display: flex;
      align-items: center;
      height: 6.8rem;
      padding-left: 0.8rem;
      background-color: var(--color-pink-1);
}
.img_cell_2 p {
      display: flex;
      align-items: center;
      height: 6.8rem;
      padding-left: 0.8rem;
      background-color: var(--color-pink-2);
}
.img_cell_3 p {
      display: flex;
      align-items: center;
      height: 6.8rem;
      padding-left: 0.8rem;
      background-color: var(--color-pink-3);
}
.img_cell_4 p {
      display: flex;
      align-items: center;
      height: 6.8rem;
      padding-left: 0.8rem;
      background-color: var(--color-main);
} 
.image_tbl tr::after {
      padding-left: 1.8rem;
      border-bottom: 1px solid var(--color-border);
}
.image_tbl_lst.icon_tri li::before{
      top: 5px
}
@media (max-width:768px) {
      .image_tbl {
            width: 74.7rem;
            max-width: 74.7rem;
            overflow-y: scroll;
      }
}



/* 関連サービス */
.sec_connection_lst li {
      color: var(--color-text);
      position: relative;
      padding-left: 1.4rem;
}
.sec_connection_lst_linktxt {
      color: var(--color-text);
}
@media (any-hover:hover) {
      .sec_connection_lst_linktxt:hover {
            color: var(--color-text);
            text-decoration: underline;
      }
}







