th.blue {
    background-color: #73CEEA;
    font-size: 3vw;
}

td.grey {
    background-color: #B1B1B1;
}

.banner h2 {
    position: absolute;
    top: 6vw;
    left: -8vw;
    color: white;
    font-size: 4vw;
    width: 43vw;
}

.aisatsu {
    padding: 2vw 5vw;
}

.leftside h2 {
    text-align: center;
}

.reversedtext {
    text-align: right;
}

.table {
    padding: 5vw 1vw;
    display: flex;
    justify-content: center;
}

th {
    width: 32vw;
    padding: 6vw 2vw;
}

td {
    width: 64vw;
    font-size: 3vw;
    text-align: center;
    padding: 2vw 4vw;
}

.rightside {
    display: flex;
    justify-content: center;
}

table {
    border-collapse: separate;
    border-spacing: 5px;
}

table th,
table td {
    border: none;
    border-spacing: 5px;
}

.contactus {
    margin-top: 3vw;
}

.leftside {
    padding: 2vw 5vw;
}

.smallfont {
    font-size: 3vw;
}

#recruittitle h2 {
    position: absolute;
    top: 7vw;
    left: 0vw;
    color: white;
    font-size: 4vw;
    width: 43vw;
}

#recruittable td,
#recruittable th {
    padding: 3vw 4vw;
}

#recruittable td {
    width: 49vw;
}

#recruittable th {
    width: 29vw;
    padding: 3vw 1vw;
}

#newstitle h2 {
    top: 7.5vw;
    left: 5vw;
}

#newstitle h1 {
    top: 2vw;
    left: 0vw;
}
.imagetextcenter h1 {
    position: absolute;
    top: 0vw;
    left: 1vw;
    width: max-content;
}
.newsarticles article {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    align-content: space-around;
}

.newsinfo {
    display: flex;
    align-items: center;
    flex-direction: column;
    align-content: space-around;
    justify-content: space-around;
    padding: 0 10vw;
    padding-bottom: 5vw;
}
.newsinfonewspage{
    display: flex;
    align-items: center;
    flex-direction: column;
    align-content: space-around;
    justify-content: space-around;
    padding: 0 10vw;
    padding-bottom: 5vw;
}
.spacedtext{
    padding: 3vw 3vw;
}
#recruitcard{
    margin-top: -6vw;
}
.datenews {
    display: flex;
    line-height: 2;
    align-items: center;
}

.datenews .tinyfont {
    margin-right: 2vw;
}

.newscircle {
    border: 1px solid grey;
    border-radius: 24px;
    padding: 0 2vw;
}

.newstitle {
    margin-top: -6vw;
}

@media screen and (min-width: 769px) and (max-width: 1024px) {
#recruittitle h1{
    position: absolute;
    top: 0vw;
    left: 0vw;
    width: max-content;
}
    th.blue {
        background-color: #73CEEA;
        font-size: 2vw;
    }

    .smallfont {
        font-size: 1.8vw;
    }

    td {
        width: 64vw;
        font-size: 2vw;
        text-align: center;
        padding: 2vw;
    }

    .banner h2 {
        position: absolute;
        top: 6vw;
        left: -2vw;
        color: white;
        font-size: 2.5vw;
        width: 43vw;
    }

    #recruitcard img {
        margin-top: 4vw;

    }

    #recruitcard {
        margin-top: -5vw;
    }

    #recruittitle h2 {
        position: absolute;
        top: 5vw;
        left: 0vw;
        color: white;
        font-size: 2.5vw;
        width: 43vw;
    }

    .newsarticles article {
        display: flex;
        flex-direction: row;
        justify-content: center;
        align-items: stretch;
        padding: 2vw 3vw;
        align-content: center;
    }

    .newsimage {
        flex-basis: 30%;
        max-width: 30vw;
    }

    .newsimage img {
        max-width: 29vw;
    }

    .newsinfo {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        align-content: flex-start;
        justify-content: space-around;
        padding: 0 3vw;
        padding-bottom: 0vw;
    }
