@charset "UTF-8";

@media screen and (max-width: 1160px) {
  #top #mv .copy {
    top: 6px;
  }
  #top #mv .copy .copy-text_area .copy-text {
    background: none;
    margin-left: 2px;
    padding: 0;
    max-width: 420px;
  }
  #top #mv .copy .copy-text_area .copy-text::after {
    display: none;
  }
  #top #mv .copy .copy-text_area .copy-text .strong-before_text,
  #top #mv .copy .copy-text_area .copy-text .strong-after_text,
  #top #mv .copy .copy-text_area .copy-text .strong-text {
    background-color: #FFAA00;
    margin-right: 0;
    padding: 0 15px;
    position: relative;
    z-index: 5;
    display: inline-block;
  }
  #top #mv .copy .copy-text_area .copy-text .strong-before_text {
    color: #E4007F;
    margin-right: 0;
  }
  #top #mv .copy .copy-text_area .copy-text .strong-after_text {
    color: #0000CD;
    margin-top: 12px;
  }
  #top #mv .copy .copy-text_area .copy-text .strong-before_text::after,
  #top #mv .copy .copy-text_area .copy-text .strong-after_text::after,
  #top #mv .copy .copy-text_area .copy-text .strong-text::after {
    background-color: #ffffff;
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    top: -2px;
    left: -2px;
    position: absolute;
    z-index: -1;
  }

  #top #mv .copy .main-btns {
    bottom: -60px;
  }
}

@media screen and (max-width: 991px) {
  .pc-lg-br-none {
    display: block;
  }

  .m-sticky {
/*    margin-bottom: 55px;*/
  }

  main {
    margin-top: 8.984vw; /* topbar(2.813vw) + navbar(6.172vw) */
  }

  .scroll-to-top {
    right: 20px;
  }

  .t-header_area .navbar.bg-light {
    background-color: rgba(255, 255, 255, 0.94) !important;
  }

  .t-navbar-brand h1 {
    line-height: 0;
    padding-bottom: 0;
    margin: 0;
  }

  .t-navbar-brand {
    align-items: center;
    padding: 0;
    margin-right: auto;
  }

  .t-navbar-brand img {
    width: 15.338vw;
  }

  .t-navbar-brand .logo-title_text {
    font-size: 10px;
    font-size: 1rem;
    display: inline-block;
    line-height: 1.4;
    margin-left: 12px;
  }

  .navbar-light .navbar-toggler {
    padding: 0 12px;
  }

  /* ハンバーガー線 */
  .js-menu-trigger {
    width: 3.229vw; /* 32px @ 991px */
    height: 2.22vw; /* 22px @ 991px */
  }
  .js-menu-trigger span {
    height: 2px !important;
    border-radius: 2px;
    background-color: #212121;
  }
  .js-menu-trigger span:nth-of-type(2) {
    top: 1.009vw; /* 10px @ 991px */
  }
  .js-menu-trigger.js-menu-open span:nth-of-type(1) {
    -webkit-transform: translateY(1.009vw) rotate(-45deg) !important;
    transform: translateY(1.009vw) rotate(-45deg) !important;
  }
  .js-menu-trigger.js-menu-open span:nth-of-type(3) {
    -webkit-transform: translateY(-1.009vw) rotate(45deg) !important;
    transform: translateY(-1.009vw) rotate(45deg) !important;
  }

  .t-header_area .navbar {
    padding: 12px 0;
    gap: 10px;
  }

  .t-header_area .navbar-collapse {
    height: auto;
    max-height: 540px;
    overflow-x: hidden;
    padding: 0 30px;
  }

  .t-header_area .navbar-nav {
    padding: 12px 0;
    border-top: 1px solid #DCDCDC;
  }

  .t-header_area .navbar-nav li {
    text-align: left;
    padding: 0;
  }

  .t-header_area .navbar-nav li a {
    display: block;
    padding: 12px 35px;
    border-bottom: 1px solid #DCDCDC;
    text-align: center;
    position: relative;
  }

  .t-header_area .navbar-nav li a:before {
    display: none;
  }

  .t-header_area .navbar-nav li a::after {
    color: #0000CD;
    position: relative;
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-weight: 600;
    padding-left: 5px;
    width: auto;
  }

  .t-header_area .navbar-nav li a:hover::after {
    text-decoration: none;
    background: #f7f5f5;
    width: auto;
  }

  .header-btn_area .header-btn_item {
      font-size: 1.211vw !important; /* 12px @ 991px */
      line-height: 1.25 !important;
      width: 10.597vw !important; /* 105px @ 991px */
      height: 3.978vw !important; /* 39.42px @ 991px */
      border-radius: 0.605vw !important; /* 6px @ 991px */
      padding: 0 0.533vw !important;
      white-space: normal !important;
      text-align: left;
      margin-bottom: 0;
  }

  .header-btn_area .header-btn_item a:before {
      display: none;
  }

  .t-header_area .navbar-collapse .close_btn {
      color: #333333;
      background-color: #ffffff;
      font-size: 14px;
      text-align: center;
      line-height: 1.6em;
      border: 1px solid #DCDCDC;
      border-radius: 20px;
      display: inline-block;
      padding: 0 10px;
      margin: 20px auto 0;
      cursor: pointer;
      width: auto;
      height: auto;
  }

  .others-menu .others-menu_inner .link-items .link-item {
    width: calc((100% / 2) - 12px);
  }

  /* topページ */
  #top #mv .copy::before {
    left: 342px;
  }
  
  #top #mv .copy .copy-text_area {
    padding-left: 0;
  }
  
  #top #mv .copy .main-btns {
    bottom: -60px;
    padding-left: 0;
  }

  /* 下層ページ */
  .page-lower #contents-wrap #contents {
    padding-left: 30px;
    padding-right: 30px;
  }

  #message .section-outline .copy-text {
    font-size: 34px;
  }

  #program #result .service_area .field_head_area {
    gap: 20px;
    font-size: 14px;
  }
  
  #program #result .service_area .field_head_area .field_head_text {
    padding-left: 20px;
  }
  
  #program #result .service_area .field_head_area .field_head_text .copy-text {
    font-size: 18px;
  }

  #program #result .service_area .service_set > a {
    padding: 5px 3px;
  }
  
  #program #result .service_area .service_set > a .service-name {
    font-size: 14px;
  }

  #features #contents-wrap #contents .feature-item {
    padding: 0 0 80px 30px;
  }

  #features .feature-item .feature-head {
    gap: 25px;
  }
  
  #features .feature-item .feature-body {
    padding: 60px 40px 0 0;
  }

  #solution #contents-wrap #contents .solution-item {
    padding: 0 40px 0 30px;
  }

  #solution .solution-item .feature-head {
    gap: 20px 15px;
  }
  
  #solution .solution-item .solution-body {
    margin-top: 60px;
  }

  .consultant-items {
    gap: 20px;
  }
  
  .consultant-items > .consultant-item {
    width: calc((100% / 2) - (20px / 2));
  }
  
  
}

/*==================================================================================================*/
@media screen and (min-width: 769px) and (max-width: 991px) {

  /* バーガーメニュー展開時 */
  .t-header_area .navbar-collapse {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: auto;
    max-height: calc(100vh - 8.984vw);
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0;
    background-color: #ffffff;
    z-index: 100;
  }

  .t-header_area .navbar-nav {
    padding: 0;
    border-top: none;
  }

  .t-header_area .navbar-nav li {
    padding: 0 3.431vw; /* 34px @ 991px */
  }

  .t-header_area .navbar-nav li a {
    padding: 1.615vw 0 !important; /* 16px @ 991px */
    font-size: 1.615vw !important; /* 16px @ 991px */
    font-weight: bold;
    color: #212121;
    display: flex !important;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #CCCCCC;
  }

  .t-header_area .navbar-nav li:last-child a {
    border-bottom: none;
  }

  .t-header_area .navbar-nav li a::after {
    border-top-color: #212121 !important;
    border-right-color: #212121 !important;
  }

  .burger-topbar-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-top: 1px solid #DCDCDC;
  }
  .burger-topbar-nav a {
    display: block;
    padding: 1.009vw 3.431vw; /* 10px 34px @ 991px */
    font-size: 1.413vw; /* 14px @ 991px */
    color: #666666;
    border-bottom: 1px solid #DCDCDC;
    text-decoration: none;
  }
  .burger-topbar-nav a:nth-child(odd) {
    border-right: 1px solid #DCDCDC;
  }

  .burger-cta {
    display: block;
  }
  .burger-cta a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    background-color: #B69817;
    color: #ffffff;
    font-size: 1.716vw; /* 17px @ 991px */
    font-weight: bold;
    padding: 2.018vw 1.615vw; /* 20px 16px @ 991px */
    text-decoration: none;
  }
  .burger-cta__arrow {
    position: absolute;
    right: 1.615vw;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 3.027vw; /* 30px @ 991px */
    height: 3.027vw;
    background-color: #ffffff;
    border-radius: 0.403vw;
  }
  .burger-cta__arrow img {
    width: 1.413vw;
    height: auto;
  }

  .t-header_area .navbar-collapse .my-2 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  .t-header_area .navbar-collapse .close_btn {
    display: none;
  }

  .mv-cta .sp-br {
    display: none;
  }

}

