.sub-container {
    width: 100%;
}

#middle-content .links {
    display:flex;
    justify-content:center;
}

#middle-content .links .link {
    color:#0088D0;
    font-size:1vw;
    text-decoration: underline;
    margin:0 1.25vw 0 1.25vw;
}

header {
    position: relative;
    margin-bottom: 5.5714vw;
}

header .mg {
    width:100%;
}

header .title {
    position:absolute;
    top:0.7142vw;
    left:0.7142vw;
    z-index: 1;
    width:20%;
}

header .authorization {
    position:absolute;
    top:0.7142vw;
    right:0.7142vw;
    z-index: 1;
    color:#444444;
    font-size:1.071vw;
}

header .detail {
    position:absolute;
    z-index: 1;
    top: 33%;
    left: 0;
    background-color:#F8F6F1;
    width:34%;
    height:33%;
    opacity:0.9;
    color:#0088D0;
    padding-left: 4%;
    padding-top: 3.5%;
}

header .detail .p1 {
    font-size:1.714vw;
}

header .detail .p2 {
    font-size:2.285vw;
    background-image: linear-gradient(transparent 50%, #FFFF00 50%);
}

header .icon {
    position:absolute;
    z-index: 2;
    top: 31%;
    left: 28%;
    width:7.236%;
}

header .detail .logo {
    width:76.87%;
    margin-top:2.08%;
}

#title2-wrap {
    width:100%;
    text-align:center;
}

#title2-wrap .title2 {
    display:flex;
    justify-content: center;
    align-items: center;
    font-size:2vw;
    color:#FF8A00;
}

#title2-wrap .side_img {
    width : 3.7857vw;
}

#title2-wrap .time {
    font-size: 4.9285vw;
}

#title2-wrap .timer_icon {
    width : 3.322vw;
}

#title2-wrap .detail {
    font-size: 1.7142vw;
}

#title3-wrap {
    text-align:center;
    margin-top: 5.2142vw;
    margin-bottom: 1.1428vw;
}

#title3-wrap .logo img{
    width: 9.465vw;
    height: 7.6042vw;
}

#title3-wrap .title3 {
    font-size:2vw;
    color:#FF8A00;
}

#form {
    position:relative;
    margin-top: 5.7142vw;
    margin-bottom: 1.7857vw;
    background-color:#FFFFFF;
}

#form .step{
    display:inline;
    position:absolute;
    top: -2.9107vw;
    left: calc(50% - 25vw);
    width: 50.0178vw;
    height: 5.8214vw;
    z-index:5;
}

#form .step_sp {
    display:none;
}

.c-form table {
    width: 70%;
}


.c-form table tr th {
    width: 40%;
    text-align:center;
    vertical-align:top;
}

#feature-header-wrap {
    text-align:center;
}

#feature-header-wrap .logo img{
    width: 17.7057vw;
    height: 2.5471vw;
}

#feature-header-wrap .description{
    font-size: 1.7142vw;
}

#feature-wrap {
    display:flex;
    justify-content:space-between;
    margin-top: 6.666vw;
}

.feature {
    width:32.2%;
    height: 21.4285vw;
    background-color:#FFFFFF;
    padding:3.275vw 1.8571vw 1.8571vw 1.8571vw;
}

.feature .icon{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 3.7143vw;
}

.feature .icon #ic_feature1 {
    width: 3.52vw;
}

.feature .icon #ic_feature2 {
    width: 3.7857vw;
}

.feature .icon #ic_feature3 {
    width: 4.1642vw;
}


.feature .title{
    height: 2.0714vw;
    margin-top: 1.7364vw;
    color: #0088D0;
    font-size: 1.4285vw;
    text-align:center;
}

.feature .detail{
    margin-top: 1.4678vw;
    color:#444444;
    font-size: 1.1428vw;
}

.buttons {
    position:relative;
    display:flex;
    justify-content:center;
}

.register-button{
    margin-top: 3.7857vw;
    margin-bottom: 9.4285vw;
    display:flex;
    width:100%;
    height: 7.2142vw;
    background-color:#71CAEF;
    text-align:center;
    justify-content: center;
    align-items: center;
    font-size: 1.7142vw;
    color:#FFFFFF;
    border-radius: 0.5714vw;
}

.register-button:before {
    position:absolute;
    background-image: url(/img/user/ic_bt_register.png);
    background-size: cover;
    content:"";
    width: 2.5321vw;
    height: 2.5321vw;
    left: calc(50% - 9vw);
}

#lp-footer {
  display: block;
  position: relative;
  width: 100%;
  background-color: #EFECE5;
}

#lp-footer .wrap-content {
  display: flex;
  padding-top: 3.5714vw;
  padding-bottom: 0.0971vw;
}

#lp-footer .wrap-content .fotter-title {
  padding-left: 1.2142vw;
  padding-right: 6.6428vw;
  font-size: 1vw;
  color: #444444;
}

#lp-footer .wrap-content .fotter-title .emphasis {
  font-size: 1.5714vw;
}

#lp-footer .wrap-content .links {
  font-size: 1vw;
  color: #444444;
  margin-top:0.7142vw
}

#lp-footer .wrap-content .links .link{
    margin-bottom: 1.0714vw;
}

