/*
********************************************************************************
Neuron関連ページ共通
--------------------------------------------------------------------------------
【目次】
■ 01. 共通
■ 02. ヘッダー
■ 03. フッター
■ 04. CTAセクション（共通）
■ 05. メイン（下層ページ共通 / 一部トップも適用）
■ 06. ページタイトル（H1タグ：下層ページ共通）
■ 07. ページ内リンクエリア（下層ページ共通）
■ 08. Hubspotバナーエリア（下層ページ共通）
■ 09. TOP、下層ページ共通レイアウトパーツ
      □ 01 導入事例
      □ 02. Neuron ESの特長
      □ 03. Neuron ESの機能一覧
      □ 04. Neuron ESの導入効果
      □ 05. 価格・ライセンス
      □ 06. サポート
      □ 07. よくある質問
      □ 08. 注意書き
********************************************************************************
*/

/*
================================================================================
■ 01. 共通
================================================================================
*/
/* -------------------------------------------------
▼ LINE Seed JP 呼び出し
------------------------------------------------- */
@font-face {
  font-family: 'lsj';
  src: url('../lib/fonts/LINE_Seed_JP/LINESeedJP_OTF_Bd.woff') format('woff');
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'lsj';
  src: url('../lib/fonts/LINE_Seed_JP/LINESeedJP_OTF_Eb.woff') format('woff');
  font-weight: 900;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'lsj';
  src: url('../lib/fonts/LINE_Seed_JP/LINESeedJP_OTF_Rg.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'lsj';
  src: url('../lib/fonts/LINE_Seed_JP/LINESeedJP_OTF_Th.woff') format('woff');
  font-weight: 200;
  font-style: normal;
  font-display: swap;
}

/* -------------------------------------------------
▼ 共通
------------------------------------------------- */
body {
  color: #000;
  font-family: 'lsj', sans-serif;
  font-size: 1.6em;/* chrome対策としてem指定 */
}

.container-700 {
  /* 700px */
  max-width: 740px;
  padding: 0 20px 0;
  margin: 0 auto;
}

.container-960 {
  /* 960px */
  max-width: 1000px;
  padding: 0 20px 0;
  margin: 0 auto;
}

.container-1024 {
  /* 1024px */
  max-width: 1064px;
  padding: 0 20px 0;
  margin: 0 auto;
}

.container-1200,
.container {
  /* 1200px */
  max-width: 1240px;
  padding: 0 20px 0;
  margin: 0 auto;
}

/* -------------------------------------------------
▼ リンク
------------------------------------------------- */
a:link,
a:visited {
  color: inherit;
  text-decoration: none;
}

/*
================================================================================
■ 02. ヘッダー
================================================================================
*/
#header {
  width: 100%;
  padding: 25px 0 0;
  /*padding: 0;*/
  background: #fff;
  position: relative;
  z-index: 1;
}

#header .container {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  padding-bottom: 30px;
  /*padding-bottom: 0;
  margin: 20px auto 30px;*/
}

/* 固定時 */
#header.fixed {
  background: rgba(255,255,255,0.9);
  box-shadow: 0 5px 5px -2px rgba(0,0,0,0.1);
  position: fixed;
  z-index: 999;
  transition: .2s;
}

/* ロゴ */
#header .logo {
  /* レスポンシブ時はグローバルメニューとセットでサイズ調整 */
  max-width: 160px;
}

#header .logo .ratio-wrap {
  /* 480×120 */
  padding-bottom: 25%;
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #header {
    position: relative;
    height: 70px;/* 高さを固定する */
    padding: 0;
    z-index: 3;
  }

  #header > .container {
    position: relative;
    padding: 18px 20px 15px;
    z-index: 2;
    background: #fff;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/* -------------------------------------------------
▼ グローバルメニュー
------------------------------------------------- */
#gnavi {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  font-size: 1.5rem;
}

/* グローバルメニューを非表示にするページ */
#header.gnavi-hidden #gnavi {
  display: none;
}

/*----------------- ▼ (PC) ▼ -----------------*/
@media print, screen and (min-width: 801px) {
  /* メインメニュー */
  #gnavi .list {
    order: 2;
    display: flex;
    font-weight: 700;
    margin: 0 15px;
    /* ドロップダウンの表示位置調整に必要 */
    position: relative;
  }

  #gnavi .list > .item > .btn {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0.8em;
  }

  #gnavi .list .item .btn .icon {
    padding-right: 0.5em;
  }

  #gnavi .list .item .btn .icon-arrow {
    display: none;
  }

  #gnavi .list > .item.has-dropdown > .btn .title {
    display: block;
    margin-right: 0.5em;
  }

  #gnavi .list > .item.has-dropdown > .btn .arrow {
    display: block;
    width: 1em;
    height: 1em;
    position: relative;
  }

   #gnavi .list > .item.has-dropdown > .btn .arrow::before {
    content: '';
    display: inline-block;
    width: 0.5em;
    height: 0.5em;
    border-bottom: 2px solid #000;
    border-right: 2px solid #000;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 50%;
    margin-top: -0.5em;
    margin-right: -0.3em;
  }

  /* 下層メニュードロップダウン */
  #gnavi .list > .item.has-dropdown .list-dropdown {
    visibility: hidden;
    opacity: 0;
    position: absolute;
    border-top: 3px solid #009ede;
    box-shadow: 0px 1px 6px 0px rgba(0,0,0,0.2);
  }

  #gnavi .list > .item.has-dropdown:hover .list-dropdown {
    visibility: visible;
    opacity: 1;
    transition: .2s;
  }

  #gnavi .list > .item.has-dropdown .list-dropdown .item .btn {
    display: block;
    padding: 1em;
    line-height: 1.2;
    border-bottom: 1px solid #eee;
    background: rgba(255,255,255,0.9);
  }

  #gnavi .list > .item.has-dropdown .list-dropdown .item .btn:hover {
    background: rgba(238,238,238,0.9);
    transition: .2s;
  }

  #gnavi .list > .item.has-dropdown .list-dropdown .item:last-child .btn {
    border-bottom: none;
  }

  /* サブメニュー */
  #gnavi .list-submenu {
    order: 1;
    display: flex;
    justify-content: flex-end;
    width: 100%;
    font-size: 1.4rem;
    margin-bottom: 15px;
  }

  #gnavi .list-submenu .item {
    margin-left: 1.5em;
  }

  #gnavi .list-submenu .item .btn .icon-arrow {
    display: none;
  }

  /* ctaボタンメニュー */
  #gnavi .list-btn {
    order: 3;
    display: flex;
  }

  #gnavi .list-btn .item {
    margin: 0 5px;
  }

  #gnavi .list-btn .item:last-child {
    margin: 0 0 0 5px;
  }

  /* ctaボタンメニュー（通常ボタン） */
  #gnavi .list-btn .item .btn {
    display: block;
    border: 2px solid #f72a48;
    border-radius: 50px;
    background: #f72a48;
    padding: 1em 1.2em;
    color: #fff;
    font-weight: 700;
    line-height: 1;
    transition: .2s;
  }

  #gnavi .list-btn .item .btn:hover {
    background: #fff;
    color: #f72a48;
    transform: scale(1.02);
  }

  /* ctaボタンメニュー（HubSpotボタン） */
  #gnavi .list-btn .item .btn-cta {
    /* ロード時に大きくレイアウトがずれるのを改善したいため */
    max-width: 240px;
  }

  #gnavi .list-btn .item .btn-cta .cta_button {
    background-image: none !important;
    box-shadow: none !important;
    border: 2px solid #f72a48 !important;
    border-radius: 50px !important;
    background: #f72a48 !important;
    padding: 1em 1.8em !important;
    font-size: inherit !important;
    font-weight: 700 !important;
    font-family: inherit !important;
    line-height: 1 !important;
    min-width: auto !important;
    transition: .2s;
  }

  #gnavi .list-btn .item .btn-cta .cta_button div {
    font-size: inherit !important;
  }

  #gnavi .list-btn .item .btn-cta .cta_button span {
    color: #fff !important;
    font-size: inherit !important;
  }

  #gnavi .list-btn .item .btn-cta .cta_button span strong {
    font-weight: inherit !important;
  }

  #gnavi .list-btn .item .btn-cta .cta_button:hover {
    background: #fff !important;
    transform: scale(1.02);
  }

  #gnavi .list-btn .item .btn-cta .cta_button:hover span {
    color: #f72a48 !important;
  }

  /* SP版メニュー */
  #gnavi-sp {
    display: none;
  }
}

/* レスポンシブ調整（ドロップダウンありの時） ---*/
/*
@media print, screen and (min-width: 1021px) and (max-width: 1220px) {
  #header .logo {
    max-width: 140px;
  }

  #gnavi {
    font-size: 1.4rem;
  }

  #gnavi .list > .item > .btn {
    padding: 10px 0.6em;
  }

  #gnavi .list-submenu {
    font-size: 1.3rem;
  }

  #gnavi .list-btn .item .btn {
    padding: 1em 1.2em;
  }

  #gnavi .list-btn .item .btn-cta .cta_button {
    padding: 1em 1.2em !important;
  }
}

@media print, screen and (min-width: 951px) and (max-width: 1020px) {
  #header .container {
    padding-bottom: 20px;
  }

  #header .logo {
    max-width: 120px;
    padding-bottom: 5px;
  }

  #gnavi {
    font-size: 1.3rem;
  }

  #gnavi .list > .item > .btn {
    padding: 10px 0.6em;
  }

  #gnavi .list-submenu {
    font-size: 1.2rem;
  }

  #gnavi .list-btn .item .btn {
    padding: 1em 1.2em;
  }

  #gnavi .list-btn .item .btn-cta .cta_button {
    padding: 1em 1.2em !important;
  }
}

@media print, screen and (min-width: 801px) and (max-width: 950px) {
  #header .container {
    padding-bottom: 20px;
  }

  #header .logo {
    max-width: 100px;
    padding-bottom: 5px;
  }

  #gnavi {
    font-size: 1.2rem;
  }

  #gnavi .list {
    margin: 0 10px;
  }

  #gnavi .list > .item > .btn {
    padding: 10px 0.4em;
  }

  #gnavi .list-submenu {
    font-size: 1.1rem;
  }

  #gnavi .list-btn .item .btn {
    padding: 0.8em 0.5em;
  }

  #gnavi .list-btn .item .btn-cta .cta_button {
    padding: 0.8em 0.5em !important;
  }
}
*/

/* レスポンシブ調整（ドロップダウンなしの時） ---*/
@media print, screen and (min-width: 1001px) and (max-width: 1230px) {
  #header .logo {
    max-width: 140px;
  }

  #gnavi {
    font-size: 1.4rem;
  }

  #gnavi .list > .item > .btn {
    padding: 10px 0.6em;
  }

  #gnavi .list-submenu {
    font-size: 1.3rem;
  }

  #gnavi .list-btn .item .btn {
    padding: 1em 1.2em;
  }

  #gnavi .list-btn .item .btn-cta .cta_button {
    padding: 1em 1.2em !important;
  }
}

@media print, screen and (min-width: 1021px) and (max-width: 1100px) {
  #header .container {
    padding-bottom: 20px;
  }

  #header .logo {
    max-width: 120px;
    padding-bottom: 5px;
  }

  #gnavi {
    font-size: 1.3rem;
  }

  #gnavi .list > .item > .btn {
    padding: 10px 0.6em;
  }

  #gnavi .list-submenu {
    font-size: 1.2rem;
  }

    #gnavi .list-btn .item .btn {
    padding: 1em 1.2em;
  }

  #gnavi .list-btn .item .btn-cta .cta_button {
    padding: 1em 1.2em !important;
  }
}

@media print, screen and (min-width: 801px) and (max-width: 1020px) {
  #header .container {
    padding-bottom: 20px;
  }

  #header .logo {
    max-width: 82px;
    padding-bottom: 5px;
  }

  #gnavi {
    font-size: 1.2rem;
  }

  #gnavi .list {
    margin: 0 5px;
  }

  #gnavi .list > .item > .btn {
    padding: 10px 0.38em;
  }

  #gnavi .list-submenu {
    font-size: 1.1rem;
  }

  #gnavi .list-btn .item .btn {
    padding: 0.5em 1em;
  }

  #gnavi .list-btn .item .btn-cta .cta_button {
    padding: 0.8em 0.5em !important;
  }
}
/*----------------- ▲ (PC) ▲ -----------------*/

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  /* PC版メニュー */
  #gnavi {
    display: none;
  }

  /* ロゴエリア */
  #header .logo {
    max-width: 150px;
  }

  /* SP版メニュー */
  #gnavi-sp {
    display: block;
    font-size: 1.5rem;
    position: fixed;
    top: -120%;
    left: 0;
    right: 0;
    z-index: 1;
    width: 100%;
    height: calc(100% - 71px);/* headerの高さ分調整(上線1px分調整) */
    background: rgba(255,255,255,0.9);
    border-top: 1px solid #ccc;
    transition: 0.4s;
  }

  /* 展開 */
  #gnavi-sp.active {
    top: 71px;/* headerの高さ分下げる(上線1px分調整) */
  }

  #gnavi-sp .container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0 10px 30px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    display: block;
  }

  /* メインメニュー */
  #gnavi-sp .list {
    width: 100%;
    margin: 10px 0 20px;
    font-weight: 700;
  }

  #gnavi-sp .list .btn {
    display: block;
    padding: 1em;
    border-bottom: 1px solid #ccc;
    line-height: 1.2;
  }

  #gnavi-sp .list .item .btn .icon {
    padding-right: 0.5em;
  }

  #gnavi-sp .list > .item.has-dropdown > .btn {
    position: relative;
  }

  #gnavi-sp .list > .item.has-dropdown > .btn .title {
    display: block;
    margin-right: 2em;
  }

  #gnavi-sp .list > .item.has-dropdown > .btn .arrow {
    display: block;
    width: 3em;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0;
  }

   #gnavi-sp .list > .item.has-dropdown > .btn .arrow::before {
    content: '';
    display: inline-block;
    width: 0.6em;
    height: 0.6em;
    border-bottom: 2px solid #333;
    border-right: 2px solid #333;
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 50%;
    margin-top: -0.4em;
    margin-right: -0.3em;
  }

  #gnavi-sp .list > .item.has-dropdown > .btn .arrow.active::before {
    border-bottom: unset;
    border-right: unset;
    border-top: 2px solid #333;
    border-left: 2px solid #333;
    margin-top: -0.2em;
  }

  /* 下層メニュードロップダウン（jsとセット） */
  #gnavi-sp .list > .item.has-dropdown .list-dropdown {
    display: none;
  }

  #gnavi-sp .list > .item.has-dropdown .list-dropdown .btn {
    background: #eee;
  }

  /* 通常のボタンアイコン（まるやじるし） */
  #gnavi-sp ul:not(.list-btn) .item:not(.has-dropdown) .btn {
    display: flex;
    position: relative;
  }

  #gnavi-sp ul:not(.list-btn) .item:not(.has-dropdown) .btn .icon-arrow {
    font-size: 1.2rem;
    font-weight: normal;
    margin-left: auto;
    color: #009ede;
  }

  #gnavi-sp ul:not(.list-btn) .item:not(.has-dropdown) .btn .icon-arrow::before {
    position: absolute;
    top: 50%;
    right: 1.45em;
    margin-top: -0.5em;
  }

  #gnavi-sp ul:not(.list-btn) .item:not(.has-dropdown) .btn .icon-arrow::after {
    content: '';
    display: inline-block;
    width: 2.2em;
    height: 2.2em;
    border: 2px solid #ccc;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 0.8em;
    margin-top: -1em;
  }

  /* サブメニュー */
  #gnavi-sp .list-submenu {
    margin-bottom: 20px;
  }

  #gnavi-sp .list-submenu .item .btn {
    display: inline-block !important;
    padding: 0.4em 3em 0.4em 1em;
  }

  /* ctaボタンメニュー */
  #gnavi-sp .list-btn {
    display: flex;
    flex-direction: column;
  }

  #gnavi-sp .list-btn .item {
    width: 90%;
    max-width: 400px;
    margin: 0 auto 10px;
  }

  /* ctaボタンメニュー（通常ボタン） */
  #gnavi-sp .list-btn .item .btn {
    display: block;
    border: 2px solid #f72a48;
    border-radius: 50px;
    background: #f72a48;
    padding: 1.5em 1.8em;
    color: #fff;
    font-weight: 700;
    text-align: center;
    line-height: 1;
    transition: .2s;
  }

  /* ctaボタンメニュー（HubSpotボタン） */
  #gnavi-sp .list-btn .item .btn-cta .cta_button {
    display: block !important;
    background-image: none !important;
    box-shadow: none !important;
    border: 2px solid #f72a48 !important;
    border-radius: 50px !important;
    background: #f72a48 !important;
    padding: 1.5em 1.8em !important;
    font-size: inherit !important;
    font-weight: 700 !important;
    font-family: inherit !important;
    line-height: 1 !important;
    min-width: auto !important;
    transition: .2s;
  }

  #gnavi-sp .list-btn .item .btn-cta .cta_button div {
    font-size: inherit !important;
  }

  #gnavi-sp .list-btn .item .btn-cta .cta_button span {
    color: #fff !important;
    font-size: inherit !important;
  }

  #gnavi-sp .list-btn .item .btn-cta .cta_button span strong {
    font-weight: inherit !important;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/* -------------------------------------------------
▼ SPメニューボタン
------------------------------------------------- */
#btn-sp {
  display: none;
}

