/* 
For: Elephant Recruit Site
Original Author: King Chi Hsin
URL:
*/

/* Default */

*{
  box-sizing: border-box;  
}

html{
    font-family: 'Noto Sans JP', 'sans-serif';
    font-size: 62.5%;
}

:root{
    --background-dark: rgb(0,85,157);
    --background-light: rgb(0,175,236); 
    --font-on-blue: white;
    --font-on-white: black;
    
    /* scale for web */
    --font-size-15: 1.464rem;
    --font-size-17: 1.611rem;
    --font-size-18: 1.772rem;

}

body{
    margin: 0;
    min-height: 100vh;
    overflow-x: hidden;
}

h1{
    font-weight: 900;
}

h2{
    font-weight: 700;
}

h3, p, li, td{
    font-weight: 500;
}

ul{
    list-style-type: none;
}

a{
    text-decoration: none;
    margin: 0;
    padding: 0;
    display: inline-block;
    width: 100%;
}

img{
    width: 100%;
}

button{
    padding: 0;
    border: none;
    outline: none;
    font: inherit;
    color: inherit;
    background: none
}

/* Layout */

.container-row{
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
}

.container-column{
    display: flex;
    flex-flow: column nowrap;
}

.center{
    margin-left: auto;
    margin-right: auto;
}

.full-width{
    margin: 0 -10%;
}

/* Navigation */

header{
    position:fixed;
    top:0;
    left:0;
    height: auto;
    width: 100vw;
    z-index: 500;
    overflow: hidden;
}  

    .recruit-logo{
        width: 135px;
        margin-left: 25px;
        z-index: 500000;
    }

    #logo-white{
        display: none;
    }

    #header-nav{
        background-image: url(../img/nav-bck.svg);
        background-repeat: no-repeat;
        background-size: cover;
        width: 565px;
        height: 80px;
        padding: 0 20px;
        justify-content: space-between;
        margin-left: auto;
    }

        .nav-box{
            padding-right: 20px;
            border-right: 1px solid white;
            overflow: hidden;
            justify-content: space-around;
        }

            #header-nav ul li a {
                display: block;
                color: var(--font-on-blue);
                text-align: center;
                padding: 16px;
              }

    .nav-buttons{
        font-size: var(--font-size-15);
    }

    li.bold{
        font-size: 1.8vw;
    }

    li.line-bottom{
        border-bottom: solid 1px white;
        padding-bottom: 10px;
    }

    li.space-top{
        padding-top: 10px;
    }

    #insta-logo{
        width: 30px;
    }

    #insta-logo:hover{
        transform: scale(115%);
        transition: 0.15s ease-in-out;
    }

    .toggle-btn{
        position: relative;
        display: block;
        z-index: 10000;
        width: 45px;
        margin: -3px 20px 0 20px;
    }

    .menu-bar{
        display: inline-block;
        width: 100%;
        height: 2px;
        background-color: white;
        vertical-align: middle;
        transition: 0.5s ease-in-out;
    }

    .is-open span:nth-child(1){
        transform: translateY(15px) rotate(-45deg);
    }

    .is-open span:nth-child(2){
        transform: translateX(50vw);
    }

    .is-open span:nth-child(3){
        transform: translateY(-15px) rotate(45deg);
    }


    .toggle-menu{
        /*visibility: hidden;*/
        width: 565px;
        height: 100vh;
        background-color: var(--background-dark);
        position: fixed;
        top: 0;
        right: -100vw;
        transition: 0.5s ease-in-out;
    }

    .toggle-menu ul{
        margin-top: 25%;
        margin-left: 8%;
        align-items: flex-start;
    }

    .toggle-menu ul li:hover{
        text-decoration: underline white 2px;

    }

    .toggle-menu ul li{
        text-align: left;
    }

    .is-active{
        /*visibility: visible;*/
        right: 0vw;
    }



/* Main Contents */

main{
    width: 100vw;
    display: block;
    position: relative;
    margin-top: 150px;
    overflow: hidden;
}

section{
    width: 80%;
    height: auto;
    position: relative;
}