#lp-footer .cop{
  display:flex;
  width: 100%;
  color: #444444;
  background-color: #DDD9D0;
  text-align: center;
  height:4.6428vw;
  justify-content: center;
  align-items: center;
}

.sub-container .sub-title {
    text-align:center;
    font-size:1.285vw;
}

.wrap-content {
    width:77.1428vw;
    margin:0 auto;
}

#message-finish {
    font-size: 2.2857vw;
    color: #FF8A00;
}

@media (max-width: 768px) {
    .wrap-content {
        width:100%;
    }
    
    .form-field {
        adding: 0vw 0vw 0vw 0vw;
    }
    
    header .mg {
        width: 100%;
        height: 50.8666666666667vw;
        object-fit: cover;
        object-position: 85% 0%;
    }
    
    header .title {
        width: 38.7786vw;
    }
    
    header .authorization {
        font-size:2.9333vw;
    }
    
    header .detail {
        left : 7.3786vw;
        top: 12.6213vw;
        width: 85.24vw;
        height: 32.56vw;
        padding-left: 14.4906vw;
        padding-right: 14.4906vw;
    }
    
    header .detail .p1 {
        font-size:3.3333vw;
    }
    
    header .detail .p2 {
        font-size:4.8vw;
    }
    
    header .icon {
        position:absolute;
        left: 78.4vw;
        top: 5.7333vw;
        width:13.6vw;
    }
   
    header .detail .logo {
        width:56.616vw;
        margin-top:2.08%;
    }
    
    #title2-wrap {
        margin-bottom : 6.4vw;
    }
    
    #title2-wrap .title2 {
        font-size:4.8vw;
        display: none;
    }
    
    #title2-wrap .side_img {
        width : 9.5vw;
    }
    
    #title2-wrap .time {
        font-size: 12.8vw;
    }
    
    #title2-wrap .timer_icon {
        width : 8.6133vw;
    }
    
    #title2-wrap .detail {
        font-size: 4.8vw;
    }
    
    #form .step {
        display:none;
    }
    
    #form .step_sp {
        display:inline;
        position:absolute;
        top: -6.1826vw;
        left: calc(50% - 47.25465vw);
        width: 94.5093vw;
        height: 12.3653vw;
        z-index:5;
    }
    
    .c-form table {
        width: 100%;
    }
    
    .c-form table tr th {
        width: 100%;
        text-align:left;
    }
    
    .login-social {
        padding: 0 4.2133vw 0 4.2133vw;
    }
    
    #middle-content .links {
        margin-top: 9.010vw;
    }
    
    #middle-content .links .link {
        font-size: 3.4666vw;
        margin:0 3.2666vw 0 3.2666vw;
    }
    
    #title3-wrap {
        text-align:center;
        margin-top: 21.52vw;
        margin-bottom: 4.2666vw;
    }
    
    #title3-wrap .logo img{
        width: 24.8664vw;
        height: 20.0053vw;
    }
    
    #title3-wrap .title3 {
        font-size:4.8vw;
        color:#FF8A00;
    }
    
    #feature-header-wrap .logo img{
        width: 66.1013vw;
        height: 9.5093vw;
    }
    
    #feature-header-wrap .description{
        font-size: 4.2666vw;
    }

    #feature-wrap {
        display:flex;
        justify-content: center;
        flex-flow: column;
        gap: 2.428vw 0;
    }
    
    .feature {
        width: 94.5945vw;
        height: 54.6666vw;
        margin: 0 auto;
        padding:6.4vw 5.6vw 1.8571vw 5.6vw;
    }

    .feature .icon {
        height: 13.8666vw;
    }

    .feature .icon #ic_feature1 {
        width: 13.1866vw;
    }
    
    .feature .icon #ic_feature2 {
        width: 14.1333vw;
    }
    .feature .icon #ic_feature3 {
        width: 15.5466vw;
    }
    
    .feature .title{
        height: 6.4vw;
        margin-top: 2.9733vw;
        color: #0088D0;
        font-size: 4.2666vw;
        text-align:center;
    }
    
    .feature .detail{
        margin-top: 2.9333vw;
        font-size: 3.4666vw;
    }
    
    .register-button{
        margin-top: 3.7857vw;
        margin-bottom: 9.4285vw;
        display:flex;
        width:93.3333vw;
        height: 19.2vw;
        background-color:#71CAEF;
        text-align:center;
        justify-content: center;
        align-items: center;
        font-size: 4.2666vw;
        color:#FFFFFF;
        border-radius: 2vw;
    }
    
    .register-button:before {
        width: 6.7866vw;
        height: 6.7866vw;
        left: calc(50% - 22vw);
    }
    
    #lp-footer .wrap-content {
        display:flex;
        flex-flow: column;
    }
    
    #lp-footer .wrap-content .fotter-title {
        font-size: 2.9333vw;
    }
    
    #lp-footer .wrap-content .fotter-title .emphasis {
        font-size: 4.2666vw;
    }
    
    #lp-footer .wrap-content .links {
        margin-top: 6.4vw;
        padding-left: 1.2142vw;
    }
    
    #lp-footer .wrap-content .links .link{
        font-size: 3.466vw;
    }
    
    #lp-footer .cop{
        height: 12.8vw;
        font-size: 2.933vw;
    }
}