/* グローバルメニューを非表示にするページ */
#header.gnavi-hidden #btn-sp {
  display: none;
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #btn-sp {
    display: block;
    width: 34px;
    height: 34px;
    cursor: pointer;
    position: absolute;
    top: 18px;
    right: 20px;
  }

  #btn-sp .menu-trigger-bars {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
  }

  #btn-sp .menu-trigger-bar {
    display: block;
    width: 24px;
    height: 2px;
    background: #000;
    position: absolute;
    left: 5px;
    transition: .3s;
  }

  #btn-sp .menu-trigger-bar:nth-of-type(1) {
    top: 7px;
  }

  #btn-sp .menu-trigger-bar:nth-of-type(2) {
    top: 16px;
  }

  #btn-sp .menu-trigger-bar:nth-of-type(3) {
    top: 25px;
  }

  /* 閉じる */
  #btn-sp.active .menu-trigger-bar:nth-of-type(1) {
    transform: translateY(8px) rotate(-45deg);
  }

  #btn-sp.active .menu-trigger-bar:nth-of-type(2) {
    display: none;
  }

  #btn-sp.active .menu-trigger-bar:nth-of-type(3) {
    transform: translateY(-10px) rotate(45deg);
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/*
================================================================================
■ 03. フッター
================================================================================
*/
#footer-neuron {
  background: #33476a;
  padding: 50px 0;
  font-size: 1.5rem;
  color: #fff;
}

#footer-neuron .container {
  display: flex;
  justify-content: space-between;
}

/* 左側（ロゴ、コピーライト） */
#footer-neuron .area-left {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex-shrink: 0;
}

#footer-neuron .logo {
  max-width: 180px;
}

#footer-neuron .logo .ratio-wrap {
  /* 480×120 */
  padding-bottom: 25%;
}

/* NSRリンク */
#footer-neuron .link-nsr {
  font-weight: 700;
  padding-top: 10px;
}

#footer-neuron .copyright {
  font-size: 1.2rem;
}

/* 右側（メニュー） */
#footer-neuron .area-right {
  display: flex;
  justify-content: flex-end;
  font-weight: 700;
}

#footer-neuron .area-right .list {
  width: 18em;
  display: flex;
  flex-wrap: wrap;
  border-right: 1px solid #fff;
  margin: 0 2em;
}

#footer-neuron .area-right .list .item {
  width: 50%;
}

#footer-neuron .area-right .list .item .btn {
  display: inline-block;
  padding: 0.3em 0;
}

#footer-neuron .area-right .list-submenu {
  display: flex;
  flex-direction: column;
}

#footer-neuron .area-right .list-submenu .item .btn {
  display: inline-block;
  padding: 0.3em 0;
}

#footer-neuron .area-right .list-submenu .item .icon-arrow {
  display: none;
}

/* ctaボタンメニュー（HubSpotボタン） */
#footer-neuron .area-right .list-submenu .item .btn-cta .cta_button {
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
  background: none !important;
  padding: 0.3em 0 !important;
  font-size: inherit !important;
  font-weight: 700 !important;
  font-family: inherit !important;
  line-height: inherit !important;
  min-width: auto !important;
  transition: .2s;
}

#footer-neuron .area-right .list-submenu .item .btn-cta .cta_button div {
  font-size: inherit !important;
}

#footer-neuron .area-right .list-submenu .item .btn-cta .cta_button span {
  color: #fff !important;
  font-size: inherit !important;
}

#footer-neuron .area-right .list-submenu .item .btn-cta .cta_button span strong {
  font-weight: inherit !important;
}

#footer-neuron .area-right .list-submenu .item .btn-cta .cta_button:hover {
  background: none !important;
}

#footer-neuron .area-right .list-submenu .item .btn-cta .cta_button:hover span {
  opacity: .80;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 980px) {
  #footer-neuron {
    font-size: 1.4rem;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #footer-neuron .container {
    flex-direction: column;
    padding: 0 0 40px;
    position: relative;
  }

  /* 左側（ロゴ、コピーライト） */
  #footer-neuron .logo {
    max-width: 160px;
    margin: 0 auto;
  }

  /* NSRリンク */
  #footer-neuron .link-nsr {
    text-align: center;
    padding: 1em 0;
  }

  #footer-neuron .copyright {
    font-size: 1.2rem;
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 0 20px;
    display: flex;
    justify-content: center;
  }

  /* 右側（メニュー） */
  #footer-neuron .area-right {
    flex-direction: column;
  }

  #footer-neuron .area-right .list {
    width: 100%;
    border-right: none;
    margin: 20px 0;
  }

  #footer-neuron .area-right .list .item {
    border-bottom: 1px solid #fff;
  }

  #footer-neuron .area-right .list .item:nth-child(1),
  #footer-neuron .area-right .list .item:nth-child(2) {
    border-top: 1px solid #fff;
  }

  #footer-neuron .area-right .list .item:nth-child(odd) {
    border-right: 1px solid #fff;
  }

  #footer-neuron .area-right .list .item .btn {
    display: block;
    padding: 1em 1.5em;
  }

  #footer-neuron .area-right .list-submenu {
    padding: 0 20px;
  }

  #footer-neuron .area-right .list-submenu .item .btn {
    display: inline-block;
    padding: 0.5em 3em 0.5em 0;
    position: relative;
  }

  /* ctaボタンメニュー（HubSpotボタン） */
  #footer-neuron .area-right .list-submenu .item .btn-cta {
    display: inline-block;
    position: relative;
  }

  #footer-neuron .area-right .list-submenu .item .btn-cta .cta_button {
    padding: 0.5em 2.5em 0.5em 0 !important;
  }

  #footer-neuron .area-right .list-submenu .item .btn-cta .cta_button:hover span {
    opacity: 1;
  }

  /* ボタンアイコン（まるやじるし） */
  #footer-neuron .area-right .list-submenu .item .icon-arrow {
    display: inline-block;
    font-size: 1.2rem;
    font-weight: normal;
    color: #009ede;
  }

  #footer-neuron .area-right .list-submenu .item .icon-arrow::before {
    position: absolute;
    top: 50%;
    right: 0.55em;
    margin-top: -0.6em;
    z-index: 1;
  }

  #footer-neuron .area-right .list-submenu .item .icon-arrow::after {
    content: '';
    display: inline-block;
    width: 2em;
    height: 2em;
    border-radius: 50%;
    background: #fff;
    position: absolute;
    top: 50%;
    right: 0.8em;
    right: 0;
    margin-top: -1.1em;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/*
================================================================================
■ 04. CTAセクション（共通）
================================================================================
*/
#section-cta {
  padding: 80px 0 120px;
  background: url("../img/neuron/bg-01.png") no-repeat top center;
  background-size: cover;
}

#section-cta .list-cta {
  display: flex;
  justify-content: space-between;
}

#section-cta .list-cta .item {
  width: 31%;
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.2;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
  transition: .2s;
}

#section-cta .list-cta .item:hover {
  transform: scale(1.02);
}

/* 通常ボタン */
#section-cta .list-cta .item > a {
  display: flex;
  justify-content: center;
  padding: 7em 1.2em 1.5em;
  position: relative;
}

#section-cta .list-cta .item.document > a {
  background: url("../img/neuron/icon-document.png") no-repeat top 2.0em center;
  background-size: 4.8em auto;
}

#section-cta .list-cta .item.ask > a {
  background: url("../img/neuron/icon-talk.png") no-repeat top 2.0em center;
  background-size: 4.8em auto;
}

#section-cta .list-cta .item.demo > a {
  background: url("../img/neuron/icon-pc.png") no-repeat top 2.0em center;
  background-size: 4.8em auto;
}

#section-cta .list-cta .item > a .icon {
  position: absolute;
  top: 50%;
  right: 2.9em;
  margin-top: -0.5em;
  font-size: 1.3rem;
  font-weight: normal;
  color: #009ede;
}

#section-cta .list-cta .item > a::after {
  content: '';
  display: inline-block;
  width: 1.6em;
  height: 1.6em;
  border: 1px solid #ccc;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 1.5em;
  margin-top: -0.8em;
}

/* HubSpotボタン */
#section-cta .list-cta .item .btn-cta {
  position: relative;
}

#section-cta .list-cta .item .btn-cta .cta_button {
  display: flex !important;
  justify-content: center;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: none !important;
  padding: 8em 1.2em 1.5em !important;
  font-size: inherit !important;
  font-weight: 700 !important;
  font-family: inherit !important;
  line-height: 1 !important;
  min-width: auto !important;
}

#section-cta .list-cta .item .btn-cta .cta_button div {
  font-size: inherit !important;
}

#section-cta .list-cta .item .btn-cta .cta_button span {
  font-size: inherit !important;
}

#section-cta .list-cta .item .btn-cta .cta_button span strong {
  font-weight: inherit !important;
}

#section-cta .list-cta .item.document .btn-cta {
  background: url("../img/neuron/icon-document.png") no-repeat top 2.7em center;
  background-size: 4.8em auto;
}

#section-cta .list-cta .item.ask .btn-cta {
  background: url("../img/neuron/icon-talk.png") no-repeat top 2.7em center;
  background-size: 4.8em auto;
}

#section-cta .list-cta .item.demo .btn-cta {
  background: url("../img/neuron/icon-pc.png") no-repeat top 2.7em center;
  background-size: 4.8em auto;
}

#section-cta .list-cta .item .btn-cta .icon {
  position: absolute;
  top: 50%;
  right: 2.9em;
  margin-top: -0.5em;
  font-size: 1.3rem;
  font-weight: normal;
  color: #009ede;
  pointer-events: none;
}

#section-cta .list-cta .item .btn-cta::after {
  content: '';
  display: inline-block;
  width: 1.6em;
  height: 1.6em;
  border: 1px solid #ccc;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 1.5em;
  margin-top: -0.8em;
  pointer-events: none;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 980px) {
  /* 通常ボタン */
  #section-cta .list-cta .item > a {
    padding: 6em 1.2em 1.5em;
  }

  #section-cta .list-cta .item.document > a {
    background: url("../img/neuron/icon-document.png") no-repeat top 2em center;
    background-size: 4em auto;
  }

  #section-cta .list-cta .item.ask > a {
    background: url("../img/neuron/icon-talk.png") no-repeat top 2em center;
    background-size: 4em auto;
  }

  #section-cta .list-cta .item.demo > a {
    background: url("../img/neuron/icon-pc.png") no-repeat top 2em center;
    background-size: 4em auto;
  }

  #section-cta .list-cta .item > a .icon {
    right: 2.15em;
  }

  #section-cta .list-cta .item > a::after {
    right: 1em;
  }

  /* HubSpotボタン */
  #section-cta .list-cta .item .btn-cta .cta_button {
    padding: 6em 1.2em 1.5em !important;
  }

  #section-cta .list-cta .item.document .btn-cta {
    background: url("../img/neuron/icon-document.png") no-repeat top 2em center;
    background-size: 4em auto;
  }

  #section-cta .list-cta .item.ask .btn-cta {
    background: url("../img/neuron/icon-talk.png") no-repeat top 2em center;
    background-size: 4em auto;
  }

  #section-cta .list-cta .item.demo .btn-cta {
    background: url("../img/neuron/icon-pc.png") no-repeat top 2em center;
    background-size: 4em auto;
  }

  #section-cta .list-cta .item .btn-cta .icon {
    right: 2.15em;
  }

  #section-cta .list-cta .item .btn-cta::after {
    right: 1em;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #section-cta .list-cta {
    flex-direction: column;
    max-width: 400px;
    margin: 40px auto 0;
  }

  #section-cta .list-cta .item {
    width: 100%;
    margin-bottom: 15px;
  }

  /* 通常ボタン */
  #section-cta .list-cta .item > a {
    justify-content: flex-start;
    padding: 2em 1.5em 2em 6.5em;
  }

  #section-cta .list-cta .item.document > a {
    background: url("../img/neuron/icon-document.png") no-repeat center left 1.2em;
    background-size: 4em auto;
  }

  #section-cta .list-cta .item.ask > a {
    background: url("../img/neuron/icon-talk.png") no-repeat center left 1.2em;
    background-size: 4em auto;
  }

  #section-cta .list-cta .item.demo > a {
    background: url("../img/neuron/icon-pc.png") no-repeat center left 1.2em;
    background-size: 4em auto;
  }

  /* HubSpotボタン */
  #section-cta .list-cta .item .btn-cta .cta_button {
    justify-content: flex-start;
    padding: 2em 1.5em 2em 6.5em !important;
  }

  #section-cta .list-cta .item.document .btn-cta {
    background: url("../img/neuron/icon-document.png") no-repeat center left 1.2em;
    background-size: 4em auto;
  }

  #section-cta .list-cta .item.ask .btn-cta {
    background: url("../img/neuron/icon-talk.png") no-repeat center left 1.2em;
    background-size: 4em auto;
  }

  #section-cta .list-cta .item.demo .btn-cta {
    background: url("../img/neuron/icon-pc.png") no-repeat center left 1.2em;
    background-size: 4em auto;
  }
}

@media print, screen and (max-width: 400px) {
  /* 通常ボタン */
  #section-cta .list-cta .item > a {
    padding: 1.5em 3em 1.5em 5em;
  }

  #section-cta .list-cta .item.document > a {
    background-size: 3em auto;
  }

  #section-cta .list-cta .item.ask > a {
    background-size: 3em auto;
  }

  #section-cta .list-cta .item.demo > a {
    background-size: 3em auto;
  }

  /* HubSpotボタン */
  #section-cta .list-cta .item .btn-cta .cta_button {
    padding: 1.5em 3em 1.5em 5em !important;
  }

  #section-cta .list-cta .item.document .btn-cta {
    background-size: 3em auto;
  }

  #section-cta .list-cta .item.ask .btn-cta {
    background-size: 3em auto;
  }

  #section-cta .list-cta .item.demo .btn-cta {
    background-size: 3em auto;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/* 青背景パターン（Hubspot、通常） */
.section-cta2 {
  padding: 80px 0 120px;
  background: #009edd;
}

.section-cta2.section-common .title-h2 {
  font-size: 3.0rem;
  color: #fff;
}

.section-cta2.section-common .title-h2::before {
  content: none;
}

.section-cta2 .list-cta {
  display: flex;
  justify-content: space-between;
}

.section-cta2 .list-cta .item {
  width: 33.2%;
}

.section-cta2 .list-cta .item .btn-cta {
  width: 100%;
  position: relative;
  transition: all 0.2s;
}

.section-cta2 .list-cta .item .btn-cta:hover {
  transform: translateY(-5px);
}

.section-cta2 .list-cta .item .btn-cta .icon {
  position: absolute;
  top: 50%;
  right: 2.4em;
  margin-top: -0.5em;
  font-size: 1.3rem;
  font-weight: normal;
  color: #009ede;
  pointer-events: none;
}

.section-cta2 .list-cta .item .btn-cta::after {
  content: '';
  display: inline-block;
  width: 1.6em;
  height: 1.6em;
  border: 1px solid #ccc;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 1.5em;
  margin-top: -0.8em;
  pointer-events: none;
}

.section-cta2 .list-cta .item .btn-cta:hover .icon {
  color: #f72948;
}