/*==================================================================================================*/
@media screen and (max-width: 768px) {
  body {
    font-size: 3.733333vw;
  }
  
  .sp-none,
  .sp-br-none {
    display: none!important;
  }

  .pc-none {
    display: block!important;
  }

  .pc-br-none {
    display: inline-block!important;
  }

  .sp-br {
    display: block;
  }

  .pc-br {
    display: none;
  }

  .m-sticky {
/*    margin-bottom: 17.6vw;*/
  }

  main {
    margin-top: 21.848vw; /* topbar(7.467vw) + navbar(14.381vw=53.93px) @ 375px */
  }

  h2 {
    font-size: 26px;
    font-size: 2.6rem;
  }

  h3 {
    font-size: 20px;
    font-size: 2rem;
  }

  h4 {
    font-size: 16px;
    font-size: 1.6rem;
  }

  /* common =============== */

  .text-s {
    font-size: 3.733333vw!important;
  }
  
  .text-l {
    font-size: 4.8vw!important;
  }
  
  /* btn */
  .bg-s_btn > a {
    font-size: 3.733333vw;
    line-height: 10.666667vw;
    width: 100%;
    padding: 0 2.666667vw;
    border-radius: 5.333333vw;
  }
  .bg-s_btn.icon > a::before {
    margin-right: 1.6vw;
  }
  .bg-s_btn.icon.icon-movie > a::before {
    width: 4vw;
    height: 4vw;
    top: -2px;
  }
  .bg-s_btn.icon.icon-mail > a::before {
    width: 4.266667vw;
    height: 3.466667vw;
    top: -2px;
  }
  .bg-s_btn.icon.icon-download > a::before {
    width: 4.266667vw;
    height: 4vw;
    top: -2px;
  }
  .bg-s_btn.icon.icon-config > a::before {
    width: 4vw;
    height: 4vw;
    top: -2px;
  }
  .bg-m_btn > a {
    font-size: 3.733333vw;
    line-height: 10.666667vw;
    padding: 0 10.666667vw;
    border-width: 0.266667vw;
    border-radius: 6vw;
  }
  .bg-m_btn.-arrow > a::after {
    width: 2.666667vw;
    height: 2.666667vw;
    border-top-width: 0.533333vw;
    border-right-width: 0.533333vw;
    right: 5.333333vw;
  }
  .bg-l_btn > a,
  .bg-l_btn > span {
    /*font-size: 4.266667vw;*/
    font-size: 3.733333vw;
    line-height: 13.6vw;
/*    padding: 0 10.666667vw;*/
    padding: 0 8vw;
    border-width: 0.266667vw;
    border-radius: 8vw;
  }
  .bg-l_btn.-arrow > a::after {
    width: 2.666667vw;
    height: 2.666667vw;
    border-top-width: 0.533333vw;
    border-right-width: 0.533333vw;
    right: 5.333333vw;
  }
  .bd-l_btn.icon > a::before {
    margin-right: 3.2vw;
  }
  .bg-l_btn.icon.icon-mail > a::before {
    width: 4.8vw;
    height: 4vw;
  }
  .bg-l_btn.icon.icon-consultant > a::before {
    width: 8.533333vw;
    height: 6.933333vw;
  }
  .bg-l_btn.icon.icon-solution > a::before {
    width: 8vw;
    height: 5.866667vw;
  }
  .bg-l_btn.icon.icon-config > a::before {
    width: 4.8vw;
    height: 4.8vw;
  }
    
  .bd-l_btn > a {
    font-size: 4.266667vw;
    line-height: 13.6vw;
    padding: 0 10.666667vw;
    border-width: 0.266667vw;
    border-radius: 8vw;
  }
  .bd-l_btn.-arrow > a::after {
    width: 2.666667vw;
    height: 2.666667vw;
    border-top-width: 0.533333vw;
    border-right-width: 0.533333vw;
    right: 5.333333vw;
  }
  
  .rounded-btn > a {
    font-size: 4.8vw;
    padding: 1.333333vw 2.666667vw;
    border-radius: 1.333333vw;
    height: 16vw;
    border-width: 0.266667vw;
  }
  
  .sp-col1_btns {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    gap: 6.4vw;
  }
  
  .sp-col1_btns > * {
    width: 100%;
  }
  
  .x-scroll::before {
    width: 26.666667vw;
    height: 26.666667vw;
  }

  .x-scroll > *:first-child {
    margin-top: -26.666667vw!important;
  }
  
  .x-scroll.scroll-hint.is-scrollable {
    width: calc(100% + 6.4vw);
  }
  
  .x-scroll.scroll-hint.is-scrollable > *:first-child {
    padding-right: 6.4vw!important;
  }
  
  /* ヘッダー */
  .header-topbar__nav {
    display: none;
  }
  .burger-topbar-nav {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-top: 1px solid #DCDCDC;
  }
  .burger-topbar-nav a {
    display: block;
    padding: 2.667vw 9.067vw; /* 10px 34px @ 375px */
    font-size: 3.733vw; /* 14px @ 375px */
    color: #666666;
    border-bottom: 1px solid #DCDCDC;
    text-decoration: none;
  }
  .burger-topbar-nav a:nth-child(odd) {
    border-right: 1px solid #DCDCDC;
  }
  .header-topbar__inner {
    padding: 0 4.267vw;
    height: 7.467vw; /* 28px @ 375px */
  }
  .header-topbar__brand img {
    width: 34.667vw; /* 130px @ 375px */
    height: auto;
    margin-top: 0.6vw;
  }

  .burger-cta {
    display: block;
  }
  .burger-cta a {
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    background-color: #B69817;
    color: #ffffff;
    font-size: 4.533vw; /* 17px @ 375px */
    font-weight: bold;
    padding: 5.333vw 4.267vw; /* 20px 16px @ 375px */
    text-decoration: none;
  }
  .burger-cta__arrow {
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    right: 4.267vw;
    width: 8vw; /* 30px @ 375px */
    height: 8vw;
    background-color: #ffffff;
    border-radius: 1.067vw;
  }
  .burger-cta__arrow img {
    width: 4vw;
    height: auto;
  }

  .t-header_area .navbar.bg-light {
    background-color: rgba(255, 255, 255, 0.94) !important;
  }

  .t-navbar-brand h1 {
    line-height: 0;
    padding-bottom: 0;
    margin: 0;
  }

  .t-navbar-brand {
    padding-left: 4.267vw;
    flex-direction: column;
    align-items: flex-start;
  }

  .t-navbar-brand img {
    width: 34.029vw; /* 127.61px @ 375px */
  }

  .header-logo__tagline {
    font-size: 2.184vw; /* 8.19px @ 375px */
    margin: 0.533vw 0 0;
    text-align: center;
  }

  .navbar-light .navbar-toggler {
    padding: 0 4.267vw 0 2.667vw;
    margin-left: 1.97vw; /* 17.39px - padding 2.667vw @ 375px */
  }

  .t-header_area .navbar {
    padding: 3.2vw 0;
    gap: 0;
    height: 14.381vw; /* 53.93px @ 375px */
    position: relative;
  }

  .t-header_area .navbar-collapse {
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    height: auto;
    max-height: calc(100vh - 21.848vw); /* 画面高さ - ヘッダー合計 */
    overflow-x: hidden;
    overflow-y: auto;
    padding: 0;
    background-color: #ffffff;
    z-index: 100;
  }

  .t-header_area .navbar-nav {
    padding: 0;
    border-top: none;
  }

  .t-header_area .navbar-nav li {
    text-align: left;
    padding: 0 9.067vw; /* 34px @ 375px */
  }
  .t-header_area .navbar-nav li:last-child a {
    border-bottom: none;
  }

  .t-header_area .navbar-nav li a {
    padding: 4.267vw 0 !important; /* 16px 0 @ 375px */
    font-size: 4.267vw !important; /* 16px @ 375px */
    font-weight: bold;
    color: #212121;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #CCCCCC;
  }

  .t-header_area .navbar-nav li a::after {
    padding-left: 0;
    border-top-color: #212121 !important;
    border-right-color: #212121 !important;
  }

  .t-header_area .navbar-nav li a:hover::after {
    text-decoration: none;
    background: #f7f5f5;
    width: auto;
  }

  .header-btn_area .header-btn_item {
      width: 100%;
          margin-left: 2.133333vw;
      margin-bottom: 0;
  }

  .header-btn_area .header-btn_item {
      font-size: 3.2vw !important; /* 12px @ 375px */
      line-height: 4vw !important; /* 15px @ 375px */
      width: 28.005vw !important; /* 105.02px @ 375px */
      height: 10.512vw !important; /* 39.42px @ 375px */
      border-radius: 1.6vw !important; /* 6px @ 375px */
      padding: 0;
      white-space: normal !important;
      text-align: left;
      padding-left: 0.533vw; /* 2px @ 375px */
  }

  .header-btn_area .header-btn_item a:before {
      display: none;
  }

  .t-header_area .navbar-collapse .close_btn {
      display: none;
  }

  .t-header_area .navbar-collapse .my-2 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }

  /* ヘッダー トグルボタン */
  .js-menu-trigger {
      width: 8.36vw; /* 31.35px @ 375px */
      height: 5.867vw; /* 22px @ 375px */
  }

  .js-menu-trigger span {
    height: 2px !important;
    border-radius: 2px;
    background-color: #212121;
  }

  .js-menu-trigger span:nth-of-type(1) {
    top: 0;
  }

  .js-menu-trigger span:nth-of-type(2) {
    top: 2.667vw; /* 10px @ 375px */
  }

  .js-menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }

  .js-menu-trigger.js-menu-open span:nth-of-type(1) {
    -webkit-transform: translateY(2.667vw) rotate(-45deg) !important;
    transform: translateY(2.667vw) rotate(-45deg) !important;
  }

  .js-menu-trigger.js-menu-open span:nth-of-type(2) {
    opacity: 0;
  }

  .js-menu-trigger.js-menu-open span:nth-of-type(3) {
    -webkit-transform: translateY(-2.667vw) rotate(45deg) !important;
    transform: translateY(-2.667vw) rotate(45deg) !important;
  }
  

  /* ===================================================
     フッター
     =================================================== */
  .footer_inner {
    width: 100%;
    box-sizing: border-box;
    padding: 13.675vw 6.267vw 17.456vw;
  }

  .footer-nav::before {
    width: 106.824vw; /* 400.59px @ 375px */
    height: 106.824vw;
    right: -13.333vw;
    left: auto;
    top: 63%;
    transform: translateY(-50%);
  }

  .footer-nav .footer-nav_inner {
    flex-direction: column;
    align-items: center;
    gap: 0;
  }

  .footer-nav .footer-logo_area {
    max-width: none;
    width: 100%;
    text-align: center;
    margin-top: 0;
    margin-bottom: 3.2vw;
  }

  .footer-nav .footer-logo_area img {
    width: 62.301vw; /* 233.63px @ 375px */
  }

  .footer_inner a.logo-text_link {
    text-align: center;
  }

  .footer-tagline {
    font-size: 4vw; /* 15px @ 375px */
    width: 100%;
    text-align: center;
  }

  .footer-desc {
    font-size: 3.467vw; /* 13px @ 375px */
    line-height: 1.846; /* 24 / 13 */
    text-align: left;
    margin: 2.667vw auto 0;
    width: 80.629vw; /* 302.36px @ 375px */
  }

  .footer_link_area {
    display: block !important; /* Bootstrap d-inline を上書き */
    width: 100%;
    margin-top: 6.4vw;
    padding: 0;
    font-size: 0; /* inline-block 間のホワイトスペースギャップを除去 */
    white-space: normal;
  }

  .footer_link_item {
    display: inline;
    width: auto;
    max-width: none;
    margin: 0;
  }

  .footer_link_item:last-child,
  .footer_link_item:nth-child(2n) {
    margin: 0;
    white-space: normal;
  }

  .footer-nav .footer_link_item ul {
    display: inline;
    margin: 0;
    padding: 0;
  }

  .footer-nav .footer_link_item ul li {
    display: inline-block !important;
    border-left: 1px solid #333333 !important;
    border-right: none !important;
    padding: 0 4.2vw !important;
    margin: 0 0 4.2vw 0 !important;
    position: static !important;
    vertical-align: middle;
  }

  .footer-nav .footer_link_item ul li > a {
    display: inline !important;
    font-size: 3.733vw; /* 14px @ 375px */
    line-height: 1.4 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap;
  }

  .footer-nav .footer_link_item ul li.is-row-start {
    border-left: none !important;
    padding-left: 0 !important;
  }

  .footer-nav .footer_link_item ul li.is-row-end {
    padding-right: 0 !important;
  }

  /* 1項目だけで1行を占める場合（is-row-start + is-row-end）は block で強制改行 */
  .footer-nav .footer_link_item ul li.is-row-start.is-row-end {
    display: block !important;
  }

  /* 2項目ペアの行末後に JS で挿入する強制改行用ダミー li */
  .footer-nav .footer_link_item ul li.footer-row-break {
    display: block !important;
    height: 0 !important;
    padding: 0 !important;
    margin: 0 !important;
    border: none !important;
    overflow: hidden;
  }

  .footer-nav .footer_link_item ul a[target="_blank"]::after {
    width: 2.667vw;
    height: 2.667vw;
    margin-left: 1.333vw;
  }

  .footer_area #copyright {
    font-size: 2.667vw;
    padding-top: 3.733vw;
    padding-bottom: 3.733vw;
  }

  .others-menu {
  }
  
  .others-menu h2 {
    font-size: 9.6vw;
    margin-bottom: 5.333333vw;
  }
  
  .others-menu .others-menu_inner {
    padding: 13.333333vw 7.466667vw 17.066667vw;
  }
  
  .others-menu .others-menu_inner .link-items {
    flex-direction: column;
    gap: 4vw;
    margin: 0;
  }
  
  .others-menu .others-menu_inner .link-items .link-item {
    width: 100%;
  }
  
  .others-menu .others-menu_inner .link-items .link-item > a {
    border-width: 0.533333vw;
    border-top-width: 2.133333vw;
    border-radius: 0 0 1.333333vw 1.333333vw;
    padding: 2.666667vw 5.333333vw 4vw;
  }

  .others-menu .others-menu_inner .link-items .link-item > a::before {
    border-top-width: 0.266667vw;
    top: 0.266667vw;
  }

  .others-menu .others-menu_inner .link-items .link-item .page_icon {
    width: 11.2vw;
  }
  
  .others-menu .others-menu_inner .link-items .link-item .page_title {
    font-size: 4.8vw;
  }
  
  .others-menu .others-menu_inner .link-items .link-item .page_title.icon {
    position: relative;
  }
  
  .others-menu .others-menu_inner .link-items .link-item .page_title.icon::before {
    margin-right: 5.333333vw;
  }

  .others-menu .others-menu_inner .link-items .link-item .page_title.icon.icon-logo::before {
    width: 10.666667vw;
    height: 11.733333vw;
  }

  .others-menu .others-menu_inner .link-items .link-item .page_title.icon.icon-solution::before {
    width: 11.2vw;
    height: 8vw;
  }

  .others-menu .others-menu_inner .link-items .link-item .page_title.icon.icon-consulting::before {
    width: 11.2vw;
    height: 9.066667vw;
  }

  .others-menu .others-menu_inner .link-items .link-item .page_title.icon.icon-seminar::before {
    width: 10.666667vw;
    height: 11.733333vw;
  }

  .others-menu .others-menu_inner .link-items .link-item .page_title.icon.icon-column::before {
    width: 10.666667vw;
    height: 11.733333vw;
  }

  .others-menu .others-menu_inner .link-items .link-item .page_title.icon.icon-faq::before {
    width: 10.666667vw;
    height: 11.733333vw;
  }

  .action-nav .action-nav_inner {
    padding: 19.283vw 4.267vw; /* 72.31px / 16px @ 375px */
  }

  .action-nav .action-nav_inner .action-items {
    flex-direction: column;
    gap: 5.333vw; /* 20px @ 375px */
  }

  .action-nav .action-nav_inner .action-items .action-item {
    padding: 6.4vw 4.267vw; /* 24px / 16px @ 375px */
    width: 100%;
    border-radius: 4.267vw; /* 16px @ 375px */
    box-shadow: 5px 8px 8px rgba(0, 0, 0, 0.10);
    gap: 4.267vw; /* 16px @ 375px */
  }

  .action-nav .action-nav_inner .action-items .action-item > a {
    display: none;
  }

  .action-nav .action-nav_inner .action-items .action-item .illust img {
    max-width: 100%;
  }
  .action-nav .action-nav_inner .action-items .action-item:nth-child(1) .illust img {
    width: 42.176vw; /* 158.16px @ 375px */
  }
  .action-nav .action-nav_inner .action-items .action-item:nth-child(2) .illust img {
    width: 47.936vw; /* 179.76px @ 375px */
  }
  .action-nav .action-nav_inner .action-items .action-item:nth-child(3) .illust img {
    width: 58.219vw; /* 218.32px @ 375px */
  }

  .action-nav .action-nav_inner .action-items .action-item .bg-s_btn {
    max-width: none;
    width: 100%;
  }

  .action-nav .action-item .bg-s_btn > a {
    font-size: 5.333vw; /* 20px @ 375px */
    line-height: 15.627vw; /* 58.6px @ 375px */
    border-radius: 2.133vw; /* 8px @ 375px */
    width: 100%;
    max-width: none;
  }

  .action-nav .action-nav_inner .action-items .action-item .text-box .action_ttl {
    font-size: 18px;
    margin-top: 10px;
  }

  .action-nav .action-nav_inner .action-items .action-item .text-bo .action_txt {
    line-height: 1.8;
  }

  .scroll-to-top {
    width: 10.667vw;
    height: 11.947vw;
    /*right: 6.4vw;*/
    right: 3.4vw;
    /*top: 8vw;*/
    bottom: 18vw;
  }

