@charset "UTF-8";
/* ------------------------------------------- */
/*	カスタムscss
/* ------------------------------------------- */
/*共通*/
a {
  text-decoration: none;
  color: #141414; }

li {
  list-style: none; }

body {
  font-family: "Noto Sans JP", "Inter", "Lato", "Roboto", sans-serif;
  padding-top: 96px;
  position: relative;
  color: #141414; }

br.pc {
  display: block; }

br.sp {
  display: none; }

span.bold {
  font-weight: 700; }

/*パンくず*/
.breadcrumb li {
  display: inline; }
  .breadcrumb li::after {
    content: '';
    padding: 0 1em;
    color: #141414;
    position: relative;
    top: 6px;
    left: 10px;
    background: url("../images/breadcrumb-arrow.svg") no-repeat; }
  .breadcrumb li:last-child::after {
    content: '';
    background: none; }
  .breadcrumb li a {
    font-size: 14px;
    color: #333333;
    transition: all 0.3s ease; }
    .breadcrumb li a:hover {
      opacity: 0.7; }
  .breadcrumb li .breadcrumb-end {
    color: gray; }

/*ヘッダー*/
header {
  position: fixed;
  width: 100%;
  background-color: #ffffff;
  z-index: 1000;
  top: 0;
  box-shadow: 0 4px 28px rgba(145, 145, 176, 0.1); }

.header-inner {
  height: 96px;
  width: 98%;
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  align-items: center; }

.nav-list-1 .list-item {
  display: flex;
  align-items: center;
  gap: 35px; }
  .nav-list-1 .list-item li a {
    font-size: 15px;
    transition: all 0.3s ease; }
    .nav-list-1 .list-item li a:hover {
      opacity: 0.7; }
.nav-list-1 #js-support {
  position: relative;
  transition: all 0.3s ease; }
  .nav-list-1 #js-support:hover {
    cursor: pointer;
    opacity: 0.7; }
  .nav-list-1 #js-support #toggle_btn {
    content: '';
    position: absolute;
    top: 0;
    right: -18px;
    bottom: 0;
    width: 5px;
    height: 5px;
    margin: auto;
    background: url("../images/support-arrow.svg") no-repeat; }

.modal-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
  z-index: 30; }

.modal-window {
  display: none;
  position: fixed;
  top: 15%;
  left: 57%;
  transform: translate(-44%, -60%);
  background: #fff;
  padding: 10px 50px 10px 10px;
  border-radius: 10px;
  z-index: 50;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); }
  .modal-window .modal-content ul li {
    margin: 20px; }
    .modal-window .modal-content ul li a {
      transition: all 0.3s ease; }
      .modal-window .modal-content ul li a:hover {
        opacity: 0.7; }

.nav-list-2 ul {
  display: flex;
  align-items: center;
  gap: 24px; }
  .nav-list-2 ul li a.button-login {
    position: relative;
    display: inline-block;
    width: 104px;
    height: 41px;
    line-height: 41px;
    border: 1px solid #333333;
    box-sizing: border-box;
    font-size: 14px;
    font-weight: 700;
    text-align: center;
    border-radius: 46px;
    transition: color 0.4s ease; }
    .nav-list-2 ul li a.button-login::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: #333333;
      border-radius: 46px;
      transform: scaleX(0);
      transition: all 0.4s ease;
      transition-property: transform; }
    .nav-list-2 ul li a.button-login:hover {
      color: #fff;
      opacity: 1.0; }
    .nav-list-2 ul li a.button-login:hover::before {
      transform: scaleX(1); }
    .nav-list-2 ul li a.button-login span.txt-login {
      position: relative; }
  .nav-list-2 ul li a.button-begin {
    position: relative;
    display: inline-block;
    width: 166px;
    height: 43px;
    line-height: 43px;
    box-sizing: border-box;
    background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
    font-size: 14px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    border-radius: 46px;
    transition: color 0.4s ease; }
    .nav-list-2 ul li a.button-begin::before {
      content: '';
      position: absolute;
      top: 2px;
      left: 2px;
      width: 161px;
      height: 39px;
      border-radius: 46px;
      background-color: #fff;
      transform: scaleX(0);
      transition: all 0.4s ease;
      transition-property: transform; }
    .nav-list-2 ul li a.button-begin:hover {
      opacity: 1.0; }
    .nav-list-2 ul li a.button-begin:hover::before {
      transform: scaleX(1); }
    .nav-list-2 ul li a.button-begin span.txt-begin {
      color: #fff;
      width: 171px;
      height: 43px;
      margin-left: -5px;
      position: relative;
      display: inline-block; }
      .nav-list-2 ul li a.button-begin span.txt-begin:hover {
        position: relative;
        background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent; }
      .nav-list-2 ul li a.button-begin span.txt-begin:hover::after {
        content: '';
        background: url("../images/cookie-arrow-on.webp") no-repeat; }
      .nav-list-2 ul li a.button-begin span.txt-begin::after {
        content: '';
        width: 16px;
        height: 16px;
        position: absolute;
        background: url("../images/cookie-arrow.webp") no-repeat;
        top: 13px;
        right: 13px; }

.res-header-inner {
  display: none; }