.section-cta2 .list-cta .item .btn-cta .cta_button {
  display: block !important;
  min-width: auto !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: 3.2rem !important;
  font-weight: 700 !important;
  font-family: inherit !important;
  line-height: 1 !important;
  color: #33476a !important;
  padding: 1.5em 0.5em 1.5em !important;
  border-bottom: 5px solid #fff !important;
  background: #fff;
  text-align: center;
}

.section-cta2 .list-cta .item .btn-cta:hover .cta_button {
  border-bottom: 5px solid red !important;
}

.section-cta2 .list-cta .item .btn-cta .cta_button span {
  font-size: inherit !important;
  color: inherit !important;
  position: relative;
  padding-left: 1.5em;
  margin-left: -0.5em;
}

.section-cta2 .list-cta .item .btn-cta .cta_button span strong {
  font-weight: inherit !important;
}

.section-cta2 .list-cta .item.document .btn-cta .cta_button {
  border-radius: 10px 0 0 10px !important;
}

.section-cta2 .list-cta .item.demo .btn-cta .cta_button {
  border-radius: 0 10px 10px 0 !important;
}

.section-cta2 .list-cta .item .btn-cta .cta_button span::before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -0.5em;
}

.section-cta2 .list-cta .item.document .btn-cta .cta_button span::before {
  background: url("../img/neuron/icon-cta-document.png") no-repeat;
  background-position: 0 0;
  background-size: cover;
}

.section-cta2 .list-cta .item.ask .btn-cta .cta_button span::before {
  background: url("../img/neuron/icon-cta-mail.png") no-repeat;
  background-position: 0 0;
  background-size: cover;
}

.section-cta2 .list-cta .item.demo .btn-cta .cta_button span::before {
  background: url("../img/neuron/icon-cta-pc.png") no-repeat;
  background-position: 0 0;
  background-size: cover;
}

.section-cta2 .list-cta .item.document .btn-cta:hover .cta_button span::before {
  background: url("../img/neuron/icon-cta-document.png") no-repeat;
  background-position: 0 -1em;
  background-size: cover;
}

.section-cta2 .list-cta .item.ask .btn-cta:hover .cta_button span::before {
  background: url("../img/neuron/icon-cta-mail.png") no-repeat;
  background-position: 0 -1em;
  background-size: cover;
}

.section-cta2 .list-cta .item.demo .btn-cta:hover .cta_button span::before {
  background: url("../img/neuron/icon-cta-pc.png") no-repeat;
  background-position: 0 -1em;
  background-size: cover;
}

/* キャラクター × 吹き出し */
.section-cta2.footer-cta.section-common .balloon {
  display: flex;
  justify-content: center;
  position: relative;
}

.section-cta2.footer-cta.section-common .balloon .title-h2 {
  border-radius: 50px;
  background: #13334d;
  padding: 1em;
}

.section-cta2.footer-cta.section-common .balloon .title-h2::before {
  content: '';
  display: inline-block;
  border-style: solid;
  border-width: 0.4em 1.2em 0.4em 0;
  border-color: transparent #13334d transparent transparent;
  position: absolute;
  left: -0.8em;
  top: 50%;
  margin-top: -0.4em;
}

.section-cta2.footer-cta.section-common .balloon .title-h2::after {
  content: '';
  display: inline-block;
  width: 7em;
  height: 7em;
  background: url("../img/neuron/icon-cta-watson.png") no-repeat;
  background-size: contain;
  position: absolute;
  top: -1.2em;
  left: -6em;
  z-index: 1;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 1200px) {
  .section-cta2 .list-cta .item .btn-cta .cta_button {
    font-size: 2.5vw !important;
  }

  .section-cta2.footer-cta.section-common .balloon {
    justify-content: flex-end;
    padding-right: 2em;
  }

  .section-cta2.footer-cta.section-common .balloon .title-h2 {
    font-size: 2.6vw;
    width: calc(100% - 7em);
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  .section-cta2 .list-cta {
    flex-wrap: wrap;
  }

  .section-cta2 .list-cta .item {
    width: 32.5%;
    margin-bottom: 5px;
  }

  .section-cta2 .list-cta .item .btn-cta:hover {
    transform: none;
  }

  .section-cta2 .list-cta .item .btn-cta::after {
    content: none;
  }

  .section-cta2 .list-cta .item .btn-cta .icon {
    display: none;
  }

  .section-cta2 .list-cta .item .btn-cta .cta_button {
    font-size: 1.8rem !important;
    padding: 60px 5px 10px !important;
  }

  .section-cta2 .list-cta .item .btn-cta .cta_button span {
    padding-left: 0;
    margin-left: 0;
  }

  .section-cta2 .list-cta .item.document .btn-cta .cta_button {
    border-radius: 10px !important;
  }

  .section-cta2 .list-cta .item.ask .btn-cta .cta_button {
    border-radius: 10px !important;
  }

  .section-cta2 .list-cta .item.demo .btn-cta .cta_button {
    border-radius: 10px !important;
  }

  .section-cta2 .list-cta .item .btn-cta .cta_button span::before {
    width: 40px;
    height: 40px;
    position: absolute;
    left: 50%;
    top: 0;
    margin-top: -40px;
    margin-left: -20px;
  }

  .section-cta2 .list-cta .item.document .btn-cta:hover .cta_button span::before {
    background: url("../img/neuron/icon-cta-document.png") no-repeat;
    background-position: 0 -40px;
    background-size: cover;
  }

  .section-cta2 .list-cta .item.ask .btn-cta:hover .cta_button span::before {
    background: url("../img/neuron/icon-cta-mail.png") no-repeat;
    background-position: 0 -40px;
    background-size: cover;
  }

  .section-cta2 .list-cta .item.demo .btn-cta:hover .cta_button span::before {
    background: url("../img/neuron/icon-cta-pc.png") no-repeat;
    background-position: 0 -40px;
    background-size: cover;
  }

  .section-cta2.footer-cta.section-common .balloon {
    padding-right: 1em;
  }

  .section-cta2.footer-cta.section-common .balloon .title-h2 {
    font-size: 2.0rem;
  }

  .section-cta2.footer-cta.section-common .balloon .title-h2::after {
    left: -7em;
  }
}

@media print, screen and (max-width: 500px) {
  .section-cta2.section-common .title-h2 {
    font-size: 2.4rem;
  }

  .section-cta2 .list-cta .item .btn-cta .cta_button {
    font-size: 3.6vw !important;
  }

  .section-cta2.footer-cta.section-common .balloon .title-h2 {
    width: calc(100% - 5em);
  }

  .section-cta2.footer-cta.section-common .balloon .title-h2::after {
    left: -6em;
  }
}


/*
================================================================================
■ 05. メイン（共通）
================================================================================
*/
#main {
  /* ページ内リンクエリアの追従で必要 */
  position: relative;
}

.section-common {
  font-size: 1.6rem;
  padding: 70px 0;
}

.section-common.bgcolor {
  background: #f6f6f6;
}

/* H2 */
.section-common .title-h2 {
  font-size: 3.8rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  padding-bottom: 0.5em;
  margin-bottom: 1em;
  position: relative;
}

.section-common .title-h2::before{
  content: '';
  display: inline-block;
  width: 64px;
  height: 8px;
  background: linear-gradient(-45deg,#33476a 50%,#009ede 50%);
  position: absolute;
  bottom: 0;
  left: 50%;
  margin-left: -32px;
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  .section-common {
    font-size: 1.4rem;
  }

  /* H2 */
  .section-common .title-h2 {
    font-size: 2.4rem;
    padding-bottom: 0.8em;
  }

  .section-common .title-h2::before{
    height: 6px;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/* ▼ mainタグ内のみ -------------------------- */

/* ぱんくずリスト */
#main .breadcrumbs .list {
  display: flex;
  flex-wrap: wrap;
  font-size: 1.3rem;
  line-height: 1.3;
  margin: 1.5em 0 2em;
}

#main .breadcrumbs .list .item {
  margin-right: 0.7em;
}

#main .breadcrumbs .list .item::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(45deg);
  margin: -0.25em 0 0 0.2em;
}

#main .breadcrumbs .list .item:last-child::after {
  content: none;
}

#main .breadcrumbs .list .link {
  text-decoration: underline;
}

#main .breadcrumbs .list .item h1{
  font-weight: normal;
}

/* カラム - 2つ並び */
#main .section-common .box-2inrow {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
}

#main .section-common .box-2inrow .box {
  width: 48%;
  margin: 15px 0;
  /* 孫まで高さそろえるために */
  display: flex;
  flex-direction: column;
}

#main .section-common .box-2inrow::after {
  content: '';
  display: block;
  width: 48%;
  height: 0;
}

/* カラム - 3つ並び */
#main .section-common .box-3inrow {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
}

#main .section-common .box-3inrow .box {
  width: 31%;
  margin: 15px 0;
  /* 孫まで高さそろえるために */
  display: flex;
  flex-direction: column;
}

#main .section-common .box-3inrow::after {
  content: '';
  display: block;
  width: 31%;
  height: 0;
}

/* カラム - 4つ並び */
#main .section-common .box-4inrow {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
}

#main .section-common .box-4inrow .box {
  width: 22.5%;
  margin: 15px 0;
  /* 孫まで高さそろえるために */
  display: flex;
  flex-direction: column;
}

#main .section-common .box-4inrow::before {
  content: '';
  display: block;
  width: 22.5%;
  height: 0;
  order: 1;
}

#main .section-common .box-4inrow::after {
  content: '';
  display: block;
  width: 22.5%;
  height: 0;
}

/* H3 */
#main .section-common .title-h3 {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1em;
}

/* H4 */
#main .section-common .title-h4 {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  padding-bottom: 0.6em;
  border-bottom: 2px solid #ccc;
  margin-bottom: 1.2em;
}

/* H5 */
#main .section-common .title-h5 {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  padding-left: 1.5em;
  margin-bottom: 1em;
  position: relative;
}

#main .section-common .title-h5::before {
  content: '';
  display: inline-block;
  width: 1em;
  height: 1em;
  background: linear-gradient(-45deg,#009ede 50%,#009ede 50%);
  position: absolute;
  top: 0.05em;
  left: 0;
}

/* H6 */
#main .section-common .title-h6 {
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1em;
}

/* sectionのメインコピー文 */
#main .section-common .section-description {
  font-weight: 700;
  text-align: center;
  margin-bottom: 4em;
}

/* 通常のpタグ */
#main .section-common p:not([class]){
  margin-bottom: 1em;
}

/* 通常のblockquoteタグ（引用） */
#main .section-common blockquote:not([class]){
  color: #919191;
  font-weight: 700;
  padding: 0 0 0 1.5em;
  border-left: 2px solid #919191;
  margin-bottom: 2em;
}

/* 通常のsmallタグ（注釈） */
#main .section-common small:not([class]){
  display: inline-block;
  font-size: 1.2rem;
  line-height: 1.5;
  margin-bottom: 1em;
}

/* 通常のulタグ（箇条書きリスト） */
#main .section-common ul:not([class]){
  list-style-type: disc;
  margin-left: 1.1em;
  line-height: 1.5;
}

#main .section-common ul:not([class]) li {
  margin-bottom: 0.5em;
  padding-left: 0.4em;
}

#main .section-common ul:not([class]) li > ul:not([class]) {
  list-style-type: circle;
  margin: 1em 0 1.5em 1.5em;
}

/* 通常のolタグ（番号付きリスト） */
#main .section-common ol:not([class]) {
  list-style-type: decimal;
  margin-left: 1.1em;
  line-height: 1.5;
}

#main .section-common ol:not([class]) li {
  margin-bottom: 0.5em;
  padding-left: 0.4em;
}

#main .section-common ol:not([class]) li > ol:not([class]) {
  margin: 1em 0 1.5em 1.5em;
}

/* 通常のaタグ */
#main .section-common a:not([class]) {
  font-weight: 700;
  color: #009ede;
  text-decoration: underline;
}

/* 矢印付きaタグ */
#main .section-common a.link-arrow {
  font-weight: 700;
  padding-right: 2em;
  position: relative;
}

#main .section-common a.link-arrow .icon {
  font-size: 75%;/* link-arrow のサイズ（1.6rem）ベースに1.2rem程度 */
  font-weight: 400;
  color: #009ede;
}

#main .section-common a.link-arrow .icon::before {
  position: absolute;
  bottom: 0.6em;
  right: 0.6em;
}

#main .section-common a.link-arrow::after {
  content: '';
  display: inline-block;
  width: 1.6em;
  height: 1.6em;
  border: 1px solid #ccc;
  border-radius: 50%;
  vertical-align: middle;
  position: absolute;
  right: 0;
}

/* ボタンリスト */
#main .section-common .list-btn {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

#main .section-common .list-btn .item {
  min-width: 400px;
  margin: 5px;
}

/* ボタン（ページ遷移：通常） */
#main .section-common .list-btn .item .btn {
  display: inline-block;
  width: 100%;
  border: 2px solid #f72a48;
  border-radius: 50px;
  background: #fff;
  padding: 1em 1.8em;
  color: #f72a48;
  font-size: 1.6rem;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  transition: .2s;
}

#main .section-common .list-btn .item .btn:hover {
  background: #f72a48;
  color: #fff;
  transform: scale(1.02);
}

/* ボタン（CTA：通常） */
#main .section-common .list-btn .item a.btn-cta {
  display: inline-block;
  width: 100%;
  border: 2px solid #f72a48;
  border-radius: 50px;
  box-shadow: 0px 5px 5px -5px rgba(0, 0, 0, 0.6);
  background: #f72a48;
  padding: 1em 1.8em;
  color: #fff;
  font-size: 1.9rem;
  font-weight: 700;
  text-align: center;
  line-height: 1;
  transition: .2s;
}

#main .section-common .list-btn .item a.btn-cta:hover {
  background: #fff;
  color: #f72a48;
  transform: scale(1.02);
}

/* ボタン（CTA：HubSpotボタン） */
#main .section-common .list-btn .item div.btn-cta .cta_button {
  display: block !important;
  background-image: none !important;
  box-shadow: none !important;
  border: 2px solid #f72a48 !important;
  border-radius: 50px !important;
  box-shadow: 0px 5px 5px -5px rgba(0, 0, 0, 0.6) !important;
  background: #f72a48 !important;
  padding: 1em 1.8em !important;
  font-size: 1.9rem !important;
  font-weight: 700 !important;
  font-family: inherit !important;
  line-height: 1 !important;
  transition: .2s;
}

#main .section-common .list-btn .item div.btn-cta .cta_button div {
  font-size: 1.9rem !important;
}

#main .section-common .list-btn .item div.btn-cta .cta_button span {
  color: #fff !important;
}

#main .section-common .list-btn .item .btn-cta .cta_button:hover {
  background: #fff !important;
  transform: scale(1.02);
}

#main .section-common .list-btn .item .btn-cta .cta_button:hover span {
  color: #f72a48 !important;
}

/* 通常のtableタグ */
#main .section-common table:not([class]) {
  line-height: 1.3;
  margin-bottom: 1em;
  border: 1px solid #ccc;
  border-radius: 6px;
  border-collapse: separate;
  overflow: hidden;
  width: 100%;
}

#main .section-common table:not([class]) thead {
  background: #009ede;
  color: #fff;
  font-weight: 700;
}

#main .section-common table:not([class]) tbody {
  background: #fff;
}

#main .section-common table:not([class]) th,
.section-common table:not([class]) td {
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding: 1em;
}

#main .section-common table:not([class]) thead th:last-child {
  border-right: none;
}

#main .section-common table:not([class]) tbody th {
  font-weight: 700;
  text-align: left;
}

#main .section-common table:not([class]) tbody td:last-child {
  border-right: none;
}

#main .section-common table:not([class]) tbody tr:last-child th,
.section-common table:not([class]) tbody tr:last-child td {
  border-bottom: none;
}

#main .section-common .table-wrap small {
  display: none;
}

/* カードスタイル */
#main .section-common .box-card {
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 0 15px rgba(0,0,0,0.2);
  padding: 25px;
  /* カラムの中で指定しても高さそろえるために */
  flex: 1;
}

#main .section-common .box-card img {
  /* 画像比率3:2（いずれのサイズもフィットさせる） */
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border-radius: 10px;
}

#main .section-common .box-card dl {
  padding-top: 2em;
}

#main .section-common .box-card dl dt {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 0.8em;
}

/* カードスタイル（単語のみ） */
#main .section-common .box-card.style-word {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  min-height: 5em;
  padding: 1em;
}