/* topページ */
#top #mv {
  height: 115.2vw; /* 432px @ 375px */
  padding: 0;
}
#mv-slider {
  height: 100%;
}

/* MV スライド1: SP レイアウト */
.mv-slide1__inner {
  padding: 0;
}
.mv-slide1__left {
  position: absolute;
  bottom: 5.096vw; /* 19.11px @ 375px */
  left: 4.267vw;
  flex: none;
  z-index: 2;
}
.mv-slide1__right {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  flex: none;
  height: 87vw;
}
.mv-plane {
  width: 14.981vw; /* 56.18px @ 375px */
}

#mv-g-wrap {
  transform: translate(calc(100vw - 345px), calc(100vh - 344px)) scale(0.378); /* center at bottom-right edge */
}
#mv-g-wrap.is-center {
  transform: translate(calc(50vw - 250px), calc(50vh - 250px)) scale(0.378); /* 188.89px @ 500px base */
}

.mv-circle-wrap {
  height: 100vw;
  width: 100vw;
  left: 47%;
  top: -25%;
  transform: translate(-50%, 0);
}
.mv-circle-img {
  top: -3.9%;
  left: 20.5%;
  width: 97%;
  height: 97%;
}
.mv-circle-arc {
  transform: translate(19%, -5.4%) scale(1.25);
}
.mv-catch img {
  width: 53.899vw;
  margin-left: -1.867vw; /* -7px @ 375px */
}
.mv-catch {
  margin-bottom: 5.733vw;
}
.mv-logo-engates img {
  width: 57.781vw; /* 216.68px @ 375px */
}
.mv-logo-engates {
  margin-bottom: 3.056vw;  /* 11.46px @ 375px */
}
.mv-lead {
  font-size: 3.709vw; /* 13.91px @ 375px */
  line-height: 1.223; /* 17 / 13.91 */
  letter-spacing: 0;
  white-space: normal;
}

/* MV スライド2: SP レイアウト */
.mv-slide2__photos {
  flex-direction: column;
}
.mv-slide2__content {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 8vw 4.267vw;
  gap: 0;
}
.mv-slide2__divider {
  display: none;
}
.mv-slide2__right-group {
  flex: none;
  flex-direction: column;
  align-items: center;
  gap: 0;
  order: 1;
}
.mv-slide2__left {
  order: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 6.4vw;
}
.mv-logo-engates--white {
  width: auto;
  margin-bottom: 1.056vw;
}
.mv-logo-engates--white img {
  width: 83.525vw; /* 313.22px @ 375px */
}
.mv-tagline {
  font-size: 4.557vw; /* 17.09px @ 375px */
  letter-spacing: 0;
  margin-top: 0;
}
.mv-catch2 {
  font-size: 5.333vw; /* 20px @ 375px */
  line-height: 1.445; /* 28.9 / 20 */
  letter-spacing: 0;
  text-align: center;
  margin-bottom: 2vw;
}
.mv-body2 {
  font-weight: 700;
  font-size: 3.405vw; /* 12.77px @ 375px */
  line-height: 1.613; /* 20.6 / 12.77 */
  letter-spacing: 0;
  text-align: center;
}
.mv-plane--s2 {
  width: 14.981vw;
  left: 68.7vw;
  top: 6%;
}

#top #mv .mv-inner {
  padding: 0 6.4vw;
  display: block;
}

#top #mv .copy {
  flex-direction: column;
  justify-content: flex-start;
  font-size: 5.333333vw;
  line-height: 1.5;
  gap: 9.066667vw;
}

#top #mv .copy::before {
  width: 40vw;
  height: 44.266667vw;
  left: 44.266667vw;
}

#top #mv .copy .copy-text_area {
  width: 100%;
  padding-left: 0;
  position: relative;
}

#top #mv .copy .copy-text_area img {
  margin: 0 auto;
  display: block;
}

#top #mv .copy .copy-text_area .sub-text {
  font-size: 4.266667vw;
  margin-bottom: 2.666667vw;
}

#top #mv .copy .copy-text_area .copy-text {
  background: none;
  font-size: 9.066667vw;
  line-height: 13.333333vw;
  margin-top: 4.8vw;
  margin-left: 0.533333vw;
  padding: 0;
  max-width: none;
}
#top #mv .copy .copy-text_area .copy-text::after {
  display: none;
}
#top #mv .copy .copy-text_area .copy-text .strong-before_text,
#top #mv .copy .copy-text_area .copy-text .strong-after_text,
#top #mv .copy .copy-text_area .copy-text .strong-text {
  background-color: #FFAA00;
  margin-right: 0;
  padding: 0 3.2vw;
  position: relative;
  z-index: 5;
  display: inline-block;
}
#top #mv .copy .copy-text_area .copy-text .strong-before_text {
  color: #E4007F;
  margin-right: 0;
}
#top #mv .copy .copy-text_area .copy-text .strong-after_text {
  color: #0000CD;
  margin-top: 2vw;
}
#top #mv .copy .copy-text_area .copy-text .strong-before_text::after,
#top #mv .copy .copy-text_area .copy-text .strong-after_text::after,
#top #mv .copy .copy-text_area .copy-text .strong-text::after {
  background-color: #ffffff;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: -0.533333vw;
  left: -0.533333vw;
  position: absolute;
  z-index: -1;
}

#top #mv .copy .copy-image {
  width: 100%;
  min-width: auto;
  max-width: none;
  padding-top: 0;
}

#top #mv .copy .copy-image img {
  display: block;
  margin: 0 auto;
}

/* MV CTAボタン */
.mv-cta {
  justify-content: flex-start;
  gap: 2.781vw; /* 10.43px @ 375px */
  padding: 0 4.267vw;
  height: 20.323vw; /* 76.21px @ 375px */
}
.mv-cta__btn {
  width: 44.355vw !important; /* 166.33px @ 375px */
  height: 14.435vw !important; /* 54.13px @ 375px */
  font-size: 4.8vw; /* 18px @ 375px */
  line-height: 1.4;
  border-radius: 2.133vw !important; /* 8px @ 375px */
  white-space: normal;
  text-align: center;
}

#top #mv .copy .main-btns {
  position: relative;
  bottom: 0;
  padding: 0 4vw;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5.333333vw;
  width: 100%;
}

#top .learnmore .main-btns {
  position: relative;
  bottom: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.333333vw;
  width: 100%;
}

#top #mv .bd-s_btn,
#top .learnmore .bd-s_btn {
	width: 100%;
}

#top #mv .bd-s_btn > a {
	font-size: 3.733333vw;
	line-height: 12.8vw;
	display: inline-block;
	padding: 0 2.666667vw;
	border-width: 0.533333vw;
	border-radius: 6.4vw;
}

#top .learnmore .bd-s_btn > a {
	font-size: 3.46666vw;
	line-height: 12.8vw;
	display: inline-block;
	padding: 0 2.666667vw;
	border-width: 0.533333vw;
	border-radius: 6.4vw;
}

#top .learnmore .bd-s_btn > a {
  position: relative;
	box-shadow: 0 0 12px rgba(0, 0, 205, 0.2);
  line-height: 10.933vw;
  text-align: left;
  padding-left: 12.4vw;
}

#top #mv .bd-s_btn.icon > a::before,
#top .learnmore .bd-s_btn.icon > a::before {
	margin-right: 1.6vw;
}
#top .learnmore .bd-s_btn.icon > a::before {
  background-size: contain;
}
#top #mv .bd-s_btn.icon.icon-download > a::before,
#top .learnmore .bd-s_btn.icon.icon-download > a::before {
	width: 5.266667vw;
	height: 4vw;
}
#top #mv .bd-s_btn.icon.icon-config > a::before,
#top .learnmore .bd-s_btn.icon.icon-config > a::before {
	width: 5vw;
	height: 4vw;
}
#top #mv .bd-s_btn.icon.icon-movie > a::before,
#top .learnmore .bd-s_btn.icon.icon-movie > a::before {
	width: 5vw;
	height: 4vw;
}
#top .learnmore .bd-s_btn.icon.icon-download > a::before,
#top .learnmore .bd-s_btn.icon.icon-config > a::before,
#top .learnmore .bd-s_btn.icon.icon-movie > a::before {
  position: absolute;
  top: 50%;
  left: 6%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
}