.newsinfonewspage{
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    align-content: flex-start;
    justify-content: space-around;
    padding: 0 3vw;
    padding-bottom: 0vw;
}
    .datenews {
        display: flex;
        line-height: 2;
        text-align: left;
        margin-top: -2vw;
    }

    .newstitle p {
        margin-top: 3vw;
        border-bottom: 1px solid grey;
        font-size: 2.3vw;
    }

    #newstitle h1 {
        position: absolute;
        width: 30vw;
        top: -1vw;
        left: 0vw;
    }

    #newstitle h2 {
        top: 4vw;
        left: 4vw;
    }


}

@media screen and (min-width: 1025px) {
    th.blue {
        background-color: #73CEEA;
        font-size: 1.5vw;
    }
    #logobanner{
        height: 21vw;
        margin-bottom: -9vw;
    }
    .banner h2 {
        position: absolute;
        top: 8vw;
        left: 2vw;
        color: white;
        font-size: 2vw;
    }

    .imagetextcenter h1 {
        font-size: 3vw;
        position: absolute;
        left: 20.5%;
        top: 6vw;
        margin: 0;
    }

    .imagetextcenter {
        position: absolute;
        top: 7vw;
        left: 40vw;
        /* font-size: 5.5vw; */
        width: 20vw;
    }

    .image img {
        position: absolute;
        top: 149vw;
        left: 3vw;
        width: 47vw !important;
    }

    .aisatsu .leftside {
        background-color: white;
        padding-top: 3vw;
        padding-bottom: -17vw;
        margin-left: -27vw;
        margin-right: 3vw;
        margin-top: 13vw;
        margin-bottom: 2vw;
    }

    .textbox {
        flex: 60%;
        width: 72%;
        margin-left: 22vw;
    }

    .signoff {
        font-size: 1.5vw;
        text-align: right;
        margin-right: 6vw;
    }

    .about {
        padding: 0 2vw;
    }

    .aisatsu {
        margin-bottom: 5vw;
        padding-bottom: 12vw;
        max-width: 100%;
        overflow: hidden;
        padding-left: 0;
        padding-right: 0;
        margin-top: 1vw;
        padding-top: 10vw;
    }

    th {
        width: 30vw;
        height: 5vw;
        border: none;
        border-spacing: 5px;

    }

    td {
        width: 40vw;
        height: 6vw;
        border: none;
        border-spacing: 5px;
        text-align: center;
        font-size: 1.5vw;
    }

    .table {
        display: flex;
        justify-content: center;
        margin-top: 7vw;
        margin-bottom: 7vw;
    }

    table {
        border-collapse: separate;
        border-spacing: 1vw;
        border: white 1px solid;
        display: flex;
        justify-content: center;
        margin-top: -1vw;
    }

    .spacedtext {
        line-height: 2.5;
        margin-top: 0.5vw;
        padding: 1.5vw 0;
    }

    table th,
    table td {
        border: none;
        border-spacing: 5px;
        padding: 1.5vw;
        font-size: 1.5vw;
    }

    .contactus {
        margin-top: -3vw;
    }

    .smallfont {
        font-size: 1.5vw;
    }

    .leftside h2 {
        text-align: initial;
    }

    .textbox h2 {
        font-size: 2vw;
    }

    .extratext {
        /* margin-top: 4vw; */
        margin-left: 5vw;
        margin-right: 5vw;
        margin-bottom: 3vw;
        font-size: 1.5vw;
    }

    #recruitcard .leftside {
        margin-left: 0;
        margin-right: 0;
        height: 41vw;
        width: 100%;
        background-color: #EEF4F6;
    }

    #recruitcard {
        display: flex;
        background-color: #EEF4F6;
        height: 56vw;
    }

    #recruitcard .textbox {
        margin-top: -2vw;
        margin-left: -1vw;
        background-color: white;
        padding-right: 24vw;
        padding-top: 5vw;
        padding-bottom: 5vw;
        width: 55%;
    }

    #recruitcard img {
        position: absolute;
        top: 71vw;
        left: 55vw;
        width: 45vw !important;
    }

    #recruith2 h2 {
        position: initial;
        font-size: 2.5vw;
        text-align: center;
        margin-top: -5vw;
        /* top: 0; */
        /* left: 2vw; */
    }

    #recruittable {
        margin-top: 0;
        width: 80%;
    }

    #recruith2 {
        display: flex;
        justify-content: center;
        align-items: center;
        margin-top: 8vw;
        flex-direction: column;
    }

    #recruittitle h2 {
        position: absolute;
        top: 8vw;
        left: 3vw;
        color: white;
        font-size: 2.5vw;
        width: 43vw;
    }

    #recruittitle h1 {}

    #newstitle h1 {
        top: 4vw;
        left: 5vw;
    }

    .newsarticles article {
        display: flex;
        flex-direction: row;
        justify-content: flex-start;
        padding: 2vw 15vw 4vw;
        padding-bottom: 10vw;
        width: 100vw;
        text-align: left;
        align-content: center;
        align-items: stretch;
    }

    .newsimage {
        flex-basis: 30%;
        max-width: 30vw;
        padding: 0vw;
    }

    .newsimage img {
        max-width: 23vw;
        border: none;
    }
    
    .newsinfonewspage   {
        display: flex;
        align-items: flex-start;
        flex-direction: column;
        align-content: flex-start;
        justify-content: space-around;
        padding: 0 3vw;
        padding-bottom: 0vw;
    }
   
    .newsinfo {
        display: flex;
        flex-direction: row;
        padding: 3vw 3vw;
        margin: 3vw;
        /* padding: 0!important; */
        height: 40vw;
        padding-bottom: 0vw;
        align-items: flex-start;
        flex-wrap: wrap;
    }
    .datenews {
        display: flex;
        line-height: 2;
        text-align: left;
        margin-top: -2vw;
    }

    .datenews .tinyfont {
        margin-right: 4vw;
    }

    .newstitle p {
        margin-top: 7vw;
        border-bottom: 1px solid grey;
        font-size: 2vw;
        font-weight: 500;
    }

    #newstitle h1 {
        position: absolute;
        width: 30vw;
        top: 4vw;
        left: -5vw;
    }

    #newstitle h2 {
        top: 6vw;
        left: 7.5vw;
    }


}



































