@charset "utf-8";
/* ---------------------------------------
 基本・リセット
---------------------------------------- */
#user_box img{
	vertical-align:top;
}
#user_box input{
	vertical-align:top;	
  outline: none;
}

#user_box input::-webkit-input-placeholder {
  color: #73a8a0;
  line-height: 1.6;
  opacity: 1;
}
#user_box input:-ms-input-placeholder {
  color: #73a8a0;
  opacity: 1;
}
#user_box input::-moz-placeholder {
  color: #73a8a0;
  opacity: 1;
}
#user_box input::-placeholder {
  color: #73a8a0;
  opacity: 1;
}

/*----------------------------
 共通
----------------------------*/

* > #user_box p[class^="btn_"] a:hover {
	opacity:0.75;
	zoom:1;
}

/* iOS8.4.1対応 */
@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) {
* > #user_box p[class^="btn_"] a:hover {
    opacity:1 !important;
  }
}

#user_box {
	background:#dbfbf6;
	border:#93c8c0 1px solid;
	display:block;
	font-size: 13px;
	letter-spacing: 0.1em;
	line-height:1.4;
	margin: 0 0 15px 0;
	overflow:hidden;
	padding: 10px;
	position:relative;
	text-align: center;
}
div + #user_box {
    margin-top: 15px;
}

[class~="line"] > script:first-child + #user_box {/* 上padding付のline系ボックス内の先頭に入った時用 */
  margin-top: 0;
}

* > #user_box p[class^="btn_"] a:hover {
	opacity:0.75;
}

/*--- user_login ------------------*/

#user_box .login_box {
	background: #ffffff;
	border: #ccc 1px solid;
	border-radius: 6px;
	display: block;
	margin: 0 0 10px 0;
	overflow: hidden;
	padding: 10px;
	position: relative;
}

#user_box #ttl_box {
  color: #fff;
  background: #1bb7dc;
  margin: 0 0 10px 0;
  padding: 6px 0;
  font-weight: bold;
}

#user_box #ttl_box .ttl{
	font-size:15px;
	font-weight:bold;
  line-height: 20px;
	padding:0;
  text-align: center;
}

#user_box .pass_lose {
	font-size: 13px;
	margin: 0;
  text-align: center;
}

#user_box .pass_lose a {
  display: inline-block;
  height: 18px;
	padding: 0 0 0 12px;
  position: relative;
}

#user_box .pass_lose a:before {
  border-style: solid;
  border-width: 4px 0 4px 6px;
  border-color: transparent transparent transparent #007bff;
  content: "";
  height: 0;
  left: 0;
  position: absolute;
  top: 5px;
  width: 0;
}
#user_box .pass_lose a:hover:before {
  border-color: transparent transparent transparent #f00;
}

#user_box .login_box ul.login_li {
	margin:0 0 10px;
	padding: 0;
}
#user_box .login_box ul.login_li li{
	margin: 8px 0;
	padding:0;
	overflow:hidden;
}
#user_box .login_box ul.login_li li:first-child{
	margin: 4px 0 0 0;
}

#user_box .login_box ul.login_li li input[type="text"],
#user_box .login_box ul.login_li li input[type="password"]{
	width:220px;
	line-height: 15px;
	margin:0;
	padding: 4px 5px;
	border:#c0c0c0 1px solid;
	float:right;
	color:#444;
}
#user_box .login_box ul.login_li li input[type="text"]:focus,
#user_box .login_box ul.login_li li input[type="password"]:focus{
	color:#333333;
}
#user_box .login_box ul.login_li li img {
	padding:4px 0 0;
	float:left;
	vertical-align:middle;
}
#user_box .login_box p.memory {
	margin:0 0 10px 0;
}
#user_box .login_box p.memory input[type="checkbox"]{
	margin: 0;
}
#user_box .login_box p.memory input[type="checkbox"]:checked:before,
#user_box .login_box p.memory input[type="checkbox"]:checked:after {
	content: none;
}
#user_box .login_box p.memory label{
	font-size:13px;
	line-height: 13px;
	vertical-align: top;
}

