@media screen and (max-width: 1024px) {
    img {
        max-width: 100%;
        height: auto;
    }
    #header .header-content {
        width: 90%;
        height: 60px;
    }
    #header .logo h1 {
        margin-top: -8px;
    }
    .nav-toggle {
        display: block;
    }
    .navigation {
        position: fixed;
        background-color: #FD8800;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        z-index: 99999;
        visibility: hidden;
        opacity: 0;
        -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
        transition: opacity 0.5s, visibility 0s 0.5s;
    }
    #form-btn {
        padding: 20px 60px;
        border: 1px solid #fff;
    }
    #links,
    #kakudai {
        display: none;
    }
    section.kakudai {
        background: #F4F4F4;
        border-left: 11px solid #FD8800;
        padding: 20px;
    }
    section.kakudai h2 {
        margin: 0;
        font-weight: bold;
        font-size: 19px;
        line-height: 25px;
        text-align: center;
        color: #FD8800;
    }
    #banner .container {
        padding: 0;
    }
    .navigation p {
        text-align: center;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
        margin: 20px 0 0;
    }
    .navigation .primary-nav {
        margin: 30px 10px 70px;
    }
    .navigation li {
        display: block;
        margin-bottom: 20px;
    }
    .navigation .primary-nav li {
        text-align: left;
        padding: 20px 5px;
        border-bottom: 1px solid #fff;
    }
    .navigation .primary-nav li:first-child {
        border-bottom: 1px solid #fff;
    }
    .navigation .primary-nav li img {
        margin-right: 10px;
    }
    .navigation a {
        font-size: 16px;
        font-weight: bold;
        margin: 0;
        text-align: center;
    }
    .overview-video iframe {
        width:290px;
        height:163px;
    }
    .navigation p {
        text-align: center;
    }
    .flex-control-nav {
        bottom: 20px;
    }

    #message .message-div > img {
        margin: 0 auto;
    }
    #work .work-row {
        flex-wrap: wrap;
    }
    #work .work-div {
        padding: 50px 10px;
    }
    #work .work-row a {
        display: block;
        margin: 10px auto;
        width: 100%;
        text-align: center;
    }
    #voice {
        background: #fff;
        padding: 0 0 30px;
    }
    #voice > img {
        margin: 0 auto 30px;
    }
    #voice .container {
        flex-wrap: wrap;
        justify-content: center;
    }
    #voice .container div {
        width: 100%;
    }
    .voicebtn-div {
        background: #fff;
    }
    #pride {
        padding: 50px;
    }
    #pride .container {
        padding: 0;
    }
    #pride .container img {
        margin: 0 auto;
    }
    #pride .container img.formBtn {
        margin: 50px auto;
    }

    .faces {
        padding: 20px 0;
    }
    .faces div h3 {
        font-size: 35px;
    }
    .faces div img {
        width: 100%;
        margin-bottom: 30px;
        max-width: 50%;
    }
    .faces div p {
        font-size: 11px;
        line-height: 16px;
    }

    .footer .footer-div {
        justify-content: center;
    }
    .footer .footer-div img {
        /* margin-bottom: 50px; */
    }
    .footer #copyright {
        text-align: center;
    }
    #fixed-footer {
        display: flex;
        position: fixed;
        bottom: 0;
        width: 100%;
    }
    #fixed-footer a {
        padding: 15px 0;
        display: block;
        text-align: center;
        font-weight: bold;
    }
    #fixed-footer a img {
        margin-right: 10px;
    }
    #fixed-footer a:first-child {
        width: 40%;
        background: #D1D1D1;
        color: #525252;
    }
    #fixed-footer a:last-child {
        width: 60%;
        background: #FD8800;
        color: #fff;
    }
    #totop-div {
        padding-bottom: 60px;
    }
    .flow .flow-div {
        padding: 40px;
    }
    section.interview .flow {
        margin-left: 20px;
    }
    section.interview div h3 {
        font-size: 23px;
    }
    #contact .gray .container a {
        padding: 20px 35px;
    }


    .footer ul,
    #new .new-div,
    .gyomu-div,
    #message .message-div {
        flex-wrap: wrap;
        justify-content: space-around !important;
    }
    div.text-div {
        margin-bottom: 20px;
    }
    div.spacer-div {
        display: none !important;
    }
    #new .new-div div,
    #gyomu .gyomu-div div {
        width: 80%;
        margin-bottom: 30px;
    }
    #gyomu {
        background: #585858;
    }
}
@media screen and (max-width: 768px) {
    #banner {
        text-align:center;
    }
    .banner-text {
        padding-top: 30%;
    }
    .banner-text h1 {
        margin-top:70px;
        font-size: 33px;
        line-height:36px;
    }
    .banner-text p {
        font-size: 18px;
    }
    .banner-img {
        margin:auto;
    }
    .banner-btn a {
        margin-bottom: 100px;
    }
    #overview {
        text-align:center;
    }
    .overview-content p {
        padding-right:0px;
    }
    #features {
        text-align:center;
    }
    .features1-content {
        margin-top: 5%;
    }
    .left {
        text-align:center;
    }
    .middle {
        padding-left:0px;
        margin:auto;
        margin-top:5%;
        margin-bottom:5%;
    }
    .features2-content {
        margin-top:0px;
    }
    .features3 img {
        padding-left:0px;
    }
    .faces {
        background-position: center top !important;
    }
    .faces div h3 {
        font-size: 23px;
    }
    .faces div h3 span {
        font-size: 15px;
    }
    section.interview .container {
        flex-wrap: wrap;
    }
    section.interview .container div.flow, section.interview .container div.interview {
        width: 100%;
    }
    .flow .flow-div {
        padding: 40px 80px;
    }
    #works .each-work {
        flex-wrap: wrap;
        padding: 20px;
    }
    #works .each-work div {
        width: 100%;
    }
    #works .each-work img {
        display: block;
        margin: 0 auto 20px;
        min-width: 200px;
    }
    #works .each-work:nth-child(odd) img {
        order: 1;
    }
    #works .each-work:nth-child(odd) div {
        order: 2;
    }

    .footer .footer-col {
        margin-bottom: 50px;
    }
}
@media screen and (max-width: 640px) {
    #banner {
        text-align:center;
    }
    .banner-text h1 {
        margin-top:70px;
        font-size: 33px;
        line-height:36px;
    }
    .banner-btn a {
        margin-bottom: 70px;
    }
    .banner-text {
        padding-top: 35%;
    }
    .footer a {
        font-size:14px;
    }
    .footer .footer-share li {
        width: 35px;
        height: 35px;
        border-radius: 50%;
        padding: 7px 0;
        margin: 0 5px;
    }

    .banner {
        height: auto;
    }
    .news-div .news-div-inner .news-row span:last-child {
        display: block;
        padding-top: 6px;
    }
    .news-div .news-div-inner {
        max-height: 200px;
    }
    #company .company-div {
        padding: 10px;
    }
    #company .company-div div div {
        display: block;
    }
    #contact .contact-div {
        padding: 10px;
    }
    #contact .contact-div div:not(#contact-message):not(#simple-msg) label {
        width: 100%;
        text-align: center;
        padding-left: 0;
    }
    #contact .contact-div div:not(#contact-message):not(#simple-msg) textarea, #contact .contact-div div:not(#contact-message):not(#simple-msg) input {
        display: block;
        width: 100%;
    }
    #contact .contact-div div.last {
        display: block;
    }
    .footer ul li {
        border-right: none;
    }
    .faces {
        flex-wrap: wrap;
    }
    .faces div:last-child,
    .faces div:first-child {
        width: 100%;
    }
    section.interview {
        padding-top: 0;
    }
    section.interview .flow {
        margin-left: 0;
    }
    section.interview div h3 {
        margin-top: 50px;
    }
    .faces div:last-child {
        text-align: right;
        text-shadow: 1px 1px 0 #fff;
    }
    .flow .flow-div {
        padding: 40px 40px;
    }
    section.interview .interview .irow p {
        font-size: 13px;
    }
    #contact .gray .container a {
        padding: 15px 20px;
    }

}
@media screen and (max-width: 480px) {
    #banner {
        text-align:center;
    }
    .banner-text {
        padding-top: 45%;
    }
    .banner-text h1 {
        margin-top:100px;
        font-size: 32px;
        line-height:36px;
    }
    .banner-btn a {
        margin-bottom: 15px;
    }
    #message .message-div {
        display: block;
    }
    #new .new-div div, #gyomu .gyomu-div div {
        width: 95%;
    }
    #header .logo {
        width: 200px;
    }
    .nav-toggle {
        /* top: 22px !important; */
    }
    #header.fixed .nav-toggle {
        /* top: 11px !important; */
    }
    #banner-kasou {
        height: 200px;
    }
    #banner-kasou h2 {
        font-size: 20px;
        padding: 10px 50px;
    }
    h2.khead {
        font-size: 25px;
        margin-bottom: 10px;
    }
    #youkou h3 {
        font-size: 20px;
    }
    #message {
        padding-bottom: 0;
    }
    #youkou {
        padding: 40px 0 0;
    }
    #youkou .youkou-row {
        font-size: 12px;
        flex-wrap: wrap;
    }
    #youkou .youkou-row div:first-child {
        width: 100%;
        font-weight: bold;
        margin-bottom: 5px;
    }
    #youkou div.detail {
        margin-bottom: 80px;
    }
    #kyujin-form div.form-div .form-row {
        flex-wrap: wrap;
    }
    #kyujin-form div.form-div .form-row div:first-child {
        width: 100%;
    }
    #contact .gray .container a {
        padding: 10px;
    }
    #contact .gray {
        padding-bottom: 30px;
    }
    section.contact .khead + img,
    section.contact .khead {
        margin-bottom: 30px;
    }
    #company .gray {
        padding-top: 50px;
    }
}
@media screen and (max-width: 320px) {
    .banner-text {
        padding-top: 55%;
    }
    .subscribe-form input[type=text] {
        width:65%;
    }
    .subscribe-form input[type=submit] {
        width: 35%;
    }
    #gyomu .gyomu-div div h3 {
        white-space: inherit;
    }
    section.kakudai h2 {
        font-size: 14px;
        line-height: 20px;
    }
    #message .message-div > img {
        margin: 0 auto;
    }
    #voice div h2,
    #work h2 {
        font-size: 24px;
    }
    .voicebtn-div {
        padding: 50px;
    }
    .flow .flow-div {
        padding: 30px 10px;
    }
}