.sec-title{
    height: 80px;
    width: auto;
    display: block;
}

    #title-1{
        padding: 10px;
        position: relative;
    }

    #slogan_eng{
        width: 60vw;
        height: auto;
         margin-top: 4%;
        display: block;
    }

        #slogan_jp{
            width: fit-content;
            margin-top: 4%;
            font-size: 2.2vw;
            line-height: 5rem;
        }

        #group-mb{
            display: none;
        }

        #ppl-row{
            margin-top: 2%;
        }

        #news-box{
            width:100%;
            margin-top: 4%;
        }

        #news-title{
            width:10vw;
            display: block;
        }

        #news{
            height: auto;
            border-radius:12px;
            background-color: rgb(0,85,157);
            justify-content: left;
            align-items: center;
        }

        #news li{
            color: var(--font-on-blue);
            font-size: var(--font-size-17);
            margin-top: 15px;
            margin-bottom: 15px;
        }

        #date{
            margin-right: 15px;
        }

        #phil-left-img{
            width: 30vw;
            margin-left: -13%;
            position: absolute;
            
        }
    
           #phil-ppl-left-1{
            width: 60%;
            margin: 2% 10% 2% 0;
            align-self: flex-end;
            } 
            
        #phil-ppl-left-2{
            width: 70%;
            margin: 2% 10% 2% 0;
            align-self: flex-start;
        }

    #philosophy-text{
        font-size: 1.5vw;
        line-height: 3.5vw;
        text-align: justify;
        margin: 10% auto;
        width: 50%;
    }

     #phil-right-img{
        width: fit-content;
        position: relative;
        margin-right: -5%;
        margin-left: auto;
        margin-top: -18vh;
        justify-content: center;
    }

    .phil-ppl-right{
        height: 20vw;
     }

#ele-arrow1{
    max-width: 40vw;
    margin-top: 50px;
    margin-left: -20px;
}


/*--- Credo ---*/

#credo{
    width:auto;
    height: auto;
    position: relative;
    display: block;
    margin-top: -8%;
}

#title-2{
    float: right;
    margin-right: 15%;
    margin-bottom: 80px;
    margin-top: -20px;
}

.credo-list{
    width: 100%;
    height: auto;
    position: relative;
    display: inline-block;
    left: -20px; 
}

.credo-box{
    width: 100%;
    align-content: flex-start;
}

.credo-item{
    height: 10vw;
    width: auto;
}

.credo-item img{
    height: 100%;
    width: auto;
}

#arrow-grp1{
    width: 25vw;
    display: block;
    position: absolute;
    right: 0;
    bottom: 11%;
}

#btm-arrow{
    margin-top:50%;
    height:450px;
}

#ele-arrow-3{
    width:30%;
    display: block;
    position:relative;
    margin-left: -3%;
    z-index: 1;
}


/*--- Business Details ---*/

#business{
    width:100%;
    height: auto;
    margin-top: -15%;
    position: relative;
    display: block;
    background-image: url(../img/wave-bck.svg);
    background-repeat: no-repeat;
    background-size: 100%;
}

#title-3{
    position: relative;
}

.business-details{
    width: 100vw;    
    display: grid;
    justify-content:center;
    grid-template-columns:30% 30% 30%;
    grid-template-rows: auto;
    grid-template-areas: 
        "box1 box2 box3"
        "box4 box5 box6"
        "box7 box8 .";
    column-gap: 20px;

}

.row2{
    position:relative;
    top:-25%;
}

.row3{
    position:relative;
    top:-50%;
}

.text-box{
    width:28vw;
    height: 28vw;
    border-radius:100%;
    background-color: white;
    position: relative;
    padding-left: 16%;
    padding-right: 16%;
}

.text-box p{
    font-weight: 400;
}

.top-pad-1{
    padding-top: 10%;
}

.top-pad-2{
    padding-top: 15%;
}

.bd-char{
    width:25vw;
    position: relative;
    display: block;
    top:12%;
}

.bd-title-grp{
    display: block;
    width:fit-content;
}

.bd-title-grp, .bd-title-box{
    margin-bottom: 5px;
}

.bd-title, .sub-ttl{
    display: block;
}

.bd-title{
    height: 4vw;
}

.sub-ttl{
    height: 2.5vw;
    margin: 8px auto;
}

.bd-box{
    justify-self: center;
    margin: 0 10%;
}