#main .section-common .box-card.style-word p {
  margin: 0;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 960px) {
  #main .section-common .box-card.style-word {
    font-size: 1.8rem;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common .box-card.style-word {
    font-size: 1.6rem;
  }
}

@media print, screen and (max-width: 500px) {
  #main .section-common .box-card.style-word {
    font-size: 1.4rem;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/* カードスタイル（定義スタイル） */
#main .section-common .box-card.style-definition {
  padding: 1.5em;
}

#main .section-common .box-card.style-definition dl {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0;
}

#main .section-common .box-card.style-definition dl dt {
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.2;
}

#main .section-common .box-card.style-definition dl dd {
  line-height: 1.4;
  font-size: 90%;
  color: #666;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 960px) {
  #main .section-common .box-card.style-definition dl dt {
    font-size: 1.8rem;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common .box-card.style-definition dl dt {
    font-size: 1.6rem;
  }
}

@media print, screen and (max-width: 500px) {
  #main .section-common .box-card.style-definition dl dt {
    font-size: 1.4rem;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/





/* 画像とテキストのセット */
#main .section-common .set-image {
  display: flex;
  margin-bottom: 20px;
}

#main .section-common .set-image .image-wrap .image img {
  border-radius: 10px;
}

#main .section-common .set-image .image-wrap .caption {
  font-size: 1.4rem;
  line-height: 1.3;
  margin-top: 1em;
}

/* イベント&セミナー情報ページ用追加 */

#main .section-common .set-image .image-wrap .caption-title {
  font-size: 1.8rem;
  line-height: 1.3;
  margin-top: 1.5em;
  font-weight: bold;
}
#main .section-common .set-image .image-wrap .caption-date {
  font-size: 1.5rem;
  line-height: 1.3;
  margin-top: 1.5em;
}
#main .section-common .set-image .image-wrap .caption-text {
  font-size: 1.4rem;
  line-height: 1.4;
  margin-top: 1.5em;
}

/* 画像とテキストのセット（タテ並び：100%幅） */
#main .section-common .set-image.vertical {
  flex-direction: column;
}

#main .section-common .set-image.vertical .image-wrap {
  margin-bottom: 1.8em;
}

/* 画像とテキストのセット（タテ並び：画像600px） */
#main .section-common .set-image.vertical.image-600 {
  align-items: center;
}

#main .section-common .set-image.vertical.image-600 .image-wrap {
  max-width: 600px;
}

/* 画像とテキストのセット（ヨコ並び） */
#main .section-common .set-image.horizontal {
  justify-content: space-between;
}

#main .section-common .set-image.horizontal .image-wrap,
#main .section-common .set-image.horizontal .description-wrap {
  width: 48.5%;
}

/* 画像とテキストのセット（ヨコ並び：画像サイズ固定：400pxまで） */
#main .section-common .set-image.horizontal {
  justify-content: space-between;
}

#main .section-common .set-image.horizontal.image-fixed .image-wrap {
  width: min-content;
}

#main .section-common .set-image.horizontal.image-fixed .image-wrap img {
  width: auto;
}

#main .section-common .set-image.horizontal.image-fixed .description-wrap {
  flex: 1;
  margin-left: 3%;
}

/* カラム内に配置の場合 */
#main .section-common .box .set-image {
  margin-bottom: 0;
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  /* カラム - 2つ並び */
  #main .section-common .box-2inrow .box {
    width: 100%;
  }

  /* カラム - 3つ並び */
  #main .section-common .box-3inrow .box {
    width: 100%;
  }

  /* カラム - 4つ並び */
  #main .section-common .box-4inrow .box {
    width: 100%;
  }

  /* H3 */
  #main .section-common .title-h3 {
    font-size: 1.8rem;
  }

  /* H4 */
  #main .section-common .title-h4 {
    font-size: 1.6rem;
  }

  /* H5 */
  #main .section-common .title-h5 {
    font-size: 1.6rem;
  }

  /* ボタンリスト */
  #main .section-common .list-btn .item {
    width: 100%;
    max-width: 500px;
    min-width: unset;
  }

  /* tableタグ（横スクロール対応：table幅800px固定） */
  #main .section-common .table-wrap {
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch;
    position: relative;
  }

  #main .section-common .table-wrap table {
    width: 800px;
  }

  #main .section-common .table-wrap small {
    display: block;
    margin-bottom: 1em;
  }

  /* カードスタイル */
  #main .section-common .box-card dl dt {
    font-size: 1.8rem;
  }

  /* 画像とテキストのセット */
  #main .section-common .set-image .image-wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
  }

  #main .section-common .set-image .image-wrap .image {
    width: 100%;
  }

  #main .section-common .set-image .image-wrap .caption {
    font-size: 1.2rem;
  }

  /* 画像とテキストのセット（ヨコ並び） */
  #main .section-common .set-image.horizontal {
    flex-direction: column;
  }

  #main .section-common .set-image.horizontal .image-wrap,
  #main .section-common .set-image.horizontal .description-wrap {
    width: 100%;
  }

  #main .section-common .set-image.horizontal .image-wrap {
    margin-bottom: 1.8em;
  }

  /* 画像とテキストのセット（ヨコ並び：画像サイズ固定） */
  #main .section-common .set-image.horizontal.image-fixed {
    align-items: center;
  }

  #main .section-common .set-image.horizontal.image-fixed .image-wrap {
    width: auto;
    max-width: 100% !important;
  }

  #main .section-common .set-image.horizontal.image-fixed .image-wrap .image {
    width: auto
  }

  #main .section-common .set-image.horizontal.image-fixed .image-wrap img {
    max-width: 100%;
  }

  #main .section-common .set-image.horizontal.image-fixed .description-wrap {
    margin-left: 0;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/* ▲ mainタグ内のみ -------------------------- */

/*
================================================================================
■ 06. ページタイトル（H1タグ：下層ページ共通）
================================================================================
*/
#main .eyecatch {
  background: linear-gradient(-45deg,#ebebeb 40%,#f9f9f9 40%);
  padding: 30px 0;
}

#main .eyecatch .container {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

#main .eyecatch .title-h1 {
  font-size: 4.0rem;
  font-weight: 700;
  line-height: 1.2;
  flex: 1;
}

#main .eyecatch .title-and-breadcrumbs .breadcrumbs .list {
  color: #999999;
  margin: 1.0rem 0 0;
  position: absolute;
}

/* CTAボタンエリア */
#main .eyecatch .list-cta {
  display: flex;
  justify-content: space-between;
  width: 500px;
  padding-left: 20px;
}

#main .eyecatch .list-cta .item {
  width: 31%;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.2;
  background: #fff;
  border-radius: 10px;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
  transition: .2s;
}

#main .eyecatch .list-cta .item:hover {
  transform: scale(1.02);
}

/* 通常ボタン */
#main .eyecatch .list-cta .item > a {
  display: flex;
  justify-content: center;
  padding: 5.2em 1em 1em;
  position: relative;
}

#main .eyecatch .list-cta .item.document > a {
  background: url("../img/neuron/icon-document.png") no-repeat top 1.4em center;
  background-size: 4em auto;
}

#main .eyecatch .list-cta .item.ask > a {
  background: url("../img/neuron/icon-talk.png") no-repeat top 1.4em center;
  background-size: 4em auto;
}

#main .eyecatch .list-cta .item.demo > a {
  background: url("../img/neuron/icon-pc.png") no-repeat top 1.4em center;
  background-size: 4em auto;
}

#main .eyecatch .list-cta .item > a .icon {
  position: absolute;
  top: 50%;
  right: 1.5em;
  margin-top: -0.5em;
  font-size: 1.2rem;
  font-weight: normal;
  color: #009ede;
}

#main .eyecatch .list-cta .item > a::after {
  content: '';
  display: inline-block;
  width: 1.4em;
  height: 1.4em;
  border: 1px solid #ccc;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 0.8em;
  margin-top: -0.7em;
}

/* HubSpotボタン */
#main .eyecatch .list-cta .item .btn-cta {
  position: relative;
}

#main .eyecatch .list-cta .item .btn-cta .cta_button {
  display: flex !important;
  justify-content: center;
  background-image: none !important;
  box-shadow: none !important;
  border: none !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  background: none !important;
  padding: 5.2em 1em 1em !important;
  font-size: inherit !important;
  font-weight: 700 !important;
  font-family: inherit !important;
  line-height: 1 !important;
  min-width: auto !important;
}

#main .eyecatch .list-cta .item .btn-cta .cta_button div {
  font-size: inherit !important;
}

#main .eyecatch .list-cta .item .btn-cta .cta_button span {
  font-size: inherit !important;
}

#main .eyecatch .list-cta .item .btn-cta .cta_button span strong {
  font-weight: inherit !important;
}

#main .eyecatch .list-cta .item.document .btn-cta {
  background: url("../img/neuron/icon-document.png") no-repeat top 1.4em center;
  background-size: 4em auto;
}

#main .eyecatch .list-cta .item.ask .btn-cta {
  background: url("../img/neuron/icon-talk.png") no-repeat top 1.4em center;
  background-size: 4em auto;
}

#main .eyecatch .list-cta .item.demo .btn-cta {
  background: url("../img/neuron/icon-pc.png") no-repeat top 1.4em center;
  background-size: 4em auto;
}

#main .eyecatch .list-cta .item .btn-cta .icon {
  position: absolute;
  top: 50%;
  right: 1.5em;
  margin-top: -0.5em;
  font-size: 1.2rem;
  font-weight: normal;
  color: #009ede;
  pointer-events: none;
}

#main .eyecatch .list-cta .item .btn-cta::after {
  content: '';
  display: inline-block;
  width: 1.4em;
  height: 1.4em;
  border: 1px solid #ccc;
  border-radius: 50%;
  position: absolute;
  top: 50%;
  right: 0.8em;
  margin-top: -0.7em;
  pointer-events: none;
}


/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 1050px) {
  #main .eyecatch .list-cta {
    width: 45%;
  }

  #main .eyecatch .list-cta .item {
    font-size: 1.5vw;
  }

  /* 通常ボタン */
  #main .eyecatch .list-cta .item.document > a {
    background: url("../img/neuron/icon-document.png") no-repeat top 1.8em center;
    background-size: 3.2em auto;
  }

  #main .eyecatch .list-cta .item.ask > a {
    background: url("../img/neuron/icon-talk.png") no-repeat top 1.8em center;
    background-size: 3.2em auto;
  }

  #main .eyecatch .list-cta .item.demo > a {
    background: url("../img/neuron/icon-pc.png") no-repeat top 1.8em center;
    background-size: 3.2em auto;
  }

  #main .eyecatch .list-cta .item > a .icon {
    font-size: 1.16vw;
  }

  /* HubSpotボタン */
  #main .eyecatch .list-cta .item.document .btn-cta {
    background: url("../img/neuron/icon-document.png") no-repeat top 1.8em center;
    background-size: 3.2em auto;
  }

  #main .eyecatch .list-cta .item.ask .btn-cta {
    background: url("../img/neuron/icon-talk.png") no-repeat top 1.8em center;
    background-size: 3.2em auto;
  }

  #main .eyecatch .list-cta .item.demo .btn-cta {
    background: url("../img/neuron/icon-pc.png") no-repeat top 1.8em center;
    background-size: 3.2em auto;
  }

  #main .eyecatch .list-cta .item .btn-cta .icon {
    font-size: 1.16vw;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .eyecatch {
    padding: 60px 0;
  }

  #main .eyecatch .container {
    flex-direction: column;
  }
  
  #main .eyecatch .title-h1 {
    font-size: 2.8rem;
    /*margin-bottom: 1em;*/
  }

  /* CTAボタンエリア */
  #main .eyecatch .list-cta {
    width: 400px;
    margin-top: 20px;
    padding-left: 0;
  }

  #main .eyecatch .list-cta .item {
    font-size: 1.2rem;
  }

  /* 通常ボタン */
  #main .eyecatch .list-cta .item.document > a {
    background: url("../img/neuron/icon-document.png") no-repeat top 1.4em center;
    background-size: 4em auto;
  }

  #main .eyecatch .list-cta .item.ask > a {
    background: url("../img/neuron/icon-talk.png") no-repeat top 1.4em center;
    background-size: 4em auto;
  }

  #main .eyecatch .list-cta .item.demo > a {
    background: url("../img/neuron/icon-pc.png") no-repeat top 1.4em center;
    background-size: 4em auto;
  }

  #main .eyecatch .list-cta .item > a .icon {
    right: 1.45em;
    margin-top: -0.55em;
    font-size: 1.0rem;
  }

  #main .eyecatch .list-cta .item > a::after {
    width: 1.6em;
    height: 1.6em;
    margin-top: -0.8em;
  }

  /* HubSpotボタン */
  #main .eyecatch .list-cta .item.document .btn-cta {
    background: url("../img/neuron/icon-document.png") no-repeat top 1.4em center;
    background-size: 4em auto;
  }

  #main .eyecatch .list-cta .item.ask .btn-cta {
    background: url("../img/neuron/icon-talk.png") no-repeat top 1.4em center;
    background-size: 4em auto;
  }

  #main .eyecatch .list-cta .item.demo .btn-cta {
    background: url("../img/neuron/icon-pc.png") no-repeat top 1.4em center;
    background-size: 4em auto;
  }

  #main .eyecatch .list-cta .item .btn-cta .icon {
    right: 1.45em;
    margin-top: -0.55em;
    font-size: 1.0rem;
  }

  #main .eyecatch .list-cta .item .btn-cta::after {
    width: 1.6em;
    height: 1.6em;
    margin-top: -0.8em;
  }
}

@media print, screen and (max-width: 450px) {
  /* CTAボタンエリア */
  #main .eyecatch .list-cta {
    width: 100%;
    padding-left: 0;
  }

  /* 通常ボタン */
  #main .eyecatch .list-cta .item > a {
    padding: 4.6em 0 1em;
  }

  #main .eyecatch .list-cta .item.document > a {
    background: url("../img/neuron/icon-document.png") no-repeat top 1.4em center;
    background-size: 3em auto;
  }

  #main .eyecatch .list-cta .item.ask > a {
    background: url("../img/neuron/icon-talk.png") no-repeat top 1.4em center;
    background-size: 3em auto;
  }

  #main .eyecatch .list-cta .item.demo > a {
    background: url("../img/neuron/icon-pc.png") no-repeat top 1.4em center;
    background-size: 3em auto;
  }

  #main .eyecatch .list-cta .item > a .icon {
    right: 1.1em;
  }

  #main .eyecatch .list-cta .item > a::after {
    right: 0.5em;
  }

  /* HubSpotボタン */
  #main .eyecatch .list-cta .item .btn-cta .cta_button {
    padding: 4.6em 0 1em !important;
  }

  #main .eyecatch .list-cta .item.document .btn-cta {
    background: url("../img/neuron/icon-document.png") no-repeat top 1.4em center;
    background-size: 3em auto;
  }

  #main .eyecatch .list-cta .item.ask .btn-cta {
    background: url("../img/neuron/icon-talk.png") no-repeat top 1.4em center;
    background-size: 3em auto;
  }

  #main .eyecatch .list-cta .item.demo .btn-cta {
    background: url("../img/neuron/icon-pc.png") no-repeat top 1.4em center;
    background-size: 3em auto;
  }

  #main .eyecatch .list-cta .item .btn-cta .icon {
    right: 1.1em;
  }

  #main .eyecatch .list-cta .item .btn-cta::after {
    right: 0.5em;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/*
================================================================================
■ 07. ページ内リンクエリア（下層ページ共通）
================================================================================
*/
#main .list-anchor {
  display: flex;
  flex-wrap: wrap;
  padding: 40px 0 0;
  font-size: 1.5rem;
}

#main .list-anchor .item {
  display: flex;
  width: 25%;
  padding: 0 5px;
  margin-bottom: 10px;
  /*transition: .2s;*/
}

#main .list-anchor .item:first-child {
  margin-left: auto;
}

#main .list-anchor .item:last-child {
  margin-right: auto;
}

#main .list-anchor .item .btn {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  line-height: 1.2;
  text-align: center;
  padding: 0.8em 1.5em 0.8em 2.2em;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 50px;
  position: relative;
  transition: .2s;
}

#main .list-anchor .item .btn:hover {
  background: #ebebeb;
}

#main .list-anchor .item .btn::before {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-bottom: 1px solid #bbb;
  border-right: 1px solid #bbb;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 1.3em;
  margin-top: -0.25em;
}