#top section {
  padding: 13.333333vw 6.4vw 17.333333vw;
}

#top section .section-inner {
  padding: 0;
}

#top section .section-head {
  margin-bottom: 5.333333vw;
}

#top section .section-title {
  font-size: 6.4vw;
  display: block;
}

#top section .section-title .logo {
  width: 64vw;
  margin-right: 0;
}

#top section .section-head .section-lead {
  font-size: 4.266667vw;
  margin-top: 6.4vw;
}

/* =========================================================
   section-methods SP
   ========================================================= */
#top #section-methods {
  padding: 10.667vw 0;
}
#top #section-methods .section-inner {
  padding: 0 4.267vw;
}
#top #section-methods .section-header {
  margin-bottom: 6.4vw;
}
#top #section-methods .section-title {
  font-size: 6.133vw; /* 23px @ 375px */
  line-height: 1.304; /* 30 / 23 */
  align-items: flex-start;
  display: flex;
}
#top #section-methods .section-title__line2 {
  display: block;
  white-space: nowrap;
}
#top #section-methods .section-title__plane {
  width: 9.712vw; /* 36.42px @ 375px */
  margin-top: 0.2em;
  flex-shrink: 0;
}
#top #section-methods .section-desc {
  font-size: 4vw; /* 15px @ 375px */
  font-weight: 400;
  line-height: 1.533; /* 23 / 15 */
  letter-spacing: -0.01em;
  padding-left: calc(9.712vw + 8px);
  white-space: normal;
}
.method-cards {
  flex-direction: column;
  gap: 7.467vw; /* 28px @ 375px */
}
.method-card {
  border-radius: 4.267vw; /* 16px @ 375px */
}
.method-card__header {
  font-size: 5.867vw; /* 22px @ 375px */
  padding: 2.933vw 2vw; /* 11px 7.5px @ 375px */
}
.method-card__body {
  padding: 4.267vw; /* 16px @ 375px */
}
.method-card__name {
  font-size: 6.133vw; /* 23px @ 375px */
  line-height: 1.304; /* 30 / 23 */
  min-height: auto;
  margin-bottom: 4.267vw;
}
.method-card__illust {
  height: 34.667vw;
  margin-top: 1.667vw;
  margin-bottom: 4.667vw;
}
.method-card.-customer .method-card__illust {
  margin-bottom: 8.667vw;
}
.method-card.-work     .method-card__illust img { width: 62.421vw; } /* 234.08px @ 375px */
.method-card.-employee .method-card__illust img { width: 53.139vw; } /* 199.27px @ 375px */
.method-card.-customer .method-card__illust img { width: 45.851vw; } /* 171.94px @ 375px */
.method-card__desc {
  font-size: 4.8vw; /* 18px @ 375px */
  line-height: 1.5; /* 27 / 18 */
  white-space: normal;
  margin-bottom: 4.267vw;
}
.method-card__btns {
  gap: 2.667vw; /* 10px @ 375px */
}
.method-card__btn {
  height: 13.312vw; /* 49.92px @ 375px */
  font-size: 4vw; /* 15px @ 375px */
}
.method-card__btn-arrow {
  border-radius: 1.067vw; /* 4px @ 375px */
}

/* ===================================================
   私たちの強み (#section-strengths)
   =================================================== */
#top #section-strengths {
  padding: 10.667vw 0 13.333vw; /* bottom: 50px */
}
#top #section-strengths .section-inner {
  padding: 0 4.267vw;
}
#top #section-strengths .section-header {
  margin-bottom: 6.4vw;
}
#top #section-strengths .section-title {
  font-size: 6.133vw; /* 23px @ 375px */
  line-height: 1.304;
  align-items: flex-start;
  display: flex;
}
#top #section-strengths .section-title__plane {
  width: 9.6vw; /* 36px @ 375px */
  margin-top: 0.2em;
  flex-shrink: 0;
}
#top #section-strengths .section-desc {
  font-size: 4vw; /* 15px @ 375px */
  font-weight: 400;
  line-height: 1.533; /* 23 / 15 */
  letter-spacing: -0.01em;
  padding-left: calc(9.6vw + 8px);
  white-space: normal;
}
.strength-cards {
  flex-direction: column;
  gap: 8vw; /* 30px @ 375px */
  margin-top: 0;
}
.strength-card {
  border-radius: 3.2vw; /* 12px @ 375px */
  padding: 5.869vw 8.533vw 9.6vw; /* top: 22.01px / sides: 32px / bottom: 36px */
}
.strength-card__num {
  height: 16vw; /* 60px @ 375px */
  margin-left: -10.427vw; /* 32px padding + 7.1px overflow */
  margin-bottom: 1.067vw;
}
.strength-card:nth-child(1) .strength-card__num img { width: 15.928vw; /* 59.73px */ }
.strength-card:nth-child(2) .strength-card__num img { width: 21.101vw; /* 79.13px */ }
.strength-card:nth-child(3) .strength-card__num img { width: 21.389vw; /* 80.21px */ }
.strength-card__icon {
  height: 24vw; /* 90px @ 375px */
  margin-top: -10vw;
  margin-bottom: 4.267vw;
}
.strength-card:nth-child(1) .strength-card__icon img { width: 26.067vw; /* 97.75px */ }
.strength-card:nth-child(2) .strength-card__icon img { width: 22.952vw; /* 86.07px */ }
.strength-card:nth-child(3) .strength-card__icon img { width: 35.115vw; /* 131.68px */ }
.strength-card__title {
  font-size: 6.933vw; /* 26px @ 375px */
  line-height: 1.538; /* 40 / 26 */
  margin-bottom: 3.2vw; /* 12px @ 375px */
}
.strength-card__desc {
  font-size: 4.267vw; /* 16px @ 375px */
  line-height: 1.5625; /* 25 / 16 */
}
.strength-cta {
  margin-top: 10.667vw; /* 40px @ 375px */
}
.strength-cta__btn {
  display: flex;
  position: relative;
  width: 100%;
  justify-content: center;
  height: 18.664vw; /* 69.99px @ 375px */
  font-size: 5.368vw; /* 20.13px @ 375px */
  border-radius: 2.133vw; /* 8px @ 375px */
  padding: 0;
  box-sizing: border-box;
}
.strength-cta__arrow {
  position: absolute;
  right: 4.616vw; /* 17.31px @ 375px */
  top: 50%;
  transform: translateY(-50%);
  width: 6.955vw;  /* 26.08px @ 375px */
  height: 6.955vw;
  border-radius: 1.283vw; /* 4.81px @ 375px */
}
.strength-cta__arrow img {
  width: 2.933vw; /* 11px @ 375px */
}

/* feature */
#top #section-feature {
  background-color: #ffffff;
}
#top #section-feature .features {
  gap: 16vw;
  margin-top: 12.8vw;
}
#top #section-feature .feature-item > a {
  display: none;
}
#top #section-feature .feature-item .feature-item_inner {
  grid-template-columns: 1fr;
  gap: 4.266667vw;
  padding: 8.533333vw 6.4vw;
  box-shadow: 0 0 8vw #7A96EA30;
  border-radius: 2.666667vw;
  border: none;
}
#top #section-feature .features .feature-item:hover .feature-item_inner {
  box-shadow: 0 0 8vw #7A96EA30;
}
#top #section-feature .feature-item .feature-item_inner .feature-text_area {
  width: 100%;
}
#top #section-feature .feature-item .feature-num {
  font-size: 12.8vw;
  margin-top: -18.666667vw;
  text-stroke-width: 0.533333vw;
  -webkit-text-stroke-width: 0.533333vw;
}
#top #section-feature .feature-item .feature-copy {
  font-size: 4.8vw;
  margin-bottom: 4.266667vw;
}
#top #section-feature .feature-item .feature-copy .marker {
  padding-bottom: 0.666667vw;
  border-bottom-width: 0.533333vw;
}
#top #section-feature .feature-item .feature-item_inner .feature-image {
  width: 100%;
  position: relative;
/*  align-self: center*/
  grid-column: 1 / 2;
  grid-row: 2 / 3;
}
#top #section-feature .feature-item .feature-item_inner .feature-image .image {
  width: 100%;
  padding-top: 69%;
  position: relative;
  overflow: hidden;
  border-radius: 10px;
}
#top #section-feature .feature-item .feature-item_inner .feature-image .image img {
  width: auto;
  max-width: none;
  height: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
#top #section-feature .feature-item .feature-item_inner .feature-btn {
  grid-column: 1 / 2;
  grid-row: 3 / 4;
}
#top #section-feature .feature-item .feature-btn .bg-s_btn {
  margin: 4.266667vw auto 0;
  width: 37.333333vw;
}

/* overview */
#top #section-overview {
  padding: 0;
}

#top #section-overview #trouble {
  padding: 10.666667vw 6.4vw 9.333333vw;
}

#top #section-overview #trouble .slide-banner {
  /*margin-bottom: 17.066667vw;*/
}

#top #section-overview #trouble .copy-text {
  font-size: 6.4vw;
  margin-bottom: 6.4vw;
}

#top #section-overview #trouble .problems {
  gap: 4vw;
}

#top #section-overview #trouble .problems .problem-item {
  width: calc((100% / 2) - (4vw / 2));
  gap: 2.4vw;
  padding: 3.2vw 1.333333vw;
  border: none;
  border-radius: 2.666667vw;
  box-shadow: 0 0 2.133333vw #0000CD20;
  font-size: 3.733333vw;
  line-height: 1.4;
}
#top #section-overview #trouble .problems .problem-item::before {
  width: 13.333333vw;
  height: 12.8vw;
}
#top #section-overview #trouble .problems .problem-item:nth-child(1):before {
  width: 10.133333vw;
}
#top #section-overview #trouble .problems .problem-item:nth-child(2):before {
  width: 14.666667vw;
}
#top #section-overview #trouble .problems .problem-item:nth-child(3):before {
  width: 13.6vw;
}
#top #section-overview #trouble .problems .problem-item:nth-child(4):before {
  width: 14.4vw;
}
#top #section-overview #trouble .problems .problem-item:nth-child(5):before {
  width: 16vw;
}
#top #section-overview #trouble .problems .problem-item:nth-child(6):before {
  width: 18.133333vw;
}

#top #section-overview #trouble .ani-illust {
  margin-top: 3.733333vw;
  width: 66.666667vw;
}

#top #section-overview #trouble .ani-illust .question {
  width: 8.266667vw;
  padding-bottom: 14.266667vw;
}

#top #section-overview #trouble .ani-illust .person {
  margin-top: -20vw;
}

#top #section-overview #product {
  padding: 18.666667vw 6.4vw 14.933333vw;
}

#top #section-overview #product::before {
  width: 62.933333vw;
  height: 14vw;
  top: -2.666667vw;
}

#top #section-overview #product .copy-text {
  font-size: 5.866667vw;
  margin-bottom: 6vw;
}
#top #section-overview #product .copy-text .logo {
  width: 63.466667vw;
  margin-right: 2.666667vw;
}

#top #section-overview #product .lead-text {
  max-width: none;
  margin: 6vw 0 6.4vw;
  font-size: 4.8vw;
  text-align: left;
  line-height: 1.8;
}

#top #section-overview #product .lead-text .strong-text {
  font-size: 6.4vw;
  border-bottom-width: 0.533333vw;
}

#top #section-overview #product .description {
  max-width: none;
  margin-top: 10.666667vw;
  font-size: 4.266667vw;
}

#top #section-overview #product .categories {
  justify-content: flex-start;
  align-items: center;
  gap: 8vw;
  margin-top: 15.2vw;
  width: 72.533333vw;
}

#top #section-overview #product .categories > li {
  max-width: none;
}

#top #section-overview #product .categories .category_item {
  gap: 5.333333vw;
  padding: 9.6vw 1.333333vw 2.666667vw;
  box-shadow: 0 0 2.666667vw #0000CD20;
  border-radius: 2.666667vw;
}