.bd-box p{
    font-size: 1.1vw;
    line-height: 1.65vw;
    text-align: justify;
}

.detail-1{
    grid-area: box1;   
}

.detail-2{
    grid-area: box2;
}

.detail-3{
    grid-area: box3;
}

.detail-4{
    grid-area: box4;
}

.detail-5{
    grid-area: box5;
}

.detail-6s{
    grid-area: box6;
}

.detail-7{
    grid-area: box7;
}

.detail-8{
    grid-area: box8;
}


.arrow-ele-grp{
    display: block;
    position: absolute;
    float: right;
}

#arrow-2{
    width: 26%;
    right: -2%;
    bottom: 30%;
}

#ele-1{
    width: 15%;
    right: 15%;
    bottom: 10%;
}

#arrow-3{
    width: 20%;
    right: 8%;
    bottom: 22%;
}

#arrow-4{
    width: 20%;
    right: -3%;
    bottom: 5%;
}

/*
#bd-ele{
    float:left;
}*/

/*--- Employee Welfare ---*/

#employee-welfare{
    width:100vw;
    margin-top:-14%;
    margin-bottom:7%;
}

#title-6{
    margin: auto;
}

#ew-text{
    text-align: center;
    margin: 40px auto;
    font-size: 1.2vw;
    line-height: 2vw;
}

#ew-text-mobile{
    display: none;
}

#sub-ttl-6{
    width:90%;
    margin: auto;
}

.employee-welfare-menu{
    display: flex;
    flex-flow: row wrap;
    justify-content: space-evenly;
    width:89%;
    margin: auto;
    margin-top: -3%;
}

.ew-item{
    width: 20vw;
    margin: 0 15px 50px 15px;
    padding: 5px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self:flex-start
}

.ew-item-ttl{
    height: 4.5vw;
    width:auto;
    display: block;
    margin: 15px auto;
}

.ew-img{
    width:80%;
    display: block;
    margin: auto;
}

#ew-item-text{
    width: 100%;
    font-size: 1.1vw;
    text-align: left;
    line-height: 1.65vw;
    font-weight: 400;
    line-break: strict;
    margin: 0;
}

/*--- Overview ---*/

#overview{
    width: 100vw;
    /*margin-top: -10%;*/
}

#title-4{
    display: block;
    position:relative;
    margin-right:auto;
    margin-left:10%;
    margin-bottom: 5%;
}

.arrow5{
    width:20%;
    display: block;
    position:absolute;
    float: right;
    right: -2%;
    top: 40%;
}

table{
    width: fit-content;
    height: auto;
    display: block;
    position: relative;
    margin-left: auto;
    margin-right: 25%;
    margin-top: 5%;
}

tbody, tr{
    display: block;
    width: 100%;
}

tr{
    margin-top: 5%;
}

td{
    display: inline-block;
    font-size: var(--font-size-18);
    vertical-align: middle;
}

.td-ttl{
    text-align: center;
    width: 180px;
}

.td-item{
    text-align: left;
    padding-left: 50px;
    width: auto;
}

.td-line{
    border-left: 1px solid black;
    height: 56px;
}

#arrow-6{
    height: auto;
    width: fit-content;
    display: block;
    position: relative;
    /*margin-top:-10%;*/
    margin-left:-5%;
}

#arrow6{
    display: block;
    height: 22vw;
}

.ele-arrow{
    width: 21%;
    display: block;
    position: absolute;
    margin-left: 15%;
    margin-top: 5%;
}


/*--- Recruitment ---*/

#recruitment{
    margin-bottom: 10%;
}

#title-5{
    display: block;
    position: relative;
}

.recruit-box{
    width: 100%;
    margin-top: 8%;
    justify-content: space-around;
}

.recruit-no{
    width: 25vw;
}

.hover-effect:hover{
    transform: scale(103%);
    transition: 0.25s ease-in-out;
}

footer{
    bottom: 0;
    position: relative;
    width: 100%;
    height: auto;
    background-color: var(--background-dark);
}

#sns{
    height: 100%;
    width: 80%;
    padding-top: 8%;
    padding-bottom: 5%;
    justify-content: space-around;
}

#sns-check{
    width: 15vw;
    margin-top: -5%;
    align-self: flex-start;
}

