@charset "utf-8";
/* CSS Document */

/* marginSet
--------------------------------------------------------- */
.mar0 { margin: 0 !important; }
.mar_b0 { margin-bottom: 0 !important; }
.mar_b05 { margin-bottom: 5px !important; }
.mar_b10 { margin-bottom: 10px !important; }
.mar_b15 { margin-bottom: 15px !important; }
.mar_b20 { margin-bottom: 20px !important; }
.mar_b25 { margin-bottom: 25px !important; }
.mar_b30 { margin-bottom: 30px !important; }
.mar_b35 { margin-bottom: 35px !important; }
.mar_b40 { margin-bottom: 40px !important; }
.mar_b45 { margin-bottom: 45px !important; }
.mar_b50 { margin-bottom: 50px !important; }
.mar_b60 { margin-bottom: 60px !important; }


/*------------------------------------------------------------
	ClearFix
  ------------------------------------------------------------*/

.clear{
	clear:both;
}

/* modern browsers */

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

/*------------------------------------------------------------
	フォームコンテンツ
  ------------------------------------------------------------*/

/* 共通項目 */

#formContent {
	width: 100%;
	padding: 0 0 10px 0;
}

#spMain{
	width: 100%;
	background:#fff;
}

.section {
	margin: 0 0 50px 0;
}

.section h2 {
	background: #778993;
	color: #FFFFFF;
	background: #778993 !important;
	text-align: left;
	padding: 12px 0 10px 10px !important;
	text-shadow: none !important;
	font-weight: bold;
	font-size: 17px;
	margin: 0 0 14px 0;
}

.section h2.biz {
	background: #f3f5f7 !important;
}
.section h2.biz img{
  vertical-align: bottom;
  /*margin: 0 10px;*/
  display: block;
  margin: 10px auto 0;
}

.section h2.biz img:first-child{
	margin-top: 0;
}

.section .inner {
	width: 94%;
	margin: 0 auto;
}

.section .inner p {
	font-size: 12px;
	margin: 0 0 15px 0;
}

.inner form {
	width: 100%;
	margin: 30px auto 30px auto;
}

.inner table {
	width: 100%;
	border-collapse: collapse;
	text-align: left;
	border: 1px solid #bababa;
	background: #FFFFFF;
	margin: 0 auto 30px auto;
}

.inner table th {
	border: 1px solid #bababa;
	background: #f3f5f7;
	padding: 5px 10px 5px 12px;
}

.inner table th span {
	font-weight: normal;
	font-size: 10px;
}

.inner table td {
	border: 1px solid #bababa;
	padding: 12px 12px;
}

.inner p.required {
	background: url(/common/img/chart_insight/form/sp/required_btn.gif) right center no-repeat;
	background-size: 33px auto;
	margin: 0;
	padding: 5px 0;
}

.inner p.no-required {
    background: none;
    background-size: 33px auto;
    margin: 0;
    padding: 5px 0;
}

.inner table td input[type="text"].input {
	width: 265px;
	height: 25px;
	padding: 0 0 0 10px;
}

.inner table td input[type="password"].input {
	width: 265px;
	height: 25px;
	padding: 0 0 0 10px;
}

.inner table td input.zip01 {
	width: 40px;
	height: 25px;
	padding: 0 0 0 10px;
}

.inner table td input.zip02 {
	width: 60px;
	height: 25px;
	padding: 0 0 0 10px;
}

.inner td span.search input[type="submit"] {
	border: 1px solid #c4c4c4;
	border-radius: 2px;
	width: 80px;
	height: 27px;
	background: url(/common/img/chart_insight/form/sp/search_btn_bg.png) repeat;
	text-align: center;
	color: #000;
	font-weight: bold;
	margin: 0 0 0 10px;
	line-height: 1;
	padding: 1px 0 0 0;
}

p.error {
	color: #F00;
	margin: 0 !important;
	font-weight: bold;
	font-size: 10px;
}

.inner p.btn {
	text-align: center;
}

