@charset "utf-8";
/* ===================================================================
	01 基本設定
	02 メール認証登録フォーム
	03 ボタン
	04 ご利用規約
	05 登録フォーム
	06 入力内容確認
	07 登録完了
	08 efo設定
	09 登録完了(メンバーズカード登録フロー)
=================================================================== */
/* 01 基本設定
--------------------------------------------------------------------*/
#contents.members {
	width: 1080px;
}
.members .step {
	text-align: center;
	margin-bottom: 30px;
}

.section_member {
	margin-bottom: 40px;

}
.section_member_title {
	color: #000;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 20px;
}
.lead_text {
	color: #000;
	font-size: 12px;
	line-height: 1.8;
	margin-bottom: 10px;
}

/* 02 メール認証登録フォーム
--------------------------------------------------------------------*/

.mail_entry {
	margin-bottom: 40px;
}
.mail_entry:last-child {
	margin-bottom: 0;
}
.mail_entry_title {
	color:#000;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1.4;
	margin:0 0 15px;
}
.mail_entry_subtitle {
	color: #000;
	font-size: 1.4rem;
	line-height: 1.4;
	margin:0 0 20px;
}
.mail_entry_text {
	font-size: 1.2rem;
	line-height: 1.8;
	margin-bottom: 20px;
}
.mail_entry_link {
	font-size: 1.2rem;
	text-decoration: underline;
}
.mail_entry_text_help {
	display: block;
	font-size: 1.2rem;
	line-height: 1.4;
	margin-top:10px;
}
.mail_agreement {
	padding: 30px 0;
}
.mail_agreement_text {
	font-size: 1.2rem;
	line-height: 1.6;
	text-align: center;
	margin-bottom: 20px;
}
.mail_agreement_check {
	text-align: center;
}
.mail_entry .input_clear_button.on {
	right: 30px;
}

/* 04 ご利用規約
--------------------------------------------------------------------*/

.members .check_text {
	display: block;
	font-size: 1.2rem;
	text-align: center;
	margin: 20px 0;
}
.members .agree_box {
	width: 820px;
	height: 280px;
	margin: 0 auto;
	padding: 20px;
	border: 1px #d8d8d8 solid;
	background-color: #f1f1f1;
	overflow-y: auto;
}

.members .agree_box .section {
	line-height: 23px;
}
.members .agree_box section p {
	line-height: 23px;
	margin:0 0 35px 0;
}
.members .agree_box section ul {
	margin:0 0 35px 0;
}
.members .agree_box section .subtitle{
	margin:0 0 10px 0;
	border-bottom:#95989a solid 1px;
	padding-bottom:6px;
}
.members .agree_box section  ul li {
	font-size:1.3rem;
	line-height: 23px;
	margin-bottom:5px;
  text-indent: -1em;
  margin-left: 1em;
}
.agree_check_area {
	text-align: center;
	padding: 20px 0;
}

.members .section_agree {
	line-height: 1.8;
}

