/* About 01 */

.about-01 {
    position: relative;
    width: 100%;
}

.about-01 .slide>img {
    display: block;
    width: 100%;
    height: auto;
}

.about-01 .tab-icons {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
}

.about-01 .tab-icon {
    display: block;
    width: calc(100% / 6);
    max-width: 5rem;
    text-align: center;
    font-size: 1.25rem;
    margin: .5rem 0 0 0;
    line-height: .9;
}

.about-01 .tab-icon.active {
    font-weight: 600;
}

.about-01 .tab-icon .icon {
    position: relative;
    display: block;
    width: 86%;
    max-width: 4.375rem;
    margin: 0 auto .375rem auto;
}

.about-01 .tab-icon .icon>img {
    display: block;
    width: 100%;
    height: auto;
}

.about-01 .tab-icon .icon>img.icon-active {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity .25s;
}

.about-01 .tab-icon:hover .icon>img.icon-active,
.about-01 .tab-icon.active .icon>img.icon-active {
    opacity: 1;
}

.about-01 .slide-phil {
    position: relative;
    width: 100%;
    height: calc(100vh - 5rem);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 3rem 1rem;
}

.about-01 .slide-phil-1 .text-wrapper {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    max-width: 48rem;
    margin: 1.75rem auto 0 auto;
}

.about-01 .slide-phil-1 .text-set {
    display: flex;
    align-items: flex-end;
    color: #000;
}