.inner p.btn input[type="submit"] {
	border: 1px solid #bababa;
	border-radius: 2px;
	width: 300px;
	height:40px;
	background: url(/common/img/chart_insight/form/sp/btn_bg.png) repeat;
	text-align: center;
	color: #000;
	font-weight: bold;
}

.inner table .birth {
	margin: 0;
}

.inner table .birth select{
	height: 30px;
	font-size:12px;
	width: 70px;
	padding: 0 0 0 10px;
}

.inner table .birth .select{
	width: 55px;
}

.inner table .birth .month,
.inner table .birth .day{
	width: 50px;
	margin: 0 0 0 8px;
}

.select_btn input[type="submit"] {
	border: 1px solid #bababa;
	border-radius: 3px;
	width: 300px;
	height: 40px;
	background: url(/common/img/chart_insight/form/sp/btn_bg.png) repeat;
	text-align: center;
	color: #000;
	font-weight: bold;
	cursor: pointer;
}

.select_btn a {
	border: 1px solid #bababa;
	border-radius: 3px;
	width: 300px;
	background: url(/common/img/chart_insight/form/sp/btn_bg.png) repeat;
	text-align: center;
	color: #000;
	font-weight: bold;
	cursor: pointer;
	display: block;
	padding: 10px 0 7px 0;
	margin: 0 auto;
}

.select_btn button a {
	color: #000000;
}

.spMain {
	background:#fff;
}

.select_btn {
	width: 100%;
	margin: 0 auto;
}

p.regist_title {
	border-bottom: 1px solid #778993;
	padding: 0 0 2px 0;
	margin: 0 0 10px 0;
}

p.regist_title span {
	border-left: 3px solid #778993;
	padding: 0 0 0 10px;
	font-weight: bold;
}

.center {
	text-align: center;
	margin: 0 0 50px 0;
}

.center p.fontL {
	font-size: 17px;
}

.customer_info_title {
	width: 100%;
	position: relative;
}

.customer_info_title h2 {
	font-size: 15px !important;
	text-align: left;
	padding: 12px 0 10px 5px !important;
}

.customer_info_title img.logout {
	width: 72px;
	position: absolute;
	top: 9px;
	right: 5px;
}

.section .step_navi {
	width: 94%;
	padding: 10px 0 0 0;
	margin: 0 auto 15px auto;
}

.section .step_navi img {
	width: 100%;
	height: auto;
	margin: 0 auto;
}

p.support {
	width: 94%;
	margin: 0 auto;
	padding: 20px 0 0 0;
}

/* ここまで */



/* 「チャートインサイト会員登録・ログイン」ページ */

#login form {
	margin: 0;
}

#login .member table {
	width: 94%;
	margin: 0 auto 15px auto;
	border: none;
}

#login .member th {
	text-align: left;
	font-weight: normal;
	padding: 0 0 5px 0;
	background: none;
	border: none;
}

#login .member table th {
	text-align: left;
	font-weight: normal;
	padding: 0 0 5px 0;
}

#login .member table td input[type="text"].txt {
	width: 90%;
	height: 25px;
}

#login .member td {
	border: none;
	padding: 0;
}

#login .member p.error {
	color: #F00;
	margin: 0;
	font-weight: bold;
	font-size: 91%;
	text-align: left;
	padding: 0 10px;
}

#login .member td input[type="text"].input {
	width: 94%;
	height: 25px;
	margin: 0 auto 10px 0;
}

#login .member td input[type="password"].input {
	width: 94%;
	height: 25px;
	margin: 0 auto 10px 0;
	padding: 0 0 0 10px;
}

#login .loginArea p.login_title {
	font-weight: bold;
	font-size: 14px;
	text-align: center;
	border-bottom: 1px solid #bababa;
	background: #f3f5f7;
	padding: 10px 0;
}

#login .inner p.btn input[type="submit"] {
	border: 1px solid #bababa;
	border-radius: 2px;
	width: 280px;
	height:40px;
	background: url(/common/img/chart_insight/form/sp/btn_bg.png) repeat;
	text-align: center;
	color: #000;
	font-weight: bold;
}

