@charset "UTF-8";
/**
 * 会員登録系
 */

main {background-color: #F3F4F6; padding-top: 120px;}
@media screen and (max-width: 991px) {
    main {padding-top: 0;}
}

/* ヘッダー */
.header-top .container{
    background-color: #000;
}
.header-top .container a{
    color: #fff;
}
.header-bottom .container a{
    color: #000;
}
.language-switch {
    color: #000;
}

.container-wide{
    width: 100%;
}

.field header {
    position: relative;
    margin-bottom: 30px;
}

label{
    user-select: none!important;
}


.key-color{
    color: #ea6d6d;
}

.field {
    padding:15px;
    margin-top: 60px;
    margin-bottom: 60px;
    margin-left: auto;
    margin-right: auto;
    clear: both;
    color: #fff;
}

.field small{
    font-size: 14px;
}

.field .text-center{
    text-align: center;
}

.field h2{
    font-weight: bold;
    color: #fff;
    letter-spacing: 1px;
    font-size: 2.5em;
    padding-top: 0px;
    clear: both;
    text-align: center;
}
.field .sub {
    padding: 10px;
    font-size: 1em;
    color: #fff;
    text-align: center;
    letter-spacing: 1px;
    line-height: 1.8em;
    font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', sans-serif;
}

.field input[type="text"],
.field input[type="email"],
.field input[type="password"],
.field input[type="number"]{
    width: 99%;
    background: transparent;
    font-size: 14px;
    padding: 5px 15px;
}

.field .form-group{
    margin: 15px auto;
}

.pass-reset input.form-control{
  color: #fff;
}

.wp-content {
    line-height: 2em;
    font-size: 14px;
    max-width: 800px;
    margin: auto;
}

.flowline{
 margin-top: 20px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}
.flowline ul li {
  display: block;
    float: left;
    position: relative;
    text-align: center;
    white-space: nowrap;
    font-size: 12px;
    font-weight: bold;
    z-index: 1;
}
.flowline li.active {
    color: #C62601;
}

.flowline ul {
  padding: 0;
    position: relative;
    margin: 0 auto;
}
.flowline ul::before {
    content: "";
    height: 4px;
    background: #999;
    position: absolute;
    top: 13px;
    margin: 0;
    border-radius: 2px;
    z-index: 0;
}
.flowline.step4 ul::before {
    width: 75%;
    left: 12.5%;
}
.flowline li.active .flow_number {
    background: #C62601;
}
.flowline.step4 ul li {
    width: 25%;
    font-family: 'Raleway', sans-serif;
}
.flowline li .flow_number {
    line-height: 30px;
    width: 30px;
    height: 30px;
    margin-bottom: 5px;
    font-size: 12px;
    background: #999;
    color: #fff;
    top: 0;
    left: 18px;
    display: inline-block;
    margin-bottom: 5px;
    text-align: center;
    vertical-align: middle;
    border-radius: 50%;
}

form .scroll-area{
    height: 200px;
    overflow-y: scroll;
    overflow-x: hidden;
    font-size: 12px;
    line-height: 2em;
    padding: 20px;
    text-align: left;
    border: 1px solid #eee;
    margin: 0px auto 10px auto;
}

#l_form .btn-success {
    max-height: 300px;
    margin-left: auto;
    margin-right: auto;
    border: none;
    color: #fff;
}
#l_form .btn-success[disabled]{
    background-color: #ccc;
}

#l_form .btn-success:hover{
    opacity: 0.8;
}

.privacy-chk{
    margin-bottom: 30px;
    padding-left: 15px;
}

#l_form .alert {
    display: inline-block;
    vertical-align: middle;
    padding: 0 15px;
    margin-bottom: 0;
    border: 1px solid transparent;
    border-radius: 4px;
    font-size: 12px;
    font-weight: normal;
    margin-left: 5px;
}


.error-list .alert-warning {
    margin-bottom: 8px;
    padding: 2px 10px;
}
.error-list .alert-warning p{
    font-size: 12px;
}

#u_email,#u_password{
    color: #333;
}


#confirm_form{
    padding: 30px 0;
}

.page-member{

}

.page-member .user-nav{
    padding: 5px 0;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.page-member .user-nav > a{
    display: block;
    padding: 0 15px;
    color: #333;
    margin-bottom: 30px;
}

.page-member .fa{
   
    color: #dd2525;
}

.page-member article{
  padding: 30px 30px;
  background-color: #fff;
  color: #333;
}

.page-login article {
  padding: 30px 30px;
  background-color: #fff;
  color: #333;
}

.page-login article .row{
  color: #333;
  max-width: 360px;
  margin-left: auto;
  margin-right: auto;
  display: block;
}

.renew-site{
  margin-bottom: 30px;
}

.renew-site p{
  margin-bottom: 15px;
}

.renew-site .btn{
   color: #fff;
       background-color: #dd2525;
}

.renew-site .btn:hover{
   color: #fff;
       background-color: #dd2525;
}


.page-user_confirm .flex.wrap,
.page-login .flex.wrap{
    justify-content: center;
}
.page-user_confirm header,
.page-login header{
   text-align: center;
}

.page-login .form-group{
    margin-top: 10px;
    margin-bottom: 10px;
}

.page-login .lost-password{
    color: #333;
}


.page-user_confirm .input-form{
    background: #fff;
    padding: 30px 60px;
    color: #333;
}


#confirm_form table{
    width: 100%;
} 





.page-member article header{
  padding-left: 15px;
    border-left: 3px solid #333;
}
.page-member article header h2{
  font-weight: bold;
  font-size: 25px;
  line-height: 1em;
  color: #333;
}

.page-member .text-center{
    text-align: center;
}


.page-member .text-left{
    text-align: left;
}