.about-01 .slide-phil-1 .title {
    font-size: 14.5rem;
    font-weight: 600;
    line-height: .5;
    margin: 0;
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    background-image: linear-gradient(to bottom, #63507f, #3b2856);
}

.about-01 .slide-phil-1 .desc {
    font-size: 2.75rem;
    font-weight: 300;
    line-height: .7;
    margin: 0 0 0 .125rem;
}

.about-01 .slide-phil-1 .text-set:nth-child(2) .desc {
    margin: 0 0 0 .75rem;
}

.about-01 .slide-phil-1 .text-set:nth-child(3) .desc {
    margin: 0 0 0 -.75rem;
}

.about-01 .slide-phil-2 {
    padding: 3.5rem 1rem 1rem 1rem;
}

.about-01 .slide-phil-2 .quote-container {
    width: 100%;
    margin: 0 auto;
    max-width: 50rem;
    padding: 0 0 0 10rem;
}

.about-01 .slide-phil-2 .text-container {
    position: relative;
    width: 100%;
    max-width: 74rem;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 2.25rem 0 0 auto;
}

.about-01 .slide-phil-2 .text-wrapper {
    width: 50%;
    min-height: 11.6875rem;
    background-size: cover;
    background-position: right center;
    background-repeat: no-repeat;
    color: #fff;
    padding: 1rem 6.5rem 1rem 6rem;
    text-align: right;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.about-01 .slide-phil-2 .text-wrapper-left {
    transform: translateX(6.1875rem);
}

.about-01 .slide-phil-2 .text-wrapper-right {
    background-position: left center;
    text-align: left;
    padding: 1rem 12rem 1rem 6.5rem;
    margin: 5.375rem 0 0 0;
}

.about-01 .slide-phil-2 .text-wrapper>* {
    width: 100%;
}

.about-01 .slide-phil-2 .title {
    font-size: 1.625rem;
    font-weight: 300;
    color: #5e2185;
}

.about-01 .slide-phil-2 .text-wrapper p {
    font-size: 1.25rem;
    font-weight: 200;
    margin: .5rem 0 0 0;
}

.about-01 .slide-phil-2 .text-wrapper-right .title {
    color: #e7f44f;
}

.about-01 .slide-phil-2 .cut {
    display: block;
    width: auto;
    height: calc(100% + 12rem);
    position: absolute;
    top: -3rem;
    left: calc(50% - 3.25rem);
}

.about-01 .slide-phil-3 .text-container {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: rgba(255, 255, 255, .6);
    padding: 0 1rem;
}

.about-01 .slide-phil-3 .text-wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    padding: 0 0 .75rem 0;
    width: 100%;
    max-width: 70rem;
    margin: 0 auto;
}

.about-01 .slide-phil-3 .text-set {
    width: calc(100% / 6);
    padding: 1rem 0 0 0;
    text-align: center;
    color: #000;
}

.about-01 .slide-phil-3 .title {
    font-size: 8rem;
    font-weight: 600;
    line-height: .7;
    margin: 0;
    background-clip: text;
    -webkit-background-clip: text;
    color: transparent;
    background-image: linear-gradient(to bottom, #63507f, #3b2856);
}

.about-01 .slide-phil-3 .desc {
    font-size: 1.625rem;
    font-weight: 500;
    line-height: .8;
}

.about-01 .slide-phil-3 p {
    font-size: 1.25rem;
    font-weight: 300;
    line-height: 1;
    margin: .25rem 0 0 0;
}

.about-01 .slide-phil-4 {
    position: relative;
    display: flex;
    align-items: center;
    padding: 1rem;
}

.about-01 .slide-phil-4 .icon-container {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.about-01 .slide-phil-4 .icon-container>img {
    display: block;
    width: 440px;
    height: auto;
}

.about-01 .slide-phil-4 .text-container {
    position: relative;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    color: #000;
    width: 100%;
    max-width: 74rem;
    margin: 0 auto;
}

.about-01 .slide-phil-4 .text-wrapper {
    display: flex;
    flex-wrap: wrap;
    width: 20rem;
}

.about-01 .slide-phil-4 .text-set {
    width: 100%;
    margin: 3rem 0 0 0;
    text-align: right;
}

.about-01 .slide-phil-4 .text-set:nth-child(1) {
    margin: 0;
}

.about-01 .slide-phil-4 .text-wrapper:nth-child(2) .text-set {
    text-align: left;
}

.about-01 .slide-phil-4 .title {
    font-size: 1.5rem;
    font-weight: 600;
}

.about-01 .slide-phil-4 .desc {
    font-size: 1.3125rem;
}

.about-01 .slide-phil-5 .text-wrapper {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    color: #fff;
    width: 100%;
    max-width: 68rem;
    margin: 4rem auto 0 auto;
}

.about-01 .slide-phil-5 .text-set {
    width: 20%;
    text-align: center;
}

.about-01 .slide-phil-5 .title {
    font-size: 1.6875rem;
}

.about-01 .slide-phil-5 .desc {
    font-size: 1.1875rem;
    font-weight: 200;
    margin: 0;
}

.about-01 .slide-phil-6 {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding: 1rem 4rem;
}

.about-01 .slide-phil-6 .text-wrapper {
    width: 100%;
    max-width: 40rem;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 2rem 10rem 2.5rem 2.625rem;
    color: #fff;
}

.about-01 .slide-phil-6 .title {
    font-size: 6rem;
    color: #6cdded;
    font-weight: 600;
    line-height: .6;
}

.about-01 .slide-phil-6 .desc {
    font-size: 1.6875rem;
    line-height: .9;
    margin: .5rem 0 0 0;
}

.about-01 .slide-phil-6 .sub {
    font-size: 1.6875rem;
    line-height: 1;
    margin: .5rem 0 0 0;
    color: #6cdded;
}

.about-01 .slide-phil-6 p {
    font-size: 1.3125rem;
    font-weight: 200;
    margin: .25rem 0 0 0;
}

@media screen and (max-width:1199.98px) {
    .about-01 .section-padding,
    .about-01 .section-bpadding {
        padding-bottom: 2.25rem;
    }
    .about-01 .tab-icons {
        margin: 1.75rem 0 0 0;
    }
    .about-01 .slide-phil {
        height: calc(100vh - 8rem);
    }
    .about-01 .slide-phil-2 .text-wrapper {
        padding: 1rem 6.5rem 1rem 3rem;
    }
    .about-01 .slide-phil-2 .text-wrapper-right {
        padding: 1rem 3rem 1rem 6.5rem;
    }
    .about-01 .slide-phil-3 .title {
        font-size: 7.5rem;
    }
    .about-01 .slide-phil-3 .desc {
        font-size: 1.5rem;
    }
    .about-01 .slide-phil-4 .text-container {
        max-width: 60rem;
    }
    .about-01 .slide-phil-4 .icon-container>img {
        width: 360px;
    }
    .about-01 .slide-phil-4 .text-wrapper {
        width: 17rem;
    }
    .about-01 .slide-phil-4 .text-set {
        margin: 2.25rem 0 0 0;
    }
    .about-01 .slide-phil-4 br {
        display: none;
    }
    .about-01 .slide-phil-6 {
        padding: 1rem 3rem;
    }
    .about-01 .slide-phil-6 .text-wrapper {
        max-width: 37rem;
        padding: 1.875rem 8rem 2.25rem 2.375rem;
    }
    .about-01 .slide-phil-6 .title {
        font-size: 5.75rem;
    }
}

@media screen and (max-width:991.98px) {
    .about-01 .section-padding,
    .about-01 .section-bpadding {
        padding-bottom: 2rem;
    }
    .about-01 .tab-icons {
        margin: 1.5rem 0 0 0;
    }
    .about-01 .slide-phil {
        height: calc(100vh - 12rem);
    }
    .about-01 .slide-phil-1 .text-wrapper {
        max-width: 40rem;
    }
    .about-01 .slide-phil-1 .title {
        font-size: 11rem;
    }
    .about-01 .slide-phil-1 .desc {
        font-size: 2.5rem;
    }
    .about-01 .slide-phil-2 {
        padding: 2.5rem 1rem 1rem 1rem;
    }
    .about-01 .slide-phil-2 .quote-container {
        max-width: 40rem;
        padding: 0;
    }
    .about-01 .slide-phil-2 .text-container {
        margin: 1.75rem auto 0 auto;
    }
    .about-01 .slide-phil-2 .text-wrapper {
        width: 100%;
        padding: 1rem 10rem 1rem 14rem;
    }
    .about-01 .slide-phil-2 .text-wrapper-left {
        transform: translateX(0);
    }
    .about-01 .slide-phil-2 .text-wrapper-right {
        padding: 1rem 14rem 1rem 10rem;
        margin: 0;
    }
    .about-01 .slide-phil-2 .title {
        font-size: 1.5625rem;
    }
    .about-01 .slide-phil-2 .cut {
        display: none;
    }
    .about-01 .slide-phil-3 .text-set {
        width: calc((100% - 2rem) / 3);
    }
    .about-01 .slide-phil-3 .title {
        font-size: 5rem;
    }
    .about-01 .slide-phil-3 .desc {
        font-size: 1.375rem;
    }
    .about-01 .slide-phil-3 .text-set br {
        display: none;
    }
    .about-01 .slide-phil-4 .text-container {
        max-width: 48.5rem;
    }
    .about-01 .slide-phil-4 .icon-container>img {
        width: 260px;
    }
    .about-01 .slide-phil-4 .text-set {
        margin: 1.25rem 0 0 0;
    }
    .about-01 .slide-phil-4 .text-wrapper {
        width: 14rem;
    }
    .about-01 .slide-phil-4 .title {
        font-size: 1.375rem;
    }
    .about-01 .slide-phil-4 .desc {
        font-size: 1.25rem;
    }
    .about-01 .slide-phil-5 .text-wrapper {
        margin: 2.5rem auto 0 auto;
    }
    .about-01 .slide-phil-5 .text-set {
        width: calc((100% - 4rem) / 5);
    }
    .about-01 .slide-phil-5 br {
        display: none;
    }
    .about-01 .slide-phil-6 {
        padding: 1rem;
    }
    .about-01 .slide-phil-6 .text-wrapper {
        padding: 1.75rem 6rem 2.25rem 2.25rem;
    }
    .about-01 .slide-phil-6 .title {
        font-size: 5.5rem;
    }
}

@media screen and (max-width:767.98px) {
    .about-01 .tab-icon {
        max-width: 4.875rem;
    }
    .about-01 .slide-phil {
        height: 32rem;
    }
    .about-01 .slide-phil-1 .text-wrapper {
        max-width: 30rem;
    }
    .about-01 .slide-phil-1 .title {
        font-size: 8rem;
    }
    .about-01 .slide-phil-1 .desc {
        font-size: 2rem;
    }
    .about-01 .slide-phil-1 .text-set:nth-child(2) .desc {
        margin: 0 0 0 .5rem;
    }
    .about-01 .slide-phil-1 .text-set:nth-child(3) .desc {
        margin: 0 0 0 -.5rem;
    }
    .about-01 .slide-phil-2 {
        padding: 2rem 1rem 1rem 1rem;
    }
    .about-01 .slide-phil-2 .text-container {
        margin: 1.5rem auto 0 auto;
    }
    .about-01 .slide-phil-2 .text-wrapper {
        padding: 1rem 6.75rem 1rem 6rem;
    }
    .about-01 .slide-phil-2 .text-wrapper-right {
        padding: 1rem 6rem 1rem 6.75rem;
    }
    .about-01 .slide-phil-4 {
        display: block;
        height: auto!important;
        padding: 1.5rem 1rem;
    }
    .about-01 .slide-phil-4 .icon-container {
        position: relative;
        top: auto;
        bottom: auto;
        left: auto;
        right: auto;
        width: 100%;
    }
    .about-01 .slide-phil-4 .icon-container>img {
        width: 220px;
    }
    .about-01 .slide-phil-4 .text-wrapper {
        width: calc(50% - .5rem);
        margin: 1.5rem 0 0 0;
    }
    .about-01 .slide-phil-4 .text-set {
        margin: .875rem 0 0 0;
        text-align: left!important;
    }
    .about-01 .slide-phil-5 {
        padding: 1.5rem 1rem;
    }
    .about-01 .slide-phil-5 .text-wrapper {
        justify-content: center;
        margin: 0 auto;
    }
    .about-01 .slide-phil-5 .text-set {
        width: calc((100% - 2rem) / 3);
        margin: 0 1rem 1rem 0;
    }
    .about-01 .slide-phil-5 .text-set:nth-child(3),
    .about-01 .slide-phil-5 .text-set:last-child {
        margin: 0 0 1rem 0;
    }
    .about-01 .slide-phil-6 {
        padding: 1rem;
    }
    .about-01 .slide-phil-6 .text-wrapper {
        padding: 1.25rem;
    }
    .about-01 .slide-phil-6 .title {
        font-size: 5rem;
    }
    .about-01 .slide-phil-6 .desc,
    .about-01 .slide-phil-6 .sub {
        font-size: 1.5rem;
    }
    .about-01 .slide-phil-6 br {
        display: none;
    }
}

@media screen and (max-width:575.98px) {
    .about-01 .tab-icons {
        justify-content: center;
    }
    .about-01 .tab-icon {
        width: calc(100% / 3);
    }
    .about-01 .slide-phil {
        height: 28rem;
    }
    .about-01 .slide-phil-1 .text-wrapper {
        max-width: 25rem;
        margin: 1.5rem auto 0 auto;
    }
    .about-01 .slide-phil-1 .title {
        font-size: 5.25rem;
    }
    .about-01 .slide-phil-1 .desc {
        font-size: 1.625rem;
    }
    .about-01 .slide-phil-1 .desc {
        margin: 0;
    }
    .about-01 .slide-phil-1 .text-set:nth-child(2) .desc {
        margin: 0 0 0 .25rem;
    }
    .about-01 .slide-phil-1 .text-set:nth-child(3) .desc {
        margin: 0 0 0 -.25rem;
    }
    .about-01 .slide-phil-2 {
        height: auto;
    }
    .about-01 .slide-phil-2 .text-container {
        margin: 1rem auto 0 auto;
    }
    .about-01 .slide-phil-2 .text-wrapper {
        padding: .75rem 1rem;
        min-height: 0;
        text-align: left;
        background: #26c5cf!important;
    }
    .about-01 .slide-phil-2 .text-wrapper-right {
        padding: .75rem 1rem;
        background: #8c53b0!important;
    }
    .about-01 .slide-phil-3 .title {
        font-size: 4.5rem;
    }
    .about-01 .slide-phil-3 .desc {
        font-size: 1.25rem;
    }
    .about-01 .slide-phil-3 p {
        font-size: 1.1875rem;
    }
    .about-01 .slide-phil-5 {
        padding: 1rem 1rem;
        background-position: center 0;
        background-size: auto 116%;
    }
}


/* About 02 */

.about-02 .about-container {
    position: relative;
    padding: 0 1rem 0 4.25rem;
}

.about-02 .about-container>.about-header {
    position: relative;
    padding: 1.125rem 14.5rem 1.125rem 0;
    cursor: pointer;
    z-index: 1;
    transition: padding .6s;
}

.about-02 .about-container.active>.about-header {
    padding: 1.125rem 2.5rem 1.125rem 0;
}

.about-02 .about-container>.about-tag {
    position: absolute;
    top: 1rem;
    right: 1rem;
    pointer-events: none;
    display: flex;
    align-items: center;
    transition: opcity .6s;
}

.about-02 .about-container>.about-tag>*:first-child {
    transition: opacity .6s;
}

.about-02 .about-container.active>.about-tag>*:first-child {
    opacity: 0;
}

.about-02 .about-container>.about-tag .icon .active {
    display: block;
}

.about-02 .about-container>.about-tag .icon .inactive {
    display: none;
}

.about-02 .about-container.active>.about-tag .icon .active {
    display: none;
}

.about-02 .about-container.active>.about-tag .icon .inactive {
    display: block;
}

.about-02 .about-container>.about-body {
    width: 100%;
    padding: 0 0 1.75rem 0;
    overflow: hidden;
}

.about-02 .about-container .about-side {
    position: relative;
    width: 100%;
    padding: 3rem 1rem 5rem 1rem;
}

.about-02 .about-container .ss-date {
    position: absolute;
    top: 0;
    left: -.25rem;
    width: 3.25rem;
}

.about-02 .about-container .prefix {
    transition: font-size .6s;
}

.about-02 .about-container:not(.active) .prefix {
    font-size: 0;
}

.about-02 .about-container .title {
    transition: font-size .6s, color .6s;
}

.about-02 .about-container:not(.active) .title {
    font-size: 1.5rem;
}

.about-02 .about-container>.about-tag .icon {
    border: 3px solid transparent;
    font-size: 1.25rem;
    text-align: center;
    display: block;
    width: 1.75rem;
    height: 1.75rem;
    line-height: 1.375rem;
    padding: 0;
    margin: 0 0 0 .75rem;
}

@media screen and (max-width:1199.98px) {
    .about-02 .about-container>.about-body {
        padding: 0 0 1.75rem 0;
    }
}

@media screen and (max-width:991.98px) {
    .about-02 .about-container .ss-date {
        left: -4.25rem;
    }
    .about-02 .about-container .about-side {
        padding: .8125rem 1rem;
    }
}

@media screen and (max-width:767.98px) {
    .about-02 .about-container>.about-header {
        padding: 1.125rem 0 3.625rem 0;
    }
    .about-02 .about-container>.about-tag {
        top: auto;
        right: auto;
        transform: translateY(-2.875rem);
    }
    .about-02 .about-container.active>.about-tag {
        opacity: 0;
    }
    .about-02 .about-container>.about-body {
        margin: 0 0 0 -3.25rem;
        width: calc(100% + 3.25rem);
    }
}


/* About 03 */

.about-03 {
    position: relative;
    overflow: hidden;
}

.about-03 .slide-container {
    width: 100%;
    position: relative;
    margin: 0;
    padding: 3rem 0 10rem 0;
}

.about-03 .slide-container>.slide-wrapper {
    position: relative;
    width: 100%;
    max-width: 33rem;
    margin: 0 3rem;
    z-index: 1;
}

.about-03 .arrows {
    left: -3rem;
    right: -2rem;
}

.about-03 .slide-container .arrows button {
    opacity: .15;
}

.about-03 .slide-container .arrows button:hover {
    opacity: .75;
}

.about-03 .slide-container .arrows button::before {
    font-size: 4.5rem;
}

.about-03 .slide-container>.dots {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 1;
}

.about-03 .slick-dots {
    position: relative;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.about-03 .slick-dots::before {
    content: '';
    position: absolute;
    top: -.5px;
    left: -50vw;
    right: -50vw;
    border: 1px dotted transparent;
}

.about-03 .slick-dots button {
    display: block;
    position: relative;
    min-width: 4.4375rem;
    text-align: center;
    white-space: nowrap;
    box-shadow: none;
    padding: .5rem .25rem .25rem .25rem;
    margin: 0;
    border: 0;
    background: none;
    outline: none;
    opacity: .7;
    transition: opacity .25s;
}

.about-03 .slick-dots li.slick-active>button {
    opacity: 1;
}

.about-03 .slick-dots button img {
    display: block;
    width: 2.5rem;
    height: auto;
    position: absolute;
    opacity: 0;
    top: -2.6875rem;
    left: calc(50% - 1.25rem);
    transition: opacity .25s;
}

.about-03 .slick-dots li.slick-active>button img {
    opacity: 1;
}

.about-03 .slick-dots button .y {
    position: relative;
    height: 1.5rem;
    font-size: 1.0625rem;
    transition: font-size .25s;
}

.about-03 .slick-dots li.slick-active>button .y {
    font-size: 1.5625rem;
}

.about-03 .slick-dots button .y>span {
    transition: font-size .25s;
}

.about-03 .slick-dots li.slick-active>button .y>span {
    font-size: 0;
}

.about-03 .slick-dots button::before {
    content: '';
    display: block;
    width: .75rem;
    height: .75rem;
    border-radius: 50%;
    position: absolute;
    top: -.5rem;
    left: calc(50% - .5rem);
    border: .0625rem solid transparent;
    transition: opacity .25s;
}

.about-03 .slick-dots button::after {
    content: '';
    display: block;
    width: .4375rem;
    height: .4375rem;
    border-radius: 50%;
    position: absolute;
    top: -.375rem;
    left: calc(50% - .375rem);
    transition: opacity .25s;
}

.about-03 .slick-dots li.slick-active>button::before,
.about-03 .slick-dots li.slick-active>button::after {
    opacity: 0;
}

.about-03 .awards {
    display: block;
    width: 37rem;
    height: 36rem;
    position: absolute;
    top: -6.5rem;
    right: 0;
    pointer-events: none;
    z-index: 0;
}

.about-03 .awards>.wrapper {
    display: block;
    position: relative;
    width: 100%;
}

.about-03 .award {
    position: absolute;
    width: 18rem;
    transition: opacity .6s, transform .6s;
}

.about-03 .award[data-pos="before"] {
    transform: translateX(-95%)scale(1.28);
    opacity: 0;
}

.about-03 .award[data-pos="1"] {
    transform: translateX(65%)scale(.75);
}

.about-03 .award[data-pos="2"] {
    transform: translateX(110%)scale(.50);
}

.about-03 .award[data-pos="3"] {
    transform: translateX(145%)scale(.30);
}

.about-03 .award[data-pos="after"] {
    transform: translateX(166%)scale(.12);
    opacity: 0;
}

.about-03 .award .img-container {
    display: block;
    position: relative;
    width: 100%;
    padding: 200% 0 0 0;
}

.about-03 .award .img-wrapper {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.about-03 .award .img-wrapper>img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
}

@media screen and (max-width:1299.98px) {
    .about-03 .slide-container>.slide-wrapper {
        max-width: 33rem;
        margin: 0;
    }
    .about-03 .arrows {
        left: -2rem;
        right: -2rem;
    }
    .about-03 .slide-container .arrows button::before {
        font-size: 4rem;
    }
    .about-03 .awards {
        top: -6rem;
    }
}

@media screen and (max-width:1199.98px) {
    .about-03 .slide-container {
        padding: 2rem 0;
    }
    .about-03 .slide-container>.slide-wrapper {
        max-width: 100%;
        padding: 0 3rem;
    }
    .about-03 .arrows {
        left: 0;
        right: 0;
    }
    .about-03 .awards {
        width: 34rem;
        height: 32rem;
        position: relative;
        top: auto;
        right: auto;
        margin: 2rem auto 0 auto;
    }
    .about-03 .award {
        width: 16rem;
    }
}

@media screen and (max-width:991.98px) {
    .about-03 .slick-dots li {
        display: none
    }
    .about-03 .slick-dots li[data-class="active"] {
        display: block
    }
}

@media screen and (max-width:767.98px) {
    .about-03 .slide-container>.slide-wrapper {
        padding: 0 2rem;
    }
    .about-03 .slide-container .arrows button::before {
        font-size: 3.5rem;
    }
    .about-03 .awards {
        width: 25.75rem;
        height: 25.75rem;
        margin: 1.75rem auto 0 auto;
    }
    .about-03 .award {
        width: 12rem;
    }
}

@media screen and (max-width:575.98px) {
    .about-03 .slide-container>.slide-wrapper {
        padding: 0 1.5rem;
    }
}


/* About 04 */

.about-04>.top-container {
    display: block;
    width: 100%;
    padding-bottom: 0;
    background-size: cover;
    background-position: center;
}

.about-04>.middle-container {
    position: relative;
    display: block;
    width: 100%;
    margin: -7.75rem 0 0 0;
}

.about-04 .profile-container {
    display: block;
    position: relative;
    width: 100%;
    height: 600px;
    margin: -160px auto 0 auto;
}

.about-04 .profile-container .profile {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.about-04 .profile-container .profile.active {
    position: relative;
    pointer-events: auto;
}

.about-04 .profile-container .profile>.wrapper {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.about-04 .profile-container .profile .text-container {
    width: 100%;
    max-width: 24.25rem;
    margin: 4.5rem 0 0 auto;
}

.about-04 .profile-container .profile .profile-img {
    display: block;
    height: 100%;
    width: auto;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.about-04 .director-container {
    width: 100%;
    padding: 1.25rem 0;
}

.about-04 .director {
    width: 100%;
    display: flex;
    margin: 1.25rem 0;
    cursor: pointer;
}

.about-04 .director .profile {
    position: relative;
    display: block;
    width: 3.75rem;
    height: 4rem;
    margin: 0 1.5rem 0 0;
    transition: transform .6s;
}

.about-04 .director.active .profile {
    transform: scale(1.38);
}

.about-04 .director .profile>.wrapper {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.about-04 .director .profile .img-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-size: cover;
    background-position: center;
    transition: transform .6s;
}

.about-04 .director:hover .profile .img-bg {
    transform: scale(1.15);
}

.about-04 .director.active .profile .img-bg {
    transform: none;
}

.about-04 .director .pattern,
.about-04 .director .cut {
    position: absolute;
    display: block;
    height: auto;
    transition: opacity .6s;
}

.about-04 .director .pattern {
    top: 1.375rem;
    left: 2.5rem;
    width: 3.5rem;
    opacity: 0;
}

.about-04 .director.active .pattern {
    opacity: 1;
}

.about-04 .director .cut {
    top: 1.875rem;
    left: -.375rem;
    width: 5.5rem;
}

.about-04 .director .text-wrapper {
    width: calc(100% - 4.5rem);
}

.about-04 .job-title {
    font-size: 1.125rem;
    font-weight: 200;
    line-height: 1;
    margin: .0625rem 0 0 0;
}

.about-04 .director-container-02 {
    width: 100%;
    padding: 2.5rem 0;
}

.about-04 .icon-bullet {
    width: 100%;
    display: flex;
    align-items: center;
    margin: .125rem 0 0 0;
}

.about-04 .icon-bullet .icon {
    display: block;
    width: 1.25rem;
    height: 1.375rem;
    margin: 0 .5rem 0 0;
    text-align: center;
    font-size: .75rem;
    line-height: 1.375rem;
}

.about-04 .icon-bullet .icon+* {
    width: calc(100% - 1.75rem);
    margin: 0;
    font-size: 1.125rem;
    font-weight: 200;
}

.about-04 .board-card {
    width: auto;
    position: relative;
}

.about-04 .board-card::before {
    content: '';
    position: absolute;
    top: -.75rem;
    bottom: -.75rem;
    left: -.75rem;
    right: -.75rem;
    border-radius: .25rem;
    opacity: 0;
    transition: opacity .25s;
}

.about-04 .board-card:hover::before {
    opacity: .08;
}

@media screen and (max-width:1199.98px) {
    .about-04 .profile-container {
        height: 520px;
        margin: -80px auto 0 auto;
    }
    .about-04 .profile-container .profile .text-container {
        margin: 2rem 0 0 auto;
    }
    .about-04 .profile-container .profile .profile-img {
        left: 49%;
    }
}

@media screen and (max-width:991.98px) {
    .about-04 .profile-container {
        height: 520px;
        margin: 2rem auto 0 auto;
    }
    .about-04 .profile-container .profile .profile-img {
        left: 0;
        transform: none;
    }
    .about-04 .director-container-02 {
        padding: 2.25rem 0;
    }
}

@media screen and (max-width:767.98px) {
    .about-04 .profile-container {
        height: auto;
    }
    .about-04>.middle-container {
        margin: 0;
    }
    .about-04 .profile-container .profile .text-container {
        margin: 0 auto 1.75rem auto;
    }
    .about-04 .profile-container .profile .profile-img {
        position: relative;
        bottom: auto;
        left: auto;
        height: 400px;
        margin: 0 auto;
    }
    .about-04 .director-container-02 {
        padding: 1.75rem 0;
    }
}

.about-04 .about-target {
    transition: opacity .45s, transform .45s;
}

.about-04 .about-target.out,
.about-04 .about-target.in {
    opacity: 0;
    transform: translateX(10rem);
}

.about-04 .about-target:not(.active) {
    display: none!important;
}


/* About 05 */

.about-05 {
    background-size: cover;
    background-position: center;
}

.about-05 .text-container {
    width: 100%;
    max-width: 25rem;
    margin: 0 16% 0 auto;
}

.about-05 .text-wrapper {
    width: 100%;
    display: flex;
}

.about-05 .text-wrapper .icon {
    width: 3.875rem;
    margin: 0 .3125rem 0 0;
}

.about-05 .text-wrapper .icon>img {
    display: block;
    width: 100%;
    height: auto;
    transform: translateY(-.4375rem);
}

.about-05 .text-wrapper .text {
    width: calc(100% - 4.1875rem);
}

@media screen and (max-width:991.98px) {
    .about-05 .text-container {
        margin: 0 5% 0 auto;
    }
    .about-05 .text-wrapper .icon {
        width: 3.5rem;
        margin: 0 .25rem 0 0;
    }
    .about-05 .text-wrapper .icon>img {
        transform: translateY(-.25rem);
    }
    .about-05 .text-wrapper .text {
        width: calc(100% - 3.75rem);
    }
}

@media screen and (max-width:767.98px) {
    .about-05 .text-container {
        margin: 0 auto;
    }
    .about-05 .text-wrapper .icon {
        width: 3rem;
        margin: 0 .25rem 0 0;
    }
    .about-05 .text-wrapper .text {
        width: calc(100% - 3.25rem);
    }
}

@media screen and (max-width:575.98px) {
    .about-05 .text-wrapper .text br {
        display: none;
    }
}


/* About 06 */

.about-06 .about-banner {
    position: relative;
    background-size: cover;
    background-position: center;
}

.about-06 .about-banner .banner-wrapper {
    width: 100%;
    display: flex;
    justify-content: center;
}

.about-06 .about-banner .text-container {
    position: relative;
    width: 100%;
    max-width: 22rem;
    display: flex;
    align-items: center;
    padding: 2.5rem 0 5.5rem 0;
    z-index: 2;
}

.about-06 .about-banner .profile-container {
    position: relative;
    width: 20rem;
    height: 20rem;
}

.about-06 .about-banner .profile-container>.wrapper {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.about-06 .about-banner .profile-container .pattern {
    position: absolute;
    bottom: 0;
    display: block;
    height: 110%;
    width: auto;
}

.about-06 .about-banner .profile-container .profile {
    position: relative;
    display: block;
    height: 115%;
    width: auto;
}

.about-06 .about-banner .avatar-options {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 2rem;
    width: 8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    padding: 1.5rem 0;
}

.about-06 .about-banner .avatar-option {
    width: 100%;
}

@media screen and (max-width:1299.98px) {
    .about-06 .about-banner .avatar-options {
        left: 1rem;
    }
}

@media screen and (max-width:991.98px) {
    .about-06 .about-banner .avatar-options {
        width: 100%;
        position: relative;
        top: unset;
        bottom: unset;
        left: unset;
        right: unset;
        justify-content: space-evenly;
        padding: 1.25rem 0 0 0;
    }
    .about-06 .about-banner .avatar-option {
        width: 10rem;
    }
}

@media screen and (max-width:767.98px) {
    .about-06 .about-banner .banner-wrapper {
        display: block;
    }
    .about-06 .about-banner .text-container {
        margin: 0 auto;
    }
    .about-06 .about-banner .profile-container {
        width: 18rem;
        height: 18rem;
        margin: .5rem auto 0 auto;
    }
}


/* Avatar 01 */

.avatar-01 {
    display: block;
    position: relative;
    width: 100%;
    max-width: 14rem;
    margin: 0 auto;
}

.avatar-01>.avatar-border {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: auto;
}

.avatar-01>.avatar-wrapper {
    position: relative;
    width: 76%;
    padding: 105% 0 0 0;
    margin: 0 auto;
    clip-path: polygon(0% 0%, 100% 0%, 100% 72%, 50% 92.5%, 0% 72%);
}

.avatar-01>.avatar-wrapper>.wrapper {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.avatar-01>.avatar-wrapper img {
    display: block;
    width: auto;
    max-width: 120%;
    height: auto;
    max-height: 100%;
}

.avatar-01>.avatar-btn,
.avatar-01>.avatar-chev {
    display: block;
    position: absolute;
    bottom: 8%;
    right: 20%;
    width: 20%;
    height: auto;
    transition: transform .3s, right .3s;
}

.avatar-01>.avatar-chev {
    bottom: 38%;
    right: 0;
    width: 28%;
}

.avatar-01:hover>.avatar-btn,
.avatar-01:hover>.avatar-chev {
    transform: scale(1.175);
}


/* Avatar Text 01 */

.avatar-text-01 {
    width: 100%;
    text-align: center;
}

.avatar-text-01 .desc {
    width: 100%;
    max-width: 12rem;
    margin: 0 auto;
    min-height: 2.8125rem;
}

.avatar-text-01 .avatar-info {
    margin: .125rem auto 0 auto;
    width: auto;
}

.avatar-text-01 .avatar-info img {
    display: block;
    height: 1.5rem;
    width: auto;
    margin: .125rem .375rem .125rem 0;
}

@media screen and (max-width:575.98px) {
    .avatar-text-01 .desc {
        max-width: 100%;
        min-height: 0;
    }
}


/* Banner 01 */

.banner-01 {
    position: relative;
    width: 100%;
}

.banner-01 .slide>.wrapper {
    position: relative;
    width: 100%;
    height: 620px;
    display: flex;
    align-items: center;
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 100%, 50% 100%, 0% 100%, 0% 80%);
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 100%, 50% 100%, 0% 100%, 0% 80%);
    overflow: hidden;
    transition: clip-path .9s;
}

.banner-01 .slide.slick-current>.wrapper {
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 80%, 50% 100%, 0% 80%, 0% 80%);
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 80%, 50% 100%, 0% 80%, 0% 80%);
    transition-delay: .6s;
}

.loading .banner-01 .slide.slick-current>.wrapper {
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 100%, 50% 100%, 0% 100%, 0% 80%);
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 100%, 50% 100%, 0% 100%, 0% 80%);
}

.banner-01 .slide .img-bg {
    transform: scale(1.2);
    transition: transform linear .9s;
}

.banner-01 .slide.slick-current .img-bg {
    transform: scale(1);
    transition-duration: 14s;
    transition-delay: .6s;
}

.loading .banner-01 .slide.slick-current .img-bg {
    transform: scale(1.2);
}

.banner-01 .slick-dots {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: .75rem 0 0 0;
}

.banner-01 .slick-dots li {
    display: block;
    margin: 0 .1875rem;
}

.banner-01 .slick-dots button {
    display: block;
    font-size: 0;
    width: .8125rem;
    height: .8125rem;
    border-radius: 50%;
    padding: 0;
    box-shadow: none;
    border: 2px solid transparent;
    background: transparent;
    margin: 0;
    outline: none;
    transition: border-color .25s, background .25s;
}

.banner-01 .slide-container .arrows {
    bottom: 4.5rem;
    left: 1rem;
    right: 1rem;
}

.banner-01 .slide-container .arrows button {
    opacity: .45;
}

.banner-01 .slide-container .arrows button:hover {
    opacity: .85;
}

.banner-01 .slide-container .arrows button::before {
    font-size: 4.5rem;
}

@media screen and (max-width:1299.98px) {
    .banner-01 .slide>.wrapper {
        height: 560px
    }
}

@media screen and (max-width:1199.98px) {
    .banner-01 .slide>.wrapper {
        height: 500px
    }
}

@media screen and (max-width:991.98px) {
    .banner-01 .slide>.wrapper {
        height: 420px
    }
    .banner-01 .slide-container .arrows button::before {
        font-size: 4rem;
    }
}

@media screen and (max-width:767.98px) {
    .banner-01 .slide>.wrapper {
        height: 320px
    }
    .banner-01 .slide-container .arrows {
        bottom: 4rem;
    }
    .banner-01 .slide-container .arrows button::before {
        font-size: 3.5rem;
    }
}

@media screen and (max-width:575.98px) {
    .banner-01 .slide>.wrapper {
        height: 260px
    }
}


/* Banner 02 */

.banner-02,
.banner-02 .slide-container {
    position: relative;
    width: 100%;
}

.banner-02 .slide {
    overflow: hidden;
}

.banner-02 .slide>.wrapper {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 100%, 50% 100%, 0% 100%, 0% 80%);
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 100%, 50% 100%, 0% 100%, 0% 80%);
    overflow: hidden;
    transition: clip-path .9s;
}

.banner-02 .slide.slick-current>.wrapper {
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 80%, 50% 100%, 0% 80%, 0% 80%);
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 80%, 50% 100%, 0% 80%, 0% 80%);
    transition-delay: .6s;
}