#top #section-overview #product .categories .category_item > dt {
  font-size: 5.333333vw;
  margin-top: -20vw;
}

#top #section-overview #product .categories .category_item > dt > .num {
  font-size: 13.866667vw;
}

#top #section-overview #product .categories .category_item > dd {
  font-size: 3.733333vw;
}

#top #section-overview #product .triangle {
  width: 89.333333vw;
  max-width: 100%;
  height: 19.2vw;
  margin-top: 10.666667vw;
  padding-top: 2vw;
  font-size: 4.266667vw;
}

#top #section-overview #product .triangle::before {
  font-size: 5.333333vw;
}

#top #section-overview #product .accordion-block {
  margin-top: 13.866667vw		
  ;
}

#top #section-overview #product .accordion-block .accordion-head {
  font-size: 4.8vw;
  padding: 4.266667vw 6.4vw;
  border-top-width: 0.533333vw;
  border-bottom-width: 0.533333vw;
}
#top #section-overview #product .accordion-block .accordion-head::after {
  width: 5.333333vw;
  height: 5.333333vw;
  border-top-width: 0.8vw;
  border-right-width: 0.8vw;
  right: 0;
}
#top #section-overview #product .accordion-block .accordion-body {
  display: none;
}

/* case */
#top #section-case {
  color: #ffffff;
  background-color: #5959DE;
}

#top #section-case .companys {
  width: 209.906667vw;
  gap: 2.933333vw 4.266667vw;
}

#top #section-case .companys > li {
  width: calc((100% / 5) - (4.266667vw * 4 / 5));
}

#top #section-case .company-item {
  height: 50.133333vw;
  padding: 15.466667vw 2.666667vw 1.333333vw;
}

#top #section-case .company-item .company-name {
  font-size: 5.6vw;
}

#top #section-case .company-item .company-name .strong-text {
  font-size: 8.533333vw;
}

#top #section-case .company-item .industry-type {
  font-size: 3.2vw;
}

#top #section-case .company-item .persons {
  font-size: 3.2vw;
  margin-top: 0.666667vw;
}

#top #section-case .company-item .persons .num {
  font-size: 4.8vw;
}

#top #section-case .company-item .detail {
  font-size: 2.666667vw;
}

#top #section-case .bg-l_btn,
#top #section-case .bg-l_btn.-white {
  width: 80.533333vw;
  margin-top: 8.533333vw;
}

#top #section-case .bg-l_btn.-white > a {
  line-height: 4.9em;
  font-size: 3.733333vw;
}

#top #product .bg-l_btn.-white {
  width: 100%;
  margin-top: 8.533333vw;
}

#top #product .bg-l_btn.-white > a {
  line-height: 4.9em;
  font-size: 3.733333vw;
}

#product .bg-l_btn.-white.-arrow > a::after {
  content: "";
  width: 4.2vw;
  height: 3.8vw;
}

#top #product .txt-link {
  max-width: 100%;
  margin: 4.6vw auto 0;
  padding-right: 5vw;
}

#top #product .txt-link a {
  font-size: 3.733333vw;
}

/* ===================================================
   コンサルタント紹介 / セミナー (#section-pickup)
   =================================================== */
#top #section-pickup {
  padding: 13.264vw 0 7.077vw; /* top: 49.74px / bottom: 26.54px */
}
#top #section-pickup .section-inner {
  max-width: none;
  padding: 0 4.267vw;
}
.pickup-cards {
  flex-direction: column;
  gap: 3.589vw; /* 13.46px @ 375px */
}
.pickup-card.-consultant,
.pickup-card.-seminar {
  border-width: 3px;
}
.pickup-card__label {
  height: 11.733vw; /* 44px @ 375px */
  padding: 1.067vw 3.2vw 0 4.267vw; /* top: 4px */
}
.pickup-card__text {
  font-size: 4.533vw; /* 17px @ 375px */
}
.pickup-card__arrow {
  width: 7.141vw;  /* 26.78px @ 375px */
  height: 7.141vw;
  border-radius: 1.6vw;
}
.pickup-card__arrow img {
  width: 3.9vw;
}

/* ===================================================
   CTAバナー (#section-cta-banner)
   =================================================== */
#top #section-cta-banner {
  max-width: none;
  width: auto;
  margin: 0 4.267vw; /* 16px sides */
  background-image: url(../images/top/cta-banner-bg-sp.jpg);
}
.cta-banner__inner {
  flex-direction: column;
  align-items: center;
  padding: 10.667vw 4.267vw; /* 40px / 16px @ 375px */
  gap: 4.4vw;
}
.cta-banner__right {
  order: -1;
  gap: 2px;
}
.cta-banner__logo {
  width: 53.173vw; /* 199.4px @ 375px */
}
.cta-banner__tagline {
  font-size: 2.896vw; /* 10.86px @ 375px */
}
.cta-banner__title {
  font-size: 4.8vw; /* 18px @ 375px */
  line-height: 1.617; /* 29.1 / 18 */
  letter-spacing: -0.02em;
  text-align: center;
  margin: 0 0 6.4vw;
}
.cta-banner__btns {
  flex-direction: column;
  gap: 3.816vw; /* 14.31px @ 375px */
  width: 100%;
}
.cta-banner__btn {
  width: 100%;
  height: 15.627vw; /* 58.6px @ 375px */
  font-size: 5.333vw; /* 20px @ 375px */
  line-height: 1.295; /* 25.9 / 20 */
  border-radius: 2.133vw; /* 8px @ 375px */
  border-width: 1px;
}
.cta-banner__btn.-download,
.cta-banner__btn.-contact {
  border-width: 1px;
}

/* ===================================================
   最新情報 (#section-news)
   =================================================== */
#top #section-news {
  padding: 16.899vw 0 17.72vw; /* top: 63.37px / bottom: 66.45px */
}
#top #section-news .section-inner {
  padding: 0 4.267vw;
}
#top #section-news .section-title {
  font-size: 6.133vw; /* 23px @ 375px */
  line-height: 1.304;
  align-items: flex-start;
  display: flex;
}
#top #section-news .section-title__plane {
  width: 9.6vw; /* 36px @ 375px */
  margin-top: 0.2em;
  flex-shrink: 0;
}
#top #section-news .section-header {
  margin-bottom: 6.933vw; /* 26px @ 375px */
}
.news-footer {
  flex-direction: column;
  align-items: center;
  gap: 9.725vw; /* 36.47px @ 375px */
  margin-top: 9.192vw; /* 34.47px @ 375px */
}
.news-more-btn {
  position: relative;
  width: 65.24vw; /* 244.65px @ 375px */
  height: 13.325vw; /* 49.97px @ 375px */
  font-size: 4.8vw; /* 18px @ 375px */
  border-radius: 2.133vw; /* 8px @ 375px */
  order: -1;
}
.news-more-arrow {
  right: 4.267vw;
}
.news-mailmag-link {
  font-size: 5.333vw; /* 20px @ 375px */
  order: 1;
  align-self: flex-start;
}

/* news list */
#top #section-news .news-list {
  margin-top: 5.866667vw;
  border-top-width: 0.266667vw;
}
#top #section-news .news-list > li {
  border-bottom-width: 0.266667vw;
}
#top #section-news .news-item > a {
  flex-direction: column;
  padding: 6.4vw 0;
  gap: 0;
}
#top #section-news .news-item .date {
  font-size: 4vw; /* 15px @ 375px */
  width: 100%;
}
#top #section-news .news-item .news-title {
  font-size: 4vw; /* 15px @ 375px */
}
#top #section-news .bg-l_btn {
  width: 80.533333vw;
  margin-top: 8vw;
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
  下層ページ
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/

/* MV */
.page-lower #mv {
  height: 36.8vw; /* 138px @ 375px */
  padding-bottom: 0;
}

/* パンくずが2行以上になる場合 */
.page-lower #mv.has-long-breadcrumb {
  height: auto;
  min-height: 36.8vw;
  padding-bottom: 5.333vw; /* 20px @ 375px */
}
.page-lower #mv.has-long-breadcrumb .mv-inner {
  justify-content: flex-start;
}

.page-lower.-type-b #mv {
  /*height: 78.4vw;*/
  height: 83.4vw;
  /*padding-bottom: 13.333333vw;*/
  padding-bottom: 9.333333vw;
}

.page-lower #mv .mv-inner {
  padding: 0 4vw;
}

.page-lower.-type-b #mv .mv-inner {
  padding: 0 6.4vw;
}

.page-lower #mv #page-title {
  font-size: 7.466667vw;
  display: block;
  text-align: center;
  margin-top: 2.933vw; /* 11px @ 375px */
}

.page-lower.-type-b #mv #page-title {
  font-size: 5.333333vw;
  text-align: left;
}

.page-lower #mv #page-title .logo {
  margin: 0 auto;
  width: 70.933333vw;
}

.page-lower #mv .sub-text {
  font-size: 4.8vw;
}

.page-lower #mv .cat-tags {
  gap: 0.933333vw;
  margin-top: 3.2vw;
}

.page-lower #mv .cat-tags > li {
  font-size: 3.2vw;
  line-height: 5.333333vw;
  padding: 0 2.666667vw;
  border-radius: 1.333333vw;
}

/* breadcrumbs */
#breadcrumbs {
  padding: 0 6.4vw;
  top: 3.2vw;
}
#breadcrumbs > li {
  font-size: 3.2vw;
}
#breadcrumbs > li::after {
  margin: 0 1.333333vw;
}


/* contents */
.page-lower #contents-wrap {
  padding-bottom: 30.666667vw;
  padding-left: 0;
  padding-right: 0;
}

.page-lower.-type-b #contents-wrap {
  padding-left: 6.4vw;
  padding-right: 6.4vw;
}

.page-lower #contents-wrap #contents {
  padding: 12.8vw 6.4vw 0;
  margin: 0 auto;
}

.page-lower.-type-b #contents-wrap #contents {
  margin-top: -26.666667vw;
}

.page-lower #contents-wrap.contents-2col {
  display: block;
}

.page-lower #contents-wrap.contents-2col #left-nav {
  display: none;
}

.page-lower #contents-wrap.contents-2col #main-col {
  margin-top: 0;
}

.page-lower #contents-wrap.contents-2col #contents {
  padding: 12.8vw 6.4vw 0;
  margin: 0 auto;
}

.page-lower .sub-contents-wrap {
  padding: 14.933333vw 6.4vw;
  z-index: 4;
}

.page-lower.-type-b .main-image {
  height: 53.333333vw;
  margin-bottom: 8vw;
}

.page-lower #contents-wrap #contents section + section {
  padding-top: 17.066667vw;
  margin-top: 17.066667vw;
  border-top-width: 0.266667vw;
}

.page-lower#price #contents-wrap #contents section + section {
  padding-top: 48px;
  margin-top: 21.33333vw;
}

.page-lower section .section-head {
  margin-bottom: 7.68vw; /* 28.8px @ 375px */
}

.page-lower#price section .section-head {
  margin-bottom: 6.73576vw;
}

.page-lower section .section-head .section-title,
.page-lower .sub-contents-wrap .sub-contents .section-title,
#work_motivation .section-index .section-title,
#work_motivation .section-lecture .section-title {
  font-size: 5.867vw; /* 22px @ 375px */
}

#work_motivation .section-index .section-title--research {
  font-size: 5.6vw;
}

.page-lower .sub-contents-wrap .sub-contents .section-title {
  justify-content: center;
}

.page-lower section .section-head .section-title::before,
.page-lower .sub-contents-wrap .sub-contents .section-title::before,
#work_motivation .section-index .section-title::before,
#work_motivation .section-lecture .section-title::before {
  width: 11.224vw; /* 42.09px @ 375px */
  height: calc(11.224vw / 2); /* aspect ratio 115:58 ≈ 2:1 */
}