/*検索フォーム*/
.search-section {
  background-color: #333;
  padding: 60px 0;
  text-align: center; }
  .search-section .search-container {
    max-width: 800px;
    margin: 0 auto;
    color: #fff; }
    .search-section .search-container p {
      font-size: 32px;
      margin-bottom: 20px;
      font-weight: bold;
      color: #fff; }
    .search-section .search-container .search-form {
      display: flex;
      justify-content: center;
      align-items: center; }
      .search-section .search-container .search-form label {
        position: relative; }
        .search-section .search-container .search-form label .search-field {
          width: 600px;
          height: 50px;
          padding: 10px 20px 10px 50px;
          font-size: 16px;
          color: #FFFFFF;
          border-radius: 5px;
          border: 0 none;
          background-color: #585858; }
        .search-section .search-container .search-form label::before {
          content: "";
          position: absolute;
          left: 15px;
          top: 27px;
          transform: translateY(-50%);
          font-size: 20px;
          background: url("../images/search-icon.svg") no-repeat;
          width: 20px;
          height: 20px; }
      .search-section .search-container .search-form .search-submit {
        display: none; }

/*フッター*/
footer {
  position: relative;
  border-top: 2px solid #f5f5f5;
  width: 100%;
  display: table; }

.footer-inner {
  width: 1200px;
  margin: 0 auto;
  padding: 90px 10px 10px;
  box-sizing: border-box; }
  .footer-inner .footer-image-left {
    line-height: 0;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1; }
  .footer-inner .footer-image-right {
    line-height: 0;
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: -1; }
  .footer-inner .wrap-1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 200px; }
    .footer-inner .wrap-1 .left-box {
      width: 240px; }
      .footer-inner .wrap-1 .left-box img {
        margin-bottom: 20px; }
    .footer-inner .wrap-1 .right-box {
      width: calc(100% - 500px);
      display: flex;
      justify-content: space-between; }
      .footer-inner .wrap-1 .right-box .box-item-1 {
        width: 25%; }
      .footer-inner .wrap-1 .right-box .box-item-2 {
        width: 25%; }
      .footer-inner .wrap-1 .right-box .box-item-3 {
        width: 50%; }
      .footer-inner .wrap-1 .right-box p {
        font-weight: bold;
        margin-bottom: 20px; }
      .footer-inner .wrap-1 .right-box ul li {
        padding: 2px;
        display: block; }
        .footer-inner .wrap-1 .right-box ul li a {
          font-size: 14px;
          transition: all 0.3s ease; }
          .footer-inner .wrap-1 .right-box ul li a:hover {
            opacity: 0.7; }
  .footer-inner .wrap-2 {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    .footer-inner .wrap-2 p {
      font-size: 12px; }
    .footer-inner .wrap-2 a {
      font-size: 12px;
      text-decoration-line: underline; }
    .footer-inner .wrap-2 p.language-switch {
      position: relative;
      right: 10%; }

.res-footer-inner {
  display: none; }

/*メイン見出し*/
.inner {
  width: 1200px;
  margin: 0 auto; }
  .inner h1, .inner h2 {
    text-align: center; }
    .inner h1 .section-label, .inner h2 .section-label {
      background: linear-gradient(to right, #3E0EFE 0%, #17AC88 50%, #46FA42 100%);
      -webkit-text-fill-color: transparent;
      background-clip: text;
      font-size: 16px;
      letter-spacing: 4px; }
    .inner h1 .section-head, .inner h2 .section-head {
      display: block;
      font-size: 42px;
      margin-top: 4px;
      margin-bottom: 70px;
      font-weight: 900; }

/*メインコンテンツ*/
main {
  width: 100%;
  display: table;
  /*セクション3*/
  /*セクション4*/
  /*セクション5*/ }
  main .main-section {
    padding-bottom: 130px;
    position: relative; }
    main .main-section .inner {
      text-align: center; }
      main .main-section .inner .main-bg {
        height: auto;
        overflow: hidden; }
        main .main-section .inner .main-bg .main-bg-left {
          position: absolute;
          width: 25%;
          height: auto;
          left: 0;
          top: 55px;
          z-index: -1; }
        main .main-section .inner .main-bg .main-bg-right {
          position: absolute;
          width: 25%;
          height: auto;
          right: 0;
          top: 218px;
          z-index: -1; }
      main .main-section .inner .main-top {
        margin-top: 66px;
        margin-bottom: 18px; }
        main .main-section .inner .main-top h1 {
          font-size: 16px; }
          main .main-section .inner .main-top h1 a {
            color: #3E0EFE;
            text-decoration-line: underline;
            transition: all 0.3s ease; }
            main .main-section .inner .main-top h1 a:hover {
              opacity: 0.7;
              text-decoration-line: none; }
          main .main-section .inner .main-top h1 span {
            display: none; }
      main .main-section .inner .main-headline {
        margin-bottom: 130px; }
        main .main-section .inner .main-headline h2 {
          font-size: 76px;
          font-feature-settings: "palt";
          letter-spacing: 0.8px; }
        main .main-section .inner .main-headline span {
          font-size: 54px;
          font-weight: lighter; }
      main .main-section .inner .main-login {
        position: relative;
        margin-bottom: 30px; }
        main .main-section .inner .main-login .login-icon-left {
          position: absolute;
          width: 225px;
          top: -32px;
          right: 290px;
          z-index: -1; }
        main .main-section .inner .main-login .login-icon-right {
          position: absolute;
          width: 225px;
          top: -32px;
          left: 283px;
          z-index: -1; }
        main .main-section .inner .main-login .sp-login-icon {
          display: none; }
        main .main-section .inner .main-login div.google-login-margin {
          position: relative;
          display: inline-block;
          width: 298px;
          height: 101px;
          background-color: #fff;
          border-radius: 100px; }
          main .main-section .inner .main-login div.google-login-margin a.google-login-button {
            position: relative;
            display: inline-block;
            width: 274px;
            height: 80px;
            line-height: 80px;
            top: 10px;
            box-sizing: border-box;
            background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
            font-size: 20px;
            font-weight: 700;
            color: #fff;
            text-align: center;
            border-radius: 100px;
            transition: color 0.4s ease; }
            main .main-section .inner .main-login div.google-login-margin a.google-login-button::before {
              content: '';
              position: absolute;
              top: 3px;
              left: 3px;
              width: 268px;
              height: 74px;
              border-radius: 100px;
              background-color: #fff;
              transform: scaleX(0);
              transition: all 0.4s ease;
              transition-property: transform; }
            main .main-section .inner .main-login div.google-login-margin a.google-login-button:hover {
              background-color: #fff;
              color: transparent;
              -webkit-background-clip: text;
              background-clip: text;
              background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42); }
            main .main-section .inner .main-login div.google-login-margin a.google-login-button:hover::before {
              transform: scaleX(1); }
            main .main-section .inner .main-login div.google-login-margin a.google-login-button span.google-login-button-txt {
              color: #fff;
              width: 274px;
              height: 80px;
              position: relative;
              display: inline-block; }
              main .main-section .inner .main-login div.google-login-margin a.google-login-button span.google-login-button-txt:hover {
                position: relative;
                background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent; }
      main .main-section .inner .plugin-download {
        color: #3E0EFE;
        text-decoration-line: underline;
        margin-bottom: 30px;
        transition: all 0.3s ease; }
        main .main-section .inner .plugin-download:hover {
          text-decoration-line: none;
          opacity: 0.7; }
      main .main-section .inner .formtoss-explain-2 {
        margin-top: 40px;
        color: #333333; }
      main .main-section .inner .contactform7-official {
        color: #3E0EFE;
        text-decoration-line: underline;
        display: inline-block;
        margin-bottom: 20px;
        transition: all 0.3s ease; }
        main .main-section .inner .contactform7-official:hover {
          opacity: 0.7;
          text-decoration-line: none; }
      main .main-section .inner .main-img-box {
        position: absolute;
        left: 0;
        right: 0; }
        main .main-section .inner .main-img-box .main-img {
          filter: drop-shadow(0px 3px 20px white); }
        main .main-section .inner .main-img-box .res-main-img {
          display: none; }
        main .main-section .inner .main-img-box .scroll-container {
          display: none; }
  main .features {
    background-color: #F5F5F5;
    padding-top: 320px; }
    main .features .card-top {
      display: flex;
      align-items: center;
      padding: 30px 10px 30px 75px;
      border-radius: 8px;
      margin-bottom: 20px;
      background-color: #fff; }
      main .features .card-top .card-top-head {
        flex: 1;
        margin-right: 20px; }
        main .features .card-top .card-top-head h3 {
          font-size: 32px;
          margin-bottom: 30px; }
        main .features .card-top .card-top-head p {
          font-size: 16px; }
      main .features .card-top .card-top-image {
        flex-shrink: 0;
        max-width: 100%; }
        main .features .card-top .card-top-image img {
          width: 100%;
          height: auto;
          object-fit: cover; }
    main .features .card-list {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      margin: 0 auto; }
      main .features .card-list .card-item {
        width: calc(50% - 10px);
        text-align: center;
        border-radius: 8px;
        background-color: #fff;
        margin-bottom: 20px;
        box-sizing: border-box; }
        main .features .card-list .card-item .card-head {
          padding: 30px; }
          main .features .card-list .card-item .card-head h3 {
            font-size: 32px;
            margin: 26px 0 40px 0; }
          main .features .card-list .card-item .card-head p {
            font-size: 16px; }
        main .features .card-list .card-item .card-image {
          height: auto;
          width: 100%;
          box-sizing: border-box; }
          main .features .card-list .card-item .card-image img {
            width: 100%;
            height: auto;
            display: block;
            object-fit: cover;
            border-radius: 0 0 8px 8px; }
  main .easysteps {
    background-color: #F5F5F5;
    padding-top: 160px; }
    main .easysteps .easysteps-content {
      display: flex;
      justify-content: space-between; }
      main .easysteps .easysteps-content .easysteps-left {
        width: 42%; }
        main .easysteps .easysteps-content .easysteps-left .js-easysteps {
          display: flex;
          align-items: center;
          gap: 35px;
          margin-bottom: 50px;
          padding: 20px 25px;
          border-radius: 5px;
          transition: all 0.3s ease; }
          main .easysteps .easysteps-content .easysteps-left .js-easysteps:hover {
            cursor: pointer; }
          main .easysteps .easysteps-content .easysteps-left .js-easysteps p {
            font-weight: bold; }
        main .easysteps .easysteps-content .easysteps-left .js-easysteps.active {
          background-color: #ffffff;
          border-radius: 10px;
          box-shadow: 0 4px 28px rgba(145, 145, 176, 0.1); }
        main .easysteps .easysteps-content .easysteps-left .easysteps-plugin-confirm {
          text-align: center;
          padding: 20px;
          border-radius: 10px;
          position: relative;
          z-index: 0;
          background-color: #ffffff; }
          main .easysteps .easysteps-content .easysteps-left .easysteps-plugin-confirm .plugin-confirm-top {
            display: flex;
            justify-content: center;
            margin-bottom: 10px; }
            main .easysteps .easysteps-content .easysteps-left .easysteps-plugin-confirm .plugin-confirm-top p {
              font-weight: bold; }
          main .easysteps .easysteps-content .easysteps-left .easysteps-plugin-confirm a {
            color: #3E0EFE;
            text-decoration-line: underline;
            display: block;
            margin-top: 10px;
            transition: all 0.3s ease; }
            main .easysteps .easysteps-content .easysteps-left .easysteps-plugin-confirm a:hover {
              opacity: 0.7;
              text-decoration-line: none; }
        main .easysteps .easysteps-content .easysteps-left .easysteps-plugin-confirm::before {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          border-radius: 10px;
          padding: 2px;
          background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
          mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
          -webkit-mask-composite: destination-out;
          mask-composite: exclude;
          z-index: -1; }
      main .easysteps .easysteps-content .easysteps-right .easysteps-image img {
        width: 620px;
        height: 600px;
        background-color: #ffffff; }
  main .start-formtoss {
    background-color: #F5F5F5;
    padding-top: 240px; }
    main .start-formtoss .inner {
      text-align: center; }
      main .start-formtoss .inner p {
        font-size: 42px;
        font-weight: 900; }
    main .start-formtoss .login-button a.google-login-button {
      position: relative;
      display: inline-block;
      width: 274px;
      height: 80px;
      line-height: 80px;
      margin-top: 25px;
      top: 10px;
      box-sizing: border-box;
      background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
      font-size: 20px;
      font-weight: 700;
      color: #fff;
      text-align: center;
      border-radius: 100px;
      transition: color 0.4s ease; }
      main .start-formtoss .login-button a.google-login-button::before {
        content: '';
        position: absolute;
        top: 3px;
        left: 3px;
        width: 268px;
        height: 74px;
        border-radius: 100px;
        background-color: #fff;
        transform: scaleX(0);
        transition: all 0.4s ease;
        transition-property: transform; }
      main .start-formtoss .login-button a.google-login-button:hover {
        background-color: #fff;
        color: transparent;
        -webkit-background-clip: text;
        background-clip: text;
        background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
        z-index: 1; }
      main .start-formtoss .login-button a.google-login-button:hover::before {
        transform: scaleX(1); }
      main .start-formtoss .login-button a.google-login-button span.google-login-button-txt {
        color: #fff;
        width: 274px;
        height: 80px;
        position: relative;
        display: inline-block; }
        main .start-formtoss .login-button a.google-login-button span.google-login-button-txt:hover {
          position: relative;
          background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent; }
  main .priceplan {
    background-color: #F5F5F5;
    padding-top: 240px;
    padding-bottom: 160px; }
    main .priceplan .priceplan-top {
      text-align: center; }
    main .priceplan .plan-list {
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
      gap: 30px; }
      main .priceplan .plan-list .plan-item {
        width: 30%;
        background-color: #ffffff;
        border-radius: 10px;
        text-align: center; }
        main .priceplan .plan-list .plan-item h3 {
          margin: 30px 0; }
          main .priceplan .plan-list .plan-item h3 .plan-title {
            display: block;
            font-size: 32px;
            background: linear-gradient(to right, #3E0EFE 0%, #17AC88 50%, #46FA42 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent; }
          main .priceplan .plan-list .plan-item h3 .plan-name {
            font-size: 14px;
            margin-bottom: 30px; }
        main .priceplan .plan-list .plan-item .plan-fee p {
          font-size: 14px; }
        main .priceplan .plan-list .plan-item .plan-fee .price-box {
          width: 245px;
          margin: 8px auto 0 auto; }
          main .priceplan .plan-list .plan-item .plan-fee .price-box p {
            font-weight: bold;
            font-family: "Roboto"; }
            main .priceplan .plan-list .plan-item .plan-fee .price-box p span.jp-en {
              font-size: 24px; }
            main .priceplan .plan-list .plan-item .plan-fee .price-box p span.jp-price {
              font-size: 48px;
              margin: 0 7px; }
            main .priceplan .plan-list .plan-item .plan-fee .price-box p span.unit {
              font-size: 24px; }
            main .priceplan .plan-list .plan-item .plan-fee .price-box p span.tax {
              font-weight: 400;
              font-size: 12px;
              position: relative;
              top: -50px;
              right: -88px; }
        main .priceplan .plan-list .plan-item .free {
          margin-bottom: 45px; }
        main .priceplan .plan-list .plan-item .plan-box {
          text-align: left;
          padding-top: 20px;
          padding-left: 40px; }
          main .priceplan .plan-list .plan-item .plan-box p {
            position: relative;
            line-height: 1.2em;
            padding-left: 15px; }
            main .priceplan .plan-list .plan-item .plan-box p::before {
              content: '';
              width: 4px;
              height: 1.2em;
              position: absolute;
              background: linear-gradient(#3E0EFE 0%, #17AC88 50%, #46FA42 100%);
              top: 0;
              left: 0; }
          main .priceplan .plan-list .plan-item .plan-box .plan-function {
            font-size: 16px;
            font-weight: bold; }
          main .priceplan .plan-list .plan-item .plan-box ul {
            margin-bottom: 40px; }
            main .priceplan .plan-list .plan-item .plan-box ul li {
              position: relative;
              line-height: 16px;
              padding-left: 20px;
              margin: 10px 0; }
              main .priceplan .plan-list .plan-item .plan-box ul li::before {
                content: '';
                width: 16px;
                height: 16px;
                position: absolute;
                background: url("../images/check-nomal.svg") no-repeat;
                top: 0;
                left: 0; }
              main .priceplan .plan-list .plan-item .plan-box ul li span {
                font-size: 12px;
                color: #6d6d6d; }
        main .priceplan .plan-list .plan-item .left ul {
          margin-bottom: 90px; }
        main .priceplan .plan-list .plan-item .free-start a.free-start-btn {
          position: relative;
          display: inline-block;
          width: 222px;
          height: 54px;
          line-height: 54px;
          margin-bottom: 40px;
          box-sizing: border-box;
          background: linear-gradient(to right, #007BFF, #37E80A);
          font-size: 16px;
          font-weight: 700;
          color: #141414;
          text-align: center;
          border-radius: 100px;
          transition: color 0.4s ease; }
          main .priceplan .plan-list .plan-item .free-start a.free-start-btn::before {
            content: '';
            position: absolute;
            top: 3px;
            left: 3px;
            width: 216px;
            height: 48px;
            border-radius: 100px;
            background-color: #fff;
            color: #fff;
            transform: scaleX(1);
            transition: all 0.4s ease;
            transition-property: transform; }
          main .priceplan .plan-list .plan-item .free-start a.free-start-btn:hover {
            background-color: #fff;
            color: transparent;
            -webkit-background-clip: text;
            background-clip: text;
            background: linear-gradient(to right, #007BFF, #37E80A);
            z-index: 1; }
          main .priceplan .plan-list .plan-item .free-start a.free-start-btn:hover::before {
            transform: scaleX(0); }
          main .priceplan .plan-list .plan-item .free-start a.free-start-btn span.free-start-txt {
            color: #141414;
            width: 222px;
            height: 54px;
            position: relative;
            display: inline-block; }
            main .priceplan .plan-list .plan-item .free-start a.free-start-btn span.free-start-txt:hover {
              position: relative;
              color: #fff; }
        main .priceplan .plan-list .plan-item .pro {
          margin-bottom: 40px; }
          main .priceplan .plan-list .plan-item .pro a.pro-btn {
            position: relative;
            display: inline-block;
            width: 222px;
            height: 54px;
            line-height: 54px;
            margin-bottom: 40px;
            box-sizing: border-box;
            background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
            font-size: 16px;
            font-weight: 700;
            color: #fff;
            text-align: center;
            border-radius: 100px;
            transition: color 0.4s ease; }
            main .priceplan .plan-list .plan-item .pro a.pro-btn::before {
              content: '';
              position: absolute;
              top: 3px;
              left: 3px;
              width: 216px;
              height: 48px;
              border-radius: 100px;
              background-color: #fff;
              transform: scaleX(0);
              transition: all 0.4s ease;
              transition-property: transform; }
            main .priceplan .plan-list .plan-item .pro a.pro-btn:hover {
              background-color: #fff;
              color: transparent;
              -webkit-background-clip: text;
              background-clip: text;
              background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42); }
            main .priceplan .plan-list .plan-item .pro a.pro-btn:hover::before {
              transform: scaleX(1); }
            main .priceplan .plan-list .plan-item .pro a.pro-btn span.pro-txt {
              color: #fff;
              width: 222px;
              height: 54px;
              position: relative;
              display: inline-block; }
              main .priceplan .plan-list .plan-item .pro a.pro-btn span.pro-txt:hover {
                position: relative;
                background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
                -webkit-background-clip: text;
                -webkit-text-fill-color: transparent; }
      main .priceplan .plan-list .recommend {
        position: relative;
        z-index: 0; }
        main .priceplan .plan-list .recommend::before {
          content: '';
          position: absolute;
          transform: translate(-50%, -100%);
          width: 160px;
          height: 40px;
          background: url("../images/plan-recommend-image.svg") no-repeat; }
        main .priceplan .plan-list .recommend::after {
          content: '';
          position: absolute;
          top: 0;
          left: 0;
          right: 0;
          bottom: 0;
          border-radius: 10px;
          padding: 3px;
          background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
          mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
          -webkit-mask-composite: destination-out;
          mask-composite: exclude;
          z-index: -1; }
    main .priceplan .plan-end-text {
      text-align: center;
      margin-top: 20px; }
      main .priceplan .plan-end-text p {
        font-size: 14px;
        color: #6d6d6d; }
    main .priceplan .plan-comparison-button {
      width: fit-content;
      margin: 60px auto; }
      main .priceplan .plan-comparison-button a.plan-comparison-btn {
        position: relative;
        display: inline-block;
        width: 194px;
        height: 52px;
        line-height: 52px;
        box-sizing: border-box;
        font-size: 14px;
        font-weight: 700;
        text-align: center;
        border-radius: 52px;
        transition: color 0.4s ease;
        background-color: #141414;
        color: #141414; }
        main .priceplan .plan-comparison-button a.plan-comparison-btn::before {
          content: '';
          position: absolute;
          top: 2px;
          left: 2px;
          width: 190px;
          height: 48px;
          background-color: #fff;
          color: #141414;
          border-radius: 48px;
          transform: scaleX(0);
          transition: all 0.4s ease;
          transition-property: transform; }
        main .priceplan .plan-comparison-button a.plan-comparison-btn:hover {
          color: #141414;
          opacity: 1.0; }
        main .priceplan .plan-comparison-button a.plan-comparison-btn:hover::before {
          transform: scaleX(1); }
        main .priceplan .plan-comparison-button a.plan-comparison-btn span.plan-comparison-txt {
          color: #fff;
          position: relative;
          width: 194px;
          height: 52px;
          display: inline-block;
          left: -8px;
          padding-right: 8px; }
          main .priceplan .plan-comparison-button a.plan-comparison-btn span.plan-comparison-txt:hover {
            color: #141414; }
            main .priceplan .plan-comparison-button a.plan-comparison-btn span.plan-comparison-txt:hover::after {
              color: #141414;
              width: 18px;
              height: 18px;
              position: absolute;
              top: 21px;
              right: 22px;
              background: url("../images/function-arrow-on.svg") no-repeat; }
          main .priceplan .plan-comparison-button a.plan-comparison-btn span.plan-comparison-txt::after {
            content: '';
            width: 18px;
            height: 18px;
            position: absolute;
            top: 18px;
            right: 24px;
            background: url("../images/function-arrow.svg") no-repeat; }
  main .docs .inner h1 {
    text-align: left;
    font-size: 32px;
    margin-bottom: 40px; }
  main .docs .inner .breadcrumb {
    margin: 80px 0 20px 0; }
  main .docs .inner .cards-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    padding: 20px;
    margin-bottom: 150px; }
    main .docs .inner .cards-wrapper .card {
      background-color: #fff;
      border: 1px solid #ddd;
      border-radius: 8px;
      padding: 30px 20px 60px 20px; }
      main .docs .inner .cards-wrapper .card h3 {
        font-size: 24px;
        margin-bottom: 20px; }
      main .docs .inner .cards-wrapper .card p {
        font-size: 14px;
        color: #666; }
        main .docs .inner .cards-wrapper .card p a {
          width: 100%;
          display: inline-block;
          transition: all 0.3s ease;
          padding: 8px 10px;
          margin-bottom: 8px;
          box-sizing: border-box; }
          main .docs .inner .cards-wrapper .card p a:hover {
            background-color: #e8e8e8;
            border-radius: 8px;
            transition: background-color 0.3s ease; }
      main .docs .inner .cards-wrapper .card .article-list {
        font-size: 14px;
        display: inline-block;
        margin-top: 40px;
        padding: 8px 16px;
        border: 1px solid #000;
        border-radius: 30px;
        text-decoration: none;
        color: #000;
        transition: all 0.3s ease; }
        main .docs .inner .cards-wrapper .card .article-list:hover {
          background-color: #141414;
          color: #fff; }
  main .faqs .inner h1 {
    text-align: left;
    font-size: 32px;
    margin-bottom: 40px; }
  main .faqs .inner .breadcrumb {
    margin: 80px 0 20px 0; }
  main .faqs .inner .accordion-container {
    width: 100%;
    border: 1px solid #CBCBCB;
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 220px; }
    main .faqs .inner .accordion-container .accordion-item {
      border-bottom: 1px solid #EDEDED; }
      main .faqs .inner .accordion-container .accordion-item .accordion-title {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 25px;
        background-color: #ffffff;
        cursor: pointer;
        transition: all 0.3s ease; }
        main .faqs .inner .accordion-container .accordion-item .accordion-title:hover {
          opacity: 0.7; }
        main .faqs .inner .accordion-container .accordion-item .accordion-title h3 {
          margin: 0;
          font-size: 16px;
          font-weight: bold; }
        main .faqs .inner .accordion-container .accordion-item .accordion-title .accordion-toggle {
          display: inline-block;
          position: relative;
          width: 16px;
          height: 16px;
          transition: transform 0.3s ease; }
        main .faqs .inner .accordion-container .accordion-item .accordion-title .accordion-toggle::before {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          width: 10px;
          height: 2px;
          background-color: #000;
          transform: translate(-50%, -50%) rotate(90deg);
          transition: all 0.3s ease; }
        main .faqs .inner .accordion-container .accordion-item .accordion-title .accordion-toggle::after {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          width: 10px;
          height: 2px;
          background-color: #000;
          transition: all 0.3s ease;
          transform: translate(-50%, -50%); }
        main .faqs .inner .accordion-container .accordion-item .accordion-title .active::before {
          transform: translate(-50%, -50%) rotate(0deg); }
        main .faqs .inner .accordion-container .accordion-item .accordion-title .active::after {
          transform: translate(-50%, -50%) rotate(0deg); }
      main .faqs .inner .accordion-container .accordion-item .accordion-content {
        padding: 25px;
        display: none;
        background-color: #ffffff; }
  main .company .inner {
    padding-top: 50px; }
    main .company .inner .breadcrumb {
      margin: 0 0 20px 0; }
    main .company .inner h1 {
      text-align: center; }
      main .company .inner h1 .section-head {
        font-size: 42px;
        display: block;
        margin-top: 30px;
        margin-bottom: 70px;
        font-weight: 900; }
    main .company .inner .company-table {
      width: 90%;
      margin: 20px auto 200px;
      border-collapse: collapse;
      background-color: #fff; }
      main .company .inner .company-table th, main .company .inner .company-table td {
        padding: 15px 15px 20px;
        border: 1px solid #EDEDED;
        text-align: left;
        vertical-align: top; }
      main .company .inner .company-table td.company-name {
        font-weight: 700; }
      main .company .inner .company-table th {
        width: 20%;
        background-color: #f0f0f0;
        font-weight: bold;
        text-align: left;
        border: 1px solid #fff; }
      main .company .inner .company-table td {
        width: 80%;
        color: #333; }
      main .company .inner .company-table span {
        font-weight: 900;
        position: relative;
        padding-left: 1em;
        margin-bottom: 12px; }
      main .company .inner .company-table span::before {
        content: "■";
        position: absolute;
        left: 0; }
      main .company .inner .company-table ul {
        margin: 10px 0;
        padding-left: 20px; }
      main .company .inner .company-table ul.list-none {
        list-style-type: none;
        padding-left: 0; }
      main .company .inner .company-table ul.list-dot {
        list-style-type: none;
        padding-left: 0; }
        main .company .inner .company-table ul.list-dot li {
          position: relative;
          padding-left: 1em; }
        main .company .inner .company-table ul.list-dot li::before {
          content: "・";
          position: absolute;
          left: 0; }
      main .company .inner .company-table a {
        color: #0066cc;
        text-decoration: none;
        transition: all 0.3s ease; }
      main .company .inner .company-table a:hover {
        text-decoration: underline; }
  main .terms .inner {
    padding-top: 50px; }
    main .terms .inner .breadcrumb {
      margin: 0 0 20px 0; }
    main .terms .inner h1 {
      text-align: center; }
      main .terms .inner h1 .section-label {
        color: #141414;
        background: none;
        -webkit-text-fill-color: initial;
        background-clip: border-box;
        letter-spacing: normal; }
      main .terms .inner h1 .section-head {
        font-size: 42px;
        display: block;
        margin-top: 30px;
        margin-bottom: 70px;
        font-weight: 900; }
    main .terms .inner .main-text {
      width: 100%;
      margin: 0 auto;
      padding-bottom: 200px; }
      main .terms .inner .main-text p {
        font-size: 16px;
        margin-bottom: 25px;
        line-height: 1.6; }
        main .terms .inner .main-text p a {
          color: #0b5cc9;
          text-decoration: underline;
          margin: 0 2px; }
        main .terms .inner .main-text p a:hover {
          opacity: 0.7; }
      main .terms .inner .main-text p.small {
        text-align: right;
        font-size: 14px;
        margin: 50px 0; }
      main .terms .inner .main-text div.trems-link {
        display: block;
        width: 300px;
        margin: 25px auto 0; }
        main .terms .inner .main-text div.trems-link a {
          display: inline-block;
          width: 300px;
          padding: 25px;
          border: 1px solid #ddd;
          box-sizing: border-box;
          border-radius: 8px;
          text-align: center;
          position: relative; }
          main .terms .inner .main-text div.trems-link a:hover {
            background-color: #e8e8e8; }
        main .terms .inner .main-text div.trems-link a.privacy::after {
          content: '';
          width: 18px;
          height: 18px;
          position: absolute;
          top: 40px;
          right: 8px;
          background: url(../images/breadcrumb-arrow.svg) no-repeat; }
        main .terms .inner .main-text div.trems-link a.permissions::after {
          content: '';
          width: 18px;
          height: 18px;
          position: absolute;
          top: 30px;
          right: 24px;
          background: url(../images/breadcrumb-arrow.svg) no-repeat; }
      main .terms .inner .main-text div.contact-address {
        margin: 15px 15px; }
        main .terms .inner .main-text div.contact-address p {
          margin-bottom: 0; }
      main .terms .inner .main-text dl {
        margin-bottom: 30px; }
        main .terms .inner .main-text dl dt {
          font-size: 18px;
          font-weight: bold;
          margin-bottom: 6px; }
        main .terms .inner .main-text dl dd {
          margin-bottom: 15px;
          margin-left: 0; }
          main .terms .inner .main-text dl dd ol {
            box-sizing: border-box; }
            main .terms .inner .main-text dl dd ol p {
              margin-bottom: 0px; }
          main .terms .inner .main-text dl dd ul {
            box-sizing: border-box; }
          main .terms .inner .main-text dl dd ol.num-list01 {
            counter-reset: list-counter;
            list-style: none; }
            main .terms .inner .main-text dl dd ol.num-list01 li {
              counter-increment: list-counter;
              position: relative;
              padding-left: 2em; }
            main .terms .inner .main-text dl dd ol.num-list01 li::before {
              content: counter(list-counter) ". ";
              position: absolute;
              left: 0em; }
          main .terms .inner .main-text dl dd ol.num-list02 {
            counter-reset: list-counter;
            list-style: none;
            padding-left: 0; }
            main .terms .inner .main-text dl dd ol.num-list02 li {
              counter-increment: list-counter;
              position: relative;
              padding-left: 2em; }
            main .terms .inner .main-text dl dd ol.num-list02 li::before {
              content: "(" counter(list-counter) "). ";
              position: absolute;
              left: 0; }
          main .terms .inner .main-text dl dd ol.dotted-list {
            margin-top: 15px; }
            main .terms .inner .main-text dl dd ol.dotted-list li {
              position: relative;
              padding-left: 1em;
              margin-bottom: 12px; }
            main .terms .inner .main-text dl dd ol.dotted-list li::before {
              content: "・";
              position: absolute;
              left: 0; }
          main .terms .inner .main-text dl dd div.dotted-list {
            margin-top: 5px;
            margin-bottom: 22px;
            margin-left: -12px; }
            main .terms .inner .main-text dl dd div.dotted-list p {
              position: relative;
              padding-left: 1em;
              margin-bottom: 12px;
              line-height: 1.5; }
            main .terms .inner .main-text dl dd div.dotted-list p::before {
              content: "・";
              position: absolute;
              left: 0; }
            main .terms .inner .main-text dl dd div.dotted-list a {
              margin: 0 2px;
              white-space: normal;
              /* 折り返しを許可 */
              word-wrap: break-word;
              /* 長い単語を折り返し */
              display: inline-block; }
          main .terms .inner .main-text dl dd a {
            color: #0b5cc9;
            text-decoration: underline;
            margin: 0 2px; }
          main .terms .inner .main-text dl dd a:hover {
            opacity: 0.7; }
    main .terms .inner .permissions-page {
      /* 必要な権限ページ単独の設定 */ }
      main .terms .inner .permissions-page .access-img {
        width: 100%;
        margin-bottom: 25px; }
        main .terms .inner .permissions-page .access-img img {
          width: 680px;
          display: block;
          margin: 0 auto 35px;
          background-color: #ddd; }
      main .terms .inner .permissions-page table {
        margin-bottom: 45px;
        border-collapse: collapse; }
        main .terms .inner .permissions-page table tr th {
          vertical-align: top;
          border: 1px solid #ddd;
          padding: 15px;
          background-color: #F5F5F5; }
        main .terms .inner .permissions-page table tr td {
          vertical-align: top;
          box-sizing: border-box;
          border: 1px solid #ddd;
          padding: 15px; }
          main .terms .inner .permissions-page table tr td:nth-child(1) {
            width: 45%; }
          main .terms .inner .permissions-page table tr td .dotted-list {
            margin-top: 15px; }
            main .terms .inner .permissions-page table tr td .dotted-list li {
              position: relative;
              padding-left: 1em;
              margin-bottom: 12px; }
            main .terms .inner .permissions-page table tr td .dotted-list li::before {
              content: "・";
              position: absolute;
              left: 0; }
  main .archive .inner h1 {
    text-align: left;
    font-size: 32px;
    margin-bottom: 40px; }
  main .archive .inner .breadcrumb {
    margin: 80px 0 20px 0; }
  main .archive .inner .custom-list {
    list-style: none;
    padding: 30px;
    margin-bottom: 150px;
    border: #CBCBCB solid 1px;
    border-radius: 10px; }
    main .archive .inner .custom-list li {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 10px;
      border-radius: 8px;
      transition: background-color 0.3s ease; }
      main .archive .inner .custom-list li:hover {
        background-color: #e8e8e8; }
      main .archive .inner .custom-list li::after {
        content: '';
        position: relative;
        width: 15px;
        height: 15px;
        top: 0;
        right: 15px;
        background: url("../images/custom-list-arrow.svg") no-repeat; }
      main .archive .inner .custom-list li a {
        text-decoration: none;
        color: #333;
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: 100%;
        padding: 15px; }
  main .search-results .inner h1 {
    text-align: left;
    font-size: 32px;
    margin-bottom: 40px; }
    main .search-results .inner h1 span {
      color: #8E8E8E; }
  main .search-results .inner .breadcrumb {
    margin: 80px 0 20px 0; }
  main .search-results .inner .search-results-none {
    margin: 100px 0 200px; }
    main .search-results .inner .search-results-none p {
      font-size: 20px; }
  main .search-results .inner .search-results-list {
    display: grid;
    grid-template-columns: 1fr;
    margin-bottom: 150px; }
    main .search-results .inner .search-results-list .search-result-link {
      text-decoration: none;
      color: #333333; }
      main .search-results .inner .search-results-list .search-result-link .search-result-item {
        border: 1px solid #CED2D7;
        padding: 20px;
        border-radius: 10px;
        background-color: #ffffff;
        margin-bottom: 20px; }
        main .search-results .inner .search-results-list .search-result-link .search-result-item .search-result-title h3 {
          margin: 0;
          font-size: 20px; }
        main .search-results .inner .search-results-list .search-result-link .search-result-item .search-result-text p {
          font-size: 16px;
          color: #333333;
          margin-top: 10px;
          line-height: 1.5; }
  main .search-results .inner .navigation {
    margin-bottom: 50px; }
    main .search-results .inner .navigation .nav-links {
      text-align: center; }
      main .search-results .inner .navigation .nav-links a {
        font-size: 16px;
        padding: 10px; }

/******************************/
/*	料金ページ pricing
/******************************/
#pricing section.pricing {
  background-color: #F5F5F5;
  padding-top: 130px;
  padding-bottom: 160px; }
  #pricing section.pricing .plan-list {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 30px; }
    #pricing section.pricing .plan-list .plan-item {
      width: 30%;
      background-color: #ffffff;
      border-radius: 10px;
      text-align: center; }
      #pricing section.pricing .plan-list .plan-item h2 {
        margin: 30px 0; }
        #pricing section.pricing .plan-list .plan-item h2 .plan-title {
          display: block;
          font-size: 32px;
          background: linear-gradient(to right, #3E0EFE 0%, #17AC88 50%, #46FA42 100%);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent; }
        #pricing section.pricing .plan-list .plan-item h2 .plan-name {
          font-size: 14px;
          margin-bottom: 30px; }
      #pricing section.pricing .plan-list .plan-item .plan-fee p {
        font-size: 14px; }
      #pricing section.pricing .plan-list .plan-item .plan-fee .price-box {
        width: 245px;
        margin: 8px auto 0 auto; }
        #pricing section.pricing .plan-list .plan-item .plan-fee .price-box p {
          font-weight: bold;
          font-family: "Roboto"; }
          #pricing section.pricing .plan-list .plan-item .plan-fee .price-box p span.jp-en {
            font-size: 24px; }
          #pricing section.pricing .plan-list .plan-item .plan-fee .price-box p span.jp-price {
            font-size: 48px;
            margin: 0 7px; }
          #pricing section.pricing .plan-list .plan-item .plan-fee .price-box p span.unit {
            font-size: 24px; }
          #pricing section.pricing .plan-list .plan-item .plan-fee .price-box p span.tax {
            font-weight: 400;
            font-size: 12px;
            position: relative;
            top: -50px;
            right: -88px; }
      #pricing section.pricing .plan-list .plan-item .free {
        margin-bottom: 45px; }
      #pricing section.pricing .plan-list .plan-item .plan-box {
        text-align: left;
        padding-top: 20px;
        padding-left: 40px; }
        #pricing section.pricing .plan-list .plan-item .plan-box p {
          position: relative;
          line-height: 1.2em;
          padding-left: 15px; }
          #pricing section.pricing .plan-list .plan-item .plan-box p::before {
            content: '';
            width: 4px;
            height: 1.2em;
            position: absolute;
            background: linear-gradient(#3E0EFE 0%, #17AC88 50%, #46FA42 100%);
            top: 0;
            left: 0; }
        #pricing section.pricing .plan-list .plan-item .plan-box .plan-function {
          font-size: 16px;
          font-weight: bold; }
        #pricing section.pricing .plan-list .plan-item .plan-box ul {
          margin-bottom: 40px; }
          #pricing section.pricing .plan-list .plan-item .plan-box ul li {
            position: relative;
            line-height: 16px;
            padding-left: 20px;
            margin: 10px 0; }
            #pricing section.pricing .plan-list .plan-item .plan-box ul li::before {
              content: '';
              width: 16px;
              height: 16px;
              position: absolute;
              background: url("../images/check-nomal.svg") no-repeat;
              top: 0;
              left: 0; }
            #pricing section.pricing .plan-list .plan-item .plan-box ul li span {
              font-size: 12px;
              color: #6d6d6d; }
      #pricing section.pricing .plan-list .plan-item .left ul {
        margin-bottom: 90px; }
      #pricing section.pricing .plan-list .plan-item .free-start a.free-start-btn {
        position: relative;
        display: inline-block;
        width: 222px;
        height: 54px;
        line-height: 54px;
        margin-bottom: 40px;
        box-sizing: border-box;
        background: linear-gradient(to right, #007BFF, #37E80A);
        font-size: 16px;
        font-weight: 700;
        color: #141414;
        text-align: center;
        border-radius: 100px;
        transition: color 0.4s ease; }
        #pricing section.pricing .plan-list .plan-item .free-start a.free-start-btn::before {
          content: '';
          position: absolute;
          top: 3px;
          left: 3px;
          width: 216px;
          height: 48px;
          border-radius: 100px;
          background-color: #fff;
          color: #fff;
          transform: scaleX(1);
          transition: all 0.4s ease;
          transition-property: transform; }
        #pricing section.pricing .plan-list .plan-item .free-start a.free-start-btn:hover {
          background-color: #fff;
          color: transparent;
          -webkit-background-clip: text;
          background-clip: text;
          background: linear-gradient(to right, #007BFF, #37E80A);
          z-index: 1; }
        #pricing section.pricing .plan-list .plan-item .free-start a.free-start-btn:hover::before {
          transform: scaleX(0); }
        #pricing section.pricing .plan-list .plan-item .free-start a.free-start-btn span.free-start-txt {
          color: #141414;
          width: 222px;
          height: 54px;
          position: relative;
          display: inline-block; }
          #pricing section.pricing .plan-list .plan-item .free-start a.free-start-btn span.free-start-txt:hover {
            position: relative;
            color: #fff; }
      #pricing section.pricing .plan-list .plan-item .pro {
        margin-bottom: 40px; }
        #pricing section.pricing .plan-list .plan-item .pro a.pro-btn {
          position: relative;
          display: inline-block;
          width: 222px;
          height: 54px;
          line-height: 54px;
          box-sizing: border-box;
          margin-bottom: 40px;
          background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
          font-size: 16px;
          font-weight: 700;
          color: #fff;
          text-align: center;
          border-radius: 100px;
          transition: color 0.4s ease; }
          #pricing section.pricing .plan-list .plan-item .pro a.pro-btn::before {
            content: '';
            position: absolute;
            top: 3px;
            left: 3px;
            width: 216px;
            height: 48px;
            border-radius: 100px;
            background-color: #fff;
            transform: scaleX(0);
            transition: all 0.4s ease;
            transition-property: transform; }
          #pricing section.pricing .plan-list .plan-item .pro a.pro-btn:hover {
            background-color: #fff;
            color: transparent;
            -webkit-background-clip: text;
            background-clip: text;
            background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42); }
          #pricing section.pricing .plan-list .plan-item .pro a.pro-btn:hover::before {
            transform: scaleX(1); }
          #pricing section.pricing .plan-list .plan-item .pro a.pro-btn span.pro-txt {
            color: #fff;
            width: 222px;
            height: 54px;
            position: relative;
            display: inline-block; }
            #pricing section.pricing .plan-list .plan-item .pro a.pro-btn span.pro-txt:hover {
              position: relative;
              background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
              -webkit-background-clip: text;
              -webkit-text-fill-color: transparent; }
    #pricing section.pricing .plan-list .recommend {
      position: relative;
      z-index: 0; }
      #pricing section.pricing .plan-list .recommend::before {
        content: '';
        position: absolute;
        transform: translate(-50%, -100%);
        width: 160px;
        height: 40px;
        background: url("../images/plan-recommend-image.svg") no-repeat; }
      #pricing section.pricing .plan-list .recommend::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        border-radius: 10px;
        padding: 3px;
        background: linear-gradient(to right, #3E0EFE, #17AC88, #46FA42);
        mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
        -webkit-mask-composite: destination-out;
        mask-composite: exclude;
        z-index: -1; }
  #pricing section.pricing .plan-end-text {
    text-align: center;
    margin-top: 20px; }
    #pricing section.pricing .plan-end-text p {
      font-size: 14px;
      color: #6d6d6d; }
  #pricing section.pricing .plan-comparison-button {
    display: flex;
    border: 1px solid;
    border-radius: 30px;
    padding: 10px 30px 10px 20px;
    align-items: center;
    background-color: #000000;
    width: fit-content;
    margin: 60px auto; }
    #pricing section.pricing .plan-comparison-button a {
      color: #ffffff;
      font-size: 14px;
      font-weight: bold;
      position: relative; }
      #pricing section.pricing .plan-comparison-button a::after {
        content: '';
        width: 40px;
        height: 1.5em;
        position: absolute;
        background: url("../images/plan-arrow.svg") no-repeat;
        top: 1px;
        right: -42px; }