#sns-elephant{
    width: 18vw;
    margin-bottom: -5%;
    align-self: center; 
}

.ft-textbox{
    width: 50%;
    margin: 0 50px;
    align-self: center;
}

.ft-textbox h1,
.ft-textbox h3{
    color: var(--font-on-blue);
}

.ft-textbox h1{
    text-align: center;
    font-size: 2.3vw;
    margin-bottom: 5%;
}

.ft-textbox h3{
    text-align: justify;
    font-size: 1.5vw;
    line-height: 3.5vw;
}

.sns-btn{
    width: 50%;
    position: relative;
    display: block;
    transition: 0.3s ease-in-out;
}

#insta-btn{
    margin-left: auto;
    margin-right: 0;
    right: -25%;
    top: -10%;
}

#hp-btn{
    left: -25%;
}

#hp-btn:hover{
    transform: translate(45%);
}

#insta-btn:hover{
    transform: translate(-45%)
}

.sns-btn-box{
    height: 200px;
}

#return-top{
    width: 100%;
    height: 50px;
    position: absolute;
    bottom: 0;
    background-color: var(--background-light);
}

#return-top img{
    height: 100%;
}


/* Responsive */
    
/* for tablet */
@media (max-width: 1023px){
    :root{ 
        --font-size-15: 1.215rem;
        --font-size-17: 1.269rem;
        --font-size-18: 1.383rem;
        }
   
        .full-width{
            margin: 0 -8%;
        }
        
        section{
            width: 85vw;
        }
        
    /* Navigation */
        .recruit-logo{
            width: 135px;
            margin-top: 5px;
        }

        #header-nav{
            width: 480px;
            justify-content: space-around;
            height: 80px;
            padding: 0px;
            margin-left: auto;
        }
        
        #header-nav ul li a {
            text-align: left;
        }

        
        .nav-box{
            padding-right: 15px;

        }

        .toggle-btn{
            width: 40px;
            margin: -3px 10px 0 0;
        }

        .toggle-menu{
            width: 480px;
            height: 100vh;
        }

        .toggle-menu ul{
            margin-left: 25px;
        }

        li.bold{
            font-size: 2vw;
        }

     /* Main Contents */

        .sec-title{
            min-height: 40px;
            max-height: 50px;
        }

        #title-1{
            padding: 0;
        }

        #slogan_eng{
            width: 80vw;
            margin-top: 10%;   
        }

        #slogan_jp{
            margin-top: 5%;
            font-size: 2.5vw;
            line-height: 4.5vw;
        }

        #news-title{
            width: auto;
            max-width: 12vw;
            margin-bottom: 10px;
        }

        #news{
            padding: 10px 15px;
            margin: 0;
        }

        #news li{
            color: var(--font-on-blue);
            font-size: var(--font-size-17);
            line-height: 2rem;
            margin: 5px 10px;
        }


        #phil-left-img{
            width: 100vw;
            margin-left: -5%;
            position: absolute;
            flex-flow: row nowrap;
        }

        #phil-ppl-left-1{
            max-width: 30vw;
            margin: 2% 0 2% 2%;
            align-self: flex-start;
            } 
            
        #phil-ppl-left-2{
            max-width: 32vw;
            margin: 2% 5% 0 auto;
            align-self: flex-end;
        }

        #philosophy-text{
            width: 45%;
            text-align: justify;
            margin: 225px auto 20px auto;
        }

        #phil-right-img{
            width: fit-content;
            position: relative;
            margin-right: 0;
            margin-left: auto;
            margin-top: 0;
            justify-content: center;
        }

        .phil-ppl-right{
            height: 30.5vw;
            width: auto;
        }   

        #ele-arrow1{
            width: 65vw;
            margin-top: -10%;
            margin-left: -10px;
            }
            
        #credo{
            margin-top: 0;
        }
        
        
        .credo-list{
            width: 100%;
            height: auto;
            position: relative;
            display: inline-block;
            left: -20px; 
        }
        
        .credo-box{
            width: 100%;
            align-content: flex-start;
        }
        
        .credo-item{
            height: 12vw;
            width: auto;
        }
        
        .credo-item img{
            height: 100%;
            width: auto;
        }
        
        #arrow-grp1{
            width: 25vw;
            display: block;
            position: absolute;
            right: -3%;
            bottom: 0;
            top: 200px;
        }

        #ele-arrow-2{
            margin-bottom:25%;
        }
        
        #btm-arrow{
            margin-top: 50%;
            height: auto;
        }
        
        #ele-arrow-3{
            width:45%;
            margin-top: 25px;
        }

        #business{
            background-image: url(../img/wave-bck-mb.svg);
            background-repeat: no-repeat;
            background-size: 110%;
        }    
    
        .business-details{
            width: 95vw;    
            display: grid;
            justify-content: center;
            grid-template-columns: 50% 50%;
            grid-template-rows: auto;
            grid-template-areas: 
                "box1 box2"
                "box3 box4"
                "box5 box6"
                "box7 box8";
            column-gap: 0;
        
        }
        
        .row2{
            top:0;
        }
        
        .row3{
            top:0;
        }
    
        .detail-3, .detail-4{
            position: relative; 
            top: -22%;
        }
    
        .detail-5, .detail-6{
            top: -45%;
        }
    
        .detail-7, .detail-8{
            top: -65%;
        }

        .detail-1 .bd-char{
            margin-left: 8%;
        }

        .detail-5 .bd-char{
            margin-left: auto;
            margin-right: auto;
        }
        
        .text-box{
            width: 45vw;
            height: 45vw;
            border-radius:100%;
            background-color: white;
            position: relative;
            padding-left: 15%;
            padding-right: 15%;
            padding-top: 5%;
        }
        
        .text-box p{
            font-weight: 400;
        }
        
        .top-pad-1{
            padding-top: 5%;
        }
        
        .top-pad-2{
            padding-top: 10%;
        }
        
        .bd-char{
            width:35vw;
            position: relative;
            display: block;
            top:12%;
        }
        
        .bd-title-grp{
            display: block;
            width:fit-content;
        }
        
        .bd-title-grp, .bd-title-box{
            margin-bottom: 2%;
        }
        
        .bd-title, .sub-ttl{
            display: block;
        }
        
        .bd-title{
            height: 4.5vw;
        }
        
        .sub-ttl{
            height: 3vw;
            margin: 2px auto;
        }
        
        .bd-box{
            justify-self: center;
            margin: 0 3%;
        }
        
        .bd-box p{
            font-size: 1.7vw;
            line-height: 2.7vw;
            text-align: justify;
        }
    
        .arrow-ele-grp{
            display: block;
            position: absolute;
            float: right;
        }
        
        #arrow-2{
            width: 26%;
            right: -11%;
            bottom: 51%;
        }
        
        #ele-1{
            width: 17%;
            right: 15%;
            bottom: 9%;
        }
        
        #arrow-3{
            width: 20%;
            right: 0;
            left: -2%;
            bottom: 33%;
            transform: rotate(80deg);
        }
        
        /*--- Employee Welfare ---*/

        #employee-welfare{
            width:100vw;
            margin-top:-25%;
            margin-bottom:7%;
        }

        #title-6{
            margin: auto;
        }

        #ew-text{
            text-align: center;
            margin: 40px auto;
            font-size: 2.2vw;
            line-height: 4vw;
        }

        #ew-text-mobile{
            display: none;
        }

        #sub-ttl-6{
            width:90%;
            margin: auto;
        }

        .employee-welfare-menu{
            display: flex;
            flex-flow: row wrap;
            justify-content: space-evenly;
            width:90%;
            margin: auto;
            margin-top: -3%;
        }

        .ew-item{
            width: 37vw;
            margin: 0 10px 25px 10px;
            padding: 10px;
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            align-self:flex-start
        }

        .ew-item-ttl{
            height: 8vw;
            width:auto;
            display: block;
            margin: 20px auto;
        }

        .ew-img{
            width:85%;
            display: block;
            margin: auto;
        }

        #ew-item-text{
            width: 100%;
            font-size: 1.7vw;
            text-align: left;
            line-height: 2.7vw;
            font-weight: 400;
            line-break: strict;
            margin: 0;
        }


        #overview{
            margin-top: 0;
        }

        #arrow-4{
            width: 25%;
            right: -5%;
            bottom: 5%;
        }
    

        td{
            display: inline-block;
            font-size: 1.75vw;
            vertical-align: middle;
        }

        .arrow5{
            width: 20%;
            display: block;
            position: absolute;
            float: right;
            right: -2%;
            top: 40%;
        }

        .ele-arrow{
            width: 25%;
            margin-left: 5%;
            margin-top: 5%;
        }

        #arrow-6{
            margin-top: 10%;
            margin-left: -6%;
            margin-bottom: 25px;
        }
        
        #arrow6{
            height: 250px;
        }

        #sns{
            width: 80%;
            padding-top: 8%;
            padding-bottom: 5%;
            justify-content: space-around;
        }
        
        #sns-check{
            width: 22%;
            margin-top: -5%;
            align-self: flex-start;
            margin-right: 35px;
        }
        
        #sns-elephant{
            width: 22%;
            margin-bottom: -10%;
            align-self: center; 
            margin-left: 35px;
        }
        
        .ft-textbox{
            width: 43%;
            align-self: center;
            margin: auto;
        }
        
        .ft-textbox h1,
        .ft-textbox h3{
            color: var(--font-on-blue);
        }
        
        .ft-textbox h1{
            text-align: center;
            font-size: 2vw;
            margin-bottom: 5%;
        }
        
        .ft-textbox h3{
            text-align: justify;
            font-size: 1.5vw;
            line-height: 3.5vw;
        }
        
        .sns-btn{
            width: 50%;
            position: relative;
            display: block;
            transition: 0.3s ease-in-out;
        }
        
        #insta-btn{
            margin-left: auto;
            margin-right: 0;
            right: -25%;
            top: -10%;
        }
        
        #hp-btn{
            left: -22%;
        }
        
        #hp-btn:hover{
            transform: translate(25%);
        }
        
        #insta-btn:hover{
            transform: translate(-25%)
        }
    
        .sns-btn{
            width: 450px;
            margin-bottom: 50px;   
        }
    
        #hp-btn{
            left: -22%;
        }
        
        .sns-btn-box{
            height: 20vh;
        }
}