.page-lower section .section-head .section-title span {
  font-size: 4.26666vw;
}

.page-lower section .section-head .lead-text {
  margin-top: 4.267vw; /* 16px @ 375px */
}

#consultant #contents-wrap {
  padding-bottom: 29.333vw; /* 110px @ 375px */
}

#consultant #contents-wrap #contents {
  padding-top: 6.4vw; /* 24px @ 375px */
}

.eng-title {
  font-size: 5.866667vw;
  border-bottom-width: 0.8vw;
  margin: 8vw 0 5.333333vw;
}

.eng-title > .jp-text {
  font-size: 3.733333vw;
}

.u-line_title {
  font-size: 4.8vw;
  border-bottom-width: 0.8vw;
  margin: 10.667vw 0 4.266667vw; /* top: 40px @ 375px */
}

.light-blue_title {
  font-size: 3.733333vw;
  line-height: 7.466667vw;
  padding: 0 3.2vw;
  border-radius: 1.333333vw;
  margin-bottom: 4.266667vw;
}

.light-blue_text {
  font-size: 3.733333vw;
  padding: 1.066667vw 2.133333vw;
  border-radius: 1.333333vw;
  margin-bottom: 4.266667vw;
}

.u-bd_title {
  font-size: 4.8vw;
  border-bottom-width: 0.266667vw;
  padding-bottom: 3.733333vw;
  margin-bottom: 6.4vw;
}

.dot-sub_title {
  font-size: 4.266667vw;
  margin: 4.266667vw 0;
}

.item-list {
  padding-top: 4.266667vw;
  margin: 4.266667vw 0 10.666667vw;
  border-top-width: 0.266667vw;
  font-size: 3.733333vw;
}

.item-list > dt {
  margin-bottom: 3.733333vw;
}

.item-list > dd {
  padding: 0 0 4.266667vw;
  margin: 0 0 4.266667vw;
  border-bottom-width:  0.266667vw;
}

.feature-list {
  margin-bottom: 10.666667vw;
  font-size: 3.733333vw;
}
.feature-list > li {
  text-indent: calc(-2.55em - 4.266667vw);
  padding-left: calc(2.55em + 4.266667vw);
}
.feature-list > li + li {
  margin-top: 4.266667vw;
}
.feature-list > li:before {
  padding-right: 4.266667vw;
}

.decimal-list {
  margin-bottom: 10.666667vw;
  font-size: 3.733333vw;
}
.decimal-list > li {
  text-indent: calc(-1.1em - 5.333333vw);
  padding-left: calc(1.1em + 5.333333vw);
  padding-bottom: 4.266667vw;
  margin-bottom: 4.266667vw;
  border-bottom-width: 0.266667vw;
}
.decimal-list > li:before {
  padding-right: 5.333333vw;
}

.dot-list {
  padding-bottom: 4.266667vw;
  border-bottom-width: 0.266667vw;
  margin-bottom: 4.266667vw;
  font-size: 3.733333vw;
}
.dot-list > li {
  text-indent: calc(-0.6em - 2.133333vw);
  padding-left: calc(0.6em + 2.133333vw);
}
.dot-list > li + li {
  margin-top: 2.666667vw;
}
.dot-list > li:before {
  padding-right: 2.133333vw;
}

.image-items_area {
  gap: 4.266667vw;
  flex-direction: column;
  align-items: center;
  margin: 8.533333vw 0 10.666667vw;
}

.image-items_area > li {
  width: 100%;
  max-width: none;
}

.image-items_area .image-item {
  border-radius: 1.333333vw;
}

.note {
  font-size: 3.2vw;
}

.voice-list {
  flex-direction: column;
  gap: 4.266667vw;
  margin-top: 5.333333vw;
}

.voice-list > li {
  width: 100%;
}

.voice-item {
  gap: 2.666667vw;
  padding: 5.333333vw;
  border-radius: 2.666667vw;
}

.voice-item.icon::before {
  width: 14.4vw;
  height: 14.4vw;
}
.voice-item .voice-text_area {
  font-size: 3.2vw;
}
.voice-item .voice-text_area > * + * {
  margin-top: 3.2vw;
}

.page-lower .article-thumb-items {
  flex-direction: column;
  gap: 10.666667vw;
  margin-top: 3.2vw;
}
.page-lower .article-thumb-items .article-thumb-item {
  width: 100%;
  gap: 3.733333vw;
  font-size: 3.733333vw;
}

.page-lower .article-thumb-item .article-thumb {
  border-radius: 1.333333vw;
}

.page-lower .article-thumb-item .article-title {
  margin-bottom: 0.933333vw;
}

.page-lower .article-thumb-item .article-cat_tags {
  gap: 1.333333vw;
}

.page-lower .article-thumb-item .article-cat_tags > li {
  border-radius: 1.333333vw;
  font-size: 3.2vw;
  line-height: 5.333333vw;
  padding: 0 3.2vw;
}

.page-lower .article-thumb-item .article-detail_btn {
  width: 100%;
  margin: auto 0 0;
}

.page-lower .article-thumb-item .article-detail_btn > a {
  font-size: 3.733333vw;
  line-height: 10.666667vw;
  border-radius: 5.333333vw;
  border-width: 0.266667vw;
}

/* article list */
.page-lower .article-text-list {
  border-top-width: 0.266667vw;
}
.page-lower .article-text-list > li {
  border-bottom-width: 0.266667vw;
}
.page-lower .article-text-item > a {
  padding: 5.333333vw 0;
}
.page-lower .article-text-item .article-date {
  font-size: 3.733333vw;
  margin-bottom: 5.333333vw;
}
.page-lower .article-text-item .article-title {
  font-size: 4.266667vw;
}
.page-lower .pager {
  margin-top: 13.333333vw;
  gap: 6.666667vw;
}
.page-lower .pager > li {
  font-size: 5.333333vw;
}
.page-lower .article-text-item.-type-b > a {
  gap: 2.666667vw;
  flex-direction: column;
  padding: 6.4vw 0;
}
.page-lower .article-text-item.-type-b .date {
  font-size: 3.733333vw;
  width: 100%;
}
.page-lower .article-text-item.-type-b .article-title {
  font-size: 3.733333vw;
}

/* news article */
.article-wrap {

}
.article-wrap .date {
  font-size: 3.2vw;
  margin-bottom: 4vw;
}
.article-wrap #article-title {
  font-size: 4.8vw;
  margin-bottom: 10.666667vw;
}
.article-wrap .article-body {
  font-size: 3.733333vw;
}
.article-wrap .article-body .article-image {
  margin-bottom: 10.666667vw;
}
.article-wrap .article-body .article-subtitle {
  font-size: 3.733333vw;
  margin-top: 10.666667vw;
  margin-bottom: 2.666667vw;
}
.article-wrap .article-body .article-decimal-list {
  font-size: 3.733333vw;
}
.article-wrap .article-body .article-decimal-list > li {
  text-indent: calc(-1.1em - 2.666667vw);
  padding-left: calc(1.1em + 2.666667vw);
}
.article-wrap .article-body .article-decimal-list > li:before {
  padding-right: 2.666667vw;
}
.dot-list {
  font-size: 3.733333vw;
}
.article-wrap .article-body .article-dot-list > li {
  text-indent: calc(-1em - 1.333333vw);
  padding-left: calc(1em + 1.333333vw);
}
.article-wrap .article-body .article-dot-list > li:before {
  padding-right: 1.333333vw;
}
.article-wrap .article-footer {
  margin-top: 10.666667vw;
  padding-top: 5.333333vw;
  border-top-width: 0.266667vw;
}
.article-wrap .article-footer .article-nav a {
  font-size: 3.733333vw;
}
.article-wrap .article-footer .article-nav .prev a::before {
  margin-right: 2.666667vw;
}

.article-wrap .article-footer .article-nav .next a::after {
  margin-left: 2.666667vw;
}

.article-wrap .article-footer .back-btn {
  max-width: 80.533333vw;
  margin: 10.666667vw auto 0;
}

.program-link_btn > a {
/*  gap: 3.733333vw;*/
  height: 42.666667vw;
  padding: 2.666667vw 9.333333vw 2.666667vw 6.4vw;
  border-radius: 2.666667vw;
  line-height: 1.7;
}

.program-link_btn > a::after {
  width: 4vw;
  height: 4vw;
  border-top-width: 0.8vw;
  border-right-width: 0.8vw;
  right: 5.333333vw;
}

.program-link_btn .program-name {
  font-size: 4.8vw;
}

.profile-box {
  flex-direction: column;
  align-items: center;
  gap: 6.4vw;
}

.profile-box .text-area {
  width: 100%;
}

.profile-box .profile-image {
  width: 66.133333vw;
  padding-top: 74.133333vw;
  border-radius: 1.333333vw;
}

.profile-box .profile-head {
  padding-bottom: 4.266667vw;
  margin-bottom: 4.266667vw;
  border-bottom-width: 0.266667vw; 
}

.profile-box .profile-head .profile-tag {
  font-size: 3.2vw;
  line-height: 5.333333vw;
  padding: 0 3.466667vw;
  margin-bottom: 4.266667vw;
  border-radius: 1.333333vw;
}

.profile-box .profile-head .profile-name {
  font-size: 6.933vw; /* 26px @ 375px */
}

.profile-box .profile-head .profile-eng {
  font-size: 3.733333vw;
}

.profile-box .profile-head .profile-job {
  margin-top: 1.2vw;
}

.consultant-items {
  flex-direction: column;
  gap: 6.4vw;
}

.consultant-items > .consultant-item {
  width: 100%;
}

.consultant-item > a {
  border-radius: 1.333333vw;
  border-width: 0.266667vw;
}

.consultant-item .consultant-image {
  width: 52%;
  padding-top: 58%;
  position: relative;
  overflow: hidden;
}

.consultant-item .consultant-text {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1;
}

.consultant-item .consultant-text .text-inner {
  gap: 1.066667vw;
}

.consultant-item .consultant-text .consultant-name {
  font-size: 5.333333vw;
}

.consultant-item .consultant-text .consultant-eng {
  font-size: 3.733333vw;
}


/* faq */
#faq #contents-wrap #contents .faq-cat_section {
  padding: 10.666667vw 3.733333vw 9.333333vw;
  border-width: 0.266667vw;
  border-radius: 4vw;
}
#faq #contents-wrap #contents .faq-cat_section + .faq-cat_section {
  margin-top: 9.333333vw;
}
#faq .faq-cat_section .faq-head {
  margin: 0 auto 6.666667vw;
}
#faq .faq-cat_section .faq-head .faq-cat-title {
  font-size: 4.8vw;
  padding-bottom: 2.133333vw;
}
#faq .faq-cat_section .faq-head .faq-cat-title::after {
  border-bottom-width: 0.533333vw;
}
#faq .faq-cat_section .faq-list dt,
#faq .faq-cat_section .faq-list dd {
  font-size: 3.733333vw;
  padding: 1.066667vw 0 0 12vw;
  min-height: 7.466667vw
}
#faq .faq-cat_section .faq-list dt::before,
#faq .faq-cat_section .faq-list dd::before {
  width: 7.466667vw;
  height: 7.466667vw;
}
#faq .faq-cat_section .faq-list dt.question {
  padding-bottom: 4.8vw;
}
#faq .faq-cat_section .faq-list dd.answer {
  padding-bottom: 6.666667vw;
  margin-bottom: 6.666667vw;
  border-bottom-width: 0.266667vw;
}

/* about */
#about #contents-wrap #contents {
  padding-left: 6.4vw;
  padding-right: 6.4vw;
  font-size: 3.733333vw;
}

#about #contents-wrap #contents section + section {
  border-top-width: 0.266667vw;
  padding-top: 5.333333vw;
  margin-top: 5.333333vw;
}

