.border {
  width: 200px;
  padding: 10px;
  margin: 20px;
}
.border-solid {
  border: 3px solid #000000;
}

.terms {
height: 25vh;
margin-bottom: 10px;
width: 100%;
}

.required {
color: red;
font-size: 20px;
margin: 0 0 0 0 ;
}

.required_message{
color: red;
}

footer {
bottom: 0;
height: 40px;
position: absolute;
}

.label-box {
padding-top: 5px;
background: #dce0e4;
border: solid 3px #d6dadd;
border-radius: 5px;
}
.label-box2 {
padding-top: 5px;
background: #f7f5c2;
border: solid 3px #f1efc5;
border-radius: 5px;
}
.label-box3 {
height:36px;
}
.label-box4 {
margin-top: 15px;
background: #fcfcd5;
border: solid 3px#fcfcd5;
border-radius: 5px;
}

/* .label-box3-tab {
height:50px;
} */

img.member-card {
width: 100% !important;
}
img.member-card-barcode {
  width: 75% !important;
  padding-top: 10px;
  display: none;
}
label.member-card {
width: 100% !important;
}
.c-font-size {
  font-size: 5vw;
}
.c-font-size-tab {
  font-size: 30px;
}


/* @media (min-width: 480px) {
  img.member-card {
    width: 400px !important;
  }
  img.member-card-barcode {
    width: 270px !important;
  }
  label.member-card {
    width: 400px !important;
  }
  .c-font-size {
    font-size: 30px !important;
  }
  .membercard-img-border-radius {
    width: 403px !important;
  }
} */

/* @media (min-width: 768px) {
  .container-conf {
    max-width: 600px !important;
  }
  img.member-card {
    width: 550px !important;
  }
  img.member-card-barcode {
    width: 400px !important;
  }
  label.member-card {
    width: 550px !important;
  }
  .membercard-img-border-radius {
    width: 553px !important;
  }
} */

/* @media (min-width: 992px) {
  .container-conf {
    max-width: 800px !important;
  }
  .c-font-size {
    font-size: 40px !important;
  }
} */

/* @media (min-width: 1200px) {
  .container-conf {
    max-width: 900px !important;
  }
  img.member-card {
    width: 700px !important;
  }
  img.member-card-barcode {
    width: 550px !important;
  }
  label.member-card {
    width: 700px !important;
  }
  .membercard-img-border-radius {
    width: 703px !important;
  }
} */
header {
top: 0;
padding:10px 0px;
position: absolute;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
}
.container-conf {
margin-top: 55px;
}
.body-head {
margin-top: 55px;
}
.step-img {
padding:10px 0px;
text-align: center;
bottom: 0px;
}

.form-row-birthday {
display: -ms-flexbox;
display: inline-block;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin-right: -5px;
margin-left: -5px;
}

.form-row-birthday > .col,
.form-row-birthday > [class*="col-"] {
padding-left: 5px;
width: 40%;
}
.form-row-birthday > .col-mini,
.form-row-birthday > [class*="col-mini-"] {
width: 30%;
}
/* 年月日テキストボックス幅調整(年) */
.birthday-text-y {
width: 80%;
display: inline-block;
}
/* 年月日テキストボックス幅調整(月日) */
.birthday-text-md {
width: 70%;
display: inline-block;
}

@media (min-height:1050px) {
.step-img {
  position:absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
}
}
.step-img-mail {
padding:10px 0px;
bottom: 0px;
position:absolute;
left: 50%;
transform: translateX(-50%);
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
}

.swal2-title {
font-size:18px !important;
}

@media (max-width:480px) {
.swal2-title {
  font-weight: normal !important;
  font-size:17px !important;
}
}
/* クーポン一覧 */
/* ページングと一覧の幅を調整 */
.member_list_table {
margin-bottom: 0;
width:100%;
}
/* 一覧項目大枠の幅調整 */
.member_list {
overflow-x: auto;
overflow-y: hidden;
white-space: nowrap;
width:100%;
}
/* 一覧項目の画像位置調整 */
.member_list_table_image {
position: relative;
}

/* アイコン画像表示 */
.member_list_icon {
width: 15px;
margin-bottom: 3px;
}
/* ラベル表示 */
.member_list_label {
font-size: 10px;
margin-bottom: 0px;
}
/* ラベル表示（黒） */
.member_list_label_black {
color: #424242;
}
/* ラベル表示（赤） */
.member_list_label_red {
color: red;
}
/* 0件の場合のメッセージ表示 */
.member_list_na {
text-align: center;
font-size: 20px;
}
/* クーポン詳細 */
/* 予約番号−大枠 */
.flexslider_member {
height: 120px;
margin-bottom: 20px;
}
/* 予約番号−タイトル */
.member_number_title {
font-size: 20px;
}


/* 会員情報登録画面 */
/* パスワードポリシー説明 先頭行 */
.password_policy_description_top {
padding-top: 5px;
}
/* パスワードポリシー説明 */
.password_policy_description {
font-size: 80%;
}
.body-coupon {
padding-left:0 !important;
padding-right:0 !important;
}