#login .loginArea p.btn {
	text-align: center;
	padding: 0;
}

#login .member {
	border: 1px solid #bababa;
	background: #FFFFFF;
	margin-bottom: 30px;
}

#login .new_member {
	border: 1px solid #bababa;
	background: #FFFFFF;
}

#login .member p {
	text-align: left;
	padding: 0 0 0 10px;
}

#login .member p a {
	text-decoration: underline;
}

#login .new_member .explain {
	width: 94%;
	margin: 0 auto 15px auto;
}

#login .new_member .explain p {
	margin: 0 0 10px 0;
	word-break: break-all;
}

#login .new_member .explain dt {
	width: 60px;
	float: left;
}

#login .new_member .explain dd {
	padding: 0 0 0 60px;
	display: block;
}

#login .regist_contact p.regist_title {
	border-bottom: 1px solid #778993;
	padding: 0 0 2px 0;
	margin: 0 0 10px 0;
}

#login .regist_contact p.regist_title b {
	border-left: 3px solid #778993;
	padding: 0 0 0 10px;
}

#login .inner .first {
	margin: 0 0 20px 0;
}

#login .inner .first p {
	margin: 0 0 10px 0;
}

#login .inner .first dt {
	width: 60px;
	float: left;
}

#login .inner .first dd {
	padding: 0 0 0 60px;
	display: block;
}

#login .officeArea {
	padding: 20px 0;
	background: #f3f5f7;
}

#login .office .office_01 {
	width: 280px;
	margin: 0 auto;
	border-bottom: 1px dashed #d9d9d9;
}

#login .office .office_02 {
	width: 280px;
	margin: 15px auto 0 auto;
}

#login .office .office_02 p {
	padding: 0;
}


/* 「メールアドレス送信」ページ */

#mail_input .inBox {
	background: #FFFFFF;
	border: 1px solid #bababa;
	overflow: scroll;
	-webkit-overflow-scrolling: touch;
	padding: 10px;
	height: 100px;
}

#mail_input .inBox p {
	margin: 0 0 10px 0;
}

#mail_input p.checkBox {
	text-align: center;
	padding: 10px 0 0 0;
}

#mail_input .inner table th {
	border: 1px solid #bababa;
	background: #f3f5f7;
	padding: 0 10px;
	vertical-align: middle;
	width: 200px;
}

#mail_input form {
	margin: 0;
}


/* 「チャートインサイト　お客様情報」ページ */

#customer_info .section {
	margin: 0 0 30px 0;
}

#customer_info .chart_look {
	border: 1px solid #bababa;
	background: #FFFFFF;
	margin: 0 0 30px 0;
}

#customer_info .chart_look p {
	text-align: center;
	font-weight: bold;
	background: #f3f5f7;
	padding: 10px 0;
	border-bottom: 1px solid #bababa;
}

#customer_info .chart_look ul {
	width: 280px;
	margin: 0 auto 15px auto;
}

#customer_info .chart_look ul li {
	list-style: none;
  position: relative;
	width: 280px;
	margin: 0 0 15px 0;
}

#customer_info .section_change {
	margin: 0 0 30px 0;
}

#customer_info .section_change .inner {
	width: 100%;
}

#customer_info .section_change p.regist_title {
	width: 94%;
	border-bottom: 1px solid #778993;
	padding: 0 0 2px 0;
	margin: 0 auto 15px auto;
}

#customer_info .section_change p.regist_title span {
	border-left: 3px solid #778993;
	padding: 0 0 0 10px;
	font-weight: bold;
}

#customer_info .section_change .change_btn_area {
	margin: 0 0 10px 0;
}

#customer_info .section_change .change_btn_area ul {
	width: 280px;
	margin: 10px auto 0;
}

#customer_info .section_change .change_btn_area ul li {
	list-style: none;
	width: 280px;
	margin: 0 0 15px 0;
}

