body {
  background-color: #f8f4f3;
  color: #333333;
  font-weight: 100;
  font-family: "Noto Sans JP", "Helvetica Neue", Helvetica, Arial,
    "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo,
    sans-serif;
  /* Google Font 「Rounded M+」（丸ゴシック）
    font-family: "M PLUS Rounded 1c", "Noto Sans JP", "Helvetica Neue", Helvetica, Arial, "游ゴシック体", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;  
    */
}

/* ----------------------------------------- */

/* 画面サイズ可変 */

/* ■デフォルト */
body,
label,
input[type="text"],
input[type="password"],
input[type="submit"],
input[type="date"],
input[type="button"],
.dropdown-item,
.popover {
  font-size: 20px;
}
textarea,
select {
  font-size: 20px !important;
}
.btn-lg {
  height: 50px;
  font-size: 20px;
}
/* CSV出力ボタン */
button.dt-button {
  padding: 5px 10px 5px 10px;
  font-weight: normal;
}


/* ■lg 画面サイズ1200px以上 */
@media (min-width: 1200px) {
  body,
  label,
  input[type="text"],
  input[type="password"],
  input[type="submit"],
  input[type="date"],
  input[type="button"],
  .dropdown-item,
  .popover {
    font-size: 18px;
  }
  textarea,
  select {
    font-size: 18px !important;
  }

  .btn-lg {
    height: 50px;
    font-size: 23px;
  }

  #nav_icon .dropdown:hover > .dropdown-menu {
    display: block;
  }

  .member_login {
    font-size: 18px!important;
  }
  input[type="text"][name="member_login_phonetic"] {
    height: 3.8rem!important;
    font-size: 18px!important;
  }
  .member_login_select {
    font-size: 18px !important;
  }
  .member_login_btn {
    height: 3.8rem!important;
    font-size: 18px!important;
  }
}

/* ■md 画面サイズ768px以上 */
@media (min-width: 768px) {
  .min_width_200 {
    min-width: 200px;
  }
  .min_width_150 {
    min-width: 150px;
  }
  .min_width_100 {
    min-width: 100px;
  }
}

/* ■～md 画面サイズ1199px以下 */
@media (max-width: 1199px) {
  /* タップ時の背景色 */
  table.dataTable.hover tbody tr:hover {
    background-color: #e9dacb !important;
  }
}

/* ----------------------------------------- */

/* ■input */
input[type="text"] {
  background-color: #ffffff !important;
}
input[type="text"]:read-only {
  background-color: #eeeeee !important;
}

input[type="password"] {
  background-color: #ffffff !important;
}
input[type="date"] {
  background-color: #ffffff !important;
}
input[type="checkbox"] {
  transform: scale(1.5);
}
input[type="radio"] {
  transform: scale(1.5);
}

/* ログイン時の[ID][PASS]のオートコンプリート使用時に
   勝手に入力項目が水色になるので白に変更する */
input:-webkit-autofill {
  box-shadow: 0 0 0 1000px white inset;
}

/* ■label */
label {
  font-weight: normal;
}

/* ■リンク */
a {
  text-decoration: none;
}
a:hover {
  text-decoration: none;
}

.link_underline a {
  text-decoration: underline;
}

/* ----------------------------------------- */

/* ■エラーメッセージ */
.error-message {
  color: #c82136;
}

/* ■注釈 */
.font_annotation {
  font-size: 90%;
  color: #6c757d;
}

/* ■フォント太さ(Noto Sans JP) */
.weight100 {
  font-weight: 100;
}
.weight300 {
  font-weight: 300;
}
.weight400 {
  font-weight: 400;
}
.weight500 {
  font-weight: 500;
}
.weight600 {
  font-weight: 600;
}
.weight700 {
  font-weight: 700;
}
.weight900 {
  font-weight: 900;
}

/* ■下線 */
.underline-1 {
  border-bottom: solid;
  border-color: #7f675b;
  border-width: 1px;
}

