@charset "utf-8";
/*!
 * member CSS
 * ---------------------------------------------
 * 下層ページのcss
 *
 */


/*===================================
	element
=====================================*/
/*  sprite
---------------------------------*/

.mypageMenu .icon a:before,
.addCart:before {
	background-image: url(../images/base/sprite.png);
	background-repeat: no-repeat;
}

/*===================================
	共通
=====================================*/

.member .content {
	overflow: hidden;
	margin-bottom: 80px;
}
.content p {
	line-height: 1.6;
}
.btnList {
	width: 540px;
	margin: auto;
	text-align: center;
}
.btnList li {
	float: left;
	margin: 0 10px;
}
.btnList li.execute {
	float: right;
}

/*===================================
	login
=====================================*/

.loginSec {
	float: left;
	width: 570px;
	margin-top: 10px;
}
.loginSec:nth-last-of-type(1) {
	float: right;
}
.loginSec h2 {
	margin-bottom: 20px;
	font-size: 24px;
	text-align: center;
}
.loginForm,.newMemberRegist {
	height: 448px;
	background: #eee;
}
.loginForm {
	padding: 40px 30px 0;
}
.newMemberRegist {
	padding: 60px 35px 0;
}
.loginForm {
	font-size: 14px;
}
.loginForm dl {
	margin: 30px 0 32px;
}
.loginForm dd {
	margin-bottom: 20px;
	letter-spacing: -.40em;
}
.loginForm label,.loginForm input {
	display: inline-block;
	vertical-align: middle;
	letter-spacing: normal;
}
.loginForm label {
	width: 155px;
	padding-left: 35px;
	line-height: 1.2;
}
.loginForm dd:nth-last-of-type(1) label {
	padding-left: 15px;
	text-align: center;
}
.loginForm label br {
	display: inline-block;
}
.loginForm dl dd input {
	width: 309px;
	height: 45px;
	line-height: 45px;
}
.loginForm .inputError:after {
	left: 160px;
	margin-top: 2px;
}
.loginForm .execute {
	margin: 0 auto 30px;
	font-size: 16px;
	text-align: center;
}
.loginForm .forgotPW a {
	display: block;
	color: #e90f0f;
	text-align: center;
}
.newMemberRegist {
	text-align: center;
}

.newMemberRegist h3 {
	margin-bottom: 35px;
	font-size: 18px;

}
.newMemberRegist h3 + p {
	margin-bottom: 2.5em;
	font-size: 14px;
	text-align: left;
}

/*===================================
	新規会員登録
=====================================*/

.newRegistSec form {
	margin-top: 2em;
}

/*  会員規約
---------------------------------*/

.agreement > p,
.agreementCont {
	font-size: 15px;
}
.agreementCont {
	margin-bottom: 3em;
	border-radius: 5px;
	border: solid 1px #ccc;
}
.agreementCont div {
	overflow: scroll;
	height: 630px;
	margin: 25px 0 30px;
	padding: 0 30px;
	line-height: 1.6;
}
.agreementCont + p,.agreementCont + p + p {
	margin-bottom: 1em;
	text-align: center;
}
.agreement .btnList {
	margin-top: 4em;
}

/*  登録完了
---------------------------------*/

.done {
	margin: 160px auto;
	text-align: center;
}
.done .move {
	margin-top: 4em;
}

/*===================================
	マイページ トップ
=====================================*/

.mypage .contHead {
	margin-bottom: 70px;
}
.mypageMenu {
	font-size: 18px;
	font-weight: 600;
}
.mypageMenu ul {
	margin-right: -30px;
}
.mypageMenu li {
	display: inline-block;
	vertical-align: top;
	margin: 0 30px 30px 0;
	text-align: center;
}
.mypageMenu a {
	display: block;
	width: 370px;
	padding: 20px 0;
	border: solid 1px #dedede;
	background: #eee;
}
.mypageMenu .icon a {
	height: 200px;
	padding: 35px 0 0;
}
.mypageMenu .icon a:before {
	display: block;
	width: 77px;
	height: 77px;
	margin: 0 auto 22px;
	border-radius: 50%;
	border: solid 1px #e90f0f;
}
.mypageMenu .n1 a:before {
	background-position: -1000px 0;
}
.mypageMenu .n2 a:before {
	background-position: -1100px 0;
}
.mypageMenu .n3 a:before {
	background-position: -1200px 0;
}
.mypageMenu a:hover {
	opacity: .7;
}
.pointBlock {
	letter-spacing: -.40em;
	margin-bottom: 44px;
	padding: 25px 20px 25px 46px;
	border: solid 3px #dedede;
	color: #666;
}
.pointBlock dt,.pointBlock dd {
	display: inline-block;
	vertical-align: middle;
	letter-spacing: normal;
}
.pointBlock dt {
	width: 190px;
}
.pointBlock dd b {
	color: #000;
	font-size: 22px;
}
.expirationDate {
	display: inline-block;
	vertical-align: middle;
	margin-top: -4px;
	padding-left: 2.5em;
	color: #eb2e3b;
	font-size: 13px;
}

