/*--------------------------------------*/

body,input,select{
font-size:13px;
color:#333333;
font-family:メイリオ, Meiryo, MS P Gothic, Verdana, Arial, Helvetica, sans-serif;
text-align:left;
scrollbar-arrow-color:#000000;
scrollbar-face-color:#e0dddd;
scrollbar-3dlight-color:#f0f0f0;
scrollbar-darkshadow-color:#f0f0f0;
scrollbar-highlight-color:#ffffff;
scrollbar-shadow-color:#ffffff;
scrollbar-track-color:#ffffff;
}

body{
margin-top:0px;
margin-left:0px;
margin-right:0px;
margin-bottom:120px;
overflow-y:scroll;
background-color:#ffffff;
height:100%;
}

th,td{
text-align:left;
vertical-align:top;
}

a:link{color:#0000ff;text-decoration:underline;border:0px;}
a:visited{color:#0000ff;text-decoration:underline;border:0px;}
a:active{color:#0000ff;text-decoration:underline;border:0px;}
a:hover{color:#cccccc;text-decoration:none;border:0px;}

a img{border-style:none;}

.clearfix:after {
content:".";
display:block;
clear:both;
height:0;
visibility:hidden;
}

.clearfix {
min-height:1px;
}

* html .clearfix {
height:1px;
/*\*//*/
height: auto;
overflow: hidden;
/**/
}

/*-------------------ロゴとページ見出しの設定-------------------*/

#toplogo{
margin:0 auto;
padding:20px 0 10px 0;
width:750px;
border-bottom:1px solid #dddddd;
}

#toplogo > a{float:left;}
#toplogo ul{float:right;}
#toplogo ul li{padding:2px 0 3px 0;}

h1{
margin:40px auto 0 auto;
padding:10px 0;
width:748px;
background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #ebebeb), color-stop(0.19, #fff));
background: -webkit-linear-gradient(top, #fff 19%, #ebebeb 100%);
background: -moz-linear-gradient(top, #fff 19%, #ebebeb 100%);
background: -o-linear-gradient(top, #fff 19%, #ebebeb 100%);
background: -ms-linear-gradient(top, #fff 19%, #ebebeb 100%);
background: linear-gradient(to bottom, #fff 19%, #ebebeb 100%);
border:1px solid #bbbbbb;
-moz-border-radius:2px;
-webkit-border-radius:2px;
border-radius:2px;
}
h1 span{
display:block;
margin:0 20px;
padding:2px 15px;
font-size:16px;
font-weight:bold;
border-left:4px solid #1864B7;
}

/*-------------------ステップフローの設定-------------------*/

ul#step_flow{/*フロー全体*/
margin:30px auto 50px auto;
width:750px;
}

ul#step_flow li{/*フローの1つ分*/
position:relative;
float:left;
margin-left:39px;
width:151px;
height:56px;
}
ul#step_flow li:first-child{margin-left:0;}/*最初のフロー*/
ul#step_flow li::after{/*三角のところ*/
content:"";
height:0;
position:absolute;
top:8px;
left:130px;
width:39px;
height:39px;
background-color:#ffffff;
-webkit-transform:rotate(-45deg);
transform:rotate(-45deg);
border-right:1px solid #bbbbbb;
border-bottom:1px solid #bbbbbb;
-moz-border-radius:2px;
-webkit-border-radius:2px;
border-radius:2px;
}

ul#step_flow li span{/*フローの1つ分の装飾*/
position:relative;
display:table-cell;
padding-left:10px;
width:140px;
height:54px;
color:#bbbbbb;
line-height:17px;
text-align:center;
vertical-align:middle;
border:1px solid #bbbbbb;
border-right:none;
-moz-border-radius:3px;
-webkit-border-radius:3px;
border-radius:3px;
z-index:999;
}

ul#step_flow li.step_active::after{/*現在地の部分の三角*/
top:8px;
left:130px;
width:40px;
height:40px;
background-color:#1864B7;
border:none;
}
ul#step_flow li.step_active span{/*現在地の部分*/
width:141px;
height:56px;
color:#ffffff;
background-color:#1864B7;
border:none;
}

ul#step_flow li#step_goal{width:180px;}/*最後の部分*/
ul#step_flow li#step_goal::after{content:none;}
ul#step_flow li#step_goal span{width:180px;border-right:1px solid #bbbbbb;}
ul#step_flow li#step_goal_active span{width:180px;height:56px;color:#ffffff;background-color:#1864B7;border:none;}/*最後の部分の現在地*/

/*-------------------見出しの設定-------------------*/

.formtitle{
margin:40px auto 0 auto;
padding:10px 0;
width:750px;
font-size:16px;
font-weight:bold;
border-bottom:3px solid #dddddd;
}

/*-------------------テーブルとフォームと水平線の設定-------------------*/

table{
margin:20px auto 0 auto;
width:750px;
}

table.billing {
margin:20px auto 0 auto;
width:750px;
table-layout:fixed;
}

table th,table td{
vertical-align:middle;
line-height:19px;
border:1px solid #bbbbbb;
}

table th{padding:5px 10px;width:260px;font-weight:bold;background-color:#F8F8F8;}
table.billing th{width:unset;}
div.table-footer{
    display: flex;
    margin:10px auto;
    width:750px;
    justify-content: space-between;
}

table th span{
margin:0 10px 0 0;
padding:1px 4px;
color:#ffffff;
font-size:10px;
font-weight:normal;
text-align:center;
background-color:#C02D29;
-moz-border-radius:2px;
-webkit-border-radius:2px;
border-radius:2px;
}
table th span.displaynone{
display:block;
float:left;
padding:0;
width:28px;
height:17px;
border:none;
background-color:transparent;
}

table th.title{
background-color:#1864B7;
color:#FFF;
}


table td{padding:5px 20px;}

input[type=text],input[type=password],textarea,select{
margin:5px 0;
padding:2px 3px;
border:1px solid #bbbbbb;
box-shadow: inset 1px 1px 0 rgba(0,0,0,0.2);
-moz-box-shadow: inset 1px 1px 0 rgba(0,0,0,0.2);
-webkit-box-shadow: inset 1px 1px 0 rgba(0,0,0,0.2);
background-color:#ffffff;
}

/*-------------------テーブルとフォームと水平線の設定-------------------*/

table.inner{
margin:20px auto 0 auto;
width:650px;
}

table.inner th{padding:5px 10px;width:150px;font-weight:bold;background-color:#F8F8F8;}




input[type=text]:focus,input[type=password]:focus,textarea:focus{background-color:#FAFAD2;}

input[type=text],input[type=password]{width:417px;}
input[type=text].medium,input[type=password].medium{width:150px;}
input[type=text].medishort{width:70px;}
input[type=text].short{margin:0 5px 0 0;width:25px;}

input[type=checkbox],input[type=radio]{width:18px;height:18px;}

select{width:220px;}
select.short{margin:0 5 0 0;width:78px;}

input[type=checkbox]:hover,
input[type=radio]:hover,
select:hover,
label:hover{cursor:pointer;}

hr{margin:10px auto;width:750px;border:none;border-bottom:1px solid #cccccc;}

/*-------------------NTT回線名義人などチェック欄とテーブル-------------------*/

ul#ntt_check{
margin:20px auto 0 auto;
width:748px;
border:1px solid #bbbbbb;
}
ul#ntt_check li{position:relative;border-top:1px dotted #bbbbbb;}
ul#ntt_check li:first-child{border-top:none;}
ul#ntt_check li input[type=checkbox]{position:absolute;top:4px;left:10px;}
ul#ntt_check li label{display:block;padding:10px 0 10px 40px;}
ul#ntt_check li input[type=checkbox]:checked + label{background-color:#FAFAD2;}

table#ntt_form th{width:130px;}
table#ntt_form tr:first-child th:first-child{padding:5px 0;width:130px;text-align:center;background-color:#FAFAD2;}

/*--------------------個人情報同意------------------*/

p.consentp{margin:20px auto;width:750px;line-height:21px;}
p.consentp a{font-size:14px;font-weight:bold;}

.consentprg{
margin:0 auto 30px auto;
padding:10px 20px 30px 20px;
width:708px;
height:80px;
text-align:justify;
text-justify:distribute;
line-height:19px;
overflow-y:scroll;
border:1px solid #bbbbbb;
}

.consentprg p{margin:7px 10px 0 10px;}

.consentprg p.consent1{margin:7px 0 0 0;font-size:14px;font-weight:bold;}
.consentprg p.title{margin:25px 0 0 0;font-weight:bold;}

.consentprg ol{margin:15px 20px 0 40px;}
.consentprg ol li{margin:7px 0 0 0;position:relative;}
.consentprg ol li span{position:absolute;top:0;left:-30px;}
.consentprg ol li ol{margin:10px 20px 0 30px;}
.consentprg ol li ol li{list-style-type:decimal;list-style-position:outside;}

.consentprg table{width:600px;}
.consentprg table th{width:100px;}

p.consentdoui{
position:relative;
margin:20px auto;
width:750px;
font-weight:bold;
border:1px solid #bbbbbb;
}
p.consentdoui input[type=checkbox]{position:absolute;top:4px;left:10px;}
p.consentdoui label{display:block;padding:10px 0 10px 40px;}
p.consentdoui input[type=checkbox]:checked + label{background-color:#FAFAD2;}

/*--------------------------------------*/

#sendbtn{
margin:60px 0 0 0;
text-align:center;
}

#sendbtn input{
margin:0 10px;
padding:8px 20px;
color:#ffffff;
font-size:14px;
font-weight:bold;
border:none;
background-position:center;
background-repeat:no-repeat;
-moz-border-radius:15px;
-webkit-border-radius:15px;
-o-border-radius:15px;
-ms-border-radius:15px;
border-radius:15px;
-moz-box-shadow:0 0 7px #aaaaaa;
-webkit-box-shadow:0 0 7px #aaaaaa;
box-shadow:0 0 7px #aaaaaa;
-webkit-transition:all 0.2s ease;
-moz-transition:all 0.2s ease;
-o-transition:all 0.2s ease;
-ms-transition:all 0.2s ease;
transition:all 0.2s ease;
}

#sendbtn input:hover{
filter:alpha(opacity=70);
-moz-opacity: 0.7;
opacity: 0.7;
}

#sendbtn input[type=submit]{background-image:url(img/sendbg.jpg);}
#sendbtn input[type=reset]{background-image:url(img/resetbg.jpg);}

/* 注意書きは赤字 */
.notice_alert{
color:#F00;
font-size:12px;
}

/* 入力欄の別サイズ 2015/01/01が収まるサイズ */
input[type=text].short-date{width:80px;}
input[type=password].short-date{width:80px;}

/* 無効なリンク */
a.disabled
{
    cursor: pointer;
    text-decoration: none;
    pointer-events: none;
    color: #333;
}
