@charset "UTF-8";

.topKv__box__text a {display:inline-block;}
.topKv__box__text a:hover {filter:brightness(110%);}

#main-functions .main__content .article section h4 {margin:20px auto 5px auto; font-size:20px; font-size:2.0rem; font-weight:700; color:#0277C3;}
#main-functions .main__content .article section p {margin:9px 0;}

#main-functions .main__content .article section p.fn_img {margin:20px auto; padding:0 0; text-align:center; line-height:0.5;}
#main-functions .main__content .article section p.fn_img img {width:auto; height:auto; max-width:100%; max-height:100%;}
#main-functions .main__content .article section div.full-img {margin:30px auto; padding:0 0; text-align:center; line-height:0.5;}
#main-functions .main__content .article section div.full-img img {width:auto; height:auto; max-width:100%; max-height:100%;}

#main-functions .main__content .article section p.fn_link_txt a {font-size:16px; font-size:1.6rem; font-weight:700; transition:all 0.3s ease-in-out;}
#main-functions .main__content .article section p.fn_link_txt a:hover {opacity:0.7;}
#main-functions .main__content .article section p.fn_link_txt a span:nth-of-type(1) {display:inline-flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:0 0;}
#main-functions .main__content .article section p.fn_link_txt a span:nth-of-type(1)::before {content:""; display:inline-block; margin:0 10px 0 0; width:10px; height:10px; background:url(/images/icon_001_b.png) no-repeat left 50% top 50% / contain;}

#main-functions .main__content .article section p.fn_link_btn {margin:60px auto 0 auto; text-align:center;}

#main-functions .main__content .article section div.fn_column_box {display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px 20px;}
#main-functions .main__content .article section div.fn_column_box div {width:calc((100% - 20px) / 2);}
#main-functions .main__content .article section div.fn_column_box div:has(img) {text-align:center;}
#main-functions .main__content .article section div.fn_column_box div h3,
#main-functions .main__content .article section div.fn_column_box div h4 {margin-top:0 !important;}
#main-functions .main__content .article section div.fn_column_box div p {margin:0 0 !important;}
#main-functions .main__content .article section div.fn_column_box div p:nth-of-type(n + 2) {margin:20px 0 0 0 !important;}
#main-functions .main__content .article section div.fn_column_box div img {margin:0 auto; width:auto; height:auto; max-width:100%; max-height:100%;}
#main-functions .main__content .article section div.fn_column_box + div.fn_column_box {margin-top:30px;}

#main-casestudy .main__content .article div.article__movie {margin-bottom:30px}
#main-casestudy .main__content .article section div.full-img {margin:30px auto; padding:0 0; text-align:center; line-height:0.5;}
#main-casestudy .main__content .article section div.full-img img {width:auto; height:auto; max-width:100%; max-height:100%;}
#main-casestudy .main__content .article section h4 {font-size:18px; font-size:1.8rem; font-weight:700; margin:20px 0 5px 0; padding:0 0;}
#main-casestudy .main__content .article section h5 {font-size:16px; font-size:1.6rem; font-weight:700; margin:20px 0 5px 0; padding:0 0;}
#main-casestudy .main__content .article section p + p,
#main-casestudy .main__content .article section ul + p,
#main-casestudy .main__content .article section ol + p {margin-top:20px;}

.article__topTitle__title span.tx02 {display:block; padding-top:10px; font-size:80%; line-height:1.6;}
.article__topTitle__title span.tx01,
.article__topTitle__title span.tx03 {display:block; padding-top:10px; font-size:55%; line-height:1.6;}

.press_details div.news_img {margin-top:20px; margin-bottom:20px;}
.press_details p {margin-top:20px; margin-bottom:20px;}
.press_details p.details_date {margin-top:0;}
.press_details .details_code + h1 {display:none;}
.press_details .txt_s {font-size:86%;}

.article__topTitle__title--small span.seminar_title_main {display:inline-block; font-size:90%;}
.article__topTitle__title--small span.seminar_title_sub {display:inline-block; font-size:80%;}