#main .list-anchor .item .btn::after {
  content: '';
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  border-bottom: 1px solid #bbb;
  border-right: 1px solid #bbb;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  left: 1.3em;
  margin-top: -0.5em;
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .list-anchor {
    font-size: 1.4rem;
  }

  #main .list-anchor .item {
    width: 50%;
  }
}

@media print, screen and (max-width: 500px) {
  #main .list-anchor .item {
    width: 100%;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/* ページ内リンクエリアの追従（#mainにposition:relativeを付与） */
#floating-anchor {
  z-index: 2;
}

#floating-anchor.fixed {
  position: fixed;
}

/* PC版のみ追従を解除 */
#floating-anchor.fixed-remove {
  position: absolute;
  top: unset !important;
  bottom: 0;
}

/*----------------- ▼ (PC) ▼ -----------------*/
@media print, screen and (min-width: 801px) {
  #floating-anchor {
    position: absolute;
    /*topはjsで設定*/
    right: 0;
    padding: 20px 0;
    font-size: 1.6rem;
  }

  #floating-anchor .box {
    max-width: 210px;
    padding: 1em 0 1.3em 1em;
    border-radius: 8px 0 0 8px;
    box-shadow: -3px 3px 6px 1px rgba(0,0,0,0.1);
    background: #fff;
  }

  #floating-anchor .box .btn {
    color: #009edd;
    padding-right: 0.5em;
    border-bottom: 1px solid #009edd;
    cursor: pointer;
  }

  #floating-anchor .box .list {
    display: flex;
    flex-direction: column;
    padding: 1.2em 0.5em 0.5em 1em;
    border-bottom: 1px solid #009edd;
  }

  #floating-anchor .box .list .item {
    line-height: 1.3;
    /*margin-bottom: 0.8em;*/
  }

  #floating-anchor .box .list .item a {
    display: block;
    color: #797979;
    position: relative;
    margin-bottom: 25px;
  }

  #floating-anchor .box .list .item a.active {
    color: inherit;
  }

  #floating-anchor .box .list .item a.active::before {
    content: '';
    display: inline-block;
    border-style: solid;
    border-width: 5px 0 5px 5px;
    border-color: transparent transparent transparent #009edd;
    position: absolute;
    top: 4px;
    left: -12px;
  }

  #floating-anchor .box .list .item .sub {
    font-size: 1.3rem;
    color: #797979;
    margin-bottom: 10px;
    padding-left: 1em;
  }

  #floating-anchor .box .list .item .sub:nth-child(2) {
    margin-top: -15px;
  }

  #floating-anchor .box .list .item a.sub::before {
    content: '-';
    position: absolute;
    top: 0;
    left: 0;
  }

  #floating-anchor .box .list .item a.sub.active::before {
    content: '';
    top: 1px;
  }
}

/* 横幅が1410pxより大きい場合は開く */
@media print, screen and (min-width: 1411px) {
  #floating-anchor .contents {
    display: block;
  }
}

/* 横幅が1410px以下の場合は閉じる */
@media print, screen and (min-width: 801px) and (max-width: 1410px) {
  #floating-anchor .contents {
    display: none;
  }
}
/*----------------- ▲ (PC) ▲ -----------------*/

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #floating-anchor {
    width: 100%;
    font-size: 1.6rem;
    box-shadow: 0 4px 4px 1px rgba(0,0,0,0.1);
    background: #fff;
    position: absolute;
  }

  #floating-anchor .btn {
    color: #009edd;
    padding: 0.6em 15px;
    cursor: pointer;
    position: relative;
  }

  #floating-anchor .btn::after {
    font-family: 'FontAwesome';
    content: '\f067';
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -0.8em;
  }

  #floating-anchor .btn.active::after {
    font-family: 'FontAwesome';
    content: '\f068';
  }

  #floating-anchor .contents {
    display: none;
  }

  #floating-anchor .contents .list .item {
    line-height: 1.3;
    border-top: 1px solid #009edd;
  }

  #floating-anchor .contents .list .item a {
    display: block;
    padding: 0.8em 40px 0.8em 15px;
    color: #009edd;
    position: relative;
  }

  #floating-anchor .contents .list .item a::before {
    content: '';
    display: inline-block;
    width: 24px;
    height: 24px;
    border: 1px solid #ccc;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -12px;
  }

  #floating-anchor .contents .list .item a::after {
    font-family: 'FontAwesome';
    content: '\f063';
    font-size: 1.2rem;
    position: absolute;
    top: 50%;
    right: 16px;
    margin-top: -0.5em;
  }

  #floating-anchor .contents .list .item a.sub {
    font-size: 1.4rem;
    color: #797979;
    border-bottom: 1px dotted #7979;
  }

  #floating-anchor .contents .list .item a.sub::after {
    color: #009edd;
  }

  #floating-anchor .contents .list .item a.sub:nth-child(2) {
    border-top: 1px solid #009edd;
  }

  #floating-anchor .contents .list .item a.sub:last-child {
    border-bottom: none;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/*
================================================================================
■ 08. Hubspotバナーエリア（下層ページ共通）
================================================================================
*/
#main .banner-cta {
  max-width: 640px;
  margin: 0 auto;
}

/*
================================================================================
■ 09. TOP、下層ページ共通レイアウトパーツ
================================================================================
*/

/*
--------------------------------------------------------------------------------
□ 01 導入事例
--------------------------------------------------------------------------------
*/
#main .section-common.section-case .list-case {
  display: flex;
  flex-wrap: wrap;
  /*justify-content: center;*/
  margin-bottom: 40px;
}

#main .section-common.section-case .list-case .item {
  display: flex;
  flex-direction: column;
  width: 33.3333%;
  padding: 0 20px;
  margin-bottom: 30px;
  transition: .2s;
}

/* 訴求タグ */
#main .section-common.section-case .list-case .item .tag-effect {
  align-self: flex-start;
  background: #e9f9ff;
  border: 1px solid #009edd;
  border-radius: 5px;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.4;
  color: #004e6c;
  padding: 0.4em 0.7em 0.3em;
  margin-bottom: 0.8em;
}

#main .section-common.section-case .list-case .item .tag-effect .emphasis {
  color: #009edd;
  font-style: normal;
}

#main .section-common.section-case .list-case .item-wrap {
  display: flex;
  flex-direction: column;
}

#main .section-common.section-case .list-case .item:hover {
  transform: scale(1.02);
}

#main .section-common.section-case .list-case .item:first-child {
  margin-left: auto;
}

#main .section-common.section-case .list-case .item:last-child {
  margin-right: auto;
}

#main .section-common.section-case .list-case .item .image-wrap img {
  /* 370×240サイズを想定 */
  aspect-ratio: 37 / 24;
  object-fit: cover;
  border-radius: 10px;
}

#main .section-common.section-case .list-case .item .title {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.2;
  padding: 1em 2em 1.4em 0;
  position: relative;
}

#main .section-common.section-case .list-case .item .title .icon {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: normal;
  color: #009ede;
  margin-left: 1em;
}

#main .section-common.section-case .list-case .item .title .icon::before {
  position: absolute;
  top: 50%;
  right: 0.55em;
  margin-top: -0.6em;
  z-index: 1;
}

#main .section-common.section-case .list-case .item .title .icon::after {
  content: '';
  display: inline-block;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  border: 1px solid #ccc;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -1.1em;
}

#main .section-common.section-case .list-case .item .description {
  margin-bottom: 1.5em;
}

#main .section-common.section-case .list-case .item .logo-wrap {
  /*margin-top: auto;
  border-top: 1px solid #ccc;*/
  padding: 10px 0 0;
  text-align: center;
}

#main .section-common.section-case .list-case .item .logo-wrap img {
  max-width: 200px;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 1000px) {
  #main .section-common.section-case .list-case .item {
    padding: 0 10px;
  }

  #main .section-common.section-case .list-case .item .title {
    font-size: 1.8rem;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common.section-case .list-case .item {
    width: 100%;
    padding: 0;
  }

  #main .section-common.section-case .list-case .item .title {
    font-size: 1.6rem;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/* slickスライダー */
#main .section-common.section-case {
}

#main .section-common.section-case .list-slider {
  display: none;
  margin-bottom: 60px;
}

#main .section-common.section-case .list-slider.slick-initialized {
  /* 初期化後に表示 */
  display: block;
}

.list-slider.type-smooth .slick-list .slick-track {
  display: flex;
  align-items: center;
  margin: 0 -5px;
}

.list-slider.type-smooth .slick-list .slick-track .item {
  height: auto;
  display: flex !important;
  justify-content: center;
  align-items: center;
  margin: 0 5px;
}

.list-slider.type-smooth .slick-list .slick-track .item img {
  width: 100%;
  max-width: 150px;
}

/*  実績数がスライダー表示数より少ない場合の調整 */
@media print, screen and (min-width: 1001px) {
  .list-slider.type-smooth.less1 .slick-list,
  .list-slider.type-smooth.less2 .slick-list,
  .list-slider.type-smooth.less3 .slick-list {
    display: flex;
    justify-content: center;
  }
}

@media print, screen and (min-width: 801px) and (max-width: 1000px) {
  .list-slider.type-smooth.less2 .slick-list,
  .list-slider.type-smooth.less3 .slick-list {
    display: flex;
    justify-content: center;
  }

  .list-slider.type-smooth.less1 .slick-list {
    display: block;
  }
}

@media print, screen and (max-width: 800px) {
  .list-slider.type-smooth.less3 .slick-list {
    display: flex;
    justify-content: center;
  }

  .list-slider.type-smooth.less1 .slick-list,
  .list-slider.type-smooth.less2 .slick-list {
    display: block;
  }
}

/*
--------------------------------------------------------------------------------
□ 02. Neuron ESの特長
--------------------------------------------------------------------------------
*/
.section-common.section-feature {
}

/* 特長説明エリア注釈 */
#main .section-common.section-feature .right-sp {
  text-align: right;
  margin-bottom:10px;
  font-size: 0.8em;
  line-height: 1.2em;
}

/* 特長説明イラストエリア */
#main .section-common.section-feature .box-feature {
  background: #fff;
  border-radius: 10px;
  padding: 60px 20px 0px;
  margin-bottom: 10px;
  position: relative;
}

/* 特長説明イラストエリア - アイコンリスト */
#main .section-common.section-feature .box-feature .list-feature {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  position: absolute;
  left: 20px;
  right: 20px;
  /* アイコンリストのベースサイズ（レスポンシブ調整用） */
  font-size: 1.6rem;
  padding: 3em 2em;
}

#main .section-common.section-feature .box-feature .list-feature .item {
  width: 50%;
  display: flex;
  position: relative;
}

/* 余白の調整用 */
#main .section-common.section-feature .box-feature .list-feature .item:nth-child(odd)::after,
#main .section-common.section-feature .box-feature .list-feature .item:nth-child(even)::before {
  content: '';
  display: block;
  flex: 1;
}

#main .section-common.section-feature .box-feature .list-feature .item .wrap {
  height: 9em;
  width: 10em;
  display: flex;
  align-items: center;
  position: relative;
}

#main .section-common.section-feature .box-feature .list-feature .item:nth-child(odd) .wrap {
  justify-content: flex-end;
}

#main .section-common.section-feature .box-feature .list-feature .item:nth-child(even) .wrap {
  justify-content: flex-start;
}

#main .section-common.section-feature .box-feature .list-feature .item:nth-child(1) .wrap,
#main .section-common.section-feature .box-feature .list-feature .item:nth-child(2) .wrap,
#main .section-common.section-feature .box-feature .list-feature .item:nth-child(5) .wrap,
#main .section-common.section-feature .box-feature .list-feature .item:nth-child(6) .wrap {
  width: 13em;
}

#main .section-common.section-feature .box-feature .list-feature .item .title {
  width: 7em;
  height: 7em;
  display: flex;
  justify-content: center;
  flex-direction: column;
  align-items: center;
  border-radius: 100%;
  background: #fff;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
  text-align: center;
  line-height: 1.1;
  position: relative;
}

/*
#main .section-common.section-feature .box-feature .list-feature .item .title::before {
  content: '';
  display: block;
  padding-top: 100%;
}
*/

#main .section-common.section-feature .box-feature .list-feature .item .small {
  font-size: 88%;
  margin-top: 3px;
}

#main .section-common.section-feature .box-feature .list-feature .item .info {
  font-size: 1.2rem;
  line-height: 1.1;
  position: absolute;
  bottom: 0.3em;
  left: 2em;
}

/* アイコン */
#main .section-common.section-feature .box-feature .list-feature .item .title::after {
  content: '';
  display: inline-block;
  width: 5.6em;
  height: 4.3em;
  position: absolute;
}

#main .section-common.section-feature .box-feature .list-feature .item.server .title::after {
  background: url("../img/neuron/icon-feature-01.png") no-repeat top left;
  background-size: cover;
  top: -2em;
  left: -3em;
}

#main .section-common.section-feature .box-feature .list-feature .item.cloud-storage .title::after {
  background: url("../img/neuron/icon-feature-02.png") no-repeat top left;
  background-size: cover;
  top: -2em;
  right: -3em;
}

#main .section-common.section-feature .box-feature .list-feature .item.web .title::after {
  background: url("../img/neuron/icon-feature-03.png") no-repeat top left;
  background-size: cover;
  top: 0;
  left: -4.5em;
}

#main .section-common.section-feature .box-feature .list-feature .item.cloud-service .title::after {
  background: url("../img/neuron/icon-feature-04.png") no-repeat top left;
  background-size: cover;
  top: 0;
  right: -4.5em;
}

#main .section-common.section-feature .box-feature .list-feature .item.inhouse-db .title::after {
  background: url("../img/neuron/icon-feature-05.png") no-repeat top left;
  background-size: cover;
  bottom: -2em;
  left: -3em;
}

#main .section-common.section-feature .box-feature .list-feature .item.inhouse-system .title::after {
  background: url("../img/neuron/icon-feature-06.png") no-repeat top left;
  background-size: cover;
  bottom: -2em;
  right: -3em;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 1200px) {
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(5) .wrap,
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(6) .wrap {
    justify-content: center;
  }
}

@media print, screen and (max-width: 1100px) {
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(1) .wrap,
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(2) .wrap,
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(5) .wrap,
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(6) .wrap {
    width: 10em;
  }

  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(odd) .wrap,
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(even) .wrap {
    justify-content: center;
  }
}

@media print, screen and (max-width: 1060px) {
  #main .section-common.section-feature .box-feature .list-feature {
    font-size: 1.6vw;
  }

  #main .section-common.section-feature .box-feature .list-feature .item .info {
    font-size: 1.1rem;
    bottom: 0;
    left: 1em;
    right: -2em;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common.section-feature .box-feature {
    padding: 30px 20px 0;
  }

  #main .section-common.section-feature .box-feature .list-feature {
    font-size: 1.4rem;
    padding: 3em 2em 3em 0;
    position: static;
  }

  #main .section-common.section-feature .box-feature .list-feature .item {
    width: 32%;
    display: block;
  }

  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(odd)::after,
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(even)::before {
    content: none;
  }

  #main .section-common.section-feature .box-feature .list-feature .item .wrap {
    height: auto;
    width: auto;
    flex-direction: column;
  }

  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(1) .wrap,
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(2) .wrap,
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(5) .wrap,
  #main .section-common.section-feature .box-feature .list-feature .item:nth-child(6) .wrap {
    width: auto;
  }

  #main .section-common.section-feature .box-feature .list-feature .item .info {
    font-size: 1.2rem;
    text-align: center;
    padding-top: 0.6em;
    position: static;
  }

  #main .section-common.section-feature .box-feature .list-feature .item.server {
    order: 1;
    padding-bottom: 2.2em;
  }

  #main .section-common.section-feature .box-feature .list-feature .item.web {
    order: 2;
  }

  #main .section-common.section-feature .box-feature .list-feature .item.inhouse-db {
    order: 3;
  }

  #main .section-common.section-feature .box-feature .list-feature .item.cloud-storage {
    order: 4;
  }

  #main .section-common.section-feature .box-feature .list-feature .item.cloud-service {
    order: 5;
  }

  #main .section-common.section-feature .box-feature .list-feature .item.inhouse-system {
    order: 6;
  }

