/*
 * 未ログイン時ページ
 */
#pageUnlogin {
	padding-top: 15px;
}
	#pageUnlogin .panel-body.minHeight {
		min-height: 290px;
		padding-bottom: 90px;
		position: relative;
	}
		#pageUnlogin .panel-body.minHeight .bottomCenter {
			position: absolute;
			bottom: 15px;
			left: 0;
			width: 100%;
		}

/*
 * プロフィール未入力項目警告
 */
#pageEmptyProfile {
	padding-top: 15px;
}

/*
 * お申込み受付終了
 */
#pageLimitTimeout {
	padding-top: 15px;
}

/*
 * お申込み受付前
 */
#pageBeforeAccept {
	padding-top: 15px;
}

/*
 * お申込みページ No.1
 */
#page01 {
	padding-top: 15px;
}
	#page01.dispOther {
	}
		#page01.dispOther .entryOwnBlock {
			display: none;
		}
		#page01 .entryOtherBlock {
			display: none;
		}
			#page01.dispOther .entryOtherBlock {
				display: block;
			}
			#page01 .entryOtherBlock .delegclass {
				display: none;
			}

/*
 * お申込みページ No.2
 */
#page02 {
	padding-top: 15px;
}
	#page02 table.payment,
	#page02 table.member,
	#page02 table.minister,
	#page02 table.question,
	#page02 table.entry,
	#page02 table.deleg,
	#page02 table.basic {
		font-size: 12px;
		margin: 0;
	}
		#page02 table.payment th,
		#page02 table.member th,
		#page02 table.minister th,
		#page02 table.question th,
		#page02 table.entry th,
		#page02 table.deleg th,
		#page02 table.basic th {
			width: 160px;
		}

/*
 * GMO対応決済
 */

@media (max-width: 359px) {
	#page02 .kessaiCredit {
		padding-left: 4px;
		padding-right: 4px;
	}
}

ul#idPaymentInfo {
	padding-left: 0;
}
	ul#idPaymentInfo .validateError {
		background-color: #fcc;
	}
	ul#idPaymentInfo .validateErrorMsg {
		display: none;
		color: #f00;
	}
		ul#idPaymentInfo .validateErrorMsg.visibleErrorMsg {
			display: block;
		}
			ul#idPaymentInfo span.validateErrorMsg.visibleErrorMsg {
				display: inline;
			}

	ul#idPaymentInfo > li {
		border-top: dashed 1px #888;
		list-style-type: none;
	}
		ul#idPaymentInfo > li:first-child {
			border-top: none;
		}
		ul#idPaymentInfo > li > label {
			font-weight: normal;
		}
	ul#idPaymentInfo .subPayment {
		margin-left: 4em;
		display: none;
	}
		@media (max-width: 767px) {
			ul#idPaymentInfo .subPayment {
				margin-left: 0;
			}
		}
		ul#idPaymentInfo .subPayment.paymentCredit {
		}
			ul#idPaymentInfo .subPayment.paymentCredit label {
				display: inline-block;
				width: 10em;
			}
			@media (max-width: 767px) {
				ul#idPaymentInfo .subPayment.paymentCredit label {
					width: 9em;
				}
			}

			@media (max-width: 400px) {
				ul#idPaymentInfo .subPayment.paymentCredit label {
					width: 9.5em;
				}
				ul#idPaymentInfo .subPayment.paymentCredit label.sp {
					width: 5.2em;
					white-space: nowrap;
				}
			}

			ul#idPaymentInfo .subPayment.paymentCredit > div:nth-child(2),
			ul#idPaymentInfo .subPayment.paymentCredit > div:nth-child(3),
			ul#idPaymentInfo .subPayment.paymentCredit > div:nth-child(4) {
				margin-bottom: 5px
			}

			ul#idPaymentInfo .subPayment.paymentCredit input[type="text"] {
				width: 3.5em;
			}
				@media (max-width: 359px) {
					ul#idPaymentInfo .subPayment.paymentCredit input[type="text"] {
						width: 3em;
						padding-left: 2px;
						padding-right: 2px;
					}
				}

				ul#idPaymentInfo .subPayment.paymentCredit input[type="text"][name="creditTel"] {
					width: 8em;
				}
		ul#idPaymentInfo .subPayment.paymentConvini {
		}
			ul#idPaymentInfo .subPayment.paymentConvini ul.selectConvini {
				width: 100%;
				max-width: 610px;
				padding: 0;
			}
			ul#idPaymentInfo .subPayment.paymentConvini ul.selectConvini > li {
				display: inline-block;
				width: 300px;
				margin-bottom: 10px;
			}
				@media (max-width: 767px) {
					ul#idPaymentInfo .subPayment.paymentConvini ul.selectConvini > li {
						width: auto;
					}
				}
				ul#idPaymentInfo .subPayment.paymentConvini ul.selectConvini > li img {
					height: 32px;
					vertical-align: top;
					margin-right: 4px;
				}
				ul#idPaymentInfo .subPayment.paymentConvini input[type="text"][name="conviniTel"] {
					width: 8em;
				}