#pricing section.feature-comparison {
  background-color: #F5F5F5;
  padding-bottom: 100px; }
  #pricing section.feature-comparison .inner h2 .section-head {
    margin-top: 0; }
  #pricing section.feature-comparison .inner .pricing-table {
    width: 100%;
    border-collapse: collapse;
    text-align: left;
    background-color: #ffffff;
    border-radius: 10px;
    overflow: hidden;
    margin-top: 50px;
    margin-bottom: 200px; }
    #pricing section.feature-comparison .inner .pricing-table thead {
      background-color: #ffffff; }
      #pricing section.feature-comparison .inner .pricing-table thead th {
        text-align: center;
        font-size: 20px;
        font-weight: bold;
        padding: 30px; }
        #pricing section.feature-comparison .inner .pricing-table thead th span {
          display: block;
          font-size: 14px;
          color: #666; }
      #pricing section.feature-comparison .inner .pricing-table thead .pro {
        font-size: 32px;
        font-weight: bold;
        position: relative;
        background-color: #F0FAF7;
        border-radius: 5px;
        text-align: center;
        padding: 30px 15px; }
        #pricing section.feature-comparison .inner .pricing-table thead .pro span {
          display: block;
          font-size: 14px;
          color: #141414; }
          #pricing section.feature-comparison .inner .pricing-table thead .pro span::before {
            content: 'Pro';
            display: block;
            background: linear-gradient(to right, #3E0EFE 0%, #17AC88 50%, #46FA42 100%);
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            font-size: 32px;
            font-weight: bold;
            position: relative; }
      #pricing section.feature-comparison .inner .pricing-table thead .free {
        font-size: 32px;
        font-weight: bold;
        background: linear-gradient(to right, #3E0EFE 0%, #17AC88 50%, #46FA42 100%);
        -webkit-background-clip: text;
        -webkit-text-fill-color: transparent;
        padding: 30px 15px; }
        #pricing section.feature-comparison .inner .pricing-table thead .free span {
          font-size: 14px;
          color: #141414;
          -webkit-background-clip: border-box;
          -webkit-text-fill-color: initial; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr th {
      width: 30%;
      background-color: #ffffff;
      padding-left: 70px;
      text-align: left;
      color: #9B9B9B;
      font-size: 16px;
      font-weight: bold; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .price-text {
      position: relative;
      padding: 70px 0 70px 70px; }
      #pricing section.feature-comparison .inner .pricing-table tbody tr .price-text::before {
        content: "プラン料金(税別)";
        position: absolute;
        color: #141414;
        font-size: 16px;
        font-weight: bold;
        top: -15px; }
      #pricing section.feature-comparison .inner .pricing-table tbody tr .price-text::after {
        content: '';
        position: absolute;
        bottom: 180px;
        left: 250px;
        width: 900px;
        height: 1px;
        background-color: #EDEDED;
        z-index: 10; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .form-text {
      position: relative;
      padding: 50px 0 20px 70px; }
      #pricing section.feature-comparison .inner .pricing-table tbody tr .form-text::before {
        content: "フォーム・サイト数";
        position: absolute;
        color: #141414;
        font-size: 16px;
        font-weight: bold;
        top: -15px; }
      #pricing section.feature-comparison .inner .pricing-table tbody tr .form-text::after {
        content: '';
        position: absolute;
        bottom: 94px;
        left: 250px;
        width: 900px;
        height: 1px;
        background-color: #EDEDED;
        z-index: 10; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .function-text {
      position: relative;
      padding: 20px 0 0 70px; }
      #pricing section.feature-comparison .inner .pricing-table tbody tr .function-text::before {
        content: "機能・サポート";
        position: absolute;
        color: #141414;
        font-size: 16px;
        font-weight: bold;
        top: -15px; }
      #pricing section.feature-comparison .inner .pricing-table tbody tr .function-text::after {
        content: '';
        position: absolute;
        bottom: 93px;
        left: 250px;
        width: 900px;
        height: 1px;
        background-color: #EDEDED;
        z-index: 10; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .site-text {
      padding: 20px 0 50px 70px; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .padding-bottom {
      padding-bottom: 70px; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr td {
      width: 35%;
      text-align: center;
      padding: 20px;
      font-size: 16px;
      font-weight: bold; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr:last-child {
      border-bottom: none; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .pro {
      background-color: #F0FAF7; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .monthly {
      position: relative; }
      #pricing section.feature-comparison .inner .pricing-table tbody tr .monthly::after {
        content: '月あたり332円';
        position: absolute;
        top: 105px;
        right: 155px;
        font-size: 15px;
        font-weight: lighter; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .circle {
      width: 12px;
      height: 12px;
      border: 2px solid black;
      border-radius: 50%;
      display: inline-block; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .line {
      color: #8E8E8E; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .price {
      font-weight: bold;
      font-size: 28px;
      padding: 70px 0 70px; }
      #pricing section.feature-comparison .inner .pricing-table tbody tr .price .yen {
        font-size: 16px;
        font-weight: bold; }
      #pricing section.feature-comparison .inner .pricing-table tbody tr .price .year {
        font-size: 16px;
        font-weight: bold; }
      #pricing section.feature-comparison .inner .pricing-table tbody tr .price .tax {
        font-size: 12px;
        font-weight: lighter; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .form-padding {
      padding-top: 50px; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .site-padding {
      padding-bottom: 50px; }
    #pricing section.feature-comparison .inner .pricing-table tbody tr .function-padding {
      padding-top: 50px; }
#pricing section.plan-question {
  background-color: #F5F5F5;
  padding-bottom: 180px; }
  #pricing section.plan-question .inner h2 .section-head {
    margin-top: 0; }
  #pricing section.plan-question .inner .accordion-container {
    width: 100%;
    border: 1px solid #CBCBCB;
    border-radius: 20px;
    overflow: hidden;
    margin-bottom: 220px; }
    #pricing section.plan-question .inner .accordion-container .accordion-item {
      border-bottom: 1px solid #EDEDED; }
      #pricing section.plan-question .inner .accordion-container .accordion-item .accordion-title {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 25px;
        background-color: #ffffff;
        cursor: pointer;
        transition: all 0.3s ease; }
        #pricing section.plan-question .inner .accordion-container .accordion-item .accordion-title:hover {
          opacity: 0.7; }
        #pricing section.plan-question .inner .accordion-container .accordion-item .accordion-title h3 {
          margin: 0;
          font-size: 16px;
          font-weight: bold; }
        #pricing section.plan-question .inner .accordion-container .accordion-item .accordion-title .accordion-toggle {
          display: inline-block;
          position: relative;
          width: 16px;
          height: 16px;
          transition: transform 0.3s ease; }
        #pricing section.plan-question .inner .accordion-container .accordion-item .accordion-title .accordion-toggle::before {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          width: 10px;
          height: 2px;
          background-color: #000;
          transform: translate(-50%, -50%) rotate(90deg);
          transition: all 0.3s ease; }
        #pricing section.plan-question .inner .accordion-container .accordion-item .accordion-title .accordion-toggle::after {
          content: '';
          position: absolute;
          top: 50%;
          left: 50%;
          width: 10px;
          height: 2px;
          background-color: #000;
          transition: all 0.3s ease;
          transform: translate(-50%, -50%); }
        #pricing section.plan-question .inner .accordion-container .accordion-item .accordion-title .active::before {
          transform: translate(-50%, -50%) rotate(0deg); }
        #pricing section.plan-question .inner .accordion-container .accordion-item .accordion-title .active::after {
          transform: translate(-50%, -50%) rotate(0deg); }
      #pricing section.plan-question .inner .accordion-container .accordion-item .accordion-content {
        padding: 25px;
        display: none;
        background-color: #ffffff; }