.agreement_text {
	color: #000;
	font-size: 1.4rem;
	line-height: 1.4;
	margin-bottom: 40px;
}
.agreement_section {
	margin-bottom: 40px;
}
.agreement_section:last-child {
	margin-bottom: 0;
}
.agreement_heading {
	color: #000;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 10px;
}
.agreement_data {}
.agreement_data + .agreement_data {
	margin-top: 30px;
}
.agreement_data_heading {
	color: #000;
	font-size: 1.6rem;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 10px;
}
.agreement_data_text {
	color: #000;
	font-size: 1.4rem;
	line-height: 1.6;
	padding-left: 12px;
	counter-reset: decimal decimal-bracket;
}
.agreement_data_text a {
	font-size: 1.4rem;
	text-decoration: underline;
}
.agreement_data_explain {
	font-size: 1.4rem;
	line-height: 1.4;
	margin-bottom: 5px;
}
.agreement_data_list {
	display: table;
	font-size: 1.4rem;
	counter-reset: decimal decimal-bracket decimal-bracket1;
}
.agreement_data_item {
	display: table-row;
	line-height: 1.4;
}
.agreement_data_item.type_disc:before {
	content: "・";
	display: table-cell;
	width: 12px;
	padding-right: 4px;
	white-space: nowrap;
}
.agreement_data_item.type_decimal:before {
	counter-increment: decimal;
	content: counter(decimal) ".";
	display: table-cell;
	width: 14px;
	padding-right: 4px;
	white-space: nowrap;
}
.agreement_data_item.type1_decimal_bracket:before {
	counter-increment: decimal-bracket;
	content: counter(decimal-bracket) ")";
	display: table-cell;
	width: 14px;
	padding-right: 4px;
	white-space: nowrap;
}
.agreement_data_item.type2_decimal_bracket:before {
	counter-increment: decimal-bracket1;
	content: "(" counter(decimal-bracket1) ")";
	display: table-cell;
	width: 14px;
	padding-right: 4px;
	white-space: nowrap;
}
.agreement_data_item:after {
	content: "";
	display: block;
	margin-bottom: .2em;
}

/* 05 登録フォーム
--------------------------------------------------------------------*/
.register_form {}
.register_form_heading,
.register_form_detail {
	display: block;
	width: 100%;
}
.register_form_heading {
	background-color: #f4f4f4;
	padding: 15px 20px;
}
.register_form_detail {
	padding: 30px 20px;
}
.register_form_text_help {
	display: block;
	font-size: 1.2rem;
	margin-top: 5px;
}

.members table {
	display: block;
	margin-bottom: 20px;
	line-height: 1.8;
}
.members .conf_magazine {
	line-height: 25px;
/*	padding: 0 0 10px 30px;*/
}
.members .conf_magazine:last-child {
	margin-bottom:10px;
}
.members .favorite_store {
	padding: 0 0 10px 30px;
	margin-bottom: 40px;
}
.members .favorite_store dt {
	float: left;
	margin-right: 15px;
}
.members .favorite_store dd {
}
.members table th {

	width: 240px;
}
.members .section_member table tr {
    margin-bottom: 2.5em;
    display: block;
}
.members table td {
	position: relative;
	width: auto;
}
.members table td input {
	width: 200px;
	height: 40px;
	background: #fff;
	padding: 8px 5px;
}
.members table td input[type="email"] {
	width: 300px;
}
.members table td input[type="text"], .members table td input[type="email"], .members table td input[type="tel"], .members table td input[type="password"] {
	border: 1px solid #868686;
	margin-bottom: 5px;
}

.ex-ast {
	font-size: 14px !important;
	display: inline-block;
}
.members table td .note {
	display: block;
}

.members table td.ex {
	line-height: 15px;
	padding: 10px 0;
}
.members .section {
	border: none;
	margin-bottom: 30px;
}
.members .section p {
	font-size: 1.2rem;
	line-height: 1.8;
	margin-bottom: 10px;
}

.members .section_agree {
	border: none;
	padding: 0 20px;
	margin-bottom: 30px;
}

.sampleValue {
	color: #999 !important;
}
.members .section .agree_check {
	padding-left: 20px;
	text-align: left;
}
.members .section .agree_check h4 {
	font-weight: bold;
	margin-top: 20px;
	font-size: 14px;
	border-bottom: 1px #d6d6d6 solid;
	padding-bottom: 5px;
}
.members .section .agree_check p {
	margin-bottom: 0;
}
.required {
	display:inline-block;
	color:#ff3300;
	font-size:1.1rem;
	margin:0 0 0 5px;
}

/*#20687 Input*/
.section_member .input_clear_button.on {
	right: 30px;
}
.section_member .password_visibility_button {
	right: 25px;
}

