@font-face {
  font-family: roboto;
  src: url(../roboto.ttf);
}


body {
    margin: 0;
    font-family: roboto;
}

.ach_header {
    width: 100%; 
    background-color: #454545; 
    position: fixed; 
    z-index: 100;
    display: flex;
    flex-direction: row;
}

.ach_logo {
    height: 60px; 
    padding: 12px;
}

.ach_page_content {
    width: 100%; 
    height: fit-content; 
    padding-top: 60px;
}


.ach_page_content_first {
    width: 100%; 
    height: 100vh; 
    background-color: #121212;
}

.ach_page_t1 {
    margin: 0; 
    width: 100%; 
    color: #efefef; 
    text-align: center; 
    padding-top: 40vh; 
    font-size: 48px; 
    font-weight: 300;
    z-index: 5;
    position: relative;
}

.ach_page_t2 {
    margin: 0; 
    width: 100%; 
    color: #efefef; 
    text-align: center; 
    padding-top: 8px; 
    font-size: 24px;
    z-index: 5;
    position: relative;
}

.ach_page_btn {
    opacity: 0.7; 
    margin: 48px; 
    background-color: #565656; 
    width: fit-content; 
    border-radius: 16px; 
    margin-left: auto; 
    margin-right: auto;
    z-index: 5;
    position: relative;
}

.ach_page_btn_t1 {
    margin: 0; 
    color: #efefef; 
    text-align: center; 
    padding: 8px 16px 8px 16px; 
    cursor: pointer;
}

.ach_page_content_2 {
    width: 100%; 
    height: fit-content; 
    padding-bottom: 2vh; 
    background-color: #242424;
}

.ach_page2_t1 {
    margin: 0; 
    width: fit-content; 
    color: #efefef; 
    padding-top: 10vh; 
    padding-left: 48px; 
    font-size: 42px; 
    font-weight: 300;
}

.ach_page2_t2 {
    margin: 0; 
    width: fit-content; 
    color: #efefef; 
    padding-top: 24px; 
    padding-left: 48px; 
    font-size: 20px;
}

.ach_page_subcontent2 {
    width: fit-content; 
    display: flex;
    flex-direction: column; 
    padding: 16px; 
    margin-left: auto; 
    margin-right: auto;
}

.ach_content_works {
    width: fit-content; 
    margin: 16px; 
    padding: 24px; 
    flex-direction: row; 
    display: flex;
}

.ach_content_img {
    width: 80px; 
    height: 80px;
}

.ach_content_exp {
    margin-left: 16px;
}

.ach_content_title {
    margin: 0; 
    width: fit-content; 
    color: #efefef; 
    font-size: 36px; 
    font-weight: 300;
}

.ach_content_info {
    margin: 0;
    width: fit-content;
    color: #efefef;
    font-size: 18px;
    padding-top: 8px;
}

.ach_page_content3 {
    width: 100%;
    height: fit-content; 
    padding-bottom: 2vh; 
    background-color: #242424;
}

.ach_page_contact {
    text-align: left; 
    margin: 0; 
    width: -webkit-fill-available; 
    color: #efefef; 
    padding-top: 10vh; 
    padding-left: 64px; 
    padding-right: 64px; 
    font-size: 42px; 
    font-weight: 300;
}

.ach_page_contact1 {
    text-align: left;   
    margin: 0; 
    width: -webkit-fill-available;
    color: #efefef;
    padding-top: 24px; 
    padding-left: 64px; 
    padding-right: 64px; 
    font-size: 20px;
}

.ach_page_contact2 {
    text-align: left; 
    margin: 0; 
    width: -webkit-fill-available; 
    color: #efefef; 
    padding-top: 12px; 
    padding-left: 64px; 
    padding-right: 64px; 
    font-size: 16px;
}

.ach_page_form {
    margin-top: 64px; 
    margin-left: auto; 
    margin-right: auto; 
    display: flex; 
    flex-direction: column;
}