#user_box .login_box .b_user_login {
	margin:0 0 10px 0;
}


#user_box .login_box p.btn_login input[type="checkbox"]{
	vertical-align:middle;
	padding:0;
}

#user_box .btn_regist{
	margin:8px 0 8px 0;
}


#user_box .err_lostwp {
  clear: both;
  position: relative;
  margin: 14px auto;
  line-height: 15px;
  width:240px;
  height: 26px;
  background: #f95656;
  padding: 10px 8px;
  border-radius: 4px;
}

#user_box .err_lostwp span {
  position: relative;
  margin: 0;
  color: #fff;
}

/*ログイン注意文*/
.box_login_caution_side {
  position: relative;
  box-sizing: border-box;
  background: #fff;
  margin: 15px auto 0;
  padding: 5px 8px;
  width: 95%;
  border: 1px solid #c50101;
}
.box_login_caution_side .ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  background: #fff;
  text-align: center;
  font-size: 17px;
  font-weight: 600;
}
.box_login_caution_side .ttl::before {
  content: "!";
  display: inline-block;
  margin-right: 8px;
  width: 20px;
  height: 20px;
  background: #c50101;
  border-radius: 50%;
  text-align: center;
  vertical-align: middle;
  text-indent: 3px;
  line-height: 20px;
  color: #fff;
}
.box_login_caution_side .read {
  margin: 8px auto 0;
  text-align: left;
  font-size: 15px;
  line-height: 1.5;
}
.box_login_caution_side strong {
  color: #c50101;
  font-weight: 100;
}

/*--- user_page ------------------*/
#user_box .welcome_area {
	display:block;
	overflow:hidden;
	margin:0 0 10px 0;
	padding:0;
}
#user_box .welcome_area .pro_photo {
	float:left;
	display:inline;
	width:60px;
	height:60px;
	vertical-align: middle;
	border:#bbb 1px solid;
	margin:0 10px 0 0;
	padding:0;
}
#user_box .welcome_area .pro_photo img {
	margin:0;
	padding:0;
}
#user_box .welcome_area .welcome_txt {
	float:left;
	display:inline;
	margin:5px 0 0 0;
	vertical-align: middle;
	font-size:13px;
	text-align:left;
	line-height:1.5;
}
#user_box .welcome_area .welcome_txt span.username {
	font-size:15px;
	color:#006666;
	font-weight:bold;
	margin-top:5px;
}

#user_box p.btn_logout {
	position:absolute;
	top:10px;
	right:10px;
}
#user_box.shain p.btn_logout {
	top:37px;
}
#user_box.shain p.shain_txt{
	color: #fff;
	background: #0078ff;
	margin: 0 0 7px 0;
	padding: 2px 0;
	font-weight: bold;
}
#user_box.shain p.fc_txt{
	color: #fff;
	background: #cc5479;
	margin: 0 0 7px 0;
	padding: 2px 0;

}
#user_box.shain p.hmc_txt{
	color: #fff;
	background: #20a860;
	margin: 0 0 7px 0;
	padding: 2px 0;

}

#user_box .ed_over{
	position: relative;
	overflow:hidden;
	display:block;
	background:#f2fefc;
	border:#c1ede6 1px solid;
	margin:0 0 5px 0;
	padding:5px;
	border-radius:5px;
	color: #5f5f5f;
}

#user_box p.point_txt {
	margin:0;
	padding:0 ;
	display: inline;
}
#user_box p.point_txt span{
	font-size:17px;
	color:#fe0000;
	font-weight:bold;
	margin:0 5px;
}
#user_box p.point_rank_txt {
	display: inline;
}
#user_box p.point_rank_txt span{
	font-size:17px;
	font-weight:bold;
	padding: 0 4px;
	color: #ee4900;
}

