/*
/////////////////////////////////////////////////////////////
hero
//////////////////////////////*/

#hero-area {
    padding: 260px 0;
    color: #fff;
    position: relative;
    height:100vh;
    width:100%;
    overflow-y: hidden;
    overflow-x: hidden;
    min-height:580px;
}
#hero-area video {
    position:absolute;
}
@media (aspect-ratio: 16/9), (min-aspect-ratio: 16/9) {
    #hero-area video {
        width:110%;
        top: 50%;
        left:-5%;
        transform: translateY(-50%);
    }
}
@media (max-aspect-ratio: 16/9) {
  #hero-area video {
    height: 110%;
    top: -4%;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media screen and (max-height: 480px) {
    #hero-area video {
      height: 110%;
      width:auto;
      top: -4%;
      left: 50%;
      transform: translateX(-50%);
    }
    @media screen and (min-width: 1018px) {
        #hero-area video {
            height:auto;
            width:110%;
            top: 50%;
            left:-5%;
            transform: translateY(-50%);
        }
    }
}
#hero-area .hero-text-area {
    letter-spacing:0.2em;
    position:absolute;
    bottom:150px;
    width:100%;
}
#hero-area .hero-text-area .container {
    position:relative;
    z-index:999;
}
#hero-area .hero-text {
    padding:0 20px;
}
#hero-area .hero-text h1 {
    font-size:38px;
    letter-spacing:0.4em;
    margin-bottom:0.7em;
    padding:0 20px;
}

#hero-area .hero-text > div {
    padding:0 20px;
    font-size:16px;
}

#hero-area .block {
    position: relative;
    z-index: 999;
}

.act-overlay-mobile{
    position: absolute;
    z-index: 3;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: .4;
    background: #000;
}
@media screen and (max-width: 750px) {
    #hero-area .hero-text h1{
        font-size:40px;
    }
}
@media screen and (max-width: 600px) {
    #hero-area .hero-text h1{
        font-size:35px;
    }
    #hero-area .hero-text {
        padding:0;
    }
}
@media screen and (max-width: 500px) {
    #hero-area .hero-text > div {
        padding:0;
        font-size:13px;
    }
    #hero-area .hero-text h1{
        font-size:30px;
        padding:0;
    }
    #hero-area .hero-text-area {
        bottom:150px;
    }
    #hero-area {
        max-height:550px;
    }
}

/*
////////////////////////////////////////
news
//////////////////////////////////*/
.wow{
    visibility: hidden;
}
#news {
    background:#ebebeb;
    padding:30px 60px;
    position:relative;
    top:-100px;
    margin-bottom:-100px;
    z-index:5;
}
#news h2 {
    color:#c00528;
    font-weight:bold;
    font-size:38px;
    margin-top:0;
    letter-spacing: 0.2em;
    margin-bottom:25px;
}
#news h2 span img {
    width:80px;
    vertical-align:top;
    margin-right:-1rem;
    position: relative;
    right:-20px;
    -webkit-transition: .2s all;
    -o-transition: .2s all;
    transition: .2s all;
}
#news h2 span img:hover {
    right:-30px;
}
#news h3{
    font-size:16px;
    border-bottom:1px solid #c5c5c5;
    padding-bottom:0.5rem;
    margin-bottom:30px;
}
#news h3 a {
    color:#000;
    display: inline-block;
    width: 40em;
    text-overflow: ellipsis;
    overflow: hidden;
    white-space: nowrap;
}
@media screen and (max-width: 1001px) {
    #news h3 a {
        width: 100%;
        margin:0 -100px;
        padding: 0 100px;
        font-weight:500;
    }
}
#news h3 a:hover {
    opacity:0.6;
}
#news .date {
    font-size:14px;
    color:#c00528;
    display:inline-block;
    margin-right:1rem;
}
@media screen and (max-width: 767px) {
    .container-news{
        padding:0;
    }
    #news h3 a {
        width: 100%;
        margin:0;
        padding: 0;
    }
    #news .date {
        display:block;
        margin:0 0 1.2em 0;
    }
}
#news .new-badge {
    display:inline-block;
    background:#c00528;
    padding:8px 15px;
    color:#fff;
    font-size:14px;
    margin-left:1.2rem;
}
@media screen and (max-width: 767px) {
    #news h2 {
        font-size:33px;
    }
    #news h2 span img{
        vertical-align: middle;
    }
    #news h3 {
        position:relative;
        margin-bottom:40px
    }
    #news h3:last-child {
        margin-bottom:30px;
    }
    #news .new-badge {
        position:absolute;
        top:-5px;
        left:90px;
        font-size:12px;
        padding:6px 13px;
    }
}
@media screen and (max-width: 600px) {
    #news {
        padding:30px 40px;
    }
    #news h2 {
        font-size:28px;
    }
    #news h3{
        font-size:14px;
    }
}
@media screen and (max-width: 400px) {
    #news {
        padding:20px;
    }
    #news h2 span img {
        right:0;
    }
}