/******************************/
/*	記事詳細ページ
/******************************/
#singular .singular .inner .breadcrumb {
  margin: 25px 0 40px 0; }
#singular .singular .inner .content-blk {
  display: block; }
  #singular .singular .inner .content-blk main {
    width: 800px;
    margin-right: 120px;
    display: inline-block;
    float: left; }
    #singular .singular .inner .content-blk main .main-content {
      display: inline-block; }
      #singular .singular .inner .content-blk main .main-content h1 {
        text-align: left;
        font-size: 32px;
        margin-bottom: 60px; }
      #singular .singular .inner .content-blk main .main-content .post-content {
        margin-bottom: 450px; }
        #singular .singular .inner .content-blk main .main-content .post-content h2 {
          font-size: 24px;
          text-align: left;
          margin: 46px 0 24px; }
        #singular .singular .inner .content-blk main .main-content .post-content h3 {
          font-size: 18px;
          margin-bottom: 20px; }
        #singular .singular .inner .content-blk main .main-content .post-content p {
          font-size: 16px;
          color: #1A1A1A;
          line-height: 1.53;
          margin-bottom: 24px; }
        #singular .singular .inner .content-blk main .main-content .post-content a {
          color: #215FFF; }
        #singular .singular .inner .content-blk main .main-content .post-content img {
          margin-bottom: 60px; }
    #singular .singular .inner .content-blk main .fixed {
      position: fixed;
      top: 20px;
      width: 15%; }
  #singular .singular .inner .content-blk aside.sidebar {
    width: 280px;
    display: inline-block;
    float: right;
    box-sizing: border-box;
    margin-top: 0;
    padding: 0 20px; }
    #singular .singular .inner .content-blk aside.sidebar ul {
      padding: 0; }
      #singular .singular .inner .content-blk aside.sidebar ul li a {
        text-decoration: none;
        color: #000;
        font-size: 16px;
        font-weight: bold;
        transition: all 0.3s ease; }
      #singular .singular .inner .content-blk aside.sidebar ul li a:hover {
        text-decoration: underline; }
      #singular .singular .inner .content-blk aside.sidebar ul li .post-name {
        margin-bottom: 14px;
        display: inline-block;
        color: #8E8E8E;
        font-size: 15px;
        text-decoration: underline;
        font-weight: normal;
        transition: all 0.3s ease; }
        #singular .singular .inner .content-blk aside.sidebar ul li .post-name:hover {
          opacity: 0.7;
          text-decoration: none; }
      #singular .singular .inner .content-blk aside.sidebar ul li .category-name {
        margin: 0 0 16px;
        display: inline-block; }