.loading .banner-02 .slide.slick-current>.wrapper {
    clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 100%, 50% 100%, 0% 100%, 0% 80%);
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 100% 80%, 100% 100%, 50% 100%, 0% 100%, 0% 80%);
}

.banner-02 .slide img {
    display: block;
    width: 100%;
    height: auto;
    transition: transform linear .9s;
}

.banner-02 .slide.slick-current img {
    transform: scale(1.15);
    transition-duration: 14s;
    transition-delay: .6s;
}

.loading .banner-02 .slide.slick-current .img-bg {
    transform: scale(1);
}

.banner-02 .dots {
    position: absolute;
    top: unset;
    bottom: 1rem;
    left: 0;
    right: 0;
    pointer-events: none;
}

.banner-02 .slick-dots {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 0;
    height: 1.625rem;
}

.banner-02 .slick-dots li {
    position: relative;
    display: block;
    margin: 0 .1875rem;
}

.banner-02 .slick-dots button {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    margin: 0;
    width: .5rem;
    height: .5rem;
    border-radius: 50%;
    font-weight: 500;
    box-shadow: none;
    border: 0;
    margin: 0;
    outline: none;
    font-size: 0;
    pointer-events: all;
    transition: all .45s;
}

.banner-02 .slick-dots li.slick-active>button {
    width: 1.75rem;
    height: 1.5rem;
    font-size: 1.25rem;
    border-radius: 0;
    clip-path: polygon(0% 50%, 23% 0%, 77% 0%, 100% 50%, 77% 100%, 23% 100%);
    -webkit-clip-path: polygon(0% 50%, 23% 0%, 77% 0%, 100% 50%, 77% 100%, 23% 100%);
}