#main .section-common.section-feature .box-feature .list-feature .item.message-bottom {
    order: 7;
  }
	
  #main .section-common.section-feature .box-feature .list-feature .item.server .title::after {
    top: -2em;
    right: -3em;
    left: auto;
  }

  #main .section-common.section-feature .box-feature .list-feature .item.inhouse-db .title::after {
    top: -2em;
    right: -3em;
    bottom: auto;
    left: auto;
  }

  #main .section-common.section-feature .box-feature .list-feature .item.web .title::after {
    top: -2em;
    right: -3em;
    left: auto;
  }

  #main .section-common.section-feature .box-feature .list-feature .item.cloud-service .title::after {
    top: -2em;
    right: -3em;
  }

  #main .section-common.section-feature .box-feature .list-feature .item.inhouse-system .title::after {
    top: -2em;
    bottom: auto;
    right: -3em;
  }
}

  #main .section-common.section-feature .box-feature .list-feature .item.message-bottom .title::after {
    top: -4em;
    bottom: auto;
  }
}

@media print, screen and (max-width: 500px) {
  #main .section-common.section-feature .box-feature .list-feature {
    font-size: 1.4rem;
    padding: 3em 0;
  }

  #main .section-common.section-feature .box-feature .list-feature .item .title::after {
    width: 4em;
    height: 3.06em;
    top: -1.6em !important;
    right: 50% !important;
    margin-right: -2em;
  }

  #main .section-common.section-feature .box-feature .list-feature .item .info {
    font-size: 1.1rem;
  }
}

@media print, screen and (max-width: 390px) {
  #main .section-common.section-feature .box-feature .list-feature {
    font-size: 1.2rem;
  }

  #main .section-common.section-feature .box-feature .list-feature .item .title {
    width: 6.6em;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/* 特長説明イラストエリア - PC画面 */
#main .section-common.section-feature .box-feature .pc-wrap {
  width: 630px;/* pc::afterのサイズと一致させる */
  margin: 0 auto;
  text-align: center;
  position: relative;
}

/* 虫眼鏡の人 */
#main .section-common.section-feature .box-feature .pc-wrap::after {
  content: '';
  display: inline-block;
  width: 250px;
  height: 260px;
  background-size: contain;
  position: absolute;
  bottom: -20px;
  right: -180px;
}

#main .section-common.section-feature .box-feature .pc-wrap .message {
  display: inline-block;
  font-size: 2.8rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.2;
  padding: 0 0.65em 0 1em;
  margin-bottom: 0.6em;
  position: relative;
}

#main .section-common.section-feature .box-feature .pc-wrap .message::before {
  content: '';
  display: inline-block;
  height: 4rem;
  border-left: solid 3px;
  transform: rotate(-30deg);
  position: absolute;
  left: 0;
  bottom: 0;
}

#main .section-common.section-feature .box-feature .pc-wrap .message::after {
  content: '';
  display: inline-block;
  height: 4rem;
  border-right: solid 3px;
  transform: rotate(30deg);
  position: absolute;
  right: 0;
  bottom: 0;
}

#main .section-common.section-feature .box-feature .message-bottom {
  display: block;
  font-size: 1.4rem;
  font-weight: 700;
  text-align: center;
  line-height: 1.2;
  position: relative;
  margin: 0 auto;      
  max-width: 100%;  
}

#main .section-common.section-feature .box-feature .pc-wrap .pc {
  width: 630px;/* pc::afterのサイズと一致させる */
  height: 480px;/* pc::afterのサイズと虫眼鏡の人をずらす高さ分に一致させる（350px+130px） */
  margin: 0 auto;
  position: relative;
}

#main .section-common.section-feature .box-feature .pc-wrap .pc .display {
  position: relative;
}

#main .section-common.section-feature .box-feature .pc-wrap .pc img {
  width: 498px;
  border-radius: 10px;
}

#main .section-common.section-feature .box-feature .pc-wrap .pc .attention {
  font-size: 92%;
  color: #f72a48;
  font-weight: 700;
  position: absolute;
  bottom: -3.8em;
  left: 4.5em;
}

#main .section-common.section-feature .box-feature .pc-wrap .pc::after {
  content: '';
  display: inline-block;
  width: 630px;
  height: 350px;
  background: url("../img/neuron/pc.png") no-repeat top left;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -315px;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 1060px) {
  #main .section-common.section-feature .box-feature .pc-wrap {
    width: 57vw;
  }

  #main .section-common.section-feature .box-feature .pc-wrap .pc {
    width: 57vw;
    height: 46vw;
  }

  #main .section-common.section-feature .box-feature .pc-wrap .pc img {
    width: 45.4vw;
  }

  #main .section-common.section-feature .box-feature .pc-wrap .pc::after {
    width: 57vw;
    height: 31.5vw;
    margin-left: -28.5vw;
  }

  #main .section-common.section-feature .box-feature .pc-wrap .pc .attention {
    font-size: 1.45vw;
    bottom: -3.5em;
    left: 4em;
  }

  #main .section-common.section-feature .box-feature .pc-wrap::after {
	display: none;
    width: 20vw;
    height: 21vw;
    right: -0.5vw;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common.section-feature .box-feature .pc-wrap {
    width: 84vw;
  }

  #main .section-common.section-feature .box-feature .pc-wrap .pc {
    width: 84vw;
    height: 56vw;
  }

  #main .section-common.section-feature .box-feature .pc-wrap .pc img {
    width: 66vw;
  }

  #main .section-common.section-feature .box-feature .pc-wrap .pc::after {
    width: 84vw;
    height: 46.4vw;
    margin-left: -42vw;
  }

  #main .section-common.section-feature .box-feature .pc-wrap .pc .attention {
    font-size: 2.25vw;
    bottom: -3.6em;
    left: 3.5em;
  }

  #main .section-common.section-feature .box-feature .pc-wrap::after {
    width: 28vw;
    height: 30vw;
    right: 0;
  }
}

@media print, screen and (max-width: 500px) {
  #main .section-common.section-feature .box-feature .pc-wrap {
    padding-bottom: 30px;
  }

  #main .section-common.section-feature .box-feature .pc-wrap .message {
    font-size: 1.8rem;
  }

  #main .section-common.section-feature .box-feature .pc-wrap .pc .attention {
    display: inline-block;
    width: 100%;
    height: 3em;
    font-size: 1.1rem;
    text-align: left;
    line-height: 1.2;
    bottom: -5em;
    left: 0;
    padding: 0 28vw 0 7vw;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/* 特長の詳細エリア */
#main .section-common.section-feature .list-detail {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#main .section-common.section-feature .list-detail > .item {
  display: flex;
  flex-direction: column;
  width: 49%;
  margin-bottom: 20px;
  background: #fff;
  border-radius: 10px;
  padding: 80px 40px 40px;
  position: relative;
}

#main .section-common.section-feature .list-detail > .item .title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.4;
  text-align: center;
  margin-bottom: 20px;
  order: 2;
}

#main .section-common.section-feature .list-detail > .item .tag {
  font-size: 1.5rem;
  font-weight: 700;
  text-align: center;
  color: #fff;
  width: 6em;
  padding: 0.6em 0;
  background: #009ede;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -3em;
}

#main .section-common.section-feature .list-detail > .item .image-wrap {
  order: 1;
  max-width: 100px;
  margin: 0 auto 20px;
}

#main .section-common.section-feature .list-detail > .item .description {
  order: 3;
}

#main .section-common.section-feature .list-detail > .item .list-btn {
  order: 4;
  margin-top: 1em
}

#main .section-common.section-feature .list-detail > .item .list-btn .item {
  min-width: 250px;
}

#main .section-common.section-feature .list-detail > .item .list-btn .item .btn {
  border: 2px solid #009ede;
  color: #009ede;
}

#main .section-common.section-feature .list-detail > .item .list-btn .item .btn:hover {
  background: #009ede;
  color: #fff;
}

#main .section-common.section-feature .list-detail > .item.etc {
  width: 100%;
  padding: 40px;
}

#main .section-common.section-feature .list-detail > .item.etc .title {
  text-align: left;
}

#main .section-common.section-feature .list-detail > .item.etc .list {
  list-style-type: disc;
  margin-left: 1.5em;
}

#main .section-common.section-feature .list-detail > .item.etc .list .item {
  line-height: 1.3;
  margin-bottom: 0.6em;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 1160px) {
  #main .section-common.section-feature .list-detail > .item {
    padding: 80px 30px 40px;
  }

  #main .section-common.section-feature .list-detail > .item .title {
    font-size: 2.2rem;
  }
}

@media print, screen and (max-width: 960px) {
  #main .section-common.section-feature .list-detail > .item {
    padding: 80px 20px 40px;
  }

  #main .section-common.section-feature .list-detail > .item .title {
    font-size: 1.9rem;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common.section-feature .list-detail > .item {
    width: 100%;
    padding: 60px 30px 30px;
  }

  #main .section-common.section-feature .list-detail > .item .title {
    font-size: 1.8rem;
  }

  #main .section-common.section-feature .list-detail > .item .tag {
    font-size: 1.3rem;
  }

  #main .section-common.section-feature .list-detail > .item.etc {
    padding: 30px;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/*
--------------------------------------------------------------------------------
□ 03. Neuron ESの機能一覧
--------------------------------------------------------------------------------
*/
#main .section-common.section-function .list-function {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 50px;
}

#main .section-common.section-function .list-function .item {
  width: 24%;
  min-height: 5em;
  margin: 8px 0;
  font-size: 2.0rem;
  font-weight: 700;
  line-height: 1.2;
  text-align: center;
  background: #fff;
  border-radius: 10px;
  padding: 1em 0.5em;
  box-shadow: 0 0 10px rgba(0,0,0,0.2);
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#main .section-common.section-function .list-function .item .link {
  display: block;
  color: #009ede;
  text-decoration: underline;
  font-size: 80%;
  padding-top: 5px;
}

#main .section-common.section-function .list-function::after {
  content: '';
  display: block;
  width: 24%;
  height: 0;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 960px) {
  #main .section-common.section-function .list-function .item {
    font-size: 1.8rem;
    padding: 1em 0.2em;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common.section-function .list-function .item {
    width: 49%;
    font-size: 1.6rem;
  }

  #main .section-common.section-function .list-function::after {
    width: 49%;
  }
}

@media print, screen and (max-width: 500px) {
  #main .section-common.section-function .list-function .item {
    font-size: 1.4rem;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/*
--------------------------------------------------------------------------------
□ 04. Neuron ESの導入効果
--------------------------------------------------------------------------------
*/
#main .section-common.section-effect .list-effect {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 50px;
}

#main .section-common.section-effect .list-effect .item {
  display: flex;
  flex-direction: column;
  width: 49%;
  margin-bottom: 20px;
  background: #fff;
  border-radius: 10px;
  padding: 40px;
}

#main .section-common.section-effect .list-effect .item .title {
  font-size: 2.4rem;
  font-weight: 700;
  text-align: center;
  margin-bottom: 20px;
  order: 2;
}

#main .section-common.section-effect .list-effect .item .image-wrap {
  order: 1;
  max-width: 100px;
  margin: 0 auto 20px;
}

#main .section-common.section-effect .list-effect .item .description {
  order: 3;
}

#main .section-common.section-effect .list-attention {
  font-size: 1.6rem !important;
  line-height: 1.5 !important;
  padding: 2em 0 0;
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common.section-effect .list-effect .item {
    width: 100%;
    padding: 30px;
  }

  #main .section-common.section-effect .list-effect .item .title {
    font-size: 1.8rem;
  }

  #main .section-common.section-effect .list-attention {
    font-size: 1.4rem !important;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/*
--------------------------------------------------------------------------------
□ 05. 価格・ライセンス
--------------------------------------------------------------------------------
*/
#main .section-common.section-price .list-price {
  max-width: 960px;
  margin: 0 auto 50px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

#main .section-common.section-price .list-price .item {
  width: 48.5%;
  background: #fff;
  border-radius: 10px;
  padding: 40px;
}

#main .section-common.section-price .list-price .item .title {
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  margin-bottom: 1em;
}

#main .section-common.section-price .list-price .item .image-wrap {
  max-width: 300px;
  margin: 0 auto 15px;
}

#main .section-common.section-price .list-price .item .price {
  font-size: 2.0rem;
  font-weight: 700;
  color: #009ede;
  margin-bottom: 15px;
  text-align: center;
}

#main .section-common.section-price .list-price .item .price .emphasis {
  font-size: 4.0rem;
}

#main .section-common.section-price .list-attention {
  font-size: 1.6rem !important;
  line-height: 1.5 !important;
  padding: 2em 0 0;
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (max-width: 1000px) {
  #main .section-common.section-price .list-price .item {
    width: 49%;
    padding: 30px 25px;
  }
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common.section-price .list-price .item {
    width: 100%;
    margin-bottom: 20px;
  }

  #main .section-common.section-price .list-price .item .title {
    font-size: 1.8rem;
  }

  #main .section-common.section-price .list-price .item .image-wrap {
    max-width: 300px;
    margin: 0 auto 10px;
  }

  #main .section-common.section-price .list-price .item .price {
    font-size: 1.6rem;
    margin-bottom: 10px;
  }

  #main .section-common.section-price .list-price .item .price .emphasis {
    font-size: 3.2rem;
  }

  #main .section-common.section-price .list-attention {
    font-size: 1.4rem !important;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/*
--------------------------------------------------------------------------------
□ 06. サポート
--------------------------------------------------------------------------------
*/
#main .section-common.section-support .box-flow {
  line-height: 1;
}

#main .section-common.section-support .box-flow .row-title {
  font-weight: 700;
  color: #009ede;
}

/* 説明 */
#main .section-common.section-support .box-flow .row-description .list {
  font-size: 1.5rem;
  list-style-type: disc;
  margin-left: 1em;
}

#main .section-common.section-support .box-flow .row-description .list .description {
  margin-bottom: 0.5em;
}

#main .section-common.section-support .box-flow .row-description td {
  padding: 1em;
}

/*----------------- ▼ (PC) ▼ -----------------*/
@media print, screen and (min-width: 801px) {
  #main .section-common.section-support .box-flow {
    max-width: 990px;
    margin: 0 auto 40px;
    /* ベースのフォントサイズ */
    font-size: 1.8rem;
  }

  #main .section-common.section-support .box-flow td,
  #main .section-common.section-support .box-flow th {
    width: 330px;
    padding: 0;
  }

  /* リボン */
  #main .section-common.section-support .box-flow .row-title .title {
    width: 100%;
    height: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    filter: drop-shadow(0 0 5px rgba(0, 0, 0, .4));
  }

  #main .section-common.section-support .box-flow .row-title .title::before {
    content: '';
    display: inline-block;
    width: 102%;
    height: 100px;
    background: #fff;
    clip-path: polygon(95% 0%, 100% 50%, 95% 100%, 0% 100%, 5% 50%, 0% 0%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }

  /* 期間 */
  #main .section-common.section-support .box-flow .row-period .period {
    position: relative;
  }

  #main .section-common.section-support .box-flow .row-period .period::before {
    content: '';
    display: inline-block;
    width: 1px;
    height: 1em;
    background: #000;
    position: absolute;
    top: 50%;
    left: 0;
    margin-top: -0.5em;
  }

  #main .section-common.section-support .box-flow .row-period .period::after {
    content: '';
    display: inline-block;
    width: 1px;
    height: 1em;
    background: #000;
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -0.5em;
  }

  #main .section-common.section-support .box-flow .row-period .wrap {
    display: flex;
    align-items: center;
    padding: 1em 0;
    position: relative;
  }

  #main .section-common.section-support .box-flow .row-period .wrap::before {
    content: '';
    display: inline-block;
    height: 1px;
    background: #000;
    flex: 1;
  }

  #main .section-common.section-support .box-flow .row-period .wrap::after {
    content: '';
    display: inline-block;
    height: 1px;
    background: #000;
    flex: 1;
  }

  #main .section-common.section-support .box-flow .row-period .wrap .title {
    padding: 0 0.5em;
  }
}

