@charset "utf-8";

body{
 margin:0;
 padding:0;
 text-align:center;

}

/* ヘッダー HEADER
-------------------------------------------------------------------------*/
#HEADER{
	width:100%;
	padding-bottom:10px;
	border-bottom:1px solid #808080;
}
#HEADER.borderNone{
	border-bottom:0;
}
#HEADER .headTtl{
	padding:7px;
	background-color:#BF0000;
	text-align:center;
}
#HEADER .headTtl p{
	min-height:18px;
	background:url(../img/txt_title_check.gif) no-repeat top center;
	text-indent:-5000px;
}

/* 汎用決済初回注文時のHeader */
#HEADER .headTtl p.flexpaya{
	min-height:18px;
	background:url(../img/txt_title_check_fpa.gif) no-repeat top center;
	text-indent:-5000px;
}

/* 汎用決済初回注文時のHeader */
#HEADER .headTtl p.flexpayb{
	min-height:18px;
	background:url(../img/txt_title_check_fpb.gif) no-repeat top center;
	text-indent:-5000px;
}



/* var ご利用停止 */
#HEADER .headTtl p.checkoutStop{
	background:url(../img/txt_title_checkout_stop.gif) no-repeat top center;
}



#HEADER .welcome {
	clear:both;
	width:98%;
	margin-top:5px;
	text-align:right;
	font-weight:bold;
}
/* OTPヘッダ */
#OTP_HEADER{
	width:100%;
	margin-top:10px;
}
#OTP_HEADER h1{
	float:left;
	width:320px;
	height:auto;
	margin-left:5px;
	text-indent:0;
}
#OTP_HEADER .homeLink{
	float:right;
	width:180px;
	margin-right:5px;
	text-align:right;
}
#OTP_HEADER .clearfix {
	padding-bottom:20px;
	background:url(../img/line_01.gif) repeat-x bottom left;
}
#OTP_HEADER .welcome {
	padding:15px 0 0 20px;
	text-align:left;
	font-weight:bold;
}
/* SMS_AUTH logout link */
#SMS_WELCOME .welcome {
	margin-right:5px;
	text-align:right;
}

/* コンテンツ領域 CONTENTS
-------------------------------------------------------------------------*/
#CONTENTS{
	width:950px;
 margin:0 auto;
	padding:0;
 text-align:left;
 word-break:break-all;
}
.checkStep{
	text-align:center;
}

/* フッター FOOTER
-------------------------------------------------------------------------*/
#FOOTER{
	margin:25px auto 0;
	padding:10px;
	border-top:1px solid #808080;
}
#FOOTER li{
	display:inline;
}
#FOOTER .copyright{
	margin-top:16px;
	font-size:78%;
}

/* 見出し
-------------------------------------------------------------------------*/
/* h2 */
.h2box{
	margin-top:50px;
	border:1px solid #aaa;
}
.h2box h2{
	padding:6px 7px;
	background:#fefefe url(../img/bg_h2.gif) repeat-x bottom left;
	border-top:2px solid #bf0000;
	font-size:110%;
	color:#000;
}
/* h3 */
.h3design{
	padding:5px 7px 6px 7px;
	background-color:#bf0000;
	color:#fff;
}

/* 注釈
-------------------------------------------------------------------------*/
.normalNote{
	margin-left:1em;
}
.noteList li{
	padding-left:1em;
	text-indent:-1em;
	line-height:1.25;
}

/* エラーメッセージ
-------------------------------------------------------------------------*/
.errorBox{
	width:80%;
	margin:30px auto 0;
	padding:15px;
	background-color:#fff1f1;
	text-align:center;
	font-weight:bold;
	font-size:130%;
	line-height:1.25;
	color:#ff0000;
}
.errorBox em{
	color:#000000;
}
.errorBox dl{
	margin:10px 0 0 0;
	border-top:1px solid #cccccc;
	text-align:left;
	font-size:80%;
	line-height:1.25;
	color:#660000;
}
.errorBox dl dt{
	padding:10px 0 0 0;
	font-weight:bold;
}
.errorBox dl dd{
	font-weight:normal;
}