#user_box .list_box{
	clear:both;
	overflow:hidden;
	background:#ffffff;
	border:#c1ede6 1px solid;
	margin:0 0 10px 0;
	padding:8px;
}
#user_box .list_box.ed_over_count{
	color: #444444;
	font-size: 13px;
	padding: 0 0 4px 0;
}
#user_box .list_box　.ed_over p span{
	font-weight: bold;
}

.article_box {
	position: relative;
	overflow:hidden;
	display:block;
	background:#ffffff;
	border:#fdc292 1px solid;
	margin:0;
	border-radius:6px;
}
.article_box dl {
	overflow:hidden;
	margin:1px;
}
.article_box dt {
	position: relative;
	display:block;
	height:22px;
	line-height:22px;
	color:#fff;
	font-size:12px;
	text-align:center;
	overflow:hidden;
	background:#f5903e;
	border-radius:5px 5px 0 0;
}
.article_box dt.allcount{
	background:#FDDDB3 url("/entry_pubuser/image_cmn/bk_ttl_total.png") 0 0;
	font-weight:800;
	font-size:105%;
	color:#C60;
	height:27px;
	line-height:27px;
	margin-top:5px;
}
.article_box dd {
	margin:0;
	padding:4px 8px 4px;
}
.user_list dd{
	margin:0 5px;
}
.user_list dd span{
	padding:3px;
}
.article_box dd.li_top{
	text-align:left;
	clear:both;
	overflow:hidden;
	margin-top:5px;
}
.article_box dd.li_top img{
	margin-right:5px;
  margin-top:2px;
  vertical-align:top;
}
.article_box dd.li_short{
	text-align:left;
}
.article_box dd.li_short img{
	margin-right:5px;
  margin-top:2px;
  vertical-align:top;
}
.article_box dd.li_short_under{
	width:100px;
	float:left;
	text-align:left;
}
.article_box dd.li_short_under img{
	margin-right:5px;
  margin-top:2px;
  vertical-align:top;
}
.article_box .ed_over_count {
	margin:2px auto;

}
.article_box .ed_over_count span {
	color:#F00;
	margin:0 2px;
	font-weight:bold;
	font-size: 18px;
}

.article_box .ex_txt {
	margin:5px 0;
	font-size:12px;
	padding:6px;
	background:#fff5da;
	color:#f84343;
}

#user_box ul.user_list {
	display:block;
	margin:0;
	padding: 0;
}

#user_box ul.user_list li{
	margin:1px 0;
	padding:0;
	text-align:left;
	font-size:12px;
	color:#888;
	letter-spacing:0.02em;
}

#user_box ul.user_list li {
	width:35%;
	float:left;
}

#user_box ul.user_list li:nth-child(2n) {
	width:65%;
}

#user_box ul.user_list li a {
	color:#444;
}

#user_box ul.user_list li a:hover {
	color:#666;
}

.article_box ul.user_list span{
	margin:0 0px 0px 10px;
	font-size:13px;
}

#user_box ul.user_list a:hover span {
	color:#F00;
}

/*--- ログイン ローディング JS ----*/
.LoginWaitScreenBody {
	position: absolute;
	top: 0px;
	left: 0px;
	height: 100%;
	width: 100%;
	background-color: rgb(255, 255, 255);
	z-index: 40;
	border-radius: 8px;
}

.loadingCenter {
	position: relative;
	top: 50%;
	left: 50%;
	margin: -25px 0 0 -80px;
}

.loadingCenter .loadingBackGround {
	background: #ffffff;
	padding: 8px;
	border-radius: 6px;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	width: auto;
	text-align: center;
	width: 160px;
}

.loadingCenter .loadingMes {
	font-size: 11px;
	color: #555555;
}


/*-- お気に入り --*/
#user_box .favorite_box {
	display:block;
	margin:0;
	padding:4px 8px 6px;
	border-top:#fdc292 1px solid;
}

#user_box .btn_mypage{
	margin:10px auto 0;
	padding:0;
	width:272px;
}



