:root {
    --form-bgcolor: #DBE8F8;
    --header-bgcolor:#194345;
    --footer-bgcolor:#194345;
  }

body {
    font-size: 1.5rem;
}

/* 入力フォーム flex用（結合不可） */
/*
 .form-group fieldset{
    display: flex;
    flex-wrap: wrap;
} */
 /* 入力フォーム grid用 */
.form-group fieldset{
    display: grid;
    grid-template-columns: 1fr 2fr 1fr 2fr;
}
.form-group fieldset .col-md-2,.form-group fieldset .col-md-4,.form-group fieldset .col-md-10{
    width:auto;
    float:none;
}
.form-group fieldset div {
    /* align-self:start; */
}
.form-group fieldset .colspan2{
    grid-column: span 2;
}
.form-group fieldset .colspan3{
    grid-column: span 3;
}
.form-group fieldset .colspan4{
    grid-column: span 4;
}
.form-group fieldset .rowspan2{
    grid-row: span 2;
}
.form-group fieldset .rowspan3{
    grid-row: span 3;
}
.form-group fieldset .rowspan4{
    grid-row: span 4;
}

.flex_space {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
}

a.logo,a.client-logo {
    font-weight: 700;
}
a.logo,a:visited.logo,a:hover.logo {
    color:#ffffff;
}
a.client-logo {
    color:#FFFFFF;
}
a.logo:before {
    margin-right:5px;
    position: relative;
    top:2px;
}
h3.panel-title {
    font-size:20px;
}
.navbar-custom-client {
    background-color:#002F7B;
    }
.navbar-custom-client .nav li a {
    color:#ffffff;
}
.navbar-custom-client .nav {
    background-color: #002F7B;
}
.navbar-custom-client .dropdown-menu{
    background-color: #002F7B;
}
.navbar-custom-client .nav li a:hover,.navbar-custom-client .nav li a:focus {
    background-color:#002F7B;
}
a.client-logo:before {
    margin-right:5px;
    position: relative;
    top:2px;
}

.required_mark {
    color:firebrick;
}



/* 検索フォーム */
.panel-tools .btn{
    font-size:11px;
}
.openclose {
    display: flex;
    justify-content :space-between;
    align-items: center;
}

.color_form fieldset {
    margin-top:15px;
}
.color_form fieldset legend:before{
    content:"\f10c";
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    padding:5px;
}
.color_form fieldset legend{
    font-size:18px;
    
}
.color_form > label.control-label,.color_form fieldset > label.control-label {
    background-color: var(--form-bgcolor);
    padding:7px;
    border-bottom:solid 1px #cccccc;
    margin-bottom:1px;
    border-top-right-radius: 5px;
}

.color_form > div {

}
/* フォームを2列にする場合 */
.color_form_2column > .col-md-4 ,.color_form_2column fieldset > .col-md-4 {
    clear:both;
    width:70%;
}
table.table-headercolors thead > tr > th{
    background-color: var(--form-bgcolor);
}

.form-control.form-input-width10 {
    width:10%;
    display: inline-block;
}
.form-control.form-input-width20 {
    width:20%;
    display: inline-block;
}
.form-control.form-input-width30 {
    width:30%;
    display: inline-block;
}
.form-control.form-input-width40 {
    width:40%;
    display: inline-block;
}
.form-control.form-input-width50 {
    width:50%;
    display: inline-block;
}
.form-control.form-input-width60 {
    width:60%;
    display: inline-block;
}
.form-control.form-input-width80 {
    width:80%;
    display: inline-block;
}
.form-control.form-input-width90 {
    width:90%;
    display: inline-block;
}
textarea.form-control.textarea-2 {
    min-height: 20em;
}
.form-control > option {
    border:solid 1px red;
    padding:0;
    width:90%;
    z-index:99990;
    
}

label.radio_label {
    margin-right:10px;
    white-space: nowrap;
}
label.checkbox_label {
    line-height: 2em;
}


.fix_message {

    position: fixed;
    top: 20%;
    left: 35%;
    z-index: 2;
    font-size: 20px;
    background: #ffffff;
    display: block;
    width: 30%;
    padding: 30px 10px;
    text-align: center;
    border: solid 5px #8ECCE2;
    border-radius: 10px;

}

/* //ホテル左メニューに高さを合わせる */
.clientadmin div.content {
    min-height:100px;
}

.flex_half {
    display: flex;
    flex-wrap: wrap;
}
.flex_half > div {
    width:calc(50% - 10px);
    margin:5px;
}