/* 完了メッセージ
-------------------------------------------------------------------------*/
.completeBox{
	margin-top:15px;
	padding:8px 10px;
	background-color:#ffffce;
	border:1px solid #bf0000;
	color:#bf0000;
}
.completeBox em{
	font-size:130%;
	line-height:1.25;
}
.completeBox .mark{
	float:left;
	width:48px;
}
.completeBox .msg{
	margin-left:48px;
}

/* noteBox（グレー罫線枠）
-------------------------------------------------------------------------*/
.noteBox{
	margin-top:15px;
	padding:10px;
	border:1px solid #ccc;
}
.noteBox li{
	margin-top:6px;
}
.noteBox li input{
	margin-top:3px;
}

/* ラジオボタン
-------------------------------------------------------------------------*/
.radio{
	margin:10px 0;
	padding:5px;
	border:0;
	background-color:#ffffcc;
	color:#000;
}
.radio input{
	margin-right:5px;
}

/* サブミットボタン
-------------------------------------------------------------------------*/
.submitBtn{
	margin-top:20px;
	text-align:center;
}


/*=========================================================================

 STEP_01_02

=========================================================================*/

/* 所有ポイント
-------------------------------------------------------------------------*/
.pointDetail{
	width:50%;
	margin:15px auto;
}
.pointDetail.pin{
    width:90%;
    margin:5px auto;
    float: left;
    display:block;
}

#myc-points-pin-mail-submit{
    margin-left:25px;
}

.pointDetail.pin.clearfix p{
	padding-top:0px;
	margin-top: 0px;
}

.pointDetail dt{
	width:20em;
	margin-bottom:2px;
}
.pointDetail dd{
	margin-left:20em;
	margin-top:-1.4em;
	margin-bottom:3px;
}
.pointDetail dt.totalPoint{ /*利用可能ポイント*/
	font-weight:bold;
}
p.submitBtn.pinSubmit {
    width: 50%;
}
/* ポイント利用のご注意
-------------------------------------------------------------------------*/
ul.pointNote li{
	padding-left:1em;
	text-indent:-1em;
	line-height:1.25;
}

/* クレジット情報
-------------------------------------------------------------------------*/
dl.cardDetail{
	margin:10px 0 0 25px;
}
dl.cardDetail dt{
	clear:left;
	float:left;
	width:7.5em;
	margin-bottom:4px;
}
dl.cardDetail dd{
	margin-left:7.5em;
	margin-bottom:4px;
}

/* 別のカードを選択
-------------------------------------------------------------------------*/
.selectCard input{
	vertical-align:middle;
}


#float01{
	display:inline-block;
}

.cardLogo{
	margin-left:25px;
}

#float02
{
	margin-left:25px;
}

.commodity .price,.commodity .subtotal{
	text-align:right;
}


/* ==============================================
   ログイン部分
============================================== */

/* common */
.caption {
	color: #888888;
}

#login {
	background: #eeeeee;
	text-align: center;
	width: 475px;/*---100324---*/
	float: left;
	border: 2px solid #999999;
}
/** ↑↑↑↑↑↑ **/

#mainLeft {
	border-right: 1px solid #cccccc;
	float: left;
	width: 475px;/*---100324---*/
	margin: 0px;
	padding: 0px;
}

.login {
	text-align: center;
	width: 475px;

}
#loginInner {
	background: #ffffff;
	margin: 4px;
	padding: 10px;
}
#loginInner h1 {
	font-size: 115%;
	font-weight: bold;
	line-height: 1;
	text-align: left;
}

#loginInner h3 {
	font-size: 115%;
	font-weight: bold;
	line-height: 1;
	text-align: left;
}

#loginInner .logo {
	vertical-align: text-bottom;
	margin-right: 15px;
	margin-top: 5px;
	margin-left: 5px;
}
#loginInner ul {
	text-align: left;
}
#loginInner li {
	position: relative;
}
#loginInner p.fomName {
	background: #ffffff;
	text-align: center;
	width: 80px;
	float: left;
}
#loginInner em {
	font-size: 115%;
}
#loginInner p.fomName span {
	color: #888888;
	background: #ffffff;
	display: block;
	font-size: 82%;

}
#loginInner .textBox {
	float:right;/*---100324---*/
	font-size: 115%;
	width: 294px;/*---160215---*/
	padding: 10px;
	margin-left: 0px;
	margin-bottom: 10px;
	border: 1px solid #bbbbbb;
	background-color:#fff;
}
#loginInner .textBox:focus {
	color: #000000;
	background: #ffecf3;
}