/*----------------------------
 ユーザーPR
----------------------------*/
#user_pr_box {
	position:relative;
	overflow:hidden;
	display:block;
	height:250px;
}

/*----------------------------
 1000万キャンペーン
----------------------------*/
[class^="bnrbox"] {
  margin: 15px 0;
}
[class~="line"] > script:first-child + [class^="bnrbox"] {/* 上padding付のline系ボックス内の先頭に入った時用 */
  margin-top: 0;
}

[class^="bnrbox"] img {
  vertical-align: bottom;
}

/* 第4回以前サイドバーバナー */
#side_cam_box {
  overflow:hidden;
  display:block;
  width:300px;
  text-align: center;
  margin:0 0 15px 0;
  padding:0;
  border:#3bb107 2px solid;
/*  background:url(/ssl/entry_pubuser/1000cam/image/bg_btn_area.png) no-repeat;*/
  box-sizing: border-box;
}
#side_cam_box img {
  vertical-align:bottom;
}

/* 第5回サイドバーバナー */
.side_cam_ad_box{
	background-image:url(/entry_pubuser/image/1000cam/bg_1000cam_side.png);
	background-repeat:no-repeat;
	width:300px;
	height:290px;
    margin-bottom: 15px;
	text-align:center;
	display:block;
	line-height:0;
}

#js_cam1000 > img:nth-child(1) {
  height: 193px;
}

.side_select_btn img{
	margin-bottom:9px;
}

/* 店舗別対抗戦 */
.article_box.withcam {
	margin: 0 0 5px 0;
}
#user_box .campointprize_box{
	position: relative;
	overflow:hidden;
	display:block;
	background:#fffdea;
	border:#c1ede6 1px solid;
	margin:0 0 0 0;
	padding:5px 0;
	border-radius:5px;
	color: #5f5f5f;
}
#user_box .btncampointprize{
	height:45px;
	margin: 0 auto 3px ;
}
#user_box .btncampointprize:hover{
	height:45px;
}
#user_box .ntw_point{
	margin:0 0 0 0;
}
#user_box .ntw_point .ttl{
	background: #f5eda0;
	margin: 0 auto 2px;
	padding: 2px 0 2px;
	width: 266px;
	color: #5d5614;
}
#user_box .ntw_point p.point_txt {
	display: block;
	clear: both;
	line-height: 1.2;
}
#user_box .ntw_point p.point_txt span.entry{
	color: #5f5f5f;
	font-weight: normal;
	font-size: 12px;
	float: left;
	text-align:right;
	width: 70px;
	padding:3px 0 0 0px;
}
#user_box .ntw_point p.point_txt span.point {
	color: #0793d4;
	float: left;
	width: 120px;
	margin: 0;
}
#user_box.fc .ntw_point p.point_txt.tenpo span.point {
	color: #cc5479;
}
#user_box.hmc .ntw_point p.point_txt.tenpo span.point {
	color: #048f45;
}
#user_box .ntw_point p.point_txt span.pt {
	color: #5f5f5f;
	font-weight: normal;
	font-size: 12px;
	float: left;
	padding:3px 0 0 10px;
}

/* 店舗別対抗戦 */
#user_box .bnr_ntw{
	height:45px;
	margin:7px auto 0;
}

/*-- ログイン_メンテナンス --*/

#user_box #ttl_box .info_mente {
    display: inline;
    float: left;
    font-size: 13px;
    font-weight: bold;
    margin: 0 10px 10px 4px;
    padding: 2px 7px;
	color:#fff;
	background:#F00;
}

#user_box #ttl_box .ttl_mente {
    display: inline;
    float: left;
    font-size: 13px;
    font-weight: bold;
    margin: 0 0 10px;
    padding: 3px 0 2px;
}
#user_box .login_box.mente {
    background: none repeat scroll 0 0 #FFFFFF;
    border: 1px solid #CCCCCC;
    border-radius: 6px;
    display: block;
    margin: 0 0 0px;
    overflow: hidden;
    padding: 10px;
    position: relative;
	text-align:left;
}
#user_box .login_box.mente span {
	color:#F00;
}