.banner-02 .slick-dots li>.desc {
    position: absolute;
    bottom: calc(100% + .5rem);
    left: calc(50% - 6rem);
    width: 12rem;
    padding: .3125rem .25rem;
    text-align: center;
    pointer-events: none;
    font-size: 1.25rem;
    font-weight: 300;
    opacity: 0;
    transition: opacity .25s, bottom .25s;
}

.banner-02 .slick-dots li:hover>.desc {
    opacity: 1;
    bottom: calc(100% + 1rem);
}

.banner-02 .slick-dots li>.desc::after {
    content: '';
    position: absolute;
    top: 100%;
    left: calc(50% - .5rem);
    width: 1rem;
    height: .5rem;
    clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
    -webkit-clip-path: polygon(0% 0%, 100% 0%, 50% 100%);
}

@media screen and (max-width:991.98px) {
    .banner-02 .slide img {
        width: 1000px;
        margin: 0 calc(50vw - 500px);
    }
}

@media screen and (max-width:767.98px) {
    .banner-02 .slide img {
        width: 780px;
        margin: 0 calc(50vw - 390px);
    }
}

@media screen and (max-width:575.98px) {
    .banner-02 .slide img {
        width: 580px;
        margin: 0 calc(50vw - 290px);
    }
}


/* Breadcrumb 01 */

.breadcrumb-01 {
    display: block;
    position: absolute;
    width: 100%;
    padding: 1rem 0;
    z-index: 1;
}

.breadcrumb-01>.container {
    position: relative;
}

.breadcrumb-01 .wrapper {
    width: 100%;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.breadcrumb-01 a {
    display: block;
    white-space: nowrap;
    margin: .125rem 0;
    font-size: 1.25rem;
    line-height: 1;
}

.breadcrumb-01 a {
    margin-right: .6875rem;
}

.breadcrumb-01 a:last-child {
    margin-right: 0;
    font-weight: 600;
}

.breadcrumb-01 a.icon {
    width: 1.0625rem;
    height: 1.0625rem;
    line-height: 1.0625rem;
    text-align: center;
    font-size: .75rem;
}

.breadcrumb-01 a.icon i,
.breadcrumb-01 a.icon em {
    transform: translateY(.1875rem);
}

.breadcrumb-01 a.text i,
.breadcrumb-01 a.text em {
    font-size: 1rem;
    margin: 0 .1875rem 0 0;
}


/* Breadcrumb 02 */

.breadcrumb-02 {
    position: relative;
    width: 100%;
    padding: 2.75rem 0 3.5rem 0;
}

.breadcrumb-02>.img-bg {
    position: absolute;
    top: 0;
    bottom: -12.5rem;
    left: 0;
    right: 0;
    z-index: -1;
    background-size: cover;
    background-position: bottom center;
}

.breadcrumb-02 .structure {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    margin: .75rem 0 0 0;
}

.breadcrumb-02 .structure .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
}

.breadcrumb-02 .structure .icon img {
    display: block;
    height: .625rem;
    width: auto;
}

.breadcrumb-02 .structure .text {
    display: flex;
    align-items: center;
    white-space: nowrap;
    font-size: 1.25rem;
    line-height: 1.25;
    margin: .1875rem 0 0 0;
    transition: color .25s;
}

.breadcrumb-02 .structure .text:last-child {
    font-weight: 600!important;
}

.breadcrumb-02 .structure .text em {
    margin: 0 .4375rem 0 .75rem;
    transform: translateY(-.0625rem);
}

.breadcrumb-02:not(.rect)+* {
    padding-top: 0!important;
}

@media screen and (max-width:1199.98px) {
    .breadcrumb-02 {
        padding: 2.5rem 0 3.25rem 0;
    }
    .breadcrumb-02>.img-bg {
        bottom: -11.5rem;
    }
}

@media screen and (max-width:991.98px) {
    .breadcrumb-02 {
        padding: 2.25rem 0 3rem 0;
    }
    .breadcrumb-02>.img-bg {
        bottom: -10.5rem;
    }
}

@media screen and (max-width:767.98px) {
    .breadcrumb-02 {
        padding: 2rem 0 2.5rem 0;
    }
    .breadcrumb-02>.img-bg {
        bottom: -9rem;
    }
}

@media screen and (max-width:575.98px) {
    .breadcrumb-02 {
        padding: 1.875rem 0;
    }
    .breadcrumb-02>.img-bg {
        bottom: -8rem;
    }
    .breadcrumb-02 .structure {
        margin: .125rem 0 0 0;
    }
}

.breadcrumb-02.rect>.img-bg {
    bottom: 0;
}


/* Call to Action 01 */

.call-01 {
    width: 100%;
    padding: .625rem 0 1.5rem 0;
}

.call-01 .contents {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.call-01 .content {
    margin: 1rem 0 0 0;
}

.call-01 .content:first-child {
    margin: .875rem 1.5rem 0 0;
    text-align: right;
}

.call-01 .content h4 {
    line-height: 1;
    font-size: 2.125rem;
    font-weight: 300;
}

.call-01 .content p {
    line-height: 1;
}

@media screen and (max-width:575.98px) {
    .call-01 .contents {
        flex-wrap: wrap;
    }
    .call-01 .content,
    .call-01 .content:first-child {
        width: 100%;
        margin: .875rem 0 0 0;
        text-align: center;
    }
}


/* Call to Action 02 */

.call-02 {
    margin: 1rem 0 3rem 0;
}

.call-02 .content {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 320px;
}

.call-02 .content .img-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    background-size: cover;
    background-position: center;
    width: 50vw;
}

.call-02 .grid:nth-child(2n+1) .content {
    padding: 2rem 2.5rem 2rem 0;
}

.call-02 .grid:nth-child(2n) .content {
    padding: 2rem 0 2rem 2.5rem;
}

.call-02 .grid:nth-child(2n+1) .img-bg {
    right: 0;
}

.call-02 .grid:nth-child(2n) .img-bg {
    left: 0;
}

.call-02 .text-wrapper {
    position: relative;
}

@media screen and (max-width:1199.98px) {
    .call-02 {
        margin: .5rem 0 2.5rem 0;
    }
}

@media screen and (max-width:991.98px) {
    .call-02 {
        margin: .5rem 0 2rem 0;
    }
    .call-02 .content {
        height: 280px;
    }
    .call-02 .grid:nth-child(2n+1) .content,
    .call-02 .grid:nth-child(2n) .content {
        padding: 2rem 0;
    }
    .call-02 .grid:nth-child(2n+1) .img-bg,
    .call-02 .grid:nth-child(2n) .img-bg {
        left: calc(50% - 50vw);
        right: calc(50% - 50vw);
        width: 100vw;
    }
}

@media screen and (max-width:767.98px) {
    .call-02 .content {
        height: 240px;
    }
}

@media screen and (max-width:575.98px) {
    .call-02 .content {
        height: 200px;
    }
}


/* Call to Action 03 */

.call-03 .text-container {
    width: 100%;
    max-width: 28rem;
}

.call-03 img.hero {
    display: block;
    width: 10rem;
    height: auto;
    margin: 2.25rem auto 0 auto;
}


/* Client 01 */

.client-01 .slide {
    position: relative;
}

.client-01 .slide:first-child::before,
.client-01 .slide::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    width: 1px;
}

.client-01 .slide:first-child::before {
    left: -.5px;
}

.client-01 .slide::after {
    right: .5px;
}

.client-01 .wrapper {
    display: block;
    width: 100%;
    padding: .25rem .5rem .5rem .5rem;
}

.client-01 .slide>.wrapper {
    position: relative;
}

.client-01 .slide>.wrapper>* {
    position: relative;
}

.client-01 .slide>.wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    transition: opacity .25s;
}

.client-01 .slide:hover>.wrapper::before {
    opacity: 1;
}

.client-01 .img-container {
    display: block;
    position: relative;
    width: 100%;
    padding: 40% 0 0 0;
}