@media only screen and (min-width: 1200px) {
    .banner h2 {
        position: absolute;
        top: 8vw;
        left: 2vw;
        color: white;
        font-size: 2vw;
    }

    .imagetextcenter h1 {
        font-size: 3vw;
        position: absolute;
        left: 20.5%;
        top: 6vw;
        margin: 0;
    }

    .imagetextcenter {
        position: absolute;
        top: 7vw;
        left: 40vw;
        /* font-size: 5.5vw; */
        width: 20vw;
    }

    .image img {
        position: absolute;
        top: 129vw;
        left: 3vw;
        width: 50vw !important;
    }

    .aisatsu .leftside {
        background-color: white;
        padding-top: 3vw;
        margin-left: -33vw;
        margin-right: 3vw;
        margin-top: 13vw;
        margin-bottom: 2vw;
        /* width: 70vw; */
    }

    .textbox {
        flex: 60%;
        width: 60%;
        margin-left: 32vw;
    }

    .signoff {
        font-size: 1.5vw;
        text-align: right;
        margin-right: 6vw;
    }

    .about {
        padding: 0 2vw;
    }

    .aisatsu {
        padding-top: 2vw;
        margin-bottom: 5vw;
        padding-bottom: 12vw;
        max-width: 100%;
        overflow: hidden;
        padding-left: 0;
        padding-right: 0;
    }

    th {
        width: 30vw;
        height: 5vw;
        border: none;
        border-spacing: 5px;

    }

    td {
        width: 40vw;
        height: 6vw;
        border: none;
        border-spacing: 5px;
        text-align: center;
        font-size: 1.5vw;
    }

    .table {
        display: flex;
        justify-content: center;
        margin-top: 7vw;
        margin-bottom: 7vw;
    }

    table {
        border-collapse: separate;
        border-spacing: 1vw;
        border: white 1px solid;
        display: flex;
        justify-content: center;
        margin-top: -1vw;
    }

    .spacedtext {
        line-height: 2.5;
        margin-top: 0.5vw;
        padding: 1.5vw 0;
    }

    table th,
    table td {
        border: none;
        border-spacing: 5px;
        padding: 1.5vw;
    }

    .contactus {
        margin-top: -3vw;
    }

    .smallfont {
        font-size: 1vw;
        /* margin-top: -5vw; */
    }

    .leftside h2 {
        text-align: initial;
    }

    .textbox h2 {
        font-size: 2vw;
    }

    .extratext {
        margin-left: 5vw;
        margin-right: 5vw;
    }

    #recruitcard .leftside {
        margin-left: 0;
        margin-right: 0;
        height: 41vw;
        width: 100%;
        background-color: #EEF4F6;
    }

    #recruitcard {
        display: flex;
        background-color: #EEF4F6;
        height: 55vw;
    }

    #recruitcard .textbox {
        margin-top: 0vw;
        margin-left: -1vw;
        background-color: white;
        padding-right: 32vw;
        padding-top: 6vw;
        padding-bottom: 7vw;
    }

    #recruitcard img {
        position: absolute;
        top: 74vw;
        left: 55vw;
        width: 45vw !important;
    }

    #recruith2 h2 {
        position: initial;
        font-size: 2.5vw;
        text-align: center;
        margin-top: -5vw;
        /* top: 0; */
        /* left: 2vw; */
    }

    #recruittable {
        margin-top: 0;
        width: 80%;
    }

    #recruith2 {
        display: flex;
        justify-content: center;
        align-items: center;
        flex-direction: column;
    }
}