/* ポイント有効期限 */
#user_box .losealert{
	display: inline-block;
	margin: 1px 0 6px;
	padding: 6px;
	background: #fff7f7;
	border: 1px solid #ef5475;
}
#user_box .losealert dl{
	text-align: left;
}
#user_box .losealert dl dt{
	color: #e01496;
	padding: 3px 0 5px 19px;
	border-bottom :1px dotted #f7b1b1;
	background: url(/search/image/user/mrk_alert.gif) no-repeat 0 5px;
}
#user_box .losealert dl dd{
	margin:5px 0 0 0;
}
#user_box .losealert dl dd span.total{
	font-weight:bold;
	color:#ff0000;
}


/* 友だち登録キャンペーン */
.line_campaign {
	margin:15px auto 20px;
	padding-bottom:15px;
	width:624px;
	border-bottom:1px solid #666;
	}
.line_campaign h3 {
	height:108px;
	margin:0px auto;
	}
.line_campaign .lc_main {
	background:url(/search/image/user/bg_line_campaign_main.png) no-repeat 0 0;
	height:144px;
	}
.line_campaign .lc_main .lead {
	padding-top:20px;
	margin:0px 15px;
	text-align:left;
	color:#1c3815;
	}
.line_campaign .lc_main .lead em {
	font-weight:bold;
	color:#F00;
	font-size:14px;
	}
.line_campaign .lc_main .lc_input {
	margin:20px 15px 0px;
	}
.line_campaign .lc_main .lc_input:after,
.line_campaign .lc_main .lc_input:before {
    content: "";
    clear: both;
    display: block;
	}
.line_campaign .lc_main .lc_input p {
	float:left;
	width:290px;
	padding:0px 40px 0px 0px;
	text-align:left;
	color:#1c3815;
	font-weight:bold;
	}
.line_campaign .lc_main .lc_input .alert {
	background:url(/search/image/user/icon_line_campaign_alert.png) no-repeat 0 0;
	width:280px;
	padding:0px 10px 0px 40px;
	color:#F00;
	}
.line_campaign .lc_main .lc_input .lc_form {
	float:left;
	width:260px;
	}
.line_campaign .lc_main .lc_input .lc_form input {
	padding:6px;
	font-size:16px;
	vertical-align:middle;
	border-radius:5px;
	margin-right:10px;
	}
.line_campaign .lc_main .lc_input .lc_form img {
	vertical-align:middle;
	cursor:pointer;
	}
.line_campaign .lc_main .lc_frame {
	border:2px solid #F00;
	width:550px;
	margin:10px auto 0px;
	padding:10px;
	}
.line_campaign .lc_main .lc_frame p {
	font-weight:bold;
	color:#F00;
	}
.line_campaign .lc_main .lc_frame_alert {
	border:2px solid #F00;
	width:350px;
	margin:10px auto 0px;
	padding:10px;
	}
.line_campaign .lc_main .lc_frame_alert p {
	background:url(/search/image/user/icon_line_campaign_alert.png) no-repeat 0 0;
	font-weight:bold;
	padding:0px 0px 0px 40px;
	color:#F00;
	text-align:left;
	}
.line_campaign .lc_foot {
	background:url(/search/image/user/bg_line_campaign_footer.png) no-repeat 0 0;
	height:30px;
	}
.line_campaign .lc_foot ul li {
	display:inline-block;
	background:url(/search/image/user/icon_line_campaign_arrow.png) no-repeat 0 0;
	padding-left:18px;
	margin:8px 15px 0px 0px;
	line-height:13px;
	}
.line_campaign .lc_foot ul li a {
	color:#FFF;
	font-weight:bold;
	}
.line_campaign .lc_foot ul li a:hover {
	color:#F60;
	}