.page-member .text-right{
    text-align: right;
}

.page-member .unsubscribe{
    color: #333;
    margin-right: 0;
    margin-left: auto;
    display: inline-block;
}

.page-member .logout-btn{
    color: #333;
}

.page-member .btn-area{
    padding: 15px 0;
}

.mypage-status{
  position: relative;
  text-align: center;
}

.scroll-table {
  overflow: auto;
  white-space: nowrap;
}

.reserv_list-tbl{
    font-size: 14px;
    margin: 30px auto;
    width: 100%;
    min-width: 600px;
}


.reserv_list-tbl tr{
     border:1px solid #ddd;
}


.reserv_list-tbl thead th{
    text-align: center;
    font-size: 12px;
    padding: 7px 7px;
    border-left: 1px solid #eee;
}

.reserv_list-tbl tbody td{
  text-align: left;
  font-size: 13px;
  color: #333;
  font-weight: normal;
  text-align: left;
  padding: 5px 6px;
  border-left: 1px solid #eee;
}

.reserv_list-tbl td.date{
    text-align: center;
    width: 105px;
    white-space: pre-wrap;
    font-size: 12px;
}

.reserv_list-tbl td.num{
    text-align: left;
    width: 90px;
    font-size: 12px;
}

.reserv_list-tbl td.num a{
    color: red;
    text-decoration: underline;
}


.reserv_list-tbl th.date{
    text-align: center;
    width: 105px;
    white-space: pre-wrap;
}

.reserv_list-tbl th.num{
    text-align: center;
    width: 90px;
}


.reserv_list-tbl td.status{
    text-align: center;
    color: red;
    font-size: 12px;
    width: 105px;
}

.reserv_list-tbl td.status span{
  display: flex;
  align-items: center;
  justify-content: center;
}




.entry-table{
  margin-top: 0px;
  margin-bottom: 30px;
  width: 100%;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
}

.page-member .sumarry{
  color: #545454;
  margin-top: 30px;
  display: inline-block;
  vertical-align: middle;
  padding: 10px 35px;
  text-align: center;
  border-top: 3px solid #a4a4a4;
  border-right: 1px solid #eee;
  border-left: 1px solid #eee;
  font-size: 16px;
  font-weight: bold;
  border-bottom: 1px solid #fff;
}


.page-member .entry{
  padding: 20px;
  margin-bottom: 25px;
  border:1px solid #ddd;
  margin-top: -1px;
}
.page-member .entry .form-control.min{
  width: 120px;
  display: inline-block;
  margin-right: 5px;
}
.page-member .entry-table tbody{
}
.page-member .entry-table tbody tr{
  border:1px solid #ddd;
}
.page-member .entry-table tbody th{
  border:1px solid #ddd;
  width: 185px;
  background-color: #f2f2f2;
  color: #333;
  font-size: 12px;
  font-weight: bold;
  text-align: left;
  padding: 15px;
}
.page-member .entry-table tbody td{
  color: #333;
  font-size: 12px;
  font-weight: normal;
  text-align: left;
  padding: 12px;
}
.page-member .entry .btn{
  position: relative;
  padding-right: 50px;
}
.page-member .entry .update-btn{
  background-color: #e84824;
  color: #fff;
  margin-left: auto;
  margin-right: auto;
}

.page-member .reserv-confirm table.detail {
    margin-top: 0px;
    margin-bottom: 30px;
    margin-left: auto;
    margin-right: auto;
    border: 1px solid #90949c;
}

/*
.page-member .entry .btn:after,
.page-member .entry .update-btn:after{
  position: absolute;
  right: 10px;
  content: '\f0da';
  font-family: FontAwesome;
  display: inline-block;
  vertical-align: middle;
}
*/

.using-nav{

}

.using-nav li{
  display: block;
  padding: 5px 0;
}

.using-nav li a{
  color: #091369;
}

.using-nav li a:hover{
  color: #091369;
}



@media screen and (max-width: 750px) {

    .field h2{
       font-size: 1.8em;
    }

    .page-user_confirm .input-form{
      padding: 30px 15px;
    }
    #confirm_form table{

    }
    #confirm_form table tr{
        display: block;
      width: 100%;
    }
    #confirm_form table th{
      background: #eee;
      display: block;
      width: 100%;
      padding: 5px 15px;
    }
    #confirm_form table td{
      display: block;
      width: 100%;
    }
    .input-form th span:nth-child(2) {
      display: inline;
      font-size: 11px;
  }
    .page-user_confirm .input-form  input[type="number"].form-control{
      width: 70px;
   }
    .page-user_confirm .input-form input[name="license_number"].form-control{
      width: 100%;
   }
   .page-user_confirm .input-form input[name="intl"].form-control{
      width: 4em;
   }
   .input-form td .flow>div{
      margin-left: 2px;
      margin-right: 2px;
      font-size: 12px;
   }

   .page-member article{
       padding: 30px 15px;
   }

   .page-member .entry-table{
      border: none;
   }
   .page-member .entry-table tbody tr{
     display: block;
   }
   .page-member .entry-table tbody th{
       width: 100%;
       display: block;
       text-align: left;
       padding: 3px 15px;
   }
   .page-member .entry-table tbody td{
       display: block;
       text-align: left;
       padding: 10px 15px;
       min-height: 2em;
   }
   .page-member .entry .entry-table .form-control.min{
       width: 99%;
       display: block;
   }

}


/* 追加カスタムスタイル */
/* フォーム用共通クラス */
.form-pd-4 {
  padding:4px 0;
}
.form-mg-l-4 {
  margin-left: 4px;
}
.form-mg-r-4 {
  margin-right: 4px;
}
.form-rounded {
  border-radius: 4px;
}