body{
	color: #333333;
	font-size: .875rem;
}
body:not(.sidebar-mini-md):not(.sidebar-mini-xs):not(.layout-top-nav) .content-wrapper, body:not(.sidebar-mini-md):not(.sidebar-mini-xs):not(.layout-top-nav) .main-footer, body:not(.sidebar-mini-md):not(.sidebar-mini-xs):not(.layout-top-nav) .main-header {
	margin-left: 0px;
}
body:not(.sidebar-mini-md):not(.sidebar-mini-xs):not(.layout-top-nav) .content-wrapper{
	margin-left: 0px;
}
body:not(.sidebar-mini-md):not(.sidebar-mini-xs):not(.layout-top-nav) .content-wrapper, body:not(.sidebar-mini-md):not(.sidebar-mini-xs):not(.layout-top-nav) .main-footer{
	margin-left: 0px;
}

.content-wrapper {
    background-color: #efeae4;
    padding: 1rem;
}
.content-wrapper_fixed{
    margin-top: 57px;
}
.content{
	max-width: 1200px;
	margin: 0px auto;
}
.nav-item img{
	height: 30px;
}
.form-control{
	font-size: .875rem;
}
.control-label{
	font-size: .875rem;
    height: calc(2.25rem + 2px);
    line-height: calc(2.25rem + 2px);
    text-align: right;
}
.control-text{
	font-size: .875rem;
    height: calc(2.25rem + 2px);
    line-height: calc(2.25rem + 2px);
    font-weight: normal;
    border-bottom: 1px dotted #ccc;
}
.confirm{
	background-color: #efefef;
	margin-bottom: 0.25rem;
}
.confirm-textarea{
	height: auto;
}
.errorlist{
	cursor: pointer;
	font-size: .7rem;
}
.errorlist:hover{
	text-decoration: underline;
}
.main-sidebar{
	background-color: #dcdcdc;
}
.main-footer{
	color: #ffffff;
	background-color: #1a1a1a;
}
.navbar-light .navbar-nav .nav-link {
    color: #333333;
}
.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
    color: #1a1a1a;
}
.nav-pills .nav-link:not(.active) {
    color: #333333;
}
.nav-pills .nav-link:not(.active):hover {
    color: #1a1a1a;
}
.nav-sidebar .nav-link p {
	margin-left: 10px;
}

.content-header .content-title{
	font-size: 1.25rem;
}

.content-header .content-title p{
	margin-left: 10px;
	display: inline;
}

.content-footer .content-title{
	font-size: 1.25rem;
}

.content-footer .content-title p{
	margin-left: 10px;
	display: inline;
}

.content .card-header{
	color: #fff;
	background-color: #333;
}

.content .card-header .card-title{
	font-size: .875rem;
	font-weight: bold;
}
.form-inline input, .form-inline select, .form-inline label, .form-inline .confirm{
	margin-right: 10px;
}
/*---------------------------------------------*/
/* table全体                                   */
/*---------------------------------------------*/
table.table{
	margin-bottom: 0px;
}

table.table th {
	background-color: #efeae4 !important;
	color: #333333;
	vertical-align: middle;
	padding: 5px;
}

table.table td {
	vertical-align: middle;
	padding: 5px;
}

.dataTables_length, .dataTables_info, .dataTables_filter, .pagination .page-item .page-link{
	font-size: 0.75rem;
}

.brand-link img{
	width: 228px;
}

.error {
    color: #cc0000;
    font-size: 12px;
}

.nav-sidebar .nav-header{
	padding: 0.1rem 0.25rem;
	border-left:10px solid #666;
	border-bottom:1px solid #666;
}


.nav-item{
	position: relative;
}

.badge{
	font-size: 1rem;
}


input.input_checkbox[type=checkbox] {
	display: none;
}

label.input_checkbox {
	display: block;
	float: left;
	height: 34px;
	padding: 6px 12px;
	margin: 0px 3px 0px 0px;
	text-align: center;
	cursor: pointer;
	font-weight: normal;
	color: #999;
	border: 1px solid #ccc;
	background-color: #eee;
	border-radius: 4px;
}
input.input_checkbox[type="checkbox"]:checked + label.input_checkbox {
	background-color: #ff8000;
	color: #fff;
}