/* クーポン */
.campeign_coupon {
	position: relative;
	margin: 2.5% 0 0;
}
.campeign_coupon ul {
	margin: 1% 0 0;
}
.campeign_coupon li {
	margin-left: 1em;
	text-align: left;
	font-size: 1.2rem;
	letter-spacing: 1px;
	line-height: 1.6;
}
.campeign_coupon li:before {
	content:"・";
	margin-left: -1em;
}
.campeign_coupon li span {
	display:block;
	font-weight:bold;
}
/* ニュース レター登録画面 */
.magazine_area,
.myshop_area {
	padding-left: 15px;
	margin-bottom: 30px;
}
.myshop_area p {
	margin-bottom: 20px;
}
.magazine_area .left {
	text-align: left !important;
}
.magazine_area .mf {
	color:#F00;
}
.members .mm_sort {
	background: url("/static/full/images/members/select_shop.jpg") no-repeat;
	background-size: 820px 85px;
	height: 85px;
	width: 820px;
	margin: 0px auto 40px auto;
}
.members .mm_sort table table {
	width: 854px;
}
.members .mm_sort table td {
	padding: 28px 0 0 55px;
	background: url("/static/full/images/common/arrow_11.gif") no-repeat;
	background-position: 10px 34px;
}
.members .mm_sort table tr td:first-child {
	padding-left: 15px;
	background: none;
}

.members .mm_sort table td .pull-down_ p {
}
.members .mm_sort table td .pull-down_ {
	position: relative;
	width: 195px;
}
.members .mm_sort table td .pull-down_end_ {
	position: relative;
	width: 235px;
}
.members .mm_sort table td .pull-down_ p a,
.members .mm_sort table td .pull-down_end_ p a {
	background: url("/static/full/images/common/btn_pulldown_black.gif") no-repeat scroll right center #F2F2F2;
	display: block;
	line-height: 36px;
	padding-left:5px;
}
.members .mm_sort table td .pull-down_ ul {
	display: none;
	position: absolute;
	background-color: #FFFFFF;
	width: 193px !important;
	border: 1px #f2f2f2 solid;
	top: 36px;
	z-index: 100;
}
.members .mm_sort table td .pull-down_end_ ul {
	display: none;
	position: absolute;
	background-color: #FFFFFF;
	width: 233px !important;
	border: 1px #f2f2f2 solid;
	top: 36px;
	z-index: 100;
}
.members .mm_sort table td .pull-down_ ul li ,
.members .mm_sort table td .pull-down_end_ ul li {
	border-top:1px #f2f2f2 solid;
	line-height: 30px;
}
.members .mm_sort table td .pull-down_ ul li:first-child ,
.members .mm_sort table td .pull-down_end_ ul l:first-childi {
	border-top:none;
}
.members .mm_sort table td .pull-down_ ul li a ,
.members .mm_sort table td .pull-down_end_ ul li a {
	display:block;
	padding-left: 5px;
}
.members .mm_sort table td .pull-down_ ul li a:hover ,
.members .mm_sort table td .pull-down_end_ ul li a:hover {
	background-color: #8ac22b;
}
.members #storeFolder2 .title-area {
	font-size: 16px;
	font-weight: bold;
	line-height: inherit;
}
.members #storeFolder2 .title-prefecture {
	font-size: 14px;
	font-weight: bold;
	padding-top: 10px;
	line-height: inherit;
}
.members #storeFolder2 .title-brand {
	font-size: 12px;
	font-weight: bold;
	padding: 5px 0;
	line-height: inherit;
}
.members .prefContainer .storeInputCol {
	padding: 0px 10px 0px 20px;
	width: 15px;
}
.members .prefContainer .storeNameCol {
	width: auto;
	line-height: 25px;
}
.members #storeFolder2 {
	width: 820px;
	margin: 0 auto;
}
.members #storeFolder2 table {
	margin-bottom: 5px;
}

.members .member-cards {
	padding-left: 30px;
	margin: 15px 0;
}
.members .member-cards p {
	margin: 10px 0;
}

/* 06 入力内容確認
--------------------------------------------------------------------*/

.members .confirmation td {
	color: #545454;
}
.members .confirmation td span {
	font-size: 13px !important;
	color: #545454 !important;
}
.members .magazine_confirm {
	padding: 0 0 20px 30px;
}

