/**
 * user_style.css
 * ユーザ画面基本スタイル
 */
body {
    padding-bottom: 40px;
    color: #333;
    background-color: #fff;
    font-size: 14px;
}

/* 基本レイアウト */
.container {
    width: auto;
    margin: 30px 30px 30px 20px;
}

.alert {
    margin: 20px 0;
}

.jumbotron {
    padding: 5px 0;
    margin: 0px;
    border-radius: 0px;
}

.site-title {
    background-color: #78BDD4;
    border: 0;
}

.site-title h4 a {
    color: #FFF;
    font-size: 20px;
}

.btn-group-topmenu a.btn {
    font-size: 16px;
    font-weight: bold;
    border-color: #fff;
    background-color: #fff;
}

.btn-group-topmenu a.btn:hover {
    background-color: #fff;
    text-decoration: underline;
}

.page-title {
    font-size: 18px;
    font-weight: bold;
    margin-bottom: 20px;
}

.page-subtitle {
    font-size: 15px;
    font-weight: bold;
    margin-bottom: 10px;
}

.area-title {
    font-size: 18px;
    font-weight: bold;
}

.btn-menu-first {
    border-style: solid;
    border-width: 3px;
    border-color: #FF0000;
    padding: 15px;
    margin: 10px 0px;
}

.btn-menu-first a,a:hover {
    color: #333333;
    text-decoration: none;;
}

.btn-menu {
    border-style: solid;
    border-width: 1px;
    border-color: #C4C4C4;
    padding: 15px;
    margin: 10px 0px;
}

.btn-menu a,a:hover {
    color: #333333;
    text-decoration: none;;
}

.btn-menu h4 {
    font-weight: bold;
}

.btn-container {
    margin: 30px 0 30px 0;
}

.btn {
    width: 220px;
}
.btn-block {
    width: 100%;
}
.btn-outline {
    color: inherit;
    background-color: transparent;
    transition: all .5s;
}
.price-announcement {
    border-style: solid;
    border-width: 1px;
    border-color: #C4C4C4;
    padding: 20px;
    margin: 10px 30px;
}
.price-announcement div {
    text-align: left;
    line-height: 170%;
}
.modal-title {
    font-weight: bold;
}

/* HOME画面 */
.home-pr {
    border-width: 0px;
    border-color: #fff;
    padding: 20px;
}

.home-btn-login {
    margin: 20px 0 30px 0;
}
.home-btn-signin {
    margin: 0 0 40px 0;
}

/* ログイン */
.form-signin {
  max-width: 330px;
  padding: 15px;
  margin: 0 auto;
}
.form-signin .form-signin-heading,
.form-signin .checkbox {
  margin-bottom: 10px;
}
.form-signin .checkbox {
  font-weight: normal;
}
.form-signin .form-control {
  position: relative;
  height: auto;
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
  padding: 10px;
  font-size: 16px;
}
.form-signin .form-control:focus {
  z-index: 2;
}
.form-signin input[type="email"] {
  margin-bottom: -1px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.form-signin input[type="password"] {
  margin-bottom: 10px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.form-signin-footer {
  text-align: center;
  max-width: 330px;
  padding: 15px;
  margin: auto;
}

/* 各種フォーム */
.form-input {
    max-width: 450px;
    padding: 15px;
    margin: 0 auto;
}
.form-input .checkbox {
    margin-bottom: 10px;
}
.form-input .form-heading {
    margin-top: 15px;
    margin-bottom: 15px;
}
.form-input .checkbox {
    font-weight: normal;
}
.form-input .form-control {
    position: relative;
    height: auto;
    -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
    padding: 10px;
    font-size: 16px;
}
.form-input .form-control:focus {
    z-index: 2;
}
.form-input input {
    margin-bottom: 10px;
}
.form-input label {
    margin-top: 5px;
    margin-bottom: 5px;
}
.form-input-footer {
    text-align: center;
    max-width: 450px;
    padding: 15px;
    margin: auto;
}
.form-input .required {
    font-size: 60%;
    color: red;
    vertical-align: top;
}
.form-input .btn-area {
    margin-top: 15px;
    margin-bottom: 5px;
}
.form-input .show-data p {
    margin: 10px;
}
.form-input .label-checkbox {
    margin-top: 10px;
    margin-bottom: 5px;
    padding-right: 0px;
    vertical-align: middle;
}
.form-input .label-checkbox label {
    margin-top: 0px;
    margin-bottom: 0px;
}
.form-input .show-checkbox {
    margin-top: 10px;
    margin-bottom: 5px;
    padding-right: 0px;
    padding-left: 0px;
    vertical-align: middle;
}
.form-input .show-checkbox label {
    font-weight: normal;
    margin-top: 0px;
    margin-bottom: 0px;
}
.form-input .show-checkbox input[type="checkbox"] {
    margin-right: 5px;
}
.form-input .button-in-form {
    text-align: left;
    color: #9a9a9a;
}
.form-alert {
    margin: 5px 0 10px 0;
    padding: 10px 10px;
}
.form-input .checkbox-list label {
    font-weight: normal;
    margin-left: 5px;
}
.is-invalid {
    border-color: #red;
}
.help-block {
    font-size: 90%;
}
.form-input #image_area input[type="file"] {
    font-size: 90%;
}
.form-input #add_image {
    font-size: 90%;
}
.form-input .input-card-exp .form-control {
    width: 70px;
    margin: 0 5px;
}