.required{
	background-color: red;
	color: white;
	font-size: 0.75rem;
	padding: 0 0.25rem;
	border-radius: 4px;
	margin-left: 0.5rem;
}

.radio-group label{
	margin-right: 1rem;
	margin-top: 0.5rem;
}

.check-group label{
	margin-right: 1rem;
	margin-top: 0.5rem;
}
.campaign{
	background-color: pink;
	border-radius: 0.5rem;
	padding: 0.5rem;

}
.alert_block{
	width: 95%;
	max-width: 500px;
	margin: 0 auto;
}
.product_image img{
	width: 100%;
}

.product_add-button{
	background-color: #665744;
	color: #FFF;
}
a{
	color: #FFF;
}
a:hover{
	color: #FFF;
}

@media (max-width: 768px) {

	body{
		font-size: 0.75rem;
	}

	.btn{
		font-size: .875rem;
	}

	h4{
		font-size: 1rem;
	}

	h5{
		font-size: 1rem;
	}

	.content-wrapper {
		padding: 0.5rem 0.2rem;
	}

	.nav-link {
		padding: 0.5rem 0.25rem;
	}

	.login-box-msg, .register-box-msg{
		padding: 0.25rem;
	}

	.control-label{
		height: 1.5rem;
		line-height: 1.5rem;
		margin-bottom: 0;
	}

	.form-control{
		font-size: 16px;
	}

	.form-group, .radio-group{
		margin-bottom: 0.25rem;
	}

	.logout{
		padding-top: 0.75rem;
	}

}

#member_birth1,
#member_birth1_confirm{
	display: inline;
	width: 5rem;
}

#member_birth2,
#member_birth2_confirm{
	display: inline;
	width: 4rem;
}

#member_birth3,
#member_birth3_confirm{
	display: inline;
	width: 4rem;
}

#member_zip{
	width: 6rem;
}


#member_bank1{
	width: 15rem;
}
#member_bank2{
	width: 15rem;
}
#member_bank3{
	width: 5rem;
}
#member_bank4{
	width: 8rem;
}
#member_bank5{
	width: 20rem;
}


#member_postalbank1{
	width: 5rem;
}
#member_postalbank2{
	width: 8rem;
}
#member_postalbank3{
	width: 20rem;
}

.nav-tabs .nav-item .nav-link {
  border-right: 1px solid #ddd; /* 区切り線 */
}

.nav-tabs .nav-item:last-child .nav-link {
  border-right: none; /* 最後のタブには線を付けない */
}

.member_title{
	text-align: right;
	padding: 0.25rem;
}

.button-area {
	display: flex;
	justify-content: space-between;
}

.button-area a{
  flex: 1;
  padding: 10px 2px;
  font-size: 12px;
  border: none;
  border-radius: 0px;
}

@media (max-width: 700px) {

	.button-area a{
	  flex: 1;
	  padding: 10px 1px;
	  font-size: 11px;
	}

	.content-wrapper_fixed {
	    margin-top: 120px;
	}

}
.cartin {

    display: inline-flex;
    justify-content: center;
    align-items: center;

    min-width: 24px;        /* 最低のサイズ */
    height: 24px;
    padding: 0 6px;         /* 横に余白を追加して長い数字対応 */

    border-radius: 1rem;      /* 丸く見せる */
    border: 2px solid white;

    color: white;
    background-color: #3C3A39;  /* 背景は透明 */

    font-weight: bold;
    font-size: 12px;
    white-space: nowrap;

}

.fixed-header {
    position: fixed;   /* 画面上部に固定 */
    top: 0;            /* 上端に配置 */
    left: 0;
    width: 100%;       /* 横幅いっぱい */
    z-index: 1000;     /* 他の要素より前面に表示 */
    background-color: #fff; /* 背景色を設定して透けないように */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1); /* 任意で影をつける */
}