@media screen and (min-width: 1440px) {

    #companyabout {
        padding-bottom: 3vw;
    }
.aisatsu .textbox{width: 50vw!important;
    margin-left: 30vw!important;}
    .image img {
        position: absolute;
        top: 117vw;
        left: 3vw;
        width: 50vw !important;
    }
.aisatsu img{
    position: absolute;
    top: 118vw;
    left: 3vw;
}
.aisatsu {
    padding-top: 0vw;
    margin-bottom: 5vw;
    padding-bottom: 2vw;
    max-width: 100%;
    overflow: hidden;
    padding-left: 0;
    padding-right: 0;
}
.aisatsu .leftside {
    background-color: white;
    padding-top: 1vw;
    margin-left: -33vw;
    margin-right: 3vw;
    margin-top: 2vw;
    margin-bottom: 0vw;
    /* width: 70vw; */
}
    #recruitcard img {
        position: absolute;
        top: 69.5vw;
        left: 55vw;
        width: 40vw !important;
    }
    .imagetextcenter h1 {
        font-size: 3vw;
        position: absolute;
        left: 22.5%;
        top: 6vw;
        margin: 0;
    }
    .leftcard {
        flex: 40%;
        max-height: 31vw;
        margin: 0 0vw;
        margin-top: 1vw;
        margin-left: 6vw;
        margin-right: 5vw;
        text-align: left;
    }
    #recruittitle h1 {
    position: absolute;
    left: 19.5%;
    top: 6vw;
    }
    #recruittitle h2 {
        position: absolute;
        top: 8vw;
        left: 3.25vw;
        color: white;
        font-size: 2.5vw;
        width: 43vw;
    }
    #recruittable th {
        width: 27vw;
        font-size: 1.5vw;
    }
    #recruittable td {
        width: 34vw;
        font-size: 1.25vw;
    }



}
@media screen and (max-width: 724px) {
    .banner #smallbanner {
        width: 100vw;
        /* max-height: 48vw; */
    }
.newsinfo{
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    /* height: 75vw; */
    padding: 0;
}
.newsarticlecard {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    text-align: left;
    margin-top: 5vw;
}
.carlefttext {
    padding: 2vw 4vw 2vw 0vw;
    font-size: 3vw;
    flex: 50;
}
#newscontent {
    height: 155vw;
    max-height: 180vw;
}
.cardrightimg img {
    width: 75vw !important;
}
.backtonews {
    font-size: 4vw;
}
#newsarticle .newstitle p {
    border-bottom: none;
    font-size: 4vw;
    font-weight: 600;
}
#services\ news > section.about > div > h3{
    font-size: 4vw;
}
#services\ news > section.newsarticles > article:nth-child(1){
    margin-bottom: 8vw;
}
.newstitlenewspage {
    margin-top: -5vw;
    font-size: 4vw;
}
.newsinfonewspage {
        padding: 0 6vw;
        padding-bottom: 5vw;
        text-align: center;
}
.newsarticles{
display: flex;
align-items: center;
flex-direction: column;
}
}
@media screen and (min-width: 1920px) {}