/* レスポンシブ調整 --------------------------*/
@media print, screen and (min-width: 801px) and (max-width: 1060px) {
  #main .section-common.section-support .box-flow {
    font-size: 1.8vw;
  }

  #main .section-common.section-support .box-flow td,
  #main .section-common.section-support .box-flow th {
    width: 33vw;
  }
}
/*----------------- ▲ (PC) ▲ -----------------*/

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common.section-support .box-flow {
    max-width: 500px;
    margin: 0 auto 50px;
    font-size: 1.6rem;
  }

  #main .section-common.section-support .box-flow tbody {
    display: flex;
  }

  #main .section-common.section-support .box-flow th,
  #main .section-common.section-support .box-flow td {
    min-height: 12em;
    display: flex;
  }

  #main .section-common.section-support .box-flow .row-title {
    display: flex;
    flex-direction: column;
  }

  /* リボン */
  #main .section-common.section-support .box-flow .row-title .title {
    width: 100%;
    max-width: 90px;
    padding: 1em 1.5em;
    display: flex;
    justify-content: center;
    align-items: center;
    filter: drop-shadow(0 0 5px rgba(0, 0, 0, .4));
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
	position:relative;
  }

  #main .section-common.section-support .box-flow .row-title .title::before {
    content: '';
    display: inline-block;
    width: 100%;
    height: 100%;
    background: #fff;
    clip-path: polygon(100% 0%, 100% 95%, 50% 100%, 0% 95%, 0% 0%, 50% 5%);
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
  }

  /* 期間 */
  #main .section-common.section-support .box-flow .row-period {
    display: flex;
    flex-direction: column;
  }

  #main .section-common.section-support .box-flow .row-period .period {
    position: relative;
    flex: 1;
  }

  #main .section-common.section-support .box-flow .row-period .period::before {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1px;
    background: #000;
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -0.5em;
  }

  #main .section-common.section-support .box-flow .row-period .period::after {
    content: '';
    display: inline-block;
    width: 1em;
    height: 1px;
    background: #000;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin-left: -0.5em;
  }

  #main .section-common.section-support .box-flow .row-period .wrap {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 1em;
    position: relative;
  }

  #main .section-common.section-support .box-flow .row-period .wrap::before {
    content: '';
    display: inline-block;
    width: 1px;
    background: #000;
    flex: 1;
  }

  #main .section-common.section-support .box-flow .row-period .wrap::after {
    content: '';
    display: inline-block;
    width: 1px;
    background: #000;
    flex: 1;
  }

  #main .section-common.section-support .box-flow .row-period .wrap .title {
    padding: 0.5em 0;
  }

  /* 説明 */
  #main .section-common.section-support .box-flow .row-description {
    display: flex;
    flex-direction: column;
  }

  #main .section-common.section-support .box-flow .row-description .list {
    margin-left: 0.5em;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/*
--------------------------------------------------------------------------------
□ 07. よくある質問
--------------------------------------------------------------------------------
*/
#main .section-common.section-faq .list-faq {
  max-width: 960px;
  margin: 0 auto 50px;
}
#main .section-common.section-faq .list-faq .item {
  background: #fff;
  border-radius: 10px;
  padding: 1em;
  margin-bottom: 1em;
}
#main .section-common.section-faq .list-faq .item .q {
  font-size: 1.8rem;
  font-weight: 700;
  padding-left: 2.5em;
  margin: 0.5em 0 0.5em;
  position: relative;
}
#main .section-common.section-faq .list-faq .item .q::before {
  content: 'Q.';
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 700;
  color: #009ede;
  position: absolute;
  top: -0.3em;
  left: 0;
}
/* 回答のベーススタイル */
#main .section-common.section-faq .list-faq .item .a {
  padding-left: 2.5em;
  position: relative;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
}
/* デフォルトではA.ラベルを隠す */
#main .section-common.section-faq .list-faq .item .a::before {
  display: none;
}
/* open時にスライドダウン＆A.ラベルを表示 */
#main .section-common.section-faq .list-faq .item .a.open {
  max-height: 500px; /* 回答の長さに合わせて十分大きな値に */
}
#main .section-common.section-faq .list-faq .item .a.open::before {
  content: 'A.';
  display: inline-block;
  font-size: 2.4rem;
  font-weight: 700;
  color: #f72a48;
  position: absolute;
  top: -0.4em;
  left: 0;
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common.section-faq .list-faq .item .q {
    font-size: 1.5rem;
  }

  #main .section-common.section-faq .list-faq .item .q::before {
    top: -0.2em;
    font-size: 1.8rem;
  }

  #main .section-common.section-faq .list-faq .item .a {
    padding-left: 2.5em;
  }

  #main .section-common.section-faq .list-faq .item .a::before {
    top: -0.3em;
    font-size: 1.8rem;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/

/*
--------------------------------------------------------------------------------
□ 08. 注意書きパーツ
--------------------------------------------------------------------------------
*/
#main .section-common .list-attention {
  font-size: 1.2rem;
  line-height: 1.2;
  margin-bottom: 2em;
}

#main .section-common .list-attention .item {
  margin-bottom: 0.5em;
}

#main .section-common .list-attention.right {
  text-align: left;
}

#main .section-common .list-attention.center {
  text-align: center;
}

/*----------------- ▼ (SP) ▼ -----------------*/
@media print, screen and (max-width: 800px) {
  #main .section-common .list-attention.left-sp {
    text-align: left;
  }

  #main .section-common .list-attention.right-sp {
    text-align: right;
  }

  #main .section-common .list-attention.center-sp {
    text-align: center;
  }
}
/*----------------- ▲ (SP) ▲ -----------------*/


/*
--------------------------------------------------
フローティングバナー 21/08/27追加
--------------------------------------------------
*/

.floating-banner {
  position: fixed;/* 追従 */
  z-index: 99999;/* 他の要素の下に隠れないように */
  bottom: 0;/* バナーの上下の位置 */
  left: 0;/* バナーの左右の位置 */
}

.floating-banner.hide {
display: none !important;
}

.floating-banner_pc {
  width: 300px;/* バナーの横幅を指定 */
}
.floating-banner:hover {
  opacity: .9;/* ホバーで少し透過 */
}
.floating-banner_sp {
  display: none;/* PCではスマホ用のバナーは非表示に */
}
@media screen and (max-width: 560px) {/* タブレット用のブレイクポイントを指定 */
  .floating-banner_pc {
      display: none;/* タブレットサイズ以下でPC用のバナーを非表示に */
  }
}
@media screen and (max-width: 560px) {/* スマホ用のブレイクポイントを指定 */
  .floating-banner_sp {
      display: inline-block;/* 消していたスマホ用のバナーを表示させる */
      width: 100vw;/* スマホの画面幅いっぱいにバナーを表示 */
  height: auto;
  }

  .floating-banner {
    width: 100%;
  }

  .floating-banner_sp img {
    width: 100%;
    height: auto;
  }
}

/*
--------------------------------------------------
ブログ用フローティングバナー 21/12/14追加
--------------------------------------------------
*/

.floating-banner2 {
  position: fixed;/* 追従 */
  z-index: 99999;/* 他の要素の下に隠れないように */
  bottom: 0;/* バナーの上下の位置 */
  right: 0;/* バナーの左右の位置 */
}

.floating-banner2.hide {
display: none !important;
}
.floating-banner2:hover {
  opacity: .9;/* ホバーで少し透過 */
}
@media screen and (max-width: 560px) {/* スマホ用のブレイクポイントを指定 */
  .floating-banner2 {
    width: 100%;
  }
}


.fade {
transition: all 2000ms;
opacity: 0;
visibility: hidden;
/*transform: translate(0px, 50px);*/
}

.fadein {
opacity: 1;
visibility: visible;
transform: translate(0px, 0px);
}


/*以下開閉ボタン*/

/*ボタン装飾*/
.hidden_box label {
  /*float: right;*/
  float: left;
  /*padding: 3px 0 3px 5px;*/
  padding: 0 10px;
  font-weight: bold;
  background: #fff;
border: 1px solid #666;
  cursor :pointer;
}

/*アイコンを表示*/
.hidden_box label:before {
  display: inline-block;
  content: '\f00d';
  font-size: 1.3rem;
  font-weight: 400;
  font-family: 'FontAwesome';
  /*padding-right: 5px;*/
  transition: 0.2s;
}

/*ボタンホバー時*/
.hidden_box label:hover {
  background: silver;
}

/*アイコンを切り替え*/
.hidden_box input:checked ~ label:before {
  content: '\f106';
float: left;
}
@media screen and (max-width: 560px) {
.hidden_box input:checked ~ label:before {
  float: right;
}
}

/*チェックは見えなくする*/
.hidden_box input {
  display: none;
}

/*クリックで中身非表示*/
.hidden_box input:checked ~ .hidden_show {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.8s;
}

/*
--------------------------------------------------
初めての生成AI　202507追加
--------------------------------------------------
*/
#main .section-common .box-card dl.ppl-voice{
    align-items: flex-start;
}

#main .section-common .box-card dl.ppl-voice .ppl-icon{
    width: 55px;
    height: 55px;
    margin-bottom: 10px;
}

#main .section-common .box-card .ppl-icon img{
    width: 100%;
    height: 100%;
    aspect-ratio: 1 / 1;
    object-fit: contain;
    border-radius: 10px;
    border: 1.5px solid #009EDD;
}

@media screen and (max-width: 560px) {
    #main .section-common .box-card dl.ppl-voice{
        padding-top: 0px;
        align-items: center;
        flex-direction: row;
    }

    #main .section-common .box-card.style-definition dl.ppl-voice dd{
        width: calc(100% - 45px);
    }

    #main .section-common .box-card dl.ppl-voice .ppl-icon{
        width: 35px;
        height: 35px;
        margin: 0 10px 0 0;
    }

    #main .section-common .box-card .ppl-icon img{
        border-radius: 5px;
    }

    #main .section-common.voice .box-4inrow .box {
        margin: 7px 0;
    }
}

/*
--------------------------------------------------
イチサンフォームスタイル 25/08/13追加
--------------------------------------------------
*/
.hs-button{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;margin:0;cursor:pointer;display:inline-block;font-weight:700;line-height:12px;position:relative;text-align:center;transition:all .15s linear;background-color:#ff7a59;border-color:#ff7a59;color:#fff;border-radius:3px;border-style:solid;border-width:1px;font-size:14px;padding:12px 24px}.hs-button:hover,.hs-button:focus{background-color:#ff8f73;border-color:#ff8f73}.hs-button:active{background-color:#e66e50;border-color:#e66e50}label{font-size:14px;width:130px;color:#33475b;display:block;float:none;width:auto;font-weight:500;line-height:20px;padding-top:0;margin-bottom:4px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.hs-video-form label{color:#fff !important}.hs-video-form .hs-back-button{background-color:#fff;width:20%;height:38px;margin-right:10px;border:1px solid;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px}.hs-video-form .hs-button{width:70%}.hs-video-form .hs-button span{font-size:15px}.hs-video-form .hs-richtext{color:#fff !important}.hs-video-form .legal-consent-container{max-height:180px !important;overflow-y:scroll !important}.hs-video-form .legal-consent-container:after{content:"";display:block;height:100px;width:100%}.hs-video-form .legal-consent-wrapper{position:relative}.hs-video-form .legal-consent-overlay{position:absolute;pointer-events:none;left:0;bottom:0;height:100px;width:100%;background:linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #292929 100%)}.hs-error-msgs label{color:#f2545b}.hs-input{display:inline-block;width:90%;max-width:100%;height:40px;padding:9px 10px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:16px;font-weight:normal;line-height:22px;color:#33475b;border:1px solid #cbd6e2;box-sizing:border-box;-webkit-border-radius:3px;-moz-border-radius:3px;-ms-border-radius:3px;border-radius:3px}.hs-input:not([type=file]){background-color:#f5f8fa}.hs-input[type=checkbox],.hs-input[type=radio]{cursor:pointer;width:auto;height:auto;padding:0;margin:3px 5px 3px 0px;line-height:normal;border:none}.hs-input[type=file]{padding:initial;border:initial;line-height:initial;box-shadow:none}select.is-placeholder{color:#bfbfbf}select.is-placeholder:focus{color:#33475b}.hs-input:-moz-placeholder{color:#bfbfbf}.hs-input::-webkit-input-placeholder{color:#bfbfbf}.hs-input option:disabled{color:#bfbfbf}.hs-input input,.hs-input textarea{transition:border .2s linear}.hs-input:focus{outline:none;border-color:rgba(82,168,236,.8)}textarea.hs-input{height:auto}select[multiple].hs-input{height:inherit}input.hs-input.error,div.field.error input,div.field.error textarea,div.field.error .chzn-choices,textarea.hs-input.error,select.hs-input.error{border-color:#c87872}input.hs-input.error:focus,div.field.error input:focus,div.field.error textarea:focus,div.field.error .chzn-choices:focus,textarea.hs-input.error:focus,select.hs-input.error:focus{border-color:#b9554d}.actions{margin-top:18px;margin-bottom:18px;padding:17px 0px}.inputs-list{margin:0 0 5px;width:100%;padding-left:5px}.inputs-list>li{display:block;padding:0;width:100%;padding-top:0}.inputs-list label{float:none;width:auto;padding:0;line-height:18px;white-space:normal;font-weight:normal}.inputs-list:first-child{padding-top:6px}.inputs-list>li+li{padding-top:2px}ul.no-list{list-style:none}.field{margin-bottom:18px}.hs-field-desc{color:#7c98b6;margin:0px 0px 6px;font-size:11px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.hs-form-required{color:red}.hs-richtext{margin-bottom:3px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;line-height:24px;font-size:14px;color:#33475b}.hs-richtext hr{margin-left:0;width:91%}.hs-custom-style .hs-dependent-field>div input.hs-input:not([type=checkbox]):not([type=radio]){width:90%}form.hs-form-rtl .field{flex:0 1 100%}form.hs-form-rtl .hs-input[type=checkbox],form.hs-form-rtl .hs-input[type=radio]{margin:3px 5px 3px 5px}form.hs-form-rtl fieldset{display:flex}form.hs-form-rtl fieldset[class^=form-columns-] .input{margin-right:0px}form.hs-form-rtl ul{padding:0px}form.hs-form-rtl .legal-consent-container .hs-form-booleancheckbox-display input{width:auto;float:right}form.hs-form-rtl .legal-consent-container .hs-form-booleancheckbox-display>span{margin-left:0px}form.hs-form-rtl .hs-dependent-field{display:flex;flex:0 1 100%;flex-wrap:wrap}.email-correction,.email-validation{padding-top:3px;font-size:12px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif}.email-correction a,.email-validation a{cursor:pointer}@media(max-width: 400px),(min-device-width: 320px)and (max-device-width: 480px){.email-correction form .form-columns-2 .hs-form-field,.email-correction form .form-columns-3 .hs-form-field,.email-validation form .form-columns-2 .hs-form-field,.email-validation form .form-columns-3 .hs-form-field{float:none;width:100%}.email-correction form .form-columns-2 .hs-form-field .hs-input,.email-correction form .form-columns-3 .hs-form-field .hs-input,.email-validation form .form-columns-2 .hs-form-field .hs-input,.email-validation form .form-columns-3 .hs-form-field .hs-input{width:90%}.email-correction form .form-columns-2 .hs-form-field input[type=checkbox],.email-correction form .form-columns-2 .hs-form-field input[type=radio],.email-correction form .form-columns-3 .hs-form-field input[type=checkbox],.email-correction form .form-columns-3 .hs-form-field input[type=radio],.email-validation form .form-columns-2 .hs-form-field input[type=checkbox],.email-validation form .form-columns-2 .hs-form-field input[type=radio],.email-validation form .form-columns-3 .hs-form-field input[type=checkbox],.email-validation form .form-columns-3 .hs-form-field input[type=radio]{width:24px}}.hs-button,.hs-form-field input[type=text],.hs-form-field input[type=email],.hs-form-field input[type=phone],.hs-form-field input[type=number],.hs-form-field input[type=tel],.hs-form-field input[type=date],.hs-form-field textarea{-webkit-appearance:none;-moz-appearance:none}.hs-default-font-element,.hs-main-font-element{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;line-height:normal}
  [id*=".hs-form"].hs-form {
    width: 100%
  } 

  [id*="hsForm"] fieldset {
    max-width: none !important;
    width: 100% !important;
  }

  [id*=".hs-form"] .hs-submit > .actions {
    text-align: center;
  }

  [id*=".hs-form"] .hs-button,
  [id*=".hs-form"] .hs-button:hover,
  [id*=".hs-form"] .hs-button:hover:not(.inactive),
  [id*=".hs-form"] .hs-button:focus,
  [id*=".hs-form"] .hs-button:active,
  [id*=".hs-form"] .hs-button:active:not(.inactive):not(.link) {
    background: #3CAAD6;
    border-color: #3CAAD6;
    color: #ffffff;
    font-size: 18px;
    line-height: 18px;
    font-family: arial, helvetica, sans-serif;
  }

  [id*=".hs-form"] legend.hs-field-desc {
    font-family: arial, helvetica, sans-serif;
    color: #7C98B6;
    font-size: 11px;
  }

  [id*=".hs-form"] .hs-form-field label:not(.hs-error-msg) {
    font-family: arial, helvetica, sans-serif;
    font-size: 16px;
  }

  [id*=".hs-form"] .hs-form-field label:not(.hs-error-msg) {
    color: #33475b;
  }

  [id*=".hs-form"] .legal-consent-container .hs-richtext,
  [id*=".hs-form"] .legal-consent-container label:not(.hs-error-msg) {
    font-family: arial, helvetica, sans-serif;
    color: #33475b;
    font-size: 14px;
  }

  [id*=".hs-form"] .hs-main-font-element, .submitted-message.hs-main-font-element{
    font-family: arial, helvetica, sans-serif;
  }

  [id*=".hs-form"].submitted-message {
    font-size: 16px;
    color: #33475b;
  }

  
  [id*=".hs-form"] a:link, [id*=".hs-form"] a:active {
    color: #0000EE
  }

  
  [id*=".hs-form"] a:visited, [id*=".hs-form"] a:hover {
    color: #551A8B
  }
.fn-date-picker.pika-single{z-index:9999;display:block;position:relative;color:#333;background:#fff;border:1px solid #ccc;border-bottom-color:#bbb;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;*zoom:1}.fn-date-picker.pika-single.is-hidden{display:none}.fn-date-picker.pika-single.is-bound{position:absolute;box-shadow:0 5px 15px -5px rgba(0,0,0,.5)}.fn-date-picker.pika-single:after,.fn-date-picker.pika-single:before{content:" ";display:table}.fn-date-picker.pika-single:after{clear:both}.fn-date-picker .pika-lendar{float:left;width:240px;margin:8px}.fn-date-picker .pika-title{position:relative;text-align:center}.fn-date-picker .pika-title select{cursor:pointer;position:absolute;z-index:9998;margin:0;left:0;top:5px;filter:alpha(opacity=0);opacity:0}.fn-date-picker .pika-label{display:inline-block;*display:inline;position:relative;z-index:9999;overflow:hidden;margin:0;padding:5px 3px;font-size:14px;line-height:20px;font-weight:700;background-color:#fff}.fn-date-picker .pika-next,.fn-date-picker .pika-prev{display:block;cursor:pointer;position:relative;outline:none;border:0;padding:0;width:20…
}
/*
--------------------------------------------------
販売パートナー向けページ 25/11/05追加
--------------------------------------------------
*/
#main.sales-partner-page {
  background-color: #F2F9FF;
}