/*
 * 決済方法確認
 */
.gmoDialog {
	display: none;
	position: fixed;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.1);
	z-index: 9;
}
	.gmoDialog.open {
		display: block;
	}
	.gmoDialog .gmoDialogBox {
		position: fixed;
		border-radius: 2px;
		border: solid 1px #ccc;
		background-color: #fff;
		width: 400px;
		min-height: 140px;
		left: 50%;
		bottom: 100px;
		margin-left: -200px;
		padding-bottom: 30px;
	}
		@media (max-width: 767px) {
			.gmoDialog .gmoDialogBox {
				width: 360px;
				margin-left: -180px;
			}
		}
		#gmoError.gmoDialog .gmoDialogBox {
			width: 500px;
			margin-left: -250px;
		}
			@media (max-width: 767px) {
				#gmoError.gmoDialog .gmoDialogBox {
					width: 360px;
					margin-left: -180px;
				}
			}
		.gmoDialog .gmoDialogBox h3 {
			margin: 4px;
			border-radius: 2px 2px 0 0;
			background-color: #ccc;
			padding: 2px;
		}
		.gmoDialog .gmoDialogBox .message {
			margin: 4px;
			padding: 2px;
		}
			#kagoEntryRun.gmoDialog .gmoDialogBox .message,
			#gmoRun.gmoDialog .gmoDialogBox .message { 
				margin-top: 40px;
				text-align: center;
			}
		.gmoDialog .gmoDialogBox .buttons {
			position: absolute;
			bottom: 0;
			left: 0;
			width: 100%;
			text-align: center;
			margin: 4px;
		}

/*
 * プロフィール入力
 */
#profile {
	
}
	#profile table th {
		width: 200px;
	}
	#profile .description.caution {
		color: #f00;
	}

/*
 * マイページ
 */
#mypage {
}
	#mypage_detail .ttlhead h2,
	#mypage .ttlhead h2 {
		margin: 0;
		position: relative;
	}
		#mypage_detail .ttlhead h2 a,
		#mypage .ttlhead h2 a {
			position: absolute;
			right: 0;
			bottom: 20px;
			width: 102px;
		}
#mypage_detail table.entrytable caption {
	font-weight: bold;
	color:#000;
}
#mypage_detail table.entrytable th {
	font-weight: normal;
}

/*
 * ログイン
 */
#login {
	padding-top: 40px;
}

.cssPasswordGroup input,
#idPasswordGroup input {
	padding-right: 32px;
}
.cssPasswordGroup .showctrl,
#idPasswordGroup .showctrl {
    display: block;
	background-image: url('../images/icn_pw_close.png');
    background-position: center;
    background-size: contain;
	background-repeat: no-repeat;
	width: 20px;
	height: 20px;
	position: absolute;
    right: 6px;
    z-index: 9;
    top: 50%;
    margin-top: -10px;
	cursor: pointer
}
.cssPasswordGroup input[type="text"] + .showctrl,
#idPasswordGroup input[type="text"] + .showctrl {
    background-image: url('../images/icn_pw_open.png');
}

/*
 * ログアウト
 */
#logout {
	padding-top: 40px;
}

/*
 * パスワード忘れ
 */
#loadpassword {
	padding-top: 40px;
}

/*
 * パスワードの再設定
 */
#resetpassword {
	padding-top: 40px;
}

/*
 * ユーザ登録
 */
#register {
}
	#register table.tblRegister th {
		width: 160px;
	}

table.header_bg tr th {
	background-color: #faf2cc;
}

/*
 * チーム編集
 */
#editTeam {
	
}
	#editTeam .cautionbg {
		background-color: rgba(255, 0, 128, 0.1);
	}
	@media screen and (max-width: 400px) {
		#editTeam .inputcaution.label-danger {
			display: block;
			white-space: normal;
			text-align: left;
		}
	}

/*
 * フッター
 */
footer {
	font-size: 10px;
	text-align: right;
}

/*
 * 領収書
 */