#ach_form_name {
    padding: 12px; 
    font-size: 18px;
    border-color: transparent;
}

#ach_form_mail {
    padding: 12px; 
    margin-top: 8px; 
    font-size: 18px;
    border-color: transparent;
}

#ach_form_tel {
    padding: 12px; 
    margin-top: 8px; 
    font-size: 18px;
    border-color: transparent;
}

#ach_form_msg {
    padding: 12px; 
    margin-top: 8px; 
    font-size: 18px;
    border-color: transparent;
}

#ach_form_btn {
    padding: 12px; 
    margin-top: 16px;
    height: 50px;
    font-size: 16px;
}

.ach_page_footer {
    width: 100%; 
    height: fit-content; 
    background-color: #101010; 
    display: flex; 
}

.ach_footer_left {
    width: 50%; 
    display: flex; 
    flex-direction: column;
}

.ach_footer_item {
    display: flex; 
    flex-direction: row; 
    padding-top: 32px; 
    padding-left: 64px;
}

.ach_footer_item1 {
    display: flex; 
    flex-direction: row; 
    padding-top: 8px; 
    padding-left: 64px;
}

.ach_footer_item2 {
    display: flex; 
    flex-direction: row; 
    padding-top: 8px; 
    padding-left: 64px; 
    padding-bottom: 32px;
}

.ach_footer_item_img {
    width: 32px; 
    height: 32px; 
    scale: 0.7;
}

.ach_footer_item_wpimg {
    width: 32px; 
    height: 32px; 
    scale: 0.5;
}

.ach_footer_item_text {
    cursor: pointer; 
    text-align: left; 
    margin-top: auto; 
    margin-bottom: auto; 
    margin-left: 8px; 
    margin-right: 8px; 
    width: fit-content; 
    color: #efefef; 
    font-size: 16px; 
    vertical-align: middle;
    user-select: none;
}

.ach_footer_right {
    display: flex; 
    align-self: center;
}

#ach_footer_wp {
    display: flex; 
    flex-direction: row;
    background-color: #128C7E; 
    border-radius: 24px; 
    margin-top: auto; 
    margin-bottom: auto; 
    cursor: pointer;
}

.ach_footer_item_wptext {
    text-align: left; 
    margin-top: auto; 
    margin-bottom: auto; 
    margin-right: 16px; 
    vertical-align: middle; 
    width: fit-content; 
    color: #efefef; 
    font-size: 16px;
    user-select: none;
}

@media only screen and (max-width: 500px) {
    .ach_page_form {
        width: 80%;
    }

    .ach_page2_t2 {
        padding-right: 48px;
    }

    .ach_content_works {
        flex-direction: column!important;
    }

    .ach_content_exp {
        margin-left: 0!important;
        margin-top: 12px!important;
    }

    .ach_page_subcontent2 {
        padding: 0!important;
    }
}

@media only screen and (min-width: 501px) {
    .ach_page_form {
        width: 400px;
    }
}


@media only screen and (max-width: 580px) {
    .ach_page_footer { 
        flex-direction: column;
    }

    .ach_footer_left {
        width: 100%;
        align-items: center;
    }

    .ach_footer_item, 
    .ach_footer_item1, 
    .ach_footer_item2 {
        padding-left: 0!important;
    }

    .ach_footer_right {
        padding-bottom: 64px;
    }
}

@media only screen and (min-width: 581px) {
    .ach_page_footer { 
        flex-direction: row;
    }
}

.ach_first_cover {
    position: absolute;
    width: 100%;
    height: 100vh;
    object-fit: cover;
    opacity: 0.5;
}

#ach_btn_login {
    cursor: pointer; 
    background-color: #343434; 
    margin-left: auto; 
    margin-right: 16px; 
    height: fit-content; 
    margin-top: auto; 
    margin-bottom: auto;
    border-radius: 8px;
}