@charset "UTF-8";

/* ----------------------------------------
login
---------------------------------------- */

#login {
/* 	margin: 150px auto;
	text-align: center; */
}

#login .card{
	margin-top:30px;
	margin-bottom:30px;
	border:solid 1px #cccccc;
	border-radius:10px;
	padding:30px 20px;
}

#login .card h1{
	margin:0 0 1em 0;
	text-align:center;
	font-size:1.125rem;
}

#login label {
/* 	text-align: right; */
/* 	font-weight: bold; */
}

.members-btn{
	border:solid 2px #dfa9e0;
	width:100%;
	max-width:300px;
	font-size:25px;
}








/* ----------------------------------------
login-error
---------------------------------------- */

.login-error .flow-1{
	display:inline-block;
	border:solid 1px #333333;
	border-radius:0;
	padding:1em;
	text-align:center;
}

.login-error .flow-2,
.login-error .flow-3{
	display:inline-block;
	border:solid 1px #bc034a;
	border-radius:8px;
	padding:1em;
	text-align:center;
}

.login-error .flow-3{
	min-height:3em;
}

.login-error .img_branch_011{
	width:100%;
}

.login-error .img_branch_021{
	width:100%;
}

.login-error .img_branch_022{
	width:100%;
}

.login-error .img_branch_023{
	width:100%;
}

.login-error .img_branch_024{
	width:100%;
}

.login-error .img_branch_030{
	width:1.25vw;
	max-width:14px;
}

.login-error .img_branch_040{
	width:1.25vw;
	max-width:14px;
}

.login-error .img_branch_041{
	width:0.5vw;
	max-width:3.5px;
}

.login-error .img_branch_042{
	width:2.25vw;
	max-width:15px;
}

@media screen and (min-width: 0px) and (max-width: 767px){
	.login-error .img_branch_030{
		width:2.5vw;
		max-width:14px;
	}

	.login-error .img_branch_040{
		width:2.5vw;
		max-width:14px;
	}
}

h2.login-error-title{
	margin:0.5em 0 0.5em 0;
	font-size:1.81rem;
	font-weight:normal;
}

h2.login-error-title img{
	padding-bottom:0.125em;
}

#login-error-case1 .card,
#login-error-case2 .card,
#login-error-case3 .card{min-height:300px;
	margin-top:35px;
}

#login-error-case1 .card h3,
#login-error-case2 .card h3,
#login-error-case3 .card h3{
	margin-top:-20px;
}









/* ----------------------------------------
member-index
---------------------------------------- */

#member-index h2.member-index-title{
	margin:0.5em 0 0.5em 0;
	font-size:1.81rem;
	font-weight:normal;
}

#member-index h2.member-index-title img{
	padding-bottom:0.125em;
}

#member-index .nav-item{
	width:14%;
	min-width:7.75em;
	margin:0.5em;
}

#member-index .nav-item .btn{
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	height:5em;
	padding:0;
	line-height:1.44em;
}

#member-index .nav-item .btn small{
	font-size:0.75rem;
}

@media screen and (min-width: 0px) and (max-width: 991px){
	#member-index .nav-item{
		width:28%;
	}
}

@media screen and (min-width: 0px) and (max-width: 575px){
	#member-index .nav-item{
		width:44%;
	}
}

#member-index h3{
	font-size:1.81rem;
}


/* #main-content .table */
@media screen and (min-width: 0px) and (max-width: 767px){
	#member-index #main-content table.table td{
		font-size:1.06rem;
	}
}

@media screen and (min-width: 0px) and (max-width: 575px){
	#member-index #main-content{
		border:none;
		padding:0;
		background-color:transparent;
	}
}


/* #ticket-summary .table */
/* #member-index #ticket-summary .table tr td:nth-child(2){
	white-space:nowrap;
	max-width:7.0em;
	min-width:5.25em;
}

@media screen and (min-width: 0px) and (max-width: 575px){
	#member-index #ticket-summary .table tr td:nth-child(2){
		white-space:normal;
		width:3.5em;
		max-width:auto;
		min-width:auto;
	}
}

#member-index #ticket-summary .ticket-date{
	font-size:0.94rem;
}

#member-index #ticket-summary .ticket-status{
	font-size:0.875rem;
	font-weight:bold;
}

#member-index #ticket-summary .ticket-quantity,
#member-index #ticket-summary .ticket-price{
	font-size:0.875rem;
}

#member-index #ticket-summary .ticket-quantity .value,
#member-index #ticket-summary .ticket-price .value{
	font-size:1.0rem;
	font-weight:bold;
} */


/* #member_info .table */
#member-index #member_info .table-responsive{
/* 	width:900px;
	max-width:100%;
	margin:0 auto; */
}

#member-index #member_info table.table{
/* 	border-color:#d2bac1; */
	line-height:1.65em;
}

/* #member_info .card-area */
#member_info .card-area,
#modal-update-card .card-area{
    border: none;
    line-height:1.5em;
}

#member_info .card-area label,
#modal-update-card .card-area label{
    display: flex;
    align-items: center;
    position: relative;
    max-width: 100%;
    margin-bottom: 0.4em;
    padding: 0.5em 0.7em;
    border: 1px solid #b4b4b4;
    border-radius: 3px;
    background-color: #ffffff;
    cursor: pointer;
}

#member_info .card-area label:has(:checked),
#modal-update-card .card-area label:has(:checked){
    border-color: #bc034a;
    background-color: #fff0f6;
    color: inherit;
}