.dashboard_hotelname {
    font-size:13pt;
    padding:15px;
    background-color: #f0f8ffa3;
    border:solid 5px #f5f5f5;
    padding: .5em 1em;
    /* background: #fff; */
    border-radius: 10px 50px/50px 10px;

}
.dashboard_hotelname .shop {
    font-size:22pt;
    display: inline-block;
    margin-right: 5px;;
    border-bottom:1px solid ;

}

.topmenu {
    list-style-type: square;
}

.topmenu li {
    border-bottom:dashed 1px #cccccc;
    padding:3px;
}

.draggable {
    border:dashed 1px #cccccc;
    border-radius: 5px;
    padding:20px 10px;
    margin:5px;
    color:#cccccc;
    background: #f5f5f5be;
    text-align: center;
    width: 98%;
    cursor: pointer;
}
.draggable_single {
    border:dashed 1px #cccccc;
    border-radius: 5px;
    padding:10px 10px;
    margin:5px;
    color:#cccccc;
    background: #f5f5f5be;
    text-align: center;
    width: 98%;
    cursor: pointer;
}

span.drag_filename{
	background:#ffffff;
	/* font-weight: bold; */
	color: dodgerblue;
	line-height: 22px;
	display: block;
  }
  span.drag_filename .delete_chk {
	font-weight: 400;
	background:inherit;
	color:black;
  }

  .thumbnail {
    margin-top: 10px;
    position: relative;
    display: inline-block;
}
.img-thumbnail {
    max-width: 100px;
    max-height: 100px;
}
.remove-btn {
    position: absolute;
    top: 5px;
    right: 5px;
    background: #ffffff;
    color: red;
    border: red solid 1px;
    border-radius: 50%;
    width: 20px;
    height: 20px;
    cursor: pointer;
    text-align: center;
    line-height: 16px;
}

input#fileInputHidden {
    display: none;
}

.image_inlist {
    width:100px;
}

.change_cell {
    background:  lightpink;
}
.delete_row {
    background:  lightpink;
}

.left_td {
    font-weight: bold;
    background: #f5f5f5;
}

.head_sticky thead{
    position: sticky;
    top: 0;
    background: #ddd;
}



.border-table_nopadding>tbody>tr>td, .border-table_nopadding>tbody>tr>th, .border-table_nopadding>tfoot>tr>td, .border-table_nopadding>tfoot>tr>th, .border-table_nopadding>thead>tr>td, .border-table_nopadding>thead>tr>th {
    border-top:1px solid #ddd;
    padding:1px;
}
.dayspan {
    display: block;
    text-align: center;
    font-weight: 700;
    padding:10px;
    font-size:14pt;
}

.description_box {
    border:2px #f3f3f3 ridge;
    border-radius: 10px;
    padding:10px;
    margin:5px 0px;
    background-color: #fdfdfd;
}
.cancel {
    background: crimson;
    color:#ffffff;
    padding:2px;
}


#iframe-bg{
    display: none;
    width: 100%;
    height: 2000px;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
    background: #333;
}
#iframe-wrap{
    display: none;
    width: 80%;
    margin: 0 0 0 -40%;
    position: fixed;
    top: 40px;
    left: 50%;
    z-index: 9999;
    background: #fff;
}
#iframe-btn{
    display: none;
    width: 40px;
    height: 40px;
    position: fixed;
    top: 20px;
    right: 20px;
    z-index: 9999;
    background: #999;
    border-radius: 50%;
    cursor: pointer;
    line-height: 40px;
    text-align: center;
    color: #fff;
}

.member_price {
    background: #ddeff6;
}
.planprice_title {
    font-weight: 700;
    font-size:1.1em;
}

.news_date {
    position: absolute;
    right:0;
    top:0;
    font-size:0.9em;
}
.newsimage img{
    max-width: 100%;;
}

.cancel_row {
    background:#f5f5f5;
    text-decoration: line-through; 
}
.admin_notes {
    padding:8px 3px;
    color:#b94646;
}

.date_check {
    display:none;
}
.cancel_row .date_check {
    display:none;
}

.th_nowrap th{
    white-space: nowrap;
}
.logout_button {
    background: none; 
    border: none; 
    padding:3px 6px; color: inherit; 
    font: inherit; 
    cursor: pointer;
    color:#ffffff;
    width:100%;
}

.no-click {
    pointer-events: none;
    opacity: 0.6;
    /* カーソルを変更する場合 */
    cursor: not-allowed !important;
}