/* 07 登録完了
--------------------------------------------------------------------*/

.members .thx {
	text-align: center;
	margin: 70px 0;
}
.members .thx h3 {
	font-size: 50px;
	text-align: center;
	background-color: #FFF;
	line-height: 50px;
	padding: 0;
	color: #000000;
	font-weight: normal;
	margin: 70px 0;
}
.members .thx p{
	margin-bottom: 1em;
	line-height: 1.8;
}
.members .thx strong {
	font-size: 18px;
}
.members .thx .complete_mail {
	text-align: center;
	font-size: 18px;
	color: #ff0000;
}
#entry_complete {
	width: 960px;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
#entry_complete h3{
	margin:0;
	padding:0;
}
.coupon_present {
	margin-bottom: 15px;
}
#entryBrandlist ul {
	width: 876px;
	padding-left: 30px;
	padding-bottom:30px;
	margin: 0 auto;
}
#entryBrandlist ul li {
	list-style: none;
	margin: 0 30px 20px 0;
	padding: 0;
	width: 262px;
	height: 130px;
	float: left;
	font-size: 12px;
	text-align: center;
	line-height: 30px;
}
#entryBrandlist ul li a {
	color: #000000;
}

/* 08 efo設定
--------------------------------------------------------------------*/

.sampleValue {
	color: #999;
}
.efoMsgBox {
	background-color: #000;
	border: 1px solid #ccc;
	color: #fff;
	font-weight: bold;
	left: 0;
	opacity: 0.8;
	padding: 12px 15px;
	position: absolute;
	top: 0;
}
.members .ok {
	color: #FF3300;
	font-size: 12px;
}

/* 09 登録完了(メンバーズカード登録フロー)
--------------------------------------------------------------------*/
.members .members-card {
	padding-left: 30px;
	text-align: center;
}
.members .members-card p {
	padding: 10px 0;
	text-align: left;
}
.members .members-card .entry_card {
	width: 854px;
	margin: 15px auto 40px;
}
.members .members-card .entry_card p {
	font-weight: bold;
	font-size: 14px;
	margin-bottom: 30px;
}
.members .members-card .entry_card .entry_form {
	float: left;
	width: 425px;
	margin-top: 30px;
}
.members .members-card .entry_card .card_img {
	float: left;
}
.members .members-card .entry_card dl {
	position:relative;
}
.members .members-card .entry_card dl dt {
	float: left;
	width: 100px;
	line-height: 26px;
	margin-bottom: 20px;
}
.members .members-card .entry_card dl dt span {
	color: #cc0000;
}
.members .members-card .entry_card dl dd {
	float: left;
	width: 310px;
	line-height: 26px;
	margin-bottom: 20px;
}
.members .members-card .entry_card dl dd span {
	font-size: 11px;
}
.members .members-card .entry_card.confirm dl dd span {
	font-size: 12px;
}
#right_box .members-card .entry_card dl dd input {
	line-height: 22px;
	margin: 0 !important;
}
.members .members-card .entry_card dl dd.error {
	position: absolute;
	left: 140px;
	top: -19px;
}

/* XX ヘッダー/フッターの項目非表示用
--------------------------------------------------------------------*/
.header_belt,
.header_caution,
.header_search,
.header_sub,
.header_bottom,
.header_nav,
.footer_sns_nav,
.footer_logo,
.footer_brand,
.footer_category,
.footer_sub,
.footer_nav_title {
	display: none!important;
}
.header_content,
.header_box,
.haeder_top {
	height: 80px;
}
.header_top_inner {
	-webkit-justify-content: center;
	justify-content: center;
}
.header_logo {
	display: block;
}
.bread {
	display: none;
}
.page-title {
	padding: 40px 0 0;
}
.footer_nav {
	flex: 1;
}
.footer_guide {
	width: 100%;
}
.footer_nav_list {
	display: flex;
	justify-content: center;
}
.footer_nav_item {
	margin: 0;
	padding: 0 10px;
}