/******************************/
/*	問合せページ　.contact
/******************************/
#contact section.contact {
  background-color: #F5F5F5;
  padding-top: 130px; }
  #contact section.contact h1 .section-head {
    margin: 20px 0; }
  #contact section.contact .contact-explain {
    text-align: center;
    margin-bottom: 60px; }
    #contact section.contact .contact-explain a {
      text-decoration: underline;
      color: #215FFF;
      transition: all 0.3s ease; }
      #contact section.contact .contact-explain a:hover {
        opacity: 0.7;
        text-decoration: none; }
  #contact section.contact .cards-wrapper {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    padding: 20px; }
    #contact section.contact .cards-wrapper .card {
      height: 400px;
      background-color: #fff;
      border: 1px solid #ddd;
      border-radius: 8px;
      padding: 30px 25px; }
      #contact section.contact .cards-wrapper .card h2 {
        font-size: 24px;
        margin-bottom: 20px; }
      #contact section.contact .cards-wrapper .card p {
        font-size: 14px;
        color: #666;
        margin-bottom: 20px; }
        #contact section.contact .cards-wrapper .card p a {
          transition: all 0.3s ease; }
          #contact section.contact .cards-wrapper .card p a:hover {
            opacity: 0.7; }
      #contact section.contact .cards-wrapper .card .article-list {
        font-size: 14px;
        display: inline-block;
        margin-top: 10px;
        padding: 8px 16px;
        border: 1px solid #000;
        border-radius: 30px;
        text-decoration: none;
        color: #000;
        transition: all 0.3s ease; }
        #contact section.contact .cards-wrapper .card .article-list:hover {
          opacity: 0.7; }