.client-01 .img-wrapper {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.client-01 img {
    display: block;
    width: auto;
    max-width: 80%;
    height: auto;
    max-height: 80%;
}

.client-01 p {
    font-size: 1.0625rem;
    line-height: 1;
    text-align: center;
    height: 2.125rem;
}

.client-01 .slide-container .arrows button {
    opacity: 0;
}

.client-01 .slide-container .arrows button.slick-prev {
    transform: translateX(-2.25rem);
}

.client-01 .slide-container .arrows button.slick-next {
    transform: translateX(2.25rem);
}

.client-01 .slide-container:hover .arrows button {
    opacity: 1;
}

.client-01 .slide-container:hover .arrows button.slick-prev {
    transform: translateX(-1.5rem);
}

.client-01 .slide-container:hover .arrows button.slick-next {
    transform: translateX(1.5rem);
}


/* Contact 01 */

.contact-01 .contact-card {
    position: relative;
    background-size: cover;
    background-position: center;
    margin: 3.75rem 0 0 0;
    background-repeat: no-repeat;
}

.contact-01 .contact-card>.wrapper {
    width: calc(100% - 3rem);
    display: block;
    text-align: center;
    padding: 0 0 3rem 0;
}

.contact-01 .contact-card .icon {
    transform: translate(.625rem, -50%);
}

.contact-01 .contact-card .icon>img {
    display: block;
    width: 6.25rem;
    height: auto;
    margin: 0 auto;
}

.contact-01 .contact-card .dicon {
    display: block;
    width: 5rem;
    height: 5.5rem;
    margin: 0 auto .5rem auto;
    text-align: center;
    transform: translate(.625rem, -50%);
    line-height: 6rem;
    font-size: 2.125rem;
    box-shadow: 7px 7px 14px rgba(0, 0, 0, .25);
    color: #fff;
    background: #1fa39a;
    clip-path: polygon(50% 0%, 100% 26%, 100% 74%, 50% 100%, 0% 74%, 0% 26%);
    -webkit-clip-path: polygon(50% 0%, 100% 26%, 100% 74%, 50% 100%, 0% 74%, 0% 26%);
    transition: color .25s, background .25s;
}

.contact-01 .contact-card:hover .dicon {
    color: #fff;
    background: #9b65b1;
}

.contact-01 .contact-card .text-wrapper {
    transform: translateY(-50%);
}

.contact-01 .contact-form .field {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0;
}

.contact-01 .contact-form label {
    margin: .5625rem 0 .3125rem 0;
}

@media screen and (max-width:991.98px) {
    .contact-01 .contact-form .field {
        justify-content: flex-start;
    }
    .contact-01 .contact-form label {
        margin-right: .375rem;
    }
}

@media screen and (max-width:767.98px) {
    .contact-01 .contact-card {
        background-position: 1.25rem center;
    }
    .contact-01 .contact-card>.wrapper {
        width: calc(100% - 1rem);
    }
}


/* Contact 02 */

.contact-02 .grids {
    --gs: 0rem;
}

.contact-02 .contact-card {
    width: 100%;
    height: 100%;
    padding: 1.5rem 1rem;
    text-align: center;
}

.contact-02 .contact-card .icon>img {
    display: block;
    height: 6rem;
    width: auto;
    margin: 0 auto .5rem auto;
}

.contact-02 .contact-card table {
    width: auto;
    margin: 0 auto;
    padding: 0;
}

.contact-02 .contact-card table td {
    font-size: 1.375rem;
    padding: 0 .75rem 0 0;
}

.contact-02 .contact-card table td:first-child {
    text-align: right;
    font-weight: 500;
}

.contact-02 .contact-card table td:last-child {
    padding: 0;
}

@media screen and (max-width:991.98px) {
    .contact-02 .contact-card {
        padding: 1.25rem 1rem;
    }
}


/* Contact 03 */

.contact-03 {
    position: relative;
    width: 100%;
}

.contact-03>.img-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: calc(50vw - 3.5rem);
    background-size: cover;
    background-position: right center;
}

@media screen and (max-width:767.98px) {
    .contact-03 {
        padding-top: 0;
    }
    .contact-03>.img-bg {
        position: relative;
        top: unset;
        bottom: unset;
        left: unset;
        width: 100%;
        height: 340px;
        display: block;
        margin: 0 0 2rem 0;
    }
}

@media screen and (max-width:575.98px) {
    .contact-03>.img-bg {
        height: 300px;
    }
}


/* Content 01 */

.content-01 {
    width: 100%;
    position: relative;
}

.content-01>.img-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    background-position: center;
    background-size: cover;
    height: 45.875rem;
}

.content-01>.container {
    position: relative;
}

.content-01 .btn-ads {
    position: absolute;
    top: 11rem;
    left: 0;
    z-index: 1;
}

.content-01 .btn-ad {
    display: block;
    width: 9rem;
    margin: .125rem;
}

.content-01 .btn-ad>img {
    display: block;
    width: 100%;
    height: auto;
    transition: opacity .25s;
}

.content-01 .btn-ad>img:hover {
    opacity: .8;
}

.content-01 .grids {
    margin-top: 18rem;
}

@media screen and (max-width:1199.98px) {
    .content-01 .btn-ads {
        top: 10.5rem;
    }
    .content-01 .btn-ad {
        width: 8rem;
    }
    .content-01 .grids {
        margin-top: 20.9375rem;
    }
}

