  * {
      margin: 0;
      padding: 0;
  }
  /*　iOSのデフォルトの設定を無効か */
  /* コンテキストメニューを無効化する */
  
  button,
  textarea,
  select {
      -webkit-appearance: none;
      -moz-appearance: none;
      appearance: none;
  }
  
  body,
  html {
      margin: 0;
      padding: 0;
      width: 100%;
      height: 100%;
      font-family: sans-serif;
      background-color: #f5f3f3;
      scroll-behavior: smooth;
  }
  
  html {
      touch-action: manipulation;
  }
  
  @media screen and (max-width: 768px) {
      .parent {
          margin: 0 auto;
          width: 95%;
      }
  }
  
  @media screen and (min-width: 769px) {
      .parent {
          margin: 0 auto;
          width: 70%;
      }
  }
  
  @media screen and (max-width: 768px) {
      .container_main {
          max-width: 95%;
          margin: 0px auto;
          padding: 20px;
          margin-top: 5px;
      }
      .container_main_sub {
          max-width: 95%;
          margin: 0px auto;
          padding: 20px;
          margin-top: 5px;
      }
      .header_parent {
          background-color: #FFF;
          width: 100%;
          margin-top: 0px;
          padding-bottom: 2px;
          margin: 0;
          position: relative;
      }
      .header {
          margin: 0px auto;
          margin-top: 5px;
          max-width: 95%;
          text-align: center;
      }
      .container_edit {
          max-width: 95%;
          margin: 0px auto;
          padding: 20px;
          margin-top: 5px;
      }
      #textArea {
          max-height: 400px;
          margin-top: 5px;
          margin-bottom: 15px;
          padding-right: 10px;
          padding-left: 10px;
          border: 1px solid #ddd;
          border-radius: 8px;
          background-color: #FFF;
          overflow-y: auto;
          scrollbar-width: none;
          -ms-overflow-style: none;
      }
      #textArea::-webkit-scrollbar {
          display: none;
      }
      .radio-group {
          gap: 10px;
          /* モバイル表示時の間隔を調整 */
      }
      #charCount_theme {
          margin-left: 10px;
          color: #666;
          font-size: 0.8em;
      }
      .cancel_theme {
          font-size: 1em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #808080;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .cancel_edit {
          font-size: 1em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #808080;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .cancel_key_word {
          font-size: 1em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #808080;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .cancel_key_word2 {
          font-size: 1em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #808080;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .cancel_key_word3 {
          font-size: 1em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #808080;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .fix {
          font-size: 1em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #ff4500;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      #add_keyword {
          font-size: 1em;
          margin-top: 15px;
          margin-bottom: 15px;
          padding: 15px 20px;
          background-color: #ff4500;
          color: white;
          border: none;
          border-radius: 8px;
          cursor: pointer;
          font-weight: bold;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .form_btn {
          font-size: 1em;
          margin-top: 5px;
          margin-bottom: 10px;
          padding: 10px 20px;
          background-color: #050a30;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          text-align: left;
          width: fit-content;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
      }
      .form_btn:hover {
          background-color: #484b69;
      }
      .form_btn2 {
          font-size: 1em;
          margin-top: 5px;
          padding: 10px 20px;
          background-color: #4682b4;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .form_btn2:hover {
          background-color: #24537a;
      }
      #sendButton {
          font-size: 1.1em;
          padding: 10px 20px;
          background-color: #ff8c00;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      #sendButton:hover {
          background-color: #b22222;
      }
      #clear_imput {
          font-size: 1em;
          margin-left: 15px;
          padding: 10px 20px;
          background-color: #ff8c00;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          transition: all 0.5s ease;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      #clear_imput:hover {
          background-color: #b22222;
      }
      .center_title {
          text-align: center;
          font-size: 1em;
      }
      #make_html_btn {
          font-size: 1em;
          padding: 10px 20px;
          background-color: #4682b4;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          border: 1px solid #4682b4;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      #make_html_btn:hover {
          background-color: #24537a;
      }
  }
  
  @media screen and (min-width: 769px) {
      .container_main {
          width: 95%;
          max-width: 670px;
          margin: 0px auto;
          padding: 20px;
          margin-top: 5px;
      }
      .container_main_sub {
          width: 60%;
          margin: 0px auto;
          padding: 20px;
          margin-top: 5px;
      }
      .header_parent {
          background-color: #FFF;
          width: 100%;
          margin-top: 0px;
          padding-bottom: 2px;
          margin: 0;
          position: relative;
      }
      .header {
          margin: 0px auto;
          margin-top: 5px;
          width: 95%;
          max-width: 620px;
          text-align: center;
      }
      #textArea {
          max-height: 600px;
          margin-top: 5px;
          margin-bottom: 15px;
          padding-right: 10px;
          padding-left: 10px;
          border: 1px solid #ddd;
          border-radius: 8px;
          background-color: #FFF;
          overflow-y: auto;
          scrollbar-width: none;
          -ms-overflow-style: none;
      }
      #textArea::-webkit-scrollbar {
          display: none;
      }
      #charCount_theme {
          margin-left: 10px;
          color: #666;
          font-size: 14px;
      }
      .cancel_theme {
          font-size: 0.8em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #808080;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .cancel_edit {
          font-size: 0.8em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #808080;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .cancel_key_word {
          font-size: 0.8em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #808080;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .cancel_key_word2 {
          font-size: 0.8em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #808080;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .cancel_key_word3 {
          font-size: 0.8em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #808080;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .fix {
          font-size: 1em;
          margin-top: 25px;
          padding: 5px 10px;
          width: fit-content;
          background-color: #ff4500;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .fix:hover {
          background-color: #c43805;
      }
      #add_keyword {
          font-size: 1.1em;
          margin-top: 15px;
          margin-bottom: 25px;
          padding: 15px 20px;
          background-color: #ff4500;
          color: white;
          border: none;
          border-radius: 8px;
          cursor: pointer;
          font-weight: bold;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .form_btn {
          font-size: 1em;
          margin-top: 5px;
          margin-bottom: 10px;
          padding: 10px 20px;
          background-color: #050a30;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          text-align: left;
          width: fit-content;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.3);
      }
      .form_btn:hover {
          background-color: #272626;
      }
      .form_btn2 {
          font-size: 1em;
          margin-top: 5px;
          padding: 10px 20px;
          background-color: #4682b4;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      .form_btn2:hover {
          background-color: #1d537e;
      }
      #make_html_btn {
          font-size: 1em;
          padding: 10px 20px;
          background-color: #4682b4;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          border: 1px solid #4682b4;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      #make_html_btn:hover {
          background-color: #1d537e;
      }
      #sendButton {
          font-size: 1em;
          padding: 10px 20px;
          background-color: #ff8c00;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      #sendButton:hover {
          background-color: #b22222;
      }
      #clear_imput {
          font-size: 1em;
          margin-left: 15px;
          padding: 10px 20px;
          background-color: #ff8c00;
          color: white;
          border: none;
          border-radius: 4px;
          cursor: pointer;
          transition: all 0.5s ease;
          box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
      }
      #clear_imput:hover {
          background-color: #b22222;
      }
      .center_title {
          text-align: center;
          font-size: 1.2em;
      }
  }
  
  .container_logo {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 10px;
      margin-bottom: 5px;
  }
  
  .btn3 {
      cursor: pointer;
      display: inline-block;
      text-align: center;
      margin-top: 5px;
      margin-bottom: 15px;
      color: #fff;
      border-radius: 6px;
      border-style: hidden;
      border-color: #ff1493;
      padding: 5px 10px;
      font-size: 0.8em;
      background-color: #ff1493;
      font-weight: 700;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  }
  
  .btn {
      cursor: pointer;
      display: inline-block;
      text-align: center;
      margin-top: 5px;
      width: 125px;
      color: #fff;
      border-radius: 6px;
      border-style: hidden;
      border-color: #32597b;
      padding: 10px 10px;
      font-size: 1em;
      background-color: #32597b;
      font-weight: 700;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  }
  
  .btn_ok {
      cursor: pointer;
      display: inline-block;
      text-align: center;
      margin-top: 5px;
      margin-bottom: 5px;
      color: #fff;
      border-radius: 6px;
      border-style: hidden;
      border-color: #32597b;
      padding: 5px 10px;
      font-size: 1em;
      background-color: #32597b;
      font-weight: 700;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  }
  
  .close-btn {
      position: absolute;
      top: -8px;
      right: -8px;
      width: 34px;
      height: 34px;
      cursor: pointer;
      display: flex;
      align-items: center;
      justify-content: center;
      font-size: 1.5em;
      color: #2e506d;
      border-radius: 50%;
      background-color: #FFF;
      border: 2px solid #2e506d;
  }
  
  .close-btn:hover {
      background-color: #2e506d;
      color: #FFF;
      border: 1px solid #2e506d;
  }
  
  @media screen and (max-width: 768px) {
      .mail_parent,
      .mail_parent_request {
          position: relative;
          margin: 0 auto;
          margin-top: 30px;
          margin-bottom: 30px;
          width: 85%;
          min-width: 450px;
          padding-left: 20px;
          padding-right: 20px;
          text-align: center;
          border: 2px solid #2e506d;
          background-color: #3a688d;
          border-radius: 15px;
      }
      .mailtext,
      .mailtext_request {
          padding: 5px;
          margin: 0 auto;
          width: 85%;
          max-width: 400px;
          border-radius: 6px;
      }
  }
  
  @media screen and (min-width: 769px) {
      .mail_parent,
      .mail_parent_request {
          position: relative;
          margin: 0 auto;
          margin-top: 30px;
          margin-bottom: 30px;
          width: 70%;
          max-width: 800px;
          min-width: 450px;
          padding-left: 20px;
          padding-right: 20px;
          text-align: center;
          border: 2px solid #2e506d;
          background-color: #3a688d;
          border-radius: 15px;
      }
      .mailtext,
      .mailtext_request {
          padding: 5px;
          margin: 0 auto;
          width: 40%;
          max-width: 400px;
          border-radius: 6px;
      }
  }
  
  .mail_color {
      color: #FFF;
      font-weight: bold;
  }
  
  #niyou,
  #niyou_request {
      padding: 5px;
      border-radius: 6px;
  }
  
  .logo {
      font-family: 'Kosugi', sans-serif;
      font-size: 1.8em;
      color: #ff4500;
      margin: 0;
      cursor: pointer;
  }
  
  .pens {
      height: 90px;
      width: auto;
      cursor: pointer;
  }
  
  #footer {
      position: relative;
      margin-top: 0px;
      z-index: 3;
      text-align: center;
      bottom: 0;
      padding-top: 5px;
      font-size: 0.8em;
      height: 70px;
      color: #525050;
      background-color: #FFF;
  }
  
  @media screen and (max-width: 768px) {
      #footer {
          width: 100%;
      }
  }
  
  @media screen and (min-width: 769px) {
      #footer {
          width: 100%;
      }
  }
  
  .header_ani {
      position: relative;
      text-align: center;
      background: linear-gradient(60deg, rgba(146, 170, 198, 1) 0%, rgba(0, 172, 193, 1) 100%);
      color: white;
  }
  
  .inner-header {
      height: 100vh;
      width: 100%;
      margin: 0;
      padding: 0;
  }
  
  .flex {
      /*Flexbox for containers*/
      display: flex;
      justify-content: center;
      align-items: center;
      text-align: center;
  }
  
  .waves {
      position: relative;
      width: 100%;
      height: 15vh;
      margin-bottom: -7px;
      /*Fix for safari gap*/
      min-height: 100px;
      max-height: 150px;
  }
  /* Animation */
  
  .parallax>use {
      animation: move-forever 25s cubic-bezier(.55, .5, .45, .5) infinite;
  }
  
  .parallax>use:nth-child(1) {
      animation-delay: -2s;
      animation-duration: 7s;
  }
  
  .parallax>use:nth-child(2) {
      animation-delay: -3s;
      animation-duration: 10s;
  }
  
  .parallax>use:nth-child(3) {
      animation-delay: -4s;
      animation-duration: 13s;
  }
  
  .parallax>use:nth-child(4) {
      animation-delay: -5s;
      animation-duration: 20s;
  }
  
  @keyframes move-forever {
      0% {
          transform: translate3d(-90px, 0, 0);
      }
      100% {
          transform: translate3d(85px, 0, 0);
      }
  }
  /*Shrinking for mobile*/
  
  @media (max-width: 768px) {
      .waves {
          height: 70px;
          min-height: 70px;
      }
  }
  
  .footer_link {
      padding-right: 10px;
  }
  
  .footer_logo {
      width: 80px;
      height: auto;
  }
  
  .footer_table {
      width: 100%;
      padding-right: 8px;
  }
  
  .footer_link a {
      color: #525050;
      text-decoration: none;
  }
  
  #footer {
      margin-top: 0px;
      z-index: 3;
      text-align: center;
      bottom: 0;
      padding-top: 5px;
      font-size: 0.8em;
      height: 70px;
      color: #525050;
      background-color: #FFF;
  }
  
  @media screen and (max-width: 768px) {
      #footer {
          width: 100%;
      }
  }
  
  @media screen and (min-width: 769px) {
      #footer {
          width: 100%;
      }
  }
  
  .logo_parts_hidari {
      width: fit-content;
      text-align: center;
  }
  
  .logo_parts_migi {
      width: fit-content;
  }
  
  .footer_table {
      width: 100%;
      padding-right: 8px;
  }
  
  .footer_link {
      cursor: pointer;
      padding-right: 10px;
  }
  
  .footer_logo {
      width: 80px;
      height: auto;
  }
  
  .footer_link a:hover {
      color: #525050;
  }
  
  @media screen and (max-width: 768px) {
      .custom-swal-popup {
          width: 97% !important;
      }
  }
  
  @media screen and (min-width: 769px) {
      .custom-swal-popup {
          width: 70% !important;
      }
  }
  
  .pcview {
      display: inline !important;
  }
  
  .spview {
      display: none !important;
  }
  
  @media screen and (max-width: 769px) {
      /*tablet , smart phone access*/
      .pcview {
          display: none !important;
      }
      .spview {
          display: inline !important;
      }
  }
  
  @media screen and (min-width: 769px) {
      .back_design {
          margin: 0;
          padding: 0;
          width: 100%;
          height: auto;
          background-image: url('./img/bg_bungu.png');
          background-repeat: no-repeat;
          background-size: 50% auto;
      }
  }
  
  .cancel_theme:hover {
      background-color: #464545;
  }
  
  .cancel_edir:hover {
      background-color: #464545;
  }
  
  .cancel_key_word3:hover {
      background-color: #464545;
  }
  
  .cancel_key_word:hover {
      background-color: #464545;
  }
  
  .cancel_key_word2:hover {
      background-color: #464545;
  }
  
  .response {
      margin-top: 20px;
      padding: 10px;
      padding-bottom: 20px;
      padding-top: 20px;
      border: 1px solid #ddd;
      border-radius: 4px;
      background-color: #FFF;
      user-select: none;
      /* テキスト選択を無効化 */
      -webkit-user-select: none;
      /* Safari用 */
      -moz-user-select: none;
      /* Firefox用 */
      -ms-user-select: none;
  }
  
  .response_html_parent {
      border: 1px solid #ddd;
      border-radius: 4px;
      background-color: #FFF;
  }
  
  .response_head {
      font-size: 0.9em;
      margin-top: 20px;
      margin-bottom: 8px;
      padding: 10px;
      padding-left: 20px;
      padding-right: 20px;
      color: #FFF;
      background-color: #000;
  }
  
  .response_html {
      margin-top: 10px;
      padding: 10px;
      padding-left: 30px;
      padding-right: 20px;
      background-color: #FFF;
      overflow-y: auto;
      overflow-x: hidden;
      -ms-overflow-style: none;
      scrollbar-width: none;
      user-select: none;
      /* テキスト選択を無効化 */
      -webkit-user-select: none;
      /* Safari用 */
      -moz-user-select: none;
      /* Firefox用 */
      -ms-user-select: none;
  }
  
  .response_html::-webkit-scrollbar {
      display: none;
  }
  
  .response_fact {
      margin-top: 20px;
      padding: 10px;
      border: 1px solid #ddd;
      border-radius: 4px;
      background-color: #FFF;
      user-select: none;
      /* テキスト選択を無効化 */
      -webkit-user-select: none;
      /* Safari用 */
      -moz-user-select: none;
      /* Firefox用 */
      -ms-user-select: none;
  }
  
  .edit_text {
      margin-top: 20px;
      padding: 20px;
      border: 1px solid #ddd;
      border-radius: 8px;
      background-color: #FFF;
  }
  
  #comment {
      color: #50514d;
      font-weight: bold;
  }
  
  #comment_theme {
      color: #50514d;
      font-weight: bold;
  }
  
  #comment_html {
      color: #50514d;
      font-weight: bold;
  }
  
  #comment_fact {
      margin-top: 30px;
      color: #50514d;
      font-weight: bold;
  }
  
  a.media {
      color: black;
      text-decoration: underline;
  }
  
  a.media:visited {
      color: black;
  }
  
  #modoru {
      margin: 0 auto;
      text-align: center;
      width: 100px;
      cursor: pointer;
      background-color: #55575c;
      color: #FFF;
      border-radius: 6px;
      border-style: hidden;
      border: 2px solid #32545f;
      font-weight: bold;
  }
  
  .submit {
      cursor: pointer;
      width: fit-content;
      display: block;
      margin: 0 auto;
      text-align: center;
      font-size: 1em;
      padding: 5px 12px;
      color: #FFF;
      border-radius: 5px;
      font-weight: bold;
      background-color: #68889e;
  }
  
  #thanks {
      margin-top: 10px;
      text-align: center;
  }
  
  #thanks_request {
      margin-top: 20px;
      text-align: center;
  }
  
  .mail_parent2 {
      width: 90%;
      height: fit-content;
      text-align: center;
      position: fixed;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      background-color: #fff;
      padding: 20px;
      border-radius: 10px;
      z-index: 100;
      display: none;
  }
  
  .modal-overlay {
      position: fixed;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background-color: rgba(0, 0, 0, 0.5);
      z-index: 99;
      display: none;
  }
  
  .clear_btn {
      margin-left: 15px;
  }
  
  .clear_btn_html {
      margin-left: 15px;
  }
  /* ページ全体を隠すためのスタイル */
  
  #content {
      display: none;
  }
  /* ロック画面用のスタイル */
  
  #passwordPrompt {
      display: flex;
      align-items: center;
      justify-content: center;
      height: 100vh;
      background-color: #f2f2f2;
  }
  
  #passwordInput {
      padding: 10px;
      font-size: 16px;
      margin-right: 10px;
  }
  
  #passwordButton {
      padding: 10px 20px;
      background-color: #808080;
      color: white;
      border: none;
      border-radius: 4px;
      cursor: pointer;
  }
  
  .mojisuu {
      color: #4682b4;
      font-weight: bold;
  }
  
  .response-wrapper {
      position: relative;
  }
  
  .response-wrapper_html {
      position: relative;
  }
  
  .response-wrapper_fact {
      position: relative;
  }
  
  .response-wrapper_kiji {
      position: relative;
  }
  
  .response-wrapper_theme {
      position: relative;
  }
  
  .response-wrapper::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(255, 255, 255, 0);
      z-index: 1;
      pointer-events: auto;
      /* マウスイベントを有効化 */
      user-select: none;
      /* テキスト選択を無効化 */
      -webkit-user-select: none;
      /* Safari用 */
      -moz-user-select: none;
      /* Firefox用 */
      -ms-user-select: none;
  }
  
  .response-wrapper_html::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(255, 255, 255, 0);
      z-index: 1;
      pointer-events: auto;
      /* マウスイベントを有効化 */
      user-select: none;
      /* テキスト選択を無効化 */
      -webkit-user-select: none;
      /* Safari用 */
      -moz-user-select: none;
      /* Firefox用 */
      -ms-user-select: none;
  }
  
  .response-wrapper_fact::before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-color: rgba(255, 255, 255, 0);
      z-index: 1;
      pointer-events: auto;
      /* マウスイベントを有効化 */
      user-select: none;
      /* テキスト選択を無効化 */
      -webkit-user-select: none;
      /* Safari用 */
      -moz-user-select: none;
      /* Firefox用 */
      -ms-user-select: none;
  }
  
  .copy {
      position: absolute;
      bottom: 10px;
      z-index: 2;
      width: 150px;
      height: 25px;
      background: #4682b4;
      text-align: center;
      border: 5px solid #4682b4;
      color: #FFFFFF;
      font-size: 0.9em;
      font-weight: bold;
      border-radius: 40px;
      display: none;
      /* 最初は非表示 */
  }
  
  .copy_html {
      position: absolute;
      bottom: 10px;
      z-index: 2;
      width: 150px;
      height: 25px;
      background: #4682b4;
      text-align: center;
      border: 5px solid #4682b4;
      color: #FFFFFF;
      font-size: 0.9em;
      font-weight: bold;
      border-radius: 40px;
      display: none;
      /* 最初は非表示 */
  }
  
  .copy_fact {
      position: absolute;
      bottom: 10px;
      z-index: 2;
      width: 150px;
      height: 25px;
      background: #4682b4;
      text-align: center;
      border: 5px solid #4682b4;
      color: #FFFFFF;
      font-size: 0.9em;
      font-weight: bold;
      border-radius: 40px;
      display: none;
      /* 最初は非表示 */
  }
  
  .copy_kiji {
      position: absolute;
      bottom: 10px;
      z-index: 2;
      width: fit-content;
      padding-left: 8px;
      padding-right: 8px;
      height: 25px;
      background: #4682b4;
      text-align: center;
      border: 5px solid #4682b4;
      color: #FFFFFF;
      font-size: 0.9em;
      font-weight: bold;
      border-radius: 40px;
      display: none;
      /* 最初は非表示 */
  }
  
  .copy_theme {
      position: absolute;
      bottom: 10px;
      z-index: 2;
      width: fit-content;
      padding-left: 8px;
      padding-right: 8px;
      height: 25px;
      background: #4682b4;
      text-align: center;
      border: 5px solid #4682b4;
      color: #FFFFFF;
      font-size: 0.9em;
      font-weight: bold;
      border-radius: 40px;
      display: none;
  }
  
  #numberSelect {
      font-size: 1.1em;
      padding-left: 6px;
      padding-right: 6px;
      font-weight: bold;
  }
  
  #keyword {
      padding: 20px;
      padding-top: 20px;
      padding-bottom: 20px;
      margin-top: 10px;
      margin-bottom: 10px;
      background-color: #FFF;
      border-radius: 10px;
      border: 1px solid #ddd;
  }
  
  #theme {
      padding-right: 20px;
      padding-left: 20px;
      padding-top: 20px;
      padding-bottom: 25px;
      margin-top: 30px;
      margin-bottom: 10px;
      background-color: #FFF;
      border-radius: 10px;
      border: 1px solid #ddd;
  }
  
  .seisei_mojisuu {
      padding: 20px;
      padding-top: 20px;
      padding-bottom: 10px;
      margin-top: 30px;
      margin-bottom: 20px;
      background-color: #FFF;
      border-radius: 10px;
      border: 1px solid #ddd;
  }
  
  .fact {
      padding: 20px;
      padding-top: 20px;
      padding-bottom: 10px;
      margin-top: 30px;
      margin-bottom: 20px;
      background-color: #FFF;
      border-radius: 10px;
      border: 1px solid #ddd;
  }
  
  .balloon-012_img {
      width: 2.7em;
      height: 2.7em;
      border-radius: 50%;
  }
  
  #kiji_type {
      position: relative;
      padding-left: 20px;
      padding-right: 20px;
      padding-top: 30px;
      padding-bottom: 20px;
      margin-top: 10px;
      margin-bottom: 10px;
      background-color: #FFF;
      border-radius: 10px;
      border: 1px solid #ddd;
      z-index: 1;
  }
  
  .bold_little {
      font-weight: 600;
  }
  
  #tokusho_contents {
      width: 100%;
      padding-left: 20px;
      padding-right: 20px;
      padding-top: 20px;
      padding-bottom: 20px;
      margin-top: 10px;
      margin-bottom: 10px;
      background-color: #FFF;
      border-radius: 10px;
      border: 1px solid #ddd;
  }
  
  #tittle_plain {
      margin-top: 20px;
      margin-bottom: 5px;
      font-weight: bold;
      color: #545556;
      font-weight: bold;
      text-align: center;
      margin: 0 auto;
  }
  
  #tittle_html {
      margin: 0 auto;
      margin-top: 30px;
      margin-bottom: 10px;
      font-weight: bold;
      color: #545556;
      font-weight: bold;
      text-align: center;
  }
  
  #tittle_edit {
      margin-top: 20px;
      margin-bottom: 10px;
      font-weight: bold;
      color: #545556;
      font-weight: bold;
      text-align: center;
      margin: 0 auto;
  }
  
  #tittle_sample {
      margin: 0 auto;
      font-weight: bold;
      color: #545556;
      font-weight: bold;
      text-align: center;
  }
  
  .generating {
      width: 70px;
      height: auto;
  }
  
  #limitedInput {
      padding: 5px;
      border: 1px solid #ccc;
      border-radius: 4px;
      font-size: 16px;
      width: 200px;
  }
  
  #charCount {
      margin-left: 10px;
      color: #666;
      font-size: 14px;
  }
  
  #limitedInput_theme {
      padding: 5px;
      border: 1px solid #ccc;
      border-radius: 4px;
      font-size: 16px;
      width: 400px;
  }
  
  .news {
      text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px, rgba(0, 0, 0, .5) 3px 3px 3px;
      font-weight: bold;
      font-size: 1.1em;
      margin-bottom: 15px;
      padding-left: 20px;
  }
  
  .small_text2 {
      font-size: 0.95em;
      color: #313030;
      padding-bottom: 20px;
  }
  
  #limitedInput_theme2 {
      padding: 5px;
      border: 1px solid #ccc;
      border-radius: 4px;
      font-size: 16px;
      width: 95%;
  }
  /* 文字数が制限に近づいたら警告色に */
  
  .warning {
      color: #ff4444;
  }
  
  #submitButton {
      font-size: 1em;
      margin-left: 5px;
      padding-left: 10px;
      padding-right: 10px;
      padding-top: 5px;
      padding-bottom: 5px;
      background-color: #ff4500;
      color: white;
      border: none;
      border-radius: 4px;
      cursor: pointer;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  }
  
  #submitButton:hover {
      background-color: #c43805;
  }
  
  #submitButton_theme {
      font-size: 1em;
      margin-left: 5px;
      padding-left: 10px;
      padding-right: 10px;
      padding-top: 5px;
      padding-bottom: 5px;
      font-size: 1em;
      margin-top: 5px;
      background-color: #ff4500;
      color: white;
      border: none;
      border-radius: 4px;
      cursor: pointer;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  }
  
  #submitButton_theme:hover {
      background-color: #c43805;
  }
  
  #submit_edit_btn {
      font-size: 1em;
      margin-left: 5px;
      padding-left: 10px;
      padding-right: 10px;
      padding-top: 5px;
      padding-bottom: 5px;
      font-size: 1em;
      margin-top: 5px;
      background-color: #ff4500;
      color: white;
      border: none;
      border-radius: 4px;
      cursor: pointer;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  }
  
  #submit_edit_btn:hover {
      background-color: #c43805;
  }
  
  .kaisuu {
      padding: 20px;
      padding-top: 20px;
      padding-bottom: 20px;
      margin-top: 10px;
      margin-bottom: 10px;
      background-color: #FFF;
      border-radius: 10px;
      border: 1px solid #ddd;
  }
  
  .fix_contents {
      margin-top: 15px;
      padding: 20px;
      padding-top: 20px;
      padding-bottom: 20px;
      margin-top: 15px;
      background-color: #FFF;
      border-radius: 10px;
      border: 1px solid #ddd;
  }
  
  .about_theme {
      margin-bottom: 20px;
      font-size: 1.1em;
  }
  
  .text_format {
      margin-bottom: 15px;
      font-size: 1.1em;
  }
  
  .about_keyword {
      margin-bottom: 10px;
      margin-bottom: 20px;
      font-size: 1em;
  }
  
  .your_keyword {
      color: #656564;
      font-size: 0.9em;
  }
  /* モダンなデザイン */
  
  .radio-group {
      display: flex;
      flex-wrap: wrap;
      gap: 20px;
      padding: 10px;
  }
  
  .radio-label {
      display: flex;
      align-items: center;
      cursor: pointer;
      position: relative;
  }
  /* デフォルトのラジオボタンを非表示 */
  
  .radio-label input[type="radio"] {
      display: none;
  }
  /* カスタムラジオボタン */
  
  .radio-custom {
      width: 20px;
      height: 20px;
      border: 2px solid #ddd;
      border-radius: 50%;
      margin-right: 8px;
      position: relative;
      transition: all 0.3s ease;
      background: white;
      box-shadow: inset 0 0 0 white;
  }
  /* チェック時の丸 */
  
  .radio-custom::after {
      content: '';
      width: 12px;
      height: 12px;
      background: #ff4500;
      border-radius: 50%;
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%) scale(0);
      transition: transform 0.2s ease;
  }
  /* チェック時のスタイル */
  
  .radio-label input[type="radio"]:checked+.radio-custom {
      border-color: #ff4500;
  }
  
  .radio-label input[type="radio"]:checked+.radio-custom::after {
      transform: translate(-50%, -50%) scale(1);
  }
  /* テキストのスタイル */
  
  .radio-text {
      font-size: 16px;
      color: #333;
  }
  /* ホバー効果 */
  
  .radio-label:hover .radio-custom {
      border-color: #ff4500;
  }
  
  .input_keyword {
      color: #6b8e23;
      font-size: 1.1em;
      font-weight: bold;
      background: linear-gradient(transparent 90%, #c6e6ae 90%);
  }
  
  #make_html_btn {
      margin-top: 30px;
  }
  
  #make_html_btn.inverted {
      color: #4682b4;
      background-color: white;
      border: 1px solid #4682b4;
  }
  
  #displayValue {
      color: #6b8e23;
      font-size: 1.1em;
      font-weight: bold;
      padding-right: 5px;
      background: linear-gradient(transparent 90%, #c6e6ae 90%);
  }
  
  #selectedValue {
      color: #656564;
      font-size: 0.9em;
  }
  
  .selectedValue {
      margin-top: 10px;
      color: #656564;
      font-size: 0.9em;
  }
  
  .mihon {
      margin-top: 30px;
  }
  
  .steps {
      font-size: 1.2em;
      color: #FFF;
      background-color: #4b85ce;
      font-weight: bold;
      border: 1px solid #4b85ce;
      border-radius: 10px;
      padding-left: 4px;
      padding-right: 4px;
      width: fit-content;
  }
  
  .hr_basic {
      height: 0;
      margin: 0;
      padding: 0;
      border: 0;
      margin: 0 auto;
      width: 100%;
      margin-bottom: 5px;
      margin-top: 20px;
      border-top: 1px dotted #aaa;
  }
  
  .awesome {
      color: #c1c4c5;
  }
  
  .awesome_green {
      color: #89B700;
  }
  
  .awesome_green2 {
      color: #bef02a;
  }
  
  .awesome_red {
      color: #a52a2a;
  }
  
  .about_mojisuu {
      margin-bottom: 20px;
  }
  
  .about_fact {
      margin-bottom: 20px;
  }
  
  @media screen and (max-width: 768px) {
      .custom-swal-popup2 {
          width: 97% !important;
          font-size: 0.9em !important;
          border-radius: 15px !important;
      }
  }
  
  @media screen and (min-width: 769px) {
      .custom-swal-popup2 {
          width: 60% !important;
          font-size: 0.9em !important;
          border-radius: 15px !important;
      }
  }
  
  .custom-swal-confirm-button {
      background-color: #050a30 !important;
      border-radius: 20px !important;
      padding: 10px 40px !important;
  }
  
  .custom-swal-cancel-button {
      background-color: #050a30 !important;
      border-radius: 20px !important;
      padding: 10px 40px !important;
  }
  
  .add_keyword:hover {
      background-color: #ae3408;
  }
  
  .small_gray {
      font-size: 0.9em;
      color: #3f3f3e;
      margin-top: 8px;
      margin-bottom: 17px;
  }
  
  .small_gray_simple {
      font-size: 0.9em;
      color: #3f3f3e;
  }
  
  .ms_logo {
      vertical-align: middle;
      height: 3em;
      /* テキストの高さに合わせる */
      margin-right: 5px;
      /* 画像とテキストの間隔 */
  }
  
  .micro {
      margin-bottom: 10px;
      display: flex;
      align-items: center;
      justify-content: center;
  }
  
  .itemprop {
      font-size: 0.9em;
      color: #3f3f3e;
      margin-top: 8px;
      margin-bottom: 8px;
  }
  
  .to_top {
      margin: 0 auto;
      cursor: pointer;
      text-align: center;
      margin-top: 5px;
      margin-bottom: 5px;
      color: #fff;
      border-radius: 6px;
      border-style: hidden;
      border-color: #55575c;
      padding: 5px 10px;
      font-size: 1em;
      background-color: #55575c;
      font-weight: 700;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  }
  
  .gata {
      font-size: 0.9em;
      color: #4682b4;
      margin-top: 8px;
      margin-bottom: 8px;
  }
  
  #textArea p {
      margin-top: 1em;
      margin-bottom: 1em;
  }
  
  #textArea h1 {
      margin-top: 1em;
      margin-bottom: 1em;
  }
  
  #textArea h2 {
      margin-top: 1em;
      margin-bottom: 1em;
  }
  
  #textArea h3 {
      margin-top: 1em;
      margin-bottom: 1em;
  }
  
  .response p {
      margin-top: 1em;
      margin-bottom: 1em;
  }
  
  .response h1 {
      margin-top: 1em;
      margin-bottom: 1em;
  }
  
  .response h2 {
      margin-top: 1em;
      margin-bottom: 1em;
  }
  
  .response h3 {
      margin-top: 1em;
      margin-bottom: 1em;
  }
  
  .response_html p {
      margin-top: 0.5em;
      margin-bottom: 0.5em;
  }
  
  .response_html h1 {
      margin-top: 1em;
      margin-bottom: 0.5em;
  }
  
  .response_html h2 {
      margin-top: 0.3em;
      margin-bottom: 0.3em;
  }
  
  .response_html h3 {
      margin-top: 0.3em;
      margin-bottom: 0.3em;
  }
  
  .response_html ul {
      padding-left: 30px;
      padding-right: 30px;
  }
  
  .article_with_tags p {
      margin-top: 0.3em;
      margin-bottom: 0.3em;
  }
  
  .article_with_tags h1 {
      margin-top: 1em;
      margin-bottom: 1em;
  }
  
  .article_with_tags h2 {
      margin-top: 0.3em;
      margin-bottom: 0.3em;
  }
  
  #clear_imput.inverted {
      color: #ff8c00;
      background-color: white;
      border: 1px solid #ff8c00;
  }
  
  .article_with_tags h3 {
      margin-top: 0.3em;
      margin-bottom: 0.3em;
  }
  
  .red_h {
      color: #ff4500;
  }
  
  .red {
      color: rgb(202, 6, 6);
  }
  
  .top_sub {
      width: 100%;
      text-align: center;
      margin-top: 0px;
      margin-bottom: 15px;
  }
  
  .top_sub2 {
      font-size: 1.2em;
  }
  
  .edit_search {
      font-size: 1em;
      border-radius: 10px;
      padding: 20px;
      background-color: #000;
      color: #FFF;
      width: 95%;
      height: auto;
      min-height: 500px;
  }
  
  .custom-swal-popup2 .custom-swal-title-survey {
      font-size: 1em !important;
  }
  
  .custom-swal-popup3 .custom-swal-title-survey {
      font-size: 1em !important;
      max-width: 500px;
  }
  
  .edit_text {
      white-space: pre-wrap;
  }
  
  #tittle_plain {
      margin-top: 20px;
      margin-bottom: 5px;
      font-weight: bold;
      color: #545556;
      font-weight: bold;
      text-align: center;
      margin: 0 auto;
  }
  
  .swal2-styled {
      font-size: 1em;
      color: #FFF;
      background-color: #050a30 !important;
      border-radius: 20px !important;
      padding: 10px 20px !important;
      min-width: 120px;
  }
  
  .small_font {
      color: #eee8aa;
      font-size: 0.8em;
  }
  
  .separator {
      content: "|";
  }
  
  .colored_font {
      color: #FFF;
  }
  /*osusume5*/
  /* 目次全体のコンテナ */
  
  .mokuji_box {
      margin: 2em auto;
      padding: 25px;
      border: 2px solid #c2c1c0;
      border-radius: 8px;
      background-color: #ffffff;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
  }
  /* 目次のタイトル */
  
  .mokuji_title {
      border-radius: 8px;
      font-size: 1em;
      font-weight: bold;
      text-align: center;
      margin: 0 0 1em;
      padding-bottom: 0.8em;
      padding-top: 0.8em;
      border-bottom: 2px solid #f3f3f3;
      color: #000;
      background-color: #d8d7d7;
  }
  /* 目次のリスト */
  
  .mokuji_list {
      margin: 0;
      padding: 0;
      list-style: none;
  }
  /* リストアイテム */
  
  .mokuji_list li {
      margin: 0.6em 0;
      padding-left: 1.5em;
      position: relative;
      line-height: 1.5;
      border-bottom: 2px solid #f3f3f3;
      color: #333333;
  }
  /* リンクのスタイル */
  
  .mokuji_list a {
      color: #333333;
      text-decoration: none;
      transition: color 0.3s ease;
  }
  /* ホバー時のリンクスタイル */
  
  .mokuji_list a:hover {
      color: #0066cc;
      text-decoration: underline;
  }
  
  .bold09 {
      font-weight: bold;
      font-size: 0.9em;
  }
  
  .bold10 {
      font-weight: bold;
      font-size: 1em;
  }
  
  .bold11 {
      font-weight: bold;
      font-size: 1.1em;
  }
  
  .quote_section {
      font-weight: bold;
      font-size: 1.1em;
  }
  
  #toi_request {
      margin-top: 10px;
  }
  
  .bold12 {
      font-weight: bold;
      font-size: 1.2em;
  }
  
  .bold {
      font-weight: bold;
  }
  
  .bigger {
      font-size: 1.1em;
  }
  
  .bold13 {
      font-weight: bold;
      font-size: 1.2em;
  }
  
  .margin20 {
      margin-top: 20px;
      margin-bottom: 20px;
  }
  
  .margin30 {
      margin-top: 30px;
      margin-bottom: 30px;
  }
  
  .h1_dsn {
      padding: 0.5rem 0;
      border-bottom: 3px dotted #b2d5de;
  }
  
  .main_title {
      font-weight: bold;
      font-size: 1.1em;
      padding: 0.5rem 0;
      border-bottom: 3px dotted #b2d5de;
  }
  
  .steelblue {
      color: #4682b4;
  }
  /*osusume5ここまで*/
  
  .explain_parent {
      padding: 30px;
      margin-top: 10px;
      margin-bottom: 10px;
      padding-bottom: 35px;
      background-color: #FFF;
      border-radius: 10px;
      border: 1px solid #ddd;
  }
  
  .explain {
      font-size: 1.1em;
      font-weight: normal;
  }
  
  .explain_h2 {
      font-size: 1em;
      font-weight: normal;
      margin-top: 5px;
      margin-bottom: 10px;
      color: #333;
      font-weight: 600;
  }
  
  .number_mark {
      display: inline-block;
      width: 20px;
      height: 20px;
      border-radius: 50%;
      /* 丸にする */
      background-color: #333;
      /* 背景色 */
      color: white;
      /* 数字の色 */
      text-align: center;
      line-height: 20px;
      margin-right: 10px;
  }
  
  .sample08 {
      background: linear-gradient(transparent 90%, #ff99ff 90%);
  }
  
  .sample09 {
      background: linear-gradient(transparent 40%, #ffff66 40%);
  }
  
  .sample10 {
      background: linear-gradient(transparent 90%, #cef384 90%);
  }
  /*.lets_start {
      font-size: 1.2em;
       background: #fa4141;
      text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px, rgba(0, 0, 0, .5) 3px 3px 3px;
  }*/
  
  .lets_start {
      position: relative;
      margin-left: 10px;
      margin-top: 20px;
      margin-bottom: -20px;
      z-index: 2;
      border-radius: 15px;
      font-size: 1em;
      width: fit-content;
      font-weight: bold;
      padding: 0.5em;
      padding-left: 0.7em;
      padding-right: 0.7em;
      background-color: #fa4141;
      /* #6196e0;水色 #fa4141;赤*/
      color: #ffffff;
  }
  
  .lets_start:after {
      position: absolute;
      content: '';
      top: 99%;
      left: 25px;
      width: 0;
      height: 0;
      border: 15px solid transparent;
      border-top: 15px solid #fa4141;
  }
  
  .cons {
      font-size: 0.9em;
      color: #545252;
  }
  
  .cons_parent {
      margin-top: 20px;
      margin-bottom: 20px;
  }
  
  @media screen and (max-width: 768px) {
      .ai_writer_parent {
          max-width: 95%;
          margin: 0 auto;
          padding-top: 15px;
          margin-top: 30px;
          margin-bottom: 5px;
      }
  }
  
  @media screen and (min-width: 769px) {
      .ai_writer_parent {
          width: 60%;
          margin: 0 auto;
          padding-top: 15px;
          margin-top: 30px;
          margin-bottom: 5px;
      }
  }
  
  .ai_writer {
      font-size: 1.3em;
      text-align: left;
      font-weight: bold;
      text-shadow: #fff 2px 0, #fff -2px 0, #fff 0 -2px, #fff 0 2px, #fff 2px 2px, #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px, rgba(0, 0, 0, .5) 3px 3px 3px;
  }
  
  @media screen and (max-width: 768px) {
      .container_article {
          max-width: 95%;
          margin: 0px auto;
          margin-top: 20px;
          background-color: #FFF;
          border-radius: 10px;
          border: 1px solid #ddd;
          padding-left: 20px;
          padding-right: 20px;
      }
  }
  
  @media screen and (min-width: 769px) {
      .container_article {
          width: 60%;
          margin: 0px auto;
          margin-top: 20px;
          background-color: #FFF;
          border-radius: 10px;
          border: 1px solid #ddd;
          padding-left: 20px;
          padding-right: 20px;
      }
  }
  
  .blog {
      margin-bottom: 3px;
  }
  
  .kakunin {
      border-radius: 10px;
      border: 1px dashed #4682b4;
      background-color: #FFF;
      padding-left: 10px;
      padding-right: 10px;
      padding-top: 10px;
      padding-bottom: 10px;
      font-size: 0.9em;
      margin-bottom: 20px;
      margin-top: 1px;
  }
  
  .list-item {
      height: 60px;
  }
  
  .menu-title {
      text-align: center;
      color: #fff;
      font-size: 1.1em;
      height: 50px;
      padding-top: 18px;
      padding-bottom: 4px;
      font-weight: 600;
      font-family: sans-serif;
  }
  
  @media (min-width: 769px) {
      .list-item {
          height: 60px;
      }
      .menu-title {
          height: 50px;
          padding-top: 20px;
          padding-bottom: 20px;
      }
  }
  /*　ハンバーガーボタン　*/
  
  .hamburger {
      cursor: pointer;
      display: block;
      position: fixed;
      z-index: 13;
      right: 5px;
      top: 5px;
      width: 42px;
      height: 42px;
      cursor: pointer;
      text-align: center;
  }
  
  .hamburger span {
      display: block;
      position: absolute;
      width: 30px;
      height: 2px;
      left: 6px;
      background: #b75f5f;
      -webkit-transition: 0.5s ease-in-out;
      -moz-transition: 0.5s ease-in-out;
      transition: 0.5s ease-in-out;
  }
  
  .hamburger span:nth-child(1) {
      top: 10px;
  }
  
  .hamburger span:nth-child(2) {
      top: 20px;
  }
  
  .hamburger span:nth-child(3) {
      top: 30px;
  }
  
  @media (min-width: 769px) {
      .hamburger {
          display: block;
          position: fixed;
          z-index: 13;
          right: 13px;
          top: 12px;
          width: 42px;
          height: 42px;
          cursor: pointer;
          text-align: center;
      }
      .hamburger span {
          display: block;
          position: absolute;
          width: 30px;
          height: 2px;
          left: 6px;
          background: #b75f5f;
          -webkit-transition: 0.5s ease-in-out;
          -moz-transition: 0.5s ease-in-out;
          transition: 0.5s ease-in-out;
      }
      .hamburger span:nth-child(1) {
          top: 10px;
      }
      .hamburger span:nth-child(2) {
          top: 20px;
      }
      .hamburger span:nth-child(3) {
          top: 30px;
      }
  }
  /* ナビ開いてる時のボタン */
  
  .hamburger.active span:nth-child(1) {
      top: 16px;
      left: 6px;
      -webkit-transform: rotate(315deg);
      -moz-transform: rotate(315deg);
      transform: rotate(315deg);
  }
  
  .hamburger.active span:nth-child(2),
  .hamburger.active span:nth-child(3) {
      top: 16px;
      -webkit-transform: rotate(-315deg);
      -moz-transform: rotate(-315deg);
      transform: rotate(-315deg);
  }
  
  nav.globalMenuSp {
      position: fixed;
      z-index: 12;
      top: 0;
      left: 0;
      color: #000;
      background: #fff;
      text-align: center;
      transform: translateX(100%);
      transition: all 0.6s;
      width: 100%;
      overflow-y: scroll;
  }
  
  .globalMenuSp::-webkit-scrollbar {
      display: none;
  }
  
  nav.globalMenuSp ul {
      background: rgb(160, 159, 159);
      margin: 0 auto;
      padding: 0;
      width: 100%;
  }
  
  nav.globalMenuSp ul li {
      list-style-type: none;
      padding: 0;
      width: 100%;
      height: auto;
      border-bottom: 1px solid #fff;
  }
  
  nav.globalMenuSp ul li:last-child {
      padding-bottom: 0;
      border-bottom: none;
  }
  
  nav.globalMenuSp ul li:hover {
      background: #b0b0b0;
  }
  /* このクラスを、jQueryで付与・削除する */
  
  nav.globalMenuSp.active {
      transform: translateX(0%);
  }
  /* アコーディオン */
  
  .contents_menu {
      font-size: 1em;
      display: none;
      text-decoration: none;
  }
  
  .cencept_pa {
      width: 100%;
      text-align: center;
      display: inline-block;
  }
  
  .cencept_pa .concept {
      color: #fff;
      font-weight: bold;
      font-size: 16px;
      text-align: left;
      width: 98%;
      padding-left: 7px;
      padding-right: 7px;
      display: inline-block;
  }
  
  @media (min-width: 769px) {
      .cencept_pa .concept {
          width: 50%;
          text-align: left;
          display: inline-block;
      }
  }
  
  @media screen and (max-width: 768px) {
      .bigger4 {
          font-size: 1em;
      }
  }
  
  @media screen and (min-width: 769px) {
      .bigger4 {
          font-size: 1.2em;
      }
  }
  
  @media screen and (max-width: 768px) {
      .bigger5 {
          font-size: 1em;
      }
  }
  
  @media screen and (min-width: 769px) {
      .bigger5 {
          font-size: 1.2em;
      }
  }
  
  .circle {
      display: inline-block;
      width: 1em;
      height: 1em;
      border-radius: 50%;
      background: rgb(200, 21, 80);
      color: #FFF;
      text-align: center;
      line-height: 1.2em;
      margin-right: 3px;
  }
  
  .circle2 {
      display: inline-block;
      width: 110px;
      height: 110px;
      border-radius: 50%;
      background: #b0c4de;
      text-align: center;
      line-height: 110px;
      color: #FFF;
      font-weight: bold;
  }
  
  .circle3 {
      display: inline-block;
      width: 110px;
      height: 110px;
      border-radius: 50%;
      background: #87ceeb;
      text-align: center;
      line-height: 110px;
      color: #FFF;
      font-weight: bold;
  }
  
  .circle3b {
      display: inline-block;
      width: 110px;
      height: 110px;
      border-radius: 50%;
      background: #b0c4de;
      text-align: center;
      line-height: 110px;
      color: #FFF;
      font-weight: bold;
  }
  
  .price_list {
      width: fit-content;
      margin: 0 auto;
      text-align: center;
  }
  
  .price_list_child {
      width: fit-content;
      text-align: left;
  }
  
  .price_list_child2 {
      width: 100%;
      text-align: left;
  }
  
  .check_box_center {
      display: flex;
      justify-content: center;
  }
  
  .check_box_center_child {
      text-align: left;
  }
  
  .ECM_CheckboxInput {
      padding: 12px 8px;
      display: flex;
      align-items: center;
      cursor: pointer;
  }
  
  .ECM_CheckboxInput-Input {
      margin: 0;
      width: 0;
      opacity: 0;
  }
  
  .ECM_CheckboxInput:hover>.ECM_CheckboxInput-DummyInput {
      background: #f6f4f4 !important;
      border: solid 2px #333333;
  }
  
  .ECM_CheckboxInput-Input:focus+.ECM_CheckboxInput-DummyInput {
      background: #f6f4f4 !important;
      border: solid 2px #333333;
  }
  
  .ECM_CheckboxInput-Input:checked+.ECM_CheckboxInput-DummyInput {
      border: solid 2px #333333;
      background: #FFFFFF;
  }
  
  .ECM_CheckboxInput-Input:checked+.ECM_CheckboxInput-DummyInput::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hlY2siPjxwb2x5bGluZSBwb2ludHM9IjIwIDYgOSAxNyA0IDEyIj48L3BvbHlsaW5lPjwvc3ZnPg==") no-repeat center;
      background-size: contain;
  }
  
  .ECM_CheckboxInput-DummyInput {
      position: relative;
      top: 0;
      left: 0;
      display: block;
      width: 32px;
      height: 32px;
      border: solid 2px #888888;
      background: #FFFFFF;
      border-radius: 4px;
  }
  
  .ECM_CheckboxInput-DummyInput.inverted {
      border: solid 2px rgb(115, 155, 184);
      background: #bdd5ef;
  }
  
  @media screen and (max-width: 768px) {
      .ECM_CheckboxInput-LabelText {
          margin-left: 12px;
          display: block;
          font-size: 0.9em;
          font-weight: bold;
      }
  }
  
  @media screen and (min-width: 769px) {
      .ECM_CheckboxInput-LabelText {
          margin-left: 12px;
          display: block;
          font-size: 1em;
          font-weight: bold;
      }
  }
  
  .ECM_CheckboxInput-Input:checked+.ECM_CheckboxInput-DummyInput2::before {
      content: "";
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDI0IDI0IiBmaWxsPSJub25lIiBzdHJva2U9ImN1cnJlbnRDb2xvciIgc3Ryb2tlLXdpZHRoPSIyIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGNsYXNzPSJmZWF0aGVyIGZlYXRoZXItY2hlY2siPjxwb2x5bGluZSBwb2ludHM9IjIwIDYgOSAxNyA0IDEyIj48L3BvbHlsaW5lPjwvc3ZnPg==") no-repeat center;
      background-size: contain;
  }
  
  .ECM_CheckboxInput-DummyInput2 {
      position: relative;
      top: 0;
      left: 0;
      display: block;
      width: 32px;
      height: 32px;
      border: solid 2px #888888;
      background: #e5e3e3;
      border-radius: 4px;
  }
  
  #make_account_btn {
      display: inline-block;
      text-align: center;
      margin-top: 5px;
      margin-bottom: 15px;
      color: #fff;
      border-radius: 6px;
      border-style: hidden;
      padding: 12px 20px;
      font-size: 1.1em;
      background-color: #68889e;
      font-weight: 700;
      cursor: pointer;
  }
  
  #make_account_cancel_btn {
      display: inline-block;
      text-align: center;
      margin-top: 5px;
      margin-bottom: 15px;
      margin-left: 20px;
      color: #fff;
      border-radius: 6px;
      border-style: hidden;
      padding: 12px 20px;
      font-size: 1.1em;
      background-color: #68889e;
      font-weight: 700;
      cursor: pointer;
  }
  
  @media screen and (max-width: 768px) {
      .chuui_text {
          font-size: 0.9em;
          text-align: left;
          margin: 0 auto;
          max-width: 95%;
          margin-top: 20px;
          margin-bottom: 10px;
      }
  }
  
  @media screen and (min-width: 769px) {
      .chuui_text {
          font-size: 0.9em;
          text-align: left;
          margin: 0 auto;
          max-width: 70%;
          margin-top: 20px;
          margin-bottom: 15px;
      }
  }
  
  .chuui {
      margin-top: 20px;
  }
  
  #price_plan {
      padding: 30px;
      margin-top: 30px;
      margin-bottom: 10px;
      padding-bottom: 35px;
      background-color: #FFF;
      border-radius: 10px;
      border: 1px solid #ddd;
  }
  
  @media screen and (max-width: 768px) {
      .kessai {
          text-align: left;
          padding-left: 8px;
          padding-right: 8px;
          border-radius: 10px;
          padding: 10px;
          border: 1px dashed #4682b4;
          background-color: #FFF;
      }
  }
  
  @media screen and (min-width: 769px) {
      .kessai {
          text-align: left;
          padding-left: 12px;
          padding-right: 12px;
          padding: 10px;
          border-radius: 10px;
          border: 1px dashed #4682b4;
          background-color: #FFF;
      }
  }
  
  .kessai a {
      color: black;
  }
  
  .kessai a:visited {
      color: black;
  }
  
  .please_plan {
      margin-left: 5px;
      font-size: 1.1em;
      color: #a61f1f;
      margin-bottom: 3px;
      margin-top: 3px;
      font-weight: bold;
  }
  
  .checkmark002 {
      padding-right: 5px;
      padding-left: 24px;
      position: relative;
  }
  
  .checkmark002:before,
  .checkmark002:after {
      content: "";
      display: block;
      position: absolute;
  }
  
  .checkmark002:before {
      width: 1.1em;
      height: 1.1em;
      border-radius: 0.7em;
      background: #89B700;
      border: 1px solid #89B700;
      left: 0;
      top: 0.1em;
  }
  
  .checkmark002:after {
      border-left: 3px solid #FFF;
      border-bottom: 3px solid #FFF;
      width: 0.5em;
      height: 0.3em;
      -webkit-transform: rotate(-45deg);
      transform: rotate(-45deg);
      left: 0.3em;
      top: 0.4em;
  }
  
  #account_mail1_code {
      margin-top: 8px;
      margin-right: 3px;
      font-size: 1em;
      height: 30px;
      text-align: center;
      border-radius: 4px;
  }
  
  .alert_msg {
      margin-top: 13px;
      font-size: 0.9em;
      padding-bottom: 10px;
      color: #4682b4;
      font-weight: bold;
  }
  
  @media screen and (max-width: 768px) {
      .textarea_parent {
          display: flex;
          justify-content: center;
          align-items: center;
          width: 98%;
      }
  }
  
  @media screen and (min-width: 769px) {
      .textarea_parent {
          display: flex;
          justify-content: center;
          align-items: center;
          width: fit-content;
          width: 98%;
      }
  }
  
  .form_payment {
      padding-right: 40px;
  }
  
  .paytext {
      font-size: 1em;
      color: #464444;
  }
  
  #inputadd {
      margin-right: 3px;
      border-radius: 5px;
      font-weight: bold;
      line-height: 1.2em;
      width: 85%;
      font-size: 0.9em;
      color: #FFF;
      background: #253256;
  }
  
  #input_check {
      cursor: pointer;
      display: inline-block;
      margin: 0 auto;
      text-align: center;
      margin-top: 5px;
      width: fit-content;
      color: #fff;
      border-radius: 6px;
      border-style: hidden;
      border-color: #32597b;
      padding: 10px 10px;
      font-size: 1em;
      background-color: #32597b;
      font-weight: 700;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  }
  
  #input_check2 {
      display: block;
      margin: 0 auto;
      text-align: center;
  }
  
  .input_check2_wrapper {
      text-align: center;
  }
  
  .input_check2 {
      display: inline-block;
      width: fit-content;
      border-style: hidden;
      text-align: center;
      margin-top: 5px;
      margin-left: 5px;
      margin-bottom: 5px;
      color: #fff;
      border-radius: 6px;
      padding: 5px 10px;
      font-size: 0.8em;
      background-color: #595658;
      font-weight: 700;
  }
  
  @media screen and (max-width: 768px) {
      #mailtext {
          padding: 5px;
          margin: 0 auto;
          width: 70%;
      }
  }
  
  @media screen and (min-width: 769px) {
      #mailtext {
          padding: 5px;
          margin: 0 auto;
          width: 40%;
          max-width: 800px;
          min-width: 300px;
      }
  }
  
  @media screen and (max-width: 768px) {
      .mailtext {
          padding: 10px;
          margin: 0 auto;
          width: 90%;
          color: #FFF;
          background-color: #15395a;
      }
  }
  
  @media screen and (min-width: 769px) {
      .mailtext {
          padding: 10px;
          margin: 0 auto;
          width: 40%;
          max-width: 800px;
          min-width: 300px;
          color: #FFF;
          background-color: #15395a;
      }
  }
  
  .email_input {
      padding: 1px;
      color: #FFF;
      background-color: #15395a;
  }
  
  .mail_reg_btn {
      cursor: pointer;
      font-size: 1em;
      padding: 5px;
      border-radius: 6px;
      border-color: #89B700;
      width: fit-content;
      color: #FFF;
      background: #89B700;
      box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
  }
  
  .kiyaku_pop {
      font-size: 1em;
      color: #4c7ba1;
      text-decoration: underline;
  }
  /* ラジオボタンを非表示にする */
  
  .radio-group-price input[type="radio"] {
      display: none;
  }
  /* チェックボックスのような見た目を作る */
  
  .radio-group-price label:before {
      content: '';
      display: inline-block;
      width: 16px;
      height: 16px;
      border: 2px solid #999;
      background: #fff;
      margin-right: 8px;
      vertical-align: middle;
      border-radius: 4px;
      /* 角丸にする */
  }
  /* 選択された時の見た目 */
  
  .radio-group-price input[type="radio"]:checked+label:before {
      background: #FF9900;
      border-color: #bf7505;
      position: relative;
  }
  /* チェックマークを追加 */
  
  .radio-group-price input[type="radio"]:checked+label:before {
      content: '\2713';
      /* チェックマークのUnicode */
      color: white;
      font-size: 12px;
      line-height: 16px;
      text-align: center;
      display: inline-block;
  }
  /* ラベルのスタイル */
  
  .radio-group-price label {
      cursor: pointer;
      margin: 5px 0;
      display: inline-block;
  }
  
  .make_account {
      margin-top: 20px;
  }
  
  .account_sakusei {
      margin-bottom: 20px;
  }
  
  .price_show {
      margin-bottom: 10px;
  }
  
  .login_parent {
      text-align: center;
  }
  
  .here {
      font-weight: bold;
      color: #2F96BB;
  }
  
  .kakaku {
      text-decoration: underline;
      color: #26455f;
  }
  
  .zeikomi {
      margin-top: 20px;
      color: #4d4b4b;
      font-size: 0.9em;
      font-weight: bold;
  }
  
  .zeikomi2 {
      color: #4d4b4b;
      font-size: 0.9em;
      font-weight: bold;
  }
  
  .awsome_yellow {
      color: #ffd700;
  }
  
  #price_btn2 {
      width: fit-content;
      padding-left: 20px;
      padding-right: 20px;
      margin-top: 15px;
  }