#contact section.contact-form {
  background-color: #F5F5F5;
  padding-bottom: 110px; }
  #contact section.contact-form .inner h2 .section-head {
    margin-top: 0;
    padding-top: 200px; }
  #contact section.contact-form .inner p.form-contact-explain {
    text-align: center;
    margin-bottom: 70px; }
    #contact section.contact-form .inner p.form-contact-explain a {
      text-decoration: underline;
      color: #215FFF;
      transition: all 0.3s ease; }
      #contact section.contact-form .inner p.form-contact-explain a:hover {
        opacity: 0.7;
        text-decoration: none; }
  #contact section.contact-form .inner fieldset {
    max-width: 890px;
    margin: 0 auto;
    padding: 80px;
    background-color: #ffffff; }
    #contact section.contact-form .inner fieldset .form-group {
      margin-bottom: 15px; }
      #contact section.contact-form .inner fieldset .form-group label {
        font-size: 16px; }
        #contact section.contact-form .inner fieldset .form-group label .required {
          color: #FF0B0B;
          margin-left: 2px; }
      #contact section.contact-form .inner fieldset .form-group input[type="text"],
      #contact section.contact-form .inner fieldset .form-group input[type="email"],
      #contact section.contact-form .inner fieldset .form-group select,
      #contact section.contact-form .inner fieldset .form-group textarea {
        width: 100%;
        padding: 10px;
        margin: 10px 0;
        font-size: 16px;
        border: 1px solid #ccc;
        border-radius: 5px;
        box-sizing: border-box;
        color: #141414;
        background-color: #F5F5F5; }
      #contact section.contact-form .inner fieldset .form-group input[type="checkbox"] {
        margin: 0 7px 15px -15px;
        transform: scale(1.3);
        -webkit-transform: scale(1.3); }
      #contact section.contact-form .inner fieldset .form-group option:nth-child(1),
      #contact section.contact-form .inner fieldset .form-group select option:disabled,
      #contact section.contact-form .inner fieldset .form-group select:invalid {
        color: #999; }
      #contact section.contact-form .inner fieldset .form-group a {
        color: #215FFF;
        text-decoration: underline; }
        #contact section.contact-form .inner fieldset .form-group a:hover {
          opacity: 0.7;
          text-decoration: none; }
    #contact section.contact-form .inner fieldset .terms p {
      display: block; }
    #contact section.contact-form .inner fieldset .submit-button {
      text-align: center;
      margin-top: 60px; }
      #contact section.contact-form .inner fieldset .submit-button button {
        padding: 15px 30px;
        background-color: #000;
        color: #fff;
        border: none;
        border-radius: 30px;
        font-size: 16px;
        cursor: pointer;
        transition: all 0.3s ease; }
      #contact section.contact-form .inner fieldset .submit-button button:hover {
        background-color: #333333; }
    #contact section.contact-form .inner fieldset .wpcf7-not-valid-tip,
    #contact section.contact-form .inner fieldset span.error-message {
      color: #dc3232;
      font-size: 1em;
      font-weight: normal;
      display: block;
      margin-left: 8px; }