.seminarList_title {margin:0 auto 20px auto; padding:0 0; font-size:30px; font-size:3rem; font-weight:600; text-align:center; color:#0277C3;}
.past-seminarList_title {margin:100px auto 20px auto; padding:0 0; font-size:30px; font-size:3rem; font-weight:600; text-align:center; color:#0277C3;}

@media screen and (min-width: 431px) and (max-width: 1023px) {
.modListArticle--seminarList {display:flex; flex-wrap:wrap; justify-content:space-between; gap:20px 20px;}
.modListArticle--seminarList li {width:calc((100% - 20px) / 2); margin:0 0 !important;}
.modListArticle--seminarList .modListArticle__item__textBox {padding:15px 15px 15px 15px;}
.modListArticle--seminarList .modListArticle__item__textBox .title {font-size:16px; font-size:1.6rem; line-height:1.6;}
}


.modIconCategory--ai {background-image: url(/wp-content/themes/esm/assets/img/common/icon_ai.svg);}


@media only screen and (min-width: 1024px) {
.modListCase.gTC-2 {grid-template-columns:repeat(2, 1fr);}

.footer__serviceMenu_250219bk .footer__serviceMenu__list > dd ul li {max-width:189px;}
.footer__serviceMenu .footer__serviceMenu__list > dd ul li a {word-wrap:break-word;}
}


@media screen and (max-width: 1023px) {
#main-functions .main__content .article section h4 {font-size:18px; font-size:1.8rem;}
#main-functions .main__content .article section p.fn_link_btn {margin:40px auto 0 auto;}

.seminarList_title {margin:0 auto 20px auto; font-size:24px; font-size:2.4rem; text-align:left;}
.past-seminarList_title {margin:50px auto 20px auto; font-size:24px; font-size:2.4rem; text-align:left;}
}


@media only screen and (max-width: 768px) {
.article__topTitle__title span.tx01,
.article__topTitle__title span.tx03 {font-weight:400;}
}

@media screen and (max-width: 430px) {
#main-functions .main__content .article section div.fn_column_box div:nth-of-type(1) {width:100%;}
#main-functions .main__content .article section div.fn_column_box div:nth-of-type(2) {width:100%;}
}

@media screen and (max-width: 320px) {
#main-functions .main__content .article section p.fn_link_btn a.modBtn {font-size:16px; font-size:1.6rem;}
}


/* 申込フォーム直接埋込（レイアウト2） ここから
===========================================================*/
div.modSeminarForm > form.mktoForm div.ng_mail label::after {content:""; display:block; position:absolute; left:265px; top:5px; width:200px; height:10px; background:url(https://sblp.softbrain.co.jp/rs/883-TRX-906/images/error_msg_ng_mail.png) no-repeat 0 0 / contain;}

@media screen and (max-width: 1023px) {
div.modSeminarForm > form.mktoForm div.ng_mail label::after {left:20px; top:54px;}
}
/* 申込フォーム直接埋込（レイアウト2） ここまで
===========================================================*/


/* TOP「eセールスマネージャーでできること」をタブ化 ここから
===========================================================*/
#tfsWrap {margin:54px auto 0 auto; padding:0 0; background:var(--blue); box-sizing:border-box; border-radius:20px; overflow:hidden; -webkit-box-shadow: 0px 15px 25px 5px rgba(0, 0, 0, 0.1); box-shadow: 0px 15px 25px 5px rgba(0, 0, 0, 0.1);}
#tfsWrap * {box-sizing:border-box;}
#tfsTab {display:flex; flex-wrap:wrap; gap:0 2px; margin:0 auto; padding:0 0; list-style:none; background:#fff;}
#tfsTab li {width:calc((100% - 6px) / 4); margin:0 0; padding:20px 5px; font-size:20px; font-size:2rem; font-weight:400; text-align:center; color:#fff; user-select:none; cursor:pointer; background:var(--lightBlue); border-bottom:2px solid #fff; transition: all 0.3s ease-in-out;}
#tfsTab li.tfsOn {font-weight:700; background:var(--blue); border-color:var(--blue);}
#tfsTab li:hover {background:var(--blue);}
#tfsTab li span {display:inline-block;}
#tfsWrap > div {margin:20px 20px; padding:50px 20px; background:#fff; border-radius:10px;}
#tfsWrap .topFunctionSection + .topFunctionSection {margin-top:20px !important;}

@media screen and (min-width: 1024px) {
#tfsWrap .topFunctionSection + .topFunctionSection {margin-top:20px !important;}
}

@media screen and (max-width: 1023px) {
#tfsWrap {margin:0 auto;}
#tfsTab li {padding:15px 2px; font-size:16px; font-size:1.6rem;}
#tfsWrap > div {margin:10px 10px; padding:30px 20px 40px 20px;}
#tfsWrap .topFunctionSection + .topFunctionSection {margin-top:10px !important;}
#tfsWrap > div .modHeadingTop {margin:0 0 20px 0;}
#tfsWrap .topFunctionSection__list {gap:40px 20px;}
#tfsWrap .topFunctionSection__list__item {width:calc((100% - 20px) / 2);}
}

@media screen and (max-width: 430px) {
#tfsTab {gap:10px 10px; padding:10px 10px 0 10px; background:var(--blue);}
#tfsTab li {width:calc((100% - 10px) / 2); padding:10px 2px; font-size:14px; font-size:1.4rem; color:var(--blue); background:#fff; border:none; border-radius:100px; opacity:0.5;}
#tfsTab li:hover {opacity:1;}
#tfsTab li.tfsOn {color:var(--blue); background:#fff; opacity:1;}
#tfsWrap .topFunctionSection__list__item {width:100%;}
}

@media screen and (max-width: 320px) {
#tfsTab {gap:5px 5px; padding:5px 5px 0 5px;}
#tfsTab li {width:calc((100% - 5px) / 2); font-size:12px; font-size:1.2rem; border-radius:15px;}
#tfsWrap > div {margin:5px 5px; padding:20px 10px 30px 10px; border-radius:15px;}
#tfsWrap .topFunctionSection + .topFunctionSection {margin-top:5px !important;}
#tfsWrap > div .modBtn {width:100%; min-width:220px;}
}
/* TOP「eセールスマネージャーでできること」をタブ化 ここまで
===========================================================*/


/* 業種別のLP ここから
===========================================================*/
#lp_industry .header__logo a {pointer-events:none;}
#lp_industry .header__menu__list {display:none;}

#lp_industry .modCta--lpBottom {padding-bottom:0;}

#lp_industry .footer {margin-top:-80px; padding-top:0; padding-bottom:0; background:transparent;}
#lp_industry .footer:before {content:none;}
#lp_industry .footer__contact,
#lp_industry .footer__menu,
#lp_industry .footer__serviceMenu,
#lp_industry .footer__companyMenu,
#lp_industry .footer__bottom a {display:none;}
#lp_industry .footer__bottom__copyright {margin:20px 0 10px 0;}

@media screen and (max-width: 1023px) {
#lp_industry .header__menu__cta {margin:0 0;}
#lp_industry .footer {margin-bottom:80px;}
}
/* 業種別のLP ここまで
===========================================================*/


/* 申込フォーム直接埋込（SATORI） ここから
===========================================================*/
div.satori__custom_form select,
div.satori__custom_form input[type=checkbox] {webkit-appearance:auto; -moz-appearance:auto; appearance:auto;}

div.satori__custom_form {margin:0 auto; padding:0 20px 30px 20px; font-size:14px; line-height:1.6; background:#E0F5FC; border-radius:20px;}
div.satori__custom_form span.satori__require,
div.satori__custom_form span.satori__not_require {display:none;}
div.satori__custom_form div.satori__input_group div.satori__error_messages {display:none !important; visibility:hidden;}

div.satori__custom_form > div.satori__input_group {position:relative; display:flex; flex-wrap:wrap; justify-content:start; align-items:center; gap:10px 10px; padding:20px 10px; border-bottom:1px solid #e3e3e3;}
div.satori__custom_form > div.satori__input_group > label:nth-of-type(1) {margin:0 0; padding:0 0; width:100%; color:#333;}
div.satori__custom_form > div.satori__input_group > label:has(.satori__require) {font-weight:600;}

div.satori__custom_form a {color:#0077c3; text-decoration:underline;}
div.satori__custom_form a:hover {color:#0077c3; opacity:0.7;}

div.satori__custom_form div.satori__input_group input[type=text],
div.satori__custom_form div.satori__input_group input[type=tel],
div.satori__custom_form div.satori__input_group input[type=email],
div.satori__custom_form div.satori__input_group select,
div.satori__custom_form div.satori__input_group textarea {padding:10px 10px; background-color:#fff !important; border-color:#e3e3e3 !important; box-shadow:none; border-radius:10px;}
div.satori__custom_form div.satori__input_group textarea {min-height:80px;}

div.satori__custom_form select {padding:10px 10px; width:100%; height:auto;}

div.satori__custom_form div input[type=radio],
div.satori__custom_form > div.satori__input_group input[type=checkbox] {position:absolute; width:1px; height:1px; z-index:-10; opacity:0;}
div.satori__custom_form div label:nth-of-type(n+2) {display:inline-block; margin:0 0; padding:5px 10px; font-size:14px; line-height:1.5; text-align:left; color:#333; background:#fff; border:1px solid #e3e3e3; border-radius:10px;}
div.satori__custom_form div label:nth-of-type(n+2):hover {border:1px solid #0077c3;}

div.satori__custom_form div input[type=radio]:checked + label,
div.satori__custom_form > div.satori__input_group input[type=checkbox]:checked + label {color:#fff; background:#0077c3; border:1px solid #0077c3;}
div.satori__custom_form div input[type=checkbox] + label {margin:0 0; padding:0 0; font-size:12px; color:#333;}
div.satori__custom_form div input[type=checkbox] + label:hover {color:#0077c3;}
div.satori__custom_form div input[type=checkbox]:checked + label {color:#0077c3;}
div.satori__custom_form > div.satori__input_group input[type=checkbox] + label {font-size:14px;}

div.satori__custom_form div#satori__privacy_policy_agreement_wrapper {padding:20px 20px 0 20px;}
div.satori__custom_form div#satori__privacy_policy_agreement_wrapper > p {margin:0 0; padding:0 0; font-size:14px; text-align:center;}
div.satori__custom_form div#satori__privacy_policy_agreement_wrapper > div.satori__input_group {display:flex; justify-content:center; align-items:center; gap:0 10px; padding:5px 0 0 0;}
div.satori__custom_form div#satori__privacy_policy_agreement_wrapper > div.satori__input_group label {font-size:14px;}

div.satori__custom_form p.satori__submit_group {display:flex; flex-wrap:wrap; justify-content:center; gap:10px 10px; margin:20px auto 0 auto; padding:0 10px;}
div.satori__custom_form p.satori__submit_group input.satori__btn {margin:0 0; padding:15px 10px; width:100%; max-width:300px; font-size:16px; line-height:1.6; font-weight:600; color:#fff; border-radius:50px; cursor:pointer; background:#0277C3; transition:all 0.3s ease-in-out;}
div.satori__custom_form p.satori__submit_group input.satori__btn:hover {opacity:1; filter:brightness(1.2);}
div.satori__custom_form p.satori__submit_group input.satori__btn.cancel {font-weight:400; color:#222; background:#ccc;}

div.satori__custom_form .ng_mail label:has(.satori__require) + input[type=email] {background-color:#fdd !important;}
div.satori__custom_form .ng_mail::after {content:""; display:block; width:100%; height:15px; background:url(/form/img/error_msg_ng_mail.png) no-repeat 0 0 / auto 10px;}

div.satori__custom_form p.satori__message a {color:#0077c3 !important;}

div.satori__custom_form .satori__system_notes {font-size:80%; font-weight:400;}
div.satori__custom_form > div.satori__input_group:has(textarea) .satori__system_notes {display:none; opacity:0;}


div.satori__custom_form div.satori__input_group.error > label:nth-of-type(1)::after,
div.satori__custom_form div.satori__horiz_group:has(.error)::after {display:inline-block; content:"必須です"; padding:2px 4px; font-size:10px; line-height:12px; font-weight:400; text-align:left; color:#fff; background:#e51b00; border-radius:4px; transform:translate(0, -1px); -webkit-transform:translate(0, -1px); -ms-transform:translate(0, -1px);}

div.satori__custom_form div.satori__horiz_group:has(.error)::after {position:absolute; top:25px; left:40px;}


div.satori__custom_form > div.satori__horiz_group {gap:10px 10px; position:relative; padding:20px 10px; border-bottom:1px solid #e3e3e3;}
div.satori__custom_form > div.satori__horiz_group:has(div.satori__customer_last_name)::before {content:"氏名"; display:block; width:100%; font-weight:600; text-align:left;}
div.satori__custom_form > div.satori__horiz_group > div {position:relative; padding:0 0; width:calc(50% - 10px); flex-basis:calc(50% - 10px);}
div.satori__custom_form > div.satori__horiz_group > div input {width:100%;}
div.satori__custom_form > div.satori__horiz_group > div label {display:none;}
div.satori__custom_form > div.satori__horiz_group > div input + .satori__error_messages {margin-top:5px;}
/* 申込フォーム直接埋込（SATORI） ここまで
===========================================================*/


/* フローティングバナー ここから
===========================================================*/
#fltBnr {display:none; justify-content:end; position:fixed; right:20px; bottom:20px; width:320px; height:320px; z-index:100; border-radius:4px; transition:all, 0.6s;}
#fltBnr a {display:block; width:100%; height:100%; background:#fff; border-radius:4px; overflow:hidden; transition:all, 0.6s; filter:drop-shadow(0px 0px 2px #ccc);}
#fltBnr a:hover {opacity:1;}
#fltBnr a img {width:auto; height:auto; max-width:100%; max-height:100%; transition:all, 0.3s;}
#fltBnr a:hover img {opacity:0.7;}
#fltBnr span {display:block; position:absolute; right:-10px; top:-10px; width:40px; height:40px; font-size:20px; line-height:40px; text-align:center; border-radius:40px; background:#fff; cursor:pointer; user-select:none; transition:all, 0.3s; filter:drop-shadow(0px 0px 2px #ccc); transform:rotate(45deg);}
#fltBnr span:hover {background:#f6f6f6;}
#fltBnr span::before {content:"+";}

#fltBnr.fltBnrOff {bottom:340px; width:0; height:0;}
#fltBnr.fltBnrOff a {width:0; height:0;}
#fltBnr.fltBnrOff span {transform:rotate(0deg);}
/* フローティングバナー ここまで
===========================================================*/


/* TOP 導入企業ロゴ横スクロール ここから
===========================================================*/
.topAnchor__inner .scroll_logo {margin:0 auto 40px auto; padding:0 0; overflow:hidden;}
.topAnchor__inner .scroll_logo picture {display:flex; margin:0 0; padding:0 0; width:max-content; animation:scroll_logo_RtoL 60s linear infinite;}
.topAnchor__inner .scroll_logo picture span {display:block; width:auto; height:124px;}
.topAnchor__inner .scroll_logo picture span img {display:block; width:auto; height:auto; max-width:100%; max-height:100%;}

@keyframes scroll_logo_RtoL {
from {transform:translateX(0%);}
to {transform:translateX(-50%);}
}

.topSection--functions {padding-top:0;}

@media screen and (max-width: 1023px) {
.topAnchor__inner_250227bk .scroll_logo {margin:0 auto 20px auto;}
.topAnchor__inner .scroll_logo {margin:0 auto;}
.topAnchor__inner .scroll_logo picture span {height:62px;}
}
/* TOP 導入企業ロゴ横スクロール ここまで
===========================================================*/


/* lp-crm_sfa11 導入企業ロゴ横スクロール ここから
===========================================================*/
.main--lpa11 .mainAnchor {background:transparent;}

@media screen and (min-width: 1024px) {
.main--lpa11 .kv {background-color:transparent;}
.main--lpa11 .section--logo {padding:50px 0 8vw 0;}
.main--lpa11 .section--logo .topAnchor__inner {padding:0 0; border:none; box-shadow:none;}
.main--lpa11 .section--logo .topAnchor__inner .scroll_logo {margin:0 auto;}
.main--lpa11 .section--crm {background:#e2f7f8;}
.main--lpa11 .section--interview.section--lightBlue {background:#fff;}
.main--lpa11 .section--case.section--lightBlue {background:#fff;}
.main--lpa11 .section--case + .section--cta.section--lightBlue {background:#fff;}
.main--lpa11 .section--interview .interviewBlock__item {-webkit-box-shadow:0 5px 10px 2px rgba(0, 46, 75, 0.1); box-shadow:0 5px 10px 2px rgba(0, 46, 75, 0.1);}
.main--lpa11 .section--crm:before {background-image: url(/wp-content/themes/esm/assets/img/lp-u15/bg_case_bg.svg);}
.main--lpa11 .section--interview:before {background-image: url(/wp-content/themes/esm/assets/img/lp-u15/bg_case.svg);}
}

@media screen and (max-width: 1023px) {
.main--lpa11 .section--logo .topAnchor__inner {padding:20px 0;}
.main--lpa11 .section--logo .topAnchor__inner .scroll_logo {margin:0 auto;}
.main--lpa11 .mainAnchor {padding:0 0 60px;}
.main--lpa11 .section--crm {padding:0 20px 20% !important;}
.main--lpa11 .section--crm:before {content:none;}
}
/* lp-crm_sfa11 導入企業ロゴ横スクロール ここまで
===========================================================*/


/* lp-crm_sfa11 動画埋め込み ここから
===========================================================*/
.main--lpa11 .section--logo #movieWrap {margin:60px auto 0 auto; padding:0 20px; max-width:512px; text-align:center;}
.main--lpa11 .section--logo #movieWrap .topMovieBlock iframe {border:none; border-radius:4px;}
.main--lpa11 .section--logo #movieWrap p {display:inline-block; margin:10px auto 0 auto; padding:10px 40px; font-size:16px; line-height:20px; font-weight:700; color:#fff; background:#D01748; white-space:nowrap; box-sizing:border-box; clip-path:polygon(0 0, 100% 0, calc(100% - 10px) 50%, 100% 100%, 0 100%, 10px 50%);}

@media screen and (max-width: 768px) {
.main--lpa11 .section--logo #movieWrap {margin:40px auto;}
}

@media screen and (max-width: 430px) {
.main--lpa11 .section--logo #movieWrap p {margin:5px auto 0 auto; padding:10px 10px; width:100%;}
}

@media screen and (max-width: 320px) {
.main--lpa11 .section--logo #movieWrap p {font-size:14px; line-height:15px;}
}
/* lp-crm_sfa11 動画埋め込み ここまで
===========================================================*/


/* 料金 スマホ表示改善 ここから
===========================================================*/
.mts_price table tr td .modBtn {min-width:0 !important; border-radius:9999px;}
.mts_price table tr td .modBtn > span {display:flex; font-size:80%; white-space:nowrap;}
.mts_price table tr td > span {display:block; font-size:80%; font-weight:400; border-radius:0 !important;}

.mts_priceOption table tr th.prop_ttl {padding-left:25px; text-align:left;}

@media screen and (max-width: 1023px) {
.mts_price table.modTableScroll__table--price .modTableScroll__table__title--first>:first-child,
.mts_price table.modTableScroll__table--price .modTableScroll__table__title--first>:last-child ,
.mts_price table.modTableScroll__table--price .modTableScroll__table__title--last>:first-child,
.mts_price table.modTableScroll__table--price .modTableScroll__table__title--last>:last-child {border-radius:0;}
.mts_price table.modTableScroll__table--price .modTableScroll__table__title--first th:last-child {width:auto;}
.mts_price table.modTableScroll__table--price .modTableScroll__table__title--sub td {color:#222; background:#fff;}
.mts_price {width:100%; border:1px solid #E8E8E8; border-radius:20px; overflow:hidden;}
.mts_price table {width:calc(100% + 2px) !important; white-space:normal; border:none; border-collapse:collapse; transform:translate(-1px, 0); -webkit-transform:translate(-1px, 0); -ms-transform:translate(-1px, 0);}
.mts_price table tr th {position:relative;}
.mts_price table tr th,
.mts_price table tr td {padding:10px 5px; min-width:0; border:1px solid #E8E8E8;}
.mts_price table tr:nth-of-type(1) th,
.mts_price table tr:nth-of-type(1) td {border-top:none;}
.mts_price table tr:nth-last-of-type(1) th,
.mts_price table tr:nth-last-of-type(1) td {border-bottom:none;}
.mts_price table tr td > span {max-width:175px; text-align:left;}
.mts_price table tr td > span br {display:none;}
.mts_price table tr th:first-child,
.mts_price table tr td:first-child {width:auto; min-width:0;}
.mts_price table tr td .modBtn {min-height:52px; font-size:16px; font-size:1.6rem;}
.mts_price table.modTableScroll__table--price .modTableScroll__table__content--color td {vertical-align:top;}
.mts_price table.modTableScroll__table--price .modTableScroll__table__title--sub td > span {text-align:center;}
}

@media screen and (max-width: 430px) {
.mts_price table tr {display:flex; flex-wrap:wrap;}
.mts_price table tr th,
.mts_price table tr td {border:none;}
.mts_price table tr th:nth-of-type(1) {width:100%;}
.mts_price table tr th:nth-of-type(n+2),
.mts_price table tr td {width:calc(100% / 3); border:none; background:#fff;}
.mts_price table tr th:nth-of-type(3),
.mts_price table tr td:nth-of-type(2) {border-left:1px solid #e8e8e8; border-right:1px solid #e8e8e8;}
.mts_price table tr th.clspn {width:100% !important; border-bottom:1px solid #fff;}
.mts_price table tr th br {display:none;}
.mts_price table tr td .modBtn {width:100%; padding:10px 5px; min-height:0; font-size:14px; font-size:1.4rem; text-align:center; background:var(--orange);}
.mts_price table tr td .modBtn > span:after {content:none;}
.mts_price .br_pc {display:none;}
}
/* 料金 スマホ表示改善 ここまで
===========================================================*/


/* 料金表自体をリニューアル ここから
===========================================================*/
.table_wrap {margin:0 auto; padding:0 0; overflow-x:auto;}
.table_wrap table {width:100%; border:1px solid #E8E8E8; border-collapse:separate; border-spacing:0; border-radius:20px; overflow:hidden;}
.table_wrap table tr th {padding:15px 30px; font-weight:600; text-align:left; white-space:nowrap; background:#F7F7F7; border-left:1px solid #E8E8E8; border-bottom:1px solid #E8E8E8;}
.table_wrap table tr th.bdb_none {border-bottom:none;}
.table_wrap table tr th span {display:inline-block;}
.table_wrap table tr td {padding:15px 30px; text-align:left; background:#fff; border-left:1px solid #E8E8E8; border-bottom:1px solid #E8E8E8;}
.table_wrap table tr td > span {display:inline-block; white-space:nowrap;}
.table_wrap table tr td.sub_th {font-weight:600; line-height:1.7; background:#F7F7F7;}
.table_wrap table tr td.sub_th span {display:inline-block;}
.table_wrap table tr.row_point td {vertical-align:top;}
.table_wrap table tr.row_point td strong {display:inline-block; margin:0 0 10px 0; font-size:22px; font-size:2.2rem; line-height:1.5;}
.table_wrap table tr th:nth-of-type(1) {border-left:none;}
.table_wrap table tr:nth-last-of-type(1) th,
.table_wrap table tr:nth-last-of-type(1) td {border-bottom:none;}
.table_wrap table tr td .modBtn {min-width:0; box-shadow:none;}
.table_wrap table tr td .modBtn > span {display:flex; white-space:nowrap;}
.table_wrap br.br_tab {display:none;}
.table_wrap br.br_sp {display:none;}
.modListDisc li div {text-indent:0; margin:10px 0; padding:0 0;}
.modListDisc li div dl {display:inline-block; border:1px solid #E8E8E8; border-radius:20px; overflow:hidden;}
.modListDisc li div dl dt {padding:15px 30px; font-weight:600; text-align:left; white-space:nowrap; background:#F7F7F7; border-bottom:1px solid #E8E8E8;}
.modListDisc li div dl dd {padding:15px 30px; text-align:left; background:#fff;}
.modListDisc li div dl dd span {display:inline-block;}

@media screen and (max-width: 1023px) {
.table_wrap table tr th {padding:15px 10px;}
.table_wrap table tr th span {font-size:80%;}
.table_wrap table tr td {padding:15px 10px;}
.table_wrap table tr td:has(span) {line-height:1;}
.table_wrap table tr td > span {display:inline; font-size:80%; line-height:1.5; white-space:normal;}
.table_wrap table tr.row_point td span br {display:none;}
.table_wrap table tr td .modBtn {min-height:52px; font-size:16px; font-size:1.6rem;}
.table_wrap table tr td.sub_th {line-height:1.7;}
.table_wrap table tr td.sub_th span {font-size:80%;}
.table_wrap br.br_tab {display:block;}
.modListDisc li div dl dt {padding:15px 10px;}
.modListDisc li div dl dd {padding:15px 10px;}
}

@media only screen and (max-width: 430px) {
.table_wrap table.clm-2 tr,
.table_wrap table.clm-3 tr {display:flex; flex-wrap:wrap;}
.table_wrap table.clm-2 tr th:nth-of-type(1),
.table_wrap table.clm-3 tr th:nth-of-type(1) {width:100%; text-align:center;}
.table_wrap table.clm-2 tr td {width:100%; text-align:center; border-left:none;}
.table_wrap table.clm-3 tr td {width:calc(100% / 2); text-align:center;}
.table_wrap table.clm-3 tr td:nth-of-type(1) {border-left:none;}
.table_wrap table tr th span {display:block;}
.table_wrap table tr td > span {display:inline-block; text-align:left;}
.table_wrap table tr td .modBtn {width:100%; padding:10px 5px; min-height:0; font-size:14px; font-size:1.4rem; text-align:center;}
.table_wrap table tr td .modBtn > span:after {content:none;}
.table_wrap br.br_sp {display:block;}
}
/* 料金表自体をリニューアル ここまで
===========================================================*/


/* TOP CMモチーフのKV ここから
===========================================================*/
.zzztopKv.topKv-CM {display:block; background:#000 url(/wp-content/themes/esm/assets/img/top/img_kv.webp) no-repeat 50% 5% / cover;}
.topKv-CM .topKv__box {position:relative; display:block;}
.topKv-CM .topKv__box__title span {position:absolute; left:5%; bottom:-7px; font-size:10px; line-height:1; height:5px; max-width:90%; color:var(--blue); z-index:-100; overflow:hidden; opacity:0; user-select:none;}

@media screen and (min-width: 1024px) {
.topKv-CM .topKv__inner {padding:82px 0 0 0;}
.topKv-CM .topKv__box::before {content:""; display:block; position:absolute; left:5%; top:5%; margin:0 0; padding:0 0; width:90%; height:25vh; background:url(/wp-content/themes/esm/assets/img/top/title_kv_wide.svg) no-repeat left 50% top 0 / contain; filter:drop-shadow(0px 0px 10px #000);}
.topKv-CM .topKv__box__title {height:auto;}
.topKv-CM .topKv__box__btn {position:absolute; left:5%; bottom:5%; margin:0 0;}
.topKv-CM .topKv__box__btn::before {content:""; display:block; position:absolute; left:0; top:0; transform:translate(0, -130%); margin:0 0; padding-top:calc(10.3% * 1.02); width:102%; height:0; background:url(/wp-content/themes/esm/assets/img/top/title_txt.png) no-repeat left 50% top 0 / contain; filter:drop-shadow(0px 0px 10px #000);}
}

@media screen and (max-width: 1023px) {
.zzztopKv.topKv-CM {max-height:100%; background-position:left 41% top 0;}
.topKv-CM .topKv__inner {padding:56px 0 0 0;}
.topKv-CM .topKv__box {margin:0 auto; padding:0 5%; max-width:600px; min-height:calc(100vh - 56px);}
.topKv-CM .topKv__box__title {margin:0 0; padding:40px 0 0 0;}
.topKv-CM .topKv__box__title::before {content:""; display:block; margin:0 0 20px 0; padding-top:26.3%; width:100%; height:0; background:url(/wp-content/themes/esm/assets/img/top/title_kv_wide.svg) no-repeat left 50% top 0 / contain; filter:drop-shadow(0px 0px 10px #000);}
.topKv-CM .topKv__box__title::after {content:""; display:block; margin:0 0; padding-top:10.3%; width:100%; height:0; background:url(/wp-content/themes/esm/assets/img/top/title_txt.png) no-repeat left 50% top 0 / contain; filter:drop-shadow(0px 0px 10px #000);}
.topKv-CM .topKv__box__text {position:absolute; left:5%; bottom:5%;}
}
/* TOP CMモチーフのKV ここまで
===========================================================*/


/* TOP CMモチーフのKV2 ここから
===========================================================*/
.topKv.topKv-CM {display:block; background:url(/wp-content/themes/esm/assets/img/top/bg_kv.webp) no-repeat 50% 50% / cover;}
.topKv-CM .topKv__box.tkb_2 {display:flex; justify-content:center; align-items:center; padding:90px 0 130px 0;}
.topKv-CM .topKv__box.tkb_2::after {content:""; display:block; position:absolute; left:calc(50% - 25px); bottom:20px; width:50px; height:43px; background:url(/wp-content/themes/esm/assets/img/common/icon_down.png) no-repeat 50% 50% / contain;}
.topKv-CM .topKv__box.tkb_2 h2 {position:relative; width:100%; height:calc(100% - 106px); margin:0 0 40px 0; padding:0 0 0 35px;}
.topKv-CM .topKv__box.tkb_2 h2::before {content:""; display:block; width:100%; height:100%; background:url(/wp-content/themes/esm/assets/img/top/title_kv_pc.svg) no-repeat 0 0 / contain; filter:drop-shadow(0px 3px 12px rgba(0,0,0,0.3));}
.topKv-CM .topKv__box.tkb_2 h2 span {position:absolute; left:6%; top:2px; font-size:5px; line-height:1; height:5px; max-width:90%; color:#FF9301; z-index:-100; overflow:hidden; opacity:0; user-select:none;}

.topKv-CM .topKv__box.tkb_2 .topKv__box__btn {padding:0 0; background:none;}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn .inner > li .modBtn {padding:16px 35px; min-width:280px;}

@media screen and (min-width: 1024px) {
.topKv.topKv-CM {height:780px; min-height:0; max-height:780px;}
.topKv.topKv-CM .topKv__inner {height:780px; min-height:0; max-height:780px;}
.topKv-CM .topKv__box.tkb_2::before {content:""; display:block; position:absolute; left:55%; top:auto; bottom:-5px; width:50%; height:0; padding-top:calc(93.82% * 0.5); background:url(/wp-content/themes/esm/assets/img/top/img_kv_pc.webp) no-repeat 50% 100% / contain; filter:none;}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn {position:static;}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn::before {content:none;}
}

@media screen and (max-width: 1023px) {
.topKv.topKv-CM {max-height:100%; background-image:url(/wp-content/themes/esm/assets/img/top/bg_kv.webp); background-color:rgba(0,100,200,0.3); background-blend-mode:multiply;}
.topKv-CM .topKv__box.tkb_2 {display:block !important; max-width:100%; min-height:0; padding:30px 0 0 0;}
.topKv-CM .topKv__box.tkb_2::after {left:calc(50% - 17px); bottom:15px; width:34px; height:30px;}
.topKv-CM .topKv__box.tkb_2 h2 {width:88%; margin:0 auto 20px auto; padding:0 0;}
.topKv-CM .topKv__box.tkb_2 h2::before {height:0; padding-top:56.5%; background:url(/wp-content/themes/esm/assets/img/top/title_kv_pc.svg) no-repeat 50% 0 / contain; filter:drop-shadow(0px 3px 6px rgba(0,0,0,0.3));}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn {display:block; position:relative; width:92%; margin:0 auto;}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn::before {content:""; display:block; width:100%; height:0; padding-top:calc(74% * 1); background:url(/wp-content/themes/esm/assets/img/top/sp/img_kv_sp.webp) no-repeat 50% 100% / cover;}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn ul {position:absolute; flex-wrap:wrap; gap:20px 0; left:0; bottom:70px; width:45%;}
}

@media screen and (max-width: 430px) {
.topKv-CM .topKv__box.tkb_2 h2 {width:84%; margin:0 auto 10px auto;}
.topKv-CM .topKv__box.tkb_2 h2::before {padding-top:95.8%; background:url(/wp-content/themes/esm/assets/img/top/sp/title_kv_sp.svg) no-repeat 50% 0 / contain; filter:drop-shadow(0px 3px 2px rgba(0,0,0,0.3));}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn {width:100%;}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn::before {padding-top:calc(74% * 1.5);}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn ul {gap:10px 0; left:-25px; bottom:70px; width:50%;}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn .inner > li .modBtn {justify-content:end; padding:10px 10px; min-width:180px; border-radius:0 50px 50px 0;}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn .inner > li .modBtn > span {gap:0 5px;}
.topKv-CM .topKv__box.tkb_2 .topKv__box__btn .inner > li .modBtn > span:after {width:20px; height:20px;}
}
/* TOP CMモチーフのKV2 ここまで
===========================================================*/


/* TOP 動画埋め込み ここから
===========================================================*/
.topAnchor #movieWrap {margin:60px auto; padding:0 20px; max-width:512px; text-align:center;}
.topAnchor #movieWrap .topMovieBlock iframe {border:none; border-radius:4px;}
.topAnchor #movieWrap p {display:inline-block; margin:10px auto 0 auto; padding:10px 40px; font-size:16px; line-height:20px; font-weight:700; color:#fff; background:#D01748; white-space:nowrap; box-sizing:border-box; clip-path:polygon(0 0, 100% 0, calc(100% - 10px) 50%, 100% 100%, 0 100%, 10px 50%);}

@media screen and (max-width: 1023px) {
.topAnchor:has(#movieWrap) .topAnchor__inner {position:relative; padding:0 0 4px 0;}
.topAnchor:has(#movieWrap) .scroll_logo {padding:20px 0; -webkit-box-shadow:10px 20px 30px 0px rgba(0, 46, 75, 0.1); box-shadow:10px 20px 30px 0px rgba(0, 46, 75, 0.1);}
}

@media screen and (max-width: 768px) {
.topAnchor #movieWrap {margin:40px auto;}
.topAnchor #movieWrap + h2 {padding-top:14px; border-top:9px solid var(--blue);}
}

@media screen and (max-width: 430px) {
.topAnchor #movieWrap p {margin:5px auto 0 auto; padding:10px 10px; width:100%;}
}

@media screen and (max-width: 320px) {
.topAnchor #movieWrap p {font-size:14px; line-height:15px;}
}
/* TOP 動画埋め込み ここまで
===========================================================*/


/* TOP MV内に動画埋め込み ここから
===========================================================*/
#fltMovzzz {display:flex; justify-content:end; position:absolute; right:20px; bottom:20px; width:430px; height:330px; z-index:100; border-radius:4px; transition:all, 0.6s;}
#fltMovzzz a {display:block; width:100%; height:100%; background:#fff; border-radius:4px; overflow:hidden; transition:all, 0.6s; filter:drop-shadow(0px 0px 2px #ccc);}
#fltMovzzz a:hover {opacity:1;}
#fltMovzzz a img {width:auto; height:auto; max-width:100%; max-height:100%; transition:all, 0.3s;}
#fltMovzzz a:hover img {opacity:0.7;}
#fltMovzzz span {display:block; position:absolute; right:-10px; top:-20px; width:40px; height:40px; font-size:20px; line-height:40px; text-align:center; border-radius:40px; background:#fff; cursor:pointer; user-select:none; transition:all, 0.3s; filter:drop-shadow(0px 0px 2px #ccc); transform:rotate(45deg);}
#fltMovzzz span:hover {background:#f6f6f6;}
#fltMovzzz span::before {content:"+";}

#fltMovzzz.fltMovOff {bottom:350px; width:0; height:0;}
#fltMovzzz.fltMovOff a {width:0; height:0;}
#fltMovzzz.fltMovOff span {transform:rotate(0deg);}

#fltMovzzz::before {content:"新CM「勝負は顧客接点 編」放映中！"; display:flex; justify-content:center; align-items:center; position:absolute; right:10px; top:-15px; height:30px; padding:0 20px; font-size:16px; line-height:20px; font-weight:700; color:#fff; background:#D01748; white-space:nowrap; box-sizing:border-box; clip-path:polygon(0 0, 100% 0, calc(100% - 10px) 50%, 100% 100%, 0 100%, 10px 50%);}
#fltMovzzz.fltMovOff::before {content:"新CM放映中！";}

#fltMovzzz .topMovieBlock iframe {border:2px solid rgba(255, 255, 255, 0.5);}
#fltMovzzz.fltMovOff .topMovieBlock iframe {border-color:rgba(255, 255, 255, 0);}

@media screen and (max-width: 768px) {
#fltMovzzz {position:absolute; right:5%; bottom:5%; height:auto;}
#fltMovzzz::before {right:5%; top:-35px; width:90%; padding:0 5px;}
#fltMovzzz span {display:none;}
}

@media screen and (max-width: 430px) {
#fltMovzzz {width:90%;}
#fltMovzzz::before {font-size:14px;}
}

@media screen and (max-width: 320px) {
#fltMovzzz::before {font-size:12px;}
}
/* TOP MV内に動画埋め込み ここまで
===========================================================*/


/* TOP モーダル型の動画埋め込み ここから
===========================================================*/
#fltMov {display:none; width:600px; height:460px; position:fixed; left:50%; top:55%; transform:translate(-50%, -50%); -webkit-transform:translate(-50%, -50%); -ms-transform:translate(-50%, -50%); border-radius:0; z-index:-100;}
#fltMov.fltMovShow {display:flex; justify-content:end; z-index:100;}
#fltMov .topMovieBlock iframe {border:none; border-radius:0;}
#fltMov #fltMovHideBtn {display:block; position:absolute; right:-20px; top:-20px; width:50px; height:50px; background:url(/wp-content/themes/esm/assets/img/common/btn01.png) no-repeat left 50% top 50% / contain; cursor:pointer;}
#fltMovArea {display:none; position:fixed; right:0; bottom:0; width:100%; height:100%; background:rgba(0,0,0,0.5); z-index:90;}
#fltMovBnr {position:absolute; right:30px; bottom:15px; width:240px; height:auto; cursor:pointer; transition:all, 0.6s;}
#fltMovBnr:hover {filter:brightness(1.2);}
#fltMovBnr::before {content:""; display:block; width:100%; height:0; padding-top:80%; background:url(/wp-content/themes/esm/assets/img/top/img_bnr_cm01.png) no-repeat left 50% top 50% / contain;}

@media screen and (max-width: 430px) {
#fltMov {width:92%; height:auto;}
#fltMov #fltMovHideBtn {right:-10px; top:-15px; width:30px; height:30px;}
#fltMovBnr {right:4%; bottom:55px; width:46%;}
}
/* TOP モーダル型の動画埋め込み ここまで
===========================================================*/


/* TOP esm flowやappliなどを追加 ここから
===========================================================*/
.topServiceList__item--ai {background-image:url(/wp-content/themes/esm/assets/img/top/bg_service_ai.png);}
.topServiceList__item--appli {background-image:url(/wp-content/themes/esm/assets/img/top/bg_service_appli.png);}
.topServiceList__item--flow {background-image:url(/wp-content/themes/esm/assets/img/top/bg_service_flow.png);}
.topServiceList__item--linkage {background-image:url(/wp-content/themes/esm/assets/img/top/bg_service_linkage.png);}
.topServiceList__item--service {background-image:url(/wp-content/themes/esm/assets/img/top/bg_service_service.png);}

.topServiceList.tSLAdd {gap:20px 20px;}
.topServiceList.tSLAdd .topServiceList__item {width:calc((100% - 40px) / 3); max-width:100%;}
.topServiceList.tSLAdd .topServiceList__item a {margin:20px 20px; padding:10px 0; height:calc(100% - 40px);}

.topServiceList.tSLAdd .topServiceList__item a p.lead {display:flex; flex-direction:column; justify-content:center; align-items:center; gap:5px 0; background:none; height:auto; line-height:1.3;}
.topServiceList.tSLAdd .topServiceList__item a p.lead span {display:inline-block; width:100%; margin:0 0; padding:0 0;}
.topServiceList.tSLAdd .topServiceList__item a p.lead span:nth-of-type(1) {order:1;}
.topServiceList.tSLAdd .topServiceList__item a p.lead span:nth-of-type(2) {order:3;}
.topServiceList.tSLAdd .topServiceList__item a p.lead span:nth-of-type(3) {order:2; display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:10px 10px; width:calc(100% - 30px); height:44px; border-radius:100px;}
.topServiceList.tSLAdd .topServiceList__item a p.lead span:nth-of-type(3) img {width:auto; height:auto; max-height:34px;}

.topServiceList.tSLAdd .topServiceList__item:nth-of-type(1) a p.lead {color:#12b293;}
.topServiceList.tSLAdd .topServiceList__item:nth-of-type(1) a p.lead span:nth-of-type(3) {background:#12b293;}

.topServiceList.tSLAdd .topServiceList__item:nth-of-type(2) a p.lead {color:#0077c3;}
.topServiceList.tSLAdd .topServiceList__item:nth-of-type(2) a p.lead span:nth-of-type(3) {background:#0077c3;}

.topServiceList.tSLAdd .topServiceList__item:nth-of-type(3) a p.lead {color:#f9be00;}
.topServiceList.tSLAdd .topServiceList__item:nth-of-type(3) a p.lead span:nth-of-type(3) {background:#f9be00;}

.topServiceList.tSLAdd .topServiceList__item:nth-of-type(4) a p.lead {color:#0081D8;}
.topServiceList.tSLAdd .topServiceList__item:nth-of-type(4) a p.lead span:nth-of-type(3) {background:#0081D8;}

.topServiceList.tSLAdd .topServiceList__item:nth-of-type(5) a p.lead {color:#4b5151;}
.topServiceList.tSLAdd .topServiceList__item:nth-of-type(5) a p.lead span:nth-of-type(3) {background:#4b5151;}

.topServiceList.tSLAdd .topServiceList__item:nth-of-type(6) a p.lead {color:#2e3fbc;}
.topServiceList.tSLAdd .topServiceList__item:nth-of-type(6) a p.lead span:nth-of-type(3) {background:#2e3fbc;}

.topServiceList.tSLAdd .topServiceList__item a .img {display:flex; justify-content:center; align-items:center; margin:10px 0 0 0; height:48px;}
.topServiceList.tSLAdd .topServiceList__item a .img img {width:auto; height:32px; max-height:100%;}
.topServiceList.tSLAdd .topServiceList__item:nth-of-type(2) a .img img {height:48px;}
.topServiceList.tSLAdd .topServiceList__item:nth-of-type(4) a .img img {height:28px;}

@media screen and (max-width: 1023px) {
.topServiceList.tSLAdd {gap:15px 15px;}
.topServiceList.tSLAdd .topServiceList__item {width:calc((100% - 15px) / 2);}
.topServiceList.tSLAdd .topServiceList__item a {margin:15px 15px; height:calc(100% - 30px);}
.topServiceList.tSLAdd .topServiceList__item a p.lead {height:auto;}
}

@media screen and (max-width: 430px) {
.topServiceList.tSLAdd .topServiceList__item {width:100%;}
}

@media screen and (max-width: 320px) {
.topServiceList.tSLAdd .topServiceList__item a {margin:10px 10px; height:calc(100% - 20px);}
.topServiceList.tSLAdd .topServiceList__item a p.lead {font-size:13px; font-size:1.3rem;}
.topServiceList.tSLAdd .topServiceList__item a p.lead span:nth-of-type(3) {width:calc(100% - 20px);}
.topServiceList.tSLAdd .topServiceList__item a p.lead span:nth-of-type(3) img {max-height:28px;}
.topServiceList.tSLAdd .topServiceList__item a .img {height:38px;}
.topServiceList.tSLAdd .topServiceList__item a .img img {height:28px; max-height:100%;}
.topServiceList.tSLAdd .topServiceList__item:nth-of-type(2) a .img img {height:38px;}
.topServiceList.tSLAdd .topServiceList__item:nth-of-type(4) a .img img {height:24px;}
}
/* TOP esm flowやappliなどを追加 ここまで
===========================================================*/


/* ヘッダーとフッターの製品ロゴ変更 ここから
===========================================================*/
.header__logo > * {max-height:54px; background:url(/wp-content/themes/esm/assets/img/common/logo.svg) no-repeat 0 0; background-size:contain; aspect-ratio:3 / 1;}
.footer__contact__logo > * {max-height:58px; background:url(/wp-content/themes/esm/assets/img/common/logo_white.svg) no-repeat 0 0; background-size:contain; aspect-ratio:3 / 1;}

@media screen and (max-width: 1023px) {
.header {padding:10px 20px;}
.header__logo > * {max-height:36px;}
.footer__contact__logo > * {max-height:40px;}
}
/* ヘッダーとフッターの製品ロゴ変更 ここまで
===========================================================*/


/* TOP カラー背景ボタンに白DLアイコン ここから
===========================================================*/
.topCtaBtnList__item .modBtn--color--download > span:after {
    background-image:url(/wp-content/themes/esm/assets/img/common/icon_download_white.svg);
}
/* TOP カラー背景ボタンに白DLアイコン ここまで
===========================================================*/


/* TOP CTAボタンの上にメッセージ追加 ここから
===========================================================*/
.tcblPlus .topCtaBtnList__item {text-align:center;}
.tcblPlus .topCtaBtnList__item > span {display:block; margin:0 auto 25px auto; font-size:14px; line-height:1.6; text-align:center; color:#fff;}

@media screen and (max-width: 1023px) {
.topCtaBtnList.tcblPlus {gap:40px 0;}
}
/* TOP CTAボタンの上にメッセージ追加 ここまで
===========================================================*/


/* タブレット表示でのサムネイル改善 ここから
===========================================================*/
@media screen and (max-width: 1023px) {
.topSection--case .modListArticle__item__img img,
.topSection--support .modListArticle__item__img img,
.topSection--seminar .modListArticle__item__img img {max-height:100%;}

.modListArticle--case .modListArticle__item__img img {max-height:100%;}

.slick-next:hover, .slick-prev:hover {background:#fff;}
}
/* タブレット表示でのサムネイル改善 ここまで
===========================================================*/


/* セミナー申込・締切・終了の改善関連 ここから
===========================================================*/
#seminarOpen,
#seminarClose,
#seminarEnd {margin-top:0;}

@media screen and (min-width: 1024px) {
#seminarArticle.article dl:not([class]) dd:nth-last-of-type(1) {padding-bottom:0;}
}
@media screen and (max-width: 1023px) {
#seminarArticle.article dl:not([class]) dd:nth-last-of-type(1) {padding-bottom:0;}
}
/* セミナー申込・締切・終了の改善関連 ここまで
===========================================================*/


/* 各種サービスLPのヘッダーに相互リンク ここから
===========================================================*/
.hml_add {display:flex; justify-content:end; align-items:center; min-height:50px;}
.hml_add .item {position:relative; display:flex; align-items:center; gap:8px; cursor:pointer;}
.hml_add .item::after {content:""; width:6px; height:6px; border-right:2.5px solid #666; border-bottom:2.5px solid #666; -webkit-transform:rotate(45deg); transform:rotate(45deg); display:block; -webkit-transition:all 0.3s ease; transition:all 0.3s ease;}
.hml_add .item:hover::after {-webkit-transform:translate(0, 3px) rotate(45deg); transform:translate(0, 3px) rotate(45deg);}
.hml_add .item > a {font-size:clamp(12px, 1.1vw, 16px); font-weight:700;}

.hml_add .item .item__serviceMenu ul {width:100%; display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px 10px; margin:0 0; padding:0 0; list-style:none;}
.hml_add .item .item__serviceMenu ul li {width:calc((100% - 50px) / 6); margin:0 0; padding:0 0; text-align:center;}
.hml_add .item .item__serviceMenu ul li a {position:relative; display:block; padding:5px 5px; border-radius:10px; transition:all 0.3s ease-in-out;}
.hml_add .item .item__serviceMenu ul li a:hover {-webkit-transform:scale(1.05); transform:scale(1.05);}
.hml_add .item .item__serviceMenu ul li a dl {margin:0 0; padding:10px 0; background:#fff; border-radius:5px;}
.hml_add .item .item__serviceMenu ul li a dl::after {content:""; display:block; margin:0 auto; width:calc(100% - 20px); height:25px;}
.hml_add .item .item__serviceMenu ul li a dl dt {margin:0 auto; padding:5px 2px; width:calc(100% - 20px); font-size:14px; line-height:1.2; font-weight:700; text-align:center; letter-spacing:0.5px; color:#fff; background:#666; border-radius:50px;}
.hml_add .item .item__serviceMenu ul li a dl dt span {font-size:12px;}
.hml_add .item .item__serviceMenu ul li a dl dd {margin:0 auto 5px auto; padding:0 0; width:calc(100% - 4px); font-size:10px; line-height:2; font-weight:700; letter-spacing:0.5px;}

.hml_add .item .item__serviceMenu ul li.ism_esm a {background:url(/wp-content/themes/esm/assets/img/top/bg_service_functions.png) no-repeat 50% 50% / cover;}
.hml_add .item .item__serviceMenu ul li.ism_ma a {background:url(/wp-content/themes/esm/assets/img/top/bg_service_marketing.png) no-repeat 50% 50% / cover;}
.hml_add .item .item__serviceMenu ul li.ism_sv a {background:url(/wp-content/themes/esm/assets/img/top/bg_service_service.png) no-repeat 50% 50% / cover;}
.hml_add .item .item__serviceMenu ul li.ism_ai a {background:url(/wp-content/themes/esm/assets/img/top/bg_service_ai.png) no-repeat 50% 50% / cover;}
.hml_add .item .item__serviceMenu ul li.ism_wf a {background:url(/wp-content/themes/esm/assets/img/top/bg_service_flow.png) no-repeat 50% 50% / cover;}
.hml_add .item .item__serviceMenu ul li.ism_nc a {background:url(/wp-content/themes/esm/assets/img/top/bg_service_appli.png) no-repeat 50% 50% / cover;}

.hml_add .item .item__serviceMenu ul li.ism_esm a dl::after {background:url(/wp-content/themes/esm/assets/img/common/logo_esm.svg) no-repeat 50% 50% / contain;}
.hml_add .item .item__serviceMenu ul li.ism_ma a dl::after {background:url(/wp-content/themes/esm/assets/img/common/logo_marketing.svg) no-repeat 50% 50% / contain;}
.hml_add .item .item__serviceMenu ul li.ism_sv a dl::after {background:url(/wp-content/themes/esm/assets/img/common/logo_service.svg) no-repeat 50% 50% / contain;}
.hml_add .item .item__serviceMenu ul li.ism_ai a dl::after {background:url(/wp-content/themes/esm/assets/img/common/logo_ai.svg) no-repeat 50% 50% / contain;}
.hml_add .item .item__serviceMenu ul li.ism_wf a dl::after {background:url(/wp-content/themes/esm/assets/img/common/logo_flow.svg) no-repeat 50% 50% / contain;}
.hml_add .item .item__serviceMenu ul li.ism_nc a dl::after {background:url(/wp-content/themes/esm/assets/img/common/logo_appli.svg) no-repeat 50% 50% / contain;}

.hml_add .item .item__serviceMenu ul li.ism_esm a dl dt {background:#0077C3;}
.hml_add .item .item__serviceMenu ul li.ism_ma a dl dt {background:#12B293;}
.hml_add .item .item__serviceMenu ul li.ism_sv a dl dt {background:#F9BE00;}
.hml_add .item .item__serviceMenu ul li.ism_ai a dl dt {background:#0081D8;}
.hml_add .item .item__serviceMenu ul li.ism_wf a dl dt {background:#4B5151;}
.hml_add .item .item__serviceMenu ul li.ism_nc a dl dt {background:#2E3FBC;}

.hml_add .item .item__serviceMenu ul li.ism_esm a dl dd {color:#0077C3;}
.hml_add .item .item__serviceMenu ul li.ism_ma a dl dd {color:#12B293;}
.hml_add .item .item__serviceMenu ul li.ism_sv a dl dd {color:#F9BE00;}
.hml_add .item .item__serviceMenu ul li.ism_ai a dl dd {color:#0081D8;}
.hml_add .item .item__serviceMenu ul li.ism_wf a dl dd {color:#4B5151;}
.hml_add .item .item__serviceMenu ul li.ism_nc a dl dd {color:#2E3FBC;}

.hml_add .item .item__serviceMenu p {width:100%; margin:20px 0 0 0; padding:0 0; text-align:center;}
.hml_add .item .item__serviceMenu p a {display:inline-block; padding:15px 25px; min-width:200px; font-size:clamp(14px, 1.4vw, 18px); line-height:20px; text-align:center; font-weight:600; letter-spacing:1px; color:#fff; background:#666; border-radius:50px; transition:all 0.3s ease-in-out;}
.zzzhml_add .item .item__serviceMenu p a:hover {filter:brightness(0.9);}
.hml_add .item .item__serviceMenu p a:hover {-webkit-transform:scale(1.05); transform:scale(1.05);}
.hml_add .item .item__serviceMenu p a span {position:relative;}
.hml_add .item .item__serviceMenu p a span:nth-last-of-type(1) {padding:0 25px 0 5px;}
.hml_add .item .item__serviceMenu p a span:nth-last-of-type(1)::after {content:""; display:inline-block; position:absolute; right:0; top:50%; transform:translate(0, -50%); -webkit-transform:translate(0, -50%); -ms-transform:translate(0, -50%); width:20px; height:20px; background:url(/wp-content/themes/esm/assets/img/common/icon_download_lightBlue.svg) no-repeat 50% 50% / contain;}

.header--esmMarketing .hml_add .item::after {border-color:var(--greenLight);}
.header--esmMarketing .hml_add .item .item__serviceMenu p a {background:var(--greenLight);}
.zzzheader--esmMarketing .hml_add .item .item__serviceMenu p a::before {background:var(--green);}

.header--service-edition .header__menu__list.hml_add {display:flex;}
.header--service-edition .hml_add .item > a {color:#fff;}
.header--service-edition .hml_add .item::after {border-color:#fff;}
.header--service-edition .hml_add .item .item__serviceMenu p a {background:var(--blueEdition);}
.zzzheader--service-edition .hml_add .item .item__serviceMenu p a::before {background:var(--lightBlue);}

.header--esmAiConcierge .hml_add .item::after {border-color:#0081D8;}
.header--esmAiConcierge .hml_add .item .item__serviceMenu p a {background:#0081D8;}

.header--esmFlow .hml_add .item::after {border-color:#319EDA;}
.header--esmFlow .hml_add .item .item__serviceMenu p a {background:#319EDA;}

.header--esmAppli .hml_add .item::after {border-color:#2E3FBC;}
.header--esmAppli .hml_add .item .item__serviceMenu p a {background:#2E3FBC;}

@media screen and (min-width: 1024px) {
.hml_add .item .item__serviceMenu {opacity:0; visibility:hidden; display:block; position:fixed; left:50%; top:65px; width:96vw; max-width:1200px; transform:translate(-50%, 0); -webkit-transform:translate(-50%, 0); -ms-transform:translate(-50%, 0); padding:35px 0 0 0; -webkit-transition:all 0.3s ease-in-out; transition:all 0.3s ease-in-out; background:transparent; border-radius:0;}
.hml_add .item:hover .item__serviceMenu {opacity:1; visibility:visible;}
.hml_add .item .item__serviceMenu .ism_inner {display:flex; flex-wrap:wrap; justify-content:center; padding:20px 20px; background:rgba(255,255,255,0.85); border-radius:20px; box-shadow:0px 20px 30px 10px rgba(0, 46, 75, 0.1);}
.header--esmMarketing .hml_add .item > a::after {background:var(--greenLight);}
.header--service-edition .hml_add .item > a::after {background:#fff;}
}

@media only screen and (max-width: 768px) {
.hml_add {display:none;}
.main--service-edition .kv {margin-top:48px;}
}
/* 各種サービスLPのヘッダーに相互リンク ここまで
===========================================================*/


/* TOP CRMメダル追加（+選ばれる理由のSP微調整） ここから
===========================================================*/
.topKv-CM .topKv__box.tkb_2 h2::after {content:""; display:block; position:absolute; left:calc(35px + 4.2%); top:64%; width:8%; height:0; padding-top:calc(156.28% * 0.08); background:url(/wp-content/themes/esm/assets/img/top/img_medal_2024_crm.png) no-repeat 50% 50% / contain; filter:drop-shadow(rgba(0, 0, 0, 0.3) 0px 3px 12px);}

@media screen and (min-width: 1024px) {
.topKv-CM .topKv__box.tkb_2 {padding:60px 0 130px 0;}
.topKv-CM .topKv__box.tkb_2 h2 {margin:0 0 70px 0;}
}

@media screen and (max-width: 1023px) {
.topKv-CM .topKv__box.tkb_2 h2::after {left:8%; top:64%; width:17%; padding-top:calc(156.28% * 0.17); filter:drop-shadow(rgba(0, 0, 0, 0.3) 0px 3px 6px);}
}

@media screen and (max-width: 430px) {
.topKv-CM .topKv__box.tkb_2 h2 {width:76%;}
.topKv-CM .topKv__box.tkb_2 h2::after {left:auto; right:-13%; top:12%; width:23%; padding-top:calc(156.28% * 0.23); filter:drop-shadow(rgba(0, 0, 0, 0.3) 0px 3px 2px);}
.topAnchor__list {margin:0 0;}
}
/* TOP CRMメダル追加（+選ばれる理由のSP微調整） ここまで
===========================================================*/


/* ページ下部のCTA整理 ここから
===========================================================*/
.modCta__box__textBox {display:flex; flex-wrap:wrap; justify-content:center; gap:25px 25px; padding:20px 5px 25px 5px;}
.modCta__box__textBox div {text-align:center;}
.modCta__box__textBox div .title.ttl--lightBlue {color:var(--lightBlue);}

@media screen and (min-width: 1024px) {
.modCta__box__textBox .title {margin:0 auto; font-size:24px; font-size:2.4rem; text-align:center;}
.modCta__box__textBox .modBtn {margin:5px auto 0 auto; min-height:64px;}
}

@media screen and (max-width: 1023px) {
.modCta__box:before {content:none;}
.modCta__box__textBox {gap:30px 30px; padding:25px 5px 30px 5px;}
.modCta__box__textBox .title {margin:0 auto; font-size:20px; font-size:2rem; text-align:center;}
.modCta__box__textBox .modBtn {margin:5px auto 0 auto;}
}

@media screen and (max-width: 430px) {
.modCta__box__textBox {gap:20px 20px; padding:15px 5px 20px 5px;}
.modCta__box__textBox div {width:100%;}
.modCta__box__textBox .title {font-size:18px; font-size:1.8rem;}
}
/* ページ下部のCTA整理 ここまで
===========================================================*/