/*===================================
	マイページ 会員情報の変更・確認
=====================================*/

.memberInfo form {
	margin-top: 2em;
}

/*===================================
	マイページ あとで見るリスト
=====================================*/

.seeLaterList {
	line-height: 1.6;
}
.seeLaterList > li {
	overflow: hidden;
	padding: 15px 0;
	border-bottom: solid 1px #ccc;
}
.seeLaterList .item,
.seeLaterList figure {
	float: left;
}
.seeLaterList .item {
	width: 880px;
}
.seeLaterList .ope {
	float: right;
	width: 270px;
	font-size: 15px;
}
.seeLaterList figure {
	width: 150px;
	height: 150px;
}
.seeLaterList .item span,.seeLaterList .item h3,.seeLaterList .item ul,.seeLaterList .item p {
	margin-left: 200px;
}
.seeLaterList .item span,
.seeLaterList .item p {
	display: block;
	font-size: 14px;
}
.seeLaterList .item h3 {
	font-size: 18px;
}
.seeLaterList .item ul {
	margin-bottom: 1em;
	font-size: 15px;
}
.seeLaterList .item p b {
	font-size: 24px;
}
.seeLaterList .date,
.seeLaterList .dele {
	display: block;
	font-size: 15px;
}
.seeLaterList a.dele {
	text-decoration: underline;
}
.seeLaterList a.dele:hover {
	text-decoration: none;
}
.addCart {
	position: relative;
	width: 270px;
	height: 60px;
	margin: 1em 0;
}
.addCart:before {
	display: block;
	position: absolute;
	top: 15px;
	left: 55px;
	width: 27px;
	height: 30px;
	background-position: -1000px -100px;
}
.addCart input {
	width: 270px;
	height: 60px;
	line-height: 60px;
	padding-left: 38px;
	background: #e90f0f;
	color: #fff;
	font-size: 18px;
	text-align: center;
	font-weight: 600;
}
.opeList {
	padding: 3.2em 0;
	text-align: center;
	font-size: 15px;
}
.opeList li {
	display: inline-block;
	margin: 0 1em;
}
.opeList li a {
	text-decoration: underline;
}
.opeList li a:hover {
	text-decoration: none;
}

/*===================================
	マイページ 購入履歴一覧
=====================================*/

.tbl__history {
	border-left: solid 1px #e0e0e0;
	text-align: center;
	line-height: 1.6;
}
.tbl__history th {
	background: #eee;
	font-size: 18px;
}
.tbl__history th,.tbl__history td {
	border-bottom: solid 1px #e0e0e0;
	border-right: solid 1px #e0e0e0;
	vertical-align: middle;
}
.tbl__history th {
	padding: 10px 5px;
}
.tbl__history td {
	padding: 20px 5px;
}
.tbl__history td span,.tbl__history td b {
	display: block;
}
.tbl__history .date {
	font-size: 15px;
}
.tbl__history td.item {
	padding: 0;
	text-align: left;
}
.tbl__history.lists td.item {
	max-width: 600px;
}
.tbl__history .item div {
	overflow: hidden;
	padding: 10px 20px;
	border-bottom: solid 1px #e0e0e0;
}
.tbl__history .item div:nth-last-of-type(1) {
	border-bottom: none;
}
.tbl__history .item figure {
	float: left;
	width: 100px;
	height: 100px;
}
.tbl__history .item span,.tbl__history .item b {
	display: block;
	margin-left: 116px;
}
.orderDetailLink a {
	color: #e90f0f;
	text-decoration: underline;
}
.orderDetailLink a span {
	display: none;
}
.orderDetailLink a:hover {
	text-decoration: none;
}

/*  詳細
---------------------------------*/


.tbl__history.detail td {
	text-align: left;
	padding: 20px 25px;
}
.tbl__history.detail td.date {
	width: 10em;
	padding: 20px 5px;
	text-align: center;
}
.tbl__history.detail .payment {
	width: 200px;
}
.tbl__history.detail .payment img {
	display: inline-block;
	vertical-align: middle;
	width: 47px;
	margin: -2px 5px 0 0;
}
.tbl__history.detail .price {
	width: 370px;
}
.tbl__history.detail td.item {
	padding: 10px 25px;
	border-right: none;
}
.tbl__history.detail td.purchase {
	padding: 10px 38px;
	text-align: right;
}
.tbl__history.detail td.purchase a {
	display: inline-block;
	width: 180px;
	height: 60px;
	line-height: 60px;
	background: #e90f0f;
	color: #fff;
	text-align: center;
	/*font-weight: 600;*/
	font-weight: 500;
}