/* 会員証画面 */
/* 会員証画像－枠 */
.membercard-img-border-radius {
border: solid 2px #C0C0C0;
border-radius: 6px;
margin-left: auto;
margin-right: auto;
}
/* 会員証画像－まるみ */
.membercard-img-radius {
margin: 0px;
border-top-left-radius: 4.5px;
border-top-right-radius: 4.5px;
}
/* 会員証－会員番号をiOSで見たときに電話番号にしない対応 */
.disable-auto-tel a[href^="tel:"] {
color: inherit;
text-decoration: none;
pointer-events: none;
}
/* 会員証－会員番号のフォントの大きさ*/
.font30{
font-size:10vw;
font-weight: bold;
}
/* 会員証－会員番号のフォントの大きくした際の位置修正*/
.line-height{
  margin-top:3vw;
}
/* 下余白用*/
.mb-10{
margin-bottom: 10px !important;
}

/* 一覧項目のポイント下の文字サイズ */
.font-size5 {
  font-size:10px;
  text-align: left;
  margin: 0px !important;    
}
   
   /* ポイント枠 */
  .border{
      border: 1px solid;
      width:auto;
      height: 150px;
      margin: 10px 0px 10px 0px;
      color:#424242 !important;
      border-radius:15px !important;
  }

  /* 一覧背景色 */
  .table-striped-white > tbody > tr:nth-child(odd) > td,
  .table-striped-white > tbody > tr:nth-child(odd) > th {
    background-color: #ffffff;
  }

/*ボタンのアイコンと文字の間調整用*/
.mr-10{
margin-right: 10px;
}

/* 会員登録確認画面　修正ボタン */
.btn-light {
color: #ffffff;
background-color: #888888;
border-color: #888888;
}

/* コンテナ */
.container {
  padding-top: 5px;
  padding-right: 5px;
  padding-left: 5px;
  padding-bottom: 5px;
  margin-right: auto;
  margin-left: auto;
/* margin-top: 0px;
  margin-right: 0px;
  margin-left: 0px;
  margin-bottom: 0px; */
  overflow: hidden;
}
/* コンテナ ポイント取得*/
.container-ex-getpoint {
  margin-top: 20px;
}

.form-control {
color: #000;
border: 1px solid #838383;
-webkit-appearance: none;
}

.form-control:focus {
border: 3px solid #66afe9;
}

/* プレースホルダー*/
.form-control:-moz-placeholder {
color: #c2c2c2;
}
.form-control::-moz-placeholder {
color: #c2c2c2;
}
.form-control:-ms-input-placeholder {
color: #c2c2c2;
}
.form-control::-webkit-input-placeholder {
color: #c2c2c2;
}

.row {
    margin: 0px;
}

.p-0 {  
  padding: 0px;
}

.member-name{
  text-align: center;
  margin-top: 15px;
  margin-bottom: 10px;
  font-weight: bold;
  font-size: 18px;
}

.member-card-box {
  /* border: 1px solid #000000; */
  border-top-left-radius: 4.5px;
  border-top-right-radius: 4.5px;
  border-bottom-left-radius: 4.5px;
  border-bottom-right-radius: 4.5px;
  margin-right: 50px;
  margin-left: 50px;
  margin-bottom: 10px;
}

.my-point {
  margin-right: 20px;
  margin-left: 20px;
  margin-bottom: 10px;
}
.my-point-sub {
  margin-right: 10px;
  margin-left: 10px;
  margin-bottom: 10px;
}
.info-point{
  padding-right: 0px;
  padding-left: 0px;
  margin-bottom: 10px;
}
.my-member-sub {
  margin-top: 10px;
  margin-right: 10px;
  margin-left: 10px;
  margin-bottom: 10px;
}
.row-ex-membercard{
  margin-right: 10px;
  margin-left: 10px;
  margin-bottom: 20px;
}
.row-ex-membercard-link{
  margin-top: 10px;
  margin-right: 10px;
  margin-left: 10px;
  margin-bottom: 10px;
}

/* ポイント履歴関連 */

.history_table{
  border-bottom: 1px solid #ccc;
  margin-bottom: 10px;
  padding-bottom: 3px;
  width: 100%;
}

.history-span{
  margin-right: 10px;
}

.point-history-terms {
  height: 15vh;
  margin-bottom: 20px;
  width: 100%;
  border: solid 2px #f58505;
  padding:10px 5px 5px 10px;
  border-radius: 5px;
}
/* 使用ポイント右寄せ＆赤文字表記 */
.point_use{
  float: right;
  color: red;
}
/* 確認ポイント右寄せ */
.point_get{
  float: right;
}
/* ポイント履歴画面タイトル */
.point-title h4{
  padding-top: 10px;
  font-weight: bolder; 
}
/* ポイント履歴画面、履歴一覧 */
.point-body{
  border: solid 1px #ccc;
  padding:5px;
  border-radius: 5px;
  /* background-color: rgb(247, 242, 242); */

}
/* 会員証画面 下項目ボタン */
button.link-style-btn{
  cursor: pointer;
  border: none;
  background: none;
  color: rgb(95, 95, 95);
  width: 100%;
  text-align: left;
}