/******************************/
/*	ダウンロードページ downroads
/******************************/
#downroads section {
  background-color: #F5F5F5;
  padding: 130px 0 160px; }
  #downroads section div.inner h1 .section-head {
    margin-bottom: 23px; }
  #downroads section div.inner p.guidance {
    font-size: 16px;
    text-align: center; }
  #downroads section div.inner div.downroads-container {
    width: 960px;
    text-align: left;
    margin: 55px auto; }
    #downroads section div.inner div.downroads-container div.downroads-item {
      padding: 60px 15px;
      border-top: 1px solid #CBCBCB; }
      #downroads section div.inner div.downroads-container div.downroads-item span.date {
        font-size: 14px;
        color: #8E8E8E; }
      #downroads section div.inner div.downroads-container div.downroads-item h2 {
        font-size: 24px;
        font-weight: bold;
        text-align: left;
        margin: 16px 0 8px; }
      #downroads section div.inner div.downroads-container div.downroads-item ul {
        margin: 8px 0; }
        #downroads section div.inner div.downroads-container div.downroads-item ul li {
          list-style-image: none;
          margin-bottom: 8px;
          position: relative;
          padding-left: 1em; }
          #downroads section div.inner div.downroads-container div.downroads-item ul li::before {
            content: "・";
            position: absolute;
            left: 0; }
      #downroads section div.inner div.downroads-container div.downroads-item div.remarks-box {
        font-size: 14px;
        color: #8E8E8E;
        margin-top: 16px; }
        #downroads section div.inner div.downroads-container div.downroads-item div.remarks-box p {
          line-height: 1.4; }
      #downroads section div.inner div.downroads-container div.downroads-item div.download-button-box {
        margin: 40px 0 0; }
        #downroads section div.inner div.downroads-container div.downroads-item div.download-button-box a.download-button {
          position: relative;
          display: inline-block;
          width: 120px;
          height: 50px;
          line-height: 46px;
          border: 2px solid #141414;
          background-color: #141414;
          color: #fff;
          box-sizing: border-box;
          font-size: 14px;
          font-weight: 700;
          text-align: center;
          border-radius: 50px;
          transition: color 0.4s ease; }
          #downroads section div.inner div.downroads-container div.downroads-item div.download-button-box a.download-button::before {
            content: '';
            position: absolute;
            top: 0;
            left: 0;
            width: 100%;
            height: 100%;
            background-color: #fff;
            border-radius: 50px;
            transform: scaleX(0);
            transition: all 0.4s ease;
            transition-property: transform; }
          #downroads section div.inner div.downroads-container div.downroads-item div.download-button-box a.download-button:hover {
            color: #141414;
            opacity: 1.0; }
          #downroads section div.inner div.downroads-container div.downroads-item div.download-button-box a.download-button:hover::before {
            transform: scaleX(1); }
          #downroads section div.inner div.downroads-container div.downroads-item div.download-button-box a.download-button span.txt-downroad {
            font-size: 14px;
            font-weight: bold;
            position: relative; }
    #downroads section div.inner div.downroads-container div.downroads-item:last-child {
      border-bottom: 1px solid #CBCBCB; }
  #downroads section div.inner div.pagination {
    width: 960px;
    margin: 0 auto;
    font-size: 16px;
    text-align: center; }
    #downroads section div.inner div.pagination a {
      display: inline-block; }
      #downroads section div.inner div.pagination a:hover {
        background-color: #333;
        color: #fff; }
    #downroads section div.inner div.pagination .page-numbers {
      border: 1px solid #141414;
      padding: 10px 20px;
      box-sizing: border-box; }
    #downroads section div.inner div.pagination .current {
      color: #fff;
      background-color: #141414; }
    #downroads section div.inner div.pagination .next, #downroads section div.inner div.pagination .prev {
      border: none; }