#customer_info .section_change .change_btn_area ul li:last-child {
	margin: 0;
}


/* 「クレジットカード情報入力」ページ */

#credit_input .inner table .birth .month {
	width: 50px;
	margin: 0;
}

#credit_input .inner table .birth select{
	height: 30px;
	font-size:12px;
	width: 50px;
	padding: 0 0 0 10px;
}

#credit_change .inner table .birth select{
	height: 30px;
	font-size:12px;
	width: 50px;
	padding: 0 0 0 10px;
}


/* 「メールアドレス変更」ページ */

#mail_change .inner table td p {
	margin: 0;
}

/* ご登録のない方（個人会員登録） */

#login .new_member p a {
    text-decoration: underline;
}

#login .first p a {
    text-decoration: underline;
}


/* 会員種別テーブル */
#accountTab{
  margin:10px auto 0;
  display: table;
  width:94%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-top:solid 2px #000;
  border-left:solid 2px #000;
}
#accountTab li{
  width: 50%;
  display: table-cell;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border-bottom:solid 2px #000;
  border-right:solid 2px #000;
}
#accountTab li a{
  display: block;
  text-align: center;
  font-weight: bold;
  background-color: #000;
  padding: 1em;
  color: #fff;
}
#accountTab li.active a{
  background-color: #fff;
  color: #000;
}
.accountBody{
  margin-top:10px;
}
.accountBody table + *{
  margin-top:10px !important;
}
.accountBody.hide{display: none;}

table.account_class a {
    text-decoration: underline;
}

table.account_class {
	width: 94%;
	margin: 0 auto;
	border-collapse: collapse;
}

table.account_class th {
	background: #f4f5f7;
	vertical-align: middle;
}

table.account_class th ,
table.account_class td {
	padding: 15px 0;
	text-align: center;
	border: 1px solid #b8b9bb;
}

table.account_class .group {
	width: 13%;
}

table.account_class .service {
	width: 25%;
}

table.account_class .non ,
table.account_class .personal ,
table.account_class .enterprise {
	width: 20%;
}

table.account_class th img {
	vertical-align: baseline;
	width: 83%;
	height: auto;
}

p.account_class_note {
	width: 94%;
	margin: 0 auto;	
}


/* 個人情報 */

#mail_input .inBox {
	margin: 0 0 10px;
}

#mail_input .inBox p.sttl {
	margin: 15px 0;
}

#mail_input .inBox ol {
	padding: 0 0 5px 20px;
}

#mail_input .inBox ol li {
	padding: 0 0 5px 0;
	list-style-type: decimal;
}

#mail_input .inBox ol ol {
	list-style-type: none;
	text-indent:-2em;
}

#mail_input .inBox ol ol ol {
	list-style-type: lower-roman;
	text-indent:0;
	margin-left:0;
}

#mail_input .inBox a {
    text-decoration: underline;
}

#privacy p.sttl {
	margin: 15px 0;
}

#privacy ol {
	padding: 0 0 5px 17px;
}

#privacy  ol li {
	padding: 0 0 5px 0;
	list-style-type: decimal;
}

#privacy ol ol {
	list-style-type: none;
	text-indent:-2em;
}

#privacy ol ol ol {
	list-style-type: lower-roman;
	text-indent:0;
	margin-left:0;
}

#privacy li a {
    text-decoration: underline;
}


/* 規約 */

#mail_input .inBox ul {
	padding: 0 0 0 15px;
	list-style-type: none;
}

#mail_input .inBox ul li {
	padding: 0 0 5px 0;
}

#mail_input .inBox ul li a {
    text-decoration: underline;
}



/* 特定商取引 */

.checkBox {
    text-align: center;
}

.checkBox a {
    text-decoration: underline;
}



/* スマホ専用設定 制御用 */
span.sp_break{
    display:block;
}

/* 規約リンク */
.kiyaku {
	margin:10px 0px 0px 20px;
}
.kiyaku a {
	text-decoration:underline;
}
.kiyaku a:hover {
	text-decoration:none;
}