/* マイページ, 案件関連ページ */
.alert-new-message {
  color: #761b18;
  background-color: #f9d6d5;
  border-color: #f7c6c5;
}
.alert-new-message hr {
  border-top-color: #f4b0af;
}
.alert-new-message .alert-link {
  color: #4c110f;
}

.proposal-item-container {
    margin: auto;
}

.proposal-item h4 {
    font-weight: normal;
    font-size: 16px;
}

.proposal-item-label,
.proposal-item-data {
    margin-top: 2px;
    margin-bottom: 5px;
}

.proposal-status {
    font-size: 16px;
    font-weight: bold;
    color: #337AB7;
}

.proposal-item .proposal-image {
    width: 120px;
    margin: 0 0 5px 0;
    border: 1px solid #ddd;
}

.proposal-item .proposal-icon-file {
    width: 60px;
    margin: 5px 0 5px 0;
    padding: 5px;
    border: 0;
}

.proposal-btn {
    margin: 30px 0 80px 0;
}
.estimate-area {
    margin-bottom: 25px;
}
.estimate-label,
.estimate-data {
    margin-top: 10px;
    margin-bottom: 10px;
}
.estimate-data {
    text-align: left;
    font-size: 18px;
    font-weight: bold;
}
.post-address-area {
    margin-top: 15px;
}
.post-address {
    font-size: 14px;
    margin: 5px 0;
}
.mypage-btn-message {
    margin: 30px 0 40px 0;
}

.mypage-btn-profile {
    margin: 30px 0 80px 0;
}
.identification-image {
    width: 120px;
    margin: 0 0 5px 0;
    border: 1px solid #ddd;
}
.identification-icon-file {
    width: 60px;
    margin: 5px 0 5px 0;
    padding: 5px;
    border: 0;
}
.payment-checkbox {
    margin-left: 20px;
}
.modal-btn .btn {
    width: 120px;
}

/* メッセージ関連ページ */
.message-item-container {
    margin: auto;
}
.thread-container .message-item {
}
.thread-container .btn-menu {
    padding: 10px;
    margin: 8px 0px;
}
.message-item h4 {
    font-weight: bold;
    font-size: 15px;
}
.message-item .sticker {
    font-weight: bold;
    color: #f00;
}
.message-item .datetime {
    font-size: 90%;
    color: #7a7a7a;
}
.message-item-label,
.message-item-data {
    margin-top: 2px;
    margin-bottom: 5px;
}
.message-item-data {
    padding-right: 10px;
}
.message-item-data .content {
    font-size: 14px;
    padding-top: 8px;
    padding-bottom: 5px;
}
.message-item-data .content a {
    color: #337AB7;
    text-decoration: underline;
}
.message-status {
    font-size: 15px;
    font-weight: bold;
    color: #337AB7;
}

.message-item .message-image {
    width: 160px;
    margin: 10px 0 5px 0;
    border: 1px solid #ddd;
}

.message-item .message-icon-file {
    width: 60px;
    margin: 10px 0 5px 0;
    padding: 5px;
    border: 0;
}

.message-btn {
    margin: 30px 0 80px 0;
}
.message-send-area {
    padding-top: 15px;
    padding-right: 20px;
}
.message-send-area .content {
    margin-bottom: 5px;
}
.message-send-area .image {
    margin-bottom: 8px;
}
.message-send-area .btn-area {
    text-align: center;
}
.message-send-area input[type="file"] {
    font-size: 90%;
}
.message-image {
    width: 180px;
    margin: 10px 0 0 0;
    border: 1px solid #ddd;
}

/* 403,404,503ページ */
.http-error-message {
    padding: 30px;
    line-height: 1.5em;
}