/*===================================
	マイページ delete
=====================================*/

.delete {
	margin-top: -10px;
}
.delete .definList {
	margin: 2em 0 55px;
}


@media screen and (max-width: 752px) {

	/*===================================
		共通
	=====================================*/

	.btnList {
		width: auto;
	}
	.btnList li{
		float: none;
		display: block;
		margin: 0 auto 40px;
	}
	.btnList li.execute {
		float: none;
	}

	/*===================================
		login
	=====================================*/

	.loginSec {
		float: none;
		width: auto;
		margin-bottom: 60px;
	}
	.loginSec:nth-last-of-type(1) {
		float: none;
		margin-bottom: 0;
	}
	.loginSec h2 {
		margin-bottom: 35px;
		font-size: 28px;
	}
	.loginForm,.newMemberRegist {
		height: auto;
	}
	.loginForm {
		padding: 40px 40px 50px;
	}
	.newMemberRegist {
		padding: 60px 40px 80px;
	}
	.loginForm {
		font-size: 24px;
	}
	.loginForm dl {
		margin: 30px 0 42px;
	}
	.loginForm dd {
		margin-bottom: 35px;
	}
	.loginForm label,.loginForm input {
		display: block;
	}
	.loginForm label {
		width: auto;
		margin-bottom: 13px;
		padding-left: 0;
		font-size: 20px;
	}
	.loginForm dd:nth-last-of-type(1) label {
		padding-left: 0;
		text-align: left;
	}
	.loginForm label br {
		display: none;
	}
	.loginForm dl dd input {
		width: 100%;
		height: 70px;
		line-height: 70px;
	}
	.loginForm .execute {
		margin-bottom: 36px;
		font-size: 32px;
	}
	.loginForm .forgotPW a {
		font-size: 28px;
	}
	.newMemberRegist li:nth-of-type(1) {
		margin-bottom: 55px;
		padding-bottom: 68px;
	}
	.newMemberRegist h3 {
		margin-bottom: 38px;
		font-size: 28px;
	}
	.newMemberRegist h3 + p {
		font-size: 24px;
	}

	/*===================================
		新規会員登録
	=====================================*/
	/*  会員規約
	---------------------------------*/

	.agreement > p,
	.agreementCont {
		font-size: 24px;
	}
	.agreement input[type="checkbox"] {
		transform:scale(1.5);
		-webkit-transform:scale(1.5);
		-moz-transform:scale(1.5);
	}

	/*===================================
		マイページ トップ
	=====================================*/

	.mypageMenu {
		font-size: 28px;
	}
	.mypageMenu ul {
		margin-right: -20px;
	}
	.mypageMenu li {
		display: block;
		float: left;
		margin: 0 20px 20px 0;
	}
	.mypageMenu a {
		width: 345px;
		padding: 30px 0;
	}
	.pointBlock {
		margin-bottom: 60px;
		padding: 30px;
		border-width: 6px;
	}
	.pointBlock dt,.pointBlock dd {
		display: block;
		text-align: center;
	}
	.pointBlock dt {
		width: auto;
		margin-bottom: 1em;
	}
	.pointBlock dd b {
		padding: 0 0.3em 0 0;
		font-size: 34px;
	}
	.expirationDate {
		font-size: 20px;
	}

	/*===================================
		マイページ あとで見るリスト
	=====================================*/

	.seeLaterList > li {
		padding: 30px 0;
	}
	.seeLaterList .item,
	.seeLaterList .ope{
		float: none;
	}
	.seeLaterList .item {
		width: auto;
	}
	.seeLaterList .ope {
		width: auto;
		margin-left: 183px;
	}
	.seeLaterList figure {
		width: 164px;
		height: 164px;
	}
	.seeLaterList .item span,.seeLaterList .item h3,.seeLaterList .item ul,.seeLaterList .item p {
		margin-left: 183px;
	}
	.seeLaterList .item span {
		font-size: 24px;
	}
	.seeLaterList .item h3 {
		font-size: 32px;
	}
	.seeLaterList .item ul {
		font-size: 24px;
	}
	.seeLaterList .item p {
		margin-bottom: 1em;
		font-size: 18px;
	}
	.seeLaterList .item p b {
		font-size: 32px;
	}
	.seeLaterList .date {
		font-size: 24px;
	}
	.seeLaterList .dele {
		font-size: 28px;
		text-align: right;
	}
	.addCart {
		width: 528px;
		height: 90px;
		margin: 1em 0;
	}
	.addCart:before {
		top: 20px;
		left: 120px;
		width: 47px;
		height: 50px;
		background-position: -1000px -200px;
	}
	.addCart input {
		width: 528px;
		height: 90px;
		line-height: 90px;
		padding-left: 66px;
		font-size: 32px;
	}
	.opeList {
		padding: 1.2em 0;
		font-size: 28px;
	}

	/*===================================
		マイページ 購入履歴一覧
	=====================================*/

	.tbl__history th,
	.tbl__history.lists .payment,
	.tbl__history.lists .shipment{
		display: none;
	}
	.tbl__history tr,.tbl__history td {
		display: block;
	}
	.tbl__history,
	.tbl__history td {
		border: none;
	}
	.tbl__history tbody tr {
		position: relative;
	}
	.tbl__history.lists tbody tr:before {
		display: block;
		width: 750px;
		height: 60px;
		margin: 0 -20px;
		border-top: solid 1px #e0e0e0;
		border-bottom: solid 1px #e0e0e0;
		background: #eee;
	}
	.tbl__history.lists .date,.tbl__history.lists .price {
		position: absolute;
		line-height: 58px;
		top: 0;
	}
	.tbl__history.lists .date {
		left: 20px;
		font-size: 24px;
	}
	.tbl__history.lists .price {
		left: 305px;
	}
	.tbl__history.lists .date:before,
	.tbl__history.lists .price:before{
		display: inline-block;
		content: attr(aria-label);
		font-weight: bold;
		font-size: 24px;
	}
	.tbl__history td {
		padding: 0px;
	}
	.tbl__history .item div {
		padding: 20px 0;
		font-size: 28px;
	}
	.tbl__history.lists .item div:nth-last-of-type(1) {
		border-bottom: solid 1px #e0e0e0;
	}
	.tbl__history .item figure {
		width: 164px;
		height: 164px;
		margin-right: 20px;
	}
	.tbl__history .item div span,.tbl__history .item div b {
		margin-left: 184px;
	}
	.orderDetailLink a {
		display: block;
		width: 588px;
		height: 100px;
		line-height: 100px;
		margin: 32px auto 43px;
		border: solid 2px #e0e0e0;
		text-decoration: none;
		font-size: 28px;
		/*font-weight: 600;*/
		font-weight: 500;
	}
	.orderDetailLink a span {
		display: inline;
	}
	.orderDetailLink a:after {
		display: inline-block;
		vertical-align: middle;
		border-bottom: solid 2px #ec0410;
		border-left: solid 2px #ec0410;
		transform: rotate(225deg);
		width: 16px;
		height: 16px;
		margin: -4px 0 0 10px;
	}

	/*  詳細
	---------------------------------*/

	.tbl__history.detail {
		margin: 0 -20px;
	}
	.tbl__history.detail td:before {
		display: block;
		width: 750px;
		height: 60px;
		line-height: 60px;
		margin: 0 -20px 20px;
		padding: 0 20px;
		border-top: solid 1px #e0e0e0;
		border-bottom: solid 1px #e0e0e0;
		background: #eee;
		content: attr(aria-label);
		/*font-weight: 600;*/
		font-weight: 500;
		font-size: 24px;
	}
	.tbl__history.detail td {
		padding: 0 20px 30px;
		font-size: 28px;
	}
	.tbl__history.detail td.date,
	.tbl__history.detail .payment,
	.tbl__history.detail .price {
		width: auto;
	}
	.tbl__history.detail td.date {
		padding: 0 20px 30px;
		text-align: left;
		font-size: 28px;
	}
	.tbl__history.detail .payment img {
		width: auto;
	}
	.tbl__history.detail td.item:before,
	.tbl__history.detail td.btn:before{
		display: none;
	}
	.tbl__history.detail td.item {
		width: 710px;
		margin: 0 20px;
		padding: 20px 0;
		border-top: solid 1px #ccc;
	}
	.tbl__history.detail .item div {
		overflow: visible;
	}
	.tbl__history.detail td.purchase {
		margin: -10px 0 50px 203px;
		padding: 0;
		text-align: left;
	}
	.tbl__history.detail td.purchase a {
		width: 528px;
		height: 90px;
		line-height: 90px;
		background: #e90f0f;
		font-size: 32px;
	}

	/*===================================
		マイページ delete
	=====================================*/

	.delete {
		margin-top: 0;
	}
	.delete .definList {
		margin-left: -20px;
		margin-right: -20px;
	}
}