#member_info .card-area label:has(:disabled),
#modal-update-card .card-area label:has(:disabled){
    border-color:#b4b4b4;
    background-color: #f4f4f4;
    color: inherit;
    cursor: default;
}

#member_info .card-area label::before,
#modal-update-card .card-area label::before{
    font-family: "Font Awesome 6 Free";
    font-weight: 400;
    content: "\f111";
    margin-right: 10px;
    color:#b4b4b4;
}

#member_info .card-area label::before,
#modal-update-card .card-area label::before{}

#member_info .card-area label:has(:disabled)::before,
#modal-update-card .card-area label:has(:disabled)::before{
    color: #b4b4b4;
    content: "\f111";
}

#member_info .card-area label:has(:checked)::before,
#modal-update-card .card-area label:has(:checked)::before{
    color: #bc034a;
    font-weight: 900;
    content: "\f192";
}

#member_info .card-area label:has(:checked)::after,
#modal-update-card .card-area label:has(:checked)::after{}

#member_info .card-area input,
#modal-update-card .card-area input{
    display: none;
}

#member_info .card-area .img-cardbrands,
#modal-update-card .card-area .img-cardbrands{
    width:48px;
}

#modal_payment .chgcard .card{
	display:inline-block;
	margin-right:auto;
	margin-left:auto;
	border-color: #bc034a;
	border-radius:3px;
	background-color: #fff0f6;
	color: inherit;
	text-align:center;
}


@media screen and (min-width: 0px) and (max-width: 575px){
	#member-index #member_info table.table,
	#member-index #member_info table.table tbody,
	#member-index #member_info table.table tr,
	#member-index #member_info table.table th,
	#member-index #member_info table.table td{
		display:block;
		width:100%;
		height:auto;
		text-align:center;
	}

	#member-index #member_info table.table tr,
	#member-index #member_info table.table th{
		border-top-left-radius:6px;
		border-top-right-radius:6px;
	}

	#member-index #member_info table.table tr,
	#member-index #member_info table.table td:last-child{
		border-bottom-right-radius:6px;
		border-bottom-left-radius:6px;
	}

	#member-index #member_info table.table tr{
		margin-bottom:1.0em;
	}

	#member-index #member_info table.table td{
		padding-top:1em;
		padding-bottom:1em;
	}

	#member-index #member_info table.table td .btn{
		margin-bottom:1em;
		padding-top:5.98px;
		padding-bottom:5.98px;
		font-size:1.0em;
	}
}

/* クレジットカード情報 */
.cc-info{
/* 	margin-bottom:8px; */
	border-color:#cccccc;
	padding:0.5em 1em;
}

.cc-info:last-child{
/* 	margin-bottom:0; */
}


.cc-info-img{
	width:100%;
	max-width:48px;
	height:100%;
	max-height:48px;
}

.cc-expired{
	border:solid 1px #dc3545;
	background-color:#efefef;
}

.cc-expired strong{
	font-weight:normal;
	font-size:0.88rem;
	color:#dc3545;
}

/* card_input */
.input-cnumber,
.input-scode-1{
	width:100%;
	max-width:5em;
}

@media screen and (min-width: 0px) and (max-width: 575px){
	.input-cnumber,
	.input-scode-1{
		max-width:inherit;
	}
}

.expiration-1{
	width:5em;
}

.expiration-2{
	width:7em;
}

/* card_regist_complete */
.cc-detail{
	margin:auto;
	padding:1em;
}

@media screen and (min-width: 0px) and (max-width: 575px){
	.cc-detail{
		font-size:0.85rem;
	}
}

.cc-logo{
	width:100%;
	max-width:100px;
}



/* #tab-pane-6 .table */


/* .members-card */
.members-card{
	border-radius:15px;
	margin:0 auto;
	width:100%;
	max-width:640px;
}

.members-card .card-body{
	padding:6% 8%;
}

.members-card-logo{
	width:52.355%;
	margin-bottom:1.5em;
}

.members-card p{
	margin:0 0 0.25em 0;
	font-size:1.25rem;
}

.members-card .members-card-qr{
	width:78.14%;
}

@media screen and (min-width: 0px) and (max-width: 732px){
	.members-card p{
		font-size:2.62vw;
	}
}








/* ----------------------------------------
modal customize
---------------------------------------- */
.modal-body{
/* 	font-size:1.125rem; */
}

.modal-body .text-center h3{
	font-size:1.81rem;
}








/* ----------------------------------------
inquiry_form
---------------------------------------- */
/* #contactus .table */
#contactus .table-responsive{}

#contactus table.table{
	line-height:1.65em;

}

#contactus table.table td{
	padding-top:1em;
	padding-right:1em;
	padding-bottom:1em;
	padding-left:1em;
}

@media screen and (min-width: 0px) and (max-width: 575px){
	#contactus table.table,
	#contactus table.table tbody,
	#contactus table.table tr,
	#contactus table.table th,
	#contactus table.table td{
		display:block;
		width:100%;
		height:auto;
		text-align:center;
	}

	#contactus table.table tr,
	#contactus table.table th{
		border-top-left-radius:6px;
		border-top-right-radius:6px;
	}

	#contactus table.table tr,
	#contactus table.table td:last-child{
		border-bottom-right-radius:6px;
		border-bottom-left-radius:6px;
	}

	#contactus table.table tr{
		margin-bottom:1.0em;
	}

	#contactus table.table td .btn{
		margin-bottom:1em;
		padding-top:5.98px;
		padding-bottom:5.98px;
		font-size:1.0em;
	}
}