.errorMsg {
	margin-left: 0px;
	color:#bf0000;
	left: 95px;
}

.check {
	vertical-align: middle;
	margin-right: 3px;
	margin-bottom:10px;
	float:left;
}
#loginInner .popUp,#info .popUp {
	vertical-align: baseline;
	margin: 0 3px;
}
/*---100324---*/
#loginInner .loginButton {
	vertical-align: text-top;
	width: 200px;
	padding:5px;
	font-size:115%;
}
#loginInner .caption {
	margin-bottom:10px;
	color:#666666;
}
/*---/100324---*/

#userHelp {
	padding: 10px;
}
#userHelp li {
	text-align: left;
	padding: 3px 0;
}
#userHelp .popUp {
	vertical-align: middle;
	margin-right: 5px;
}
#userHelp .sslIcon {
	background: url(../img/ssl.gif) no-repeat 0 2px;
	vertical-align: middle;
	padding-left: 5px;
	padding-bottom: 2px;
	margin-left:20px;
}
#userHelp .sslIcon .popUp {
	background: none;
	margin: 0 35px 0 -25px;
}
#userHelp .sslIcon .caption {
	color: #666666;
	margin-left: 5px;
}

#extra {
	text-align: center;
	margin-left: 475px;/*---100324---*/
	zoom:1;
	padding-top:12px;
	padding-bottom: 1px;
    height: 100%;
}

#extra h2 {
	font-weight: bold;
	line-height: 1;
	padding-bottom: 10px;
	font-size: 115%;
	text-align:left;
}

#newEntry .caption {
	margin: 0 auto;
}
#newEntry .caption a {
	background: url(../img/info.gif) no-repeat left center;
	text-align: left;
	padding: 5px 0 5px 20px;
}
/*---100324---*/
.box {
	margin: 20px 0px;
	border: 3px solid #eeeeee;
	zoom:1;
	text-align:center;
	line-height: 23px;
	width: 430px;
}
.box td {
	margin: 0;
	padding: 3px 5px;
	text-align:left;
}
.box img {
	margin:7px auto;
}
.box table.btn {
	margin:5px 0;
}
.box table.btn td {
	text-align:center;
}
.box table.btn td img {
	margin:0;
}
#info {
	text-align: left;
	padding: 10px;
}
/*---/100324---*/
#info dt {
	font-weight: bolder;
	color: #BF0000;
}
#info ul {
	padding-bottom: 5px;
}
#info li {
	list-style: disc;
	padding-top: 3px;
	margin-left: 15px;
	padding-left: -15px;
}
#info div.em {
	display: block;
}
p#noJs {
	font-weight: bold;
	color: #bf0000;
	background: #ffffff;
	text-align: center;
	width: auto;
	margin: 5px auto;
	padding: 5px;
	border: 1px solid #bf0000;
}

/* ==============================================
   20100114
============================================== */
div.btnChange {
	margin:0 auto;/*---100324---*/
	padding-bottom:8px;
	font-weight:bold;
	text-align:center;
}
div.btnChange {
	background:url('../img/bg_btn_red_btm.gif') no-repeat 0 100%;
	width: 311px;
}
div.btnChange p {
	background:url('../img/bg_btn_red_top.gif') no-repeat;
}
div.btnChange p a {
	display:block;
	min-height:22px;
	padding-top:6px;
	color:#FFFFFF;
	text-decoration:none;
}
* html div.btnChange p a {
	height:22px;
}
div.btnChange p a:link {
	color:#FFFFFF;
	text-decoration:none;
}
div.btnChange p a:visited { 
	color:#FFFFFF;
	text-decoration:none;
 }  