/* ■下線マーカー */
.marker-P-green {
  background: linear-gradient(transparent 70%, #ccffcc 0%);
}

/* ■必須マーク */
.label_required::after {
  content: " *";
  color: red;
  vertical-align: middle;
}

/* ■見出しライン青 */
.line-left-blue {
  padding: 0.25em 0.5em;
  color: #494949;
  background: transparent;
  border-left: solid 5px #7db4e6;
}

/* ■囲み枠(茶) */
.boxBrown {
  position: relative;
  margin: 2em 0;
  padding: 25px 10px 7px;
  border: solid 1px #7f675b;
}
.boxBrown .box-title {
  position: absolute;
  display: inline-block;
  top: -1px;
  left: -1px;
  padding: 0 9px;
  height: 25px;
  line-height: 25px;
  font-size: 20px;
  background: #7f675b;
  color: #ffffff;
  /*font-weight: bold;*/
}
.boxBrown p {
  margin: 0;
  padding: 0;
}

/* ----------------------------------------- */

/* ボタン */

/* ■赤 */
.btn-danger {
  color: #ffffff;
  background-color: #ae393c;
  border-color: #d8cec0;
}
.btn-danger:hover,
.btn-danger:focus,
.btn-danger:active,
.btn-danger.active,
.open > .dropdown-toggle.btn-danger {
  color: #ffffff;
  background-color: #d8cec0;
  border-color: #d8cec0;
}

/* ■茶 */
.btn-primary {
  color: #ffffff;
  background-color: #7f675b;
  border-color: #d8cec0;
}
.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #ffffff;
  background-color: #d8cec0;
  border-color: #d8cec0;
}

/* ■こげ茶 */
.btn-dark {
  color: #ffffff;
  background-color: #3a2020;
  border-color: #d8cec0;
}
.btn-dark:hover,
.btn-dark:focus,
.btn-dark:active,
.btn-dark.active,
.open > .dropdown-toggle.btn-dark {
  color: #ffffff;
  background-color: #d8cec0;
  border-color: #d8cec0;
}

/* ■緑 */
.btn-edit {
  color: #ffffff;
  background-color: #53917e;
  border-color: #d8cec0;
}
.btn-edit:hover,
.btn-edit:focus,
.btn-edit:active,
.btn-edit.active,
.open > .dropdown-toggle.btn-edit {
  color: #ffffff;
  background-color: #d8cec0;
  border-color: #d8cec0;
}

/* ----------------------------------------- */

/* ■datepicker */
.datepicker {
  width: 410px;
  padding: 10px !important;
}

.datepicker td,
.datepicker th {
  width: 60px !important;
}

.datepicker .clear {
  color: #ffffff;
  background-color: #6c757d;
}

.datepicker-days th.dow:first-child,
.datepicker-days td:first-child {
  color: #f00;
}
.datepicker-days th.dow:last-child,
.datepicker-days td:last-child {
  color: #00f;
}

input[type="text"].form_datepicker:read-only {
  background-color: #ffffff !important;
}

/* ----------------------------------------- */

/* ■モーダル */
.modal-header {
  padding: 15px;
  border-bottom: 1px solid #efefef;
  background-color: #f8f4f3;
}

.modal-header .close {
  font-size: 25px;
}
.modal-title {
  font-size: 18px;
  font-weight: bold;
}

.modal-dialog-fluid {
  max-width: inherit;
  width: 94%;
  margin-left: 3%;
}

/* ----------------------------------------- */

/* ■ログイン画面 */
.login_input_label {
  font-weight: normal;
  font-size: 25px;
}

/* ----------------------------------------- */

/* ■会員画面 */
.member_login {
  font-size: 40px;
}
input[type="text"][name="member_login_phonetic"] {
  padding: 0px 0px 0px 10px;
  line-height: 66px;
  height: 70px;
  font-size: 40px;
}
.member_login_select {
  /* font-size: 40px !important; */
}
.member_login_btn {
  height: 120px;
  font-size: 40px;
}

.member_info {
  font-size: 28px;
}

/* ----------------------------------------- */

/* ■ナビゲーション */
#nav_icon .fa-stack {
  width: 2em;
}

#nav_icon a:link {
  color: #7f675b;
}
#nav_icon a:visited {
  color: #7f675b;
}
#nav_icon a:hover {
  color: #dc3545;
}
#nav_icon a:active {
  color: #dc3545;
}

#nav_icon a {
  outline: none;
}

#nav_icon a {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  cursor: pointer;
}

.nav_login_user_name {
  font-size: 22px;
  color: rgba(0, 0, 0, 0.5);
}

/* ■各ページタイトル */
.titlebar {
  padding: 5px 15px;
  color: #ffffff;
  background-color: #7f675b;
}

/* ----------------------------------------- */

/* リスト(DataTable) */

/* ■背景色：無効 */
.bg_disabled {
  background-color: #cccccc !important;
}

/* ■背景色：開始前(Refills) */
.bg_before {
  background-color: #f0f8ff !important;
}

/* ■リストボタン */
.list_btn span {
  color: #53917e;
}
.list_btn span:visited {
  color: #53917e;
}

.list_btn span:active {
  color: #073b4c;
}
@media (hover: hover) and (pointer: fine) {
  /* PCのみ有効　タップ時は色変更しない */
  .list_btn span:hover {
    color: #073b4c;
  }
}