/******************************/
/*	サンクスページ
/******************************/
#thanks .thanks {
  background-color: #fff;
  padding-bottom: 110px; }
  #thanks .thanks .inner h2 {
    margin-top: 0;
    padding-top: 120px;
    background: linear-gradient(to right, #3E0EFE 0%, #17AC88 50%, #46FA42 100%);
    -webkit-text-fill-color: transparent;
    background-clip: text;
    font-size: 105px;
    font-weight: 900;
    letter-spacing: -1px;
    position: relative; }
  #thanks .thanks .inner h2::after {
    content: "";
    position: absolute;
    bottom: -25px;
    left: 559px;
    width: 83px;
    height: 27px;
    background-image: url("../images/Union.webp");
    background-position: center; }
  #thanks .thanks .inner .main-text {
    width: 100%;
    margin: 65px auto 0 auto;
    padding-bottom: 120px;
    text-align: center; }
    #thanks .thanks .inner .main-text p {
      font-size: 18px;
      line-height: 1.53;
      margin-bottom: 24px; }
    #thanks .thanks .inner .main-text .attention_blk {
      width: 640px;
      margin: 60px auto 0 auto;
      border: 1px solid #CBCBCB;
      border-radius: 20px;
      padding: 25px;
      background-color: #F5F5F5; }
      #thanks .thanks .inner .main-text .attention_blk p {
        font-size: 16px; }

/******************************/
/*	cookie確認のモーダル
/******************************/
.cookie-modal {
  display: none;
  position: fixed;
  z-index: 1000;
  left: 0;
  bottom: 0;
  width: 100%;
  height: auto;
  background-color: rgba(85, 86, 95, 0.85); }
  .cookie-modal .cookie-modal-content {
    position: relative;
    margin: 20px auto;
    padding: 20px; }
    .cookie-modal .cookie-modal-content .cookie-close {
      position: absolute;
      top: -10px;
      right: 10px;
      font-size: 24px;
      cursor: pointer;
      color: #fff; }
    .cookie-modal .cookie-modal-content .cookie-consent_blk {
      display: flex;
      justify-content: center; }
      .cookie-modal .cookie-modal-content .cookie-consent_blk .left-blk {
        width: 640px;
        box-sizing: border-box;
        text-align: left; }
        .cookie-modal .cookie-modal-content .cookie-consent_blk .left-blk p {
          color: #fff;
          text-align: left;
          font-size: 14px;
          font-weight: 700; }
          .cookie-modal .cookie-modal-content .cookie-consent_blk .left-blk p a {
            color: #fff;
            text-decoration: underline; }
            .cookie-modal .cookie-modal-content .cookie-consent_blk .left-blk p a:hover {
              color: #3E0EFE;
              text-decoration: none; }
      .cookie-modal .cookie-modal-content .cookie-consent_blk .right-blk {
        box-sizing: border-box;
        position: relative; }
        .cookie-modal .cookie-modal-content .cookie-consent_blk .right-blk button.cokkie-btn {
          background-color: #3E0EFE;
          padding: 14px 60px 14px 50px;
          border-radius: 54px;
          color: #fff;
          font-weight: 700; }
          .cookie-modal .cookie-modal-content .cookie-consent_blk .right-blk button.cokkie-btn::after {
            content: "";
            position: absolute;
            top: 16px;
            right: 34px;
            width: 17px;
            height: 17px;
            background-image: url("../images/cookie-arrow.webp");
            background-size: cover;
            background-repeat: no-repeat; }
          .cookie-modal .cookie-modal-content .cookie-consent_blk .right-blk button.cokkie-btn:hover {
            background-color: #fff;
            color: #3E0EFE; }
            .cookie-modal .cookie-modal-content .cookie-consent_blk .right-blk button.cokkie-btn:hover::after {
              background-image: url("../images/cookie-arrow-on.webp"); }

/******************************/
/*	404ページ
/******************************/
#not-found .inner {
  padding-top: 50px; }
  #not-found .inner h1 {
    text-align: center;
    font-size: 42px;
    display: block;
    margin-top: 30px;
    margin-bottom: 70px;
    font-weight: 900; }
  #not-found .inner .main-text {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 200px;
    text-align: center; }
    #not-found .inner .main-text p {
      font-size: 16px;
      margin-bottom: 25px;
      line-height: 1.6; }