#about section .section_title {
  font-size: 6.4vw;
}

#about .copy {
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  gap: 8vw;
  padding-left: 0;
  font-size: 5.333333vw;
}

#about .copy .copy-text_area {
  padding-left: 0;
  position: relative;
}

#about .copy .copy-text_area .sub-text {
  font-size: 4.266667vw;
  margin-bottom: 2.666667vw;
}

#about .copy .copy-text_area .copy-text {
  background: none;
  font-size: 9.066667vw;
  line-height: 13.333333vw;
  margin-top: 4.8vw;
  margin-left: 0.533333vw;
  padding: 0;
}
#about .copy .copy-text_area .copy-text::after {
  display: none;
}
#about .copy .copy-text_area .copy-text .strong-before_text,
#about .copy .copy-text_area .copy-text .strong-after_text,
#about .copy .copy-text_area .copy-text .strong-text {
  background-color: #FFAA00;
  margin-right: 0;
  padding: 0 3.2vw;
  position: relative;
  z-index: 5;
  display: inline-block;
}
#about .copy .copy-text_area .copy-text .strong-before_text {
  color: #E4007F;
}
#about .copy .copy-text_area .copy-text .strong-after_text {
  color: #0000CD;
  margin-top: 2vw;
}
#about .copy .copy-text_area .copy-text .strong-before_text::after,
#about .copy .copy-text_area .copy-text .strong-after_text::after,
#about .copy .copy-text_area .copy-text .strong-text::after {
  background-color: #ffffff;
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  top: -0.533333vw;
  left: -0.533333vw;
  position: absolute;
  z-index: -1;
  border: 0.266667vw solid #FFAA00;
}

#about .copy .copy-image {
  width: 100%;
  max-width: none;
}

#about .lead-text {
  max-width: none;
  margin-top: 11.2vw;
  font-size: 4.8vw;
  text-align: left;
}

#about .lead-text .strong-text {
  font-size: 6.4vw;
  border-bottom-width: 0.533333vw;
}

#about .description {
  max-width: none;
  margin-top: 10.666667vw;
  font-size: 4.266667vw;
}

#about .categories {
  justify-content: flex-start;
  align-items: center;
  gap: 8vw;
  margin-top: 15.2vw;
  width: 72.533333vw;
}

#about .categories > li {
  max-width: none;
}

#about .categories .category_item {
  gap: 5.333333vw;
  padding: 9.6vw 1.333333vw 2.666667vw;
  box-shadow: 0 0 2.666667vw #0000CD20;
  border-radius: 2.666667vw;
}

#about .categories .category_item > dt {
  font-size: 5.333333vw;
  margin-top: -20vw;
}

#about .categories .category_item > dt > .num {
  font-size: 13.866667vw;
}

#about .categories .category_item > dd {
  font-size: 3.733333vw;
}

#about .triangle {
  width: 89.333333vw;
  max-width: 100%;
  height: 19.2vw;
  margin-top: 10.666667vw;
  padding-top: 2vw;
  font-size: 4.266667vw;
}

#about .triangle::before {
  font-size: 5.333333vw;
}

#about .note {
  font-size: 3.2vw;
  margin-top: 10.666667vw;
}

.bg-blue_title {
  font-size: 4.8vw;
  line-height: 1.6em;
  padding: 2.666667vw 3.2vw;
  border-radius: 1.333333vw;
  margin: 10.666667vw 0 5.333333vw;
}

.hex-text {
  font-size: 4.266667vw;
  margin-top: 5.333333vw;
  margin-bottom: 1.333333vw;
  padding-left: 4.266667vw;
}
.hex-text::before {
  width: 2.666667vw;
  height: 2.666667vw;
}
#about .image {
  text-align: center;
  margin-top: 10.666667vw;
}
#about .image.full {
  margin-left: -6.4vw;
  margin-right: -6.4vw;
}

#about .history {
  flex-direction: column;
  gap: 4vw;
  margin: 6.4vw 0 14.933333vw;
}

#about .history > dt {
  width: 22.4vw;
  font-size: 4.8vw;
  line-height: 8.533333vw;
  border-radius: 1.333333vw;
}

#about .history > dd + dt {
    margin-top: 6.666667vw;
}

#about .history > dd {
  width: 100%;
}

#about .history .strong-blue_text {
  font-size: 4.266667vw;
  margin-bottom: 1.333333vw;
}

#program #contents-wrap #contents {
  padding-top: 12.8vw;
  padding-left: 6.4vw;
  padding-right: 6.4vw;
}

#program #refine {
  padding-left: 0;
  padding-right: 0;
  font-size: 3.733333vw;
}

#program #refine .refine-head {
  gap: 2.666667vw;
}
#program #refine .clear_refine {
  width: 21.333333vw;
}
#program #refine .clear_refine span {
  line-height: 5.866667vw;
  border-radius: 3.2vw;
  border-width: 0.266667vw;
  padding: 0 1.333333vw;
}

#program #refine .refine_area {
  margin: 6.4vw 0 8.533333vw;
  border-top-width: 0.266667vw;
}

#program #refine .refine_area .refine_set {
  flex-direction: column;
  gap: 6.4vw;
  padding: 6.4vw 0;
  border-bottom-width: 0.266667vw;
}

#program #refine .refine_area .refine_set > dt {
  width: 100%;
}

#program #refine .refine_area .check-items {
  gap: 6.4vw 4vw;
}

#program #refine .refine_area .check-items > li {
  width: calc((100% / 2) - (4vw / 2));
}

#program #refine .check .checkbox {
  padding-left: 6.933333vw;
}
#program #refine .check .checkbox::after {
  margin-top: 0.12em;
  width: 4.8vw;
  height: 4.8vw;
}

#program #refine .check .checkbox::before {
  top: 0.28em;
  left: 1.6vw;
  width: 1.6vw;
  height: 2.666667vw;
  border-right: 0.533333vw solid #ffffff;
  border-bottom: 0.533333vw solid #ffffff;
}

#program #refine .refine_btn {
  width: 37.333333vw;
  margin-top: 8.533333vw;
}
#program #refine .refine_btn a,
#program #refine .refine_btn span {
  line-height: 10.666667vw;
  border-radius: 5.333333vw;
  padding: 0 1.333333vw;
}

#program #result {
  margin: 21.333333vw 0 10.666667vw;
  padding-bottom: 21.333333vw;
  border-bottom-width: 0.266667vw;
}

#program #result .service_area + .service_area {
  margin-top: 21.333333vw;
}

#program #result .service_area .field_head_area {
  flex-direction: column;
  gap: 6.4vw;
  border-radius: 4vw;
  margin-bottom: 7.466667vw;
  font-size: 3.733333vw;
}

#program #result .service_area .field_head_area .field_head_image {
  width: 100%;
  max-width: none;
}

#program #result .service_area .field_head_area .field_head_image .image {
  padding-top: 57%;
}

#program #result .service_area .field_head_area .field_head_image .image img {
  width: 100%;
  height: auto;
}

#program #result .service_area .field_head_area .field_head_text {
  gap: 4.266667vw;
  padding: 0 6.4vw 8.533333vw;
}

#program #result .service_area .field_head_area .field_head_text .copy-text {
  font-size: 4.266667vw;
}

#program #result .service_area .field_body_area {
  gap: 2.666667vw;
}

#program #result .service_area .field_body_area .service_set {
  width: calc((100% / 2) - (2.666667vw / 2));
}

#program #result .service_area .service_set > a {
  border-radius: 1.333333vw;
  border-width: 0.266667vw;
  height: 21.333333vw;
  padding: 1.333333vw;
}

#program #result .service_area .service_set > a:hover {
  box-shadow: 0 0 2.666667vw #4C4CDC50;
}

#program #result .service_area .service_set > a .service-name {
  font-size: 3.466667vw;
  line-height: 1.4em;
}

#program .bg-xl_btn {
  max-width: none;
}

#program .bg-xl_btn > a {
  height: 32vw;
  font-size: 4.8vw;
  border-radius: 1.333333vw;
  /*gap: 4.266667vw;*/
  gap: 1.266667vw;
  box-shadow: 0 0 2.666667vw #4C4CDC50;
}

#program .bg-xl_btn > a::after {
  width: 5.333333vw;
  height: 5.333333vw;
  border-top-width: 0.8vw;
  border-right-width: 0.8vw;
  right: 10.666667vw;
}

#program .bg-xl_btn > a .sub-text {
  font-size: 3.733333vw;
}

#message #contents-wrap #contents {
  padding-top: 24.533333vw;
  font-size: 3.733333vw;
}
#message #contents-wrap #contents .bg-text {
  font-size: 13.6vw;
  top: 4vw;
  left: 5.866667vw;
}
#message #contents-wrap #contents section + section {
  border-top-width: 0.266667vw;
  padding-top: 5.333333vw;
  margin-top: 8.533333vw;
}
#message section .section_title {
  font-size: 6.4vw;
}
#message .section-outline .copy-text {
  font-size: 7.466667vw;
}
#message .section-outline .column2-box {
  flex-direction: column;
  margin-top: 6.4vw;
  gap: 6.4vw;
}
#message .section-outline .column2-box > .column-image {
  width: 80vw;
}
#message .image {
  text-align: center;
  margin: 10.666667vw auto 0;
}
#message .image.full {
  margin-left: -6.4vw;
  margin-right: -6.4vw;
  margin-top: 4.8vw;
}
#message .section-plan .cycle-items {
  flex-direction: column;
  gap: 8vw;
  margin-top: 9.333333vw;
}
#message .section-plan .cycle-items > dt {
  width: 42.666667vw;
  height: 42.666667vw;
  font-size: 4.8vw;
}
#message .section-plan .cycle-items > dd {
  width: 100%;
}

#message .section-explanation .label-text {
  font-size: 4.266667vw;
  line-height: 12.8vw;
  border-radius: 1.333333vw;
  padding: 0 2.666667vw;
  max-width: none;
  margin: 6.4vw auto;
}

#message .section-explanation > p + .hex-text {
  margin-top: 17.066667vw;
}

#features #contents-wrap #contents .feature-item {
  padding: 4vw 0 17.066667vw 6.4vw;
  border-bottom-width: 0.266667vw;
}

#features .feature-item .feature-head {
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 8.533333vw;
}

#features .feature-item .feature-head .text-area {
  width: 100%;
  padding-right: 6.4vw;
}

#features .feature-item .feature-head .text-area .feature-num {
  font-size: 12.8vw;
  text-stroke-width: 0.266667vw;
  -webkit-text-stroke-width: 0.266667vw;
  line-height: 140%;
}

#features .feature-item .feature-head .text-area .feature-copy {
  font-size: 4.8vw;
  margin-bottom: 6.933333vw;
}

#features .feature-item .feature-head .text-area .feature-copy .marker {
  padding-bottom: 0.666667vw;
  border-bottom-width: 0.533333vw;
}

#features .feature-item .feature-head .image-area {
  width: 100%;
}

#features .feature-item .feature-head .image-area .image {
  border-radius: 0 0 0 4vw;
}

#features .feature-item .feature-body {
  padding: 8.533333vw 6.4vw 0 0;
}

#features .feature-item .feature-body .image {
  margin: 8.533333vw auto;
}

#features .feature-item .feature-body .bg-l_btn {
  max-width: none;
  margin: 8vw auto 21.333333vw;
}

#features .feature-item .feature-body .note {
  font-size: 3.2vw;
}

#features .feature-item .feature-body .x-scroll .image {
  width: 195.2vw;
  margin-left: 0;
  margin-right: 0;
/*  margin-top: -18.133333vw!important;*/
}

#features .feature-item .feature-body .x-scroll .image img {
  width: 100%;
}

#solution #contents-wrap #contents {
  padding: 9.2vw 0 17.066667vw;
}