/* partner-fix-btn-wrap */
#main.sales-partner-page {
  position: relative;
}

#main.sales-partner-page .partner-fix-btn {
  position: fixed;
  right: 0px;
  bottom: 185px;
  width: 285px;
  height: fit-content;
  border-radius: 10px 0 0 10px;
  background: #f72a48;
  padding: 1em 1.4em;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  transition: .2s;
  font-size: 2rem;
  z-index: 100;
  display: flex;
  align-items: center;
  border: 1px solid #f72a48;
}

#main.sales-partner-page .partner-fix-btn .icon {
  display: inline-block;
  font-size: 1.2rem;
  font-weight: normal;
  color: #fff;
  margin: 23px 0 0 15px;
  background: #f72a48;
  transform: rotate(90deg);
}

#main.sales-partner-page .partner-fix-btn .icon::before {
  position: absolute;
  top: 50%;
  right: 0.55em;
  margin-top: -0.6em;
  z-index: 1;
}

#main.sales-partner-page .partner-fix-btn .icon::after {
  content: '';
  display: inline-block;
  width: 2em;
  height: 2em;
  border-radius: 50%;
  border: 1px solid #fff;
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -1.1em;
}

#main.sales-partner-page .partner-fix-btn:hover {
  background: #fff;
  color: #f72a48;
  transform: scale(1.02);
}

#main.sales-partner-page .partner-fix-btn:hover .icon {
  color: #f72a48;
}

#main.sales-partner-page .partner-fix-btn:hover .icon::after {
  border-color: #f72a48;
}

/* mv-area */
#main.sales-partner-page .mv-area {
  position: relative;
  height: 600px;
  background: center 30% / cover no-repeat url(../../../uploads/2025/11/mv.jpg);
    max-width: 2000px;
    margin: 0 auto;
}

#main.sales-partner-page .mv-area .ttl-wrap {
  position: absolute;
  top: 285px;
  text-shadow: 1px 1px 0 #FFF, -1px -1px 0 #FFF,
    -1px 1px 0 #FFF, 1px -1px 0 #FFF,
    0px 1px 0 #FFF, 0 -1px 0 #FFF,
    -1px 0 0 #FFF, 1px 0 0 #FFF;
}

#main.sales-partner-page .mv-area h2 {
  font-size: 3.8rem;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: 1px;
  margin-bottom: 15px;
}

#main.sales-partner-page .mv-area p {
  font-weight: 700;
  line-height: 2;
  font-size: 2rem;
}

/* sales-support-area */

#main.sales-partner-page .section-common.sales-support-area .section-description {
  margin-bottom: 0;
}


#main.sales-partner-page .sales-support-list {
  display: flex;
  flex-wrap: wrap;
}

#main.sales-partner-page .sales-support-list li {
  width: calc((100% - 80px)/3);
  margin: 60px 40px 0 0;
}

#main.sales-partner-page .sales-support-list li:nth-child(3n) {
  margin: 60px 0 0 0;
}

#main.sales-partner-page .sales-support-img img {
  border-radius: 10px;
}

#main.sales-partner-page .sales-support-list h3 {
  margin: 20px 0 15px;
  text-align: center;
  font-size: 2.4rem;
}

/* cta-area */
#main.sales-partner-page .cta-area {
  background: center / cover no-repeat url(../../../uploads/2025/11/cta-bg.jpg);
  padding: 40px 0;
}

#main.sales-partner-page .cta-area .cta-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

#main.sales-partner-page .cta-area .cta-img img {
  width: 195px;
  height: fit-content;
  object-fit: contain;
}

#main.sales-partner-page .cta-area .cta-img.sp-display {
  display: none;
}

#main.sales-partner-page .cta-area .text-wrap {
  margin: 0 5px 0 45px;
  color: #273854;
  width: calc(100% - 195px - 300px - 50px);
}

#main.sales-partner-page .cta-area h3 {
  font-size: 2.5rem;
  margin-bottom: 15px;
}

#main.sales-partner-page .cta-area p {
  line-height: 2;
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 0;
}

#main.sales-partner-page .cta-btn {
  display: block;
  border: 2px solid #f72a48;
  border-radius: 50px;
  background: #f72a48;
  padding: 1em 1.8em;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  transition: .2s;
}

#main.sales-partner-page .cta-btn:hover {
  background: #fff;
  color: #f72a48;
  transform: scale(1.02);
}

/* case-area */
#main.sales-partner-page .case-area {
  margin-top: 35px;
}

#main.sales-partner-page .section-common.case-area .section-description {
  margin-bottom: 15px;
}

#main.sales-partner-page .case-area .list-slider {
  background-color: #fff;
  margin-bottom: 45px;
  border-radius: 10px;
}

#main.sales-partner-page .section-common.section-case .list-case {
  margin-bottom: 20px;
}

#main.sales-partner-page .section-common.section-case .list-case .item {
  background-color: #fff;
  padding: 20px;
  margin: 20px 20px 0 0;
  border-radius: 10px;
  width: calc((100% - 40px) / 3);
}

#main.sales-partner-page .section-common.section-case .list-case .item:nth-child(3n) {
  margin-right: 0;
}

#main.sales-partner-page .section-common.section-case .list-case .item:nth-child(-n + 3) {
  margin-bottom: 0;
}

#main.sales-partner-page .section-common.section-case .list-case .item .description {
  margin-bottom: 0;
}

/* cta2-area */
#main.sales-partner-page .cta2-area {
  background: #e9d4ff;
  background: linear-gradient(298deg, rgba(233, 212, 255, 1) 0%, rgba(171, 229, 247, 1) 100%);
  padding: 45px 0;
  font-weight: bold;
  text-align: center;
}

#main.sales-partner-page .section-common.cta2-area .section-description {
  margin-bottom: 15px;
  font-size: 20px;
}

#main.sales-partner-page p.deco-text,
#main.sales-partner-page .data-area p.deco-text {
  font-size: 16px;
}

#main.sales-partner-page .cta2-area .cta2-wrap {
  display: flex;
  justify-content: center;
  align-items: center;
}

#main.sales-partner-page .cta2-area .cta2-img {
  width: 335px;
  height: 161px;
  margin-right: 100px;
}

#main.sales-partner-page .cta2-area .cta2-img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

#main.sales-partner-page .cta2-area .cta-btn {
  display: block;
  border: 2px solid #f72a48;
  border-radius: 50px;
  background: #f72a48;
  padding: 1em 1.8em;
  color: #fff;
  font-weight: 700;
  line-height: 1;
  transition: .2s;
}

#main.sales-partner-page .cta2-area .cta-btn:hover {
  background: #fff;
  color: #f72a48;
  transform: scale(1.02);
}

#main.sales-partner-page .cta2-area .section-description span {
  color: #33476A;

}

#main.sales-partner-page .cta2-area .section-description .highlight-pink {
  background: linear-gradient(transparent 40%, #FFB0B8 40%);
}

/* data-area */
#main.sales-partner-page .data-area .data-list li {
  background-color: #fff;
  padding: 15px 30px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-top: 22px;
  border-radius: 10px;
}

#main.sales-partner-page .data-area .data-icon {
  border-radius: 50%;
  background-color: #009EDD;
  position: relative;
  height: 86px;
  width: 86px;
  margin-right: 50px;
}

#main.sales-partner-page .data-area .data-icon::before {
  position: absolute;
  width: 40px;
  height: 40px;
  object-fit: contain;
  top: 24px;
  left: 0;
  right: 0;
  margin: 0 auto;
}

#main.sales-partner-page .data-area .data-icon.di01::before {
  content: url(../../../uploads/2025/11/icon-repository.png);
}

#main.sales-partner-page .data-area .data-icon.di02::before {
  content: url(../../../uploads/2025/11/icon-search.png);
}

#main.sales-partner-page .data-area .data-icon.di03::before {
  content: url(../../../uploads/2025/11/icon-document.png);
}

#main.sales-partner-page .data-area .data-icon.di04::before {
  content: url(../../../uploads/2025/11/icon-people.png);
}

#main.sales-partner-page .data-area .text-wrap {
  width: calc(100% - 86px - 50px);
}

#main.sales-partner-page .data-area p {
  color: #009EDD;
  font-size: 2rem;
}

/* form-area */
#main.sales-partner-page .form-area h2 {
  margin-bottom: 35px;
}

#main.sales-partner-page .sales-partner-form {
  margin: 0 auto;
  width: fit-content;
}

#main.sales-partner-page .sales-partner-form .hs-input:not([type=file]) {
  background-color: #fff;
}

#main.sales-partner-page .sales-partner-form .hs-button {
  background-color: #f72a48;
  border-color: #f72a48;
}

@media screen and (max-width: 560px) {
  #main.sales-partner-page .partner-fix-btn {
    width: 33px;
    padding: 10px;
    font-size: 1.4rem;
  }

  #main.sales-partner-page .partner-fix-btn .icon {
    display: none;
  }

  #main.sales-partner-page .section-common {
    padding: 30px 0;
  }

  #main.sales-partner-page .section-common .section-description {
    text-align: left;
  }

  /* mv-area */
  #main.sales-partner-page .mv-area {
    position: relative;
    height: 350px;
    background: center / cover no-repeat url(../../../uploads/2025/11/mv.jpg);
  }

  #main.sales-partner-page .mv-area .ttl-wrap {
    top: 150px;
    width: fit-content;
  }

  #main.sales-partner-page .mv-area h2 {
    font-size: 2.3rem;
    line-height: 1.4;
    letter-spacing: 0px;
    margin-bottom: 10px;
  }

  #main.sales-partner-page .mv-area p {
    line-height: 1.5;
    font-size: 1.6rem;
  }

  /* sales-support-area */
  #main.sales-partner-page .sales-support-list {
    display: block;
  }

  #main.sales-partner-page .sales-support-list li,
  #main.sales-partner-page .sales-support-list li:nth-child(3n) {
    width: 100%;
    margin: 20px 0 25px 0;
  }

  #main.sales-partner-page .sales-support-img {
    margin: 0 auto;
    width: fit-content;
  }

  #main.sales-partner-page .sales-support-img img {
    border-radius: 7px;
    height: 140px;
    object-fit: cover;
    width: 100%;
    max-width: 250px;
  }

  #main.sales-partner-page .sales-support-list h3 {
    margin: 10px 0 0;
    text-align: center;
    font-size: 18px;
  }

  /* cta-area */
  #main.sales-partner-page .cta-area {
    padding: 25px 0;
  }

  #main.sales-partner-page .cta-area .cta-img.pc-display {
    display: none;
  }

  #main.sales-partner-page .cta-area .cta-wrap {
    display: block;
  }

  #main.sales-partner-page .cta-area .text-wrap {
    margin: 5px 0;
    width: 100%;
  }

  #main.sales-partner-page .cta-area .cta-img.sp-display {
    width: fit-content;
    margin: 0 auto 10px;
  }

  #main.sales-partner-page .cta-area h3 {
    font-size: 2rem;
    line-height: 1.4;
    margin-bottom: 5px;
  }

  #main.sales-partner-page .cta-area p {
    line-height: 1.5;
    font-size: 1.4rem;
    font-weight: normal;
    margin-bottom: 0;
  }

  #main.sales-partner-page .cta-btn {
    width: fit-content;
    margin: 0 auto;
  }

  /* case-area */
  #main.sales-partner-page .section-common.section-case .list-case .item {
    padding: 15px;
    margin: 20px 0 0 0;
    border-radius: 7px;
    width: 100%;
  }

  #main.sales-partner-page .section-common.section-case .list-case .item:first-child {
    margin-top: 0;
  }

  #main.sales-partner-page .case-area .list-slider {
    margin-bottom: 15px;
  }


  /* cta2-area */
  #main.sales-partner-page .section-common.cta2-area .section-description {
    margin-bottom: 10px;
    font-size: 14px;
  }

  #main.sales-partner-page .cta2-area .cta2-wrap {
    display: block;
  }

  #main.sales-partner-page .cta2-area .cta2-img {
    width: 205px;
    height: fit-content;
    margin: 10px auto;
  }


  /* data-area */
  #main.sales-partner-page .data-area .data-list li {
    padding: 10px;
    justify-content: flex-start;
    margin-top: 10px;
    border-radius: 7px;
    align-items: flex-start;
  }

  #main.sales-partner-page .data-area .data-icon {
    height: 40px;
    width: 40px;
    margin-right: 15px;
  }

  #main.sales-partner-page .data-area .text-wrap {
    width: calc(100% - 40px - 15px);
  }

  #main.sales-partner-page .data-area .data-icon::before {
    width: 38px;
    height: 38px;
    top: 1px;
    transform: scale(0.7);
  }

  #main.sales-partner-page .data-area p {
    font-size: 16px;
  }

  #main.sales-partner-page p.deco-text,
  #main.sales-partner-page .data-area p.deco-text {
    font-size: 13px;
    line-height: 1.3;
  }

  /* form-area */
  #main.sales-partner-page .form-area h2 {
    margin-bottom: 10px;
  }
}

/*
--------------------------------------------------
販売パートナー　クッションページ 25/12/04追加
--------------------------------------------------
*/
#main.sales-partner-page.cushion {
  background-color: #fff;
}

#main.sales-partner-page.cushion .section-common.section-price .list-price .item {
  border: 4px solid #009EDD;
}

#main.sales-partner-page.cushion .section-common.section-price .list-price .item .image-wrap {
  max-width: fit-content;
}

#main.sales-partner-page.cushion .section-common.section-price .list-price .item .image-wrap img {
  max-height: 160px;
  width: fit-content;
	object-fit: contain;
}

#main .section-common.section-price .list-price .item.partner {
  background-color: #E9F9FF;
}

#main.sales-partner-page.cushion .cta-btn {
  width: fit-content;
  margin: 0 auto;
}

@media screen and (max-width: 560px) {
  #main.sales-partner-page.cushion .section-common.section-price .list-price .item .image-wrap img {
    max-height: 70px;
  }
}