div.btnChange p a:hover {
	color:#FFFFFF;
	text-decoration:underline;
}
div.btnChange p a:active {  
	color:#FFFFFF;
	text-decoration:underline;
} 
div.btnChange p a:hover {
	color:#FFFFFF;
	text-decoration:underline;
}
div.btnChange p a span {
	padding-right:20px;
	background:url(../img/icon_btn_arrow.gif) no-repeat 95% 50%;
	text-align: left;
	padding-left: 15px;
	display: block;
}
div.btnChange p a span em {
	font-size: 125%;
	font-weight: bold;
}

/*---------------------------------------------------------------
* clearfix
----------------------------------------------------------------*/
/* clearfix */
#main,#loginInner li { display: inline-block;}
/* rule out MacIE \*/
#loginInner li {display: block; }

#FOOTER{
	text-align: center;
}

/* ==============================================
   Global Navigation
============================================== */
div#grpheader {
	width: 100%;
	margin-bottom: 15px;
	border-bottom: 3px solid #BF0000;
	text-align: left; /* for Quirks Mode */
}

/* タグライン */
p#tagLine {
	line-height: 1.1;
	color: #999999;
	text-align: right;
}

/* サイトID */
p#siteID {
	float: left;
	width: 239px; /* ←サイトID幅＋サービスタイトル幅＋マージンの合計値を入れる */
	height: 52px;
}
p#siteID img.serviceLogo {
	margin: 1em 5px 0;
}
p#siteID img.serviceTitle {
	margin: 0 0 6px 10px;
}

/* グループ回遊＆ユーティリティ */
dl#remoteNav dd.grpRelation ul {
	float: right;
	padding-top: 6px;
}
dl#remoteNav dd.siteUtility {
	clear: right;
}
dl#remoteNav dd.siteUtility ul {
	float: right;
	margin-bottom: 3px;
	padding-top: 6px;
}
dl#remoteNav dd.grpRelation ul li,
dl#remoteNav dd.siteUtility ul li {
	float: left;
	line-height: 1.1;
	padding: 0 0.5em;
	border-right: 1px solid #000000;
	list-style-type: none;
}
dl#remoteNav dd.grpRelation ul li.grpHome,
dl#remoteNav dd.siteUtility ul li.last {
	padding-right: 0;
	border: none;
}
dl#remoteNav dd.grpRelation ul li.grpHome {
	font-weight: bold;
}
dl#remoteNav dd.grpRelation ul li a,
dl#remoteNav dd.siteUtility ul li a {
	white-space: nowrap;
}

/* ヘッダ内定義リストのdtを非視覚化 */

dl#remoteNav dt {
	position: absolute;
	left: -9999px;
	width: 100px;
	height: 0;
}

/* ヘッダ内画像のborderを消す */
p#siteID img {
	border: none;
}

/* アクセシビリティ対応 */
div#grpheader p.noCSS {
	display: none;
	height: 0;
}

div#grpheader ul.navSkip,div#main p.navSkip {
	position: absolute;
	left: -9999px;
	width: 100px;
	height: 0;
}

/* End hide from Mac-IE */

table.loginBox {
	width: 98%;
	font-size: 100%;
	line-height: 1.3;
	color: #000000;
	background: #ffffff;
	padding: 5px;
	margin: 5px 0 8px;
}
td.loginBoxName {
	vertical-align:center;
	text-align: left;
	width: 85px;
	padding-left:35px;
}
td.loginBoxValue {
	line-height: 12px;
	background-color: #ffffff;
	vertical-align:center;
	text-align: left;
	width: 255px;
	height: 50px;
}

/*---------------------------*/
.noJS {
	background-color: #ffefef;
	border: 2px solid #bf0000;
	margin: 0;
	padding: 10px;
	text-align: left;
}

/*captcha and long login*/
.captcha
{
	height:78px;
}

.captchaText{
	width: 318px;
    margin-left: 116px;
    margin-top: 5px;
    text-align: left;
}

.g-recaptcha{
    margin-left: 118px;
    transform: scale(1.04);
    -webkit-transform: scale(1.04);
    transform-origin: 0 0;
    -webkit-transform-origin: 0 0;
}

.savelogin{
	display:inline-block;
	margin-top:10px;
}

.longLoginCaption
{
	padding-top: 15px;
	text-align:left;
}

.headline td{
	padding-top:20px;
}

.login_error_message{
	color: #BF0000;
    padding: 0px;
    display: block;
}