#solution #contents-wrap #contents .solution-item {
  padding: 0 6.4vw;
}

#solution #contents-wrap #contents .solution-item + .solution-item  {
  padding-top: 6.4vw;
  margin-top: 17.066667vw;
}

#solution .solution-item .solution-head {
  gap: 8.533333vw;
  grid-template-columns: 1fr;
}
#solution .solution-item .solution-head .solution-title_area {
  grid-row: 1 / 2;
}
#solution .solution-item .solution-head .solution-num {
  font-size: 12.8vw;
  text-stroke-width: 0.266667vw;
  -webkit-text-stroke-width: 0.266667vw;
  line-height: 140%;
  padding-top: 5px;
}
#solution .solution-item .solution-head .solution-copy {
  font-size: 4.8vw;
  line-height: 1.8;
}
#solution .solution-item .solution-head .solution-copy .marker {
  padding-bottom: 0.4vw;
  border-bottom-width: 0.533333vw;
}

#solution .solution-item .solution-head .solution-image {
  grid-column: 1 / 2;
  grid-row: 2 / 3;
  width: 69.333333vw;
  margin: 0 auto;
}

#solution .solution-item .solution-head .solution-text_area {
  grid-row: 3 / 4;
  grid-column: 1 / 2;
}

#solution .solution-item .solution-head .solution-text_area > * {
  margin-top: 6.4vw;
}

#solution .solution-item .solution-body {
  margin-top: 12.8vw;
}

#solution .solution-item .solution-body > * + * {
  margin-top: 5.6vw;
}

#solution .solution-item .solution-body > .image {
  text-align: center;
  margin: 8.533333vw auto;
}

#solution .solution-item .solution-body .point-box {
  border-width: 0.266667vw;
  border-radius: 2.666667vw;
  padding: 6.4vw 4.266667vw;
  margin-top: 12.8vw;
  margin-bottom: 10.666667vw;
}

#solution .solution-item .solution-body .point-box .point-label {
  font-size: 5.866667vw;
  margin-top: -12vw;
}

#solution .solution-item .solution-body .point-box .point-label::before {
  width: 8vw;
  height: 8vw;
}

#solution .solution-item .solution-body .point-box .poimt-decimal_list > li {
  font-size: 4.266667vw;
  text-indent: calc(-1.1em - 2.133333vw);
  padding-left: calc(1.1em + 2.133333vw);
}

#solution .solution-item .solution-body .point-box .poimt-decimal_list > li:before {
  padding-right: 2.133333vw;
  font-size: 5.333333vw;
}

#solution .solution-item .solution-body .bg-blue_title {
  padding: 1.333333vw 1.866667vw 1.333333vw 2.666667vw;
  letter-spacing: -0.03em;
}

#solution .solution-item .solution-body .bg-blue_title.icon {
  padding-left: 12.8vw;
}

#solution .solution-item .solution-body .bg-blue_title.icon::before {
}

#solution .solution-item .solution-body .bg-blue_title.icon.icon-like::before {
  width: 8vw;
  height: 8vw;
  margin-left: -10.133333vw;
}

#solution .solution-item .solution-body .bg-blue_title.icon.icon-pc::before {
  width: 8vw;
  height: 8vw;
  margin-left: -10.133333vw;
}

#solution .solution-item .solution-body .solution-flow_list {
  flex-direction: column;
  gap: 6.4vw;
}

#solution .solution-item .solution-body .solution-flow_list > li {
  width: 100%;
  font-size: 4.266667vw;
  text-align: center;
  letter-spacing: -0.01em;
  border-radius: 1.333333vw;
  padding: 3.733333vw 2vw;
}

#solution .solution-item .solution-body .solution-flow_list > li::after {
  width: 10.666667vw;
  height: 4.266667vw;
  top: auto;
  right: auto;
  left: 50%;
  bottom: -4.266667vw;
  transform: translate(-50%, 0);
  border-right: 5.333333vw solid transparent;
  border-left: 5.333333vw solid transparent;
  border-bottom: none;
  border-top: 4.266667vw solid #FFAA00;
}

#solution .bg-l_btn {
  max-width: 100%;
  margin-top: 5.333333vw;
}

#seminar .bg-l_btn {
  width: 100%;
  margin-top: 10.666667vw;
}

#seminar .image-text_box + .image-text_box {
  margin-top: 5.333333vw;
}

#consultant .section-detail .bg-m_btn {
  width: 100%;
  margin-top: 6.4vw;
}

.u-dark-btn > a {
  background-color: #404040;
  border-color: #404040;
  border-radius: 1.6vw; /* 6px @ 375px */
  color: #ffffff;
  font-size: 4.8vw; /* 18px @ 375px */
  font-weight: 700;
  height: 14.4vw; /* 54px @ 375px */
  line-height: 1;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.u-dark-btn.-arrow > a::after {
  width: 5.867vw; /* 22px @ 375px */
  height: 5.867vw;
  background-color: #ffffff;
  background-image: url(../svg/section-arrow.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 3.2vw auto; /* 12px @ 375px */
  border-radius: 1.6vw;
  border-top: none;
  border-right: none;
  transform: translateY(-50%);
  right: 2.667vw; /* 10px @ 375px */
}

.u-gold-btn > a {
  background-color: #B69817;
  border-color: #B69817;
  border-radius: 1.6vw; /* 6px @ 375px */
  color: #ffffff;
  font-size: 4.8vw; /* 18px @ 375px */
  font-weight: 700;
  height: 14.4vw; /* 54px @ 375px */
  line-height: 1;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.u-gold-btn.-arrow > a::after {
  width: 5.867vw; /* 22px @ 375px */
  height: 5.867vw;
  background-color: #ffffff;
  background-image: url(../svg/arrow-gold.svg);
  background-repeat: no-repeat;
  background-position: center;
  background-size: 3.2vw auto; /* 12px @ 375px */
  border-radius: 1.6vw;
  border-top: none;
  border-right: none;
  transform: translateY(-50%);
  right: 2.667vw; /* 10px @ 375px */
}

#work_motivation .section-index .copy-block {
  padding: 6.4vw 1.333333vw;
  font-size: 3.733333vw;
  margin: 6.4vw auto 10.666667vw;
}

#work_motivation .section-index .copy-block .sub-copy_text {
  font-size: 4.266667vw;
  margin-bottom: 4.266667vw;
}

#work_motivation .section-index .copy-block .copy_text {
  font-size: 8.8vw; /* 33px @ 375px */
}

#work_motivation .section-index .copy-block .copy_text + p {
  font-size: 3.733vw; /* 14px @ 375px */
  margin-top: 0;
}

#work_motivation .section-index .article-text-list {
  margin-top: -5.333333vw;
}
#work_motivation .section-index .bg-l_btn {
  width: 100%;
  margin-top: 6.4vw;
}

#work_motivation .section-index > .bg-l_btn + * {
  margin-top: 17.066667vw;
}

#work_motivation .section-index .profile-box {
  flex-direction: column-reverse;
}

#work_motivation .section-lecture .bg-l_btn {
  width: 100%;
  margin-top: 6.4vw;
}

#work_motivation .section-lecture > .item-list + * {
  margin-top: 17.066667vw;
}

#work_motivation .section-lecture .item-list > dt {
  margin-bottom: 1.333333vw;
}

#work_motivation .section-lecture .profile-box {
  margin: 8.533333vw auto 17.066667vw;
  padding-top: 17.066667vw;
  border-top-width: 0.8vw;
  position: relative;
}

#work_motivation .section-lecture .profile-box .profile-image {
  position: absolute;
  bottom: 21.333333vw;
}

#work_motivation .section-lecture .profile-box .profile-image img {
  width: 100%;
  max-width: none;
}

#work_motivation .section-lecture .profile-box .bg-l_btn {
  margin-top: 89.333333vw;
}

#price #contents-wrap #contents {
  padding-left: 6.4vw;
  padding-right: 6.4vw;
}

#price .section-system .illust {
  max-width: none;
  margin: 10.666667vw auto;
}

#price .section-system .notice {
  margin: 2.666667vw auto 10.666667vw;
}

#price .description {
  max-width: none;
  margin: 10.666667vw auto 17.06666vw;
}

#price .description span {
  font-size: 14px;
  line-height: 1.6;
}

#price .description.maxw-100 {
  margin-top: unset;
}

#price .CourseName {
  padding: 15px 6px;
}

#price .CourseBlock {
  margin-top: 8.53333vw;
}

#price .CourseBlock.SecondBlock {
  margin-top: 14.93333vw;
}

#price .CourseName .CourseName_ttl {
  font-size: 18px;
  line-height: 1.4;
}

#price .CourseName .CourseName_sub {
  font-size: 16px;
  line-height: 1.4;
  margin-top: 1.6vw;
}

#price .BasicSet {
  margin-top: 6.4vw;
}

#price .BasicSet p {
  font-size: 14px;
  text-align: left;
}

#price .BasicSet p:nth-child(2) {
  font-size: 14px;
}

#price .CourseDescription {
  margin-top: 24px;
  margin-bottom: 24px;
}

#price .price-table {
  width: 100%;
  max-width: 1300px;
}

#price .price-table th,
#price .price-table td {
  padding: 2.5vw 0.833333vw;
  border-radius: 0.833333vw;
}

#price .price-table th {
  font-size: 4.26666vw;
}

#price .price-table td {
  font-size: 4vw;
}

#price .price-table tbody .text-s {
  font-size: 2vw!important;
}

#price .price-table tbody .price {
  padding: 0.8vw 0.833333vw 1.866667vw!important;
}

#price .price-table tbody .price .price-num {
  font-size: 8.26666vw;
}

#price .price-table tbody .item-text {
  font-size: 3vw;
}

#price .price-table tbody .item-text::before {
  font-size: 1.666667vw;
}

#price .price-table.price-system tbody th {
  padding: 2.5vw 0.166667vw;
}

#price .price-table.price-table2.price-system tbody th:first-child {
  width: 1.136%;
}

#price .price-table.price-table2.price-system tbody th:nth-child(2) {
  padding-left: 12px;
  padding-right: 12px;
}

#price .price-table.price-table2.price-system tbody td {
  font-size: 4vw;
}

#price .price-table.price-system tbody td:last-child {
  padding: 2.5vw 5vw;
}

#price .price-table.price-table2.price-system tbody td:last-child {
  padding: 8px 12px;
}

#price .price-table.price-system tbody td.price {
  padding: 0.8vw 1.6vw 1.866667vw!important;
}

#price .price-table.price-table2.price-system tbody tr:nth-child(1) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(2) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(3) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(6) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(7) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(10) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(11) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(14) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(15) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(18) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(19) > * {
  background-color: #F2F5FF;
}

#price .price-table.price-table2.price-system tbody tr:nth-child(4) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(5) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(8) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(9) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(12) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(13) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(16) > *,
#price .price-table.price-table2.price-system tbody tr:nth-child(17) > * {
  background-color: #E0E7FD;
}

#price .price-table.price-option tbody th {
  padding: 2.5vw;
}

#price .price-table.price-option tbody td {
  padding: 2.5vw 1.666667vw;
}

#price .price-table.price-option tbody td.price {
  padding: 0.8vw 2.666667vw 1.866667vw!important;
}

#price .price-table.price-option tbody td.price.-indent {
  padding-right: 5.5vw!important;
}

#price .price-table-caption {
  line-height: 1.6;
  margin-top: 12px;
}

#price .price-table-caption_blue {
  margin-top: 16px;
  line-height: 1.8;
}

.mt60-40 {
  margin-top: 40px;
}

.learnmore {
  margin-top: -120px;
}

.learnmore .learnmore__wrap {
  width: 72.24%;
  padding: 22px;
}

.learnmore .learnmore__ttl {
  font-size: 4vw;
  line-height: 4.6vw;
}

}

/*@media screen and (max-width: 768px)*/
