@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
   v2.0 | 20110126
   License: none (public domain).
*/
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 400;
  src: url("../assets/font/NotoSansCJKjp-Regular.woff") format("woff"), url("../assets/font/NotoSansCJKjp-Regular.eot") format("eot");
  font-display: swap; }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 500;
  src: url("../assets/font/NotoSansCJKjp-Medium.woff") format("woff"), url("../assets/font/NotoSansCJKjp-Medium.eot") format("eot");
  font-display: swap; }
@font-face {
  font-family: 'Noto Sans Japanese';
  font-style: normal;
  font-weight: 700;
  src: url("../assets/font/NotoSansCJKjp-Bold.woff") format("woff"), url("../assets/font/NotoSansCJKjp-Bold.eot") format("eot");
  font-display: swap; }
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  box-sizing: border-box; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

.wrapper {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-direction: column;
  min-height: 100vh; }

/* break */
html {
  font-size: 62.5%; }

body {
  color: #000000;
  font-family: "Noto Sans Japanese", 游ゴシック体, "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 1.5;
  background: #ECECEC;
  background-image: url("../images/bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top center; }
  body.body2 {
    background-image: url("../images/bg2.jpg"); }
  body.overhidden {
    overflow: hidden; }

img {
  max-width: 100%;
  vertical-align: baseline;
  height: auto; }

.clearfix::after {
  content: "";
  display: block;
  clear: both; }

/* ********** 
 header Style
 ********** */
header {
  background: #fff;
  width: 100%;
  padding: 20px 40px;
  position: fixed;
  z-index: 1000; }
  @media (max-width: 1130px) {
    header {
      padding: 21px 10px 20px; } }
  header h1 {
    width: 220px;
    height: 49px;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 40px; }
    @media (max-width: 1130px) {
      header h1 {
        width: 110px;
        height: 24px;
        left: 10px; } }
  header nav {
    float: right; }
    @media (max-width: 1130px) {
      header nav {
        display: none; } }
    header nav ul {
      font-size: 1.2rem;
      display: flex;
      display: -ms-flex;
      display: -webkit-flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: flex-end;
      align-items: center; }
      header nav ul ul.child {
        display: none;
        width: 242px;
        position: absolute;
        top: 0;
        left: -24px;
        padding: 20px 10px 12px 37px;
        text-align: center;
        background-color: rgba(255, 255, 255, 0.85); }
        header nav ul ul.child.-alignRight {
          left: auto;
          right: -24px; }
        header nav ul ul.child li {
          margin-left: 0;
          font-size: 1.2rem;
          line-height: 2.8rem;
          text-align: left;
          display: block; }
          header nav ul ul.child li a {
            color: #000000; }
          header nav ul ul.child li:hover a {
            color: #ED1849; }
          header nav ul ul.child li:first-of-type {
            margin-top: 10px; }
      header nav ul li {
        display: inline-block;
        margin-left: 44px;
        position: relative; }
        header nav ul li.trial.current::after {
          display: none; }
        header nav ul li.trial:hover a {
          color: #ED1849;
          background-color: #fff; }
          header nav ul li.trial:hover a::before {
            background-image: url("../images/icon-trial-hover.svg"); }
        header nav ul li.trial a {
          background-color: #ED1849;
          padding: 6px 9px 6px 29px;
          border-radius: 14px;
          color: #fff;
          position: relative;
          font-size: 11px;
          box-shadow: 0 2px 2px rgba(0, 0, 0, 0.16);
          border: 1px solid #ED1849; }
          header nav ul li.trial a::before {
            position: absolute;
            content: "";
            width: 16px;
            height: 16px;
            display: block;
            background-image: url("../images/icon-trial.svg");
            margin-right: 5px;
            top: 50%;
            left: 9px;
            transform: translateY(-50%); }
        header nav ul li.material {
          margin-left: 32px; }
          header nav ul li.material.current::after {
            display: none; }
          header nav ul li.material:hover a {
            border: 1px solid #ED1849;
            background-color: #ED1849;
            color: #fff; }
            header nav ul li.material:hover a::before {
              background-image: url("../images/icon-download-hover.svg"); }
          header nav ul li.material a {
            background-color: #FFF5F5;
            padding: 6px 9px 6px 29px;
            border-radius: 14px;
            border: 1px solid #FFF5F5;
            color: #ED1849;
            position: relative;
            font-size: 11px;
            box-shadow: 0 2px 2px rgba(0, 0, 0, 0.16); }
            header nav ul li.material a::before {
              position: absolute;
              content: "";
              width: 16px;
              height: 16px;
              display: block;
              background-image: url("../images/icon-download.svg");
              margin-right: 5px;
              top: 50%;
              left: 9px;
              transform: translateY(-50%); }
        header nav ul li.contact {
          margin-left: 32px; }
          header nav ul li.contact.current::after {
            display: none; }
          header nav ul li.contact:hover a {
            border: 1px solid #ED1849;
            background-color: #ED1849;
            color: #fff; }
            header nav ul li.contact:hover a::before {
              background-image: url("../images/icon-contact-hover.svg"); }
          header nav ul li.contact a {
            background-color: #FFF5F5;
            padding: 6px 9px 6px 29px;
            border-radius: 14px;
            border: 1px solid #FFF5F5;
            color: #ED1849;
            position: relative;
            font-size: 11px;
            box-shadow: 0 2px 2px rgba(0, 0, 0, 0.16); }
            header nav ul li.contact a::before {
              position: absolute;
              content: "";
              width: 17px;
              height: 17px;
              display: block;
              background-image: url("../images/icon-contact.svg");
              margin-right: 5px;
              top: 50%;
              left: 9px;
              transform: translateY(-50%); }
        header nav ul li.support {
          margin-left: 32px; }
          header nav ul li.support:hover a::before {
            background-image: url("../images/icon-support-hover.svg"); }
          header nav ul li.support a {
            position: relative;
            font-size: 11px;
            padding: 6px 0 6px 29px; }
            header nav ul li.support a::before {
              position: absolute;
              content: "";
              width: 15px;
              height: 15px;
              display: block;
              background-image: url("../images/icon-support.svg");
              margin-right: 5px;
              top: 50%;
              left: 10px;
              transform: translateY(-50%); }
        header nav ul li.trial2.current::after {
          display: none; }
        header nav ul li.trial2 a {
          background-color: #ED1849;
          padding: 5px 12px;
          border-radius: 14px;
          color: #fff;
          font-size: 11px;
          border: 1px solid #ED1849;
          width: 114px;
          display: block;
          text-align: center; }
          header nav ul li.trial2 a:hover {
            background-color: #fff;
            color: #ED1849; }
        header nav ul li.material2 {
          margin-left: 32px; }
          header nav ul li.material2.current::after {
            display: none; }
          header nav ul li.material2 a {
            background-color: #FFEFEF;
            padding: 5px 5px;
            border-radius: 14px;
            color: #ED1849;
            font-size: 11px;
            width: 114px;
            display: block;
            border: 1px solid #ED1849;
            text-align: center; }
            header nav ul li.material2 a:hover {
              background-color: #fff;
              color: #ED1849;
              border: 1px solid #ED1849; }
        header nav ul li.contact2 {
          margin-left: 32px; }
          header nav ul li.contact2.current::after {
            display: none; }
          header nav ul li.contact2 a {
            background: linear-gradient(90deg, #2E66B2 0%, #3A93AA 100%);
            padding: 6px 13px;
            border-radius: 14px;
            color: #fff;
            font-size: 11px;
            width: 114px;
            display: block;
            text-align: center; }
            header nav ul li.contact2 a:hover {
              background: #fff;
              color: #2E66B2;
              border: 1px solid #2E66B2;
              padding: 5px 12px; }
        header nav ul li.hasChild {
          position: relative; }
          header nav ul li.hasChild::before {
            content: "▲";
            background-repeat: no-repeat;
            display: inline-block;
            font-size: 9px;
            transform: rotate(90deg) translate(0, 3px); }
          header nav ul li.hasChild:hover ul.child {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            flex-direction: column;
            align-items: flex-start; }
          header nav ul li.hasChild:hover::before {
            color: #ED1849;
            transform: rotate(180deg) translate(4px, 0); }
          header nav ul li.hasChild li.current::after {
            display: none; }
          header nav ul li.hasChild li.current a::after {
            content: "";
            width: calc(100% + 20px);
            background-color: #ED1849;
            height: 2px;
            position: absolute;
            bottom: 0;
            left: 50%;
            transform: translateX(-50%); }
        header nav ul li.current::after {
          content: "";
          width: calc(100% + 20px);
          background-color: #ED1849;
          height: 2px;
          position: absolute;
          bottom: -4px;
          left: 50%;
          transform: translateX(-50%); }
        header nav ul li a {
          color: #000;
          text-decoration: none;
          font-weight: bold; }
        header nav ul li:hover a {
          color: #ED1849; }
      header nav ul:last-of-type {
        margin-top: 18px; }
        header nav ul:last-of-type li {
          display: inline-block;
          margin-left: 54px; }
  header .humberger {
    float: right;
    display: none;
    width: 30px;
    height: 19px;
    cursor: pointer; }
    header .humberger div {
      width: 100%;
      height: 3px;
      background-color: #ED1849;
      transition: 0.3s; }
      header .humberger div:nth-of-type(2) {
        transform: translate(0px, 5px); }
      header .humberger div:nth-of-type(3) {
        transform: translate(0, 10px); }
    header .humberger.opened div:nth-of-type(1) {
      transform: translate(1px, 5px) rotate(45deg); }
    header .humberger.opened div:nth-of-type(2) {
      opacity: 0; }
    header .humberger.opened div:nth-of-type(3) {
      transform: translate(1px, -1px) rotate(-45deg); }
    @media (max-width: 1130px) {
      header .humberger {
        display: block; } }
  header.type_min {
    padding: 24.86px 40px 24.85px; }
    @media screen and (max-width: 1065px) {
      header.type_min {
        padding: 18px 10px; } }
    header.type_min h1 {
      width: 200px;
      height: 44.3px;
      margin: 0 auto;
      position: static; }
      @media screen and (max-width: 1065px) {
        header.type_min h1 {
          width: 110px;
          height: 24px; } }
      header.type_min h1 a {
        display: block; }
        header.type_min h1 a img {
          vertical-align: bottom; }

.mode-scroll-down header {
  -webkit-animation: hide-nav 0.3s both;
  animation: hide-nav 0.3s both; }
.mode-scroll-down.overhidden header {
  transform: translate(0, 0);
  -webkit-animation: inherit;
  animation: inherit; }
.mode-scroll-down .planType-sticky-active {
  transform: translateY(-94px); }

.mode-scroll-up header {
  -webkit-animation: show-nav 0.3s both;
  animation: show-nav 0.3s both; }

@-webkit-keyframes show-nav {
  0% {
    -webkit-transform: translate(0, -100px);
    transform: translate(0, -100px); }
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }
@keyframes show-nav {
  0% {
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%); }
  100% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); } }
@-webkit-keyframes hide-nav {
  0% {
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%); }
  100% {
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%); } }
@keyframes hide-nav {
  0% {
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0); }
  100% {
    -webkit-transform: translate(0, -100%);
    transform: translate(0, -100%); } }
.mnav {
  background-color: #fff;
  width: 100%;
  position: fixed;
  margin-top: 60px;
  padding-bottom: 33px;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transition: 0.3s;
  overflow-y: scroll;
  height: 100%;
  padding-bottom: 90px; }
  .mnav.active {
    opacity: 1;
    visibility: visible; }
  .mnav ul li {
    border: solid 1px #cccccc; }
    .mnav ul li a {
      font-size: 1.2rem;
      line-height: 1.2rem;
      font-weight: bold;
      text-decoration: none;
      padding: 20px 10px;
      display: block;
      color: #000000; }
      .mnav ul li a:hover {
        color: #ED1849; }
    .mnav ul li:first-of-type {
      border-top: 1px solid #ED1849; }
    .mnav ul li ul {
      border: none; }
    .mnav ul li li {
      border-right: none;
      border-left: none; }
      .mnav ul li li a {
        padding: 20px 10px 20px 30px; }
      .mnav ul li li:first-of-type {
        border-top: 1px solid #cccccc; }
      .mnav ul li li:last-of-type {
        border-bottom: none; }

.pc {
  display: block; }
  @media screen and (max-width: 1065px) {
    .pc {
      display: none; } }

.md {
  display: none; }
  @media screen and (max-width: 1065px) {
    .md {
      display: block; } }

table.sm {
  display: none; }
  @media screen and (max-width: 767px) {
    table.sm {
      display: table; } }

.sm {
  display: none; }
  @media screen and (max-width: 767px) {
    .sm {
      display: block; } }

table.sm-none {
  display: table; }
  @media screen and (max-width: 767px) {
    table.sm-none {
      display: none !important; } }

.sm-none {
  display: block; }
  @media screen and (max-width: 767px) {
    .sm-none {
      display: none !important; } }

.pc-none {
  display: none; }
  @media screen and (max-width: 767px) {
    .pc-none {
      display: block; } }

/* ********** 
 contents Style
 ********** */
main {
  padding: 104px 0 0;
  display: block; }
  @media (max-width: 1130px) {
    main {
      padding: 60px 0 0; } }

section {
  width: 100%; }
  section .inner {
    padding: 40px 40px;
    background: #fff; }
    @media screen and (max-width: 767px) {
      section .inner {
        padding: 40px 12px; } }
    section .inner .preRevision {
      margin: 30px auto 50px !important;
      max-width: 440px;
      padding: 13px 10px;
      border: 2px solid #FF0000;
      font-size: 16px;
      line-height: calc(26/16);
      font-weight: 500;
      text-align: center;
      color: #FF0000;
      background: #fff; }
      @media screen and (max-width: 767px) {
        section .inner .preRevision {
          font-size: 14px;
          padding: 13px 2px; } }
      section .inner .preRevision a {
        color: #FF0000 !important;
        text-decoration: underline !important; }
        section .inner .preRevision a:hover {
          color: #FF0000 !important;
          text-decoration: none !important; }
  section.page_title {
    padding: 68px 40px 105px;
    max-width: 1100px;
    margin: 0 auto;
    position: relative;
    z-index: 2; }
    section.page_title.drive {
      padding-bottom: 75px; }
      @media screen and (max-width: 767px) {
        section.page_title.drive {
          padding-bottom: 80px; } }
    section.page_title.excel {
      padding-bottom: 70px;
      overflow: initial; }
      @media screen and (max-width: 767px) {
        section.page_title.excel {
          padding-bottom: 80px; } }
    section.page_title.action {
      padding-bottom: 40px; }
      @media screen and (max-width: 767px) {
        section.page_title.action {
          padding-bottom: 80px; } }
    section.page_title.solution {
      padding-bottom: 105px; }
      @media screen and (max-width: 767px) {
        section.page_title.solution {
          padding-bottom: 80px; } }
    section.page_title.faq_title {
      padding-bottom: 160px; }
      @media screen and (max-width: 767px) {
        section.page_title.faq_title {
          padding-bottom: 80px; } }
    section.page_title.case_title {
      overflow: initial; }
    @media screen and (max-width: 767px) {
      section.page_title {
        padding: 50px 12px 80px; } }
    section.page_title h1 {
      font-size: 5rem;
      line-height: 7.2rem;
      font-weight: bold;
      text-align: center; }
      section.page_title h1::after {
        content: "";
        background: #ED1849;
        width: 90px;
        height: 8px;
        margin: 13px auto 20px;
        display: block; }
      section.page_title h1 span {
        font-size: 2.4rem;
        line-height: 3rem;
        display: block; }
    section.page_title h2 {
      font-size: 1.3rem;
      line-height: 1.9rem;
      font-weight: bold;
      text-align: center;
      color: #081724; }
    section.page_title .plan {
      text-align: center;
      margin-top: 10px; }
      section.page_title .plan span {
        font-size: 1.1rem;
        line-height: 2.3rem;
        font-weight: bold;
        padding: 0 7px;
        color: #ffffff;
        background-color: #0088FF;
        display: inline-block;
        text-align: center; }
    section.page_title img {
      position: absolute;
      top: 50%;
      right: 40px;
      transform: translateY(-50%);
      margin-top: 15px;
      z-index: -1; }
      @media screen and (max-width: 767px) {
        section.page_title img {
          /*top: initial;
          bottom: 0;
          width: 40% !important;
          right: 0;
          margin-top: 0;
          transform: none;*/
          display: none; } }
      section.page_title img.animated_service {
        width: 299px; }
      section.page_title img.animated_salesforce {
        width: 269px; }
      section.page_title img.animated_dm-tracer {
        width: 200px;
        top: 90px; }
      section.page_title img.animated_government {
        width: 256px;
        top: 110px; }
      section.page_title img.animated_drive {
        width: 332px; }
      section.page_title img.animated_excel {
        width: 240px;
        right: 70px;
        transform: none;
        top: 30px; }
      section.page_title img.animated_action {
        width: 237px;
        top: initial;
        bottom: -17px;
        transform: none; }
      section.page_title img.animated_solution {
        width: 340px;
        top: -50px;
        right: -45px;
        transform: none; }
      section.page_title img.animated_price {
        width: 336px;
        right: 27px; }
      section.page_title img.animated_estimate {
        width: 260px;
        right: 75px;
        transform: none;
        top: initial;
        bottom: -10px; }
      section.page_title img.animated_case {
        width: 255px;
        right: 90px;
        transform: none;
        top: -5px; }
      section.page_title img.animated_support {
        width: 290px;
        right: -73px;
        top: 160px; }
      section.page_title img.animated_faq {
        width: 347px; }
      section.page_title img.animated_implementation {
        width: 290px;
        right: 20px;
        top: 125px; }
      section.page_title img.animated_form {
        width: 260px;
        right: -10px;
        top: 120px; }
      section.page_title img.animated_useful {
        width: 275px;
        right: 0;
        top: 125px; }
    section.page_title .btnArea {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: center;
      margin-top: 15px; }
      section.page_title .btnArea a {
        display: inline-block;
        margin: 0; }
        section.page_title .btnArea a:nth-of-type(2) {
          margin-left: 20px; }
        @media all and (-ms-high-contrast: none) {
          section.page_title .btnArea a {
            margin-left: 0; } }
  section .btn-area-02 {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    max-width: 826px;
    margin: 30px auto 5px;
    flex-wrap: wrap; }
    @media screen and (max-width: 767px) {
      section .btn-area-02 {
        flex-direction: column; } }
    section .btn-area-02 .link-btn {
      width: calc((100% - 26px)/2) !important;
      margin-bottom: 26px !important;
      font-size: 2.2rem;
      line-height: 3.2rem;
      font-weight: bold;
      text-align: center;
      text-decoration: none !important;
      color: #7E7E7E !important;
      background: rgba(237, 24, 73, 0.2);
      border-radius: 30px;
      display: inline-block;
      max-width: 100%;
      padding: 14px 10px; }
      @media screen and (max-width: 767px) {
        section .btn-area-02 .link-btn {
          width: 100% !important;
          margin-bottom: 16px !important; } }
      section .btn-area-02 .link-btn.active {
        background: #ED1849;
        color: #fff !important; }
      section .btn-area-02 .link-btn:hover {
        background: #ED1849;
        color: #fff !important; }
  section a.btn01 {
    font-size: 2rem;
    line-height: 7.5rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 300px;
    height: 75px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn01:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn03 {
    font-size: 2.6rem;
    line-height: 5rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 245px;
    padding: 11px 10px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn03:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn04 {
    font-size: 2.6rem;
    line-height: 7.6rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 270px;
    height: 76px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn04:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn05 {
    font-size: 1.4rem;
    line-height: 3rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 120px;
    height: 35px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn05:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn06 {
    font-size: 1.4rem;
    line-height: 3rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 170px;
    height: 35px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn06:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn07 {
    font-size: 1.4rem;
    line-height: 3rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 110px;
    height: 35px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn07:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn08 {
    font-size: 2.6rem;
    line-height: 7rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 315px;
    height: 76px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn08:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn09 {
    font-size: 1.4rem;
    line-height: 3.5rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 160px;
    height: 35px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn09:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn10 {
    font-size: 2.6rem;
    line-height: 3.8rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 415px;
    padding: 19px 5px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn10:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn11 {
    font-size: 1.4rem;
    line-height: 3.5rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 220px;
    height: 35px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn11:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn14 {
    font-size: 1.4rem;
    line-height: 1.5rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    min-width: 220px;
    margin: 0px auto;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059;
    padding: 7px 10px; }
    section a.btn14:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn02 {
    font-size: 1.4rem;
    line-height: 3rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #ED1849 !important;
    background: #fff;
    width: 120px;
    height: 35px;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px #00000059; }
    section a.btn02:hover {
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff !important; }
  section a.btn12 {
    font-size: 1.8rem;
    line-height: 2.6rem;
    font-weight: bold;
    text-align: center;
    text-decoration: none !important;
    color: #fff !important;
    background: #ED1849;
    padding: 10px !important;
    width: 200px;
    border: #ED1849 2px solid;
    border-radius: 6px;
    display: block;
    max-width: 100%;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }
    section a.btn12:hover {
      background: #fff;
      border: #ED1849 2px solid;
      color: #ED1849 !important; }
  section a.btn13 {
    width: 408px;
    display: block;
    margin: 0 auto;
    background: #ED1849;
    border: 2px solid #ED1849;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    padding: 17.5px 10px;
    text-align: center;
    color: #fff !important;
    text-decoration: none;
    font-size: 2.6rem;
    line-height: 1.423077;
    font-weight: bold;
    border-radius: 6px;
    max-width: 100%; }
    section a.btn13:hover {
      color: #ED1849 !important;
      background: #fff;
      text-decoration: none !important; }
  section.contents {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
    margin: 0px auto 100px;
    box-sizing: border-box;
    padding: 0 40px; }
    @media screen and (max-width: 767px) {
      section.contents {
        padding: 0px 12px;
        margin: 0px auto 60px; } }
    section.contents .price_note {
      font-size: 2.4rem;
      font-weight: bold; }
      @media screen and (max-width: 767px) {
        section.contents .price_note {
          font-size: 1.6rem; } }
    section.contents .preRevision {
      margin: -50px auto 70px;
      max-width: 440px;
      padding: 13px 10px;
      border: 2px solid #FF0000;
      font-size: 16px;
      line-height: calc(26/16);
      font-weight: 500;
      text-align: center;
      color: #FF0000;
      background: #fff; }
      @media screen and (max-width: 767px) {
        section.contents .preRevision {
          margin: calc(-60/375 * 100vw) auto calc(100/375 * 100vw);
          font-size: 14px;
          padding: 13px 2px; } }
      section.contents .preRevision a {
        color: #FF0000 !important;
        text-decoration: underline !important; }
        section.contents .preRevision a:hover {
          color: #FF0000 !important;
          text-decoration: none !important; }
    section.contents h2 {
      font-size: 3rem;
      line-height: 5rem;
      font-weight: bold;
      text-align: center;
      margin: 0px 0px 40px;
      color: #081724; }
      section.contents h2.liner_title {
        line-height: 1.5; }
      section.contents h2.line::after {
        content: "";
        width: 91px;
        height: 8px;
        background-color: #ED1849;
        display: block;
        margin: 1px auto 0; }
    section.contents h3 {
      font-size: 2.8rem;
      line-height: 4rem;
      font-weight: bold;
      margin: 0px 0px 30px;
      padding-left: 10px;
      position: relative;
      color: #3B4043; }
      section.contents h3:before {
        content: "";
        background: #EB0E82;
        width: 3px;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0; }
      section.contents h3.noborder {
        padding-left: 0;
        margin: 0 0 20px; }
        section.contents h3.noborder::before {
          position: initial;
          top: auto;
          left: auto;
          width: 0;
          height: 0; }
      section.contents h3.privacy {
        font-size: 2.3rem;
        line-height: 4rem;
        border-bottom: 1px dashed #707070;
        padding: 10px 0; }
        section.contents h3.privacy::before {
          position: initial;
          top: auto;
          left: auto;
          width: 0;
          height: 0; }
    section.contents h4 {
      font-size: 1.6rem;
      line-height: 2.8rem;
      font-weight: bold;
      color: #3B4043; }
    section.contents .h4_line {
      font-size: 2.2rem;
      line-height: 2.8rem;
      margin: 0;
      padding-left: 0;
      text-align: center; }
      section.contents .h4_line::after {
        content: "";
        background: #ED1849;
        width: 91px;
        height: 3px;
        margin: 19px auto 19px;
        display: block; }
    section.contents p {
      font-size: 1.6rem;
      line-height: 2;
      margin: 0px 0px 40px; }
      section.contents p.center {
        text-align: center; }
    section.contents a {
      color: #ED1849;
      text-decoration: none; }
      section.contents a:hover {
        text-decoration: underline; }
    section.contents span.txtRight {
      text-align: right !important;
      display: block !important; }
    section.contents .annotation {
      font-size: 1.1rem;
      line-height: 2.8rem; }
    section.contents .mb20 {
      margin-bottom: 20px !important; }
    section.contents .otherFunc {
      max-width: 700px;
      margin: 0 auto 100px; }
    section.contents figure {
      margin-bottom: 100px; }
    section.contents .iframe-wrap {
      margin: 0 auto 30px;
      width: 100%;
      overflow: hidden; }
      section.contents .iframe-wrap iframe {
        width: 100%; }
    section.contents .youtube_img {
      text-align: center;
      margin-top: 20px; }
      section.contents .youtube_img h3 {
        font-size: 2.6rem;
        line-height: 4.5rem;
        font-weight: bold;
        margin-bottom: 18px; }
        section.contents .youtube_img h3::before {
          display: none; }
      section.contents .youtube_img img:hover {
        opacity: 0.7; }
    section.contents .icons {
      margin: 0 auto 65px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-around; }
      section.contents .icons > div {
        /*width: calc((100% - 336px) / 3);*/ }
      section.contents .icons a {
        text-align: center;
        display: block;
        text-decoration: none;
        margin: 0 auto; }
        section.contents .icons a:hover .img {
          background: linear-gradient(131deg, #ED1849 0%, #E96432 100%);
          box-shadow: 0px 3px 6px #00000059;
          border: 2px solid #FFFFFF; }
        section.contents .icons a .img {
          background-color: #ED1849;
          width: 103px;
          height: 103px;
          border-radius: 50%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 0 auto 15px; }
          @media screen and (max-width: 767px) {
            section.contents .icons a .img {
              width: 75px;
              height: 75px; }
              section.contents .icons a .img img {
                width: 50%; } }
        section.contents .icons a p {
          margin-top: 9px;
          font-size: 1.6rem;
          line-height: 2.4rem;
          font-weight: bold;
          text-decoration: none;
          color: #000000;
          white-space: nowrap;
          display: block;
          text-align: center; }
          @media screen and (max-width: 767px) {
            section.contents .icons a p {
              font-size: 1.3rem;
              line-height: 1.6rem; } }
    section.contents .privacy-box {
      height: 280px;
      overflow-y: auto;
      border: 1px solid #ddd;
      padding: 20px;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      margin-bottom: 40px; }
      section.contents .privacy-box .privacy-ttl {
        font-weight: bold;
        margin-bottom: 15px; }
      section.contents .privacy-box p {
        margin-bottom: 20px; }
      section.contents .privacy-box .ul-gen {
        margin-bottom: 20px;
        padding-left: 0; }
        section.contents .privacy-box .ul-gen li {
          list-style-type: none;
          margin-bottom: 2px;
          list-style: none;
          margin-left: 0; }
      section.contents .privacy-box .ol-num {
        margin: 0 0 20px 20px; }
        section.contents .privacy-box .ol-num li {
          list-style-type: decimal;
          margin-bottom: 2px;
          font-size: 1.6rem;
          line-height: 2.8rem; }
      section.contents .privacy-box .thats-all {
        margin-bottom: 0;
        text-align: right; }
    section.contents .float_wrap {
      margin-bottom: 80px;
      overflow: hidden; }
      section.contents .float_wrap *:last-child {
        padding-bottom: 0;
        margin-bottom: 0; }
      section.contents .float_wrap .left {
        width: 50%;
        padding-right: 40px;
        float: left;
        box-sizing: border-box;
        padding-bottom: 15px; }
        @media screen and (max-width: 767px) {
          section.contents .float_wrap .left {
            float: none;
            width: 100%;
            padding-right: 0; } }
      @media screen and (max-width: 767px) {
        section.contents .float_wrap .btn02 {
          margin: 0 auto; } }
      section.contents .float_wrap figure.left {
        padding-right: 0 !important; }
        @media screen and (max-width: 767px) {
          section.contents .float_wrap figure.left {
            margin-bottom: 20px;
            text-align: center; } }
      section.contents .float_wrap figure.mt120 {
        margin-top: 120px; }
        @media screen and (max-width: 767px) {
          section.contents .float_wrap figure.mt120 {
            margin-top: 0; } }
      section.contents .float_wrap .right {
        width: 50%;
        padding-left: 40px;
        float: right;
        box-sizing: border-box;
        padding-bottom: 15px; }
        @media screen and (max-width: 767px) {
          section.contents .float_wrap .right {
            float: none;
            width: 100%;
            padding-left: 0; } }
      @media screen and (max-width: 767px) {
        section.contents .float_wrap figure.right {
          margin-bottom: 20px;
          text-align: center; } }
      section.contents .float_wrap figure.right2 {
        margin-bottom: 25px; }
        @media screen and (max-width: 767px) {
          section.contents .float_wrap figure.right2 {
            width: 100%;
            text-align: center;
            margin-bottom: 20px; } }
      section.contents .float_wrap p {
        margin-bottom: 30px; }
    section.contents .salesforce_img01 {
      margin-bottom: 0 !important; }
    section.contents .excel_img02 {
      margin-top: 110px; }
      @media screen and (max-width: 767px) {
        section.contents .excel_img02 {
          margin-top: 0; } }
    section.contents .priceModel {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      align-items: center;
      margin-bottom: 45px; }
      @media screen and (max-width: 767px) {
        section.contents .priceModel {
          flex-direction: column;
          justify-content: center; } }
      section.contents .priceModel .initial, section.contents .priceModel .running, section.contents .priceModel .option, section.contents .priceModel .total {
        width: 178px;
        height: 60px;
        line-height: 60px;
        font-size: 2.2rem;
        font-weight: bold;
        text-align: center;
        border-radius: 38px; }
      section.contents .priceModel .initial {
        background-color: #9BD8E3; }
      section.contents .priceModel .running {
        background-color: #F9E2AF; }
      section.contents .priceModel .option {
        background-color: #E1ACBD; }
      section.contents .priceModel .total {
        background-color: #ED1849;
        color: #ffffff; }
      section.contents .priceModel .plus {
        font-size: 3rem;
        font-weight: bold;
        margin: 0 12px;
        width: 30px;
        text-align: center; }
        @media screen and (max-width: 767px) {
          section.contents .priceModel .plus {
            margin: 12px 0; } }
      section.contents .priceModel .equal {
        font-size: 3rem;
        font-weight: bold;
        width: 30px;
        margin: 0 12px;
        text-align: center; }
        @media screen and (max-width: 767px) {
          section.contents .priceModel .equal {
            transform: rotate(90deg);
            margin: 12px 0; } }
    section.contents .price {
      max-width: 1020px;
      overflow: auto; }
      section.contents .price table {
        width: 100%; }
        section.contents .price table th {
          border-top: 1px solid #ddd;
          border-bottom: 1px solid #ddd;
          text-align: center;
          padding: 10px 2px;
          vertical-align: middle;
          white-space: nowrap;
          font-weight: bold; }
        section.contents .price table td {
          border-top: 1px solid #ddd;
          border-bottom: 1px solid #ddd;
          text-align: center;
          padding: 10px 2px;
          white-space: nowrap;
          font-size: 12px; }
      section.contents .price .price-table1 thead th {
        background-color: #f5f5f5;
        color: #2280C2;
        padding: 10px 2px; }
      section.contents .price .price-table1 tbody th {
        background-color: #fafafa; }
      section.contents .price .price-table1 tbody td {
        padding: 15px 2px; }
      section.contents .price .price-table1-cell tbody th {
        font-size: 14px; }
      section.contents .price .price-table1-cell tbody th.celltd01 {
        font-size: 12px;
        font-weight: normal; }
      section.contents .price .price-table1-cell tbody td.celltd02 {
        border-right: 1px solid #ddd; }
      section.contents .price .price-table1-cell tbody th.celltd {
        width: 130px;
        background-color: #fff;
        font-size: 14px; }
    section.contents.connect {
      max-width: 1100px;
      margin-bottom: 40px; }
      section.contents.connect .inner {
        padding: 17px 40px; }
        @media screen and (max-width: 767px) {
          section.contents.connect .inner {
            padding: 17px 12px; } }
      section.contents.connect h2 {
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        margin-bottom: 26px; }
      section.contents.connect .price {
        font-size: 2rem;
        line-height: 2.8rem;
        font-weight: bold;
        margin-bottom: 20px;
        overflow: hidden; }
    section.contents ul {
      padding-left: 17px; }
      section.contents ul li {
        font-size: 1.6rem;
        line-height: 2.8rem;
        list-style: outside disc;
        margin-left: 16px; }
        section.contents ul li a {
          color: #ED1849;
          text-decoration: none; }
          section.contents ul li a:hover {
            text-decoration: underline; }
      section.contents ul.list-style-none {
        padding-left: 0; }
        section.contents ul.list-style-none li {
          list-style: none;
          margin-left: 0; }
    section.contents dl {
      font-size: 1.6rem;
      line-height: 3.8rem;
      margin-bottom: 80px;
      overflow: hidden; }
      section.contents dl dt {
        font-weight: bold;
        float: left;
        clear: both; }
      section.contents dl dd {
        margin-left: 15px;
        float: left; }
        section.contents dl dd a {
          color: #ED1849;
          text-decoration: none; }
          section.contents dl dd a:hover {
            text-decoration: underline; }
    section.contents *:last-child {
      margin-bottom: 0px; }
    section.contents .estimate .input {
      margin-bottom: 40px; }
      section.contents .estimate .input .columns {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between; }
        @media screen and (max-width: 767px) {
          section.contents .estimate .input .columns {
            flex-direction: column; } }
        section.contents .estimate .input .columns.two > div {
          background: #fff;
          width: calc((100% - 20px) / 2);
          padding: 0 0 23px; }
          @media screen and (max-width: 767px) {
            section.contents .estimate .input .columns.two > div {
              width: 100%;
              margin-bottom: 20px; } }
      section.contents .estimate .input hr {
        border-top: 1px dashed #707070;
        margin-bottom: 24px; }
      section.contents .estimate .input label {
        font-size: 1.8rem;
        font-weight: bold;
        vertical-align: top; }
        @media screen and (max-width: 767px) {
          section.contents .estimate .input label {
            font-size: 1.6rem; } }
      section.contents .estimate .input .large {
        font-size: 2rem;
        font-weight: bold;
        display: inline-block;
        flex-shrink: 0; }
      section.contents .estimate .input select {
        width: 240px;
        height: 35px;
        appearance: none;
        background: url(../images/select.png) right 10px top 50% no-repeat;
        outline: none;
        padding: 5px 10px;
        font-size: 1.4rem;
        vertical-align: top;
        cursor: pointer;
        border-radius: 2px;
        max-width: 100%; }
      section.contents .estimate .input select::-ms-expand {
        display: none; }
      section.contents .estimate .input input[type="checkbox"] {
        width: 17px;
        height: 17px;
        margin-right: 6px;
        transform: translateY(3px);
        cursor: pointer;
        border-radius: 0;
        outline: none; }
      section.contents .estimate .input .want {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex; }
        @media screen and (max-width: 767px) {
          section.contents .estimate .input .want {
            flex-direction: column; } }
        section.contents .estimate .input .want ul {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          padding-left: 0; }
          @media screen and (max-width: 1065px) {
            section.contents .estimate .input .want ul {
              flex-direction: column; } }
          section.contents .estimate .input .want ul li {
            margin-right: 28px;
            list-style: none;
            margin-left: 0; }
            @media screen and (max-width: 767px) {
              section.contents .estimate .input .want ul li {
                margin-right: 0; } }
      section.contents .estimate .input .option {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column; }
        section.contents .estimate .input .option table {
          margin-left: 0px;
          width: 100%; }
          @media screen and (max-width: 390px) {
            section.contents .estimate .input .option table {
              width: 100%; } }
          section.contents .estimate .input .option table .check {
            width: 200px; }
            @media screen and (max-width: 767px) {
              section.contents .estimate .input .option table .check {
                display: block;
                width: 100%;
                border-top: 1px dashed #c2c2c2; }
                section.contents .estimate .input .option table .check:first-of-type {
                  border-top: none; }
                section.contents .estimate .input .option table .check input[type="checkbox"] {
                  transform: translateY(2px); } }
          section.contents .estimate .input .option table td {
            width: 310px;
            font-size: 1.8rem;
            font-weight: bold;
            position: relative;
            padding-bottom: 22px; }
            @media screen and (max-width: 767px) {
              section.contents .estimate .input .option table td {
                display: block;
                width: 100%;
                padding-bottom: 20px;
                font-size: 1.6rem; } }
            section.contents .estimate .input .option table td input[type="text"],
            section.contents .estimate .input .option table td select {
              position: absolute;
              width: 80px;
              height: 35px;
              padding: 5px 25px 5px 5px;
              font-size: 1.4rem;
              top: -3px;
              left: 55%;
              box-sizing: border-box;
              text-align: right;
              outline: none; }
              @media screen and (max-width: 767px) {
                section.contents .estimate .input .option table td input[type="text"],
                section.contents .estimate .input .option table td select {
                  right: 0;
                  left: initial; } }
            section.contents .estimate .input .option table td input[type="text"] {
              padding: 5px; }
    section.contents .estimate .result h2 {
      background-color: #ED1849;
      color: #ffffff;
      border-radius: 38px;
      text-align: center;
      font-size: 2.2rem;
      line-height: 5rem;
      width: 300px;
      height: 60px;
      padding: 5px 0;
      margin: 0 auto 36px;
      max-width: 100%; }
    section.contents .estimate .result .sm table {
      border-bottom: 1px solid #707070; }
      section.contents .estimate .result .sm table:not(:last-of-type) {
        margin-bottom: 20px; }
      section.contents .estimate .result .sm table .cell01 {
        background-color: rgba(237, 24, 73, 0.28);
        font-weight: bold;
        color: #ffffff;
        border-bottom: 1px solid #707070; }
      section.contents .estimate .result .sm table th, section.contents .estimate .result .sm table td {
        padding: 10px 5px;
        font-size: 1.4rem;
        border-top: none;
        border-bottom: none; }
      section.contents .estimate .result .sm table thead th {
        border-top: 1px solid #707070; }
      section.contents .estimate .result .sm table tbody tr {
        border-bottom: 1px dashed #707070; }
        section.contents .estimate .result .sm table tbody tr:first-of-type {
          border-top: 1px solid #707070; }
    section.contents .estimate .result .sm table.summary td, section.contents .estimate .result .sm table.summary th {
      width: calc( 100% / 4);
      font-weight: bold;
      text-align: center; }
    section.contents .estimate .result .sm table.summary td {
      background-color: rgba(237, 24, 73, 0.28); }
    section.contents .estimate .result table {
      width: 100%;
      border-collapse: collapse;
      font-size: 1.6rem;
      margin-bottom: 50px; }
      section.contents .estimate .result table th, section.contents .estimate .result table td {
        padding: 13px 16px; }
      section.contents .estimate .result table thead th {
        text-align: center;
        font-weight: bold;
        border: 1px solid #707070;
        /*width: 417px;*/ }
        section.contents .estimate .result table thead th.w175 {
          width: 175px !important; }
      section.contents .estimate .result table tbody th {
        border: 1px solid #707070;
        border-bottom: 1px dashed #707070;
        border-top: 1px dashed #707070;
        width: 151px;
        text-align: left; }
        section.contents .estimate .result table tbody th.name {
          width: 266px;
          text-align: center;
          font-weight: bold; }
      section.contents .estimate .result table tbody td {
        border: 1px solid #707070;
        border-bottom: 1px dashed #707070;
        border-top: 1px dashed #707070;
        text-align: center;
        border-bottom: 1px dashed #707070; }
      section.contents .estimate .result table tbody tr.reference th {
        text-align: center;
        font-weight: bold;
        padding: 24px 5px;
        border-bottom: 1px solid #707070;
        font-weight: bold; }
      section.contents .estimate .result table tbody tr.reference th.value {
        background-color: rgba(237, 24, 73, 0.28);
        font-weight: bold;
        border-bottom: 1px solid #707070; }
    section.contents.trans {
      margin: 0 auto;
      padding: 0 40px;
      max-width: 1180px; }
      @media screen and (max-width: 767px) {
        section.contents.trans {
          padding: 0 12px;
          margin: 0 auto 0; } }
      section.contents.trans .inner {
        background-color: transparent;
        padding-top: 0;
        padding-bottom: 0; }
        @media screen and (max-width: 767px) {
          section.contents.trans .inner {
            padding: 0 12px; } }
    section.contents.trans2 {
      margin: 0 auto 30px; }
      @media screen and (max-width: 767px) {
        section.contents.trans2 {
          margin: 0 auto 20px; } }
    section.contents.flow h3 {
      font-size: 2.2rem;
      line-height: 2.8rem;
      margin: 0;
      padding-left: 0;
      text-align: center; }
      section.contents.flow h3:before {
        content: "";
        background: none;
        width: auto;
        height: auto;
        position: initial;
        top: auto;
        left: auto; }
      section.contents.flow h3::after {
        content: "";
        background: #ED1849;
        width: 91px;
        height: 3px;
        margin: 19px auto 19px;
        display: block; }
    section.contents.flow p {
      text-align: center;
      font-size: 1.4rem;
      line-height: 2.8rem; }
    section.contents.flow figure {
      width: 640px;
      max-width: 100%;
      margin: 0 auto 42px; }
    section.contents.flow .arrow {
      width: 0;
      height: 0;
      border-style: solid;
      border-width: 25px 33px 0 33px;
      border-color: #ED1849 transparent transparent transparent;
      margin: 0 auto 30px; }
    section.contents.forms {
      position: relative;
      padding: 0 40px 0;
      margin-top: 135px; }
      @media screen and (max-width: 767px) {
        section.contents.forms {
          padding: 0 12px;
          margin-top: 95px; } }
      section.contents.forms .inner {
        padding-top: 80px; }
      section.contents.forms h2 {
        background-color: #ED1849;
        border-radius: 38px;
        color: #ffffff;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translate(-50%, -50%);
        padding: 19px 0;
        width: 230px;
        font-size: 2.6rem;
        line-height: 1.4; }
      section.contents.forms .columns {
        display: flex;
        display: -ms-flex;
        display: -webkit-flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        align-items: flex-start;
        -webkit-box-align: start;
        -ms-flex-align: start; }
        @media screen and (max-width: 767px) {
          section.contents.forms .columns {
            flex-direction: column; } }
      section.contents.forms .columns_txt {
        width: 45.7%; }
        @media screen and (max-width: 767px) {
          section.contents.forms .columns_txt {
            width: 100%;
            margin-bottom: 40px; } }
      section.contents.forms .columns_img {
        width: 52%;
        position: relative; }
        @media screen and (max-width: 767px) {
          section.contents.forms .columns_img {
            width: 100%; } }
      section.contents.forms h4 {
        margin-bottom: 20px; }
      section.contents.forms .swiper-slide {
        text-align: center; }
        section.contents.forms .swiper-slide figure {
          margin-bottom: 0; }
          section.contents.forms .swiper-slide figure img {
            border: solid 1px #707070; }
            @media screen and (max-width: 767px) {
              section.contents.forms .swiper-slide figure img {
                /*width: 100%;*/ } }
        section.contents.forms .swiper-slide p {
          font-size: 1.4rem;
          margin-top: 18px;
          line-height: 2.4rem; }
      @media screen and (max-width: 767px) {
        section.contents.forms .swiper-container {
          padding-bottom: 20px; } }
      section.contents.forms div[class^="swiper-button-next"], section.contents.forms div[class^="swiper-button-prev"] {
        position: absolute;
        top: 50%;
        width: 27px;
        height: 44px;
        margin-top: -22px;
        z-index: 10;
        cursor: pointer;
        background-size: 27px 44px;
        background-position: center;
        background-repeat: no-repeat; }
      section.contents.forms div[class^="swiper-button-next"], section.contents.forms .swiper-container-rtl div[class^="swiper-button-prev"] {
        right: 10px;
        left: auto; }
      section.contents.forms div[class^="swiper-button-next"], section.contents.forms div[class^="swiper-button-prev"] {
        width: 48px;
        height: 48px;
        background-color: #081724;
        border-radius: 50%;
        outline: none; }
        @media screen and (max-width: 767px) {
          section.contents.forms div[class^="swiper-button-next"], section.contents.forms div[class^="swiper-button-prev"] {
            /*display: none;*/ } }
      section.contents.forms div[class^="swiper-button-prev"] {
        background-image: url("../images/button_prev.png");
        background-position: center center;
        background-size: auto;
        transform: translateX(-30%); }
        @media screen and (max-width: 767px) {
          section.contents.forms div[class^="swiper-button-prev"] {
            /*display: none;*/ } }
      section.contents.forms div[class^="swiper-button-next"] {
        background-image: url("../images/button_next.png");
        background-position: center center;
        background-size: auto;
        transform: translateX(55%); }
        @media screen and (max-width: 767px) {
          section.contents.forms div[class^="swiper-button-next"] {
            /*display: none;*/ } }
    section.contents.partner {
      margin-bottom: 100px; }
      @media screen and (max-width: 767px) {
        section.contents.partner {
          margin-bottom: 60px; } }
      section.contents.partner h3 {
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        text-align: center;
        margin-bottom: 30px; }
        section.contents.partner h3::before {
          display: none; }
        section.contents.partner h3::after {
          content: "";
          display: block;
          margin: 11px auto 0;
          width: 91px;
          height: 8px;
          background-color: #ED1849; }
      section.contents.partner .partner-box {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between;
        max-width: 980px;
        margin: 40px auto;
        flex-wrap: wrap; }
        section.contents.partner .partner-box::after {
          content: "";
          width: calc((100% - 50px) / 3);
          display: block; }
        section.contents.partner .partner-box .item {
          box-sizing: border-box;
          margin-bottom: 22px;
          width: calc((100% - 50px) / 3);
          background-color: #F8F8F8;
          border: 1px solid #D4D4D4;
          box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
          border-radius: 4px; }
          @media screen and (max-width: 767px) {
            section.contents.partner .partner-box .item {
              width: 100%; } }
          section.contents.partner .partner-box .item .name {
            text-align: center;
            padding: 15.5px 30px; }
            section.contents.partner .partner-box .item .name a {
              font-size: 14px;
              line-height: 20px;
              font-weight: bold;
              text-decoration: underline;
              color: #000;
              transition: 0.3s; }
              section.contents.partner .partner-box .item .name a:hover {
                opacity: 0.7; }
          section.contents.partner .partner-box .item .logoArea {
            background-color: #fff;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            justify-content: center;
            align-items: center;
            padding: 15px 10px;
            box-sizing: border-box;
            min-height: 180px; }
            section.contents.partner .partner-box .item .logoArea .logo {
              width: 250px;
              max-width: 100%; }
              section.contents.partner .partner-box .item .logoArea .logo.logo-s {
                width: 150px; }
              section.contents.partner .partner-box .item .logoArea .logo img {
                vertical-align: bottom;
                width: 100%; }
          section.contents.partner .partner-box .item .txtArea {
            padding: 16px 30px; }
            section.contents.partner .partner-box .item .txtArea .txt {
              font-size: 12px;
              line-height: 20px;
              margin-bottom: 1px;
              min-height: 97px; }
            section.contents.partner .partner-box .item .txtArea .link {
              text-align: center;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              justify-content: center;
              flex-direction: column;
              align-items: center; }
              section.contents.partner .partner-box .item .txtArea .link a {
                box-sizing: border-box;
                display: inline-block;
                width: 160px;
                font-size: 12px;
                line-height: 24px;
                border-radius: 2px;
                box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
                padding: 0 26px 0 12px;
                background-color: #fff;
                font-weight: bold;
                position: relative;
                transition: 0.3s;
                color: #000; }
                section.contents.partner .partner-box .item .txtArea .link a:not(:last-of-type) {
                  margin-bottom: 8px; }
                section.contents.partner .partner-box .item .txtArea .link a:hover {
                  background-color: #FC6497;
                  color: #fff;
                  opacity: 1;
                  text-decoration: none; }
                  section.contents.partner .partner-box .item .txtArea .link a:hover::before {
                    background-color: #fff; }
                  section.contents.partner .partner-box .item .txtArea .link a:hover::after {
                    border-color: transparent transparent transparent #FC6497; }
                section.contents.partner .partner-box .item .txtArea .link a::before {
                  content: "";
                  position: absolute;
                  display: block;
                  width: 11px;
                  height: 11px;
                  background-color: #FC6497;
                  border-radius: 50%;
                  top: 50%;
                  right: 9px;
                  transform: translateY(-50%);
                  transition: 0.3s; }
                section.contents.partner .partner-box .item .txtArea .link a::after {
                  content: "";
                  display: block;
                  position: absolute;
                  width: 0;
                  height: 0;
                  border-style: solid;
                  border-width: 2.5px 0 2.5px 4.3px;
                  border-color: transparent transparent transparent #ffffff;
                  top: 50%;
                  right: 12px;
                  transform: translateY(-50%);
                  transition: 0.3s; }
      section.contents.partner .btn {
        margin-top: 70px; }
    section.contents .implementation-partner {
      max-width: 848px;
      margin: 30px auto;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      section.contents .implementation-partner::after {
        content: "";
        display: block;
        width: calc((100% - 44px) / 3); }
      section.contents .implementation-partner .item {
        box-sizing: border-box;
        margin-bottom: 22px;
        width: calc((100% - 44px) / 3);
        background-color: #F8F8F8;
        border: 1px solid #D4D4D4;
        box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
        border-radius: 4px; }
        @media screen and (max-width: 767px) {
          section.contents .implementation-partner .item {
            width: 100%; } }
        section.contents .implementation-partner .item .companyName {
          text-align: center;
          padding: 15.5px 30px; }
          section.contents .implementation-partner .item .companyName a {
            font-size: 14px;
            line-height: 20px;
            font-weight: bold;
            text-decoration: underline;
            color: #000;
            transition: 0.3s; }
            section.contents .implementation-partner .item .companyName a:hover {
              opacity: 0.7; }
        section.contents .implementation-partner .item .logoArea {
          background-color: #fff;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          justify-content: center;
          align-items: center;
          padding: 15px 10px;
          box-sizing: border-box; }
          section.contents .implementation-partner .item .logoArea .logo {
            width: 250px;
            max-width: 100%;
            transition: 0.3s; }
            section.contents .implementation-partner .item .logoArea .logo:hover {
              opacity: 0.7; }
            section.contents .implementation-partner .item .logoArea .logo img {
              vertical-align: bottom;
              width: 100%; }
        section.contents .implementation-partner .item .txtArea {
          padding: 16px 30px; }
          section.contents .implementation-partner .item .txtArea .txt {
            font-size: 12px;
            line-height: 20px;
            margin-bottom: 1px;
            min-height: 97px; }
          section.contents .implementation-partner .item .txtArea .link {
            text-align: center;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            justify-content: center;
            flex-direction: column;
            align-items: center; }
            section.contents .implementation-partner .item .txtArea .link a {
              box-sizing: border-box;
              display: inline-block;
              width: 160px;
              font-size: 12px;
              line-height: 24px;
              border-radius: 2px;
              box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
              padding: 0 26px 0 12px;
              background-color: #fff;
              font-weight: bold;
              position: relative;
              transition: 0.3s;
              color: #000; }
              section.contents .implementation-partner .item .txtArea .link a:not(:last-of-type) {
                margin-bottom: 8px; }
              section.contents .implementation-partner .item .txtArea .link a:hover {
                background-color: #FC6497;
                color: #fff;
                opacity: 1;
                text-decoration: none; }
                section.contents .implementation-partner .item .txtArea .link a:hover::before {
                  background-color: #fff; }
                section.contents .implementation-partner .item .txtArea .link a:hover::after {
                  border-color: transparent transparent transparent #FC6497; }
              section.contents .implementation-partner .item .txtArea .link a::before {
                content: "";
                position: absolute;
                display: block;
                width: 11px;
                height: 11px;
                background-color: #FC6497;
                border-radius: 50%;
                top: 50%;
                right: 9px;
                transform: translateY(-50%);
                transition: 0.3s; }
              section.contents .implementation-partner .item .txtArea .link a::after {
                content: "";
                display: block;
                position: absolute;
                width: 0;
                height: 0;
                border-style: solid;
                border-width: 2.5px 0 2.5px 4.3px;
                border-color: transparent transparent transparent #ffffff;
                top: 50%;
                right: 12px;
                transform: translateY(-50%);
                transition: 0.3s; }
    section.contents .inner3 {
      padding: 26px 20px 26px;
      background-color: #F2F5F9;
      position: relative;
      border-radius: 5px;
      margin-bottom: 50px; }
@inclu .de sm {
  section.contents .inner3 {
    padding: 26px 10px 40px; } }
      section.contents .inner3:last-of-type {
        margin-bottom: 0; }
      section.contents .inner3 h4 {
        position: absolute;
        top: 0;
        left: 12px;
        transform: translateY(-50%); }
        section.contents .inner3 h4 span {
          font-size: 1.4rem;
          line-height: 3.9rem;
          padding: 0 20px;
          background-color: #F3C8B7;
          text-align: center;
          border-radius: 5px;
          display: inline-block;
          color: #070707; }
          @media screen and (max-width: 767px) {
            section.contents .inner3 h4 span {
              padding: 0 10px; } }
      section.contents .inner3 ul {
        padding-left: 0;
        margin-top: 15px;
        margin-bottom: 0; }
        section.contents .inner3 ul li {
          font-size: 1.8rem;
          line-height: 3.6rem; }
        section.contents .inner3 ul.font16 li {
          font-size: 1.6rem;
          line-height: 2.8rem; }
      section.contents .inner3 .column {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between; }
        @media screen and (max-width: 767px) {
          section.contents .inner3 .column {
            flex-direction: column-reverse; } }
        section.contents .inner3 .column .txt-area {
          width: 50%; }
          @media screen and (max-width: 767px) {
            section.contents .inner3 .column .txt-area {
              width: 100%; } }
          section.contents .inner3 .column .txt-area .caution li {
            list-style: none;
            font-size: 1.1rem;
            line-height: 1.5rem;
            margin-left: 0;
            text-indent: -1.6rem;
            padding-left: 1.3rem;
            margin-bottom: 15px; }
            section.contents .inner3 .column .txt-area .caution li:last-of-type {
              margin-bottom: 0; }
            section.contents .inner3 .column .txt-area .caution li::before {
              content: "※";
              margin-right: 0.5em; }
        section.contents .inner3 .column figure {
          width: 47.8%; }
          section.contents .inner3 .column figure img {
            width: 100%; }
          @media screen and (max-width: 767px) {
            section.contents .inner3 .column figure {
              width: 100%; } }
      section.contents .inner3 ul.flow {
        padding-left: 0; }
        section.contents .inner3 ul.flow li {
          list-style: none;
          padding-left: 86px;
          position: relative;
          margin-left: 0;
          margin-bottom: 20px; }
          section.contents .inner3 ul.flow li:not(:first-of-type) {
            margin-bottom: 44px; }
            @media screen and (max-width: 767px) {
              section.contents .inner3 ul.flow li:not(:first-of-type) {
                margin-bottom: 20px; } }
          section.contents .inner3 ul.flow li:last-of-type {
            margin-bottom: 0; }
          section.contents .inner3 ul.flow li span {
            position: absolute;
            top: 0;
            left: 57px;
            font-size: 2rem; }
        section.contents .inner3 ul.flow .preparation::before, section.contents .inner3 ul.flow .develop::before, section.contents .inner3 ul.flow .running::before {
          content: "";
          position: absolute;
          background-color: #ed184a;
          top: 0;
          left: 0;
          width: 40px;
          height: 30px;
          background-size: contain;
          color: #ffffff;
          font-size: 1.3rem;
          line-height: 3rem;
          text-align: center;
          font-weight: bold; }
        section.contents .inner3 ul.flow .preparation::after, section.contents .inner3 ul.flow .develop::after, section.contents .inner3 ul.flow .running::after {
          content: "";
          position: absolute;
          background-repeat: no-repeat;
          top: 30px;
          left: 0;
          width: 0;
          height: 0;
          border-style: solid;
          border-width: 14px 20px 0 20px;
          border-color: #ed184a transparent transparent transparent; }
        section.contents .inner3 ul.flow .preparation::before {
          content: "準備"; }
        section.contents .inner3 ul.flow .develop::before {
          content: "開発"; }
        section.contents .inner3 ul.flow .running::before {
          content: "運用"; }
    section.contents .column2 {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between;
      max-width: 940px;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        section.contents .column2 {
          flex-direction: column; } }
      section.contents .column2 .inner {
        width: calc((100% - 23px)/2);
        padding: 0; }
        @media screen and (max-width: 767px) {
          section.contents .column2 .inner {
            width: 100%; }
            section.contents .column2 .inner:not(:last-of-type) {
              margin-bottom: 40px; } }
      section.contents .column2 h2 {
        font-size: 2.6rem;
        line-height: 5rem;
        margin-bottom: 0; }
        section.contents .column2 h2.blue-line::after {
          background-color: #3D88C0; }
        section.contents .column2 h2:after {
          content: "";
          width: 90px;
          height: 4px;
          background-color: #ED1849;
          display: block;
          margin: 0 auto 12px;
          display: block; }
      section.contents .column2 .subTitle {
        text-align: center;
        font-size: 1.2rem;
        margin-bottom: 15px; }
      section.contents .column2 .img {
        margin-bottom: 17px; }
        section.contents .column2 .img img {
          width: 100%; }
      section.contents .column2 .txt {
        font-size: 1.8rem;
        line-height: 2.8rem; }
      section.contents .column2 .txt-area {
        width: subTitle 50%; }
        @media screen and (max-width: 767px) {
          section.contents .column2 .txt-area {
            width: 100%; } }
        section.contents .column2 .txt-area .caution li {
          list-style: none;
          font-size: 1.1rem;
          line-height: 1.5rem;
          margin-left: 0;
          text-indent: -1.6rem;
          padding-left: 1.3rem;
          margin-bottom: 15px; }
          section.contents .column2 .txt-area .caution li:last-of-type {
            margin-bottom: 0; }
          section.contents .column2 .txt-area .caution li::before {
            content: "※";
            margin-right: 0.5em; }
      section.contents .column2 figure {
        width: 47.8%; }
        section.contents .column2 figure img {
          width: 100%; }
        @media screen and (max-width: 767px) {
          section.contents .column2 figure {
            width: 100%; } }
  section.feature .inner {
    max-width: 968px;
    padding: 0 40px;
    margin: 0 auto 100px;
    background-color: transparent; }
    @media screen and (max-width: 767px) {
      section.feature .inner {
        padding: 0 12px;
        margin-bottom: 60px; } }
  section.feature h2 {
    font-size: 3rem;
    line-height: 4.5rem;
    margin-bottom: 40px;
    font-weight: bold;
    text-align: center; }
  section.feature h3 {
    font-size: 2rem;
    line-height: 3rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px; }
    section.feature h3::after {
      content: "";
      display: block;
      margin: 11px auto 0;
      width: 91px;
      height: 8px;
      background-color: #ED1849; }
  section.feature .card {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-bottom: 25px; }
    @media screen and (max-width: 767px) {
      section.feature .card {
        flex-direction: column;
        margin-bottom: 30px; } }
    section.feature .card.card-3 .card-item {
      width: calc((100% - 60px) / 3); }
      @media screen and (max-width: 767px) {
        section.feature .card.card-3 .card-item {
          width: 100%; } }
  section.feature .card-item {
    background-color: #fff;
    text-align: center;
    padding: 40px 17px 20px;
    margin: 0 10px 25px;
    min-height: 253px; }
    @media screen and (max-width: 767px) {
      section.feature .card-item {
        margin: 0 0 20px; } }
    section.feature .card-item img {
      margin-bottom: 15px; }
    section.feature .card-item h4 {
      font-size: 2.2rem;
      line-height: 3.1rem;
      font-weight: bold;
      margin-bottom: 11px; }
    section.feature .card-item p {
      text-align: left;
      font-size: 1.3rem;
      line-height: 2.1rem; }
  section.columns {
    margin: 0px auto 100px;
    max-width: 1240px; }
    @media screen and (max-width: 767px) {
      section.columns {
        margin: 0px auto 40px; } }
    section.columns.max1100 {
      max-width: 1100px !important; }
    section.columns.two {
      margin-bottom: 70px; }
      @media screen and (max-width: 767px) {
        section.columns.two {
          margin-bottom: 40px; } }
      section.columns.two .inner {
        margin-top: 30px;
        padding: 0 40px;
        background: transparent;
        display: flex;
        display: -ms-flex;
        display: -webkit-flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        flex-wrap: wrap; }
        @media screen and (max-width: 767px) {
          section.columns.two .inner {
            flex-direction: column;
            margin: 30px auto 0;
            padding: 0 12px; } }
        section.columns.two .inner > div {
          background: #fff;
          width: calc((100% - 40px) / 2);
          padding: 22px 20px 30px;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          flex-direction: column;
          margin-bottom: 30px;
          margin-bottom: 30px; }
          @media screen and (max-width: 767px) {
            section.columns.two .inner > div {
              width: 100%;
              margin-bottom: 20px;
              padding: 30px 12px; } }
          section.columns.two .inner > div h3 {
            font-size: 2.8rem;
            line-height: 2.8rem;
            font-weight: bold;
            margin-bottom: 18px;
            text-align: center; }
            section.columns.two .inner > div h3::after {
              content: "";
              display: block;
              width: 91px;
              height: 4px;
              background-color: #ED1849;
              margin: 18px auto 0; }
          section.columns.two .inner > div img {
            margin-bottom: 18px; }
          section.columns.two .inner > div h4 {
            font-size: 1.6rem;
            line-height: 2.8rem;
            font-weight: bold;
            margin: 0px 0px 10px;
            color: #3B4043; }
          section.columns.two .inner > div p {
            font-size: 1.6rem;
            line-height: 2.8rem;
            margin: 0px 0px 30px; }
          section.columns.two .inner > div ul {
            margin-bottom: 25px; }
            section.columns.two .inner > div ul li {
              font-size: 1.6rem;
              line-height: 2.8rem;
              list-style: outside disc;
              margin-left: 16px; }
              section.columns.two .inner > div ul li a {
                color: #ED1849;
                text-decoration: none; }
                section.columns.two .inner > div ul li a:hover {
                  text-decoration: underline; }
    section.columns.three .inner {
      padding: 0 40px;
      background: transparent;
      display: flex;
      display: -ms-flex;
      display: -webkit-flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      @media screen and (max-width: 767px) {
        section.columns.three .inner {
          flex-direction: column;
          margin: 0px auto 60px;
          padding: 0 12px; } }
      section.columns.three .inner > div {
        background: #fff;
        width: calc((100% - 68px) / 3);
        padding: 55px 22px 30px;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column;
        position: relative; }
        @media screen and (max-width: 767px) {
          section.columns.three .inner > div {
            width: 100%;
            padding: 55px 12px 30px;
            margin-bottom: 50px; }
            section.columns.three .inner > div:last-of-type {
              margin-bottom: 0; } }
        section.columns.three .inner > div .h3_02 {
          position: absolute;
          top: 0;
          left: 50%;
          transform: translate(-50%, -50%);
          background-color: #ED1849;
          border-radius: 38px;
          color: #ffffff;
          font-weight: bold;
          width: 241px;
          margin-bottom: 0;
          text-align: center;
          font-size: 2rem;
          line-height: 5.6rem; }
        section.columns.three .inner > div figure {
          margin-bottom: 15px; }
          section.columns.three .inner > div figure img {
            width: 100%; }
        section.columns.three .inner > div h3 {
          font-size: 2.8rem;
          line-height: 4rem;
          font-weight: bold;
          margin: 0px 0px 30px;
          color: #3B4043; }
        section.columns.three .inner > div h4 {
          font-size: 1.6rem;
          line-height: 2.8rem;
          font-weight: bold;
          margin: 0px 0px 10px;
          color: #3B4043; }
        section.columns.three .inner > div p {
          font-size: 1.6rem;
          line-height: 2.8rem;
          margin: 0px 0px 30px; }
        section.columns.three .inner > div ul li {
          font-size: 1.6rem;
          line-height: 2.8rem;
          list-style: outside disc;
          margin-left: 16px; }
          section.columns.three .inner > div ul li a {
            color: #ED1849;
            text-decoration: none; }
            section.columns.three .inner > div ul li a:hover {
              text-decoration: underline; }
    section.columns.five .inner {
      padding: 0 40px;
      background: transparent;
      display: flex;
      display: -ms-flex;
      display: -webkit-flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      @media screen and (max-width: 767px) {
        section.columns.five .inner {
          flex-direction: column;
          margin: 0px auto 40px;
          padding: 0 12px; } }
      section.columns.five .inner > div {
        background: #fff;
        width: calc((100% - 60px) / 5);
        padding: 30px 10px 35px; }
        @media screen and (max-width: 767px) {
          section.columns.five .inner > div {
            width: 100%;
            margin-bottom: 20px;
            padding: 30px 12px; } }
        section.columns.five .inner > div h3 {
          font-size: 2.8rem;
          line-height: 4rem;
          font-weight: bold;
          margin: 0px 0px 30px;
          color: #3B4043; }
        section.columns.five .inner > div h4 {
          font-size: 1.6rem;
          line-height: 2.8rem;
          font-weight: bold;
          margin: 0px 0px 10px;
          color: #3B4043; }
        section.columns.five .inner > div p {
          font-size: 1.6rem;
          line-height: 2.8rem;
          margin: 0px 0px 30px; }
        section.columns.five .inner > div ul li {
          font-size: 1.6rem;
          line-height: 2.8rem;
          list-style: outside disc;
          margin-left: 16px; }
    section.columns.function h2 {
      font-size: 2.2rem !important;
      line-height: 5rem !important;
      font-weight: bold !important;
      margin-bottom: 40px !important;
      text-align: center; }
    section.columns.function h3 {
      text-align: center !important;
      font-size: 2.2rem !important;
      line-height: 3.1rem !important;
      font-weight: bold !important;
      margin-bottom: 22px !important; }
    section.columns.function li {
      font-size: 1.1rem !important;
      line-height: 2.5rem !important; }
  section.related {
    margin-bottom: 100px; }
    @media screen and (max-width: 767px) {
      section.related {
        margin-bottom: 40px; } }
    section.related .inner {
      max-width: 1100px;
      margin: 0 auto;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: center;
      background-color: transparent;
      padding-top: 0;
      padding-bottom: 0; }
      @media screen and (max-width: 767px) {
        section.related .inner {
          flex-direction: column; } }
      section.related .inner > div {
        width: 364px;
        margin-left: 40px;
        margin-right: 40px;
        background-color: #ffffff;
        vertical-align: bottom; }
        @media screen and (max-width: 767px) {
          section.related .inner > div {
            width: 100%;
            margin-bottom: 20px;
            margin-left: 0;
            margin-right: 0; } }
        section.related .inner > div figure {
          width: 100%; }
          section.related .inner > div figure img {
            width: 100%; }
        section.related .inner > div .box {
          padding: 14px 18px 18px; }
          section.related .inner > div .box h3 {
            font-size: 1.6rem;
            line-height: 2.8rem;
            margin-bottom: 30px;
            font-weight: bold; }
          section.related .inner > div .box p {
            font-size: 1.3rem;
            line-height: 2.4rem;
            margin-bottom: 20px; }
        section.related .inner > div .btn02 {
          margin: 0 auto; }
    section.related h2 {
      font-size: 2.8rem;
      line-height: 5rem;
      margin-bottom: 40px;
      text-align: center;
      font-weight: bold; }
  section.plan {
    background-color: #fff;
    margin-bottom: 40px; }
    @media screen and (max-width: 767px) {
      section.plan {
        margin-bottom: 40px; } }
    section.plan .inner {
      max-width: 1280px;
      padding: 40px;
      margin: 0 auto; }
      @media screen and (max-width: 767px) {
        section.plan .inner {
          padding: 40px 12px 40px; } }
    section.plan #planselect {
      width: 100%;
      height: 46px;
      border: 1px solid #707070;
      margin-bottom: 20px;
      padding: 10px 20px;
      font-size: 1.8rem;
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
      background: url("../images/select.png") right 37px top 50% no-repeat #F6F6F6;
      outline: none; }
    section.plan select::-ms-expand {
      display: none; }
    section.plan .plantableWrapper {
      margin-bottom: 30px; }
    section.plan .parent {
      width: 100%; }
    section.plan .parentThead {
      cursor: pointer; }
      section.plan .parentThead > tr {
        border-bottom: solid 1px #707070; }
      section.plan .parentThead td {
        text-align: right;
        padding: 35px 20px; }
        section.plan .parentThead td .tab {
          font-size: 1.1rem;
          font-weight: bold;
          border: solid 1px #7B7B7B;
          padding: 10px 0;
          width: 90px;
          display: inline-block;
          border-radius: 5px;
          cursor: pointer;
          text-align: center; }
          section.plan .parentThead td .tab.opened::before {
            content: "閉じる"; }
          section.plan .parentThead td .tab.closed {
            border: solid 1px #ED1849;
            color: #ED1849; }
            section.plan .parentThead td .tab.closed::before {
              content: "詳細"; }
    section.plan .txtRed {
      color: #ED1849; }
    section.plan .parentTbody > tr {
      border-bottom: 1px dashed #707070; }
      section.plan .parentTbody > tr:nth-of-type(even) {
        background-color: #F6F6F6; }
      section.plan .parentTbody > tr:last-of-type {
        border-bottom: 1px solid #707070; }
      section.plan .parentTbody > tr > th {
        font-size: 1.4rem;
        padding: 30px 18px;
        text-align: left;
        position: relative;
        vertical-align: middle; }
        @media screen and (max-width: 1065px) {
          section.plan .parentTbody > tr > th {
            font-size: 1.1rem;
            padding: 30px 10px;
            width: 43%; } }
        section.plan .parentTbody > tr > th span {
          display: block;
          font-size: 1.1rem;
          position: absolute;
          bottom: 10px; }
          @media screen and (max-width: 1065px) {
            section.plan .parentTbody > tr > th span {
              position: initial;
              font-size: 0.9rem;
              line-height: 1.2rem;
              bottom: initial;
              margin-top: 5px; } }
      section.plan .parentTbody > tr > td {
        width: 240px;
        text-align: center;
        font-size: 1.6rem;
        vertical-align: middle; }
        section.plan .parentTbody > tr > td .kome {
          position: relative;
          display: inline-block; }
          section.plan .parentTbody > tr > td .kome::after {
            content: "※";
            display: inline-block;
            margin-left: 3px;
            position: absolute;
            bottom: 0;
            right: -15px; }
        section.plan .parentTbody > tr > td .txtRed {
          color: #ED1849;
          font-size: 1rem;
          font-weight: bold; }
        @media screen and (max-width: 1065px) {
          section.plan .parentTbody > tr > td {
            width: 57%;
            padding: 16px 5px; }
            section.plan .parentTbody > tr > td span {
              font-size: 0.9rem;
              line-height: 1.2rem;
              display: block;
              margin-top: 5px; } }
    section.plan .child {
      margin-top: 10px;
      width: 100%; }
      section.plan .child tr {
        border: none; }
      section.plan .child td {
        width: 240px; }
        section.plan .child td .kome {
          position: relative; }
          section.plan .child td .kome::after {
            content: "※";
            display: inline-block;
            font-size: 1.1rem;
            margin-left: 3px;
            position: absolute;
            bottom: 0;
            right: -15px; }
        section.plan .child td span {
          font-size: 1.1rem;
          margin-top: 3px; }
    section.plan .desc {
      padding-top: 3px;
      padding-bottom: 10px;
      font-size: 1.1rem; }
    section.plan .function {
      font-size: 1.6rem;
      font-weight: bold;
      text-align: left;
      width: 237px;
      padding: 40px 18px;
      position: relative;
      padding-left: 40px;
      position: relative;
      white-space: nowrap; }
      section.plan .function span {
        position: absolute;
        bottom: 10px;
        left: 10px;
        font-size: 1.1rem;
        font-weight: normal; }
        @media screen and (max-width: 1065px) {
          section.plan .function span {
            bottom: 5px !important; } }
      @media screen and (max-width: 1065px) {
        section.plan .function {
          cursor: pointer;
          padding: 23px 0 23px 40px; } }
      section.plan .function.opened::before {
        background-color: #000000; }
      section.plan .function.opened::after {
        display: none; }
      section.plan .function.closed::after {
        position: absolute;
        content: "";
        display: inline-block;
        width: 20px;
        height: 2px;
        background-color: #ED1849;
        vertical-align: middle;
        transform: rotate(90deg) translateX(-3px);
        top: 50%;
        left: 10px; }
      section.plan .function::before {
        position: absolute;
        content: "";
        display: inline-block;
        width: 20px;
        height: 2px;
        background-color: #ED1849;
        vertical-align: middle;
        transform: translateY(-3px);
        top: 50%;
        left: 10px; }
    section.plan .planboxWrapper {
      display: none;
      margin-bottom: 30px; }
      section.plan .planboxWrapper.active {
        display: block; }
      section.plan .planboxWrapper .planbox {
        border: 1px solid #707070;
        text-align: center;
        padding: 16px 10px 14px; }
        section.plan .planboxWrapper .planbox .prices {
          margin-top: auto; }
        section.plan .planboxWrapper .planbox .price {
          font-family: "Arial";
          font-weight: bold;
          font-size: 3.6rem;
          line-height: 1;
          margin-bottom: 16px; }
          section.plan .planboxWrapper .planbox .price::before {
            content: "¥";
            font-size: 2.2rem;
            margin-right: 9px; }
        section.plan .planboxWrapper .planbox .initial {
          font-size: 1.1rem;
          line-height: 2.4rem; }
        section.plan .planboxWrapper .planbox h3 {
          font-size: 1.8rem;
          line-height: 2.8rem;
          font-weight: normal;
          margin-bottom: 23px; }
        section.plan .planboxWrapper .planbox .reccomend {
          background-color: #ED1849;
          color: #fff;
          font-size: 1.1rem;
          width: 152px;
          padding: 10px 0;
          border-radius: 38px;
          margin: 0 auto; }
          @media screen and (max-width: 1065px) {
            section.plan .planboxWrapper .planbox .reccomend {
              margin-bottom: 24px; } }
    section.plan h2 {
      font-size: 3rem;
      line-height: 5rem;
      font-weight: bold;
      margin-bottom: 40px;
      text-align: center;
      color: #081724; }
    section.plan .planType {
      display: flex;
      display: -ms-flex;
      display: -webkit-flex;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: center; }
      section.plan .planType.planType-sticky {
        position: fixed;
        left: 0;
        width: 100%;
        padding: 0 40px;
        z-index: 1;
        opacity: 0;
        visibility: hidden;
        background-color: #ffffff; }
        section.plan .planType.planType-sticky .reccomend {
          display: none; }
        section.plan .planType.planType-sticky .initial:not(:first-of-type) {
          display: none; }
        section.plan .planType.planType-sticky .price {
          margin-bottom: 0; }
        section.plan .planType.planType-sticky > div {
          height: auto; }
          section.plan .planType.planType-sticky > div.reccomend-plan {
            background-color: rgba(237, 24, 73, 0.28); }
      section.plan .planType.planType-sticky-active {
        top: 94px;
        height: auto;
        opacity: 1;
        visibility: visible;
        transition: 0.3s; }
      section.plan .planType .blank {
        width: 240px;
        border: none;
        border-bottom: 1px solid #707070;
        flex-shrink: 0;
        background-color: #ffffff;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: flex-end;
        align-items: center;
        padding: 10px; }
        section.plan .planType .blank .desc {
          text-align: left;
          font-size: 1.4rem;
          line-height: 2.1rem; }
      section.plan .planType > div {
        background-color: #ffffff;
        flex-shrink: 1;
        width: 240px;
        height: 218px;
        border: 1px solid #707070;
        border-right: none;
        text-align: center;
        padding: 16px 10px 14px;
        display: flex;
        display: -ms-flex;
        display: -webkit-flex;
        flex-direction: column; }
        section.plan .planType > div:last-of-type {
          border-right: 1px solid #707070; }
        section.plan .planType > div .prices {
          margin-top: auto; }
        section.plan .planType > div .price {
          font-family: "Arial";
          font-weight: bold;
          font-size: 3.6rem;
          line-height: 1;
          margin-bottom: 16px;
          color: #3B4043; }
          section.plan .planType > div .price::before {
            content: "¥";
            font-size: 2.2rem;
            margin-right: 9px; }
        section.plan .planType > div .initial {
          font-size: 1.1rem;
          line-height: 2.4rem; }
        section.plan .planType > div h3 {
          font-size: 1.8rem;
          line-height: 2.8rem;
          font-weight: normal;
          margin-bottom: 23px; }
        section.plan .planType > div .reccomend {
          background-color: #ED1849;
          color: #fff;
          font-size: 1.1rem;
          width: 152px;
          padding: 10px 0;
          border-radius: 38px;
          margin: 0 auto; }
    section.plan .other {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: center; }
      @media screen and (max-width: 767px) {
        section.plan .other {
          flex-direction: column; } }
      section.plan .other > div {
        width: 400px;
        border: solid 1px #707070;
        padding: 13px 10px;
        margin: 0 60px;
        text-align: center; }
        @media screen and (max-width: 767px) {
          section.plan .other > div {
            width: 100%;
            margin: 0 0 20px; } }
        section.plan .other > div h3 {
          font-size: 2rem;
          line-height: 2.4rem;
          font-weight: bold;
          margin-bottom: 24px; }
        section.plan .other > div p {
          font-size: 1.4rem;
          line-height: 3.1rem;
          margin-bottom: 0; }
  section.option {
    max-width: 1100px;
    margin: 0 auto 100px; }
    section.option .inner {
      background-color: transparent;
      padding: 0 40px; }
      @media screen and (max-width: 767px) {
        section.option .inner {
          padding: 0 12px; } }
    @media screen and (max-width: 767px) {
      section.option {
        margin: 0 auto 60px; } }
    section.option h2 {
      font-size: 2.8rem;
      line-height: 5rem;
      font-weight: bold;
      margin-bottom: 40px;
      text-align: center;
      color: #081724; }
    section.option .columns {
      background: transparent;
      display: flex;
      display: -ms-flex;
      display: -webkit-flex;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      margin-bottom: 10px; }
      @media screen and (max-width: 767px) {
        section.option .columns {
          flex-direction: column;
          margin-bottom: 20px; } }
      section.option .columns > div {
        background: #fff;
        width: calc((100% - 40px) / 3);
        padding: 25px 20px;
        margin-bottom: 30px; }
        section.option .columns > div:first-of-type {
          margin-left: 0; }
        section.option .columns > div:last-of-type {
          margin-right: 0; }
        @media screen and (max-width: 767px) {
          section.option .columns > div {
            width: 100%;
            min-height: initial;
            margin-bottom: 20px;
            margin-left: 0;
            margin-right: 0; } }
        section.option .columns > div h3 {
          font-size: 2rem;
          line-height: 3rem;
          font-weight: bold;
          text-align: center;
          margin-bottom: 17px; }
          @media screen and (max-width: 767px) {
            section.option .columns > div h3 {
              margin-bottom: 21px;
              min-height: initial; } }
          section.option .columns > div h3 .corners {
            color: #E50039;
            background-color: #fff;
            border: 1px solid #E50039;
            border-radius: 20px;
            font-size: 14px;
            font-weight: normal;
            margin-left: 10px;
            padding: 5px 20px; }
        section.option .columns > div .price {
          font-size: 2rem;
          line-height: 3rem;
          font-weight: bold;
          text-align: center;
          margin-bottom: 36px; }
          @media screen and (max-width: 767px) {
            section.option .columns > div .price {
              margin-bottom: 32px;
              min-height: initial; } }
        section.option .columns > div p {
          font-size: 1.6rem;
          line-height: 2.6rem; }
        section.option .columns > div ul {
          padding-left: 15px; }
          section.option .columns > div ul li {
            font-size: 1.2rem;
            line-height: 2.1rem;
            list-style: disc; }
    section.option dl {
      width: 100%;
      padding: 0 40px; }
      @media screen and (max-width: 767px) {
        section.option dl {
          padding: 0 12px; } }
      section.option dl h3 {
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        margin-bottom: 17px; }
        @media screen and (max-width: 767px) {
          section.option dl h3 {
            padding-right: 60px; } }
        section.option dl h3 .corners {
          color: #E50039;
          background-color: #fff;
          border: 1px solid #E50039;
          border-radius: 20px;
          font-size: 14px;
          font-weight: normal;
          margin-left: 10px;
          padding: 5px 20px; }
      section.option dl dt {
        background-color: #ffffff;
        padding: 18px 20px;
        cursor: pointer;
        position: relative; }
        section.option dl dt .tab {
          position: absolute;
          top: 50%;
          right: 20px;
          font-size: 1.1rem;
          font-weight: bold;
          border: solid 1px #7B7B7B;
          padding: 8px 0;
          width: 52px;
          display: inline-block;
          border-radius: 5px;
          cursor: pointer;
          text-align: center;
          transform: translateY(-50%); }
          @media screen and (max-width: 767px) {
            section.option dl dt .tab {
              top: 18px;
              transform: none; } }
          section.option dl dt .tab.closed {
            color: #ED1849;
            border: solid 1px #ED1849; }
            section.option dl dt .tab.closed::before {
              content: "開く"; }
          section.option dl dt .tab.opened::before {
            content: "閉じる"; }
      section.option dl dd {
        background-color: #ffffff;
        padding: 7px 20px 18px; }
        section.option dl dd .dd-inner {
          background-color: #F6F6F6;
          padding: 16px; }
          section.option dl dd .dd-inner p {
            font-size: 2rem;
            line-height: 3rem;
            font-weight: bold; }
        section.option dl dd .table td, section.option dl dd .table th {
          font-size: 2rem;
          line-height: 3rem;
          font-weight: bold;
          text-align: left; }
          @media screen and (max-width: 767px) {
            section.option dl dd .table td, section.option dl dd .table th {
              display: block; } }
        section.option dl dd .table th {
          padding-right: 60px;
          padding-bottom: 10px; }
          @media screen and (max-width: 767px) {
            section.option dl dd .table th {
              padding-right: 0;
              text-indent: -1em;
              padding-left: 1em; } }
        @media screen and (max-width: 767px) {
          section.option dl dd .table td {
            padding-left: 1em;
            padding-bottom: 10px; } }
        @media screen and (max-width: 767px) {
          section.option dl dd .table.list th {
            text-indent: -1em;
            padding-left: 1em; } }
        @media screen and (max-width: 767px) {
          section.option dl dd .table.list td {
            padding-left: 1em;
            padding-bottom: 10px; } }
    section.option .inner2 {
      padding: 26px 20px 40px;
      background-color: #F2F5F9;
      position: relative;
      border-radius: 5px;
      margin-bottom: 50px; }
      section.option .inner2.-bgGray {
        background-color: #F6F6F6; }
      @media screen and (max-width: 767px) {
        section.option .inner2 {
          padding: 26px 10px 40px; } }
      section.option .inner2:last-of-type {
        margin-bottom: 0; }
      section.option .inner2 h4 {
        position: absolute;
        top: 0;
        left: 12px;
        transform: translateY(-50%); }
        section.option .inner2 h4 span {
          font-size: 1.4rem;
          line-height: 3.9rem;
          padding: 0 20px;
          background-color: #F3C8B7;
          text-align: center;
          border-radius: 5px;
          display: inline-block;
          color: #070707;
          font-weight: bold; }
          @media screen and (max-width: 767px) {
            section.option .inner2 h4 span {
              padding: 0 10px; } }
      section.option .inner2 ul {
        padding-left: 0;
        margin-top: 15px;
        margin-bottom: 0; }
        section.option .inner2 ul li {
          font-size: 1.8rem;
          line-height: 3.6rem; }
        section.option .inner2 ul.font16 li {
          font-size: 1.6rem;
          line-height: 2.8rem; }
      section.option .inner2 fon
      .column {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between; }
        @media screen and (max-width: 767px) {
          section.option .inner2 fon
          .column {
            flex-direction: column-reverse; } }
        section.option .inner2 fon
        .column .txt-area {
          width: 50%; }
          @media screen and (max-width: 767px) {
            section.option .inner2 fon
            .column .txt-area {
              width: 100%; } }
          section.option .inner2 fon
          .column .txt-area .caution li {
            list-style: none;
            font-size: 1.1rem;
            line-height: 1.5rem;
            margin-left: 0;
            text-indent: -1.6rem;
            padding-left: 1.3rem;
            margin-bottom: 15px; }
            section.option .inner2 fon
            .column .txt-area .caution li:last-of-type {
              margin-bottom: 0; }
            section.option .inner2 fon
            .column .txt-area .caution li::before {
              content: "※";
              margin-right: 0.5em; }
        section.option .inner2 fon
        .column figure {
          width: 47.8%; }
          section.option .inner2 fon
          .column figure img {
            width: 100%; }
          @media screen and (max-width: 767px) {
            section.option .inner2 fon
            .column figure {
              width: 100%; } }
      @media screen and (max-width: 767px) {
        section.option .inner2 .tableWrapper {
          overflow-x: scroll; }
          section.option .inner2 .tableWrapper + p {
            margin-top: 10px;
            font-size: 1.3rem; } }
      section.option .inner2 .price-table {
        border-collapse: collapse;
        margin-top: 32px;
        width: 100%; }
        @media screen and (max-width: 767px) {
          section.option .inner2 .price-table {
            width: 100%; } }
        section.option .inner2 .price-table tbody {
          width: 100%; }
        section.option .inner2 .price-table th, section.option .inner2 .price-table td {
          padding: 11px 11px 11px 0;
          border-top: 1px dashed #707070;
          border-bottom: 1px dashed #707070;
          vertical-align: middle;
          width: 20%;
          font-size: 1.4rem;
          line-height: 2.2rem;
          display: table-cell; }
          @media screen and (max-width: 767px) {
            section.option .inner2 .price-table th, section.option .inner2 .price-table td {
              padding: 11px 20px; } }
        section.option .inner2 .price-table td {
          padding-left: 35px;
          text-align: center; }
          section.option .inner2 .price-table td figure {
            height: 53px;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            justify-content: center;
            align-items: flex-end;
            margin-bottom: 5px; }
            section.option .inner2 .price-table td figure img {
              width: auto; }
          @media screen and (max-width: 767px) {
            section.option .inner2 .price-table td {
              padding-left: 20px;
              white-space: pre; } }
          section.option .inner2 .price-table td.vetical-top {
            vertical-align: top; }
        section.option .inner2 .price-table th {
          text-align: left; }
          @media screen and (max-width: 767px) {
            section.option .inner2 .price-table th {
              width: 50% !important;
              text-align: center;
              white-space: pre; } }
  section.faq {
    margin-bottom: 100px; }
    @media screen and (max-width: 767px) {
      section.faq {
        margin-bottom: 60px; } }
    section.faq .inner {
      max-width: 1020px;
      padding: 0 40px;
      margin: 0 auto;
      background-color: transparent; }
      @media screen and (max-width: 767px) {
        section.faq .inner {
          padding: 0 12px; } }
    section.faq dl dt {
      background-color: #ffffff;
      font-size: 2.2rem;
      line-height: 3.3rem;
      padding: 20px 50px;
      font-weight: bold;
      position: relative;
      cursor: pointer; }
      section.faq dl dt:not(:first-of-type) {
        margin-top: 20px; }
      @media screen and (max-width: 767px) {
        section.faq dl dt {
          padding: 12px 42px;
          padding: 12px 42px; } }
      section.faq dl dt::before {
        content: "Q.";
        position: absolute;
        top: 20px;
        left: 20px; }
        @media screen and (max-width: 767px) {
          section.faq dl dt::before {
            top: 12px;
            left: 12px; } }
      section.faq dl dt .btn {
        position: absolute;
        top: 50%;
        right: 20px;
        transform: translateY(-50%);
        width: 24px;
        height: 24px; }
        section.faq dl dt .btn div {
          width: 100%;
          height: 1px;
          background-color: #000000;
          transform: translateY(12px); }
          section.faq dl dt .btn div:last-child {
            transform: translate(0, 12px) rotate(90deg); }
        section.faq dl dt .btn.show div:last-child {
          display: none; }
        @media screen and (max-width: 767px) {
          section.faq dl dt .btn {
            right: 12px; } }
    section.faq dl dd {
      padding: 20px;
      background-color: #ffffff;
      padding-left: 50px;
      font-size: 1.6rem;
      line-height: 3.3rem;
      position: relative;
      display: none; }
      @media screen and (max-width: 767px) {
        section.faq dl dd {
          padding: 12px;
          padding-left: 42px; } }
      section.faq dl dd a {
        color: #ED1849;
        text-decoration: none; }
        section.faq dl dd a:hover {
          text-decoration: underline; }
      section.faq dl dd.show {
        display: block; }
      section.faq dl dd::before {
        content: "A.";
        font-size: 2.2rem;
        position: absolute;
        top: 20px;
        left: 20px;
        font-weight: bold; }
        @media screen and (max-width: 767px) {
          section.faq dl dd::before {
            top: 12px;
            left: 12px; } }
      section.faq dl dd::after {
        position: absolute;
        content: "";
        margin: 0 auto;
        display: block;
        top: 0px;
        height: 1px;
        left: 20px;
        right: 20px;
        background-color: #DEDEDE; }
        @media screen and (max-width: 767px) {
          section.faq dl dd::after {
            left: 12px;
            right: 12px; } }
  section.case {
    width: 100%;
    max-width: 1170px;
    padding: 0 40px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      section.case {
        display: block;
        padding: 0 12px;
        margin-bottom: 60px; } }
    section.case a {
      color: #000000;
      text-decoration: none; }
      section.case a:hover {
        color: #ED1849; }
    section.case:after {
      content: "";
      display: block;
      width: 32.111%;
      height: 0; }
    section.case .item {
      width: 32.111%;
      background: #fff;
      box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
      margin-bottom: 30px; }
      @media screen and (max-width: 767px) {
        section.case .item {
          width: 100%;
          margin-bottom: 20px; } }
      section.case .item .img {
        position: relative; }
        section.case .item .img img {
          vertical-align: bottom;
          width: 100%; }
        section.case .item .img .industry {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          flex-wrap: wrap;
          justify-content: flex-start;
          position: absolute;
          top: 7px;
          left: 8px; }
          section.case .item .img .industry > div {
            padding: 0 6px;
            font-size: 11px;
            text-align: center;
            margin-right: 5px;
            margin-bottom: 5px;
            background-color: #ffffff;
            line-height: 24px; }
      section.case .item .text {
        padding: 10px 11px 15px; }
        section.case .item .text h3 {
          padding-left: 0;
          font-size: 17px;
          font-weight: bold;
          line-height: 25.2px;
          position: relative;
          margin-bottom: 17px;
          text-align: center; }
          section.case .item .text h3::after {
            content: "";
            width: 60px;
            height: 1px;
            display: block;
            background-color: #F64A4A;
            margin: 7px auto; }
        section.case .item .text > p {
          font-size: 1.4rem;
          line-height: 2rem;
          font-weight: bold;
          margin-bottom: 10px;
          background-color: #F8F8F8;
          border-radius: 5px;
          padding: 9px 6px; }
        section.case .item .text .connect {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          justify-content: flex-start; }
          section.case .item .text .connect p {
            font-size: 11px;
            line-height: 22px;
            margin-bottom: 0; }
          section.case .item .text .connect .connect-type {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            justify-content: flex-start; }
            section.case .item .text .connect .connect-type > div {
              font-size: 11px;
              line-height: 22px;
              margin-bottom: 5px;
              margin-right: 5px;
              padding: 0 7px; }
              section.case .item .text .connect .connect-type > div.Salesforce {
                background-color: #07B3FF;
                color: #ffffff; }
              section.case .item .text .connect .connect-type > div.kintone {
                background-color: #FFE607;
                color: #333333; }
              section.case .item .text .connect .connect-type > div.own {
                background-color: #D1D1D1;
                color: #333333; }
        section.case .item .text .company {
          line-height: 1.68rem;
          font-weight: 500;
          font-size: 1.6rem;
          margin-bottom: 12px; }
  section.caseFind {
    max-width: 1100px;
    padding: 0 40px;
    margin: 0 auto 55px; }
    @media screen and (max-width: 767px) {
      section.caseFind {
        padding: 0 12px; } }
    section.caseFind .inner {
      padding: 50px 40px 40px; }
      @media screen and (max-width: 767px) {
        section.caseFind .inner {
          padding: 50px 12px 40px; } }
    section.caseFind h2 {
      text-align: center;
      font-size: 3rem;
      line-height: 5rem;
      margin-bottom: 40px;
      font-weight: bold; }
    section.caseFind .caseFindConditions {
      padding: 1.8rem 4rem 1.8rem 6.5rem;
      background: #F3F3F3;
      border: .3rem solid #fff;
      border-radius: .4rem;
      box-shadow: 0 0.3rem 0.6rem rgba(0, 0, 0, 0.16); }
      @media screen and (max-width: 767px) {
        section.caseFind .caseFindConditions {
          padding: calc(23 / 320 * 100vw) calc(9 / 320 * 100vw) calc(15 / 320 * 100vw);
          border-width: calc(3 / 320 * 100vw); } }
      section.caseFind .caseFindConditions .accordion {
        margin-top: 1.7rem; }
        section.caseFind .caseFindConditions .accordion.open .toggle::before {
          content: "詳細設定を閉じる"; }
        section.caseFind .caseFindConditions .accordion .toggle {
          text-align: center;
          cursor: pointer; }
          section.caseFind .caseFindConditions .accordion .toggle::before {
            padding: .5rem 1.5rem;
            background: #fff;
            border-radius: .2rem;
            font-size: 1.4rem;
            font-weight: bold;
            line-height: 1.42857em;
            text-align: center;
            display: inline-block;
            content: "詳細設定を開く"; }
        section.caseFind .caseFindConditions .accordion dl:last-of-type {
          border-bottom: none; }
      section.caseFind .caseFindConditions dl {
        display: flex;
        flex-shrink: 0;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: space-between;
        margin: .1rem 0 0;
        padding: .5rem 0 1.7rem;
        border-bottom: solid 1px #BFBFBF; }
        @media screen and (max-width: 767px) {
          section.caseFind .caseFindConditions dl {
            display: block;
            margin: 0 0 calc(10 / 320 * 100vw);
            padding: 0 0 calc(10 / 320 * 100vw); } }
        section.caseFind .caseFindConditions dl dt {
          width: 12.2rem;
          margin: 1.5rem 0 0;
          padding: 0;
          font-size: 1.6rem;
          font-weight: bold;
          line-height: 1.5;
          position: relative; }
          @media screen and (max-width: 767px) {
            section.caseFind .caseFindConditions dl dt {
              width: 100%;
              margin: 0;
              font-size: calc(14 / 320 * 100vw); } }
          section.caseFind .caseFindConditions dl dt::after {
            width: .2rem;
            height: 2.9rem;
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            background: #3B4043;
            transform: translate(0, -50%); }
            @media screen and (max-width: 767px) {
              section.caseFind .caseFindConditions dl dt::after {
                display: none; } }
        section.caseFind .caseFindConditions dl dd {
          width: calc(100% - 122px);
          margin: 0;
          padding: 0 0 0 2.4rem;
          font-size: 1.2rem; }
          @media screen and (max-width: 767px) {
            section.caseFind .caseFindConditions dl dd {
              width: 100%;
              padding: 0;
              font-size: calc(10 / 320 * 100vw); } }
          section.caseFind .caseFindConditions dl dd ul {
            margin: 0;
            padding: 0;
            list-style: none;
            display: flex;
            flex-wrap: wrap;
            align-items: flex-start; }
            section.caseFind .caseFindConditions dl dd ul li {
              margin: 1.2rem 2.4rem 0 0;
              padding: .85rem 1.5rem;
              background: #fff;
              border: .1rem solid #C1C1C1;
              border-radius: .4rem;
              color: #000000;
              font-size: 1.2rem;
              line-height: 1;
              cursor: pointer; }
              @media screen and (max-width: 767px) {
                section.caseFind .caseFindConditions dl dd ul li {
                  margin: 10px 10px 0 0;
                  padding: 8px 10px;
                  border-radius: 4px;
                  font-size: 10px; } }
              section.caseFind .caseFindConditions dl dd ul li.active {
                background: #ED1849;
                color: #fff; }
    section.caseFind .caseFindBtns {
      max-width: 40.8rem;
      margin: 3.5rem auto 0;
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 767px) {
        section.caseFind .caseFindBtns {
          margin: calc(30 / 320 * 100vw) auto 0; } }
      section.caseFind .caseFindBtns input {
        width: 100%;
        max-width: 18.9rem;
        padding: .7rem;
        background: #fff;
        border: 0.3rem solid #2F83C3;
        border-radius: .5rem;
        color: #2F83C3;
        font-size: 2rem;
        font-weight: bold;
        line-height: 1.45;
        cursor: pointer;
        -webkit-appearance: none;
        appearance: none;
        transition: all 0.2s ease-out 0s;
        outline: none; }
        @media screen and (max-width: 767px) {
          section.caseFind .caseFindBtns input {
            max-width: calc(132 / 320 * 100vw);
            padding: calc(6 / 320 * 100vw);
            border-width: calc(3 / 320 * 100vw);
            font-size: calc(16 / 320 * 100vw);
            line-height: 1.5; } }
      section.caseFind .caseFindBtns .reset {
        background: #fff;
        border: 0.3rem solid #3B4043;
        color: #3B4043; }
        section.caseFind .caseFindBtns .reset:hover {
          color: #ffffff;
          border: 0.3rem solid #ED1849;
          background-color: #ED1849; }
      section.caseFind .caseFindBtns .narrow {
        background: #ED1849;
        border: 0.3rem solid #ED1849;
        color: #fff; }
        section.caseFind .caseFindBtns .narrow:hover {
          background: #ffffff;
          color: #ED1849; }
  section.useful {
    position: relative;
    /*margin-top: 135px;*/ }
    @media screen and (max-width: 767px) {
      section.useful {
        /*margin-top: 95px;*/ } }
    section.useful .inner {
      padding-top: 70px; }
      @media screen and (max-width: 767px) {
        section.useful .inner {
          padding-bottom: 0; } }
    section.useful .lead {
      position: absolute;
      top: 0;
      left: 50%;
      transform: translate(-50%, -50%);
      background-color: #ED1849;
      color: #ffffff;
      font-weight: bold;
      font-size: 2.6rem;
      width: 312px;
      height: 76px;
      line-height: 7.6rem;
      border-radius: 38px;
      max-width: 100%; }
    section.useful .h2_01 {
      background-color: #ED1849;
      color: #ffffff;
      font-weight: bold;
      font-size: 2rem;
      line-height: 6rem;
      width: 258px;
      height: 60px;
      border-radius: 38px;
      text-align: center;
      margin: 0 auto 40px; }
    section.useful .tab {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between;
      margin: 0;
      padding: 0; }
      section.useful .tab li {
        cursor: pointer;
        list-style: none;
        width: 50%;
        font-size: 2.8rem;
        line-height: 5rem;
        text-align: center;
        font-weight: bold;
        padding: 60px 10px 20px;
        margin: 0;
        border-top-left-radius: 5px;
        border-top-right-radius: 5px; }
        @media screen and (max-width: 767px) {
          section.useful .tab li {
            padding: 20px 10px 20px;
            font-size: 1.2rem;
            line-height: 2rem; } }
        section.useful .tab li.selected {
          background-color: #F2F5F9; }
    section.useful .self {
      display: none; }
      section.useful .self.active {
        display: block; }
    section.useful .boxWrapper01, section.useful .boxWrapper02 {
      padding: 77px 40px 50px;
      background-color: #F2F5F9;
      justify-content: space-between;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      flex-wrap: wrap;
      margin-bottom: 55px;
      border-radius: 5px;
      border-top-left-radius: 0;
      border-top-right-radius: 0; }
      @media screen and (max-width: 767px) {
        section.useful .boxWrapper01, section.useful .boxWrapper02 {
          flex-direction: column;
          padding: 77px 12px 37px; } }
    section.useful .boxWrapper02 {
      background-color: #ffffff;
      padding: 0 40px;
      margin-bottom: 0; }
      @media screen and (max-width: 767px) {
        section.useful .boxWrapper02 {
          flex-direction: column;
          padding: 0 12px; } }
    section.useful .box, section.useful .box02 {
      width: calc( 50% - 40px );
      margin: 0 0 38px;
      background-color: #ffffff;
      padding: 40px 12px 20px;
      position: relative;
      border-radius: 6px; }
      @media screen and (max-width: 767px) {
        section.useful .box, section.useful .box02 {
          width: 100%; } }
      section.useful .box .tag, section.useful .box02 .tag {
        position: absolute;
        font-size: 1.4rem;
        line-height: 3.8rem;
        width: 95px;
        text-align: center;
        top: 0;
        transform: translateY(-50%);
        left: 12px;
        border-radius: 3px; }
        section.useful .box .tag.about, section.useful .box02 .tag.about {
          background-color: #A2D5DD; }
        section.useful .box .tag.util, section.useful .box02 .tag.util {
          background-color: #AEC1DF; }
        section.useful .box .tag.use, section.useful .box02 .tag.use {
          background-color: #A2D5DD; }
        section.useful .box .tag.useMore, section.useful .box02 .tag.useMore {
          background-color: #D6AEC4; }
        section.useful .box .tag.trouble01, section.useful .box02 .tag.trouble01 {
          background-color: #FDD48E; }
        section.useful .box .tag.trouble02, section.useful .box02 .tag.trouble02 {
          background-color: #F3C8B7; }
      section.useful .box figure, section.useful .box02 figure {
        width: 100%;
        margin-bottom: 5px; }
        section.useful .box figure img, section.useful .box02 figure img {
          width: 100%; }
      section.useful .box h2, section.useful .box02 h2 {
        font-size: 1.8rem;
        font-weight: bold;
        line-height: 2.4rem;
        margin-bottom: 30px;
        text-align: left; }
      section.useful .box p, section.useful .box02 p {
        font-size: 1.2rem;
        line-height: 1.8rem;
        margin-bottom: 13px; }
      section.useful .box ul, section.useful .box02 ul {
        padding-left: 0;
        margin-bottom: 13px; }
        section.useful .box ul li, section.useful .box02 ul li {
          font-size: 1.2rem;
          line-height: 2.3rem; }
    section.useful .box02 {
      background-color: #F2F5F9; }
      section.useful .box02 p {
        margin-bottom: 25px; }
    section.useful ul.flow {
      padding-left: 0; }
      section.useful ul.flow li {
        list-style: none;
        padding-left: 86px;
        position: relative;
        margin-left: 0;
        margin-bottom: 20px; }
        section.useful ul.flow li:not(:first-of-type) {
          margin-bottom: 44px; }
          @media screen and (max-width: 767px) {
            section.useful ul.flow li:not(:first-of-type) {
              margin-bottom: 20px; } }
        section.useful ul.flow li:last-of-type {
          margin-bottom: 0; }
        section.useful ul.flow li span {
          position: absolute;
          top: 0;
          left: 57px;
          font-size: 2rem; }
      section.useful ul.flow .preparation::before, section.useful ul.flow .develop::before, section.useful ul.flow .running::before {
        content: "";
        position: absolute;
        background-color: #ed184a;
        top: 0;
        left: 0;
        width: 40px;
        height: 30px;
        background-size: contain;
        color: #ffffff;
        font-size: 1.3rem;
        line-height: 3rem;
        text-align: center;
        font-weight: bold; }
      section.useful ul.flow .preparation::after, section.useful ul.flow .develop::after, section.useful ul.flow .running::after {
        content: "";
        position: absolute;
        background-repeat: no-repeat;
        top: 30px;
        left: 0;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 14px 20px 0 20px;
        border-color: #ed184a transparent transparent transparent; }
      section.useful ul.flow .preparation::before {
        content: "準備"; }
      section.useful ul.flow .develop::before {
        content: "開発"; }
      section.useful ul.flow .running::before {
        content: "運用"; }
    section.useful .entrust {
      display: none; }
      section.useful .entrust.active {
        display: block; }
      section.useful .entrust .wrapper {
        background-color: #F2F5F9;
        padding: 35px 20px 35px;
        margin-bottom: 55px; }
        @media screen and (max-width: 767px) {
          section.useful .entrust .wrapper {
            padding: 35px 12px 35px; } }
        section.useful .entrust .wrapper > .column {
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          justify-content: space-between;
          margin-bottom: 50px; }
          @media screen and (max-width: 767px) {
            section.useful .entrust .wrapper > .column {
              flex-direction: column; } }
          section.useful .entrust .wrapper > .column .inner {
            width: 48.9%;
            margin-bottom: 0; }
            @media screen and (max-width: 767px) {
              section.useful .entrust .wrapper > .column .inner {
                width: 100%; }
                section.useful .entrust .wrapper > .column .inner:first-of-type {
                  margin-bottom: 20px; } }
          section.useful .entrust .wrapper > .column p {
            margin-bottom: 18px;
            font-size: 1.4rem;
            line-height: 2.3rem; }
          section.useful .entrust .wrapper > .column img {
            margin-bottom: 14px;
            width: 100%; }
        section.useful .entrust .wrapper .inner {
          padding: 40px 20px;
          margin-bottom: 45px; }
          section.useful .entrust .wrapper .inner:last-child {
            margin-bottom: 0; }
          @media screen and (max-width: 767px) {
            section.useful .entrust .wrapper .inner {
              padding: 40px 12px;
              margin-bottom: 20px; } }
          section.useful .entrust .wrapper .inner .lead_txt {
            font-size: 1.4rem;
            line-height: 2.8rem;
            text-align: center;
            margin-bottom: 21px; }
        section.useful .entrust .wrapper .inner2 {
          padding: 26px 20px 40px;
          background-color: #F2F5F9;
          position: relative;
          border-radius: 5px;
          margin-bottom: 50px; }
          @media screen and (max-width: 767px) {
            section.useful .entrust .wrapper .inner2 {
              padding: 26px 10px 40px; } }
          section.useful .entrust .wrapper .inner2:last-of-type {
            margin-bottom: 0; }
          section.useful .entrust .wrapper .inner2 h3 {
            position: absolute;
            top: 0;
            left: 12px;
            transform: translateY(-50%); }
            section.useful .entrust .wrapper .inner2 h3 span {
              font-size: 1.4rem;
              line-height: 3.9rem;
              padding: 0 20px;
              background-color: #F3C8B7;
              text-align: center;
              border-radius: 5px;
              display: inline-block;
              color: #070707; }
              @media screen and (max-width: 767px) {
                section.useful .entrust .wrapper .inner2 h3 span {
                  padding: 0 10px; } }
          section.useful .entrust .wrapper .inner2 ul {
            padding-left: 0;
            margin-top: 15px;
            margin-bottom: 0; }
            section.useful .entrust .wrapper .inner2 ul li {
              font-size: 1.8rem;
              line-height: 3.6rem; }
            section.useful .entrust .wrapper .inner2 ul.font16 li {
              font-size: 1.6rem;
              line-height: 2.8rem; }
          section.useful .entrust .wrapper .inner2 .column {
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex;
            justify-content: space-between; }
            @media screen and (max-width: 767px) {
              section.useful .entrust .wrapper .inner2 .column {
                flex-direction: column-reverse; } }
            section.useful .entrust .wrapper .inner2 .column .txt-area {
              width: 50%; }
              @media screen and (max-width: 767px) {
                section.useful .entrust .wrapper .inner2 .column .txt-area {
                  width: 100%; } }
              section.useful .entrust .wrapper .inner2 .column .txt-area .caution li {
                list-style: none;
                font-size: 1.1rem;
                line-height: 1.5rem;
                margin-left: 0;
                text-indent: -1.6rem;
                padding-left: 1.3rem;
                margin-bottom: 15px; }
                section.useful .entrust .wrapper .inner2 .column .txt-area .caution li:last-of-type {
                  margin-bottom: 0; }
                section.useful .entrust .wrapper .inner2 .column .txt-area .caution li::before {
                  content: "※";
                  margin-right: 0.5em; }
            section.useful .entrust .wrapper .inner2 .column figure {
              width: 47.8%; }
              section.useful .entrust .wrapper .inner2 .column figure img {
                width: 100%; }
              @media screen and (max-width: 767px) {
                section.useful .entrust .wrapper .inner2 .column figure {
                  width: 100%; } }
        section.useful .entrust .wrapper h2 {
          font-size: 2.6rem;
          line-height: 5rem;
          margin-bottom: 0; }
          section.useful .entrust .wrapper h2.blue-line::after {
            background-color: #3D88C0; }
          section.useful .entrust .wrapper h2:after {
            content: "";
            width: 90px;
            height: 4px;
            background-color: #ED1849;
            display: block;
            margin: 0 auto 12px;
            display: block; }
        section.useful .entrust .wrapper h3 {
          font-size: 1.6rem;
          line-height: 2.8rem;
          margin-bottom: 11px;
          padding-left: 0; }
          section.useful .entrust .wrapper h3::before {
            display: none; }
        section.useful .entrust .wrapper .subTitle {
          text-align: center;
          font-size: 1.2rem;
          margin-bottom: 15px; }
        section.useful .entrust .wrapper .annotation {
          font-size: 1.2rem;
          line-height: 1.7rem;
          padding-left: 17px; }
        @media screen and (max-width: 767px) {
          section.useful .entrust .wrapper .tableWrapper {
            overflow-x: scroll; }
            section.useful .entrust .wrapper .tableWrapper + p {
              margin-top: 10px;
              font-size: 1.3rem; } }
        section.useful .entrust .wrapper table {
          border-collapse: collapse;
          margin-top: 32px;
          width: 100%; }
          @media screen and (max-width: 767px) {
            section.useful .entrust .wrapper table {
              width: 100%; } }
          section.useful .entrust .wrapper table tbody {
            width: 100%; }
          section.useful .entrust .wrapper table th, section.useful .entrust .wrapper table td {
            padding: 11px 11px 11px 0;
            border-top: 1px dashed #707070;
            border-bottom: 1px dashed #707070;
            vertical-align: middle;
            width: 20%;
            font-size: 1.4rem;
            line-height: 2.2rem; }
            @media screen and (max-width: 767px) {
              section.useful .entrust .wrapper table th, section.useful .entrust .wrapper table td {
                padding: 11px 20px; } }
          section.useful .entrust .wrapper table td {
            padding-left: 35px;
            text-align: center; }
            section.useful .entrust .wrapper table td figure {
              height: 53px;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              justify-content: center;
              align-items: flex-end;
              margin-bottom: 5px; }
              section.useful .entrust .wrapper table td figure img {
                width: auto; }
            @media screen and (max-width: 767px) {
              section.useful .entrust .wrapper table td {
                padding-left: 20px;
                white-space: pre; } }
            section.useful .entrust .wrapper table td.vetical-top {
              vertical-align: top; }
          section.useful .entrust .wrapper table th {
            text-align: left; }
            @media screen and (max-width: 767px) {
              section.useful .entrust .wrapper table th {
                width: 50% !important;
                text-align: center;
                white-space: pre; } }
        section.useful .entrust .wrapper .partner {
          max-width: 848px;
          margin: 30px auto;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          justify-content: space-between;
          flex-wrap: wrap; }
          section.useful .entrust .wrapper .partner::after {
            content: "";
            display: block;
            width: calc((100% - 44px) / 3); }
          section.useful .entrust .wrapper .partner .item {
            box-sizing: border-box;
            margin-bottom: 22px;
            width: calc((100% - 44px) / 3);
            background-color: #F8F8F8;
            border: 1px solid #D4D4D4;
            box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
            border-radius: 4px; }
            @media screen and (max-width: 767px) {
              section.useful .entrust .wrapper .partner .item {
                width: 100%; } }
            section.useful .entrust .wrapper .partner .item .companyName {
              text-align: center;
              padding: 15.5px 30px; }
              section.useful .entrust .wrapper .partner .item .companyName a {
                font-size: 14px;
                line-height: 20px;
                font-weight: bold;
                text-decoration: underline;
                color: #000;
                transition: 0.3s; }
                section.useful .entrust .wrapper .partner .item .companyName a:hover {
                  opacity: 0.7; }
            section.useful .entrust .wrapper .partner .item .logoArea {
              background-color: #fff;
              display: -webkit-flex;
              display: -moz-flex;
              display: -ms-flex;
              display: -o-flex;
              display: flex;
              justify-content: center;
              align-items: center;
              padding: 15px 10px;
              box-sizing: border-box; }
              section.useful .entrust .wrapper .partner .item .logoArea .logo {
                width: 250px;
                max-width: 100%;
                transition: 0.3s; }
                section.useful .entrust .wrapper .partner .item .logoArea .logo:hover {
                  opacity: 0.7; }
                section.useful .entrust .wrapper .partner .item .logoArea .logo img {
                  vertical-align: bottom;
                  width: 100%; }
            section.useful .entrust .wrapper .partner .item .txtArea {
              padding: 16px 30px; }
              section.useful .entrust .wrapper .partner .item .txtArea .txt {
                font-size: 12px;
                line-height: 20px;
                margin-bottom: 1px;
                min-height: 97px; }
              section.useful .entrust .wrapper .partner .item .txtArea .link {
                text-align: center;
                display: -webkit-flex;
                display: -moz-flex;
                display: -ms-flex;
                display: -o-flex;
                display: flex;
                justify-content: center;
                flex-direction: column;
                align-items: center; }
                section.useful .entrust .wrapper .partner .item .txtArea .link a {
                  box-sizing: border-box;
                  display: inline-block;
                  width: 160px;
                  font-size: 12px;
                  line-height: 24px;
                  border-radius: 2px;
                  box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
                  padding: 0 26px 0 12px;
                  background-color: #fff;
                  font-weight: bold;
                  position: relative;
                  transition: 0.3s;
                  color: #000; }
                  section.useful .entrust .wrapper .partner .item .txtArea .link a:not(:last-of-type) {
                    margin-bottom: 8px; }
                  section.useful .entrust .wrapper .partner .item .txtArea .link a:hover {
                    background-color: #FC6497;
                    color: #fff;
                    opacity: 1;
                    text-decoration: none; }
                    section.useful .entrust .wrapper .partner .item .txtArea .link a:hover::before {
                      background-color: #fff; }
                    section.useful .entrust .wrapper .partner .item .txtArea .link a:hover::after {
                      border-color: transparent transparent transparent #FC6497; }
                  section.useful .entrust .wrapper .partner .item .txtArea .link a::before {
                    content: "";
                    position: absolute;
                    display: block;
                    width: 11px;
                    height: 11px;
                    background-color: #FC6497;
                    border-radius: 50%;
                    top: 50%;
                    right: 9px;
                    transform: translateY(-50%);
                    transition: 0.3s; }
                  section.useful .entrust .wrapper .partner .item .txtArea .link a::after {
                    content: "";
                    display: block;
                    position: absolute;
                    width: 0;
                    height: 0;
                    border-style: solid;
                    border-width: 2.5px 0 2.5px 4.3px;
                    border-color: transparent transparent transparent #ffffff;
                    top: 50%;
                    right: 12px;
                    transform: translateY(-50%);
                    transition: 0.3s; }
  section.caseMore {
    max-width: 1180px;
    padding: 0 40px;
    margin: 0 auto 100px;
    position: relative; }
    @media screen and (max-width: 767px) {
      section.caseMore {
        padding: 0 12px;
        margin-bottom: calc(170 / 375 * 100vw); } }
    section.caseMore .inner {
      padding: 40px 40px 50px; }
      @media screen and (max-width: 767px) {
        section.caseMore .inner {
          padding: 40px 12px 50px; } }
      section.caseMore .inner > div {
        max-width: 590px;
        margin-left: 11%; }
        @media screen and (max-width: 1065px) {
          section.caseMore .inner > div {
            margin-left: 5%; } }
        @media screen and (max-width: 767px) {
          section.caseMore .inner > div {
            margin-left: 0;
            width: 100%; } }
        section.caseMore .inner > div ul {
          margin-bottom: 40px;
          padding-left: 20px; }
          section.caseMore .inner > div ul li {
            font-size: 1.8rem;
            line-height: 3.2rem;
            font-weight: bold;
            list-style: outside disc; }
      section.caseMore .inner img {
        position: absolute;
        right: 50px;
        bottom: -112px; }
        @media screen and (max-width: 1065px) {
          section.caseMore .inner img {
            bottom: calc(-200 / 1280 * 100vw);
            width: calc(357 / 1280 * 100vw); } }
        @media screen and (max-width: 767px) {
          section.caseMore .inner img {
            bottom: calc(-150 / 375 * 100vw);
            width: calc(170 / 375 * 100vw);
            right: 0; } }
    section.caseMore h2 {
      font-size: 3rem;
      line-height: 5rem;
      text-align: center;
      margin-bottom: 65px;
      font-weight: bold; }
  section.action-scene {
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      section.action-scene {
        margin-bottom: 40px; } }
    section.action-scene .inner {
      max-width: 1180px;
      margin: 0 auto;
      background-color: transparent;
      padding-top: 0;
      padding-bottom: 0; }
      section.action-scene .inner h2 {
        font-size: 3rem;
        line-height: 5rem;
        margin-bottom: 40px;
        font-weight: bold;
        text-align: center; }
    section.action-scene .card {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap; }
      section.action-scene .card.card-2 .card-item {
        width: calc((100% - 60px) / 2); }
        @media screen and (max-width: 767px) {
          section.action-scene .card.card-2 .card-item {
            width: 100%; } }
      section.action-scene .card .card-item {
        background-color: #ffffff;
        padding: 20px 35px 30px;
        margin-bottom: 30px; }
        @media screen and (max-width: 1065px) {
          section.action-scene .card .card-item {
            padding: 20px 12px 30px;
            margin-bottom: 20px; } }
        section.action-scene .card .card-item h3 {
          font-size: 2.4rem;
          line-height: 2.8rem;
          font-weight: bold;
          text-align: center;
          margin-bottom: 19px; }
          section.action-scene .card .card-item h3::after {
            content: "";
            width: 91px;
            height: 4px;
            background-color: #ED1849;
            display: block;
            margin: 7px auto 0; }
        section.action-scene .card .card-item img {
          width: 100%;
          margin-bottom: 17px; }
        section.action-scene .card .card-item h4 {
          font-size: 1.8rem;
          line-height: 2.6rem;
          font-weight: bold;
          margin-bottom: 18px; }
        section.action-scene .card .card-item p {
          font-size: 1.4rem;
          line-height: 2.4rem;
          font-weight: 500; }
  section.connectfunc {
    margin-bottom: 70px; }
    @media screen and (max-width: 767px) {
      section.connectfunc {
        margin-bottom: 40px; } }
    section.connectfunc .inner {
      max-width: 1240px;
      margin: 0 auto;
      padding: 0 40px;
      background-color: transparent; }
      @media screen and (max-width: 767px) {
        section.connectfunc .inner {
          padding: 0 12px; } }
    section.connectfunc .card {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 767px) {
        section.connectfunc .card {
          flex-direction: column; } }
      section.connectfunc .card.card-3 .card-item {
        width: calc((100% - 68px) / 3); }
        @media screen and (max-width: 767px) {
          section.connectfunc .card.card-3 .card-item {
            width: 100%; } }
      section.connectfunc .card.card-4 .card-item {
        width: calc((100% - 68px) / 4); }
        @media screen and (max-width: 767px) {
          section.connectfunc .card.card-4 .card-item {
            width: 100%; } }
      section.connectfunc .card .card-item {
        width: 100%;
        background-color: #ffffff;
        padding: 26px 12px 40px;
        margin-bottom: 30px;
        text-align: center; }
        @media screen and (max-width: 767px) {
          section.connectfunc .card .card-item {
            margin-bottom: 20px; } }
        section.connectfunc .card .card-item h2 {
          font-size: 2rem;
          line-height: 3rem;
          font-weight: bold;
          margin-bottom: 0px; }
          section.connectfunc .card .card-item h2::after {
            content: "";
            width: 91px;
            height: 4px;
            background-color: #ED1849;
            display: block;
            margin: 7px auto 0; }
        section.connectfunc .card .card-item p {
          font-size: 1.3rem;
          line-height: 2rem;
          margin-top: 30px;
          margin-bottom: 25px; }
  section.page-main {
    margin-bottom: 100px; }
    section.page-main .page-main-inner {
      max-width: 1020px;
      margin: 0 auto;
      padding: 0 10px;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      background-color: #ffffff;
      padding: 20px 20px 40px; }
    section.page-main .rightBox {
      float: right;
      margin-bottom: 50px;
      width: 420px; }
      @media screen and (max-width: 839px) {
        section.page-main .rightBox {
          width: 100%; } }
    section.page-main .iframe-wrap {
      margin: 0 auto 30px;
      width: 100%;
      overflow: hidden; }
      section.page-main .iframe-wrap iframe {
        width: 100%; }
    section.page-main .clr::after {
      content: "";
      display: block;
      clear: both; }
    section.page-main a {
      color: #ED1849;
      text-decoration: none; }
      section.page-main a:hover {
        text-decoration: underline; }
    section.page-main p {
      font-size: 1.5rem;
      line-height: 1.7; }
      @media screen and (max-width: 839px) {
        section.page-main p:not(.innerTitle2) {
          font-size: 80% !important; } }
    section.page-main .leftBox {
      float: left;
      width: 520px;
      background-color: #f9f9f9;
      margin-bottom: 50px;
      padding: 30px;
      box-sizing: border-box;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      border-radius: 5px; }
      @media screen and (max-width: 839px) {
        section.page-main .leftBox {
          width: 100%;
          padding: 20px 10px; } }
      section.page-main .leftBox .leftImg {
        text-align: center;
        margin-top: 10px; }
      section.page-main .leftBox img {
        width: 100%; }
      section.page-main .leftBox .lead {
        margin: 20px 0;
        font-size: 16px; }
      section.page-main .leftBox .lead2 {
        margin: 20px 0;
        font-size: 16px;
        text-align: center;
        color: #F80830; }
      section.page-main .leftBox .leftBox_inner {
        background-color: #fff;
        padding: 20px 30px;
        box-sizing: border-box;
        -webkit-border-radius: 5px;
        -moz-border-radius: 5px;
        border-radius: 5px; }
        section.page-main .leftBox .leftBox_inner .innerTitle {
          font-weight: bold;
          font-size: 16px;
          margin-bottom: 20px;
          padding-bottom: 5px;
          border-bottom: 1px solid #ccc; }
        section.page-main .leftBox .leftBox_inner .innerTitle2 {
          font-weight: bold;
          font-size: 18px;
          color: #1794C8;
          margin-bottom: 20px;
          padding-bottom: 5px;
          border-bottom: 1px solid #ccc; }
      section.page-main .leftBox .fa-bolt, section.page-main .leftBox .fa-comments, section.page-main .leftBox .fa-grin {
        margin-right: 10px;
        font-size: 22px;
        color: #1794C8; }
      section.page-main .leftBox li {
        font-size: 16px;
        font-weight: bold;
        margin-bottom: 10px;
        list-style: none;
        line-height: 1.7; }
        section.page-main .leftBox li .fa-chevron-circle-right {
          color: #1794C8; }
        section.page-main .leftBox li li {
          margin: 0 0 0 1em;
          font-weight: normal; }
        @media screen and (max-width: 839px) {
          section.page-main .leftBox li {
            font-size: 14px;
            margin-bottom: 5px; } }
  section .fa, section .far, section .fas {
    font-family: "Font Awesome 5 Free"; }
  section .fa, section .fas {
    font-weight: 900; }
  section.icon {
    max-width: 414px;
    margin: 0 auto 90px; }
    section.icon .inner {
      background-color: transparent;
      padding: 0 40px; }
      @media screen and (max-width: 767px) {
        section.icon .inner {
          padding: 0 12px; } }
    @media screen and (max-width: 767px) {
      section.icon {
        max-width: 310px;
        margin: 0 auto 47px; } }
    section.icon .columns {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between; }
      section.icon .columns > a {
        width: calc((100% - 82px) / 3);
        text-align: center;
        display: block;
        text-decoration: none; }
        section.icon .columns > a:hover .img {
          background: linear-gradient(131deg, #ED1849 0%, #E96432 100%);
          box-shadow: 0px 3px 6px #00000059;
          border: 2px solid #FFFFFF; }
        @media screen and (max-width: 767px) {
          section.icon .columns > a {
            width: calc((100% - 70px) / 3); } }
        section.icon .columns > a .img {
          background-color: #ED1849;
          width: 75px;
          height: 75px;
          border-radius: 50%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 0 auto 15px; }
        section.icon .columns > a p {
          margin-top: 9px;
          font-size: 1.4rem;
          font-weight: bold;
          text-decoration: none;
          color: #000000;
          white-space: nowrap;
          display: block;
          text-align: center; }
          @media screen and (max-width: 767px) {
            section.icon .columns > a p {
              font-size: 1.3rem;
              line-height: 1.6rem; } }
  section.footerCTA {
    max-width: 1128px;
    padding: 0 40px;
    margin: 0 auto 40px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    gap: 88px; }
    @media screen and (max-width: 767px) {
      section.footerCTA {
        flex-direction: column;
        padding: 0 12px; } }
    section.footerCTA .col {
      width: calc((100% - 88px) / 2);
      border-radius: 20px;
      padding: 34px 20px 25px;
      text-align: center;
      box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3); }
      @media screen and (max-width: 767px) {
        section.footerCTA .col {
          width: 100%; } }
      section.footerCTA .col.contact {
        background-color: #EAF3F6; }
        @media screen and (max-width: 767px) {
          section.footerCTA .col.contact {
            margin-bottom: 20px; } }
        section.footerCTA .col.contact .title::after {
          background: linear-gradient(90deg, #74DDDD 0%, #0C54A2 100%); }
      section.footerCTA .col.trial {
        background-color: #F1F6EB; }
        section.footerCTA .col.trial .title::after {
          background: linear-gradient(90deg, #FAE14B 0%, #63B65D 100%); }
      section.footerCTA .col .img {
        min-height: 52.02px;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: center;
        align-items: center;
        margin-bottom: 26px; }
      section.footerCTA .col .title {
        font-size: 22px;
        line-height: 1;
        margin-bottom: 19px;
        font-weight: bold; }
        section.footerCTA .col .title::after {
          content: "";
          display: block;
          width: 94px;
          height: 3px;
          margin: 15px auto 0; }
      section.footerCTA .col .txt {
        font-weight: bold;
        font-size: 14px;
        line-height: 24px;
        max-width: 370px;
        margin: 0 auto 38px; }
  section.footerCTA2 {
    max-width: 1128px;
    padding: 0 40px;
    margin: 120px auto 40px; }
    section.footerCTA2 .icons {
      margin: 0;
      display: flex;
      gap: 0 50px;
      justify-content: center; }
      @media screen and (max-width: 767px) {
        section.footerCTA2 .icons {
          gap: 0 35px; } }
      section.footerCTA2 .icons > div {
        /*width: calc((100% - 336px) / 3);*/ }
      section.footerCTA2 .icons a {
        text-align: center;
        display: block;
        text-decoration: none;
        margin: 0 auto; }
        section.footerCTA2 .icons a:hover .img {
          background: linear-gradient(131deg, #ED1849 0%, #E96432 100%);
          box-shadow: 0px 3px 6px #00000059;
          border: 2px solid #FFFFFF; }
        section.footerCTA2 .icons a .img {
          background-color: #ED1849;
          width: 75px;
          height: 75px;
          border-radius: 50%;
          display: -webkit-flex;
          display: -moz-flex;
          display: -ms-flex;
          display: -o-flex;
          display: flex;
          justify-content: center;
          align-items: center;
          margin: 0 auto 15px; }
          @media screen and (max-width: 767px) {
            section.footerCTA2 .icons a .img {
              width: 75px;
              height: 75px; }
              section.footerCTA2 .icons a .img img {
                width: 50%; } }
        section.footerCTA2 .icons a p {
          margin-top: 9px;
          font-size: 1.4rem;
          line-height: 2.4rem;
          font-weight: bold;
          text-decoration: none;
          color: #000000;
          white-space: nowrap;
          display: block;
          text-align: center; }
          @media screen and (max-width: 767px) {
            section.footerCTA2 .icons a p {
              font-size: 1.3rem;
              line-height: 1.6rem; } }

.btmFix {
  background-color: #FCDEDE;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
  border-top: 1px solid #707070;
  border-bottom: 1px solid #707070; }
  .btmFix .btmFixInner {
    max-width: 1100px;
    padding: 12px 40px;
    margin: 0 auto; }
    @media screen and (max-width: 767px) {
      .btmFix .btmFixInner {
        padding: 12px; } }
  .btmFix .estimateWrapper {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media screen and (max-width: 767px) {
      .btmFix .estimateWrapper {
        flex-direction: column; } }
    .btmFix .estimateWrapper table {
      border-collapse: collapse;
      width: 68.6%;
      background-color: #ffffff; }
      @media screen and (max-width: 767px) {
        .btmFix .estimateWrapper table {
          width: 100%;
          margin-bottom: 10px; } }
      .btmFix .estimateWrapper table td, .btmFix .estimateWrapper table th {
        width: calc( 100% / 4);
        font-size: 1.6rem;
        line-height: 2.4rem;
        padding: 13px 10px;
        text-align: center;
        font-weight: bold;
        border: 1px solid #707070; }
        @media screen and (max-width: 767px) {
          .btmFix .estimateWrapper table td, .btmFix .estimateWrapper table th {
            font-size: 1.2rem;
            line-height: 2rem;
            padding: 10px 8px; } }
      .btmFix .estimateWrapper table tbody td {
        background-color: rgba(237, 24, 73, 0.28); }
    .btmFix .estimateWrapper .btmFixBtn {
      width: 28.8%;
      font-size: 2rem;
      line-height: 5rem;
      font-weight: bold;
      text-align: center;
      text-decoration: none !important;
      color: #ED1849 !important;
      background: #fff;
      padding: 11px 10px;
      margin: 0px auto;
      border: #ED1849 2px solid;
      border-radius: 6px;
      display: block;
      max-width: 270px;
      box-shadow: 0px 3px 6px #00000059;
      flex-shrink: 0; }
      @media screen and (max-width: 767px) {
        .btmFix .estimateWrapper .btmFixBtn {
          width: 100%;
          font-size: 1.6rem;
          line-height: 3rem; } }
      .btmFix .estimateWrapper .btmFixBtn:hover {
        background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
        border: #ffffff 2px solid;
        color: #ffffff !important; }

.mt-15 {
  margin-top: 15px !important; }

.mt-20 {
  margin-top: 20px !important; }

.mt-30 {
  margin-top: 30px !important; }

.mt-40 {
  margin-top: 40px !important; }

.mt-45 {
  margin-top: 45px !important; }

.mb-0 {
  margin-bottom: 0 !important; }

.mb-10 {
  margin-bottom: 10px !important; }

.mb-20 {
  margin-bottom: 20px !important; }

.mb-25 {
  margin-bottom: 25px !important; }

.mb-30 {
  margin-bottom: 30px !important; }

.mb-45 {
  margin-bottom: 45px !important; }

.mb-50 {
  margin-bottom: 50px !important; }

.mb-60 {
  margin-bottom: 70px !important; }

.mb-70 {
  margin-bottom: 70px !important; }

.mb-130 {
  margin-bottom: 130px !important; }

/* ********** 
 footer Style
 ********** */
footer {
  width: 100%;
  min-height: 335px;
  margin-top: auto;
  position: relative;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    footer {
      min-height: auto;
      height: 190px; } }
  @media screen and (max-width: 767px) {
    footer.opened {
      height: 335px; } }
  footer .foot_wrap {
    background: linear-gradient(to right, #044299, #208fc4, #009c91);
    width: 108.67%;
    height: 100%;
    margin: auto;
    padding: 40px 0px 50px;
    border-top-left-radius: 54.33% 282px;
    border-top-right-radius: 54.33% 282px;
    position: absolute;
    top: 0;
    left: -4.33%;
    box-sizing: border-box;
    position: relative; }
    @media screen and (max-width: 767px) {
      footer .foot_wrap {
        border-top-left-radius: 70% 150px;
        border-top-right-radius: 70% 150px;
        padding: 30px 0 40px; } }
    footer .foot_wrap h1 {
      text-align: center;
      margin-bottom: 35px; }
      footer .foot_wrap h1 img {
        width: 149px;
        height: 93px; }
      @media screen and (max-width: 767px) {
        footer .foot_wrap h1 {
          width: 104px;
          margin: 0 auto;
          margin-bottom: -10px; } }
    footer .foot_wrap .foot_logo {
      text-align: center;
      margin-bottom: 35px; }
      footer .foot_wrap .foot_logo img {
        width: 149px;
        height: 93px; }
      @media screen and (max-width: 767px) {
        footer .foot_wrap .foot_logo {
          width: 104px;
          margin: 0 auto;
          margin-bottom: -10px; } }
    footer .foot_wrap nav {
      text-align: center; }
      @media screen and (max-width: 767px) {
        footer .foot_wrap nav {
          display: none; } }
      footer .foot_wrap nav ul {
        font-size: 1.4rem;
        display: flex;
        display: -ms-flex;
        display: -webkit-flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: center;
        flex-wrap: wrap; }
        footer .foot_wrap nav ul li {
          padding: 0px 30px;
          margin-bottom: 16px; }
          @media screen and (max-width: 1065px) {
            footer .foot_wrap nav ul li {
              padding: 0 20px; } }
          footer .foot_wrap nav ul li a {
            color: #fff;
            text-decoration: none; }
            footer .foot_wrap nav ul li a:hover {
              text-decoration: underline; }
        footer .foot_wrap nav ul:last-of-type {
          margin: 0 0px 10px; }
    footer .foot_wrap p {
      text-align: center;
      color: #fff;
      font-size: 1.1rem;
      padding-bottom: 10px; }
      @media screen and (max-width: 1065px) {
        footer .foot_wrap p {
          font-size: 1rem;
          line-height: 1.7rem; } }
      @media screen and (max-width: 767px) {
        footer .foot_wrap p {
          padding-bottom: 0; } }
  footer .foot-wrap2 {
    width: 100%;
    height: 50px;
    background-color: #002B68;
    position: absolute;
    bottom: 0; }
    @media screen and (max-width: 767px) {
      footer .foot-wrap2 {
        height: auto; } }
    footer .foot-wrap2 .services {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between;
      max-width: 950px;
      margin: 0 auto;
      padding: 17px 40px; }
      @media screen and (max-width: 767px) {
        footer .foot-wrap2 .services .ttl {
          display: block;
          cursor: pointer; }
          footer .foot-wrap2 .services .ttl::after {
            content: "";
            width: 10px;
            height: 10px;
            transform: translateY(-30%) rotate(45deg);
            border-right: 1px solid #ffffff;
            border-bottom: 1px solid #ffffff;
            display: inline-block;
            margin-left: 20px; } }
      @media screen and (max-width: 767px) {
        footer .foot-wrap2 .services {
          flex-direction: column;
          padding: 15px 20px;
          align-content: center;
          justify-content: center;
          text-align: center; } }
      @media screen and (max-width: 767px) {
        footer .foot-wrap2 .services.opened li {
          display: block; } }
      footer .foot-wrap2 .services.opened .ttl {
        margin-bottom: 5px; }
        footer .foot-wrap2 .services.opened .ttl::after {
          transform: translateY(30%) rotate(-135deg); }
      footer .foot-wrap2 .services li {
        font-size: 1.1rem;
        line-height: 1.6rem;
        color: #ffffff;
        font-weight: 500; }
        @media screen and (max-width: 767px) {
          footer .foot-wrap2 .services li {
            display: none; } }
        footer .foot-wrap2 .services li a {
          font-size: 1.1rem;
          line-height: 1.6rem;
          color: #ffffff;
          text-decoration: none;
          font-weight: 500; }
          @media screen and (max-width: 767px) {
            footer .foot-wrap2 .services li a {
              line-height: 2rem; } }
          footer .foot-wrap2 .services li a:hover {
            text-decoration: underline; }
  footer.type_min {
    height: 190px; }
    @media screen and (max-width: 767px) {
      footer.type_min {
        height: 170px; } }
    footer.type_min .foot_wrap {
      padding: 30px 0 0;
      border-top-left-radius: 50% 190px;
      border-top-right-radius: 50% 190px; }
      @media screen and (max-width: 767px) {
        footer.type_min .foot_wrap {
          padding: 20px 0 0;
          border-top-left-radius: 70% 150px;
          border-top-right-radius: 70% 150px; } }
      footer.type_min .foot_wrap h1 {
        margin-bottom: 15px; }
        @media screen and (max-width: 767px) {
          footer.type_min .foot_wrap h1 {
            margin-bottom: 10px; } }

.popup-bnr {
  position: fixed;
  bottom: 70px;
  right: 10px;
  z-index: 1100; }
  @media screen and (max-width: 767px) {
    .popup-bnr {
      width: 200px;
      bottom: 5px;
      right: 5px; } }
  .popup-bnr.hidden {
    display: none; }
  .popup-bnr .inner {
    position: relative; }
    .popup-bnr .inner a:hover {
      opacity: 0.8; }
    .popup-bnr .inner a img {
      box-shadow: 0px 0px 9px rgba(0, 0, 0, 0.29);
      width: 250px; }
    .popup-bnr .inner .closeBtn {
      position: absolute;
      top: -25px;
      right: 0;
      cursor: pointer;
      width: 20px;
      height: 20px; }
      .popup-bnr .inner .closeBtn:hover {
        opacity: 0.8; }
      .popup-bnr .inner .closeBtn img {
        width: 100%; }

.terminal_cta {
  height: 84px;
  position: fixed;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 1000;
  background-color: rgba(255, 243, 243, 0.84);
  opacity: 0;
  visibility: hidden;
  transition: 0.3s; }
  .terminal_cta.-type2 {
    min-height: 84px;
    height: auto;
    background: #032D60;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center; }
    .terminal_cta.-type2 .inner {
      max-width: 993px;
      margin: 0 auto;
      padding: 10px 20px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      gap: 15px;
      align-items: center; }
      @media screen and (max-width: 767px) {
        .terminal_cta.-type2 .inner {
          flex-direction: column;
          gap: 14px;
          padding: 12px 17px; } }
      .terminal_cta.-type2 .inner .left {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        gap: 24px;
        align-items: center; }
        @media screen and (max-width: 767px) {
          .terminal_cta.-type2 .inner .left {
            align-items: flex-start;
            gap: 20px; } }
      .terminal_cta.-type2 .inner .logo img {
        vertical-align: bottom; }
      @media screen and (max-width: 767px) {
        .terminal_cta.-type2 .inner .logo {
          width: 57.28px;
          flex-shrink: 0; } }
      .terminal_cta.-type2 .inner .text {
        color: #fff;
        font-size: 16px;
        font-weight: bold;
        line-height: 1.5; }
        @media screen and (max-width: 767px) {
          .terminal_cta.-type2 .inner .text {
            font-size: 14px; } }
      .terminal_cta.-type2 .inner .terminal_cta_btn a {
        display: inline-block;
        background: #0091C9;
        padding: 9.5px 10px;
        width: 220px;
        border-radius: 4px;
        border: 1px solid #0091C9;
        text-align: center;
        text-decoration: none;
        color: #fff;
        font-size: 16px;
        line-height: 1.5;
        font-weight: bold;
        transition: 0.3s; }
        .terminal_cta.-type2 .inner .terminal_cta_btn a::after {
          content: "";
          display: inline-block;
          width: 13.49px;
          height: 13.69px;
          background-image: url("../images/ico_tab.svg");
          background-size: cover;
          vertical-align: middle;
          margin-left: 12px;
          transform: translateY(-1px);
          transition: 0.3s; }
        .terminal_cta.-type2 .inner .terminal_cta_btn a:hover {
          background: #fff;
          color: #0091C9; }
          .terminal_cta.-type2 .inner .terminal_cta_btn a:hover::after {
            background-image: url("../images/ico_tab_blue.svg"); }
  .terminal_cta.is-show {
    opacity: 1;
    visibility: visible; }
  .terminal_cta .inner {
    height: 100%;
    padding: 18px 20px 12px;
    max-width: 846px;
    margin: 0 auto;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: flex-end; }
    .terminal_cta .inner .download {
      position: relative; }
      .terminal_cta .inner .download a {
        width: 242px;
        line-height: 51px;
        padding: 0 22px;
        text-align: right;
        display: inline-block;
        background-color: #ED1849;
        color: #fff;
        font-size: 1.8rem;
        border-radius: 30px;
        font-weight: bold;
        text-decoration: none;
        border: 1.5px solid #ED1849;
        transition: 0.3s; }
        .terminal_cta .inner .download a:hover {
          background-color: #fff;
          color: #ED1849; }
      .terminal_cta .inner .download .img {
        position: absolute;
        top: -16px;
        left: -21px; }
    .terminal_cta .inner .trial a {
      width: 242px;
      line-height: 51px;
      text-align: center;
      display: inline-block;
      background-color: #fff;
      color: #ED1849;
      font-size: 1.8rem;
      border-radius: 30px;
      font-weight: bold;
      text-decoration: none;
      border: 1.5px solid #ED1849;
      transition: 0.3s; }
      .terminal_cta .inner .trial a:hover {
        background-color: #ED1849;
        color: #fff; }
    .terminal_cta .inner .contact a {
      width: 242px;
      line-height: 54px;
      text-align: center;
      display: inline-block;
      position: relative;
      color: #fff;
      font-size: 1.8rem;
      border-radius: 30px;
      font-weight: bold;
      text-decoration: none;
      transition: 0.3s;
      z-index: 0; }
      .terminal_cta .inner .contact a:hover {
        color: #3B96AA; }
        .terminal_cta .inner .contact a:hover::before {
          opacity: 0; }
      .terminal_cta .inner .contact a::before {
        content: "";
        background: linear-gradient(269deg, #3B96AA 0%, #2E64B3 100%);
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0;
        z-index: -1;
        border-radius: 30px;
        transition: 0.3s; }
      .terminal_cta .inner .contact a::after {
        content: "";
        background-color: #fff;
        border: 1.5px solid #3B96AA;
        position: absolute;
        width: calc(100% - 3px);
        height: calc(100% - 3px);
        left: 0;
        top: 0;
        z-index: -2;
        border-radius: 30px; }

.cta-btn01 a {
  display: inline-block;
  width: 250px;
  line-height: 60px;
  text-align: center;
  font-weight: bold;
  color: #fff;
  font-size: 20px;
  border-radius: 30px;
  text-decoration: none;
  position: relative;
  z-index: 0;
  transition: 0.3s;
  max-width: 100%; }
  @media screen and (max-width: 767px) {
    .cta-btn01 a {
      line-height: 40px;
      font-size: 16px; } }
  .cta-btn01 a:hover {
    color: #0C54A2; }
    .cta-btn01 a:hover::before {
      opacity: 0; }
  .cta-btn01 a::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: -1;
    border-radius: 30px;
    transition: 0.3s;
    background: linear-gradient(101deg, #74DDDD 0%, #0C54A2 100%); }
  .cta-btn01 a::after {
    content: "";
    background-color: #fff;
    position: absolute;
    width: calc(100% - 3px);
    height: calc(100% - 3px);
    left: 0;
    top: 0;
    z-index: -2;
    border-radius: 30px;
    border: 1.5px solid #0C54A2; }

.cta-btn02 a {
  display: inline-block;
  width: 250px;
  line-height: 60px;
  text-align: center;
  font-weight: bold;
  color: #fff;
  font-size: 20px;
  border-radius: 30px;
  text-decoration: none;
  position: relative;
  z-index: 0;
  transition: 0.3s;
  max-width: 100%; }
  @media screen and (max-width: 767px) {
    .cta-btn02 a {
      line-height: 40px;
      font-size: 16px; } }
  .cta-btn02 a:hover {
    color: #62B65D; }
    .cta-btn02 a:hover::before {
      opacity: 0; }
  .cta-btn02 a::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: -1;
    border-radius: 30px;
    transition: 0.3s;
    background: linear-gradient(101deg, #FFE34B 0%, #62B65D 100%); }
  .cta-btn02 a::after {
    content: "";
    background-color: #fff;
    position: absolute;
    width: calc(100% - 3px);
    height: calc(100% - 3px);
    left: 0;
    top: 0;
    z-index: -2;
    border-radius: 30px;
    border: 1.5px solid #62B65D; }

.cta-btn03 a {
  display: inline-block;
  width: 250px;
  line-height: 60px;
  text-align: center;
  font-weight: bold;
  color: #fff;
  font-size: 20px;
  border-radius: 30px;
  text-decoration: none;
  position: relative;
  z-index: 0;
  transition: 0.3s;
  max-width: 100%; }
  @media screen and (max-width: 767px) {
    .cta-btn03 a {
      line-height: 40px;
      font-size: 16px; } }
  .cta-btn03 a:hover {
    color: #EE1F4B; }
    .cta-btn03 a:hover::before {
      opacity: 0; }
  .cta-btn03 a::before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    z-index: -1;
    border-radius: 30px;
    transition: 0.3s;
    background: linear-gradient(101deg, #FE835F 0%, #EE1F4B 100%); }
  .cta-btn03 a::after {
    content: "";
    background-color: #fff;
    position: absolute;
    width: calc(100% - 3px);
    height: calc(100% - 3px);
    left: 0;
    top: 0;
    z-index: -2;
    border-radius: 30px;
    border: 1.5px solid #EE1F4B; }

section.cta01 {
  background: linear-gradient(91deg, #CEDFEF 0%, #EAD1E7 100%);
  padding: 35px 40px 40px; }
  @media screen and (max-width: 767px) {
    section.cta01 {
      padding: 30px 12px; } }
  section.cta01 .inner {
    max-width: 1020px;
    margin: 0 auto;
    background-color: transparent;
    padding: 0; }
    section.cta01 .inner .title {
      text-align: center;
      margin-bottom: 55px; }
      section.cta01 .inner .title span {
        position: relative;
        font-size: 3rem;
        line-height: 4.4rem;
        font-weight: bold; }
        section.cta01 .inner .title span::after {
          content: "";
          position: absolute;
          width: 100%;
          height: 8px;
          background-color: #ED1849;
          margin-top: 10px;
          display: block;
          left: 50%;
          transform: translateX(-50%); }
          @media screen and (max-width: 767px) {
            section.cta01 .inner .title span::after {
              position: static;
              transform: none; } }
    section.cta01 .inner .flexbox {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 767px) {
        section.cta01 .inner .flexbox {
          flex-direction: column; } }
      section.cta01 .inner .flexbox .item {
        width: calc((100% - 60px) / 2);
        min-height: 273px;
        border-radius: 20px;
        padding: 19px 22px 15px;
        box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);
        position: relative;
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        flex-direction: column;
        justify-content: space-between; }
        @media screen and (max-width: 767px) {
          section.cta01 .inner .flexbox .item {
            width: 100%;
            min-height: initial;
            padding: 19px 20px 15px; } }
        section.cta01 .inner .flexbox .item .btn {
          text-align: center; }
        section.cta01 .inner .flexbox .item.item01 {
          background-color: #EAF3F6;
          position: relative; }
          @media screen and (max-width: 767px) {
            section.cta01 .inner .flexbox .item.item01 {
              margin-bottom: 20px; } }
          section.cta01 .inner .flexbox .item.item01 .img {
            position: absolute;
            top: 5px;
            left: -50px; }
            @media screen and (max-width: 767px) {
              section.cta01 .inner .flexbox .item.item01 .img {
                position: static;
                text-align: center;
                margin-bottom: 20px; } }
          section.cta01 .inner .flexbox .item.item01 .txt-area {
            padding-left: 132px; }
            @media screen and (max-width: 767px) {
              section.cta01 .inner .flexbox .item.item01 .txt-area {
                padding-left: 0; } }
            section.cta01 .inner .flexbox .item.item01 .txt-area h3 {
              font-size: 2.2rem;
              line-height: 3.2rem;
              font-weight: bold;
              margin-bottom: 17px;
              text-align: center; }
              @media screen and (max-width: 767px) {
                section.cta01 .inner .flexbox .item.item01 .txt-area h3 {
                  text-align: center; } }
              section.cta01 .inner .flexbox .item.item01 .txt-area h3::after {
                content: "";
                width: 94px;
                height: 3px;
                background: linear-gradient(90deg, #74DDDD 0%, #0C54A2 100%);
                display: block;
                margin: 18px auto; }
            section.cta01 .inner .flexbox .item.item01 .txt-area p {
              font-size: 1.4rem;
              line-height: 2.4rem;
              font-weight: bold;
              margin-bottom: 20px;
              margin-left: 15px; }
              @media screen and (max-width: 767px) {
                section.cta01 .inner .flexbox .item.item01 .txt-area p {
                  margin-left: 0; } }
            section.cta01 .inner .flexbox .item.item01 .txt-area ul {
              padding-left: 35px;
              margin-bottom: 20px; }
              section.cta01 .inner .flexbox .item.item01 .txt-area ul li {
                list-style: disc;
                font-size: 1.4rem;
                line-height: 2.4rem;
                font-weight: bold; }
        section.cta01 .inner .flexbox .item.item02 {
          background-color: #F1F6EB;
          position: relative; }
          section.cta01 .inner .flexbox .item.item02 .img {
            position: absolute;
            bottom: 0;
            left: 0; }
            @media screen and (max-width: 767px) {
              section.cta01 .inner .flexbox .item.item02 .img {
                position: static;
                text-align: center;
                margin-bottom: 20px; } }
            section.cta01 .inner .flexbox .item.item02 .img img {
              vertical-align: bottom; }
          section.cta01 .inner .flexbox .item.item02 .txt-area {
            padding-left: 173px; }
            @media screen and (max-width: 767px) {
              section.cta01 .inner .flexbox .item.item02 .txt-area {
                padding-left: 0; } }
            section.cta01 .inner .flexbox .item.item02 .txt-area h3 {
              font-size: 2.2rem;
              line-height: 3.2rem;
              font-weight: bold;
              margin-bottom: 17px;
              text-align: center; }
              @media screen and (max-width: 767px) {
                section.cta01 .inner .flexbox .item.item02 .txt-area h3 {
                  text-align: center; } }
              section.cta01 .inner .flexbox .item.item02 .txt-area h3::after {
                content: "";
                display: block;
                width: 94px;
                height: 3px;
                margin: 18px auto;
                background: linear-gradient(90deg, #FAE14B 0%, #63B65D 100%); }
            section.cta01 .inner .flexbox .item.item02 .txt-area p {
              font-size: 1.4rem;
              line-height: 2.4rem;
              font-weight: bold;
              margin-bottom: 20px; }

section.cta02 {
  background: linear-gradient(91deg, #C9E2CD 0%, #EDECBE 100%);
  padding: 35px 40px 20px; }
  @media screen and (max-width: 767px) {
    section.cta02 {
      padding: 30px 12px; } }
  section.cta02 .inner {
    max-width: 1100px;
    margin: 0 auto;
    background-color: #EAF3F6;
    padding: 27px 36px 26px;
    border-radius: 20px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);
    position: relative; }
    @media screen and (max-width: 767px) {
      section.cta02 .inner {
        padding: 15px 20px 26px; } }
    section.cta02 .inner .img {
      position: absolute;
      top: -47px;
      left: 37px; }
      @media screen and (max-width: 767px) {
        section.cta02 .inner .img {
          position: static;
          margin-bottom: 20px;
          text-align: center; } }
    section.cta02 .inner .txt-area {
      padding-left: 356px; }
      @media screen and (max-width: 767px) {
        section.cta02 .inner .txt-area {
          padding-left: 0; } }
      section.cta02 .inner .txt-area h2 {
        margin-bottom: 46px;
        text-align: center; }
        @media screen and (max-width: 767px) {
          section.cta02 .inner .txt-area h2 {
            margin-bottom: 35px; } }
        section.cta02 .inner .txt-area h2 span {
          font-size: 3rem;
          line-height: 4.4rem;
          position: relative;
          font-weight: bold; }
          section.cta02 .inner .txt-area h2 span::after {
            content: "";
            position: absolute;
            width: 100%;
            height: 3px;
            background: linear-gradient(90deg, #ED1849 0%, #FF8A60 100%);
            margin-top: 11px;
            display: block;
            left: 50%;
            transform: translateX(-50%); }
            @media screen and (max-width: 767px) {
              section.cta02 .inner .txt-area h2 span::after {
                position: static;
                transform: none; } }
      section.cta02 .inner .txt-area .flexbox {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between; }
        @media (max-width: 1000px) {
          section.cta02 .inner .txt-area .flexbox {
            flex-direction: column; } }
        section.cta02 .inner .txt-area .flexbox p {
          width: 413px;
          margin-right: 13px;
          font-size: 1.8rem;
          line-height: 2.9rem;
          font-weight: bold; }
          @media (max-width: 1000px) {
            section.cta02 .inner .txt-area .flexbox p {
              width: 100%;
              margin-bottom: 20px;
              margin-right: 0; } }
        section.cta02 .inner .txt-area .flexbox .btn {
          flex-shrink: 0; }
          @media (max-width: 1000px) {
            section.cta02 .inner .txt-area .flexbox .btn {
              margin: 0 auto;
              text-align: center; } }
          @media screen and (max-width: 767px) {
            section.cta02 .inner .txt-area .flexbox .btn {
              width: 100%;
              max-width: 250px; } }

section.cta03 {
  background: linear-gradient(91deg, #C387B6 0%, #F9C3B5 100%);
  padding: 35px 40px 20px; }
  @media screen and (max-width: 767px) {
    section.cta03 {
      padding: 30px 12px; } }
  section.cta03 .inner {
    max-width: 1100px;
    margin: 0 auto;
    background-color: #FFFFF2;
    padding: 27px 36px 36px;
    border-radius: 20px;
    box-shadow: 0 5px 10px rgba(0, 0, 0, 0.3);
    position: relative; }
    @media screen and (max-width: 767px) {
      section.cta03 .inner {
        padding: 15px 20px 26px; } }
    section.cta03 .inner .img {
      position: absolute;
      bottom: 0;
      left: 0; }
      section.cta03 .inner .img img {
        vertical-align: bottom; }
      @media screen and (max-width: 767px) {
        section.cta03 .inner .img {
          position: static;
          margin-bottom: 20px;
          text-align: center;
          margin-top: -50px; } }
    section.cta03 .inner .txt-area {
      padding-left: 331px; }
      @media screen and (max-width: 767px) {
        section.cta03 .inner .txt-area {
          padding-left: 0; } }
      section.cta03 .inner .txt-area h2 {
        margin-bottom: 42px;
        text-align: center; }
        @media screen and (max-width: 767px) {
          section.cta03 .inner .txt-area h2 {
            margin-bottom: 35px; } }
        section.cta03 .inner .txt-area h2 span {
          font-size: 3rem;
          line-height: 4.4rem;
          position: relative;
          font-weight: bold; }
          section.cta03 .inner .txt-area h2 span::after {
            content: "";
            position: absolute;
            width: 100%;
            height: 3px;
            background: linear-gradient(90deg, #74DDDD 0%, #0C54A2 100%);
            margin-top: 11px;
            display: block;
            left: 50%;
            transform: translateX(-50%); }
            @media screen and (max-width: 767px) {
              section.cta03 .inner .txt-area h2 span::after {
                position: static;
                transform: none; } }
      section.cta03 .inner .txt-area .flexbox {
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        justify-content: space-between; }
        @media (max-width: 1000px) {
          section.cta03 .inner .txt-area .flexbox {
            flex-direction: column; } }
        section.cta03 .inner .txt-area .flexbox p {
          width: 437px;
          margin-right: 13px;
          font-size: 1.8rem;
          line-height: 2.9rem;
          font-weight: bold; }
          @media (max-width: 1000px) {
            section.cta03 .inner .txt-area .flexbox p {
              width: 100%;
              margin-bottom: 20px;
              margin-right: 0; } }
        section.cta03 .inner .txt-area .flexbox .btn {
          flex-shrink: 0; }
          @media (max-width: 1000px) {
            section.cta03 .inner .txt-area .flexbox .btn {
              margin: 0 auto;
              text-align: center; } }
          @media screen and (max-width: 767px) {
            section.cta03 .inner .txt-area .flexbox .btn {
              width: 100%;
              max-width: 250px; } }

section.cta04 {
  background: linear-gradient(91deg, #CEDFEF 0%, #EAD1E7 100%);
  padding: 35px 40px 40px; }
  @media screen and (max-width: 767px) {
    section.cta04 {
      padding: 30px 12px; } }
  section.cta04 .inner {
    max-width: 1020px;
    margin: 0 auto;
    background-color: transparent;
    padding: 0; }
    section.cta04 .inner .title {
      text-align: center;
      font-size: 3rem;
      line-height: 4.4rem;
      font-weight: bold;
      margin-bottom: 32px; }
    section.cta04 .inner .flexbox {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 767px) {
        section.cta04 .inner .flexbox {
          flex-direction: column; } }
      section.cta04 .inner .flexbox .item {
        width: calc((100% - 60px) / 2);
        border-radius: 25px;
        padding: 28px 10px 33px; }
        @media screen and (max-width: 767px) {
          section.cta04 .inner .flexbox .item {
            width: 100%;
            min-height: initial;
            padding: 19px 20px 15px; } }
        section.cta04 .inner .flexbox .item .btn {
          text-align: center; }
        section.cta04 .inner .flexbox .item h3 {
          font-size: 2.2rem;
          line-height: 3.2rem;
          font-weight: bold;
          margin-bottom: 17px;
          text-align: center; }
        section.cta04 .inner .flexbox .item.item01 {
          background-color: #EAF3F6;
          position: relative; }
          @media screen and (max-width: 767px) {
            section.cta04 .inner .flexbox .item.item01 {
              margin-bottom: 20px; } }
        section.cta04 .inner .flexbox .item.item02 {
          background-color: #F1F6EB;
          position: relative; }

.mt-100 {
  margin-top: 100px !important; }

@media screen and (max-width: 767px) {
  .mt-sm-60 {
    margin-top: 60px !important; } }

.breadcrumb {
  max-width: 1100px;
  padding: 10px 40px 10px;
  margin: 0 auto; }
  @media screen and (max-width: 767px) {
    .breadcrumb {
      padding: 10px 12px; } }
  .breadcrumb ul {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap; }
    .breadcrumb ul li {
      font-size: 13px;
      line-height: 1.5;
      color: #000; }
      .breadcrumb ul li:not(:last-of-type) {
        color: #000; }
        .breadcrumb ul li:not(:last-of-type)::after {
          display: inline-block;
          content: ">";
          margin: 0 7px;
          float: right;
          -webkit-box-sizing: border-box;
          box-sizing: border-box; }
      .breadcrumb ul li a {
        color: #000;
        text-decoration: none; }
        .breadcrumb ul li a:hover {
          text-decoration: underline; }

.planLgwan .planType {
  display: flex;
  display: -ms-flex;
  display: -webkit-flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: center; }
  .planLgwan .planType .blank {
    border: none;
    border-bottom: 1px solid #707070;
    flex-shrink: 0;
    background-color: #ffffff;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: flex-end;
    padding: 10px;
    padding-left: 35px; }
    .planLgwan .planType .blank .desc {
      text-align: left;
      font-size: 1.4rem;
      line-height: 2.1rem; }
  .planLgwan .planType > div {
    background-color: #ffffff;
    flex-shrink: 1;
    width: 235px;
    height: 175px;
    border: 1px solid #707070;
    border-right: none;
    text-align: center;
    padding: 16px 10px 14px;
    display: flex;
    display: -ms-flex;
    display: -webkit-flex;
    flex-direction: column; }
    .planLgwan .planType > div:last-of-type {
      border-right: 1px solid #707070; }
    .planLgwan .planType > div .price {
      margin-top: 7px;
      font-family: "Arial";
      font-weight: bold;
      font-size: 3.6rem;
      line-height: 1;
      margin-bottom: 16px;
      color: #3B4043;
      overflow: hidden; }
      .planLgwan .planType > div .price::before {
        content: "¥";
        font-size: 2.2rem;
        margin-right: 9px; }
    .planLgwan .planType > div .initial {
      font-size: 1.1rem;
      line-height: 2.4rem; }
    .planLgwan .planType > div h3 {
      font-size: 1.8rem;
      line-height: 2.8rem;
      font-weight: normal;
      margin: 0 0 11px;
      padding-left: 0; }
      .planLgwan .planType > div h3::before {
        display: none; }
    .planLgwan .planType > div .reccomend {
      background-color: #ED1849;
      color: #fff;
      font-size: 1.1rem;
      width: 152px;
      padding: 10px 0;
      border-radius: 38px;
      margin: 0 auto; }
.planLgwan .planTableWrapper {
  margin-bottom: 30px; }
.planLgwan .parent {
  width: 100%;
  table-layout: fixed; }
.planLgwan .txtRed {
  color: #ED1849; }
.planLgwan .parentTbody > tr {
  border-bottom: 1px dashed #707070; }
  .planLgwan .parentTbody > tr:nth-of-type(even) {
    background-color: #F6F6F6; }
  .planLgwan .parentTbody > tr:last-of-type {
    border-bottom: none; }
  .planLgwan .parentTbody > tr > th {
    font-size: 1.4rem;
    padding: 25px 18px;
    width: 235px;
    text-align: left;
    position: relative;
    vertical-align: middle; }
    @media screen and (max-width: 1065px) {
      .planLgwan .parentTbody > tr > th {
        font-size: 1.1rem;
        padding: 30px 10px;
        width: 43%; } }
    .planLgwan .parentTbody > tr > th span {
      display: block;
      font-size: 1.1rem;
      position: absolute;
      bottom: 10px; }
      @media screen and (max-width: 1065px) {
        .planLgwan .parentTbody > tr > th span {
          position: initial;
          font-size: 0.9rem;
          line-height: 1.2rem;
          bottom: initial;
          margin-top: 5px; } }
  .planLgwan .parentTbody > tr > td {
    text-align: center;
    font-size: 1.6rem;
    vertical-align: middle;
    padding: 25px 10px; }
    @media screen and (max-width: 767px) {
      .planLgwan .parentTbody > tr > td {
        padding: 16px 5px; } }
    .planLgwan .parentTbody > tr > td .kome {
      position: relative;
      display: inline-block; }
      .planLgwan .parentTbody > tr > td .kome::after {
        content: "※";
        display: inline-block;
        margin-left: 3px;
        position: absolute;
        bottom: 0;
        right: -15px; }
    .planLgwan .parentTbody > tr > td .txtRed {
      color: #ED1849;
      font-size: 1rem;
      font-weight: bold; }
.planLgwan .desc {
  padding-top: 3px;
  padding-bottom: 10px;
  font-size: 1.1rem; }
.planLgwan .desc2 {
  font-size: 1.4rem; }
.planLgwan .desc3 {
  font-size: 1.1rem;
  line-height: 2.4rem;
  text-align: left;
  max-width: 160px;
  margin: 14px auto 0; }
.planLgwan #planselect {
  width: 100%;
  height: 46px;
  border: 1px solid #707070;
  margin-bottom: 20px;
  padding: 10px 20px;
  font-size: 1.8rem;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url("../images/select.png") right 37px top 50% no-repeat #F6F6F6;
  outline: none; }
.planLgwan select::-ms-expand {
  display: none; }
.planLgwan .planboxWrapper {
  display: none;
  margin-bottom: 30px; }
  .planLgwan .planboxWrapper.active {
    display: block; }
  .planLgwan .planboxWrapper .planbox {
    border: 1px solid #707070;
    text-align: center;
    padding: 16px 10px 14px; }
    .planLgwan .planboxWrapper .planbox .prices {
      margin-top: auto; }
    .planLgwan .planboxWrapper .planbox .price {
      font-family: "Arial";
      font-weight: bold;
      font-size: 3.6rem;
      line-height: 1;
      margin-bottom: 16px;
      overflow: hidden; }
      .planLgwan .planboxWrapper .planbox .price::before {
        content: "¥";
        font-size: 2.2rem;
        margin-right: 9px; }
    .planLgwan .planboxWrapper .planbox .initial {
      font-size: 1.1rem;
      line-height: 2.4rem; }
    .planLgwan .planboxWrapper .planbox h3 {
      font-size: 1.8rem;
      line-height: 2.8rem;
      font-weight: normal;
      margin: 0 0 11px;
      padding-left: 0; }
      .planLgwan .planboxWrapper .planbox h3::before {
        display: none; }
    .planLgwan .planboxWrapper .planbox .reccomend {
      background-color: #ED1849;
      color: #fff;
      font-size: 1.1rem;
      width: 152px;
      padding: 10px 0;
      border-radius: 38px;
      margin: 0 auto; }
      @media screen and (max-width: 1065px) {
        .planLgwan .planboxWrapper .planbox .reccomend {
          margin-bottom: 24px; } }

.txtBold {
  font-weight: bold !important; }

.txtCenter {
  text-align: center !important; }

.txtLeft {
  text-align: left !important; }

.txtRed {
  color: #ED1849 !important; }

.font10 {
  font-size: 1rem !important;
  line-height: 1.6rem !important; }

.font11 {
  font-size: 1.1rem !important;
  line-height: 2.1rem !important; }

.font13 {
  font-size: 1.3rem !important; }

.font14 {
  font-size: 1.4rem !important; }

.font20 {
  font-size: 2rem !important; }

.font22 {
  font-size: 2.2rem !important; }

.bnr01 {
  display: table;
  margin: -20px auto 80px;
  text-align: center;
  padding: 0 40px; }
  @media screen and (max-width: 767px) {
    .bnr01 {
      margin: -20px auto 60px;
      padding: 0 12px; } }
  .bnr01 img:hover {
    opacity: 0.7; }

.useful-container {
  background: #F2F5F9;
  border-radius: 10px;
  padding: 60px 24px 35px;
  position: relative;
  margin-top: 65px; }
  @media screen and (max-width: 767px) {
    .useful-container {
      margin: 60px 10px;
      padding: 60px 15px 0; } }
  .useful-container .useful-title {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 330px;
    max-width: 100%;
    background: #ED1849;
    border-radius: 32px;
    color: #fff;
    font-size: 2.2rem;
    line-height: 3.2rem;
    text-align: center;
    font-weight: bold;
    padding: 15.5px 10px; }
  .useful-container .useful-txt {
    font-size: 1.8rem;
    line-height: 2.8rem; }
    @media screen and (max-width: 767px) {
      .useful-container .useful-txt {
        margin-bottom: 20px; } }
  .useful-container .useful-row {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    position: relative; }
    @media screen and (max-width: 767px) {
      .useful-container .useful-row {
        flex-direction: column; } }
  .useful-container .useful-left {
    width: 420px;
    margin-right: 22px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    flex-direction: column; }
    @media screen and (max-width: 767px) {
      .useful-container .useful-left {
        width: 100%; } }
  .useful-container .switch-btn-area .switch-btn {
    appearance: none;
    outline: none;
    display: block;
    width: 330px;
    max-width: 100%;
    color: rgba(255, 255, 255, 0.71);
    font-size: 2rem;
    line-height: 2.9rem;
    background: rgba(18, 148, 174, 0.39);
    border: none;
    margin: 0 auto 19px;
    padding: 13.5px 10px 13.5px 27px;
    cursor: pointer;
    border-radius: 30px;
    text-align: left;
    font-weight: bold; }
    @media screen and (max-width: 767px) {
      .useful-container .switch-btn-area .switch-btn {
        padding: 13.5px 5px 13.5px 17px; } }
    .useful-container .switch-btn-area .switch-btn:hover {
      color: #fff;
      background: #029B94; }
      .useful-container .switch-btn-area .switch-btn:hover::before {
        opacity: 1;
        color: #029B94; }
    .useful-container .switch-btn-area .switch-btn.active {
      color: #fff;
      background: #029B94; }
      .useful-container .switch-btn-area .switch-btn.active::before {
        opacity: 1;
        color: #029B94; }
    .useful-container .switch-btn-area .switch-btn::before {
      content: "!";
      width: 27px;
      height: 27px;
      display: inline-block;
      border-radius: 50%;
      background: #fff;
      color: rgba(18, 148, 174, 0.55);
      opacity: 0.45;
      text-align: center;
      margin-right: 20px; }
      @media screen and (max-width: 767px) {
        .useful-container .switch-btn-area .switch-btn::before {
          margin-right: 9px; } }
    .useful-container .switch-btn-area .switch-btn:last-of-type {
      margin-bottom: 0; }
  .useful-container .useful-img {
    position: absolute;
    bottom: -23px;
    left: 124px; }
    @media screen and (max-width: 767px) {
      .useful-container .useful-img {
        position: static;
        margin-left: -13px;
        margin-top: -11px; } }
    .useful-container .useful-img.useful-img-02 {
      left: 134px;
      bottom: -40px; }
    .useful-container .useful-img.useful-img-03 {
      left: 87px;
      bottom: 0; }
    .useful-container .useful-img.useful-img-04 {
      left: 100px;
      bottom: -55px; }
  .useful-container .useful-right {
    width: 440px;
    margin-right: 8px; }
    @media screen and (max-width: 767px) {
      .useful-container .useful-right {
        width: 100%;
        margin-top: 30px; } }
  .useful-container .useful-item {
    background: #fff;
    border-radius: 10px;
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); }
  .useful-container .useful-item-img img {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    width: 100%; }
  .useful-container .useful-item-txtarea {
    padding: 7px 27px 45px; }
    @media screen and (max-width: 767px) {
      .useful-container .useful-item-txtarea {
        padding: 7px 27px 20px; } }
  .useful-container .useful-item-title {
    font-size: 2.4rem;
    font-weight: bold;
    line-height: 3.5rem;
    text-align: center;
    margin-bottom: 25px; }
    @media screen and (max-width: 767px) {
      .useful-container .useful-item-title {
        margin-bottom: 1px; } }
  .useful-container .useful-item-txt {
    font-size: 1.6rem;
    line-height: 2.3rem;
    margin-bottom: 0; }
  .useful-container .useful-item-btn {
    display: block;
    margin: 0 auto;
    width: 162px;
    border-radius: 32px;
    color: #fff;
    font-weight: bold;
    font-size: 1.4rem;
    line-height: 2rem;
    padding: 10.5px 10px;
    background: #1F8AC2;
    text-align: center;
    margin-top: 43px;
    border: 1px solid #1F8AC2; }
    @media screen and (max-width: 767px) {
      .useful-container .useful-item-btn {
        margin-top: 25px; } }
    .useful-container .useful-item-btn:hover {
      text-decoration: none;
      background: #fff;
      color: #1F8AC2; }
  .useful-container .useful-item-list {
    margin-top: 10px;
    padding-left: 6px; }
    .useful-container .useful-item-list .useful-item-listitem {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 10px;
      list-style: none;
      margin-left: 0; }
      @media screen and (max-width: 767px) {
        .useful-container .useful-item-list .useful-item-listitem {
          flex-direction: column;
          align-items: flex-start; } }
      .useful-container .useful-item-list .useful-item-listitem:last-of-type {
        margin-bottom: 0; }
      .useful-container .useful-item-list .useful-item-listitem p {
        margin-bottom: 0; }
      .useful-container .useful-item-list .useful-item-listitem .useful-item-btn {
        margin-top: 0;
        margin: 0; }
        @media screen and (max-width: 767px) {
          .useful-container .useful-item-list .useful-item-listitem .useful-item-btn {
            align-self: center; } }

.support_flow-container {
  background: #F2F5F9;
  position: relative;
  margin-bottom: 135px; }
  @media screen and (max-width: 767px) {
    .support_flow-container {
      margin-bottom: 95px; } }
  .support_flow-container:last-of-type::after {
    display: none; }
  .support_flow-container::after {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 90px 470px 0 470px;
    border-color: #f2f5f9 transparent transparent transparent;
    display: block;
    bottom: 0;
    left: 0;
    transform: translate(0, 99.99%); }
    @media (max-width: 1100px) {
      .support_flow-container::after {
        border-width: 90px calc(470/1100 * 100vw) 0 calc(470/1100 * 100vw);
        left: 50%;
        transform: translate(-50%, 99.99%); } }
    @media (max-width: 1000px) {
      .support_flow-container::after {
        border-width: 90px calc(304/768 * 100vw) 0 calc(304/768 * 100vw); } }
    @media screen and (max-width: 767px) {
      .support_flow-container::after {
        border-width: 50px calc(171/390 * 100vw) 0 calc(171/390 * 100vw); } }
  .support_flow-container .support_flow-titlearea {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center; }
    @media screen and (max-width: 767px) {
      .support_flow-container .support_flow-titlearea {
        display: block; } }
  .support_flow-container .support_flow-title {
    background: #ED1849;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 260px;
    min-height: 100px; }
    @media screen and (max-width: 767px) {
      .support_flow-container .support_flow-title {
        padding: 30px 20px;
        width: 100%; } }
    .support_flow-container .support_flow-title h3 {
      font-size: 2.2rem;
      line-height: 3.2rem;
      color: #fff;
      font-weight: bold; }
  .support_flow-container .support_flow-description {
    width: calc(100% - 260px);
    padding: 7px 21px 7px 17px;
    line-height: 2.8rem; }
    @media screen and (max-width: 767px) {
      .support_flow-container .support_flow-description {
        width: 100%;
        padding: 10px 10px 20px; } }
  .support_flow-container .support_flow-detailarea {
    padding: 30px 27px; }
    @media screen and (max-width: 767px) {
      .support_flow-container .support_flow-detailarea {
        padding: 30px 10px; } }
  .support_flow-container .support_flow-h4 {
    font-size: 2.2rem;
    line-height: 3.5rem;
    padding-left: 8px;
    border-left: 3px solid #ED1849;
    font-weight: bold;
    margin-bottom: 30px; }
  .support_flow-container .support_flow-txt {
    line-height: 2.8rem; }
  .support_flow-container .support_flow-row {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    max-width: 864px;
    margin: 0 auto;
    justify-content: space-between; }
    @media screen and (max-width: 767px) {
      .support_flow-container .support_flow-row {
        display: block; } }
  .support_flow-container .support_flow-item {
    width: calc((100% - 50px) / 2);
    background: #fff;
    border: #D4D4D4 solid 1px;
    padding: 15px 13.5px 20px; }
    @media screen and (max-width: 767px) {
      .support_flow-container .support_flow-item {
        width: 100%;
        margin-bottom: 20px; } }
    .support_flow-container .support_flow-item.-col12 {
      width: 100%; }
      .support_flow-container .support_flow-item.-col12 .support_flow-item-txt {
        text-align: center; }
        @media screen and (max-width: 767px) {
          .support_flow-container .support_flow-item.-col12 .support_flow-item-txt {
            text-align: left; } }
  .support_flow-container .support_flow-plan {
    width: calc((100% - 50px) / 2); }
    @media screen and (max-width: 767px) {
      .support_flow-container .support_flow-plan {
        width: 100%;
        margin-bottom: 60px; } }
    .support_flow-container .support_flow-plan .support_flow-item {
      width: 100%;
      margin-bottom: 20px; }
      .support_flow-container .support_flow-plan .support_flow-item .support_flow-item-txt {
        min-height: 5em; }
        @media screen and (max-width: 767px) {
          .support_flow-container .support_flow-plan .support_flow-item .support_flow-item-txt {
            min-height: auto; } }
    .support_flow-container .support_flow-plan .flex {
      display: flex;
      justify-content: space-between;
      align-items: center;
      position: relative; }
      @media screen and (max-width: 767px) {
        .support_flow-container .support_flow-plan .flex {
          display: block; } }
      .support_flow-container .support_flow-plan .flex .img01, .support_flow-container .support_flow-plan .flex .img02 {
        position: absolute;
        right: 0;
        top: -20px; }
        @media screen and (max-width: 767px) {
          .support_flow-container .support_flow-plan .flex .img01, .support_flow-container .support_flow-plan .flex .img02 {
            position: static; } }
      @media (max-width: 1000px) {
        .support_flow-container .support_flow-plan .flex .img01 {
          width: calc(150/1000 * 100vw); } }
      @media screen and (max-width: 767px) {
        .support_flow-container .support_flow-plan .flex .img01 {
          width: auto; } }
      @media (max-width: 1000px) {
        .support_flow-container .support_flow-plan .flex .img02 {
          width: calc(120/1000 * 100vw); } }
      @media screen and (max-width: 767px) {
        .support_flow-container .support_flow-plan .flex .img02 {
          width: auto; } }
    .support_flow-container .support_flow-plan h4 {
      font-size: 1.8rem;
      color: #FFF;
      top: -20px;
      position: relative;
      padding: 15px 10px;
      border-radius: 100px;
      margin-right: 15px;
      flex-shrink: 0;
      margin-bottom: 40px;
      margin-top: 28px;
      text-align: center;
      width: 198px; }
      @media screen and (max-width: 767px) {
        .support_flow-container .support_flow-plan h4 {
          margin-right: 0;
          text-align: center;
          margin-bottom: 0;
          margin-top: 0;
          width: 100%; } }
      .support_flow-container .support_flow-plan h4.blue {
        background: #1673B4; }
      .support_flow-container .support_flow-plan h4.red {
        background: #ED1849; }
    @media screen and (max-width: 767px) {
      .support_flow-container .support_flow-plan figure {
        text-align: center; } }
    .support_flow-container .support_flow-plan .support_flow-item-title {
      border-left: #ED1849 solid 3px;
      text-align: left;
      padding-left: 10px; }
      .support_flow-container .support_flow-plan .support_flow-item-title::after {
        display: none; }
  .support_flow-container .support_flow-item-title {
    font-size: 2.2rem;
    line-height: 3.2rem;
    font-weight: bold;
    text-align: center;
    margin-bottom: 25px; }
    .support_flow-container .support_flow-item-title::after {
      content: "";
      width: 90px;
      height: 4px;
      display: block;
      margin: 12px auto 0;
      background: #ED1849; }
  .support_flow-container .support_flow-item-txt {
    font-size: 1.6rem;
    line-height: 2.3rem;
    margin-bottom: 20px; }
  .support_flow-container .support_flow-item-btn {
    width: 193px;
    display: block;
    border: 2px solid #ED1849;
    color: #ED1849;
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 2.4rem;
    padding: 7.5px 10px;
    background: #fff;
    margin: 0 auto;
    text-align: center;
    border-radius: 26px; }
    .support_flow-container .support_flow-item-btn:hover {
      text-decoration: none;
      background: linear-gradient(99deg, #ED1849 0%, #E96432 100%);
      border: #ffffff 2px solid;
      color: #ffffff; }

.fv_area {
  max-width: 1099px;
  margin: 20px auto 55px;
  padding: 0 40px;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  justify-content: space-between; }
  @media screen and (max-width: 767px) {
    .fv_area {
      margin: calc(15/375 * 100vw) 0;
      padding: 0 calc(12/375 * 100vw);
      flex-direction: column; } }
  .fv_area .text_area {
    width: calc(100% - 374px);
    margin-right: 14px; }
    @media screen and (max-width: 767px) {
      .fv_area .text_area {
        width: 100%;
        margin-right: 0; } }
    .fv_area .text_area .title {
      font-size: 3.4rem;
      line-height: 1.441176;
      font-weight: bold;
      margin-bottom: 56px; }
      @media (max-width: 1065px) {
        .fv_area .text_area .title {
          font-size: calc(30/1065 * 100vw);
          margin-bottom: calc(48/1065 * 100vw); } }
      @media screen and (max-width: 767px) {
        .fv_area .text_area .title {
          font-size: calc(22/375 * 100vw);
          margin-bottom: calc(30/375 * 100vw); } }
    .fv_area .text_area .sub_title {
      font-size: 4.4rem;
      line-height: 1.409409;
      margin-bottom: 21px;
      font-weight: bold; }
      @media (max-width: 1065px) {
        .fv_area .text_area .sub_title {
          font-size: calc(34/1065 * 100vw);
          margin-bottom: calc(20/1065 * 100vw); } }
      @media screen and (max-width: 767px) {
        .fv_area .text_area .sub_title {
          font-size: calc(28 / 375 * 100vw);
          margin-bottom: calc(20 / 375 * 100vw); } }
      .fv_area .text_area .sub_title .font_small {
        font-size: 3.3rem; }
        @media (max-width: 1065px) {
          .fv_area .text_area .sub_title .font_small {
            font-size: calc(26/1065 * 100vw); } }
        @media screen and (max-width: 767px) {
          .fv_area .text_area .sub_title .font_small {
            font-size: calc(20 / 375 * 100vw); } }
  .fv_area .point_area {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex; }
    .fv_area .point_area .point_item {
      display: block;
      width: 139px;
      height: 139px;
      border-radius: 50%;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: center;
      align-items: center;
      background: #ED184A;
      text-decoration: none; }
      @media (max-width: 1065px) {
        .fv_area .point_area .point_item {
          width: calc(120/1065 * 100vw);
          height: calc(120/1065 * 100vw); } }
      @media screen and (max-width: 767px) {
        .fv_area .point_area .point_item {
          width: calc(100/375 * 100vw);
          height: calc(100/375 * 100vw);
          margin-bottom: calc(40/375 * 100vw); } }
      .fv_area .point_area .point_item:not(:first-of-type) {
        margin-left: 27px; }
        @media (max-width: 1065px) {
          .fv_area .point_area .point_item:not(:first-of-type) {
            margin-left: calc(18/1065 * 100vw); } }
        @media screen and (max-width: 767px) {
          .fv_area .point_area .point_item:not(:first-of-type) {
            margin-left: calc(20/375 * 100vw); } }
    .fv_area .point_area a.point_item {
      position: relative; }
      .fv_area .point_area a.point_item:hover::after {
        transform: translate(-50%, 5px); }
      .fv_area .point_area a.point_item::after {
        content: "";
        background: url("../images/arrow.svg");
        width: 20px;
        height: 9px;
        display: block;
        background-size: cover;
        bottom: 19px;
        left: 50%;
        transform: translateX(-50%);
        position: absolute;
        transition: 0.2s; }
        @media screen and (max-width: 767px) {
          .fv_area .point_area a.point_item::after {
            width: calc(14 / 375 * 100vw);
            height: calc(6 / 375 * 100vw);
            bottom: calc(15 / 375 * 100vw); } }
    .fv_area .point_area .point_item_txt {
      color: #FFFFFF;
      font-weight: bold;
      font-size: 1.9rem;
      line-height: 1.526415;
      text-align: center; }
      @media (max-width: 1065px) {
        .fv_area .point_area .point_item_txt {
          font-size: calc(17/1065 * 100vw); } }
      @media screen and (max-width: 767px) {
        .fv_area .point_area .point_item_txt {
          font-size: calc(15/375 * 100vw); } }
    .fv_area .point_area .font_small {
      font-size: 1.8rem;
      line-height: 1.444444; }
      @media (max-width: 1065px) {
        .fv_area .point_area .font_small {
          font-size: calc(16/1065 * 100vw); } }
      @media screen and (max-width: 767px) {
        .fv_area .point_area .font_small {
          font-size: calc(13/375 * 100vw); } }
    .fv_area .point_area .font_large {
      font-size: 2.7rem;
      line-height: 1.074074; }
      @media (max-width: 1065px) {
        .fv_area .point_area .font_large {
          font-size: calc(22/1065 * 100vw); } }
      @media screen and (max-width: 767px) {
        .fv_area .point_area .font_large {
          font-size: calc(20/375 * 100vw); } }
  .fv_area .form_area {
    width: 360px;
    margin-top: 35px;
    position: relative;
    padding: 20px 29px 12px;
    background: #F0F5EB;
    border: 1px solid #5DB763;
    border-radius: 13px; }
    @media (max-width: 1065px) {
      .fv_area .form_area {
        margin-right: calc(30/1065 * 100vw); } }
    @media screen and (max-width: 767px) {
      .fv_area .form_area {
        width: auto;
        margin-right: 0;
        padding-left: calc(30/375 * 100vw);
        padding-right: calc(30/375 * 100vw);
        margin-bottom: calc(30/375 * 100vw);
        margin-right: calc(30/375 * 100vw);
        margin-left: calc(30/375 * 100vw);
        margin-top: 0; } }
    .fv_area .form_area.type02 {
      background: #E9F3F5;
      border-color: #035CA2; }
    @media screen and (max-width: 767px) {
      .fv_area .form_area {
        padding: 20px 15px 12px; } }
    .fv_area .form_area .free_icon {
      position: absolute;
      top: -28px;
      right: -20px;
      width: 90px;
      height: 90px;
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: center;
      align-items: center;
      background: #5DB763;
      border-radius: 50%; }
      @media screen and (max-width: 767px) {
        .fv_area .form_area .free_icon {
          width: 75px;
          height: 75px; } }
      .fv_area .form_area .free_icon span {
        color: #fff;
        font-weight: bold;
        font-size: 2.8rem;
        line-height: 1.142857;
        text-align: center; }
        @media screen and (max-width: 767px) {
          .fv_area .form_area .free_icon span {
            font-size: 2.2rem; } }
    .fv_area .form_area .form_title {
      font-size: 2.2rem;
      line-height: 3.2rem;
      font-weight: bold;
      text-align: center;
      margin-bottom: 13.5px; }
      .fv_area .form_area .form_title span {
        font-size: 2rem;
        display: block; }
  @media screen and (max-width: 767px) {
    .fv_area .logo_area {
      margin-bottom: calc(50 / 375 * 100vw); } }
  .fv_area .logo_area .logo_area1 {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 584px;
    margin-bottom: 25px;
    margin-left: -35px; }
    @media (max-width: 1130px) {
      .fv_area .logo_area .logo_area1 {
        margin-left: 0; } }
    @media screen and (max-width: 767px) {
      .fv_area .logo_area .logo_area1 {
        margin-bottom: calc(20 / 375 * 100vw); } }
  .fv_area .logo_area .logo_area2 {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 536px;
    margin-right: 35px;
    margin-left: auto; }
    @media screen and (max-width: 767px) {
      .fv_area .logo_area .logo_area2 {
        margin-right: 0; } }
  .fv_area .logo_area .logo_item:not(:first-of-type) {
    margin-left: 20px; }

.top_logo_list {
  margin: 40px -40px;
  padding: 0;
  background: #fff; }
  @media screen and (max-width: 767px) {
    .top_logo_list {
      margin: calc(50 / 320 * 100vw) -12px;
      padding: calc(10 / 320 * 100vw) 0; } }
  .top_logo_list ul {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-around; }
    @media screen and (max-width: 767px) {
      .top_logo_list ul {
        flex-wrap: wrap; } }
    .top_logo_list ul li {
      width: auto !important;
      margin: 0;
      padding: 0 15px;
      list-style: none; }
      .top_logo_list ul li.scale-in {
        transform: scale(1.2); }
      .top_logo_list ul li.scale-in.scroll-in {
        transform: scale(1); }
      @media screen and (max-width: 767px) {
        .top_logo_list ul li {
          width: 33.33333%;
          padding: calc(10 / 320 * 100vw);
          font-size: 1px;
          line-height: 1;
          text-align: center; } }
      .top_logo_list ul li img {
        vertical-align: bottom; }
        @media screen and (max-width: 767px) {
          .top_logo_list ul li img {
            vertical-align: middle; } }
  .top_logo_list .slick-track {
    padding: 0;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    transition: transform 0s linear 0s; }
    .top_logo_list .slick-track div {
      padding: 0 15px;
      text-align: center; }
      .top_logo_list .slick-track div:focus {
        outline: none; }

.btn-decoration-txt {
  font-size: 2rem;
  line-height: 2.9rem;
  margin: 0 auto 23px;
  position: relative;
  text-align: center;
  font-weight: bold; }
  .btn-decoration-txt::before {
    content: "";
    width: 37px;
    height: 1px;
    background: #081724;
    margin-right: 24px;
    transform: rotate(45deg);
    display: inline-block;
    vertical-align: middle; }
    @media screen and (max-width: 767px) {
      .btn-decoration-txt::before {
        display: none; } }
  .btn-decoration-txt::after {
    content: "";
    width: 37px;
    height: 1px;
    background: #081724;
    margin-left: 24px;
    transform: rotate(-45deg);
    display: inline-block;
    vertical-align: middle; }
    @media screen and (max-width: 767px) {
      .btn-decoration-txt::after {
        display: none; } }

.formdx_cta {
  max-width: 1060px;
  margin: -65px auto 50px;
  padding: 0 20px;
  height: auto;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 3; }
  @media screen and (max-width: 767px) {
    .formdx_cta {
      margin: -40px auto 30px; } }
  .formdx_cta .formdx_cta_inner {
    box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
    background: #032D60;
    margin: 0 auto;
    padding: 10px 20px;
    min-height: 84px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    width: 100%;
    gap: 15px;
    align-items: center;
    justify-content: center; }
    .formdx_cta .formdx_cta_inner:hover {
      text-decoration: none; }
      .formdx_cta .formdx_cta_inner:hover .terminal_cta_btn span {
        background: #fff;
        color: #0091C9; }
        .formdx_cta .formdx_cta_inner:hover .terminal_cta_btn span::after {
          background-image: url("../images/ico_tab_blue.svg"); }
    @media screen and (max-width: 767px) {
      .formdx_cta .formdx_cta_inner {
        flex-direction: column;
        gap: 14px;
        padding: 12px 17px; } }
    .formdx_cta .formdx_cta_inner .left {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      gap: 24px;
      align-items: center; }
      @media screen and (max-width: 767px) {
        .formdx_cta .formdx_cta_inner .left {
          align-items: flex-start;
          gap: 20px; } }
    .formdx_cta .formdx_cta_inner .logo img {
      vertical-align: bottom; }
    @media screen and (max-width: 767px) {
      .formdx_cta .formdx_cta_inner .logo {
        width: 57.28px;
        flex-shrink: 0; } }
    .formdx_cta .formdx_cta_inner .text {
      color: #fff;
      font-size: 16px;
      font-weight: bold;
      line-height: 1.5; }
      @media screen and (max-width: 767px) {
        .formdx_cta .formdx_cta_inner .text {
          font-size: 14px !important; } }
    .formdx_cta .formdx_cta_inner .terminal_cta_btn span {
      display: inline-block;
      background: #0091C9;
      padding: 9.5px 10px;
      width: 220px;
      border-radius: 4px;
      border: 1px solid #0091C9;
      text-align: center;
      text-decoration: none;
      color: #fff;
      font-size: 16px;
      line-height: 1.5;
      font-weight: bold;
      transition: 0.3s; }
      .formdx_cta .formdx_cta_inner .terminal_cta_btn span::after {
        content: "";
        display: inline-block;
        width: 13.49px;
        height: 13.69px;
        background-image: url("../images/ico_tab.svg");
        background-size: cover;
        vertical-align: middle;
        margin-left: 12px;
        transform: translateY(-1px);
        transition: 0.3s; }
      .formdx_cta .formdx_cta_inner .terminal_cta_btn span:hover {
        background: #fff;
        color: #0091C9; }
        .formdx_cta .formdx_cta_inner .terminal_cta_btn span:hover::after {
          background-image: url("../images/ico_tab_blue.svg"); }