button.link-style-btn:hover{
  text-decoration: underline;
  color: rgb(90, 85, 85);
}
/* 規約画面リンク */
.button-terms{
  border-bottom: solid 1px rgb(90, 85, 85);
}
/* 会員証画面 下項目余白等 */
.membercard-item{
  border-bottom: solid 1px rgb(95, 95, 95);
  padding-top: 5px;
  padding-bottom: 5px;
  width: 100%;
}

.pt30{
  padding-top:20px;
}

/* 注意事項 項目 */
.precauntion-body{
  margin-bottom: 20px;
  width: 100%;
  padding:10px 5px 5px 7px;
}

/* 注意事項 タイトル */
.precauntion-title{
  width: 100%;
  background-color: rgb(255, 180, 94);
  text-align: center;
  height: 30px;
}
/* 注意事項 本文 */
.precauntion-body{
  margin-bottom: 10px;
  padding-bottom: 3px;
}
/* 注意事項 枠 */
.precauntion{
  border: solid 1px #f58505;
  margin-bottom: 20px;
  width: 100%;
}
/* 注意事項 余白 色 */
.precauntion-table{
  border-bottom: 1px solid #ccc;
  margin-bottom: 20px;
  padding-bottom: 5px;
  width: 100%;
}
/* 注意事項 余白 下線 */
.precauntion-title p{
  padding-top: 5px;
  font-weight: bolder;
}
/* ポイント規約 タイトル */
.point-terms-title h4{
  text-align: center;
  padding-bottom: 10px;
  font-weight: bolder;
}

/* ポイント規約 本文 */
.point-terms-text{
  height: 95vh;
  margin-bottom: 10px;
  width: 100%;
  padding-left:4px;
}
/* 会員証画面、リセット定義の表示 */
.point-reset-message{
  font-size: 3vw;
  color:red;
  width:100%;
  text-align: center;
  white-space: pre-wrap;
}

/* 獲得ポイントについて、利用規約遷移 */
.link-style-btn-terms{
  cursor: pointer;
  border: none;
  background: none;
  color: rgba(18, 134, 230, 0.938);
  width: 100%;
  text-align: left;
}

/* ポイント付与最低値の表示 */
.point-min{
  float: right;
  margin-right: 8px;
}
/* 会員証画面、リセット定義の表示 タブレット側*/
.point-reset-message-tab{
  font-size: 20px;
  color:red;
  width:100%;
  text-align: center;
}

/* --terms checkbox-------------------------------- */
.terms-agreement-check {
  margin-top: 4vh;
}

.green_solid_btn {
  background-color: #28a745;
  border-color: #28a745 !important;
  color: #fff;
  border: 2px solid !important;
  height: 6vh;
  width: 100%;
  border-radius: 6px;
  font-size: 2vh;
}

.green_boder_btn {
  background-color: #ffff;
  border-color: #28a745 !important;
  color: #28a745;
  border: 2px solid !important;
  height: 6vh;
  width: 100%;
  border-radius: 6px;
  font-size: 2vh;
}

.yellow_boder_btn {
  background-color: #ffff;
  border-color: #f4a31c !important;
  color: #f4a31c;
  border: 2px solid !important;
  height: 6vh;
  width: 100%;
  border-radius: 6px;
  font-size: 2vh;
}

.green_solid_btn > .icon , .green_boder_btn > .icon, .yellow_boder_btn > .icon {
  height: 2vh;
  margin-bottom: 3px;
  white-space: pre-wrap;
}
/*会員証画面　各種説明div内改行*/
.new-line{
  white-space: pre-line;
  text-indent: 0;
}
/* 追加 */
/* ボタン個別調整 */
.btn-warning {
  color: #ffffff;
  background-color: #f0ad4e;
  border-color: #eea236;
}

.btn-warning:hover {
  color: #ffffff;
  background-color: #ed9c28;
  border-color: #d58512;
}

.btn-warning:not(:disabled):not(.disabled).active, .btn-warning:not(:disabled):not(.disabled):active, .show>.btn-warning.dropdown-toggle {
  color: #ffffff;
  background-color: #ed9c28;
  border-color: #d58512;
}

.btn-lg{
  font-size: 18px;
}

/* クーポン枠調整 */
.table-bordered {
  border: 1px solid #ddd;
  border-collapse: separate;
  *border-collapse: collapse;
  border-left: 0;
  -webkit-border-radius: 15px !important;
  -moz-border-radius: 15px !important;
  border-radius: 15px !important;
}

.widget-header-list.border {
  border: 1px solid #424242 !important;
}