@media screen and (max-width:991.98px) {
    .content-01>.img-bg {
        height: 40.3125rem;
    }
    .content-01 .btn-ads {
        position: relative;
        top: auto;
        left: auto;
        margin: 2rem 0 0 0;
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .content-01 .btn-ad {
        width: 7.5rem;
    }
    .content-01 .grids {
        margin-top: 2rem;
    }
}

@media screen and (max-width:767.98px) {
    .content-01>.img-bg {
        height: 40.8125rem
    }
    .content-01 .btn-ads {
        margin: 1.5rem 0 0 0;
    }
    .content-01 .btn-ad {
        width: 7.25rem;
    }
    .content-01 .grids {
        margin-top: 1.5rem;
    }
}

@media screen and (max-width:575.98px) {
    .content-01>.img-bg {
        height: calc(18.75rem + (100vw - 30px) * .625);
    }
}


/* Content 03 */

.content-03 {
    width: 100%;
    background-size: cover;
    background-position: bottom center;
    padding-bottom: 12rem;
}

.content-03 .ss-box-header>.body {
    padding-bottom: 6rem;
}

@media screen and (max-width:1199.98px) {
    .content-03 {
        padding-bottom: 10rem;
    }
}

@media screen and (max-width:991.98px) {
    .content-03 {
        padding-bottom: 9rem;
    }
}

@media screen and (max-width:767.98px) {
    .content-03 {
        padding-bottom: 8rem;
    }
}


/* Content 04 */

.content-04 .slide-container,
.content-04 .video-container {
    position: relative;
    display: block;
    width: 100%;
    max-width: 50rem;
    margin: 0 auto;
    padding: .5rem;
    box-shadow: 0 0 20px 10px rgba(0, 0, 0, .1);
}

.content-04 .slide-container .arrows {
    left: -2rem;
    right: -2rem;
}

.content-04 .slide-container .arrows button {
    padding: 0 .75rem;
}

.content-04 .slide-container .arrows button:hover {
    opacity: .8;
}

.content-04 .slide-container .arrows button::before {
    font-size: 3.5rem;
}

.content-04 .slide-nav {
    width: 100%;
    margin: 1.25rem 0 0 0;
}

.content-04 .slide-nav .slides {
    width: 100%;
}

.content-04 .slide-nav .slide {
    padding: .75rem .1875rem;
}

.content-04 .slide-nav .slide>.wrapper {
    position: relative;
    width: 100%;
    padding: .25rem;
    box-shadow: 0 0 8px 2px rgba(0, 0, 0, .06);
    cursor: pointer;
    transition: background .25s;
}

.content-04 .slide-nav .slide .img-wrapper {
    position: relative;
    width: 100%;
    padding: 60% 0 0 0;
}

.content-04 .video-container>.video-wrapper {
    display: block;
    position: relative;
    width: 100%;
    padding: 56% 0 0 0;
}

.content-04 .video-container>.video-wrapper>iframe,
.content-04 .video-container>.video-wrapper>video {
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

@media screen and (max-width:767.98px) {
    .content-04 .slide-container .arrows button {
        padding: 0 .625rem;
    }
    .content-04 .slide-container .arrows button::before {
        font-size: 3rem;
    }
}

@media screen and (max-width:575.98px) {
    .content-04 .slide-container .arrows {
        left: -1rem;
        right: -1rem;
    }
    .content-04 .slide-container .arrows button {
        padding: 0 .5rem;
    }
    .content-04 .slide-container .arrows button::before {
        font-size: 2.5rem;
    }
}


/* Content 05 */

.content-05 {
    position: relative;
    overflow: hidden;
}

.content-05>.img-bg {
    position: absolute;
    top: 20rem;
    bottom: 0;
    left: 0;
    right: 0;
}

.content-05>.img-bg.adaptive {
    top: 25rem;
}

.content-05>.container {
    position: relative;
}

.content-05 .field {
    display: flex;
    align-items: center;
}

.content-05 .field>label {
    white-space: nowrap;
    padding: 0 .5rem 0 0;
}

.content-05 .field>label+* {
    width: 100%;
}

.content-05 .map-container {
    width: 50vw;
    height: calc(100% + 15rem);
    transform: translateY(-10.75rem);
}

.content-05 .map-container>.map-wrapper {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}

@media screen and (max-width:1199.98px) {
    .content-05 .map-container {
        width: 40vw;
    }
}

@media screen and (max-width:991.98px) {
    .content-05>.img-bg {
        top: 23rem;
    }
    .content-05>.img-bg.adaptive {
        top: 28rem;
    }
    .content-05 .map-container {
        width: 100%;
        height: 340px;
        transform: none;
    }
}

@media screen and (max-width:767.98px) {
    .content-05>.img-bg.adaptive {
        top: 30rem;
    }
    .content-05 .map-container {
        height: 300px;
    }
}

@media screen and (max-width:575.98px) {
    .content-05>.img-bg {
        top: 26rem;
    }
    .content-05>.img-bg.adaptive {
        top: 35rem;
    }
    .content-05 .map-container {
        height: 280px;
    }
}


/* Content 06 */

.content-06 .slide-container {
    width: 100%;
    margin: 0 0 2rem 0;
}

.content-06 .slide-container .slides {
    width: 100%;
}

.content-06 .slide-container .slide {
    padding: .75rem .1875rem;
}

.content-06 .slide-container .slide>.wrapper {
    position: relative;
    width: 100%;
    padding: .25rem;
    box-shadow: 0 0 8px 2px rgba(0, 0, 0, .06);
    cursor: pointer;
    transition: background .25s;
}

.content-06 .slide-container .arrows {
    left: -1.25rem;
    right: -1.25rem;
}

.content-06 .slide-container .arrows button {
    padding: .125rem 1rem;
}

@media screen and (max-width:991.98px) {
    .content-06 .slide-container {
        margin: 0 0 1.5rem 0;
    }
    .content-06 .slide-container .arrows {
        left: -1rem;
        right: -1rem;
    }
}


/* Content 07 */

.content-07 {
    width: 100%;
    padding-bottom: 24rem;
}

.content-07 .info-grids {
    --gs: 2rem;
}

.content-07 .info-grid {
    position: relative;
    margin-top: 1.25rem;
}

.content-07 .info-grid::after {
    content: '';
    position: absolute;
    top: -1.25rem;
    bottom: -1.25rem;
    right: -1rem;
    width: 1px;
}

.content-07 .info-grid:nth-child(3n)::after {
    display: none;
}

.content-07 .info-grid>.wrapper {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.content-07 .info-grid .text-container {
    width: calc(100% - 7rem);
}

.content-07 .info-grid .info-container {
    width: 6.5rem;
}

.content-07.minisite {
    position: relative;
    padding: 4rem 0 18rem 0;
}

.content-07.minisite .content-quote-02 {
    margin-top: 7rem;
}

.content-07.minisite>.img-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-size: 100% auto;
    background-position: bottom center;
    background-repeat: no-repeat;
}

@media screen and (max-width:1199.98px) {
    .content-07 {
        padding-bottom: 20rem;
    }
    .content-07.minisite {
        padding: 4rem 0 14rem 0;
    }
    .content-07.minisite .content-quote-02 {
        margin-top: 6rem;
    }
    .content-07.minisite>.img-bg {
        background-size: 1240px auto;
    }
}

@media screen and (max-width:991.98px) {
    .content-07 {
        padding-bottom: 16rem;
    }
    .content-07 .info-grid:nth-child(3n)::after {
        display: block;
    }
    .content-07 .info-grid:nth-child(2n)::after {
        display: none;
    }
    .content-07.minisite {
        padding: 3rem 0 12rem 0;
    }
    .content-07.minisite .content-quote-02 {
        margin-top: 5.5rem;
    }
    .content-07.minisite>.img-bg {
        background-size: 1000px auto;
    }
}

@media screen and (max-width:767.98px) {
    .content-07 {
        padding-bottom: 14rem;
    }
    .content-07 .info-grid::after {
        display: none!important;
    }
    .content-07.minisite {
        padding: 3rem 0 10rem 0;
    }
    .content-07.minisite .content-quote-02 {
        margin-top: 5rem;
    }
    .content-07.minisite>.img-bg {
        background-size: 800px auto;
    }
}

@media screen and (max-width:575.98px) {
    .content-07 {
        padding-bottom: 12rem;
    }
    .content-07.minisite {
        padding: 2.5rem 0 10rem 0;
    }
}


/* Content 08 */

.content-08 .content-stats {
    width: 100%;
    display: flex;
}

.content-08 .content-stats>.content-stat {
    width: 50%;
    border-top: 1px solid transparent;
    border-bottom: 1px solid transparent;
    border-left: 1px solid transparent;
    padding: .5rem .25rem .25rem .25rem;
    text-align: center;
}

.content-08 .content-stats>.content-stat:last-child {
    border-right: 1px solid transparent;
}

.content-08 .content-stats>.content-stat .icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1rem;
    height: 1rem;
    margin: 0 auto;
}

.content-08 .content-stats>.content-stat .icon img {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
}

@media screen and (max-width:991.98px) {
    .content-08 .hide-tablet {
        display: none!important;
    }
}


/* FAQ 01 */

.faq-01 .faq {
    display: block;
    position: relative;
    width: 100%;
}

.faq-01 .faq>.faq-header,
.faq-01 .faq>.faq-body>.wrapper {
    width: 100%;
    display: flex;
}

.faq-01 .faq>.faq-body {
    display: none;
}

.faq-01 .faq .faq-icon {
    position: relative;
    width: 3.25rem;
    text-align: center;
    padding: .5rem 0;
}

.faq-01 .faq .faq-icon+* {
    width: calc(100% - 8.25rem);
    padding: 1rem 1.25rem;
}

.faq-01 .faq .ss-stat,
.faq-01 .faq .stat {
    margin: 0;
}

.faq-01 .faq .stat-wrapper {
    width: 5rem;
    display: flex;
    align-items: center;
}

.faq-01 .faq .faq-icon+.content {
    padding-top: 0;
}

.faq-01 .faq .faq-icon>img {
    position: absolute;
    top: 1.0625rem;
    left: calc(50% - .5625rem);
    opacity: 0;
    display: block;
    width: 1.125rem;
    height: auto;
    transition: opacity .25s;
}

.faq-01 .faq .faq-icon>img.inactive {
    width: 1rem;
    top: 1.375rem;
    left: calc(50% - .5rem);
    opacity: 1;
}

.faq-01 .faq.active .faq-icon>img.active {
    opacity: 1;
}

.faq-01 .faq.active .faq-icon>img.inactive {
    opacity: 0;
}

.faq-01 .faq .title {
    cursor: pointer;
}

@media screen and (max-width:767.98px) {
    .faq-01 .faq {
        border: 1px solid transparent;
    }
    .faq-01 .faq .faq-icon+* {
        padding: 1rem;
    }
}


/* FAQ 02 */

.faq-02 .faq {
    display: block;
    position: relative;
    width: 50%;
}

.faq-02 .faq>.faq-header,
.faq-02 .faq>.faq-body>.wrapper {
    width: 100%;
    display: flex;
}

.faq-02 .faq>.faq-body {
    display: none;
}

.faq-02 .faq .faq-icon {
    position: relative;
    width: 3.25rem;
    text-align: center;
    padding: .5rem 0;
}

.faq-02 .faq .faq-icon+* {
    width: calc(100% - 8.25rem);
    padding: 1rem 1.25rem;
}

.faq-02 .faq .ss-stat,
.faq-02 .faq .stat {
    margin: 0;
}

.faq-02 .faq .stat-wrapper {
    width: 5rem;
    display: flex;
    align-items: center;
}

.faq-02 .faq .faq-icon+.content {
    padding-top: 0;
}

.faq-02 .faq .faq-icon>img {
    position: absolute;
    top: 1.0625rem;
    left: calc(50% - .5625rem);
    opacity: 0;
    display: block;
    width: 1.125rem;
    height: auto;
    transition: opacity .25s;
}

.faq-02 .faq .faq-icon>img.inactive {
    width: 1rem;
    top: 1.375rem;
    left: calc(50% - .5rem);
    opacity: 1;
}

.faq-02 .faq.active .faq-icon>img.active {
    opacity: 1;
}

.faq-02 .faq.active .faq-icon>img.inactive {
    opacity: 0;
}

.faq-02 .faq .title {
    cursor: pointer;
}

@media screen and (max-width:767.98px) {
    .faq-02 .faq {
        border: 1px solid transparent;
    }
    .faq-02 .faq .faq-icon+* {
        padding: 1rem;
    }
}


/* FAQ 03 */

.faq-03 .faq {
    display: block;
    position: relative;
    width: 100%;
}

.faq-03 .faq {
    width: 100%;
    border: 1px solid transparent;
    border-top: 3px solid transparent;
    padding: 0 1.5rem;
}

.faq-03 .faq>.faq-header {
    width: 100%;
    display: flex;
    align-items: center;
    min-height: 4.75rem;
}

.faq-03 .faq>.faq-body>.wrapper {
    width: 100%;
    display: flex;
    align-items: center;
}

.faq-03 .faq>.faq-body {
    display: none;
}

.faq-03 .faq .faq-icon {
    position: relative;
    width: 1.5rem;
    padding: .5rem 0;
}

.faq-03 .faq .faq-icon>.icon {
    position: relative;
    width: 1.5rem;
    height: 1.5rem;
}

.faq-03 .faq .faq-icon>.icon::before,
.faq-03 .faq .faq-icon>.icon::after {
    content: '';
    position: absolute;
    top: calc(50% - .125rem);
    left: 0;
    right: 0;
    height: .25rem;
    transition: transform .25s;
}

.faq-03 .faq:not(.active) .faq-icon>.icon::before {
    transform: rotate(90deg);
}

.faq-03 .faq .faq-icon+* {
    width: calc(100% - 12.5rem);
    padding: 1rem .5rem 1rem 1.25rem;
}

.faq-03 .faq .ss-stat {
    width: 11rem;
    flex-wrap: unset;
    justify-content: flex-end;
    margin: 0;
}

.faq-03 .faq .ss-stat>.stat {
    margin: 0 .75rem 0 0;
    align-items: flex-start;
}

.faq-03 .faq .ss-stat>.stat:last-child {
    margin: 0;
}

.faq-03 .faq .stat>.icon {
    font-size: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.faq-03 .faq .stat>.icon em {
    transform: translateY(0);
}

.faq-03 .faq .stat>.icon img {
    display: block;
    height: auto;
    max-height: .875rem;
    width: auto;
    max-width: .875rem;
}

.faq-03 .faq .faq-icon+.content {
    width: calc(100% - 1.5rem);
    padding-top: 0;
    padding-bottom: 1.5rem;
}

.faq-03 .faq .title {
    cursor: pointer;
}

.faq-03 .faq .stripe-container {
    width: 100%;
    padding: 0 0 0 1.25rem;
    border-left: .0625rem solid transparent;
}

@media screen and (max-width:991.98px) {
    .faq-03 .faq {
        padding: 0 1rem;
    }
}

@media screen and (max-width:767.98px) {
    .faq-03 .faq>.faq-header {
        min-height: 0;
        flex-wrap: wrap;
        padding: .875rem 0;
    }
    .faq-03 .faq .faq-icon+* {
        width: calc(100% - 1.5rem);
        padding: 0 0 0 1rem;
    }
    .faq-03 .faq .ss-stat {
        width: 100%;
        padding: .5rem 0 0 2.5rem;
        justify-content: flex-start;
        flex-wrap: wrap;
    }
    .faq-03 .faq .ss-stat>.stat {
        align-items: center;
    }
    .faq-03 .faq .ss-stat>.stat br {
        display: none;
    }
    .faq-03 .faq .faq-icon+.content {
        padding: 0 0 1rem 1rem;
    }
    .faq-03 .faq .stripe-container {
        padding: 0;
        border-left: 0;
    }
}

@media screen and (min-width:768px) {
    .faq-03.style-02 .faq .faq-icon+.title {
        width: calc(100% - 7.75rem);
    }
    .faq-03.style-02 .faq .ss-stat {
        width: 6.25rem;
        display: block;
    }
    .faq-03.style-02 .faq .ss-stat>.stat {
        margin: .0625rem 0;
    }
}


/* Hero Container 01 */

.hero-container-01 {
    position: relative;
    display: block;
    width: 100%;
    padding: 3rem 0 0 0;
    transform: translateY(-2rem);
}

.hero-container-01>.pattern {
    position: absolute;
    top: 0;
    bottom: 4rem;
    left: calc(50% - 10rem);
    right: 0;
    width: 26.875rem;
    height: 19rem;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    clip-path: polygon(100% 0, 100% 52%, 44% 100%, 0 100%, 0 0);
    -webkit-clip-path: polygon(100% 0, 100% 52%, 44% 100%, 0 100%, 0 0);
}

.hero-container-01>.hero-wrapper {
    position: relative;
    width: 100%;
    max-width: 20rem;
    margin: 0 auto;
}

.hero-container-01 .cut {
    position: absolute;
    bottom: -1rem;
    left: 3.5rem;
    display: block;
    width: 18rem;
    height: auto;
}

.hero-container-01 .wrapper {
    position: relative;
    display: block;
    width: 100%;
    padding: 100% 0 0 0;
    overflow: hidden;
    clip-path: polygon(100% 0, 100% 55%, 25% 100%, 0 100%, 0 0);
    -webkit-clip-path: polygon(100% 0, 100% 55%, 25% 100%, 0 100%, 0 0);
}

.hero-container-01 .img-wrapper {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: flex-end;
    justify-content: center;
}

.hero-container-01 img.hero {
    display: block;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
}

@media screen and (max-width:991.98px) {
    .hero-container-01 {
        margin-bottom: 3rem;
        transform: translateY(0);
    }
}


/* Intro 01 */

.intro-01 {
    position: relative;
    display: block;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}

.intro-01 .logo {
    position: absolute;
    top: 1.5rem;
    left: 2rem;
    display: flex;
    align-items: center;
    display: flex;
    align-items: center;
    font-size: 1rem;
    line-height: 1;
}

.intro-01 .logo:hover {
    opacity: .75;
}

.intro-01 .logo img {
    display: block;
    height: 3.5rem;
    width: auto;
    margin: 0 .625rem 0 0;
}

.intro-01 .logo h6 {
    white-space: nowrap;
}

.intro-01 .logo p {
    white-space: nowrap;
}

.intro-01 .content-container {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: calc(100vh - 6rem);
    background-size: cover;
    background-position: center;
}

.intro-01 .pattern {
    position: absolute;
    bottom: 1.5rem;
    left: 2rem;
    display: block;
    height: 3rem;
    width: auto;
}

.intro-01 .cover-1 {
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    height: 5rem;
    clip-path: polygon(0% 0%, 50% 100%, 100% 0%, 100% 100%, 0% 100%);
    transition: clip-path 1s;
    transition-delay: .3s;
}

.loading .intro-01 .cover-1 {
    clip-path: polygon(0% 100%, 50% 100%, 100% 100%, 100% 100%, 0% 100%);
}

.intro-01 .cover-2 {
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 50%;
    height: 9rem;
    clip-path: polygon(0% 0%, 100% 100%, 0% 100%);
    transition: clip-path 1s;
    transition-delay: .3s;
}

.loading .intro-01 .cover-2 {
    clip-path: polygon(0% 100%, 100% 100%, 0% 100%);
}

.intro-01 .hero-text,
.intro-01 .hero-text-02 {
    display: block;
    width: 30rem;
    height: auto;
}

.intro-01 .hero-text-02 {
    width: 20rem;
    transform: translateX(-28rem);
}

.intro-01 .hero {
    position: absolute;
    bottom: 0;
    display: block;
    width: 17rem;
    height: auto;
    transform: translateX(22.5rem);
}

.intro-01 .btns {
    margin: 1.625rem 0 0 0;
}

.text-center {
    text-align: center !important;
}

@media screen and (max-width:1199.98px) {
    .intro-01 .logo {
        top: 1.25rem;
        left: 1.5rem;
    }
    .intro-01 .logo img {
        height: 3rem;
        margin: 0 .5rem 0 0;
    }
    .intro-01 .logo h6 {
        font-size: 1.5625rem;
    }
    .intro-01 .pattern {
        bottom: 1.25rem;
        left: 1.5rem;
    }
    .intro-01 .hero-text-02 {
        width: 17rem;
        transform: translateX(-24.5rem);
    }
}

@media screen and (max-width:991.98px) {
    .intro-01 .logo {
        top: 1rem;
        left: 1rem;
    }
    .intro-01 .pattern {
        bottom: 1rem;
        left: 1rem;
        height: 2.5rem;
    }
    .intro-01 .cover-1 {
        height: 4rem;
    }
    .intro-01 .cover-2 {
        height: 8rem;
    }
    .intro-01 .hero-text {
        width: 24rem;
    }
    .intro-01 .hero-text-02 {
        width: 20rem;
        transform: translateX(0);
    }
    .intro-01 .hero {
        width: 15rem;
        transform: translateX(17rem);
    }
}

@media screen and (max-width:767.98px) {
    .intro-01 .cover-1 {
        height: 3rem;
    }
    .intro-01 .cover-2 {
        height: 6rem;
    }
    .intro-01 .hero-text {
        width: 20rem;
    }
    .intro-01 .hero-text-02 {
        width: 18rem;
    }
    .intro-01 .hero {
        width: 12rem;
        transform: translateX(14rem);
    }
}

@media screen and (max-width:575.98px) {
    .intro-01 .logo .text-wrapper {
        display: none;
    }
    .intro-01 .content-container {
        align-items: flex-end;
        padding-bottom: 18rem;
    }
    .intro-01 .content-container.white-tablet {
        align-items: center;
        padding-bottom: 0;
    }
    .intro-01 .pattern {
        display: none;
        height: 2.25rem;
    }
    .intro-01 .hero-text,
    .intro-01 .hero-text-02 {
        width: 16rem;
    }
    .intro-01 .hero {
        width: 10rem;
        transform: translateX(0);
    }
}

.intro-01 .intro-btn {
    position: relative;
    bottom: 0;
    display: block;
    top: calc(100vh - 29rem);
}


/* Intro 02 */

.intro-02 {
    background-size: cover;
    background-position: center;
}

.intro-02>.container {
    position: relative;
}

.intro-02 .icons {
    width: 100%;
    display: flex;
    margin: -5.5rem 0 0 0;
}

.intro-02 .icons>.icon {
    display: block;
    position: relative;
    width: 17%;
    cursor: pointer;
}

.intro-02 .icons>.icon>img {
    display: block;
    width: 100%;
    height: auto;
}

.intro-02 .icons>.icon>img.active {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    opacity: 0;
    transition: opacity .25s;
}

.intro-02 .icons>.icon:hover>img.active {
    opacity: 1;
}

@media screen and (max-width:1199.98px) {
    .intro-02 .icons {
        margin: -4rem 0 0 0;
    }
}

@media screen and (max-width:991.98px) {
    .intro-02 .icons {
        width: 120%;
        margin: 0 -20% 0 0;
    }
    .intro-02 .icons>.icon {
        width: 20%;
    }
}

@media screen and (max-width:767.98px) {
    .intro-02 .icons {
        width: 124%;
        margin: 2rem -24% 0 0;
    }
}

@media screen and (max-width:575.98px) {
    .intro-02 .icons {
        width: 100%;
        margin: 1rem 0 0 0;
        flex-wrap: wrap;
        justify-content: center;
    }
    .intro-02 .icons>.icon {
        width: calc(100% / 3);
        padding: 1rem .25rem 0 .25rem;
    }
}

@media screen and (min-width:576px) {
    .intro-02 .icons>.icon:nth-child(2)>img {
        margin: 43.5% 0 0 -24%;
    }
    .intro-02 .icons>.icon:nth-child(3)>img {
        margin: 87% 0 0 -48%;
    }
    .intro-02 .icons>.icon:nth-child(4)>img {
        margin: 43.5% 0 0 -72%;
    }
    .intro-02 .icons>.icon:nth-child(5)>img {
        margin: 87% 0 0 -96%;
    }
}


/* Intro 03 */

.intro-03 {
    width: 100%;
    overflow: hidden;
}

.intro-03>.container>.grids {
    --gs: 0rem;
}

.intro-03 .title-container {
    position: relative;
    width: 100%;
    display: flex;
    align-items: flex-end;
}

.intro-03 img {
    display: block;
    height: 2rem;
    width: auto;
    margin: 0 .75rem 0 0;
    transform: translateY(-.5rem);
}

.intro-03 .left-container {
    position: relative;
    padding-right: 3rem;
}

.intro-03 .right-container {
    position: relative;
    padding-left: 3rem;
}

.intro-03 .left-container>.img-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 50vw;
    background-size: cover;
    background-position: center;
}

.intro-03 .btns {
    text-align: right;
}

@media screen and (max-width:991.98px) {
    .intro-03 .left-container {
        padding-right: 0;
    }
    .intro-03 .right-container {
        padding-left: 0;
    }
    .intro-03 .left-container>.img-bg {
        right: calc(50% - 50vw);
        width: 100vw;
    }
    .intro-03 .btns {
        text-align: center;
    }
}


/* Intro 05 */

.intro-05 {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100vh;
    overflow: hidden;
    padding: 1rem 1rem 15vh 1rem;
}

.intro-05 .hero {
    display: block;
    width: 100%;
    max-width: 34rem;
    margin: 0 auto;
}

.intro-05 .btns {
    margin: 1.625rem 0 0 0;
}


/* RSS 01 */

.rss-01 {
    width: 100%;
}

.rss-01>.rss {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
}

.rss-01>.rss .ss-date {
    position: unset;
    width: unset;
    padding: 0;
}

.rss-01>.rss .ss-date>.date {
    top: 0;
    left: 0;
}

.rss-01>.rss .title {
    width: calc(100% - 3rem);
    position: relative;
    display: flex;
    align-items: center;
    margin: 0 0 0 3rem;
    min-height: 3.6875rem;
    padding: 1rem 4rem 1rem 1rem;
    border-top: .0625rem solid transparent;
    border-right: .0625rem solid transparent;
}

.rss-01>.rss:last-child .title {
    border-bottom: .0625rem solid transparent;
}

.rss-01>.rss .icon-rss,
.rss-01>.rss .info {
    position: absolute;
    top: .375rem;
    bottom: .375rem;
    right: .375rem;
    display: flex;
    align-items: center;
}

.rss-01>.rss .info {
    justify-content: flex-end;
    right: .625rem;
}

.rss-01>.rss .icon-rss img {
    display: block;
    height: 2.9375rem;
    width: auto;
}

.rss-01>.rss.no-icon .title {
    padding: 0 1rem;
    height: 3.6875rem;
}

.rss-01>.rss.with-info .title {
    padding: 0 5.5rem 0 1rem;
    height: 3.6875rem;
}

.rss-01>.rss .line-1,
.rss-01>.rss .line-2 {
    display: block;
    display: -webkit-box;
    text-overflow: ellipsis;
    overflow: hidden;
    -webkit-box-orient: vertical;
    width: 100%;
}

.rss-01>.rss .line-1 {
    -webkit-line-clamp: 1;
    line-height: 1.1;
}

.rss-01>.rss .line-2 {
    -webkit-line-clamp: 2;
}

@media screen and (max-width:767.98px) {
    .rss-01>.rss .title {
        padding: .75rem 3.5rem .75rem .75rem;
    }
    .rss-01>.rss .icon-rss img {
        height: 2.5rem;
    }
}


/* RSS 01 */

.rss-01>.rss {
    background: #ffffff;
}

.rss-01>.rss .title {
    border-color: #f0eef1!important;
}


/* Search Panel 01 */

.search-panel-01 {
    width: 100%;
}

.search-panel-01>.title {
    position: relative;
    display: block;
    width: 100%;
    padding: .75rem 1.5rem;
    border: 1px solid transparent;
}

.search-panel-01>.title .btn-close {
    position: absolute;
    top: .625rem;
    bottom: .625rem;
    right: .625rem;
    width: 2rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
}

.search-panel-01>.title .btn-close em {
    transform: none;
}

.search-panel-01>.subtitle {
    position: relative;
    display: block;
    width: 100%;
    padding: .75rem 1.5rem;
}

.search-panel-01>.subtitle .btn-toggle {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 3.25rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
}

.search-panel-01>.subtitle .btn-toggle em {
    transform: none;
    transition: transform .3s;
}

.search-panel-01>.subtitle .btn-toggle.active em {
    transform: rotate(180deg);
}

.search-panel-01 .search-container {
    width: 100%;
    padding: 0 1.5rem 1.75rem 1.5rem;
}

@media screen and (max-width:991.98px) {
    .search-panel-01>.title,
    .search-panel-01>.subtitle,
    .search-panel-01 .search-container {
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }
}

@media screen and (max-width:767.98px) {
    .search-panel-01>.title,
    .search-panel-01>.subtitle,
    .search-panel-01 .search-container {
        padding-left: 1rem;
        padding-right: 1rem;
    }
}


/* Section Calendar */

.section-calendar .slide-container.slide-month {
    position: relative;
    width: 100%;
    padding: 0 2rem;
}

.section-calendar .slide>.wrapper {
    position: relative;
    width: 100%;
    text-align: center;
    padding: .8125rem 0;
}

.section-calendar.week .slide>.wrapper {
    padding: .6875rem 0;
}

.section-calendar .slide>.wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    transition: opacity .25s, color .25s;
}

