html {
    background: #eeeeee;
    -webkit-font-smoothing: antialiased;
    margin: 0;
    padding: 0; 
}
body {
    font-family: Yugo, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 15px;
    line-height: 1.5;
    margin: 0;
    padding: 0;
}
button, input, select, textarea {
font-family : inherit;
font-size : 100%;
}
h1,h2,h3,h4,p{
    margin: 0;
    padding: 0;
}
p {
    font-size:15px;
    line-height:1.67;
    color:#000000;
    margin:10px 0;
}
p.error {
    color:#ff0000;
/*    display:none; */
}
hr {
    margin: 30px 0;
    border:0;
    height:1px;
    background-color: #e9e9e9;
}
header{
    width:100%;
    height:60px;
    background: #1a2c5a;
    margin: 0;
    padding: 0;
}
header div.main {
    max-width:1200px;
    height:60px;
    margin:0 auto;
}
header div.main img{
    float:left;
    margin-top:13px;
    margin-right:15px;
}
header div.main p{
    color: #ffd500;
    font-weight: bold;
    font-size:20px;
    line-height: 60px;
}
div#footer{
    padding:30px 0;
    text-align: center;
    font-size: 11px;
    background-color: #eeeeee;
}
div#content {
    width:1000px;
    height: auto;
    background: #ffffff;
    margin: 84px auto 0 auto;
}
div#inner{
    width:840px;
    margin:0 auto;
}
h1 {
    background: #dddddd;
    text-align: center;
    font-size:20px;
    font-weight: normal;
    color:#1a2c5a;
    line-height:60px;
    height:60px;
}
h2 {
    font-size:24px;
    text-align: center;
    font-weight: bold;
    color:#1a2c5a;
    margin-bottom:30px;
}
h3{
    font-size:18px;
    font-weight:normal;
}
h4 {
    font-size:15px;
    font-weight: bold;
    color:#1a2c5a;
    margin-bottom:20px;
}
/* ステップインジケータ */
div#step{
    width:610px;
    height:40px;
    margin:69px auto 80px auto;
    position: relative;
}
div#step div.oval {
    height:40px;
    width:40px;
    background: #ffffff;
    border-radius: 20px;
    border:1px solid #cccccc;
    position: absolute;
    top:0;
    
    text-align: center;
    line-height:40px;
    font-size:20px;
    color:#1a2c5a;
    font-weight: 500;
}
div#step div.oval.fill {
    color:#ffffff;
    background: #1a2c5a;
    border:#1a2c5a;
}
div#step div.line{
    width:100%;
    height:3px;
    background: #eaeaea;
    position: absolute;
    top:19px;
}
/* Oval Position */
div#step div.oval.s1 {
    left:0;
}
div#step div.oval.s2 {
    left:190px;
}
div#step div.oval.s3 {
    right:190px;
}
div#step div.oval.s4 {
    right:0;
}
div#step div.oval::after {
    color:#000000;
    font-size:14px;
    line-height: 14px;
    font-weight: normal;
    position: absolute;
    top:53px;
    left:-12px;
    width:64px;
}
div#step div.oval.s1::after {
    content: "ステップ1";
}
div#step div.oval.s2::after {
    content: "ステップ2";
}
div#step div.oval.s3::after {
    content: "ステップ3";
}
div#step div.oval.s4::after {
    content: "申請完了";
}
/* 入力ボックス */
label {
    font-size:15px;
}
input[type="text"],select{
    margin-left:10px;
    margin-right:20px;
    margin-top:5px;
    margin-bottom:5px;
    padding:0 10px;
    height:36px;
    font-size:15px;
}
textarea {
    resize: vertical;
    margin-left:10px;
    margin-right:20px;
    margin-top:5px;
    margin-bottom:5px;
    padding:5px 10px;
    font-size:15px;
    line-height: 1.2;
}
input[type="number"]{
    height:36px;
    width:60px;
    padding:0 10px;
    margin-right:10px;
    margin-left:20px;
    font-size:15px;
}
input[type="checkbox"]{
    width:16px;
    height: 16px;
    border:1px solid red;
    border-radius: 0;
    margin: 0 5px 0 0;
    padding: 0;
}
button[type="submit"]{
    display:block;
    width:250px;
    height:60px;
    margin:40px auto 70px auto;
    background-color: #1a2c5a;
    color:#ffffff;
    font-size:18px;
    cursor: pointer;
}
/* step2固有 */
#step2_situation {
    margin-left:21px;
}
#step2_situation input[type="checkbox"]{
    margin-left:-21px;
}
/* step4固有 */
ol.step4{
    padding-left:30px;
    padding-right:30px;
    margin-bottom:60px;
}
ol.step4 li {
    padding-left:10px;
    margin-bottom:30px;
    font-size:15px;
    line-height:25px;
}
.apology {
    width: 80%;
    font-family: Yugo, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-size: 21px;
    line-height: 1.2;
    border: solid 1px #707070;
    margin: 0 auto 80px;
    padding: 50px;
    position: relative;
}
.apology h2 {
    font-size: 38px;
    color: #1a2c5a;
    font-weight: bold;
    text-align: center;
    margin-bottom: 30px;
}
.apology h3 {
    font-size: 30px;
    color: #1a2c5a;
    font-weight: bold;
    text-align: center;
    margin-bottom: 40px;
}
.apology_text {
    margin-bottom: 50px;
}
.apology p {
    font-size: 17px;
    color: #1a2c5a;
    line-height: 1.2;
    font-weight: bold;
    text-align: left;
}
.apology p span{
    color: #da0000;
}
.apology_bnr {
    text-align: center;
}