/* for mobile */
@media (max-width: 767px){

:root{ 
     --font-size-15: 1.138rem;
     --font-size-17: 1.296rem;
     --font-size-18: 1.383rem;
     }

/* Layout */

.full-width{
    margin: 0 -8%;
}

section{
    width: 85vw;
}

/* Navigation */
    .recruit-logo{
        width: 14vh;
        margin-top: 0;
        margin-left: 15px;
        padding-top: 5px;
    }

    .nav-box{
        display: none;
    }

    #header-nav{
        width: 100px;
        justify-content: space-around;
        height: 7vh;
        padding: 0px;
        margin-left: auto;
    }

    .toggle-btn{
        width: 45px;
        margin: -3px 20px 0 40px;
    }

    .toggle-menu{
        width: 65vw;
        height: 100vh;
    }

    .toggle-menu ul{
        margin-left: 0;
        padding-left: 10px;
    }

    li.bold{
        font-size: 3.5vw;
    }

    #insta-logo{
        width: 20px;
    }

/* Main Contents */

    .sec-title{
        height: 3vh;
    }

    #title-1{
        padding: 0;
    }

    #slogan_eng{
        width: 80vw;
        margin-top: 10%;   
    }

    #slogan_jp{
        margin-top: 8%;
        font-size: 3.5vw;
        line-height: 6.5vw;
    }

    #group-web{
        display: none;
    }

    #group-mb{
        display: block;
    }

    #news-box{
        width: 100%;
    }

    #news-title{
        max-width: 20vw;
        margin-bottom: 10px;
    }

    #news{
        padding: 10px 15px;
        margin: 0;
        flex-wrap: wrap;
    }

    #news li{
        color: var(--font-on-blue);
        font-size: var(--font-size-15);
        line-height: 2rem;
        margin-top: 0;
        margin-bottom: 0;
    }

    #date{
        margin-right: 5px;
    }

    #phil-left-img{
        width: 100vw;
        margin-left: -5%;
        position: absolute;
        flex-flow: row nowrap;
    }

       #phil-ppl-left-1{
        max-width: 45vw;
        margin: 2% 10% 2% 0;
        align-self: flex-start;
        } 
        
    #phil-ppl-left-2{
        max-width: 45vw;
        margin: 5% 2% 0 auto;
        align-self: flex-end;
    }

    #philosophy-text{
        width: 68%;
        font-size: 3vw;
        line-height: 6.5vw;
        text-align: justify;
        margin: 48% auto 20px auto;
    }

    #phil-right-img{
        width: fit-content;
        position: relative;
        margin-right: 0;
        margin-left: auto;
        margin-top: 0;
        justify-content: center;
    }

    .phil-ppl-right{
        height: 22vh;
        width: auto;
    }

    #ele-arrow1{
    width: 75vw;
    margin-top: -20%;
    margin-left: -10px;
    }

    #credo{
        margin-top: 15%;
    }
    
    #title-2{
        margin-right: 20%;
        margin-bottom: 35px;
        margin-top: -20px;
    }
    
    .credo-list{
        width: 100%;
        height: auto;
        position: relative;
        display: inline-block;
        left: -20px; 
    }
    
    .credo-box{
        width: 100%;
        align-content: flex-start;
    }
    
    .credo-item{
        height: 12.5vw;
        width: auto;
    }
    
    .credo-item img{
        height: 100%;
        width: auto;
    }
    
    #arrow-grp1{
        width: 25vw;
        display: block;
        position: absolute;
        right: -3%;
        bottom: 0;
        top: 20%;
    }
    
    #ele-arrow-2{
        margin-bottom:50%;
    }

    #btm-arrow{
        margin-top: 25%;
        height: auto;
        margin-left: 10%;
    }
    
    #ele-arrow-3{
        width:45%;
        margin-top: 25px;
    }
    
    #business{
        background-image: url(../img/wave-bck-mb.svg);
        background-repeat: no-repeat;
        background-size: 120%;
    }

    .business-details{
        width: 100vw;    
        display: grid;
        justify-content: center;
        grid-template-columns: 50% 50%;
        grid-template-rows: auto;
        grid-template-areas: 
            "box1 box2"
            "box3 box4"
            "box5 box6"
            "box7 box8";
        column-gap: 0;
    
    }
    
    .row2{
        top:0;
    }
    
    .row3{
        top:0;
    }

    .detail-3, .detail-4{
        position: relative; 
        top: -22%;
    }

    .detail-5, .detail-6{
        top: -45%;
    }

    .detail-7, .detail-8{
        top: -65%;
    }

    .text-box{
        width: 48vw;
        height: 48vw;
        border-radius:100%;
        background-color: white;
        position: relative;
        padding-left: 18%;
        padding-right: 18%;
        padding-top: 2%;
    }
    
    .text-box p{
        font-weight: 400;
    }
    
    .top-pad-1{
        padding-top: 5%;
    }
    
    .top-pad-2{
        padding-top: 15%;
    }
    
    .bd-char{
        width:40vw;
        position: relative;
        display: block;
        top:12%;
    }
    
    .bd-title-grp{
        display: block;
        width:fit-content;
    }
    
    .bd-title-grp, .bd-title-box{
        margin-bottom: -2px;
    }
    
    .bd-title, .sub-ttl{
        display: block;
    }
    
    .bd-title{
        height: 5vw;
    }
    
    .sub-ttl{
        height: 3vw;
        margin: 2px auto;
    }
    
    .bd-box{
        justify-self: center;
        margin: 0 3%;
    }
    
    .bd-box p{
        font-size: 2.2vw;
        line-height: 3vw;
        text-align: justify;
    }


    .arrow-ele-grp{
        display: block;
        position: absolute;
        float: right;
    }
    
    #arrow-2{
        width: 26%;
        right: -11%;
        bottom: 51%;
    }
    
    #ele-1{
        width: 20%;
        right: 15%;
        bottom: 9%;
    }
    
    #arrow-3{
        width: 20%;
        right: 0;
        left: -2%;
        bottom: 32%;
        transform: rotate(80deg);
    }
    
    #arrow-4{
        width: 27vw;
        right: -6%;
        bottom: 60px;
    }

    /*--- Employee Welfare ---*/

    #employee-welfare{
        width:100vw;
        margin-top:-10%;
        margin-bottom:7%;

    }

    #title-6{
        margin: auto;
    }

    #ew-text{
        display: none;
    }

    #ew-text-mobile{
        display: block;
        text-align: center;
        margin: 20px auto;
        font-size: 3vw;
        line-height: 5.5vw;
        width: 80%;
    }

    #sub-ttl-6{
        width:95%;
        margin-left: -3%;
    }

    .employee-welfare-menu{
        display: flex;
        flex-flow: row wrap;
        justify-content: space-evenly;
        width:90%;
        margin: auto;
        margin-top: -3%;
    }

    .ew-item{
        width: 42vw;
        margin: 0 5px 20px 5px;
        padding: 5px;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        align-self:flex-start
    }

    .ew-item-ttl{
        height: 9vw;
        width:auto;
        display: block;
        margin: 15px auto;
    }

    .ew-img{
        width:85%;
        display: block;
        margin: auto;
    }

    #ew-item-text{
        width: 100%;
        font-size: 2.6vw;
        text-align: left;
        line-height: 4vw;
        font-weight: 400;
        line-break: strict;
        margin: 0;
    }



    #overview{
        width: 100vw;
        /*margin-top: -25%;*/
    }
    
    #title-4{
        display: block;
        position:relative;
        margin-right:auto;
        margin-left:10%;
        margin-bottom: 5%;
    }
    
    .arrow5{
        width: 22vw;
        display: block;
        position: absolute;
        float: right;
        right: -2%;
        top: 30%;
    }
    
    table{
        width: fit-content;
        margin-left: auto;
        margin-right: auto;
        margin-top: 25%;
    }
    
    tbody, tr{
        display: block;
        width: 100%;
    }
    
    tr{
        margin-top: 10%;
    }

    td{
        font-size: 3vw;
    }
    
    .td-ttl{
        text-align: center;
        width: 20vw;
    }
    
    .td-item{
        text-align: left;
        padding-left: 15px;
        width: auto;
    }
    
    .td-line{
        border-left: 1px solid black;
        height: 40px;
    }
    
    #arrow-6{
        margin-top: 50px;
        margin-left: -6%;
        margin-bottom: 25px;
    }
    
    #arrow6{
        display: block;
        height: 150px;
    
    }
    
    .ele-arrow{
        width: 30vw;
        margin-left: 10%;
        margin-top: 3%;
    }
    
    #recruitment{
        margin-bottom: 10%;
    }
    
    #title-5{
        width: auto;
        display: block;
        position: relative;
        margin: 0 auto;
    }
    
    .recruit-box{
        width: 94vw;
        margin-top: 8%;
        margin-left: -5%;
        margin-right: -5%;
        justify-content: space-around;
    }
    
    .recruit-no{
        width: 28vw;
    }
    
    footer{
        bottom: 0;
        position: relative;
        width: 100%;
        height: auto;
        background-color: var(--background-dark);
    }
    
    #sns{
        height: 100%;
        width: 95%;
        padding-top: 8%;
        padding-bottom: 5%;
        justify-content: space-around;
    }
    
    #sns-check{
        width: 20vw;
        margin-top: -5%;
        align-self: flex-start;
        margin-right: 15px;
    }
    
    #sns-elephant{
        width: 20vw;
        margin-bottom: -10%;
        margin-left: 15px;
        align-self: center; 
    }
    
    .ft-textbox{
        width: 100%;
        align-self: center;
        margin: auto;
    }
    
    .ft-textbox h1,
    .ft-textbox h3{
        color: var(--font-on-blue);
    }
    
    .ft-textbox h1{
        text-align: center;
        font-size: 4vw;
        margin-bottom: 5%;
    }
    
    .ft-textbox h3{
        text-align: justify;
        font-size: 3.2vw;
        line-height: 5vw;
    }
    
    .sns-btn{
        width: 50%;
        position: relative;
        display: block;
        transition: 0.3s ease-in-out;
    }
    
    #insta-btn{
        margin-left: auto;
        margin-right: 0;
        right: -25%;
        top: -10%;
    }
    
    #hp-btn{
        left: -25%;
    }
    
    #hp-btn:hover{
        transform: translate(25%);
    }
    
    #insta-btn:hover{
        transform: translate(-25%)
    }

    .sns-btn{
        width: 350px;
        margin-bottom: 50px;   
    }

    #hp-btn{
        left: -25%;
    }
    
    .sns-btn-box{
        height: 150px;
    }

} 