.section-calendar .slide.slick-current>.wrapper::before {
    opacity: 1;
}

.section-calendar .slide p,
.section-calendar .slide .p,
.section-calendar .slide h5,
.section-calendar .slide .h5,
.section-calendar .slide h6,
.section-calendar .slide .h6 {
    position: relative;
    line-height: .8;
}

.section-calendar .slide p,
.section-calendar .slide .p {
    font-size: 1.125rem;
    font-weight: 200;
}

.section-calendar .slide h5,
.section-calendar .slide .h5 {
    font-size: 2.0625rem;
    font-weight: 200;
}

.section-calendar .calendar-header {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.4375rem 0;
}

.section-calendar .calendar-header .calendar-title {
    margin: 0 .5rem;
}

.section-calendar .calendar-header .calendar-btn {
    min-width: 5.5rem;
    display: flex;
    align-items: center;
    cursor: pointer;
    transition: color .25s;
}

.section-calendar .calendar-header .calendar-btn i,
.section-calendar .calendar-header .calendar-btn em {
    font-size: 1.5rem;
    transform: none;
}

.section-calendar .calendar-tabs {
    width: 100%;
    padding: .5rem 0;
}

.section-calendar .calendar-tabs::before {
    content: '';
    position: absolute;
    top: 2.0625rem;
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
    border-top: 1px dotted transparent;
}

.section-calendar .calendar-tabs .tab {
    display: block;
    position: relative;
    width: 1.75rem;
    text-align: center;
    padding: .3125rem 0;
    font-size: 1.0625rem;
    font-weight: 300;
    cursor: pointer;
}

.section-calendar.day .calendar-tabs .tab,
.section-calendar.detail .calendar-tabs .tab {
    background: transparent!important;
    border: 0;
}

.section-calendar .calendar-tabs .tab .icon {
    display: block;
    width: 1.5rem;
    height: 1.625rem;
    text-align: center;
    line-height: 1.625rem;
    font-size: 1.1875rem;
    margin: .375rem auto 0 auto;
    transition: background .25s;
}