/*
////////////////////////////////////////
top-service
//////////////////////////////////*/
.SvgIcon {
  position: absolute;
  width: 0;
  height: 0;
}
#service .sbox {
    position:relative;
    margin:0 -5%;
    padding:40px 0;
    display: flex;
    align-items: center;
}
.sbox-left {
    position:relative;
    left:4%;
}
.sbox-right {
    position:relative;
    right:4%;
}
.sbox-photo {
    width:55%;
    z-index:5;
}
.sbox-text {
    width:45%;
    background:#fff;
    box-shadow: 6px 6px 12px 5px rgba(0,0,0,0.2);
    z-index:6;
}
.sbox-text h3{
    color:#c00528;
    font-weight:700;
    font-size:1.1rem;
    padding:35px 40px 0;
    margin:0;
}
.sbox-text h3 p {
    margin:0;
}
.sbox-text h3 p.sub{
    color:#000;
    font-size:1.3rem;
    margin:1rem 0;
}
.sbox-text > div {
    font-size:13px;
    padding:0 40px;
}
.sbox .more {
    margin:0;
    font-weight:700;
}
.sbox .more a {
    display:block;
    color:#c00528;
    padding:20px 40px 30px;
}
.sbox .more a:hover {
    color:#000;
}

.sbox .more svg{
    width:22.48px;
    height:22.48px;
    fill:currentColor;
    margin-right:0.5rem;
    vertical-align: bottom;
}
@media screen and (max-width: 1000px) {
    .sbox-text h3{
        font-size:15px;
    }
    .sbox-text h3 p.sub{
        font-size:18px;
    }
    .sbox-text h3 {
        padding:25px 30px 0;
    }
    .sbox-text > div {
        padding:0 30px;
    }
    .sbox .more a {
        padding:15px 30px 20px;
        font-size:15px;
    }
    .sbox .more svg{
        transform:scale(0.9);
    }
}
#service > div.sbox:nth-child(3) > .sbox-left.sbox-photo {
    display:none;
}
@media screen and (max-width: 850px) {
    .container-service {
        padding:0;
    }
    #service .sbox {
        display:block;
        clear:both;
    }
    .sbox-right {
        float:right;
    }
    .sbox-photo {
        min-width:420px;
        width:60%;
    }
    .sbox-text {
        min-width:420px;
        width:50%;
        margin-top:-10%;
    }
    #service > div.sbox:nth-child(3) > .sbox-left.sbox-photo {
        display:block;
    }
    #service > div.sbox:nth-child(3) > .sbox-right {
        display:none;
    }
    #service > div.sbox:nth-child(3) > .sbox-text {
        float:left;
    }
    #service > div.sbox:nth-child(3) > .sbox-photo {
        left:0;
        float:right;
    }
}
@media screen and (max-width: 420px) {
    #service .sbox{
        width:100%;
        margin:0;
    }
    .sbox-text h3{
        font-size:13px;
        padding: 25px 20px 0 20px;
    }
    .sbox-text h3 p.sub{
        font-size:15px;
    }
    .sbox-right {
        right:0;
        width:auto;
        min-width:auto;
        margin-left:20px;
    }
    .sbox-left {
        left:0;
        width:auto;
        min-width:auto;
        margin-right:20px;
    }
    .sbox-text > div {
        font-size:11px;
        padding: 0 20px;
    }
    .sbox-right.sbox-text{
        margin-left:20px;
    }
    #service > div.sbox:nth-child(3) > .sbox-photo {
        margin-left:20px;
        margin-right:0;
    }
    .sbox .more a {
        padding: 15px 20px 20px;
        font-size: 13px;
    }
    .sbox .more svg{
        transform:scale(0.8);
        vertical-align: top;
    }
}

/*
////////////////////////////////////////
top-message
//////////////////////////////////*/

#message .message-text {
    line-height:2.3em;
    font-size:14px;
    padding:0 45px;
}
#message .message-ceo {
    line-height:1.8em;
    margin-top:100px;
    font-size:17px;
    padding:0 45px;
}
#message .message-ceo p{
    margin:0;
}
#message .message-ceo .sign{
    position:relative;
    width:400px;
    z-index:6;
}
#message .message-ceo .photo{
    position:relative;
    z-index:5;
    top:-90px;
    float:right;
    width:70%;
}
@media screen and (max-width: 767px) {
    #message .message-text {
        margin:0 25px;
        line-height:1.8em;
        padding:0;
        padding-top:30px;
    }
    #message .message-ceo {
        margin-left:25px;
        padding:0;
    }
    #message .message-ceo span{
        display: inline-block;
    }
    #message .message-ceo .photo{
        position:relative;
        left:15px;
    }
    #message .message-ceo .sign{
        width:55%;
        margin-top:20px;
    }
    #message .message-ceo .photo{
        position:relative;
        z-index:5;
        top:-50px;
        float:right;
        width:85%;
        margin-left:30px;
    }
}
@media screen and (max-width: 600px) {
    #message .message-ceo {
        margin-top:80px;
        font-size:15px;
    }
}
@media screen and (max-width: 450px) {
    #message .message-text {
        margin:0;
    }
    #message .message-ceo {
        margin-left: 0;
    }
    #message .message-ceo .sign{
        width:55%;
    }
    #message .message-ceo .photo{
        width:95%;
        top:-20px;
    }
}