#mypage_detail_receipt {
	font-size: 12px;
	width: 560px;
	padding-top: 60px;
	padding-bottom: 8px;
}
#mypage_detail_receipt .ctrlheader {
	position: fixed;
	z-index: 9;
	left: 0;
	top: 0;
	width: 100vw;
	padding: 8px 32px;
	background-color: #eee;
	text-align: right;
}
#mypage_detail_receipt .ctrlheader button {
	margin-left: 3em;
}
#mypage_detail_receipt .receipt_header {
	font-size: 10px;
	display: flex;
}
#mypage_detail_receipt .receipt_header .one {
	width: 50%;
	text-align: left;
	box-sizing: border-box;
}
#mypage_detail_receipt .receipt_header .one p {
	line-height: 1.2;
	margin: 0;
}
#mypage_detail_receipt .receipt_header .one:last-child > div {
	position: relative;
	margin-left: auto;
	margin-right: 8px;
	width: 172px;
	white-space: nowrap;
}
#mypage_detail_receipt .receipt_header .one:last-child .ineimark {
	position: absolute;
	left: 112px;
	bottom: 12px;
}
#mypage_detail_receipt .receipt_header .one:last-child .ineimark img {
	width: 34px;
	height: 34px;
	vertical-align: bottom;
}
#mypage_detail_receipt .receipt_title {
	font-size: 28px;
	padding: 2em 0 1.5em;
	text-align: center;
}
#mypage_detail_receipt .receipt_body {
	padding: 0 0 1.5em;
	position: relative;
}
#mypage_detail_receipt .receipt_body .carbon {
	position: absolute;
	color: #aaa;
	font-size: 40px;
	line-height: 60px;
	padding: 0 0.5em;
	border: solid 4px #aaa;
	border-radius: 2px;
	z-index: 1;
	right: 0;
	top: 0;
}
#mypage_detail_receipt .receipt_bodytbl {
	margin-bottom: 80px;
	position: relative;
	z-index: 9;
}
#mypage_detail_receipt .receipt_bodytbl table {
	table-layout: fixed;
	border-collapse: collapse;
	border-bottom: solid 1px #888;
	width: 100%;
}
#mypage_detail_receipt .receipt_bodytbl th {
	padding: 8px 8px 8px 16px;
	box-sizing: border-box;
	font-size: 14px;
	font-weight: normal;
	text-align: left;
	width: 128px;
	border-bottom: solid 1px #888;
}
#mypage_detail_receipt .receipt_bodytbl th.vtop {
	vertical-align: top;
}
#mypage_detail_receipt .receipt_bodytbl td {
	padding: 8px;
	font-size: 16px;
	line-height: 1.4;
	border-bottom: solid 1px #888;
}


#mypage_detail_receipt .receipt_dtltbl table {
	table-layout: fixed;
	border-collapse: collapse;
	border-bottom: solid 1px #888;
	width: 100%;
}
#mypage_detail_receipt .receipt_dtltbl table caption {
	text-align: center;
	font-size: 16px;
}
#mypage_detail_receipt .receipt_dtltbl th {
	padding: 8px;
	box-sizing: border-box;
	font-size: 14px;
	font-weight: normal;
	text-align: left;
	text-align: center;
	width: 200px;
	border-bottom: solid 1px #888;
}
#mypage_detail_receipt .receipt_dtltbl td {
	box-sizing: border-box;
	padding: 8px 48px 8px 8px;
	font-size: 14px;
	text-align: right;
	line-height: 1.4;
	border-bottom: solid 1px #888;
	border-left: solid 1px #888;
}
#mypage_detail_receipt .receipt_dtltbl .kinlabel {
	font-size: 12px;
}

/*
 * .input-group-addon が長い場合、スマフォで入力欄が短くなってしまう対処
 */
@media (max-width: 400px) {
	.input-group-addon.longtext {
		display: inline;
		background-color: transparent;
		border: none;
		font-size: inherit;
		padding-left: 0;
		padding-right: 0
	}
}

/*
 * 家族・友人登録
 */
#family .entryOtherBlock {
	padding: 8px 0;
}
#family .btnFamilyCancel {
	margin-right: 4em;
}
#family .btnFamilyRegist {
	width: 5em;
	box-sizing: content-box;
}

/*
 * 規約大会ID471
 */
#kiyaku_471 .osorakan-rule{
	list-style-type: decimal;
	padding: 0 0 0 1em;
	list-style-position: outside;
	margin: 0 0 0 1em;
}
#kiyaku_471 .osorakan-rule li{
	margin: 0 0 1em 0;
}
#kiyaku_471 .osorakan-rule li span{
	margin: 0.5em 0 0 0;
	display: block;
}