.section-calendar .ss-box {
    box-shadow: none;
}

.section-calendar .scroll-wrapper {
    width: 100%;
    height: auto;
    overflow-x: auto;
    overflow-y: hidden;
}

.section-calendar .calendar-wrapper {
    display: block;
    width: 100%;
    min-width: 52rem;
    padding: 0 2px;
}

.section-calendar .calendar-contents {
    position: relative;
    padding-left: 1.5rem;
}

.section-calendar .calendar-contents::before {
    content: '';
    position: absolute;
    top: -2rem;
    bottom: -5rem;
    left: 0;
    border-left: 1px dotted transparent;
}

.section-calendar .calendar-content {
    position: relative;
}

.section-calendar .calendar-content::before {
    content: '';
    display: block;
    width: .75rem;
    height: .75rem;
    border-radius: 50%;
    position: absolute;
    top: .5rem;
    left: -1.875rem;
    border: .0625rem solid transparent;
}

.section-calendar .calendar-content::after {
    content: '';
    display: block;
    width: .4375rem;
    height: .4375rem;
    border-radius: 50%;
    position: absolute;
    top: .625rem;
    left: -1.6875rem;
}

@media screen and (max-width:991.98px) {
    .section-calendar .calendar-contents {
        padding-left: 0;
    }
    .section-calendar .calendar-contents::before {
        border-left: 0;
    }
    .section-calendar .calendar-content::before,
    .section-calendar .calendar-content::after {
        display: none;
    }
}

@media screen and (max-width:767.98px) {
    .section-calendar .slide-container.slide-month {
        padding: 0 1.5rem;
    }
    .section-calendar .padding-pull-right {
        padding-top: 4.25rem;
    }
}

@media screen and (min-width:768px) {
    .section-calendar .padding-pull-right {
        padding-top: 2.375rem;
        padding-left: 4rem;
    }
}


/* Sitemap 01 */

.sitemap-01 {
    position: relative;
    padding: 0 0 10rem 0;
}

.sitemap-01>.img-bg {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    display: block;
    width: 100%;
    height: auto;
    z-index: -2;
}

.sitemap-01 .sitemap-section:last-child {
    padding-bottom: 4rem!important;
}

.sitemap-01 .grids {
    --gs: 1.5rem;
}

.sitemap-01 .grid {
    position: relative;
    padding-bottom: 1rem;
}

.sitemap-01 .grid::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    right: -.75rem;
    width: 1px;
}

.sitemap-01 .list-title {
    font-weight: 400;
    margin-top: 1.5rem;
}

.sitemap-01 .list-title:first-child {
    margin-top: 0;
}

@media screen and (max-width:991.98px) {
    .sitemap-01 {
        padding: 0 0 7rem 0;
    }
    .sitemap-01 .sitemap-section:last-child {
        padding-bottom: 3rem!important;
    }
    .sitemap-01 .grid {
        padding-bottom: 0;
    }
    .sitemap-01 .grid:nth-child(3n)::after {
        display: none;
    }
    .sitemap-01 .grid::after {
        top: -1.5rem;
    }
    .sitemap-01 .grid:nth-child(1)::after,
    .sitemap-01 .grid:nth-child(2)::after,
    .sitemap-01 .grid:nth-child(3)::after {
        top: 0;
    }
}

@media screen and (max-width:767.98px) {
    .sitemap-01 {
        padding: 0 0 6rem 0;
    }
    .sitemap-01 .sitemap-section:last-child {
        padding-bottom: 2rem!important;
    }
    .sitemap-01 .grid {
        padding-bottom: 0;
    }
    .sitemap-01 .grid:nth-child(3n)::after {
        display: block;
    }
    .sitemap-01 .grid:nth-child(2n)::after {
        display: none;
    }
    .sitemap-01 .grid:nth-child(3)::after {
        top: -1.5rem;
    }
}

@media screen and (max-width:575.98px) {
    .sitemap-01 {
        padding: 0 0 5rem 0;
    }
    .sitemap-01 .sitemap-section:last-child {
        padding-bottom: 1rem!important;
    }
    .sitemap-01 .grid::after {
        display: none!important;
    }
}

.sitemap-01 .grid:last-child::after {
    display: none;
}


/* Slide Container 01 */

.slide-container-01 {
    position: relative;
    width: 100%;
}

.slide-container-01>.arrows {
    justify-content: flex-end;
}

.slide-container-01>.arrows>.wrapper {
    display: block;
    transform: translateX(1.25rem);
}

.slide-container-01>.arrows .arrow {
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: all;
    width: 2.5rem;
    height: 2.1875rem;
    margin: .25rem 0;
    font-size: 1.625rem;
    padding: 0 0 .125rem 0;
}


/* Tab Container */

.tab-container .tabs .tab {
    cursor: pointer;
}

.tab-container .tab-contents .tab-content {
    display: none;
}

.tab-container .tab-contents .tab-content.active {
    display: block;
}


/* Tab Container 01 */

.tab-container-01 .tabs {
    position: relative;
    width: 100%;
    padding-bottom: 6rem;
}

.tab-container-01 .tab {
    position: relative;
    width: 100%;
    padding: .6875rem 1rem .625rem 3.5rem;
    display: flex;
    align-items: center;
    transition: padding .25s;
}

.tab-container-01 .tab.active {
    padding-left: 1rem;
}

.tab-container-01 .tab * {
    position: relative;
}

.tab-container-01 .tab::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    transition: opacity .25s;
}

.tab-container-01 .tab.active::before {
    opacity: 1;
}

.tab-container-01 .tab::after {
    content: '';
    position: absolute;
    top: -.5px;
    left: 0;
    right: 0;
    height: 1px;
}

.tab-container-01 .tab.tab-list::after {
    display: none;
}

.tab-container-01 .tab>.icon {
    position: absolute;
    top: .6875rem;
    left: 1rem;
    width: 1.5rem;
    transition: opacity .25s;
}

.tab-container-01 .tab.active>.icon {
    opacity: 0;
}

.tab-container-01 .tab>.icon>img {
    display: block;
    height: 1.25rem;
    width: auto;
}

.tab-container-01 .tab-children {
    display: none;
    padding: 0 0 .5rem 0;
}

.tab-container-01 .tab.active+.tab-children {
    display: block;
}

.tab-container-01 .tab.tab-list {
    padding: .125rem 1rem .125rem 3.5rem;
    font-size: 1.1875rem;
}

.tab-container-01 .tab.tab-list.active p {
    font-weight: 600;
}

.tab-container-01 .tab.tab-list::before {
    content: '';
    position: absolute;
    top: .6875rem;
    left: 2.5rem;
    opacity: 1;
    width: .3125rem;
    height: .3125rem;
    transition: background .25s;
}

@media screen and (max-width:991.98px) {
    .tab-container-01 .tabs {
        padding-bottom: 0;
    }
}


/* Tab Container 02 */

.tab-container-02 .tabs {
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.tab-container-02 .tab {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 0 .375rem 0;
}

.tab-container-02 .tab .img-bg {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-position: center;
    background-size: cover;
}

.tab-container-02 .tab .text-wrapper {
    position: relative;
    width: 11rem;
    padding: 1.5625rem 1rem;
    clip-path: polygon(0% 0%, 80% 0%, 100% 70%, 90% 100%, 0% 100%);
    -webkit-clip-path: polygon(0% 0%, 80% 0%, 100% 70%, 90% 100%, 0% 100%);
    transition: padding .25s, opacity .25s, width .25s;
}

.tab-container-02 .tab.active .text-wrapper {
    opacity: 0;
    padding: 8rem 1rem;
}

@media screen and (max-width:991.98px) {
    .tab-container-02 .tab {
        width: calc(50% - .1875rem);
    }
    .tab-container-02 .tab.active .text-wrapper {
        opacity: 1;
        padding: 1.5625rem 1rem;
        width: 14rem;
    }
}

@media screen and (max-width:575.98px) {
    .tab-container-02 .tab {
        width: 100%;
    }
    .tab-container-02 .tab.active .text-wrapper {
        width: 16rem;
    }
}


/* Tab Container 03 */

.tab-container-03>.tab-wrapper {
    width: 100%;
    display: flex;
    margin: 0 0 1.5rem 0;
}

.tab-container-03 .tabs {
    position: relative;
    width: auto;
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    border: 1px solid transparent;
    border-bottom: 0;
}

.tab-container-03 .tab {
    position: relative;
    min-width: 12.5rem;
    padding: .6875rem 1rem .625rem 3.5rem;
    display: flex;
    align-items: center;
    transition: padding .25s;
}

.tab-container-03 .tab.active {
    padding-left: 1rem;
}

.tab-container-03 .tab * {
    position: relative;
}

.tab-container-03 .tab::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    transition: opacity .25s;
}

.tab-container-03 .tab.active::before {
    opacity: 1;
}

.tab-container-03 .tab>.icon {
    position: absolute;
    top: .6875rem;
    left: 1rem;
    width: 1.5rem;
    transition: opacity .25s;
}

.tab-container-03 .tab.active>.icon {
    opacity: 0;
}

.tab-container-03 .tab>.icon>img {
    display: block;
    height: 1.25rem;
    width: auto;
}

@media screen and (max-width:767.98px) {
    .tab-container-03 .tabs {
        width: 100%;
    }
    .tab-container-03 .tab {
        width: 100%;
    }
}


/* Tab Container 04 */

.tab-container-04 .tabs {
    display: flex;
    flex-wrap: wrap;
    margin: 3rem 0 0 0;
}

.tab-container-04 .tab {
    position: relative;
    padding: .6875rem 1.5rem;
    border: 1.5px solid transparent;
    border-right: 0;
    border-bottom: 0;
}

.tab-container-04 .tab:last-child {
    border-right: 1.5px solid transparent;
}

.tab-container-04 .tab>* {
    position: relative;
    transition: color .25s;
}

.tab-container-04 .tab::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    opacity: 0;
    transition: opacity .25s;
}

.tab-container-04 .tab.active::before {
    opacity: 1;
}

@media screen and (max-width:767.98px) {
    .tab-container-04 .tabs {
        margin: 2.5rem 0 0 0;
    }
}

@media screen and (max-width:575.98px) {
    .tab-container-04 .tabs {
        margin: 2rem 0 0 0;
    }
    .tab-container-04 .tab {
        padding: .625rem .625rem;
    }
}


/* Table Vote 01 */

table.table-vote-01 {
    width: 100%;
    padding: 0;
    margin: 0;
}

table.table-vote-01 td {
    vertical-align: middle;
}

table.table-vote-01 td:nth-child(1) {
    padding: .25rem 0;
    text-align: right;
    white-space: nowrap;
}

table.table-vote-01 td:nth-child(2) {
    padding: .25rem .75rem;
}

table.table-vote-01 td:nth-child(3) {
    padding: .25rem 0;
    width: 100%;
}

table.table-vote-01 td>.percent {
    padding: 0 .375rem;
    text-align: center;
    border: 2px solid transparent;
}

table.table-vote-01 td>.progress {
    position: relative;
    width: 100%;
    height: .5rem;
    border-radius: 0;
}

table.table-vote-01 td>.progress::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    width: var(--percent);
}

.img-logo-border {
    border: solid .5px #dbd8d8;
}

@media screen and (min-width:576px) {
    .intro-02 .icons>.icon:nth-child(2)>img {
        margin: 43.5% 0 0 -24%;
    }
    .intro-02 .icons>.icon:nth-child(3)>img {
        margin: 87% 0 0 -48%;
    }
    .intro-02 .icons>.icon:nth-child(4)>img {
        margin: 43.5% 0 0 -72%;
    }
    .intro-02 .icons>.icon:nth-child(5)>img {
        margin: 87% 0 0 -96%;
    }
    .intro-02 .icons>.icon:nth-child(6)>img {
        margin: 43.5% 0 0 -120%;
    }
    .intro-02 .icons>.icon:nth-child(7)>img {
        margin: 87% 0 0 -144%;
    }
    .intro-02 .icons>.icon:nth-child(8)>img {
        margin: 43.5% 0 0 -168%;
    }
}