@charset "utf-8";

/* base
================================== */
body { height: auto; }
.single .section {
	width: 800px;
	background: #fff;
	padding: 60px 60px 60px;
	margin: 0 auto;
}
.section.mypage .menuList li { padding: 20px 0; }
.section.mypage .menuList .txt { font-size: 12px; line-height: 1.7em; padding: 13px 0 0 270px; }
.section.mypage .menuList .btn { margin-bottom: 0; }
.section.mypage .menuList .btn .main { font-size: 14px; margin: 0; }
.section.mypage .sectionTit,
.section.regist .sectionTit,
.single .sectionTit {
	font-family: sans-serif;
	text-transform: none;
	text-align: center;
	border-bottom: none;
	padding: 30px 0 0;
	margin: 0 0 30px;

	display: none;
}
.blockTit {
	background: transparent;
	color: inherit;
	font-size: 24px;
	font-weight: normal;
	margin: 30px 0;
}

/* form
================================== */
.formList {
	border-top: 1px solid #ccc;
	margin: 30px 0;
}
.formList dt {
	width: 27%;
	clear: left;
	float: left;
	font-weight: bold;
	text-align: right;
	padding: 30px 0 0;
}
.formList dd {
	border-bottom: 1px solid #ccc;
	padding: 27px 0 27px 30%;
}
.formList.confirm dd { min-height: 80px; }

.formList input[type="text"],
.formList input[type="password"],
.formList input[type="email"],
.formList input[type="tel"],
.formList input[type="number"]{
	display: inline-block;
	width: 100%;
	font-size: 16px;
	border-radius: 4px;
	border: 1px solid #666;
	padding: 7px;
}
.formList input[type="checkbox"],
.formList input[type="radio"] {
	margin: 3px 5px 0 0;
}
.formList select {
	background: #fff;
	line-height: 1em;
	border: 1px solid #666;
	padding: 5px 10px;
	margin: 0 5px 0 0;
}
.formList textarea {
	width: 100%;
	border: 1px solid #666;
	padding: 3px;
}
.formList label {
	display: inline-block;
	padding: 3px;
	margin: 0 10px 0 0;
}
.formList.confirm dd { padding: 30px 0 30px 30%; }
.formList.confirm input,
.formList.confirm textarea {
	border: none;
}

/* お問い合わせ */
.formArea .formList {
	background: transparent;
	border-radius: 0;
	padding: 0;
	margin: 30px 0;
}
.formArea .formList dt {
	width: 36%;
	padding: 30px 0 0;
	font-size: 13px;
	line-height: 30px;
}
.formArea .formList dd {
	padding: 30px 0 27px 39%;
	margin: 0;
}

/*
================================== */
/* supportList */
.section .supportList {
	text-align: center;
}
/* mypage */
.statusList {
	border: 1px solid #666;
	border-radius: 6px;
	padding: 0 20px;
	margin: 0 0 40px;
}
.statusList dt {
	width: 30%;
	clear: left;
	float: left;
	font-weight: bold;
	text-align: right;
	padding: 10px 0;
}
.statusList dd {
	border-bottom: 1px solid #666;
	padding: 10px 0 10px 33%;
}
.statusList dd:last-child { border: none; }

/* 継続
================================== */
.possiblePayment{ background: #ffe3e3; padding: 5px;}
.possiblePayment h3{ margin: 20px 0; }

/* 支払い
================================== */
.paymentIndex.single .sectionTit{ display: block; }

.paymentIndex.single h2.sectionTit{
	background: transparent;
	color: inherit;
	font-size: 24px;
	font-weight: normal;
}
.paymentIndex.single h3.blockTit{
	text-align: left;
	font-size: 18px;
	border-bottom: 1px solid #333;
	padding-left: 0;
	margin-bottom: 15px;
}
.paymentIndex.single .btn{ margin-top: 20px; }
.paymentIndex.single .rule{ color: #ea0f36;}
.mailAddress,.qrCode{ background: #efefef; margin-bottom: 20px; padding: 20px; }
.mailAddress dt,.qrCode dt{font-weight: bold; margin-bottom: 10px;}
.mailAddress dd .subTxt{ margin-top: 10px; }
.mailAddress dd input[type="text"]{
	display: inline-block;
	width: 350px;
	border-radius: 2px;
	border: 1px solid #ccc;
	padding: 8px;
}
.mailAddress dd input[type="text"]+.btn{
	display: inline-block;
	text-align: left;
	margin: 0;
}
.mailAddress dd input[type="text"]+ .btn .sub{
	min-width: auto;
	font-size: 14px;
	padding: 7px 30px;
	margin: 0 0 0 5px;
}
.qrCode dd .qr{ float: left; width: 100px; margin-right: 20px; }
.qrCode dd .qr + .txt{ padding-top: 36px; }
.mb10{ margin-bottom: 10px !important; }
.mb20{ margin-bottom: 20px !important; }
.mb30{ margin-bottom: 30px !important; }

/* loading
------------------------------ */
.loading {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.5);
  z-index: 99;
}
.loading span,
.loading span:after {
  border-radius: 50%;
  width: 5em;
  height: 5em;
}
.loading span {
  display: block;
  font-size: 10px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -2.5em 0 0 -2.5em;
  text-indent: -9999em;
  border-top: 0.75em solid rgba(0, 0, 0, 0.15);
  border-right: 0.75em solid rgba(0, 0, 0, 0.15);
  border-bottom: 0.75em solid rgba(0, 0, 0, 0.15);
  border-left: .75em solid #222;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation: loading 1.1s infinite linear;
  animation: loading 1.1s infinite linear;
}
@-webkit-keyframes loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
@keyframes loading {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
/*クレカ期限切れアラート*/
.section--card_expire_alert{
	overflow: hidden;
    margin-bottom: 0;
}