/* ■リストボタン(無効) */
.list_btn_invalid span {
  color: #a9a9a9;
}
.list_btn_invalid span:visited {
  color: #a9a9a9;
}

.list_btn_invalid span:active {
  color: #a9a9a9;
}
@media (hover: hover) and (pointer: fine) {
  /* PCのみ有効　タップ時は色変更しない */
  .list_btn_invalid span:hover {
    color: #a9a9a9;
  }
}

/* ■リスト画像 */
.list_img {
  text-align: center;
  min-width: 50px;
}

/* ■プラン一覧 */
.table_plan {
  height: 90px;
}

.table_plan img {
  max-height: 70px;
}

/* ■契約一覧 ボタン */
/* 登録 */
.contracts_button_add {
  color: white;
  background-color: #e18a07;
}
/* 解約 */
.contracts_button_stop {
  color: white;
  background-color: #800000;
}

/* ----------------------------------------- */

/* ■ダッシュボード */
.dashboard_message_header {
  color: white;
  background-color: #845d49;
}
.dashboard_paymenterror_header {
  color: white;
  background-color: #b43c3f;
}
.dashboard_inform_header {
  color: white;
  background-color: #845d49;
}
/* 2022/06/30 Wada ExpiredSoon追加 */
.dashboard_expiredSoon_header {
  color: white;
  background-color: #845d49;
}

/* ----------------------------------------- */

/* ■同意書 */
/* CommonComponent.php create_consent_form_text */
.consent_form_create_main_area {
  /* background-color: white; */
  padding: 0px 100px 20px 100px;
}
.consent_form_create_title {
  /* text-align: center; */
  font-size: 16px;
  margin: 20px 0px;
}
.consent_form_create_company {
  text-align: right;
  margin: 20px 0px 40px 0px;
}
.consent_form_create_plan {
  margin: 40px 50px;
}
.consent_form_create_sign_canvas {
  background-color: white;
  border: solid 1px #999999;
}
.sales_policies {
  overflow-x: hidden;
  overflow-y: auto;
  height: 500px;
  margin-top: 15px;
  padding: 0.6em;
  color: #000;
  white-space: pre-wrap;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 4px;
  box-shadow: inset 0 1px 1px #e6e6e6;
}

/* ■分析 */
input[type="text"].analysis_text {
  font-size: 25px;
  background-color: #ffc107 !important;
}

input[type="text"].analysis_text:read-only {
  font-size: 25px;
  background-color: #ffffff !important;
}

/* ----------------------------------------- */

/* ■プランダイアログ */
.plan_dialog_main_image {
  width: 100%;
  max-height: 300px;
  object-fit: contain;
}
.plan_dialog_sub_image {
  width: 100%;
  max-height: 200px;
  object-fit: contain;
}
.plan_dialog_name {
  color: #b6a69a;
  font-weight: normal;
  font-size: 150%;
}
.plan_dialog_amount {
  color: #ae393c;
  font-weight: 100;
  font-size: 150%;
}
.plan_dialog_amount2 {
  color: #ae393c;
  font-weight: 100;
  font-size: 110%;
}
.plan_dialog_exp {
  font-size: 150%;
}

/* ■プラン カード画像 */
.plan_card_img {
  height: 300px;
  object-fit: contain;
}

/* ■プラン カードテキスト */
.card-text {
  color: #ae393c;
}

/* ----------------------------------------- */

/* ■プラン 画像アップロード */
.upload_image_box {
  text-align: center;
  position: relative;
  width: 100%;
  height: 400px;
  border: 1px black dashed;
}

.upload_image_box_icon {
  text-align: center;
  position: relative;
  width: 100%;
  height: 400px;
  border: 1px black dashed;
}

.upload_image_box_icon::after {
  position: absolute;
  content: "\f574  画像を追加";
  font-family: "Font Awesome 5 Free";
  font-weight: 600;
  font-size: 35px;
  top: 40%;
  left: 0;
  right: 0;
  margin: auto;
}

.upload_image_box_content {
  position: absolute;
  width: 80%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.upload_image_thum {
  max-height: 300px;
  object-fit: contain;
}

/* ----------------------------------------- */

/* ■詰替登録 契約終了日 */
.contract_to {
  background-color: #ffa07a;
}

/* ----------------------------------------- */

/* ■課金ダイアログ 再課金情報 */
.show_payment_dialog_redisplay {
  color: #0000ff;
  text-decoration: underline;
}

/* ----------------------------------------- */

/* ■口コミ　星 */
.review_star {
  color: #ffa500;
}

/* ----------------------------------------- */
